-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feature/9 add appveyor support #13
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am not really happy about the solution with vcpkg binaries. But until we've found a better solution let's use this.
Hey, I noticed you're implementing something very similar to our built-in I think using
Would that work for you? |
Hey, Robert nice to have you around...🙂 Yes, a more flexible export capabilities of vcpkg would be of great help! We have tried all export variants of vcpkg which unfortunately all turned out to be dysfunctional at various levels. The raw or zip export variants seem to be currently the most usable ones if the consumption from cmake controlled projects is intended. But still there are a lot of glitches which need to be sorted out, e.g. hard coded paths in We removed pdb's only for the appveyor scenario in order to save time and space. |
Please let us know the details (file issues, etc)! We build these features to be used and need to fix them if they don't work 🙂. If you prefer email, We're aware that there are occasional hardcoded paths in I'm not currently aware of any missing scripts in the export. If you file an issue, I'd be happy to fix it as well :)
Would you mind going into some more specific details of what would help? Either here, email, or an issue on vcpkg would work great for us. It also really helps to know the context around it (e.g. removed pdbs to save space on appveyor). |
cb6c11d
to
d45d6c0
Compare
Great, yes, we'll provide a detailed error report and formulate the requirements towards vcpkg. You'll get a checklist with red and green hooks, I promise... 😉 We are also looking at possibilities to better integrate vcpkg with Conan.io and NuGet and also at extending vcpkg for cross compilation scenarios. Unfortunately this all costs time so many ideas exist only on paper. Basically all export formats have to support the inverse of an export = an import. Currently this is only guaranteed for @shanmukhananda Can you please enlist the issues you ran into while trying to use |
vcpkg is hard-coding the paths to .lib which are present under installed/ and packages/ folder.
So I had to keep both packages and installed folders together this was my initial problem. In general the problems of setting up windows build using vcpkg along with CI/CD set up like appveyor are,
Note: The limits on appveyor are for free plans on open-source projects. Must have features:
My wish-list 😃
|
This is definitely a bug in our port, thanks for letting us know! I'll try to look into this tomorrow.
Your wish is my command: microsoft/vcpkg#143 (comment). It is very recent, so some ports may encounter issues. Please report these as you find them (or better, send PRs) and we'll make everything work! Essentially, just add
Yeah, caching binaries is definitely important! We intend for open source projects on time-limited machines to use our export mechanism to produce binaries ahead of time (say, on a lead developer's machine) which can be trivially uploaded to GitHub or NuGet.org. Then, the appveyor CI can easily download this archive containing exactly the needed bits. It might also be useful for users to have the exact "tested" libraries available if they want. This helps with PDBs as well, because although they are large they compress really well. We hope to write a blog post soon that walks through this workflow!
We would like to use hardlinks here in the future! |
@paul-michalik appveyor support is added.
enable orb-salm2 project from your appveyor account
Modify readme.md with build status.
Appveyor > project > settings > badges > sample badge.