aboutsummaryrefslogtreecommitdiffstats
path: root/math
diff options
context:
space:
mode:
authorrea <rea@FreeBSD.org>2011-03-04 23:13:44 +0800
committerrea <rea@FreeBSD.org>2011-03-04 23:13:44 +0800
commite8a085af57f91476748d5ded1bf946386487f95d (patch)
tree4f297a158d8c8a302e930bfe553e281942fe9613 /math
parent8cd46363d1c769bfe37c2dda4fc47ff2bb8f54ce (diff)
downloadfreebsd-ports-gnome-e8a085af57f91476748d5ded1bf946386487f95d.tar.gz
freebsd-ports-gnome-e8a085af57f91476748d5ded1bf946386487f95d.tar.zst
freebsd-ports-gnome-e8a085af57f91476748d5ded1bf946386487f95d.zip
math/lp_solve: respect TMPDIR environment variable
Some People (TM) are using non-executable /tmp on their machines. The ccc utility from the port tries to run compiled executables from /tmp, so this fails and port installation does not work. It is always good to respect TMPDIR and this patch does just that. PR: 154503 Feature safe: yes Approved by: garga (mentor)
Diffstat (limited to 'math')
-rw-r--r--math/lp_solve/Makefile10
-rw-r--r--math/lp_solve/files/patch-respect-TMPDIR98
2 files changed, 105 insertions, 3 deletions
diff --git a/math/lp_solve/Makefile b/math/lp_solve/Makefile
index 3666e858abfa..1f6db86c1697 100644
--- a/math/lp_solve/Makefile
+++ b/math/lp_solve/Makefile
@@ -19,6 +19,10 @@ WRKSRC= ${WRKDIR}/${PORTNAME}_${PORTVERSION:R:R}
USE_LDCONFIG= yes
+.if defined(TMPDIR)
+BUILDENV= ${ENV} TMPDIR="${TMPDIR}"
+.endif
+
.include <bsd.port.pre.mk>
.if ${ARCH} == "i386"
@@ -39,9 +43,9 @@ post-patch:
s|-ldl||g"
do-build:
- cd ${WRKSRC}/lp_solve ; ${SH} -x ccc
- cd ${WRKSRC}/demo ; ${SH} -x ccc
- cd ${WRKSRC}/lpsolve55 ; ${SH} -x ccc
+ cd ${WRKSRC}/lp_solve ; ${BUILDENV} ${SH} -x ccc
+ cd ${WRKSRC}/demo ; ${BUILDENV} ${SH} -x ccc
+ cd ${WRKSRC}/lpsolve55 ; ${BUILDENV} ${SH} -x ccc
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/lp_solve/bin/${LPSOLVE_ARCH}/lp_solve ${PREFIX}/bin
diff --git a/math/lp_solve/files/patch-respect-TMPDIR b/math/lp_solve/files/patch-respect-TMPDIR
new file mode 100644
index 000000000000..0b59af5f4208
--- /dev/null
+++ b/math/lp_solve/files/patch-respect-TMPDIR
@@ -0,0 +1,98 @@
+--- lp_solve/ccc.orig 2009-01-25 21:39:03.000000000 +0300
++++ lp_solve/ccc 2011-02-04 10:52:07.000000000 +0300
+@@ -2,31 +2,33 @@
+ src='../lp_MDO.c ../shared/commonlib.c ../colamd/colamd.c ../shared/mmio.c ../shared/myblas.c ../ini.c ../fortify.c ../lp_rlp.c ../lp_crash.c ../bfp/bfp_LUSOL/lp_LUSOL.c ../bfp/bfp_LUSOL/LUSOL/lusol.c ../lp_Hash.c ../lp_lib.c ../lp_wlp.c ../lp_matrix.c ../lp_mipbb.c ../lp_MPS.c ../lp_params.c ../lp_presolve.c ../lp_price.c ../lp_pricePSE.c ../lp_report.c ../lp_scale.c ../lp_simplex.c lp_solve.c ../lp_SOS.c ../lp_utils.c ../yacc_read.c'
+ c=cc
+
++tmp="${TMPDIR:-/tmp}"
++
+ #determine platform (32/64 bit)
+->/tmp/platform.c
+-echo '#include <stdlib.h>'>>/tmp/platform.c
+-echo '#include <stdio.h>'>>/tmp/platform.c
+-echo 'main(){printf("ux%d", (int) (sizeof(void *)*8));}'>>/tmp/platform.c
+-$c /tmp/platform.c -o /tmp/platform
+-PLATFORM=`/tmp/platform`
+-rm /tmp/platform /tmp/platform.c >/dev/null 2>&1
++>"${tmp}"/platform.c
++echo '#include <stdlib.h>'>>"${tmp}"/platform.c
++echo '#include <stdio.h>'>>"${tmp}"/platform.c
++echo 'main(){printf("ux%d", (int) (sizeof(void *)*8));}'>>"${tmp}"/platform.c
++$c "${tmp}"/platform.c -o "${tmp}"/platform
++PLATFORM=`"${tmp}"/platform`
++rm "${tmp}"/platform "${tmp}"/platform.c >/dev/null 2>&1
+
+ mkdir bin bin/$PLATFORM >/dev/null 2>&1
+
+ math=-lm
+
+ #check if this system has the isnan function
+->/tmp/isnan.c
+-echo '#include <stdio.h>'>>/tmp/isnan.c
+-echo '#include <stdlib.h>'>>/tmp/isnan.c
+-echo '#include <math.h>'>>/tmp/isnan.c
+-echo 'main(){isnan(0);}'>>/tmp/isnan.c
+-$c /tmp/isnan.c -o /tmp/isnan $math >/dev/null 2>&1
++>"${tmp}"/isnan.c
++echo '#include <stdio.h>'>>"${tmp}"/isnan.c
++echo '#include <stdlib.h>'>>"${tmp}"/isnan.c
++echo '#include <math.h>'>>"${tmp}"/isnan.c
++echo 'main(){isnan(0);}'>>"${tmp}"/isnan.c
++$c "${tmp}"/isnan.c -o "${tmp}"/isnan $math >/dev/null 2>&1
+ if [ $? = 0 ]
+ then NOISNAN=
+ else NOISNAN=-DNOISNAN
+ fi
+-rm /tmp/isnan.c /tmp/isnan >/dev/null 2>&1
++rm "${tmp}"/isnan.c "${tmp}"/isnan >/dev/null 2>&1
+
+ opts='-O3'
+
+--- lpsolve55/ccc.bak 2009-03-25 03:27:18.000000000 +0300
++++ lpsolve55/ccc 2011-02-04 11:00:40.000000000 +0300
+@@ -2,29 +2,31 @@
+ src='../lp_MDO.c ../shared/commonlib.c ../shared/mmio.c ../shared/myblas.c ../ini.c ../fortify.c ../colamd/colamd.c ../lp_rlp.c ../lp_crash.c ../bfp/bfp_LUSOL/lp_LUSOL.c ../bfp/bfp_LUSOL/LUSOL/lusol.c ../lp_Hash.c ../lp_lib.c ../lp_wlp.c ../lp_matrix.c ../lp_mipbb.c ../lp_MPS.c ../lp_params.c ../lp_presolve.c ../lp_price.c ../lp_pricePSE.c ../lp_report.c ../lp_scale.c ../lp_simplex.c ../lp_SOS.c ../lp_utils.c ../yacc_read.c'
+ c=cc
+
++tmp="${TMPDIR:-/tmp}"
++
+ #determine platform (32/64 bit)
+->/tmp/platform.c
+-echo '#include <stdlib.h>'>>/tmp/platform.c
+-echo '#include <stdio.h>'>>/tmp/platform.c
+-echo 'main(){printf("ux%d", (int) (sizeof(void *)*8));}'>>/tmp/platform.c
+-$c /tmp/platform.c -o /tmp/platform
+-PLATFORM=`/tmp/platform`
+-rm /tmp/platform /tmp/platform.c >/dev/null 2>&1
++>"${tmp}"/platform.c
++echo '#include <stdlib.h>'>>"${tmp}"/platform.c
++echo '#include <stdio.h>'>>"${tmp}"/platform.c
++echo 'main(){printf("ux%d", (int) (sizeof(void *)*8));}'>>"${tmp}"/platform.c
++$c "${tmp}"/platform.c -o "${tmp}"/platform
++PLATFORM=`"${tmp}"/platform`
++rm "${tmp}"/platform "${tmp}"/platform.c >/dev/null 2>&1
+
+ mkdir bin bin/$PLATFORM >/dev/null 2>&1
+
+ #check if this system has the isnan function
+->/tmp/isnan.c
+-echo '#include <stdio.h>'>>/tmp/isnan.c
+-echo '#include <stdlib.h>'>>/tmp/isnan.c
+-echo '#include <math.h>'>>/tmp/isnan.c
+-echo 'main(){isnan(0);}'>>/tmp/isnan.c
+-$c /tmp/isnan.c -o /tmp/isnan $math >/dev/null 2>&1
++>"${tmp}"/isnan.c
++echo '#include <stdio.h>'>>"${tmp}"/isnan.c
++echo '#include <stdlib.h>'>>"${tmp}"/isnan.c
++echo '#include <math.h>'>>"${tmp}"/isnan.c
++echo 'main(){isnan(0);}'>>"${tmp}"/isnan.c
++$c "${tmp}"/isnan.c -o "${tmp}"/isnan $math >/dev/null 2>&1
+ if [ $? = 0 ]
+ then NOISNAN=
+ else NOISNAN=-DNOISNAN
+ fi
+-rm /tmp/isnan.c /tmp/isnan >/dev/null 2>&1
++rm "${tmp}"/isnan.c "${tmp}"/isnan >/dev/null 2>&1
+
+ def=
+ so=