As a Mac developer, you should have Xcode 5.0 installed, which comes with Clang 
5.0 (based on LLVM 3.3svn), which is roughly equivalent to open-source Clang 
3.3.

-Kevin

On Sep 27, 2013, at 8:51 PM, KENZ gelsoft <kenz.gels...@gmail.com> wrote:

> I tried rust-bindgen finally, and it worked excellently. Great work!!
> 
> Since it requires Clang 3.3 which doesn't exist on OS X 10.8 setup,
> I tried commit 3d49dbbbb7bcc0cf63b43a16a6cf52480fa9b752 and some tweak.
> 
> And some arguments are needed, for my project:
> 
>    $ ./bindgen -x c++ ../wxRust/wxHaskell/wxc/src/include/wxc.h
> `wx-config --cflags` --include stdint.h --include time.h >
> ../wxRust/generated.rs
> 
> bindgen is C mode as default like clang or gcc are, so I understand it
> requires `-x c++` option,
> but I don't know why I have to explicitly include stdint.h and time.h
> for size_t and uint8_t.
> Do you have another recommended options?
> 
> My codegen.py just handles functions, so handling for other
> definitions benefits.
> So I want adopt rust-bindgen to generate extern fn part of my binding
> for long-term plan.
> 
> Despite I know its Clang requirement changed for bitwidth support, but
> as a Mac developer, I don't want to install the Clang 3.3 only for 
> rust-bindgen,
> especially I don't want add a new prerequisite to my library.
> Are there a posibility of optional Clang 3.1 support (without bitwidth 
> support)?
> 
> 
> 
> 2013/9/26 Martin DeMello <martindeme...@gmail.com>:
>> no, but it might be feasible to add. not sure if it'd fall within the
>> scope of bindgen or not, but at least bindgen could emit some sort of
>> serialised data structure that would make generating the next level
>> binding easier.
>> 
>> martin
>> 
>> On Wed, Sep 25, 2013 at 4:49 PM, KENZ gelsoft <kenz.gels...@gmail.com> wrote:
>>> Oh, I didn't know that project, thank you for information. I'll try it.
>>> BTW, I chose to make own parser and generator to generate not only extern fn
>>> decls but also next-level wrapper such as:
>>> 
>>> trait Frame {
>>>  pub fn show(&self) {
>>>    unsafe {
>>>      wxFrame_Show(self.handle());
>>>    }
>>>  }
>>> }
>>> 
>>> or so, would bindgen helps this use case? (c.f. parsed data accessible or
>>> so.)
>>> 
>>> Did you try using bindgen on the wxc header file? If there were bits
>>> it couldn't handle, I'd be interested in helping fix that.
>>> 
>>> martin
>>> 
>>> On Wed, Sep 25, 2013 at 10:49 AM, KENZ gelsoft <kenz.gels...@gmail.com>
>>> wrote:
>>>> Hello, everyone.
>>>> 
>>>> I would like to introduce my experimental project, wxRust.
>>>> Which is a wxWidgets binding for Rust.
>>>> 
>>>>  https://github.com/kenz-gelsoft/wxRust
>>>> 
>>>> This binding is based on the wxHaskell especially its "wxc"*1
>>>> C-Language wxWidgets binding part.
>>>> 
>>>> Currently, it just converts wxc's header file to `extern fn`s and
>>>> export them as a rust library.
>>>> 
>>>> Test program has just started working which opens a wxFrame
>>>> by calling wxc's C interface from extern fn.
>>>> 
>>>> Current state is pre-alpha experimental state, there's no stable API,
>>>> hard to use, but announced here for someone planning similar project.
>>>> 
>>>> I'm planning for next generating simple OOP style wrapper as rust
>>>> traits for each classes from wxc's header.
>>>> 
>>>> There is many problems to tackle, for example how it can work
>>>> with multitask or, library users can write wx GUI programs easier.
>>>> Any helps or feedbacks are welcome.
>>>> 
>>>> *1: [http://www.haskell.org/haskellwiki/WxHaskell#Status]
>>>> 
>>>> 
>>>> Thanks,
>>>> --
>>>> KENZ <kenz.gels...@gmail.com>
>>>> 
>>>> 
>>>> _______________________________________________
>>>> Rust-dev mailing list
>>>> Rust-dev@mozilla.org
>>>> https://mail.mozilla.org/listinfo/rust-dev
>>>> 
> _______________________________________________
> Rust-dev mailing list
> Rust-dev@mozilla.org
> https://mail.mozilla.org/listinfo/rust-dev

_______________________________________________
Rust-dev mailing list
Rust-dev@mozilla.org
https://mail.mozilla.org/listinfo/rust-dev

Reply via email to