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

spkg-configure.m4 for arb #27270

Closed
dimpase opened this issue Feb 13, 2019 · 110 comments
Closed

spkg-configure.m4 for arb #27270

dimpase opened this issue Feb 13, 2019 · 110 comments

Comments

@dimpase
Copy link
Member

dimpase commented Feb 13, 2019

SAGE_SPKG_CONFIGURE([arb], [
    AC_CHECK_HEADER(arb.h, [], [sage_spkg_install_arb=yes])
dnl below function added in version 2.16 of arb 
    AC_SEARCH_LIBS([acb_mat_eig_simple], [arb], [break], [sage_spkg_install_arb=yes])

we also take care of non-standard naming of arb's dylib here.

configure tarball http://users.ox.ac.uk/~coml0531/sage/configure-b5de8991395bbf58e663e69d6250de656897c4e2.tar.gz

Upstream: Reported upstream. No feedback yet.

CC: @embray @jdemeyer @tobihan @kiwifb

Component: build

Author: Dima Pasechnik, Isuru Fernando

Branch: 29d4ce2

Reviewer: François Bissey, Isuru Fernando

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

@dimpase dimpase added this to the sage-8.7 milestone Feb 13, 2019
@dimpase

This comment has been minimized.

@dimpase
Copy link
Member Author

dimpase commented Feb 13, 2019

Dependencies: #27264

@dimpase
Copy link
Member Author

dimpase commented Mar 21, 2019

Commit: 46b529e

@dimpase
Copy link
Member Author

dimpase commented Mar 21, 2019

comment:3

this does not implement --with-arb=..., as I hope it's not needed.
And no other packages have --with-arb=, too.


Last 10 new commits:

50aebabimplement --with-mpfr=system/install
0fc433fupdate for Sage 8.7.rc0, a typo fix
38427e1spkg-configure for mpc, adjustments for its dependees
ec32471Merge branch 'u/dimpase/packages/mpc-config' of trac.sagemath.org:sage into mpf
91f423frebase, deal with --with-mpc
33edfa8Merge branch 'mpf' into flintconf - no spkg-configure yet
82772d7spkg-configure for flint
24f17d5testi for GC enabled
c1ac4f2proper nesting of tests
46b529espkg-configure for arb

@dimpase
Copy link
Member Author

dimpase commented Mar 21, 2019

Branch: u/dimpase/packages/arbconfig

@dimpase
Copy link
Member Author

dimpase commented Mar 21, 2019

comment:4

Tests pass, apart from this amusing doctest failure:

File "src/sage/misc/package.py", line 282, in sage.misc.package.installed_packages
Failed example:
    installed_packages()
Expected:
    {...'arb': ...'pynac': ...}
Got:
    {'.dummy': '',
     'alabaster': '0.7.12',
     'appnope': '0.1.0.p0',
...

Less amusing is that with arb manually installed to /usr/local on Gentoo Linux, I get a import error upon Sage startup, from deep inside sagelib.

I have to start Sage as LD_LIBRARY_PATH=/usr/local/lib64 ./sage, otherwise
I get

ImportError: libarb.so.2: cannot open shared object file: No such file or directory

I do have /usr/local/lib64 in /etc/ld.so.conf, by the way.
Does this mean we need do jump through some linking hoops here?

I certainly can add a proper runtime test in spkg-configure.m4, but why?

@dimpase
Copy link
Member Author

dimpase commented Mar 22, 2019

comment:5

Replying to @dimpase:

Less amusing is that with arb manually installed to /usr/local on Gentoo Linux, I get a import error upon Sage startup, from deep inside sagelib.

oops, my fault. Forgot to run ldconfig after the installation.
(maybe arb should do it for you, cf. flintlib/arb#273).

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Mar 22, 2019

Changed commit from 46b529e to 961886d

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Mar 22, 2019

Branch pushed to git repo; I updated commit sha1. New commits:

961886darb can be dummy, don't mention it in packages doctest

@dimpase
Copy link
Member Author

dimpase commented Mar 22, 2019

Upstream: Reported upstream. No feedback yet.

@dimpase
Copy link
Member Author

dimpase commented Mar 22, 2019

comment:7

upstream report not directly relevant to this ticket, bit OK.

@embray
Copy link
Contributor

embray commented Mar 25, 2019

comment:8

Ticket retargeted after milestone closed (if you don't believe this ticket is appropriate for the Sage 8.8 release please retarget manually)

@embray embray modified the milestones: sage-8.7, sage-8.8 Mar 25, 2019
@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Apr 1, 2019

Changed commit from 961886d to 7a9c768

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Apr 1, 2019

Branch pushed to git repo; I updated commit sha1. New commits:

7a9c768typo in parameter

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Apr 30, 2019

Changed commit from 7a9c768 to 1ed5dbb

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Apr 30, 2019

Branch pushed to git repo; I updated commit sha1. This was a forced push. Last 10 new commits:

1357befimplement --with-mpfr=system/install
e7d04e7spkg-configure for mpc, adjustments for its dependees
fb3aec7rebase, deal with --with-mpc
30b85f7spkg-configure for flint
e17167etesti for GC enabled
d7f3747proper nesting of tests
88209e0typo in parameter
329b835rebase, deal with --with-mpc
447ab2dspkg-configure for arb
1ed5dbbarb can be dummy, don't mention it in packages doctest

@dimpase
Copy link
Member Author

dimpase commented Apr 30, 2019

comment:11

OK, so this branch has mpfr (#27258)
mpc (#27259)
ntl (#27265)
flint (#27264) and, naturally,
arb. Would be great to have it all reviewed in one go...

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Apr 30, 2019

Branch pushed to git repo; I updated commit sha1. New commits:

c09667dconfigure bump

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Apr 30, 2019

Changed commit from 1ed5dbb to c09667d

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Apr 30, 2019

Changed commit from c09667d to a247437

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Apr 30, 2019

comment:13

Attachment: configure-320.tar.gz

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

a867838typo
c4e7778rebase, deal with --with-mpc
cd15ac1spkg-configure for arb
07276c8arb can be dummy, don't mention it in packages doctest
a247437configure bump

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented May 21, 2019

Branch pushed to git repo; I updated commit sha1. This was a forced push. Last 10 new commits:

0392e76rebase, deal with --with-mpc
73ce2a9spkg-configure for flint
37fa1a1testi for GC enabled
4f6434cproper nesting of tests
a672706typo in parameter
013dfbetypo
e698ffccorrected rebase
8fc4fb6add dependency checks, remove unneeded `-with` handling
1ad182dSAGE_CONFIGURE_MPFR, fix sage-env-config.in, arb can be dummy
9de7419added dependency check

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 19, 2019

Changed commit from f463852 to 166e00c

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 19, 2019

Branch pushed to git repo; I updated commit sha1 and set ticket back to needs_review. This was a forced push. New commits:

2c4d350set SAGE_ARB_LIBRARY correctly in every scenario
166e00cbump up configure

@dimpase
Copy link
Member Author

dimpase commented Jul 19, 2019

comment:68

fixing a "minor" m4 error in the latest change.

@dimpase

This comment has been minimized.

@antonio-rojas
Copy link
Contributor

comment:69

Could you add a fallback for SAGE_ARB_LIBRARY in env.py? This wouldn't make any difference for users of the Sage build system (since it is set in sage-env-config) or distros that rename the arb library (which need to set it anyway), and would save distros that use the standard arb library name from having to worry about it

--- src/sage/env.py.orig        2019-07-19 14:05:32.947459540 +0200
+++ src/sage/env.py     2019-07-19 14:15:14.193540393 +0200
@@ -406,6 +406,8 @@
     # This is not a problem in practice since LinBox depends on
     # fflas-ffpack and fflas-ffpack does add such a C++11 flag.
     aliases["LINBOX_CFLAGS"].append("-std=gnu++11")
-    aliases["ARB_LIBRARY"] = os.environ['SAGE_ARB_LIBRARY']
-
+    if os.environ.get('SAGE_ARB_LIBRARY'):
+        aliases["ARB_LIBRARY"] = os.environ['SAGE_ARB_LIBRARY']
+    else:
+        aliases["ARB_LIBRARY"] = 'arb'
     return aliases

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 19, 2019

Changed commit from 166e00c to 411d4a7

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 19, 2019

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

73dd667fallback for ARB_LIBRARY in src/sage/env.py
411d4a7bump up configure

@dimpase
Copy link
Member Author

dimpase commented Jul 19, 2019

comment:71

Done the fallback.

@dimpase

This comment has been minimized.

@isuruf
Copy link
Member

isuruf commented Jul 21, 2019

Changed branch from u/dimpase/packages/arbconfig to u/isuruf/arbconfig

@isuruf
Copy link
Member

isuruf commented Jul 21, 2019

Changed commit from 411d4a7 to 9f79388

@isuruf
Copy link
Member

isuruf commented Jul 21, 2019

Changed reviewer from François Bissey to François Bissey, Isuru Fernando

@isuruf
Copy link
Member

isuruf commented Jul 21, 2019

Changed author from Dima Pasechnik to Dima Pasechnik, Isuru Fernando

@dimpase

This comment has been minimized.

@dimpase
Copy link
Member Author

dimpase commented Jul 21, 2019

Changed commit from 9f79388 to 29d4ce2

@dimpase
Copy link
Member Author

dimpase commented Jul 21, 2019

Last 10 new commits:

5aad412sage should be called with ./ in bootstrap
085f518Debian names the arb library differently
d24ae0fmention flint and arb (and one more forgotten package) for debian
2e04b25add the name of arb dylib to cython_aliases
0e4e71ause AC_CHECK_LIB() calls, as they can be nested
3e8bd98pass the name of arb dylib via an environment variable
ce2b9e0set SAGE_ARB_LIBRARY correctly in every scenario
12f5129fallback for ARB_LIBRARY in src/sage/env.py
b5de899make code simpler
29d4ce2bump up configure

@dimpase
Copy link
Member Author

dimpase commented Jul 21, 2019

Changed branch from u/isuruf/arbconfig to u/dimpase/packages/arbconfig

@dimpase
Copy link
Member Author

dimpase commented Jul 21, 2019

comment:76

merged u/isuruf/arbconfig (which erroneously contained just 1 commit), rebased over 8.9.beta3, bumpled up configure

@vbraun
Copy link
Member

vbraun commented Jul 26, 2019

Changed branch from u/dimpase/packages/arbconfig to 29d4ce2

@mkoeppe
Copy link
Contributor

mkoeppe commented Feb 6, 2020

Changed commit from 29d4ce2 to none

@mkoeppe
Copy link
Contributor

mkoeppe commented Feb 6, 2020

comment:78

Recognizing flint-arb here broke the optional package e-antic (used by normaliz). Follow-up = #27952.

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

9 participants