-
Notifications
You must be signed in to change notification settings - Fork 841
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
LGPL licensing restrictions on Windows because of integer-gmp #399
Comments
Might help: http://copyleft.org/guide/comprehensive-gpl-guidech12.html#x15-11100011.5 N.B. Have no idea if that website/document can be considered legal advice. |
I would love it if there was a way to use integer-simple with stackage. As a warning, |
I don't think a big red warning is the right answer, but having this well documented in the FAQ seems reasonable. I would love to get rid of the LGPL code entirely, but as @andrewthad points out, there's no real chance of being able to do that right now. @quyse Would you be able to add a FAQ entry for this? |
Having the option of using integer-simple (without compiling ghc oneself) for those projects that do not rely on integer-gmp would be a nice convenience, and greatly appreciated. |
I have no objection to adding such support. Would someone be able to build On Thu, Jun 25, 2015, 9:40 AM Philipp notifications@github.com wrote:
|
I guess if I want the feature, it's only fair if I provide the windows binaries :-) Which versions of ghc does stack support? 7.8.4 onwards, or also earlier? |
It theoretically supports any version requested by the user, but 7.8.4 and On Thu, Jun 25, 2015, 12:26 PM Philipp notifications@github.com wrote:
|
@snoyberg I've added a short entry to the FAQ pointing to this issue. By the way, I was thinking it's Windows-only limitation, as I've checked that on Linux GMP is linked dynamically. But now I found this comment which made me worried about OS X. I don't work with OS X, does anyone know about the situation there? |
@quyse Thanks! |
@kantp Has provided the following GHC bindists:
My thought is that we would add a new command line option that- like |
@snoyberg @kantp That's great, thanks for getting back so quickly! I just tested your GHC (only 7.10.1 for the moment), and I was able to build and run my project which uses about 30 packages, and I wasn't able to build my another project because of issue with
Usually I workaround this by using
Am I missing something? |
stack typically solves this by including PortableGit's msys implementation on the PATH, which will allow configure scripts to run. Can you try adding that and trying again? |
Would it make sense to add a custom "arch" or "os" for GHC's built with no gmp-integer? You could minimally support the last two GHC versions on whatever OS you have a build for. In other words, could you add an "os" that's "windows-no-gmp" for the time being? Or perhaps add it to the arch? That would basically make |
Just realized you already had that idea. I'm all for it, or something like it. |
If I can get builds working, I'll supply as many builds for Windows as my machine can crank out. This applies to MinGHC too. |
Minor note: https://ghc.haskell.org/trac/ghc/wiki/ReplacingGMPNotes is kinda obsolete as the GMP library was rewritten from scratch for GHC 7.10 (https://ghc.haskell.org/trac/ghc/wiki/Design/IntegerGmp2), Personally, I'd like to get rid of /cc @thoughtpolice |
@hvr That sounds like the Right Thing to do, very nice. In the meantime, if there is a switch for the integer library, I think it would make sense to have this orthogonal to the choice of the operating system. |
@quyse hashable was just updated, now for a stackage release including it. |
@snoyberg... Wow. You don't miss a beat. Stackage part already being done |
I can't take credit, it's just the daily Stackage builds doing their thing. IIUC, this means that the LGPL concern will not apply to the normal GHC bindist in the near future. Is that the case? I should probably say that IANAL, so some of this goes over my head. Perhaps we can have a thread on ghc-dev about this, I'd definitely like to understand this better and understand what work still needs to be done. |
@snoyberg feel free to start a thread, I'll chime in and try to answer as best as I can any questions you put forward |
Hackage says the license is BSD3, and it says so for both versions... |
@tejon Sorry, I just added an update to the first post with clarification about integer-gmp and GMP. I was using names integer-gmp and GMP interchangeably. |
@snoyberg Yes, finally I was able to install @3noch Cool, that's fast :) |
So all we need to do is not link in integer-gmp? No special build of GHC required? |
The section says this:
I think this is clear that that's the case. |
Given the work on alternative bindists, should this be closed? |
would ghc-musl make a better bindist default ? |
I don't think so:
|
Thanks for those infos |
No objection given to my question about closing. |
How it should be used with stack 1.1.2? |
@varosi: Don't have a Windows box available right now to try it, but it should be
|
@borsboom, I have got this:
|
Looks like @kantp provided the past integer-simple bindists, but we have not received any yet for GHC 7.10.3 or GHC 8.0.1. |
I provided the bindists for 7.10.2, but unfortunately I no longer work with Windows and don't have access to my build machines. |
@3noch: Ah sorry, I missed that in reading the history of this issue. Do you happen to have the process to create them documented anywhere? In any case, we'll be happy to add the metadata for 7.10.3 and 8.0.1 windows-integersimple bindists when we're provided with them (and, you can always add |
@borsboom: I followed the instructions on the GHC wiki (https://ghc.haskell.org/trac/ghc/wiki/Building/Preparation/Windows) without too much trouble. Changing out the configuration to use |
@borsboom , I'd like to provide a 7.10.3 windows-integersimple bindist if possible. Are there any special settings for the other bindists used by stack? BuildFlavor, etc.. |
Here is an integersimple bindist built with the default build options. Please notify me if something else needs to be done. |
@leohaskell: did you test this bindist with |
The following is working:
|
@borsboom, it's still not official? |
With stack [[Version 1.3.0, Git revision 99b910d x86_64 hpack-0.15.0]]
What am I doing wrong? |
I don't think you want to have the |
I have a problem with CI builds on Windows. As I need to set flags for certain packages to allow them to build with integersimple ( Normally (without integersimple) packages from stackage go into snapshot directories and not cleaned up, so builds on Linux are fast. I've seen the "extensible snapshot" feature which should allow me to make a derived snapshot with changed flags, so all those packages will go to snapshot directory, and therefore won't be rebuilt every time. Unfortunately last time I tried that feature it didn't support setting |
Default version of GHC on Windows produces binaries with integer-gmp linked statically. As integer-gmp's license is LGPL, it means that resulting binaries should be provided with source code or object files. I guess that's not a thing everyone would want.
On UNIXes integer-gmp is linked dynamically, so these restrictions don't apply.
So, in order to fix that we can either:
Additional Links:
ReplacingGMPNotes
UPDATE:
The text was updated successfully, but these errors were encountered: