summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2023-02-03 03:21:57 +0000
committerSam James <sam@gentoo.org>2023-02-03 04:17:19 +0000
commit014467d7cc4b8096fbb189c6d2a97a5e5710c50b (patch)
tree2e34d159010330c6d2ea84cbbca4171f9552590c
parentRevert "sci-mathematics/lpsolve: add 5.5.2.11" (diff)
downloadgentoo-014467d7cc4b8096fbb189c6d2a97a5e5710c50b.tar.gz
gentoo-014467d7cc4b8096fbb189c6d2a97a5e5710c50b.tar.bz2
gentoo-014467d7cc4b8096fbb189c6d2a97a5e5710c50b.zip
sci-mathematics/lpsolve: add 5.5.2.11
Note that this is -r1 because of e00dce2f8eabd06e24eabd8f4d940d6dcec1ebc2. Closes: https://bugs.gentoo.org/614866 Signed-off-by: Sam James <sam@gentoo.org>
-rw-r--r--sci-mathematics/lpsolve/Manifest1
-rw-r--r--sci-mathematics/lpsolve/files/lpsolve-5.5.2.11-misc.patch335
-rw-r--r--sci-mathematics/lpsolve/lpsolve-5.5.2.11-r1.ebuild44
3 files changed, 380 insertions, 0 deletions
diff --git a/sci-mathematics/lpsolve/Manifest b/sci-mathematics/lpsolve/Manifest
index bcfa5f4d8fe8..7b249e4dc266 100644
--- a/sci-mathematics/lpsolve/Manifest
+++ b/sci-mathematics/lpsolve/Manifest
@@ -1 +1,2 @@
+DIST lp_solve_5.5.2.11_source.tar.gz 556506 BLAKE2B 4c5b53ddadc9db2cbfb78fee141505ced17719f6bd7c780720c6960cc902165c7c3cffbadd048ad5d61ba3951fd65fd6ac08b8d1874dd57c7ac41a168bccd260 SHA512 24f5a14d0c77a71e1ab3f46e08ea3f85f2f116ae2d3d2c54acddc5fb138251ba258240284060827e1b8b7ef15d580acecc242329ec775802fe5e8028407499bc
DIST lpsolve-5.5.2.0.tar.xz 737000 BLAKE2B 912690a7e4ed5fd5d475f322f5c168554fb3d47281545f42d2383ccbe72b3cb0036f72878c94899889972e266e9cf6ad73e59ac1e822deae753ae5b31a00c9b8 SHA512 341bff74dccf805cfd3aa4ee844a51f3c46ce875e88b1bf079a6ff0074f7cbd27420ec9c6a66a2530098a85c967457214543895651f4c570b956324a51bb9fe6
diff --git a/sci-mathematics/lpsolve/files/lpsolve-5.5.2.11-misc.patch b/sci-mathematics/lpsolve/files/lpsolve-5.5.2.11-misc.patch
new file mode 100644
index 000000000000..b4e1f91f72f4
--- /dev/null
+++ b/sci-mathematics/lpsolve/files/lpsolve-5.5.2.11-misc.patch
@@ -0,0 +1,335 @@
+--- a/bfp/bfp_LUSOL/ccc
++++ b/bfp/bfp_LUSOL/ccc
+@@ -1,13 +1,13 @@
+ :
+ src='../../shared/commonlib.c ../../colamd/colamd.c lp_LUSOL.c ../../lp_utils.c ../../shared/myblas.c LUSOL/lusol.c'
+
+-c=cc
++c=${CC:-cc}
+
+ #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
++echo 'int 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
+--- a/bfp/bfp_LUSOL/ccc.osx
++++ b/bfp/bfp_LUSOL/ccc.osx
+@@ -1,13 +1,13 @@
+ :
+ src='../../shared/commonlib.c ../../colamd/colamd.c lp_LUSOL.c ../../lp_utils.c ../../shared/myblas.c LUSOL/lusol.c'
+
+-c=cc
++c=${CC:-cc}
+
+ #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("osx%d", (int) (sizeof(void *)*8));}'>>/tmp/platform.c
++echo 'int main(){printf("osx%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
+--- a/demo/ccc
++++ b/demo/ccc
+@@ -1,6 +1,5 @@
+ src='../lp_MDO.c ../shared/commonlib.c ../colamd/colamd.c ../shared/mmio.c ../shared/myblas.c ../ini.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
+-
++c=${CC:-cc}
+ math=-lm
+
+ def=
+--- a/demo/ccc.osx
++++ b/demo/ccc.osx
+@@ -1,5 +1,5 @@
+ src='../bfp/lp_MDO.c ../commonlib.c ../myblas.c ../colamd/colamd.c ../ini.c ../fortify.c ../lp_rlp.c ../lp_crash.c ../bfp/bfp_etaPFI/lp_etaPFI.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 demo.c ../lp_SOS.c ../lp_utils.c ../yacc_read.c'
+-c=cc
++c=${CC:-cc}
+
+ math=-lm
+
+--- a/lp_solve/ccc
++++ b/lp_solve/ccc
+@@ -1,6 +1,6 @@
+ :
+ 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
++c=${CC:-cc}
+
+ MYTMP=`mktemp -d "${TMPDIR:-/tmp}"/lp_solve_XXXXXX`
+
+@@ -8,7 +8,7 @@ MYTMP=`mktemp -d "${TMPDIR:-/tmp}"/lp_solve_XXXXXX`
+ >"$MYTMP"/platform.c
+ echo '#include <stdlib.h>'>>"$MYTMP"/platform.c
+ echo '#include <stdio.h>'>>"$MYTMP"/platform.c
+-echo 'main(){printf("ux%d", (int) (sizeof(void *)*8));}'>>"$MYTMP"/platform.c
++echo 'int main(){printf("ux%d", (int) (sizeof(void *)*8));}'>>"$MYTMP"/platform.c
+ $c "$MYTMP"/platform.c -o "$MYTMP"/platform
+ PLATFORM=`"$MYTMP"/platform`
+ rm "$MYTMP"/platform "$MYTMP"/platform.c >/dev/null 2>&1
+@@ -22,7 +22,7 @@ math=-lm
+ echo '#include <stdio.h>'>>"$MYTMP"/isnan.c
+ echo '#include <stdlib.h>'>>"$MYTMP"/isnan.c
+ echo '#include <math.h>'>>"$MYTMP"/isnan.c
+-echo 'main(){isnan(0.0);return 0;}'>>"$MYTMP"/isnan.c
++echo 'int main(){isnan(0.0);return 0;}'>>"$MYTMP"/isnan.c
+ $c "$MYTMP"/isnan.c -o "$MYTMP"/isnan $math >/dev/null 2>&1
+ if [ $? = 0 ]
+ then NOISNAN=
+@@ -42,4 +42,4 @@ then opts='-O0'
+ else dl=-ldl
+ fi
+
+-$c -I.. -I../bfp -I../bfp/bfp_LUSOL -I../bfp/bfp_LUSOL/LUSOL -I../colamd -I../shared $opts $def $NOISNAN -DYY_NEVER_INTERACTIVE -DPARSER_LP -DINVERSE_ACTIVE=INVERSE_LUSOL -DRoleIsExternalInvEngine $src -o bin/$PLATFORM/lp_solve $math $dl
++$c $CFLAGS $LDFLAGS -I.. -I../bfp -I../bfp/bfp_LUSOL -I../bfp/bfp_LUSOL/LUSOL -I../colamd -I../shared $opts $def $NOISNAN -DYY_NEVER_INTERACTIVE -DPARSER_LP -DINVERSE_ACTIVE=INVERSE_LUSOL -DRoleIsExternalInvEngine $src -o bin/$PLATFORM/lp_solve $math $dl
+--- a/lp_solve/ccc.osx
++++ b/lp_solve/ccc.osx
+@@ -1,6 +1,6 @@
+ :
+ 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
++c=${CC:-cc}
+
+ MYTMP=`mktemp -d "${TMPDIR:-/tmp}"/lp_solve_XXXXXX`
+
+@@ -8,7 +8,7 @@ MYTMP=`mktemp -d "${TMPDIR:-/tmp}"/lp_solve_XXXXXX`
+ >"$MYTMP"/platform.c
+ echo '#include <stdlib.h>'>>"$MYTMP"/platform.c
+ echo '#include <stdio.h>'>>"$MYTMP"/platform.c
+-echo 'main(){printf("osx%d", (int) (sizeof(void *)*8));}'>>"$MYTMP"/platform.c
++echo 'int main(){printf("osx%d", (int) (sizeof(void *)*8));}'>>"$MYTMP"/platform.c
+ $c "$MYTMP"/platform.c -o "$MYTMP"/platform
+ PLATFORM=`"$MYTMP"/platform`
+ rm "$MYTMP"/platform "$MYTMP"/platform.c >/dev/null 2>&1
+@@ -22,7 +22,7 @@ math=-lm
+ echo '#include <stdio.h>'>>"$MYTMP"/isnan.c
+ echo '#include <stdlib.h>'>>"$MYTMP"/isnan.c
+ echo '#include <math.h>'>>"$MYTMP"/isnan.c
+-echo 'main(){isnan(0.0);return 0;}'>>"$MYTMP"/isnan.c
++echo 'int main(){isnan(0.0);return 0;}'>>"$MYTMP"/isnan.c
+ $c "$MYTMP"/isnan.c -o "$MYTMP"/isnan $math >/dev/null 2>&1
+ if [ $? = 0 ]
+ then NOISNAN=
+@@ -37,4 +37,4 @@ dl=-ldl
+
+ opts='-idirafter /usr/include/sys -O3 -DINTEGERTIME -Wno-long-double'
+
+-$c -I.. -I../bfp -I../bfp/bfp_LUSOL -I../bfp/bfp_LUSOL/LUSOL -I../colamd -I../shared $opts $def $NOISNAN -DYY_NEVER_INTERACTIVE -DPARSER_LP -DINVERSE_ACTIVE=INVERSE_LUSOL -DRoleIsExternalInvEngine $src -o bin/$PLATFORM/lp_solve $math $dl
++$c $CFLAGS $LDFLAGS -I.. -I../bfp -I../bfp/bfp_LUSOL -I../bfp/bfp_LUSOL/LUSOL -I../colamd -I../shared $opts $def $NOISNAN -DYY_NEVER_INTERACTIVE -DPARSER_LP -DINVERSE_ACTIVE=INVERSE_LUSOL -DRoleIsExternalInvEngine $src -o bin/$PLATFORM/lp_solve $math $dl
+--- a/lpsolve55/ccc
++++ b/lpsolve55/ccc
+@@ -1,6 +1,6 @@
+ :
+ 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
++c=${CC:-cc}
+
+ MYTMP=`mktemp -d "${TMPDIR:-/tmp}"/lp_solve_XXXXXX`
+
+@@ -8,7 +8,7 @@ MYTMP=`mktemp -d "${TMPDIR:-/tmp}"/lp_solve_XXXXXX`
+ >"$MYTMP"/platform.c
+ echo '#include <stdlib.h>'>>"$MYTMP"/platform.c
+ echo '#include <stdio.h>'>>"$MYTMP"/platform.c
+-echo 'main(){printf("ux%d", (int) (sizeof(void *)*8));}'>>"$MYTMP"/platform.c
++echo 'int main(){printf("ux%d", (int) (sizeof(void *)*8));}'>>"$MYTMP"/platform.c
+ $c "$MYTMP"/platform.c -o "$MYTMP"/platform
+ PLATFORM=`"$MYTMP"/platform`
+ rm "$MYTMP"/platform "$MYTMP"/platform.c >/dev/null 2>&1
+@@ -20,7 +20,7 @@ mkdir bin bin/$PLATFORM >/dev/null 2>&1
+ echo '#include <stdio.h>'>>"$MYTMP"/isnan.c
+ echo '#include <stdlib.h>'>>"$MYTMP"/isnan.c
+ echo '#include <math.h>'>>"$MYTMP"/isnan.c
+-echo 'main(){isnan(0.0);return 0;}'>>"$MYTMP"/isnan.c
++echo 'int main(){isnan(0.0);return 0;}'>>"$MYTMP"/isnan.c
+ $c "$MYTMP"/isnan.c -o "$MYTMP"/isnan $math >/dev/null 2>&1
+ if [ $? = 0 ]
+ then NOISNAN=
+@@ -42,13 +42,13 @@ fi
+ opts='-O3'
+
+ $c -s -c -I.. -I../shared -I../bfp -I../bfp/bfp_LUSOL -I../bfp/bfp_LUSOL/LUSOL -I../colamd $opts $def $NOISNAN -DYY_NEVER_INTERACTIVE -DPARSER_LP -DINVERSE_ACTIVE=INVERSE_LUSOL -DRoleIsExternalInvEngine $src
+-ar rv bin/$PLATFORM/liblpsolve55.a `echo $src|sed s/[.]c/.o/g|sed 's/[^ ]*\///g'`
+-ranlib bin/$PLATFORM/liblpsolve55.a
++${AR:-ar} rv bin/$PLATFORM/liblpsolve55.a `echo $src|sed s/[.]c/.o/g|sed 's/[^ ]*\///g'`
++${RANLIB:-ranlib} bin/$PLATFORM/liblpsolve55.a
+
+ if [ "$so" != "" ]
+ then
+- $c -fpic -s -c -I.. -I../shared -I../bfp -I../bfp/bfp_LUSOL -I../bfp/bfp_LUSOL/LUSOL -I../colamd -I. $opts $NOISNAN -DYY_NEVER_INTERACTIVE -DPARSER_LP -DINVERSE_ACTIVE=INVERSE_LUSOL -DRoleIsExternalInvEngine $src
+- $c -shared -Wl,-Bsymbolic -Wl,-soname,liblpsolve55.so -o bin/$PLATFORM/liblpsolve55.so `echo $src|sed s/[.]c/.o/g|sed 's/[^ ]*\///g'` -lc -lm -ldl
++ $c $CFLAGS $LDFLAGS -fpic -c -I.. -I../shared -I../bfp -I../bfp/bfp_LUSOL -I../bfp/bfp_LUSOL/LUSOL -I../colamd -I. $opts $NOISNAN -DYY_NEVER_INTERACTIVE -DPARSER_LP -DINVERSE_ACTIVE=INVERSE_LUSOL -DRoleIsExternalInvEngine $src
++ $c $CFLAGS $LDFLAGS -shared -Wl,-Bsymbolic -Wl,-soname,liblpsolve55.so -o bin/$PLATFORM/liblpsolve55.so `echo $src|sed s/[.]c/.o/g|sed 's/[^ ]*\///g'` -lc -lm -ldl
+ fi
+
+ rm *.o 2>/dev/null
+--- a/lpsolve55/ccc.aix
++++ b/lpsolve55/ccc.aix
+@@ -4,14 +4,14 @@ src='../lp_MDO.c ../shared/commonlib.c ../shared/mmio.c ../shared/myblas.c ../in
+ type xlc >/dev/null 2>&1
+ if [ $? = 0 ]
+ then c=xlc
+-else c=cc
++else c=${CC:-cc}
+ fi
+
+ #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
++echo 'int 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
+@@ -23,7 +23,7 @@ mkdir bin bin/$PLATFORM >/dev/null 2>&1
+ 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.0);return 0;}'>>/tmp/isnan.c
++echo 'int main(){isnan(0.0);return 0;}'>>/tmp/isnan.c
+ $c /tmp/isnan.c -o /tmp/isnan $math >/dev/null 2>&1
+ if [ $? = 0 ]
+ then NOISNAN=
+@@ -38,8 +38,8 @@ so=y
+ opts='-O2'
+
+ $c -s -c -I.. -I../shared -I../bfp -I../bfp/bfp_LUSOL -I../bfp/bfp_LUSOL/LUSOL -I../colamd $opts $def $NOISNAN -DYY_NEVER_INTERACTIVE -DPARSER_LP -DINVERSE_ACTIVE=INVERSE_LUSOL -DRoleIsExternalInvEngine $src
+-ar rv bin/$PLATFORM/liblpsolve55.a `echo $src|sed s/[.]c/.o/g|sed 's/[^ ]*\///g'`
+-ranlib bin/$PLATFORM/liblpsolve55.a
++${AR:-ar} rv bin/$PLATFORM/liblpsolve55.a `echo $src|sed s/[.]c/.o/g|sed 's/[^ ]*\///g'`
++${RANLIB:-ranlib} bin/$PLATFORM/liblpsolve55.a
+
+ if [ "$so" != "" ]
+ then
+--- a/lpsolve55/ccc.hp-ux
++++ b/lpsolve55/ccc.hp-ux
+@@ -1,12 +1,12 @@
+ :
+ 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
++c=${CC:-cc}
+
+ #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
++echo 'int 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
+@@ -18,7 +18,7 @@ mkdir bin bin/$PLATFORM >/dev/null 2>&1
+ 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.0);return 0;}'>>/tmp/isnan.c
++echo 'int main(){isnan(0.0);return 0;}'>>/tmp/isnan.c
+ $c /tmp/isnan.c -o /tmp/isnan $math >/dev/null 2>&1
+ if [ $? = 0 ]
+ then NOISNAN=
+@@ -33,8 +33,8 @@ so=y
+ opts='-O3'
+
+ $c -s -c -I.. -I../shared -I../bfp -I../bfp/bfp_LUSOL -I../bfp/bfp_LUSOL/LUSOL -I../colamd $opts $def $NOISNAN -DYY_NEVER_INTERACTIVE -DPARSER_LP -DINVERSE_ACTIVE=INVERSE_LUSOL -DRoleIsExternalInvEngine $src
+-ar rv bin/$PLATFORM/liblpsolve55.a `echo $src|sed s/[.]c/.o/g|sed 's/[^ ]*\///g'`
+-ranlib bin/$PLATFORM/liblpsolve55.a
++${AR:-ar} rv bin/$PLATFORM/liblpsolve55.a `echo $src|sed s/[.]c/.o/g|sed 's/[^ ]*\///g'`
++${RANLIB:-ranlib} bin/$PLATFORM/liblpsolve55.a
+
+ if [ "$so" != "" ]
+ then
+--- a/lpsolve55/ccc.osx
++++ b/lpsolve55/ccc.osx
+@@ -1,6 +1,6 @@
+ :
+ 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
++c=${CC:-cc}
+
+ MYTMP=`mktemp -d "${TMPDIR:-/tmp}"/lp_solve_XXXXXX`
+
+@@ -8,7 +8,7 @@ MYTMP=`mktemp -d "${TMPDIR:-/tmp}"/lp_solve_XXXXXX`
+ >"$MYTMP"/platform.c
+ echo '#include <stdlib.h>'>>"$MYTMP"/platform.c
+ echo '#include <stdio.h>'>>"$MYTMP"/platform.c
+-echo 'main(){printf("osx%d", (int) (sizeof(void *)*8));}'>>"$MYTMP"/platform.c
++echo 'int main(){printf("osx%d", (int) (sizeof(void *)*8));}'>>"$MYTMP"/platform.c
+ $c "$MYTMP"/platform.c -o "$MYTMP"/platform
+ PLATFORM=`"$MYTMP"/platform`
+ rm "$MYTMP"/platform "$MYTMP"/platform.c >/dev/null 2>&1
+@@ -20,7 +20,7 @@ mkdir bin bin/$PLATFORM >/dev/null 2>&1
+ echo '#include <stdio.h>'>>"$MYTMP"/isnan.c
+ echo '#include <stdlib.h>'>>"$MYTMP"/isnan.c
+ echo '#include <math.h>'>>"$MYTMP"/isnan.c
+-echo 'main(){isnan(0.0);return 0;}'>>"$MYTMP"/isnan.c
++echo 'int main(){isnan(0.0);return 0;}'>>"$MYTMP"/isnan.c
+ $c "$MYTMP"/isnan.c -o "$MYTMP"/isnan $math >/dev/null 2>&1
+ if [ $? = 0 ]
+ then NOISNAN=
+--- a/lpsolve55/ccc.solaris
++++ b/lpsolve55/ccc.solaris
+@@ -1,12 +1,12 @@
+ :
+ 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
++c=${CC:-cc}
+
+ #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
++echo 'int 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
+@@ -18,7 +18,7 @@ mkdir bin bin/$PLATFORM >/dev/null 2>&1
+ 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.0);return 0;}'>>/tmp/isnan.c
++echo 'int main(){isnan(0.0);return 0;}'>>/tmp/isnan.c
+ $c /tmp/isnan.c -o /tmp/isnan $math >/dev/null 2>&1
+ if [ $? = 0 ]
+ then NOISNAN=
+@@ -33,8 +33,8 @@ so=y
+ opts='-O3'
+
+ $c -s -c -I.. -I../shared -I../bfp -I../bfp/bfp_LUSOL -I../bfp/bfp_LUSOL/LUSOL -I../colamd $opts $def $NOISNAN -DYY_NEVER_INTERACTIVE -DPARSER_LP -DINVERSE_ACTIVE=INVERSE_LUSOL -DRoleIsExternalInvEngine $src
+-ar rv bin/$PLATFORM/liblpsolve55.a `echo $src|sed s/[.]c/.o/g|sed 's/[^ ]*\///g'`
+-ranlib bin/$PLATFORM/liblpsolve55.a
++${AR:-ar} rv bin/$PLATFORM/liblpsolve55.a `echo $src|sed s/[.]c/.o/g|sed 's/[^ ]*\///g'`
++${RANLIB:-ranlib} bin/$PLATFORM/liblpsolve55.a
+
+ if [ "$so" != "" ]
+ then
+--- a/lpsolve55/cccLUSOL.osx
++++ b/lpsolve55/cccLUSOL.osx
+@@ -1,11 +1,11 @@
+ 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 ../bfp/bfp_LUSOL/lusol.c'
+-c=cc
++c=${CC:-cc}
+
+ #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
++echo 'int 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
+@@ -17,7 +17,7 @@ mkdir bin bin/$PLATFORM >/dev/null 2>&1
+ 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.0);return 0;}'>>/tmp/isnan.c
++echo 'int main(){isnan(0.0);return 0;}'>>/tmp/isnan.c
+ $c /tmp/isnan.c -o /tmp/isnan $math >/dev/null 2>&1
+ if [ $? = 0 ]
+ then NOISNAN=
diff --git a/sci-mathematics/lpsolve/lpsolve-5.5.2.11-r1.ebuild b/sci-mathematics/lpsolve/lpsolve-5.5.2.11-r1.ebuild
new file mode 100644
index 000000000000..3e8f059ed599
--- /dev/null
+++ b/sci-mathematics/lpsolve/lpsolve-5.5.2.11-r1.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+DESCRIPTION="Mixed Integer Linear Programming (MILP) solver"
+HOMEPAGE="https://sourceforge.net/projects/lpsolve/"
+SRC_URI="mirror://sourceforge/${PN}/lp_solve_${PV}_source.tar.gz"
+S="${WORKDIR}"/lp_solve_$(ver_cut 1-2)
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux"
+
+DEPEND="sci-libs/colamd"
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-5.5.2.11-misc.patch
+)
+
+src_compile() {
+ tc-export AR CC RANLIB LD
+
+ cd lpsolve55 || die
+ sh -x ccc || die
+
+ rm bin/ux*/liblpsolve55.a || die
+
+ cd ../lp_solve || die
+ sh -x ccc || die
+}
+
+src_install() {
+ einstalldocs
+
+ dobin lp_solve/bin/ux*/lp_solve
+ dolib.so lpsolve55/bin/ux*/liblpsolve55.so
+
+ insinto /usr/include/lpsolve
+ doins *.h
+}