mirror of
https://src.fedoraproject.org/rpms/sagemath.git
synced 2025-04-17 01:39:02 -04:00
Also: - Install an SVG icon instead of a fixed size (128x128) icon. - Require hicolor-icon-theme since we install an icon. - Drop obsolete Obsolete.
51 lines
2.3 KiB
Diff
51 lines
2.3 KiB
Diff
diff -up src/sage/env.py.orig src/sage/env.py
|
|
--- src/sage/env.py.orig 2019-01-14 17:16:02.000000000 -0700
|
|
+++ src/sage/env.py 2019-02-07 16:11:38.887417503 -0700
|
|
@@ -164,7 +164,7 @@ _add_variable_or_fallback('CONWAY_POLYNO
|
|
_add_variable_or_fallback('GRAPHS_DATA_DIR', opj('$SAGE_SHARE','graphs'))
|
|
_add_variable_or_fallback('ELLCURVE_DATA_DIR',opj('$SAGE_SHARE','ellcurves'))
|
|
_add_variable_or_fallback('POLYTOPE_DATA_DIR',opj('$SAGE_SHARE','reflexive_polytopes'))
|
|
-_add_variable_or_fallback('GAP_ROOT_DIR', opj('$SAGE_SHARE','gap'))
|
|
+_add_variable_or_fallback('GAP_ROOT_DIR', opj('/usr','lib','gap'))
|
|
_add_variable_or_fallback('THEBE_DIR', opj('$SAGE_SHARE','thebe'))
|
|
_add_variable_or_fallback('COMBINATORIAL_DESIGN_DATA_DIR', opj('$SAGE_SHARE', 'combinatorial_designs'))
|
|
_add_variable_or_fallback('CREMONA_MINI_DATA_DIR', opj('$SAGE_SHARE', 'cremona'))
|
|
diff -up src/sage/libs/gap/util.pyx.orig src/sage/libs/gap/util.pyx
|
|
--- src/sage/libs/gap/util.pyx.orig 2019-01-14 17:16:03.000000000 -0700
|
|
+++ src/sage/libs/gap/util.pyx 2019-02-07 16:13:52.658939819 -0700
|
|
@@ -18,6 +18,7 @@ import os
|
|
import signal
|
|
import warnings
|
|
|
|
+from posix.dlfcn cimport dlopen, dlclose, RTLD_NOW, RTLD_GLOBAL
|
|
from libc.string cimport strcpy, strlen
|
|
|
|
from cpython.exc cimport PyErr_SetObject, PyErr_Occurred, PyErr_Fetch
|
|
@@ -181,7 +182,7 @@ def gap_root():
|
|
|
|
sage: from sage.libs.gap.util import gap_root
|
|
sage: gap_root() # random output
|
|
- '/home/vbraun/opt/sage-5.3.rc0/local/gap/latest'
|
|
+ '/usr/lib/gap'
|
|
"""
|
|
if os.path.exists(sage.env.GAP_ROOT_DIR):
|
|
return sage.env.GAP_ROOT_DIR
|
|
@@ -259,6 +260,18 @@ cdef initialize():
|
|
global _gap_is_initialized, environ
|
|
if _gap_is_initialized: return
|
|
|
|
+ # Hack to ensure that all symbols provided by libgap are loaded into the
|
|
+ # global symbol table
|
|
+ # Note: we could use RTLD_NOLOAD and avoid the subsequent dlclose() but
|
|
+ # this isn't portable
|
|
+ cdef void* handle
|
|
+ handle = dlopen("libgap.so", RTLD_NOW | RTLD_GLOBAL)
|
|
+ if handle == NULL:
|
|
+ raise RuntimeError(
|
|
+ "Could not dlopen() libgap.so even though it should already "
|
|
+ "be loaded!")
|
|
+ dlclose(handle)
|
|
+
|
|
# Define argv and environ variables, which we will pass in to
|
|
# initialize GAP. Note that we must pass define the memory pool
|
|
# size!
|