freebsd-ports/lang/icc/files/patch-bin::icpc
Alexander Leidinger 80b69054db - update to 8.1.028
- 5.x got the header fix too, don't install replacement headers there [1]
 - allow to override GXX_ROOT [2]

Note: you may see "as: Illegal seek" while compiling with icc (a simple test
didn't revealed the same message with icpc). I don't know the reason for it,
but the resulting executable seems to work, so I commit the update.

Thanks to:	marius [1]
Requested by:	mi [2]
2005-03-06 15:08:26 +00:00

68 lines
1.6 KiB
Text

--- bin/icpc.orig Sun Mar 6 15:46:09 2005
+++ bin/icpc Sun Mar 6 15:48:12 2005
@@ -1,5 +1,17 @@
#!/bin/sh
+ICC_LOCALBASE=%%ICC_LOCALBASE%%
+export ICC_LOCALBASE
+
+GXX_ROOT=${GXX_ROOT:-<INSTALLDIR>/lib}
+export GXX_ROOT
+
+GXX_INCLUDE=${GXX_INCLUDE:-%%GXX_INCLUDE%%}
+if [ ! -z "$GXX_INCLUDE" ]
+then
+ export GXX_INCLUDE
+fi
+
if [ -z "$INTEL_LICENSE_FILE" ]
then
INTEL_LICENSE_FILE="<INSTALLDIR>/licenses";
@@ -24,11 +36,43 @@
fi
export PATH;
-export -n IA32ROOT; unset IA32ROOT;
-
if [ $# != 0 ]
then
- exec -a "<INSTALLDIR>/bin/icpc" <INSTALLDIR>/bin/icpcbin "$@";
+ i=0
+ argc=$#
+ while [ $i -lt $argc ] ; do
+ val1=$1
+ shift
+ val2=${val1#"-openmp"}
+ if [ ${#val1} -gt ${#val2} ] ; then
+ echo "Sorry, option '$val1' is not supported on FreeBSD."
+ exit 1
+ fi
+ val2=${val1#"-par"}
+ if [ ${#val1} -gt ${#val2} ] ; then
+ echo "Sorry, option '$val1' is not supported on FreeBSD."
+ exit 1
+ fi
+ if [ "${val1}" = "-cxxlib-icc" ] ; then
+ set -- "$@" "-I${ICC_LOCALBASE}/include/stlport"
+ set -- "$@" "-Qoption,ld,-CPLUSPLUS"
+ fi
+ if [ "${val1}" = "-Kpic" ] || [ "${val1}" = "-KPIC" ] || \
+ [ "${val1}" = "-fpic" ] || [ "${val1}" = "-fPIC" ] ; then
+ set -- "$@" "-Qoption,ld,-PIC"
+ fi
+ if [ "${val1}" = "-mt" ] ; then
+ unset val1
+ set -- "$@" "-Qoption,ld,-MT"
+ fi
+ if [ "${val1}" = "-pipe" ] ; then
+ unset val1
+ set -- "$@"
+ fi
+ set -- "$@" "$val1"
+ i=$(($i+1))
+ done
+ exec <INSTALLDIR>/bin/icpcbin "$@";
else
- exec -a "<INSTALLDIR>/bin/icpc" <INSTALLDIR>/bin/icpcbin;
+ exec <INSTALLDIR>/bin/icpcbin;
fi