Skip to content
This repository has been archived by the owner on Jul 22, 2024. It is now read-only.

auto generate consts from Clang #67

Merged
merged 38 commits into from
Feb 15, 2014
Merged

auto generate consts from Clang #67

merged 38 commits into from
Feb 15, 2014

Conversation

vtjnash
Copy link
Contributor

@vtjnash vtjnash commented Feb 15, 2014

As an alternative to #62, which requires GI.jl (which is not available from METADATA), this looks at what we get from auto-generating constants via Clang.

Notably: generating the list of constants (non-enum) is very hard (so we don't do it yet). however, the list of enums that this generates is almost twice as long.

tknopp added 30 commits January 24, 2014 08:24
allows to use GtkSourceBuffer

Added pagenumber function for GtkNotebook
And fix path_at_pos on 64 bit systems
tknopp and others added 8 commits February 6, 2014 16:20
and replace GtkTextBuffer by GtkTextBufferI in text.jl (GtkSourceBuffer
inherits from GtkTextBufferI)
List/Tree View Improvement / GtkToolbar / GtkScrolledWindow
Firstly, this interfaces allows us to pass around raw GList pointers without bothering to first box them (which should be nice for performance). Secondly, it creates a real GList type which can be instantiated to create (and gc-root) a real GList (which should be nice for usability enhancements, since we can now code the rest of the GList setter API against this)
@bfredl
Copy link
Contributor

bfredl commented Feb 15, 2014

The enums in gconst{2,3} are twice as many as they also include the constants in the glib namespace. It's probably the right thing to do right now, but if GLib.jl ever get split to it's own package I think we should separate the enums as well.

As soon as GI.jl is able to generate cachable methods I will request to add it in METADATA. However there still is the issue of running it on windows, using the preferred winRPM packages. If I understand it correctly, it is openSUSE bulid service that provides the packages for winRPM.jl ( and one should send bulid script patches to)

@bfredl
Copy link
Contributor

bfredl commented Feb 15, 2014

I have updated #62 for comparision, but most of the non-emum constants seem uninteresting, so I guess one could just append the few that could be useful manually to the clang version.

@ihnorton
Copy link
Contributor

@vtjnash fyi, there is decent #define foo 1 support in Clang.wrap_c. It handles simple compound expressions and I just fixed it to properly handle suffixed literals (and removed a stupid restriction mistake that excluded a lot of constants).

@vtjnash
Copy link
Contributor Author

vtjnash commented Feb 15, 2014

@ihnorton sweet, i was unable to find that last night. that's perfect

@vtjnash vtjnash merged commit b7aa1e1 into master Feb 15, 2014
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants