Opened 2 years ago

Closed 2 years ago

#22011 closed enhancement (fixed)

Make giac a standard package

Reported by: rws Owned by:
Priority: major Milestone: sage-7.5
Component: packages: standard Keywords:
Cc: frederichan, parisse Merged in:
Authors: Ralf Stephan Reviewers: Frederic Han
Report Upstream: N/A Work issues:
Branch: 2453fa3 (Commits) Commit: 2453fa389c23f4a55fe291f9c25d3bf8a98866d7
Dependencies: Stopgaps:

Attachments (1)

giacspkg.diff (2.4 KB) - added by frederichan 2 years ago.

Download all attachments as: .zip

Change History (19)

comment:1 Changed 2 years ago by rws

  • Authors set to Ralf Stephan

comment:2 Changed 2 years ago by rws

  • Branch set to u/rws/upgrade_to_newest_giac_using_official_tarball

comment:3 Changed 2 years ago by rws

  • Branch u/rws/upgrade_to_newest_giac_using_official_tarball deleted
  • Description modified (diff)
  • Status changed from new to needs_review
  • Summary changed from Upgrade to newest giac using official tarball to Make giac a standard package

comment:4 Changed 2 years ago by rws

  • Branch set to u/rws/upgrade_to_newest_giac_using_official_tarball
  • Commit set to e2c202850b090bee6c36e52b0abc264f8ed6e15b

New commits:

e2c202822011: change giac package type to standard

comment:5 Changed 2 years ago by frederichan

What about all the

# optional - giac

in the doctests, should they be removed for a standard package?

comment:6 Changed 2 years ago by git

  • Commit changed from e2c202850b090bee6c36e52b0abc264f8ed6e15b to 4659cc476c96e192948c22b13775382678785e80

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

957963522011: remove "optional: giac" from symbolic and calculus
4659cc422011: remove optional giac from interface

comment:7 Changed 2 years ago by rws

Right. Anything missing?

comment:8 Changed 2 years ago by frederichan

there are also some doctets in

src/sage/matrix/matrix1.pyx:            sage: giac(M)                              # optional - giac
src/sage/matrix/matrix1.pyx:            sage: giac(M)                                      # optional - giac
src/sage/matrix/matrix1.pyx:            sage: giac(M)                             # optional - giac
src/sage/modules/free_module_element.pyx:            sage: v = vector(ZZ, 4, range(4))              # optional - giac
src/sage/modules/free_module_element.pyx:            sage: giac(v)+v                                # optional -  giac
src/sage/modules/free_module_element.pyx:            sage: v = vector(QQ, 3, [2/3, 0, 5/4])         # optional -  giac
src/sage/modules/free_module_element.pyx:            sage: giac(v)                                  # optional -  giac
src/sage/modules/free_module_element.pyx:            sage: P.<x> = ZZ[]                                       # optional -  giac
src/sage/modules/free_module_element.pyx:            sage: v = vector(P, 3, [x^2 + 2, 2*x + 1, -2*x^2 + 4*x]) # optional -  giac
src/sage/modules/free_module_element.pyx:            sage: giac(v)                                            # optional -  giac

comment:9 Changed 2 years ago by frederichan

Also, you have removed some

# random

they should be kept because of the output may vary

comment:10 Changed 2 years ago by git

  • Commit changed from 4659cc476c96e192948c22b13775382678785e80 to 3894f98d989b80be284677c089b76663a46c9b4c

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

3894f9822011: remove more "optional: giac"

Changed 2 years ago by frederichan

comment:11 Changed 2 years ago by frederichan

So because of the removed # random on linux there is one doctest to fix and add again random at cputime example.

I had tested also on osx 10.12 just after an update from 10.7. The built of giac was broken at the end when trying make intl.

[giac-1.2.2.103] gcc -c -DLOCALEDIR=\"/Users/frederichan/dev/sage/local/share/locale\" -DLOCALE_ALIAS_PATH=\"/Users/frederichan/dev/sage/local/share/locale\" -DLIBDIR=\"/Users/frederichan/dev/sage/local/lib\" -DIN_LIBINTL -DENABLE_RELOCATABLE=1 -DIN_LIBRARY -DINSTALLDIR=\"/Users/frederichan/dev/sage/local/lib\" -DNO_XMALLOC -Dset_relocation_prefix=libintl_set_relocation_prefix -Drelocate=libintl_relocate -DDEPENDS_ON_LIBICONV=1 -DHAVE_CONFIG_H -I. -I. -I.. -I/System/Library/Frameworks/CoreFoundation.framework/Headers -g -O2  langprefs.c
[giac-1.2.2.103] In file included from /usr/include/Availability.h:180:0,
[giac-1.2.2.103]                  from /usr/include/stdlib.h:61,
[giac-1.2.2.103]                  from langprefs.c:25:
[giac-1.2.2.103] /System/Library/Frameworks/CoreFoundation.framework/Headers/CFURL.h:777:39: error: 'introduced' undeclared here (not in a function)
[giac-1.2.2.103]  const CFStringRef kCFURLLabelColorKey API_DEPRECATED("Use NSURLLabelColorKey", macosx(10.6, 10.12), ios(4.0, 10.0), watchos(2.0, 3.0), tvos(9.0, 10.0));
[giac-1.2.2.103]                                        ^
[giac-1.2.2.103] /System/Library/Frameworks/CoreFoundation.framework/Headers/CFURL.h:777:39: error: 'deprecated' undeclared here (not in a function)
[giac-1.2.2.103]  const CFStringRef kCFURLLabelColorKey API_DEPRECATED("Use NSURLLabelColorKey", macosx(10.6, 10.12), ios(4.0, 10.0), watchos(2.0, 3.0), tvos(9.0, 10.0));
[giac-1.2.2.103]                                        ^
[giac-1.2.2.103] /System/Library/Frameworks/CoreFoundation.framework/Headers/CFURL.h:777:39: error: 'message' undeclared here (not in a function)
[giac-1.2.2.103]  const CFStringRef kCFURLLabelColorKey API_DEPRECATED("Use NSURLLabelColorKey", macosx(10.6, 10.12), ios(4.0, 10.0), watchos(2.0, 3.0), tvos(9.0, 10.0));
[giac-1.2.2.103]                                        ^
[giac-1.2.2.103] make[5]: *** [langprefs.o] Error 1
[giac-1.2.2.103] make[4]: *** [all-recursive] Error 1
[giac-1.2.2.103] make[3]: *** [all] Error 2

but configuring the giac spkg with --disable-nls was successfull on osx 10.12 so I suggest the following diff: https://trac.sagemath.org/attachment/ticket/22011/giacspkg.diff

comment:12 Changed 2 years ago by git

  • Commit changed from 3894f98d989b80be284677c089b76663a46c9b4c to 8653fdfc14d2aa1c1976d20238f10509f3ca41b9

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

8653fdf22011: revert removal of "random"

comment:13 Changed 2 years ago by git

  • Commit changed from 8653fdfc14d2aa1c1976d20238f10509f3ca41b9 to 2453fa389c23f4a55fe291f9c25d3bf8a98866d7

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

2453fa322011: additional changes

comment:14 Changed 2 years ago by frederichan

  • Status changed from needs_review to positive_review

On fedora 25 amd64 I was able to build sage with

export MAKE='make -j3'
make

At the end giac was also built. I could run

make ptestlong

then I could run

env SAGE_CHECK=yes make giacpy

On osx 10.12 I could built sage with make but something was missing psutil:

[sagelib-7.5.beta5] sys	0m1.710s
cd ../.. && sage-logger -p './sage --docbuild --no-pdf-links all html ' logs/dochtml.log
[dochtml] /Users/frederichan/dev/sage/local/bin/python: No module named psutil; 'sage_setup.docbuild' is a package and cannot be directly executed
make[2]: *** [doc-html] Error 1
make[1]: *** [all] Error 2

so I made

make psutil

then I could build sage successfully, and giac was built. As it seems unreliated to giac I give a positive review

comment:15 Changed 2 years ago by rws

Thanks for the review.

comment:16 Changed 2 years ago by rws

Please add your name as reviewer.

comment:17 Changed 2 years ago by frederichan

  • Reviewers set to Frederic Han

comment:18 Changed 2 years ago by vbraun

  • Branch changed from u/rws/upgrade_to_newest_giac_using_official_tarball to 2453fa389c23f4a55fe291f9c25d3bf8a98866d7
  • Resolution set to fixed
  • Status changed from positive_review to closed
Note: See TracTickets for help on using tickets.