aboutsummaryrefslogtreecommitdiffstats
path: root/lang/icc7
diff options
context:
space:
mode:
authornetchild <netchild@FreeBSD.org>2002-05-14 21:15:20 +0800
committernetchild <netchild@FreeBSD.org>2002-05-14 21:15:20 +0800
commit3b14bc527c0b26466221b4f59420bd0b7f1ab516 (patch)
tree7eae0ae66ac87398f6613d1d0e8a01d1d3c04cb4 /lang/icc7
parent1a9d5d29208a6a7764171e78aba2fe485deee969 (diff)
downloadfreebsd-ports-gnome-3b14bc527c0b26466221b4f59420bd0b7f1ab516.tar.gz
freebsd-ports-gnome-3b14bc527c0b26466221b4f59420bd0b7f1ab516.tar.zst
freebsd-ports-gnome-3b14bc527c0b26466221b4f59420bd0b7f1ab516.zip
1) Document some steps in the targets of the Makefile.
2) icc is now able to link native binaries, at least a simple test case (a little bit more than a "Hello World!") runs fine. Our native ld is used here, so don't expect "-ipo" to work. Major parts of 2) are Submitted by: Dan Nelson <dnelson@allantgroup.com>
Diffstat (limited to 'lang/icc7')
-rw-r--r--lang/icc7/Makefile19
-rw-r--r--lang/icc7/pkg-plist3
2 files changed, 19 insertions, 3 deletions
diff --git a/lang/icc7/Makefile b/lang/icc7/Makefile
index c817d3a6f85d..c7d6117a8d95 100644
--- a/lang/icc7/Makefile
+++ b/lang/icc7/Makefile
@@ -7,6 +7,7 @@
PORTNAME= icc
PORTVERSION= 6.0.139
+PORTREVISION= 1
CATEGORIES= lang linux
MASTER_SITES= http://www.intel.com/software/products/compilers/
DISTNAME= l_cc_p_6.0.139
@@ -48,18 +49,22 @@ post-extract:
.endfor
pre-patch:
+# Allow everyone to use it
@${CHMOD} a+rx ${WRKSRC}/opt
+# Remove unneded/unsafe access rights
.for i in docs ia32/include ia32/lib
@${FIND} ${WRKSRC}/opt/intel/compiler60/${i} -type f -print0 | \
xargs -0 ${CHMOD} a-x,g-w
.endfor
@${FIND} ${WRKSRC}/opt -type d -print0 | xargs -0 ${CHMOD} go-w
+# Use the Linux ABI for the binaries
.for i in INTEL iccbin iccfilt icid icpcbin icpi lmgrd.intel lmutil mcpcom \
profmerge proforder xiar xild
@brandelf -t Linux ${WRKSRC}/opt/intel/compiler60/ia32/bin/${i}
.endfor
post-patch:
+# Correct some paths and patch some files
.for i in ia32/bin/icc ia32/bin/icc.cfg ia32/bin/iccvars.csh \
ia32/bin/iccvars.sh ia32/bin/icpc ia32/bin/icpc.cfg
@${SED} 's@export -n IA32ROOT; unset IA32ROOT;@@g; s@-a "<INSTALLDIR>/compiler60/ia32/bin/icc" @@g; s@-a "<INSTALLDIR>/compiler60/ia32/bin/icpc" @@g; s@\<INSTALLDIR\>@${PREFIX}/intel@g; s@-tp p6@@; s@man -w@manpath -q@g' \
@@ -69,21 +74,29 @@ post-patch:
${WRKSRC}/opt/intel/compiler60/${i}
@${CHMOD} 755 ${WRKSRC}/opt/intel/compiler60/${i}
.endfor
+# Remove unneeded files
@${RM} ${WRKSRC}/opt/intel/compiler60/ia32/include/yvals.h.orig
.if defined(NOPORTDOCS)
@${RM} -rf ${WRKSRC}/opt/intel/compiler60/docs
.endif
+# Provide a more FreeBSD'ish compile environment
@${ECHO} -e "\n-Ulinux\n-U__linux__\n-U__linux\n\n-D__FreeBSD__=${ICCCFGVAL}\n-D__ELF__=1\n" >>${WRKSRC}/opt/intel/compiler60/ia32/bin/icc.cfg
# \n-Qlocation,ld,/usr/bin\n\n-sox-\n
+# Some magic to be able to link
+ @${SED} 's:@@PREFIX@@:${PREFIX}:g' ${FILESDIR}/ld >${WRKSRC}/opt/intel/compiler60/ia32/bin/ld
+ @${CHMOD} 755 ${WRKSRC}/opt/intel/compiler60/ia32/bin/ld
+ @${MKDIR} ${WRKSRC}/opt/intel/compiler60/ia32/bin/real
+# Do not use the linux ld if it exists
+ @${LN} -s /usr/bin/ld ${WRKSRC}/opt/intel/compiler60/ia32/bin/real
do-install:
- @cd ${WRKSRC}/opt && ${TAR} -chf - . | \
+ @cd ${WRKSRC}/opt && ${TAR} -cf - . | \
${TAR} -xf - -C ${PREFIX}
post-install:
@${ECHO_CMD} "${PKGNAME} is now installed in ${PREFIX}/intel, to use it you have to"
@${ECHO_CMD} "put your license into your \$${INTEL_FLEXLM_LICENSE} (default:"
- @${ECHO_CMD} "${PREFIX}/intel/licenses) directory and add ${PREFIX}/intel/compiler60/ia32/bin"
- @${ECHO_CMD} "to your PATH."
+ @${ECHO_CMD} "${PREFIX}/intel/licenses) directory and add"
+ @${ECHO_CMD} "${PREFIX}/intel/compiler60/ia32/bin to your PATH."
.include <bsd.port.post.mk>
diff --git a/lang/icc7/pkg-plist b/lang/icc7/pkg-plist
index 96b2d1ee7379..24a47b5f3807 100644
--- a/lang/icc7/pkg-plist
+++ b/lang/icc7/pkg-plist
@@ -677,6 +677,8 @@
%%PORTDOCS%%intel/compiler60/docs/ref/webhelp4.js
%%PORTDOCS%%@dirrm intel/compiler60/docs/ref
%%PORTDOCS%%@dirrm intel/compiler60/docs
+intel/compiler60/ia32/bin/real/ld
+@dirrm intel/compiler60/ia32/bin/real
intel/compiler60/ia32/bin/Errormatch.txt
intel/compiler60/ia32/bin/INTEL
intel/compiler60/ia32/bin/icc
@@ -690,6 +692,7 @@ intel/compiler60/ia32/bin/icpc
intel/compiler60/ia32/bin/icpc.cfg
intel/compiler60/ia32/bin/icpcbin
intel/compiler60/ia32/bin/icpi
+intel/compiler60/ia32/bin/ld
intel/compiler60/ia32/bin/lmgrd.intel
intel/compiler60/ia32/bin/lmutil
intel/compiler60/ia32/bin/mcpcom