Skip to content
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

PPL 1.0 does not build on Cygwin #15001

Closed
jpflori opened this issue Aug 5, 2013 · 13 comments
Closed

PPL 1.0 does not build on Cygwin #15001

jpflori opened this issue Aug 5, 2013 · 13 comments

Comments

@jpflori
Copy link

jpflori commented Aug 5, 2013

PPL 1.0 uses some libm long double functions (floorl, frexpl) as soon as it detects the long double type is available and looks functional.
Unfortunately the Cygwin's libm does not provide such function, and we do not build Cephes on Cygwin.

The easy solution is to use plain double precision in place of the extended ones (with a std:: prefix, as PPL also defines its own floor function).
This is what is implemented in 1.1.pre* releases of ppl available at http://bugseng.com/products/ppl/download/ftp/snapshots/.

There was a similar report archived at http://www.cs.unipr.it/pipermail/ppl-devel/2012-September/018538.html.

Use:

Upstream: Fixed upstream, but not in a stable release.

CC: @vbraun @jdemeyer @tscrim

Component: packages: standard

Keywords: cygwin ppl spkg

Author: Jean-Pierre Flori

Reviewer: Volker Braun

Merged: sage-5.11.rc1

Issue created by migration from https://trac.sagemath.org/ticket/15001

@jpflori jpflori added this to the sage-5.12 milestone Aug 5, 2013
@jpflori
Copy link
Author

jpflori commented Aug 5, 2013

comment:1

A straight update to ppl-1.1pre9 solves the issue.
(I've not run any of the PPL or Sage testsuites yet.)

Would it make sense to update to such a release?
Or should we backport the needed patches?
I have no idea how stable the PPL prereleases are.
Maybe Volker who is the spkg maintainer according to SPKG.txt has a better idea of the stability of such releases?

@jdemeyer
Copy link

jdemeyer commented Aug 5, 2013

comment:2

There are precedents of using pre-release versions in Sage packages. So, if it doesn't break anything, that's fine for me. Just make sure you clearly label the version as being a pre-release and document where/how you obtained it. Don't simply call the package ppl-1.1.spkg

@jdemeyer
Copy link

jdemeyer commented Aug 5, 2013

comment:3

Also, it must be a public release. "Some developer sent me this tarball" isn't good enough.

@vbraun
Copy link
Member

vbraun commented Aug 5, 2013

comment:4

Alternatively you can probably disable the floating-point features with the configure switch --disable-fpmath. They are not used by Sage and we only enabled them because it tends to break stuff linked against the system ppl library (did I mention that abusing LD_LIBRARY_PATH sucks?)

@jpflori
Copy link
Author

jpflori commented Aug 5, 2013

comment:5

As you can see in the ticket description, it is a public release, available at http://bugseng.com/external/ppl/download/ftp/

Note though that it seems only one "snapshot" is available at a given time, so when a new one is released, the previous one will disapppear.
And it does not seem trivial to get the right commit from the PPL git server (no recent branches or tags), though it seems that for some time the (pre)release version are "tagged" with a "Version number bumped" commit message, e.g. http://www.cs.unipr.it/git/gitweb.cgi?p=ppl/ppl.git;a=commit;h=f1487c86784d0b54d566502957b8ae5993bf32b8

@jpflori
Copy link
Author

jpflori commented Aug 5, 2013

comment:6

Replying to @vbraun:

Alternatively you can probably disable the floating-point features with the configure switch --disable-fpmath.

That should do the trick from what I saw in the build system files ...

They are not used by Sage and we only enabled them because it tends to break stuff linked against the system ppl library (did I mention that abusing LD_LIBRARY_PATH sucks?)

... but I guess it could be more error-prone then.

@jpflori
Copy link
Author

jpflori commented Aug 6, 2013

Spkg diff, for review only.

@jpflori
Copy link
Author

jpflori commented Aug 6, 2013

comment:7

Attachment: ppl-1.1pre9.p0.diff.gz

@jpflori

This comment has been minimized.

@jpflori
Copy link
Author

jpflori commented Aug 6, 2013

Author: Jean-Pierre Flori

@vbraun
Copy link
Member

vbraun commented Aug 6, 2013

comment:8

Looks good to me. I trust that it fixes the Cygwin problem since I can't try that myself.

@vbraun
Copy link
Member

vbraun commented Aug 6, 2013

Reviewer: Volker Braun

@jdemeyer
Copy link

Merged: sage-5.11.rc1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants