swig / cccl

Unix cc compiler to Microsoft's cl compiler wrapper
GNU General Public License v3.0
123 stars 36 forks source link

Wish: Appveyor-specific documentation, example project & build #2

Closed phs closed 3 years ago

phs commented 8 years ago

First off: I love this idea, good work.

I'm maintaining a C++ (header-only) library that I'd like to support on major platforms, including at least one windows variant. The library itself is (nearly) portable enough, but I don't use windows personally. Even if I did, humans make poor build servers and so I'm trying to wire up appveyor, a windows-centric build service to prove I can compile and pass my tests, etc.

One of my users is specifically asking for support for MSVC, which is available in that world along with the more usual gcc and autotools. Since I'm already using autotools for my (fairly simple) build, cccl seems like a good fit.

The only issue is I'm having a ducky of a time getting the thing to get up and run. I feel like I'm missing some basic stuff, probably because I've never done any real windows C++ dev. It would be lovely indeed if the documentation called out appveyor configuration specifically.

It would be even better if cccl could supply an example, template repository, configured for appveyor (it's free) that demonstrated some basic build features. My case in particular needs a fairly vanilla libtool invocation to work.

I'd be delighted to share my attempts at integrating cccl & appveyor as a starting point, but I could use some pointers to finish muddling through to a working state.

phs commented 8 years ago

It looks like I've stumbled onto the linker options I needed, so I may be good for now.

To wit, prefer using LDFLAGS to LINK, and --cccl-link to /link. In addition to the existing docs, that got me off the ground.

wsfulton commented 8 years ago

It is tricky getting Appveyor to work as it requires an awkward mix of bash, cmd and power shell. You can use https://github.com/swig/swig/blob/master/appveyor.yml as a reference. Please create a pull request with anything you think might be useful in the README.markdown file.

wsfulton commented 3 years ago

Looks like nothing more to be done here.