-
Notifications
You must be signed in to change notification settings - Fork 27
Revamped buildscript #87
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
Revamped buildscript #87
Conversation
a594169
to
4afd0bc
Compare
4afd0bc
to
cc8f111
Compare
Codecov Report
@@ Coverage Diff @@
## master #87 +/- ##
=======================================
Coverage 80.88% 80.88%
=======================================
Files 12 12
Lines 1245 1245
=======================================
Hits 1007 1007
Misses 238 238
Continue to review full report at Codecov.
|
This seems to swap one dealbreaker for another: no sudo in the build.jl script, but now there are addons in the .travis.yml. Wouldn't this require every dependent package to do the same (for Travis testing)? |
Yes, that's true ... but at least you don't have a problem when you are installing the code on a local laptop or cluster (given that the dependencies are there). If you want to avoid any dependencies in downstream Travis, then you probably have to statically link all libraries into a final shared object and compile it with very general settings (i.e. no Other than that you can of course only execute some installer code in the Also it's likely that the Travis build environment changes from time to time and this way you force your users to always use the latest version of your package (with the up to date Travis code). It's your call. I'm happy to implement that if you want. |
Do you know why the macOS builds are failing? |
I have not yet invested the effort to find out. I expect I just missed to install some dependency or a small thing like that ... I first wanted to wait whether you are still generally interested in the direction this PR is going and which of the options I presented in the previous comment would be the preferred 😄. |
There are not too many packages dependent on FastTransforms.jl so if the easiest approach is that we need to change the Travis files for those, let's do it. |
To clarify: What you want is to drop any special code for CI environments and install dependencies explicitly in the |
Sure. I believe this will also help with Windows? |
Could do ... I'm not a Windows person, so I'm not sure I can help much there, but I can give it a try. |
Hooray, Travis is passing now on Mac and Linux. Not sure if I'll manage to fix Windows, so perhaps this should go in as is? |
OK, but we still can't tag until Windows is fixed. |
I'll work on Windows. Should be straightforward if using an appveyor script for deps |
Thanks for taking a look at this, by the way! I'll merge to keep your contribution, but I have to make some modifications, because:
Also, I just found out that if one builds from source then attempts to download the binaries, the julia |
Sure, that's completely fine.
I did the git reset hard in order to make sure that if you change the required version of the C code upstream and I then do a pull, that for sure the correct version will be built and not silently an old version from me will be employed and subtle inconsistencies could result. Of course has the disadvantage you describe.
|
This is a try at a cleaner buildscript and a cleaner Travis setup. All comments welcome.
Closes #84