diff options
author | maya <maya@pkgsrc.org> | 2017-08-01 11:06:18 +0000 |
---|---|---|
committer | maya <maya@pkgsrc.org> | 2017-08-01 11:06:18 +0000 |
commit | 614a82ca98be394643fb270d08462e9872dc3a9b (patch) | |
tree | 8137e061f74b48e977acc4c6efd937a7ba7dd138 | |
parent | c421a50f4d2b0db211e48a005bc41990665dae69 (diff) | |
download | pkgsrc-614a82ca98be394643fb270d08462e9872dc3a9b.tar.gz |
Make octave-forge work (on netbsd, with gfortran)
allow overriding MKOCTFILE_* and use it to provide a full path gfortran,
so the invocation doesn't fail because gfortran isn't normally in PATH
Force the use of bsdtar. unpacking yielding random PaxHeaders.1234 triggers
an octave package sanity check making the build of the 'signal' package
fail with a cryptic error with no further diagnostics.
bump PKGREVISION
-rw-r--r-- | math/octave/Makefile | 7 | ||||
-rw-r--r-- | math/octave/distinfo | 7 | ||||
-rw-r--r-- | math/octave/patches/patch-configure | 26 | ||||
-rw-r--r-- | math/octave/patches/patch-configure.ac | 26 | ||||
-rw-r--r-- | math/octave/patches/patch-scripts_miscellaneous_unpack.m | 29 |
5 files changed, 88 insertions, 7 deletions
diff --git a/math/octave/Makefile b/math/octave/Makefile index 559a25c651f..c79ad2f01f5 100644 --- a/math/octave/Makefile +++ b/math/octave/Makefile @@ -1,7 +1,7 @@ -# $NetBSD: Makefile,v 1.153 2017/07/30 12:30:50 maya Exp $ +# $NetBSD: Makefile,v 1.154 2017/08/01 11:06:18 maya Exp $ DISTNAME= octave-4.2.0 -PKGREVISION= 10 +PKGREVISION= 11 CATEGORIES= math MASTER_SITES= ${MASTER_SITE_GNU:=octave/} @@ -39,6 +39,9 @@ CONFIGURE_ARGS+= --disable-java # use this to bypass qt5 portability issues: #CONFIGURE_ARGS+= CPPFLAGS=-DQT_DISABLE_DEPRECATED_BEFORE=0 +# Provide a full path gfortran in MKOCTFILE for octave-forge +CONFIGURE_ENV+= MKOCTFILE_F77=${FCPATH} + .include "../../mk/bsd.prefs.mk" # When __APPLE__ is defined, fltk headers typedef an alternate version of Window diff --git a/math/octave/distinfo b/math/octave/distinfo index 65022fdd72c..77a2356516a 100644 --- a/math/octave/distinfo +++ b/math/octave/distinfo @@ -1,11 +1,11 @@ -$NetBSD: distinfo,v 1.51 2017/03/15 11:33:03 maya Exp $ +$NetBSD: distinfo,v 1.52 2017/08/01 11:06:18 maya Exp $ SHA1 (octave-4.2.0.tar.gz) = 9fac578c08a7efabd79ccc38bc196b9627e3212f RMD160 (octave-4.2.0.tar.gz) = 07ff9bae3a0128c93f9113ebf952dea129b58284 SHA512 (octave-4.2.0.tar.gz) = 5d16665d4ef8f218320f471704f8702f3a2911cc4a083cae318c1df0f787d50dddbc511dc91e11379314d65cecac6d521abac026860feca19d11ffdb52d3e678 Size (octave-4.2.0.tar.gz) = 25320153 bytes -SHA1 (patch-configure) = 3d12daef0412a6d1c248ca85a0c3a1370fd6c921 -SHA1 (patch-configure.ac) = 23f6a0d617429aeb9f92038d475a817978904445 +SHA1 (patch-configure) = fe31eb2e1b0f15ff77838c2514d4a434f4e59360 +SHA1 (patch-configure.ac) = 0dba5f4b862e9862687021f985109451ea2672e7 SHA1 (patch-fseeko-fpos_t.c) = b38e7a38be2e0b323cd7f168f1d22d3df998691c SHA1 (patch-libgnu_stdio.in.h) = 112a424655d46c75fb68531fe7a84d9a0e97a984 SHA1 (patch-libinterp_build-env.in.cc) = 09431962403996d0f979c7dcd080b721dad55055 @@ -16,5 +16,6 @@ SHA1 (patch-liboctave_operators_mx-inlines.cc) = e74ea202f89c1a6a394f8fd3d86397d SHA1 (patch-liboctave_wrappers_strftime-wrapper.c) = 1b8645c00e6db0d6d7045fa0bbef13661cd2aa84 SHA1 (patch-liboctave_wrappers_strftime-wrapper.h) = f1453aa44ea5b3600c5ed13acc2d10800f538959 SHA1 (patch-m4_acinclude.m4) = 194b8c3cf6f5e45a0251b229af9b3a47c12aa608 +SHA1 (patch-scripts_miscellaneous_unpack.m) = 82c9ca170762e223c8e5a6f88a7dd9fe2a2a33d0 SHA1 (patch-scripts_pkg_private_configure__make.m) = 7d4b620f889faa66c4c9c581ef8a7e7692b68c94 SHA1 (patch-scripts_plot_util_____gnuplot__drawnow____.m) = 449b178aefd78c5c1b03ffd960f2e8be3874efc2 diff --git a/math/octave/patches/patch-configure b/math/octave/patches/patch-configure index 10e55e831c8..7e67fc00882 100644 --- a/math/octave/patches/patch-configure +++ b/math/octave/patches/patch-configure @@ -1,4 +1,4 @@ -$NetBSD: patch-configure,v 1.5 2016/11/19 21:53:12 maya Exp $ +$NetBSD: patch-configure,v 1.6 2017/08/01 11:06:18 maya Exp $ install .oct loadable modules with INSTALL_LIB to avoid stripping them @@ -8,6 +8,9 @@ the guess it had for linux (x86_64-unknown-linux-gnu), seems to trample over our own tools: https://mail-index.netbsd.org/pkgsrc-users/2014/03/26/msg019464.html +Allow overriding MKOCTFILE_F77 so we can provide the full path to gfortran +(for building octave-forge packages like control) + --- configure.orig 2016-11-13 15:22:50.000000000 +0000 +++ configure @@ -1971,6 +1971,7 @@ DEFAULT_PAGER @@ -52,3 +55,24 @@ https://mail-index.netbsd.org/pkgsrc-users/2014/03/26/msg019464.html ac_exists=false for ac_i in $ac_cv_f77_libs; do if test x"$ac_arg" = x"$ac_i"; then +@@ -29516,13 +29523,13 @@ if test "$cross_compiling" = yes && test + MKOCTFILE_LD_CXX=`echo "$LD_CXX" | $SED "s,$CROSS_TOOL_PREFIX,,"` + MKOCTFILE_RANLIB=`echo "$RANLIB" | $SED "s,$CROSS_TOOL_PREFIX,,"` + else +- MKOCTFILE_AR="$AR" +- MKOCTFILE_CC="$CC" +- MKOCTFILE_CXX="$CXX" +- MKOCTFILE_DL_LD="$DL_LD" +- MKOCTFILE_F77="$F77" +- MKOCTFILE_LD_CXX="$LD_CXX" +- MKOCTFILE_RANLIB="$RANLIB" ++ MKOCTFILE_AR="${MKOCTFILE_AR-$AR}" ++ MKOCTFILE_CC="${MKOCTFILE_CC-$CC}" ++ MKOCTFILE_CXX="${MKOCTFILE_CXX-$CXX}" ++ MKOCTFILE_DL_LD="${MKOCTFILE_DL_LD-$DL_LD}" ++ MKOCTFILE_F77="${MKOCTFILE_F77-$F77}" ++ MKOCTFILE_LD_CXX="${MKOCTFILE_LD_CXX-$LD_CXX}" ++ MKOCTFILE_RANLIB="${MKOCTFILE_RANLIB-$RANLIB}" + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: defining CROSS_TOOL_PREFIX to be $CROSS_TOOL_PREFIX" >&5 + $as_echo "$as_me: defining CROSS_TOOL_PREFIX to be $CROSS_TOOL_PREFIX" >&6;} diff --git a/math/octave/patches/patch-configure.ac b/math/octave/patches/patch-configure.ac index 43dc9a8345e..67f882c230a 100644 --- a/math/octave/patches/patch-configure.ac +++ b/math/octave/patches/patch-configure.ac @@ -1,7 +1,10 @@ -$NetBSD: patch-configure.ac,v 1.3 2016/11/19 21:53:12 maya Exp $ +$NetBSD: patch-configure.ac,v 1.4 2017/08/01 11:06:18 maya Exp $ install .oct loadable modules with INSTALL_LIB to avoid stripping them +Allow overriding MKOCTFILE_F77 so we can install a full path gfortran +(for building octave-forge packages like control) + --- configure.ac.orig 2016-11-13 15:19:37.000000000 +0000 +++ configure.ac @@ -208,8 +208,11 @@ AC_PROG_LN_S @@ -17,3 +20,24 @@ install .oct loadable modules with INSTALL_LIB to avoid stripping them OCTAVE_PROG_DESKTOP_FILE_INSTALL +@@ -1074,13 +1077,13 @@ if test "$cross_compiling" = yes && test + MKOCTFILE_LD_CXX=`echo "$LD_CXX" | $SED "s,$CROSS_TOOL_PREFIX,,"` + MKOCTFILE_RANLIB=`echo "$RANLIB" | $SED "s,$CROSS_TOOL_PREFIX,,"` + else +- MKOCTFILE_AR="$AR" +- MKOCTFILE_CC="$CC" +- MKOCTFILE_CXX="$CXX" +- MKOCTFILE_DL_LD="$DL_LD" +- MKOCTFILE_F77="$F77" +- MKOCTFILE_LD_CXX="$LD_CXX" +- MKOCTFILE_RANLIB="$RANLIB" ++ MKOCTFILE_AR="${MKOCTFILE_AR-$AR}" ++ MKOCTFILE_CC="${MKOCTFILE_CC-$CC}" ++ MKOCTFILE_CXX="${MKOCTFILE_CXX-$CXX}" ++ MKOCTFILE_DL_LD="${MKOCTFILE_DL_LD-$DL_LD}" ++ MKOCTFILE_F77="${MKOCTFILE_F77-$F77}" ++ MKOCTFILE_LD_CXX="${MKOCTFILE_LD_CXX-$LD_CXX}" ++ MKOCTFILE_RANLIB="${MKOCTFILE_RANLIB-$RANLIB}" + fi + AC_MSG_NOTICE([defining CROSS_TOOL_PREFIX to be $CROSS_TOOL_PREFIX]) + AC_MSG_NOTICE([defining MKOCTFILE_AR to be $MKOCTFILE_AR]) diff --git a/math/octave/patches/patch-scripts_miscellaneous_unpack.m b/math/octave/patches/patch-scripts_miscellaneous_unpack.m new file mode 100644 index 00000000000..5e0026265aa --- /dev/null +++ b/math/octave/patches/patch-scripts_miscellaneous_unpack.m @@ -0,0 +1,29 @@ +$NetBSD: patch-scripts_miscellaneous_unpack.m,v 1.1 2017/08/01 11:06:18 maya Exp $ + +Unpack with bsdtar. if we get PaxHeaders.1234 files, we trip an octave-forge +sanity check + +--- scripts/miscellaneous/unpack.m.orig 2016-11-13 15:16:10.000000000 +0000 ++++ scripts/miscellaneous/unpack.m +@@ -174,15 +174,15 @@ function filelist = unpack (file, dir = + 'bzip2 -d -f "%s"', ... + @__parse_bzip2__, true}; + commandlist.bz = commandlist.bz2; +- commandlist.tar = {'tar xvf "%s"', ... +- 'tar xf "%s"', ... ++ commandlist.tar = {'bsdtar xvf "%s"', ... ++ 'bsdtar xf "%s"', ... + @__parse_tar__, false}; +- commandlist.targz = {'gzip -d -c "%s" | tar xvf -', ... +- 'gzip -d -c "%s" | tar xf -', ... ++ commandlist.targz = {'gzip -d -c "%s" | bsdtar xvf -', ... ++ 'gzip -d -c "%s" | bsdtar xf -', ... + @__parse_tar__, false}; + commandlist.tgz = commandlist.targz; +- commandlist.tarbz2 = {'bzip2 -d -c "%s" | tar xvf -', ... +- 'bzip2 -d -c "%s" | tar xf -', ... ++ commandlist.tarbz2 = {'bzip2 -d -c "%s" | bsdtar xvf -', ... ++ 'bzip2 -d -c "%s" | bsdtar xf -', ... + @__parse_tar__, false}; + commandlist.tarbz = commandlist.tarbz2; + commandlist.tbz2 = commandlist.tarbz2; |