diff options
author | Stephen Montgomery-Smith <stephen@FreeBSD.org> | 2014-05-15 22:58:01 +0000 |
---|---|---|
committer | Stephen Montgomery-Smith <stephen@FreeBSD.org> | 2014-05-15 22:58:01 +0000 |
commit | ef55c5337b882f66d4047452c7e88536bf0519b1 (patch) | |
tree | 1455689f3d6b23c3eca6bc240ebed8b13789320c /math/sage | |
parent | 8a175e5f22ebbba579c95106c0e12de48a94aaa8 (diff) | |
download | ports-ef55c5337b882f66d4047452c7e88536bf0519b1.tar.gz ports-ef55c5337b882f66d4047452c7e88536bf0519b1.zip |
Notes
Diffstat (limited to 'math/sage')
-rw-r--r-- | math/sage/Makefile | 37 | ||||
-rw-r--r-- | math/sage/distinfo | 4 | ||||
-rw-r--r-- | math/sage/files/patch-build_pkgs_eclib_fbsd-patch-src_libsrc_eclib_interface.h | 13 | ||||
-rw-r--r-- | math/sage/files/patch-build_pkgs_libgap_spkg-install | 12 | ||||
-rw-r--r-- | math/sage/files/patch-build_pkgs_pynac_spkg-install | 12 | ||||
-rw-r--r-- | math/sage/files/patch-src_doc_common_builder.py | 60 | ||||
-rw-r--r-- | math/sage/files/patch-src_doc_common_custom-sphinx-build.py | 9 |
7 files changed, 85 insertions, 62 deletions
diff --git a/math/sage/Makefile b/math/sage/Makefile index dca9da0c32de..c0af9f7c896a 100644 --- a/math/sage/Makefile +++ b/math/sage/Makefile @@ -2,8 +2,7 @@ # $FreeBSD$ PORTNAME= sage -PORTVERSION= 6.1.1 -PORTREVISION= 1 +PORTVERSION= 6.2 CATEGORIES= math MASTER_SITES= http://boxen.math.washington.edu/home/sagemath/sage-mirror/src/ \ http://mirrors.xmission.com/sage/src/ \ @@ -16,7 +15,9 @@ COMMENT= Open source Mathematics software BUILD_DEPENDS= bash:${PORTSDIR}/shells/bash \ convert:${PORTSDIR}/graphics/ImageMagick \ - ffmpeg:${PORTSDIR}/multimedia/ffmpeg + ffmpeg:${PORTSDIR}/multimedia/ffmpeg \ + automake:${PORTSDIR}/devel/automake \ + autoconf:${PORTSDIR}/devel/autoconf LIB_DEPENDS= libatlas.so:${PORTSDIR}/math/atlas \ liblapack.so:${PORTSDIR}/math/lapack \ libjpeg.so:${PORTSDIR}/graphics/jpeg @@ -32,25 +33,11 @@ OPTIONS_DEFINE_amd64= 387 pre-extract: @${ECHO_MSG} - @${ECHO_MSG} \# The best way to build this port is to first type \"make build\". - @${ECHO_MSG} \# If you type \"make\" or \"make install\", this will cause the building of a - @${ECHO_MSG} \# package, which will take a considerable amount of time and space. - @${ECHO_MSG} - @${ECHO_MSG} \# After this, an easier way to install everything is to type: - @${ECHO_MSG} - @${ECHO_MSG} ${MV} ${WRKSRC} ${PREFIX}/. - @${ECHO_MSG} - @${ECHO_MSG} \# The next four lines are only needed if you want sage in ${PREFIX}/bin. - @${ECHO_MSG} - @${ECHO_MSG} "${SED} -e \"s+#SAGE_ROOT.*+SAGE_ROOT=${PREFIX}/${PORTNAME}-${PORTVERSION}+\" \\" - @${ECHO_MSG} " ${PREFIX}/${PORTNAME}-${PORTVERSION}/sage > ${PREFIX}/bin/sage" - @${ECHO_MSG} ${CHOWN} ${BINOWN}:${BINGRP} ${PREFIX}/bin/sage - @${ECHO_MSG} ${CHMOD} ${BINMODE} ${PREFIX}/bin/sage - @${ECHO_MSG} - @${ECHO_MSG} \# The next line will provide write protection for sage. - @${ECHO_MSG} ${CHOWN} -hR ${BINOWN}:${BINGRP} ${PREFIX}/${PORTNAME}-${PORTVERSION} - @${ECHO_MSG} - @sleep 60 + @${ECHO_MSG} Instead of installing the port, which will take a considerable amount of + @${ECHO_MSG} extra time and space, you can instead type \"make build\". Then you can move + @${ECHO_MSG} work/${PORTNAME}-${PORTVERSION} to wherever you like, and run sage from there. + @${ECHO_MSG} However, there is no guarantee that this alternative will always work. + @sleep 10 PLIST_FILES= bin/sage USE_GCC= yes @@ -65,12 +52,6 @@ CXXFLAGS+= -Wl,-rpath=${WRKSRC}/local/lib ${FPM_FLAG} # work-around for the make(1) idiosyncracy mentioned in PR 164361 (which # otherwise breaks the build of the maxima sub-package). -USE_AUTOTOOLS= autoconf -run-autotools: - @${DO_NADA} -do-configure: - @${DO_NADA} - # Optimization flags will be defined by the source CFLAGS:= ${CFLAGS:C/^-O.*$//} FFLAGS:= ${CFLAGS:C/^-O.*$//} diff --git a/math/sage/distinfo b/math/sage/distinfo index 9b394742d3fb..f5a7dab6d0c4 100644 --- a/math/sage/distinfo +++ b/math/sage/distinfo @@ -1,2 +1,2 @@ -SHA256 (sage-6.1.1.tar.gz) = bee00adf232fbd4b256fae1aae5e9b52cb5c050b2d2337b624c31f9c28d07f4d -SIZE (sage-6.1.1.tar.gz) = 398548682 +SHA256 (sage-6.2.tar.gz) = ca9759fd1d38f51f5187907782c73682cba7dec04d1f6aba6e502084ab4035bb +SIZE (sage-6.2.tar.gz) = 424950536 diff --git a/math/sage/files/patch-build_pkgs_eclib_fbsd-patch-src_libsrc_eclib_interface.h b/math/sage/files/patch-build_pkgs_eclib_fbsd-patch-src_libsrc_eclib_interface.h deleted file mode 100644 index 6d40c4ffe160..000000000000 --- a/math/sage/files/patch-build_pkgs_eclib_fbsd-patch-src_libsrc_eclib_interface.h +++ /dev/null @@ -1,13 +0,0 @@ ---- /dev/null 2014-01-29 03:00:00.000000000 +0000 -+++ build/pkgs/eclib/fbsd-patch-src_libsrc_eclib_interface.h 2014-01-29 03:01:19.000000000 +0000 -@@ -0,0 +1,10 @@ -+--- src/libsrc/eclib/interface.h-orig 2013-04-26 23:46:24.000000000 +0000 -++++ src/libsrc/eclib/interface.h 2013-04-26 23:47:09.000000000 +0000 -+@@ -48,6 +48,7 @@ -+ #include <iterator> -+ using namespace std; -+ #include "templates.h" -++#include <stdint.h> -+ -+ #ifndef MININT -+ #define MININT numeric_limits<int>::min() diff --git a/math/sage/files/patch-build_pkgs_libgap_spkg-install b/math/sage/files/patch-build_pkgs_libgap_spkg-install new file mode 100644 index 000000000000..b09183fe9ff9 --- /dev/null +++ b/math/sage/files/patch-build_pkgs_libgap_spkg-install @@ -0,0 +1,12 @@ +--- build/pkgs/libgap/spkg-install-orig 2014-05-15 02:28:13.000000000 +0000 ++++ build/pkgs/libgap/spkg-install 2014-05-15 02:29:05.000000000 +0000 +@@ -42,6 +42,9 @@ + done + + echo "Configuring libGAP..." ++aclocal ++automake --add-missing ++autoconf + ./configure --disable-static \ + CFLAGS="$CFLAGS" CXXFLAGS="$CXXFLAGS" CPPFLAGS="$CPPFLAGS" \ + --with-gap_system_arch="$GAParch_system" \ diff --git a/math/sage/files/patch-build_pkgs_pynac_spkg-install b/math/sage/files/patch-build_pkgs_pynac_spkg-install new file mode 100644 index 000000000000..7083a6145b18 --- /dev/null +++ b/math/sage/files/patch-build_pkgs_pynac_spkg-install @@ -0,0 +1,12 @@ +--- build/pkgs/pynac/spkg-install-orig 2014-05-15 02:26:11.000000000 +0000 ++++ build/pkgs/pynac/spkg-install 2014-05-15 02:19:32.000000000 +0000 +@@ -33,6 +33,9 @@ + { + cd ${PYNACDIR} + PKG_CONFIG_PATH=${SAGE_LOCAL}/lib/pkgconfig; export PKG_CONFIG_PATH ++ aclocal ++ automake --add-missing ++ autoconf + ./configure --disable-static --prefix=${SAGE_LOCAL} --libdir="$SAGE_LOCAL/lib" + $MAKE + if [ $? -ne 0 ]; then diff --git a/math/sage/files/patch-src_doc_common_builder.py b/math/sage/files/patch-src_doc_common_builder.py index 0c52e5a7b9a8..a37f2165929f 100644 --- a/math/sage/files/patch-src_doc_common_builder.py +++ b/math/sage/files/patch-src_doc_common_builder.py @@ -1,6 +1,6 @@ ---- src/doc/common/builder.py-orig 2013-03-17 20:50:38.000000000 +0000 -+++ src/doc/common/builder.py 2013-03-17 20:56:42.000000000 +0000 -@@ -272,13 +272,16 @@ +--- src/doc/common/builder.py.orig 2014-05-06 11:21:42.000000000 +0000 ++++ src/doc/common/builder.py 2014-05-15 21:18:06.000000000 +0000 +@@ -281,19 +281,22 @@ # build the other documents in parallel from multiprocessing import Pool @@ -9,38 +9,60 @@ L = [(doc, name, kwds) + args for doc in others] - # map_async handles KeyboardInterrupt correctly. Plain map and - # apply_async does not, so don't use it. -- pool.map_async(build_other_doc, L, 1).get(99999) -- pool.close() -- pool.join() +- x = pool.map_async(build_other_doc, L, 1) +- try: +- x.get(99999) +- pool.close() +- pool.join() +- except Exception: +- pool.terminate() +- if ABORT_ON_ERROR: +- raise + # Pool doesn't work properly in FreeBSD. Instead: + for iii in L: + build_other_doc(iii) + # # map_async handles KeyboardInterrupt correctly. Plain map and + # # apply_async does not, so don't use it. -+ # pool.map_async(build_other_doc, L, 1).get(99999) -+ # pool.close() -+ # pool.join() ++ # x = pool.map_async(build_other_doc, L, 1) ++ # try: ++ # x.get(99999) ++ # pool.close() ++ # pool.join() ++ # except Exception: ++ # pool.terminate() ++ # if ABORT_ON_ERROR: ++ # raise logger.warning("Elapsed time: %.1f seconds."%(time.time()-start)) logger.warning("Done building the documentation!") -@@ -464,12 +467,15 @@ +@@ -479,18 +482,20 @@ continue output_dir = self._output_dir(format, lang) from multiprocessing import Pool - pool = Pool(NUM_THREADS, maxtasksperchild=1) + # pool = Pool(NUM_THREADS, maxtasksperchild=1) L = [(doc, lang, format, kwds) + args for doc in self.get_all_documents(refdir)] -- # (See comment in AllBuilder._wrapper about using map instead of apply.) -- pool.map_async(build_ref_doc, L, 1).get(99999) -- pool.close() -- pool.join() -+ # Pool doesn't work properly in FreeBSD. Instead: + # (See comment in AllBuilder._wrapper about using map instead of apply.) +- x = pool.map_async(build_ref_doc, L, 1) +- try: +- x.get(99999) +- pool.close() +- pool.join() +- except Exception: +- pool.terminate() +- if ABORT_ON_ERROR: +- raise + for iii in L: + build_ref_doc(iii) -+ # # (See comment in AllBuilder._wrapper about using map instead of apply.) -+ # pool.map_async(build_ref_doc, L, 1).get(99999) -+ # pool.close() -+ # pool.join() ++ # x = pool.map_async(build_ref_doc, L, 1) ++ # try: ++ # x.get(99999) ++ # pool.close() ++ # pool.join() ++ # except Exception: ++ # pool.terminate() ++ # if ABORT_ON_ERROR: ++ # raise # The html refman must be build at the end to ensure correct # merging of indexes and inventories. # Sphinx is run here in the current process (not in a diff --git a/math/sage/files/patch-src_doc_common_custom-sphinx-build.py b/math/sage/files/patch-src_doc_common_custom-sphinx-build.py new file mode 100644 index 000000000000..2287b364da53 --- /dev/null +++ b/math/sage/files/patch-src_doc_common_custom-sphinx-build.py @@ -0,0 +1,9 @@ +--- src/doc/common/custom-sphinx-build.py-orig 2014-05-15 19:16:13.000000000 +0000 ++++ src/doc/common/custom-sphinx-build.py 2014-05-15 19:17:11.000000000 +0000 +@@ -207,4 +207,5 @@ + if ERROR_MESSAGE and ABORT_ON_ERROR: + sys.stdout.flush() + sys.stderr.flush() +- raise OSError(ERROR_MESSAGE) ++ # Comment out next line so that warnings don't stop doc build. ++ # raise OSError(ERROR_MESSAGE) |