summaryrefslogtreecommitdiff
path: root/math/octave
diff options
context:
space:
mode:
authormaya <maya@pkgsrc.org>2017-08-01 11:06:18 +0000
committermaya <maya@pkgsrc.org>2017-08-01 11:06:18 +0000
commit614a82ca98be394643fb270d08462e9872dc3a9b (patch)
tree8137e061f74b48e977acc4c6efd937a7ba7dd138 /math/octave
parentc421a50f4d2b0db211e48a005bc41990665dae69 (diff)
downloadpkgsrc-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
Diffstat (limited to 'math/octave')
-rw-r--r--math/octave/Makefile7
-rw-r--r--math/octave/distinfo7
-rw-r--r--math/octave/patches/patch-configure26
-rw-r--r--math/octave/patches/patch-configure.ac26
-rw-r--r--math/octave/patches/patch-scripts_miscellaneous_unpack.m29
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;