head	1.99;
access;
symbols
	RELEASE_8_3_0:1.98
	RELEASE_9_0_0:1.97
	RELEASE_7_4_0:1.97
	RELEASE_8_2_0:1.97
	RELEASE_6_EOL:1.97
	RELEASE_8_1_0:1.97
	RELEASE_7_3_0:1.97
	RELEASE_8_0_0:1.97
	RELEASE_7_2_0:1.97
	RELEASE_7_1_0:1.96
	RELEASE_6_4_0:1.96
	RELEASE_5_EOL:1.96
	RELEASE_7_0_0:1.96
	RELEASE_6_3_0:1.96
	PRE_XORG_7:1.94
	RELEASE_4_EOL:1.94
	RELEASE_6_2_0:1.93
	RELEASE_6_1_0:1.88
	RELEASE_5_5_0:1.88
	RELEASE_6_0_0:1.84
	RELEASE_5_4_0:1.81
	RELEASE_4_11_0:1.76
	RELEASE_5_3_0:1.72
	RELEASE_4_10_0:1.66
	RELEASE_5_2_1:1.53
	RELEASE_5_2_0:1.53
	RELEASE_4_9_0:1.44
	RELEASE_5_1_0:1.35
	RELEASE_4_8_0:1.29
	RELEASE_5_0_0:1.23
	RELEASE_4_7_0:1.20
	RELEASE_4_6_2:1.7
	RELEASE_4_6_1:1.7
	RELEASE_4_6_0:1.7
	RELEASE_5_0_DP1:1.2;
locks; strict;
comment	@# @;


1.99
date	2012.11.17.05.58.51;	author svnexp;	state Exp;
branches;
next	1.98;

1.98
date	2012.02.18.03.32.35;	author eadler;	state Exp;
branches;
next	1.97;

1.97
date	2009.01.05.20.36.30;	author pav;	state Exp;
branches;
next	1.96;

1.96
date	2007.10.03.23.22.02;	author edwin;	state Exp;
branches;
next	1.95;

1.95
date	2007.08.04.11.40.58;	author gabor;	state Exp;
branches;
next	1.94;

1.94
date	2006.12.17.15.14.27;	author netchild;	state Exp;
branches;
next	1.93;

1.93
date	2006.09.03.17.30.12;	author kris;	state Exp;
branches;
next	1.92;

1.92
date	2006.08.04.12.34.44;	author erwin;	state Exp;
branches;
next	1.91;

1.91
date	2006.06.21.12.51.00;	author kib;	state Exp;
branches;
next	1.90;

1.90
date	2006.06.21.12.28.56;	author kib;	state Exp;
branches;
next	1.89;

1.89
date	2006.05.09.20.52.14;	author edwin;	state Exp;
branches;
next	1.88;

1.88
date	2006.02.11.23.55.41;	author netchild;	state Exp;
branches;
next	1.87;

1.87
date	2005.10.16.14.58.00;	author netchild;	state Exp;
branches;
next	1.86;

1.86
date	2005.10.12.18.49.23;	author netchild;	state Exp;
branches;
next	1.85;

1.85
date	2005.09.18.10.46.57;	author netchild;	state Exp;
branches;
next	1.84;

1.84
date	2005.06.17.22.59.18;	author netchild;	state Exp;
branches;
next	1.83;

1.83
date	2005.06.04.16.25.50;	author netchild;	state Exp;
branches;
next	1.82;

1.82
date	2005.04.30.10.42.42;	author netchild;	state Exp;
branches;
next	1.81;

1.81
date	2005.03.06.15.08.25;	author netchild;	state Exp;
branches;
next	1.80;

1.80
date	2005.03.01.21.51.39;	author trevor;	state Exp;
branches;
next	1.79;

1.79
date	2005.02.19.13.51.40;	author marius;	state Exp;
branches;
next	1.78;

1.78
date	2005.02.18.21.21.49;	author netchild;	state Exp;
branches;
next	1.77;

1.77
date	2005.02.13.10.20.59;	author netchild;	state Exp;
branches;
next	1.76;

1.76
date	2004.12.31.18.23.59;	author netchild;	state Exp;
branches;
next	1.75;

1.75
date	2004.12.12.17.12.26;	author netchild;	state Exp;
branches;
next	1.74;

1.74
date	2004.11.16.20.14.46;	author marius;	state Exp;
branches;
next	1.73;

1.73
date	2004.11.02.23.27.26;	author marius;	state Exp;
branches;
next	1.72;

1.72
date	2004.07.24.11.16.50;	author netchild;	state Exp;
branches;
next	1.71;

1.71
date	2004.06.29.16.13.11;	author netchild;	state Exp;
branches;
next	1.70;

1.70
date	2004.06.03.11.19.01;	author netchild;	state Exp;
branches;
next	1.69;

1.69
date	2004.06.02.17.04.54;	author netchild;	state Exp;
branches;
next	1.68;

1.68
date	2004.05.07.11.54.55;	author netchild;	state Exp;
branches;
next	1.67;

1.67
date	2004.04.30.11.34.23;	author netchild;	state Exp;
branches;
next	1.66;

1.66
date	2004.03.27.13.22.42;	author netchild;	state Exp;
branches;
next	1.65;

1.65
date	2004.03.17.13.59.51;	author netchild;	state Exp;
branches;
next	1.64;

1.64
date	2004.03.13.10.33.18;	author netchild;	state Exp;
branches;
next	1.63;

1.63
date	2004.02.26.13.21.46;	author netchild;	state Exp;
branches;
next	1.62;

1.62
date	2004.02.01.13.37.13;	author netchild;	state Exp;
branches;
next	1.61;

1.61
date	2004.01.30.12.41.19;	author netchild;	state Exp;
branches;
next	1.60;

1.60
date	2004.01.22.12.18.34;	author trevor;	state Exp;
branches;
next	1.59;

1.59
date	2004.01.19.14.13.31;	author netchild;	state Exp;
branches;
next	1.58;

1.58
date	2004.01.11.15.32.06;	author netchild;	state Exp;
branches;
next	1.57;

1.57
date	2003.12.22.15.03.22;	author netchild;	state Exp;
branches;
next	1.56;

1.56
date	2003.12.13.13.11.20;	author netchild;	state Exp;
branches;
next	1.55;

1.55
date	2003.12.12.13.43.04;	author netchild;	state Exp;
branches;
next	1.54;

1.54
date	2003.12.08.13.29.42;	author netchild;	state Exp;
branches;
next	1.53;

1.53
date	2003.11.14.12.23.12;	author netchild;	state Exp;
branches;
next	1.52;

1.52
date	2003.11.14.12.09.17;	author netchild;	state Exp;
branches;
next	1.51;

1.51
date	2003.11.13.13.30.38;	author trevor;	state Exp;
branches;
next	1.50;

1.50
date	2003.11.10.21.32.11;	author netchild;	state Exp;
branches;
next	1.49;

1.49
date	2003.10.22.13.21.30;	author netchild;	state Exp;
branches;
next	1.48;

1.48
date	2003.10.21.11.10.23;	author netchild;	state Exp;
branches;
next	1.47;

1.47
date	2003.10.11.10.59.45;	author netchild;	state Exp;
branches;
next	1.46;

1.46
date	2003.10.03.12.12.06;	author netchild;	state Exp;
branches;
next	1.45;

1.45
date	2003.09.24.12.53.09;	author netchild;	state Exp;
branches;
next	1.44;

1.44
date	2003.09.06.10.09.19;	author netchild;	state Exp;
branches;
next	1.43;

1.43
date	2003.08.22.11.20.38;	author netchild;	state Exp;
branches;
next	1.42;

1.42
date	2003.08.21.14.55.42;	author netchild;	state Exp;
branches;
next	1.41;

1.41
date	2003.08.15.13.00.08;	author netchild;	state Exp;
branches;
next	1.40;

1.40
date	2003.07.11.15.48.05;	author netchild;	state Exp;
branches;
next	1.39;

1.39
date	2003.06.26.13.11.41;	author netchild;	state Exp;
branches;
next	1.38;

1.38
date	2003.06.15.17.57.26;	author netchild;	state Exp;
branches;
next	1.37;

1.37
date	2003.06.12.10.52.08;	author netchild;	state Exp;
branches;
next	1.36;

1.36
date	2003.06.04.18.37.07;	author netchild;	state Exp;
branches;
next	1.35;

1.35
date	2003.05.06.15.52.01;	author netchild;	state Exp;
branches;
next	1.34;

1.34
date	2003.04.26.10.27.29;	author netchild;	state Exp;
branches;
next	1.33;

1.33
date	2003.04.24.15.08.34;	author netchild;	state Exp;
branches;
next	1.32;

1.32
date	2003.04.18.09.10.22;	author netchild;	state Exp;
branches;
next	1.31;

1.31
date	2003.04.02.10.50.37;	author netchild;	state Exp;
branches;
next	1.30;

1.30
date	2003.03.28.10.45.57;	author netchild;	state Exp;
branches;
next	1.29;

1.29
date	2003.03.07.06.05.30;	author ade;	state Exp;
branches;
next	1.28;

1.28
date	2003.03.05.18.55.31;	author netchild;	state Exp;
branches;
next	1.27;

1.27
date	2003.02.15.15.46.17;	author netchild;	state Exp;
branches;
next	1.26;

1.26
date	2003.02.10.14.04.11;	author netchild;	state Exp;
branches;
next	1.25;

1.25
date	2003.01.13.10.39.22;	author netchild;	state Exp;
branches;
next	1.24;

1.24
date	2003.01.11.17.21.41;	author netchild;	state Exp;
branches;
next	1.23;

1.23
date	2002.11.13.14.39.52;	author netchild;	state Exp;
branches;
next	1.22;

1.22
date	2002.11.08.20.17.54;	author netchild;	state Exp;
branches;
next	1.21;

1.21
date	2002.11.08.15.59.38;	author netchild;	state Exp;
branches;
next	1.20;

1.20
date	2002.09.22.13.05.51;	author netchild;	state Exp;
branches;
next	1.19;

1.19
date	2002.09.20.12.58.57;	author netchild;	state Exp;
branches;
next	1.18;

1.18
date	2002.09.20.12.16.24;	author netchild;	state Exp;
branches;
next	1.17;

1.17
date	2002.09.17.12.10.46;	author netchild;	state Exp;
branches;
next	1.16;

1.16
date	2002.08.22.11.31.48;	author netchild;	state Exp;
branches;
next	1.15;

1.15
date	2002.08.20.10.01.58;	author netchild;	state Exp;
branches;
next	1.14;

1.14
date	2002.08.04.20.40.14;	author netchild;	state Exp;
branches;
next	1.13;

1.13
date	2002.07.14.16.31.40;	author netchild;	state Exp;
branches;
next	1.12;

1.12
date	2002.07.13.14.57.15;	author netchild;	state Exp;
branches;
next	1.11;

1.11
date	2002.07.01.17.25.31;	author netchild;	state Exp;
branches;
next	1.10;

1.10
date	2002.06.14.15.54.18;	author knu;	state Exp;
branches;
next	1.9;

1.9
date	2002.06.08.10.16.20;	author netchild;	state Exp;
branches;
next	1.8;

1.8
date	2002.05.28.03.22.32;	author obrien;	state Exp;
branches;
next	1.7;

1.7
date	2002.05.14.13.15.20;	author netchild;	state Exp;
branches;
next	1.6;

1.6
date	2002.05.14.08.25.29;	author netchild;	state Exp;
branches;
next	1.5;

1.5
date	2002.05.13.13.58.21;	author netchild;	state Exp;
branches;
next	1.4;

1.4
date	2002.04.23.16.48.56;	author netchild;	state Exp;
branches;
next	1.3;

1.3
date	2002.04.16.15.03.49;	author netchild;	state Exp;
branches;
next	1.2;

1.2
date	2002.03.31.19.00.05;	author netchild;	state Exp;
branches;
next	1.1;

1.1
date	2002.03.26.17.01.02;	author netchild;	state Exp;
branches;
next	;


desc
@@


1.99
log
@Switch exporter over
@
text
@# New ports collection makefile for:	icc
# Date created:         24.Jan.2002
# Whom:                 netchild@@FreeBSD.org
#
# $FreeBSD: head/lang/icc/Makefile 300896 2012-07-14 13:54:48Z beat $
#

PORTNAME=	icc
PORTVERSION=	8.1.038
PORTREVISION=	1
CATEGORIES=	lang linux devel
MASTER_SITES=
DISTNAME=	l_cc_pc_${PORTVERSION:C/p.+$//}

# netchild@@FreeBSD.org is willing to review patches and to provide background
# infos regarding this port
MAINTAINER=	ports@@FreeBSD.org
COMMENT=	Intels C/C++ compiler, set up to produce native FreeBSD binaries

PATCHLEVEL=	${PORTVERSION:C/(.+p)(.+)$/pe\2/}
DISTFILES=	${DISTNAME}${EXTRACT_SUFX}
.if ${PORTVERSION} != ${PATCHLEVEL}
DISTFILES+=	${DISTNAME}_${PATCHLEVEL}${EXTRACT_SUFX}
PATCH_DEPENDS=		${LINUX_BASE_PORT}
.endif

EXTRACT_DEPENDS=	rpm2cpio.pl:${PORTSDIR}/archivers/rpm2cpio

RESTRICTED=	Intel forbids any redistribution

ONLY_FOR_ARCHS=		i386
CONFLICTS=		linux_devtools*

USE_LINUX=		yes

COMPILERDIR=	intel_cc_80
PLIST_SUB=	COMPILERDIR=${COMPILERDIR}
PATCH_WRKSRC=	${WRKSRC}/opt/${COMPILERDIR}

MAN1=		icc.1
MLINKS=		icc.1 icpc.1
MANPREFIX=	${PREFIX}/${COMPILERDIR}

ICC_SITE=	http://www.intel.com/software/products/compilers/

.include <bsd.port.pre.mk>

EXTRACT_AFTER_ARGS=	| tar -xf - \
			--exclude cdt-\*.zip \
			--exclude eclipse-platform\*.zip \
			--exclude intel-icc_ide\*.rpm \
			--exclude intel-iidb\*.rpm \
			--exclude intel-isubh\*.rpm \
			--exclude sdp-core-\*.zip \
			--exclude \*ia64.rpm \
			--exclude flexlm64

ICCCFGVAL!=	${UNAME} -r | ${SED} -e 's/\..*//'

GCCCOMPATVER=	340
GXXINCLUDE=	/usr/include/c++/${GCCCOMPATVER:C/([0-9])([0-9]).+/\1.\2/}

.for file in ${DISTFILES}
.if !exists(${DISTDIR}/${DIST_SUBDIR}/${file})
IGNORE=	Go to Intel Premier Support \(https://premier.intel.com/\) to obtain ${DISTFILES}. Product updates such as this compiler are posted regularly on Premier Support. You must have a license to obtain access to Premier Support. If you do not already have a license go to ${ICC_SITE} to review licensing options \(evaluation, commercial, and free non-commercial\) and obtain a license. Put ${DISTFILES} into ${DISTDIR} and run make again
.endif
.endfor

.if exists(${LINUXBASE}/boot/kernel.h)
BROKEN=	Cannot coexist with linux_devtools
.endif

post-extract:
	@@cd ${WRKSRC} && rpm2cpio.pl 2>/dev/null *.rpm | ${CPIO} -idu --quiet

intel-patch: extract
# Apply patches from Intel.
.if ${PORTVERSION} != ${PATCHLEVEL}
	@@${BRANDELF} -t Linux ${WRKSRC}_${PATCHLEVEL}/papply
	@@${WRKSRC}_${PATCHLEVEL}/papply ${WRKSRC}_${PATCHLEVEL}/icc.rtp \
		${WRKSRC}/opt/${COMPILERDIR}
.endif

pre-patch: intel-patch
# Remove files we do not neet on FreeBSD.
	@@for i in `${CAT} ${FILESDIR}/exclude`; do \
		${RM} -rf ${WRKSRC}/opt/${COMPILERDIR}/$$i; \
	done
.if defined(NOPORTDOCS)
# Remove docs.
	@@for i in `${CAT} ${FILESDIR}/exclude_noportdocs`; do \
		${RM} -rf ${WRKSRC}/opt/${COMPILERDIR}/$$i; \
	done
.endif
# Allow everyone to use it.
	@@${CHMOD} a+rx ${WRKSRC}/opt
# Remove unneeded/unsafe access rights.
.for i in doc include lib
	@@${FIND} ${WRKSRC}/opt/${COMPILERDIR}/${i} -type f -print0 | \
		${XARGS} -0 ${CHMOD} a-x,og-w
.endfor
	@@${FIND} ${WRKSRC}/opt -type d -print0 | ${XARGS} -0 ${CHMOD} go-w
	@@${CHMOD} a-x ${WRKSRC}/opt/${COMPILERDIR}/bin/Errormatch.txt

post-patch:
# Correct some paths and patch some files
.for i in icc iccvars.csh iccvars.sh icpc
	@@${REINPLACE_CMD} -i "" -e 's:%%ICC_LOCALBASE%%:${LOCALBASE}:g; \
		s:\<INSTALLDIR\>:${PREFIX}/${COMPILERDIR}:g; \
		s:%%GXX_INCLUDE%%:${GXXINCLUDE}:g; \
		s:man -w:manpath -q:g' ${WRKSRC}/opt/${COMPILERDIR}/bin/${i}
	@@${CHMOD} 755 ${WRKSRC}/opt/${COMPILERDIR}/bin/${i}
.endfor
.if ${PORTVERSION} != ${PATCHLEVEL}
	@@${REINPLACE_CMD} -i "" -e \
		's:\<installpackageid\>:${DISTNAME}_${PATCHLEVEL}:g' \
		${WRKSRC}/opt/${COMPILERDIR}/doc/csupport
.else
	@@${REINPLACE_CMD} -i "" -e 's:\<installpackageid\>:${DISTNAME}:g' \
		${WRKSRC}/opt/${COMPILERDIR}/doc/csupport
.endif
	@@${RM} ${WRKSRC}/opt/${COMPILERDIR}/include/*.orig
	@@${RM} ${WRKSRC}/opt/${COMPILERDIR}/include/c++/*.orig
.for i in icc.orig icpc.orig
	@@${RM} ${WRKSRC}/opt/${COMPILERDIR}/bin/${i}
.endfor
# Provide a more FreeBSD'ish compile environment
.for i in icc.cfg icpc.cfg
	@@${ECHO_CMD} -e "-Qlocation,ld,${PREFIX}/${COMPILERDIR}/bin/ldwrapper\n\n-wr1125\n-we140\n\n-Ulinux\n-U__linux__\n-U__linux\n-U__gnu_linux__\n\n-D__FreeBSD__=${ICCCFGVAL}\n\n" >>${WRKSRC}/opt/${COMPILERDIR}/bin/${i}
	@@${ECHO_CMD} -e "-D__wchar_t=__ct_rune_t\n" >>${WRKSRC}/opt/${COMPILERDIR}/bin/${i}
	@@${ECHO_CMD} -e "-restrict\n" >>${WRKSRC}/opt/${COMPILERDIR}/bin/${i}
	@@${CHMOD} a-x,g-w ${WRKSRC}/opt/${COMPILERDIR}/bin/${i}
.endfor
# C++ hack for icpc
	@@${ECHO_CMD} -e "-gcc-version=${GCCCOMPATVER}\n-cxxlib-gcc\n" \
		>>${WRKSRC}/opt/${COMPILERDIR}/bin/icpc.cfg
	@@cd ${WRKSRC}/opt/${COMPILERDIR}/bin/ && ${LN} -s icc.cfg iccbin.cfg \
		&& ${LN} -s icpc.cfg icpcbin.cfg

OBJCOPY_OPS=	--redefine-sym stdin=__stdinp \
		--redefine-sym stdout=__stdoutp \
		--redefine-sym stderr=__stderrp

do-build:
# Use the Linux ABI for the binaries
.for i in codecov iccbin iccfilt icpcbin icpi mcpcom prelink profmerge \
	proforder profrun pronto_tool tselect xiar xild
	@@${BRANDELF} -t Linux ${WRKSRC}/opt/${COMPILERDIR}/bin/${i}
.endfor
# Fix unresolved references
	@@cd ${WRKSRC} && ${CC} ${CFLAGS} -c ${FILESDIR}/assert_fail.c \
		${FILESDIR}/errno_location.c ${FILESDIR}/mcount.S
.for i in libcxa.a libcxaguard.a libimf.a libirc.a libirc_s.a libsvml.a \
	libunwind.a
	@@${OBJCOPY} --redefine-sym __sigsetjmp=sigsetjmp \
		${OBJCOPY_OPS} \
		${WRKSRC}/opt/${COMPILERDIR}/lib/${i}
.endfor
	@@${AR} cr ${WRKSRC}/opt/${COMPILERDIR}/lib/libiccfbsd.a ${WRKSRC}/*.o
# Some magic to be able to link
	@@${MKDIR} ${WRKSRC}/opt/${COMPILERDIR}/bin/ldwrapper
	@@${CC} ${CFLAGS} -o \
		${WRKSRC}/opt/${COMPILERDIR}/bin/ldwrapper/ld \
		${FILESDIR}/ld.c
# We can't use STRIP_CMD, since we need the FreeBSD one, not the Linux one.
	@@/usr/bin/strip ${WRKSRC}/opt/${COMPILERDIR}/bin/ldwrapper/ld
	@@${CHMOD} 755 ${WRKSRC}/opt/${COMPILERDIR}/bin/ldwrapper/ld
# Make ICC happy with regards to crtbegin.o, crtend.o and libgcc.a which it
# expects to find in GXX_ROOT.
.for file in crtbegin.o crtend.o libgcc.a
	@@cd ${WRKSRC}/opt/${COMPILERDIR}/lib && ${LN} -s /usr/lib/${file} ${file}
.endfor
# The static linking case expects a crtbeginT.o. Based upon inspection of
# /usr/src/contrib/gnu/crtstuff.c it seems it's the same as crtbegin.o.
	@@cd ${WRKSRC}/opt/${COMPILERDIR}/lib && ${LN} -s crtbegin.o crtbeginT.o

do-install:
	@@cd ${WRKSRC}/opt && ${FIND} . -print | \
		${CPIO} -pdu -R ${BINOWN}:${BINGRP} --quiet ${PREFIX}

post-install:
	@@${ECHO} "${PKGNAME} is now installed in ${PREFIX}/${COMPILERDIR}, to use it you have to put your license into your \$${INTEL_FLEXLM_LICENSE} (default: ${PREFIX}/${COMPILERDIR}/licenses) directory and add ${PREFIX}/${COMPILERDIR}/bin to your PATH." | fmt
	@@${ECHO}
	@@${ECHO} "On FreeBSD 5 with __FreeBSD_version >= 502108 icpc is set up to use the GNU libstdc++ from the base as STL by default." | fmt
	@@${ECHO}
	@@${ECHO} "If you use icc on a Pentium 4 you may have to use 'options CPU_ENABLE_SSE' (depending on the OS version, if in doubt try if it works) in your kernel config (have a look at http://www.FreeBSD.org/handbook/ if you do not know how to do this), else icc will hang forever or crashes with an 'Illegal instruction'." | fmt
	@@${ECHO}
	@@${ECHO} "WARNING: If you use icc while having linux_devtools installed, icc will use the wrong includes and therefore will generate bogus (not working) binaries!" | fmt
	@@${ECHO}
	@@${ECHO} "If you encounter further problems with icc please consult the errata at http://support.intel.com/support/performancetools/c/C_Compiler_Errata.htm first." | fmt
	@@${ECHO}
	@@${ECHO} "Call for benchmarks:"
	@@${ECHO} "Intel is interested to see some benchmark numbers which compare gcc with icc. If you have a CPU produced by Intel and are able to do benchmarks with either your own source or with one of our major ports (e.g. with a webserver, a mailserver, a database system, an important graphics suite/program or some important math tool, ...) please try to spend some time to do a benchmark and send me (${MAINTAINER}) the result. You should include your system specs (CPU: speed/model, RAM: amount/speed, used disks (if necessary), chipset/mainboard type, ...), the version of the used software (OS, gcc, icc, ...), non default tuning options (kernel, sysctl) and the used compiler switches. If you don't use some 'standard' benchmark (e.g. the official MySQL benchmark, or the performance test suite of your prefered scripting language), please include a description about the benchmark too." | fmt
	@@${ECHO}
	@@${ECHO} "Please use FreeBSD as the name of your OS in communications with the support, the larger the FreeBSD userbase is, the more work gets done on FreeBSD specific issues by Intel. And please thank them for the FreeBSD support, they are already spending some time to improve icc on FreeBSD." | fmt
	@@${ECHO}
	@@${ECHO} "To read the entire post install message again, just run 'make post-install | less'." | fmt

.include <bsd.port.post.mk>
@


1.98
log
@Remove quotes from BROKEN and IGNORE as they are not required
@
text
@d5 1
a5 1
# $FreeBSD$
@


1.97
log
@- Remove conditional checks for FreeBSD 5.x and older
@
text
@d65 1
a65 1
IGNORE=	"Go to Intel Premier Support \(https://premier.intel.com/\) to obtain ${DISTFILES}. Product updates such as this compiler are posted regularly on Premier Support. You must have a license to obtain access to Premier Support. If you do not already have a license go to ${ICC_SITE} to review licensing options \(evaluation, commercial, and free non-commercial\) and obtain a license. Put ${DISTFILES} into ${DISTDIR} and run make again"
@


1.96
log
@Remove support for OSVERSION < 5
@
text
@a59 14
.if ( ${OSVERSION} < 502108 )
PLIST_SUB+=	MACHINE__TYPES_H="@@comment " STDARG_H="" SYS_CDEFS_H="" \
		STDBOOL_H=""
.else
PLIST_SUB+=	STDARG_H="@@comment " SYS_CDEFS_H="@@comment "
.if ( ${OSVERSION} < 503103 || ( ${OSVERSION} >= 600000 && ${OSVERSION} < 600013 ) )
PLIST_SUB+=	MACHINE__TYPES_H="" STDBOOL_H=""
.else
PLIST_SUB+=	MACHINE__TYPES_H="@@comment " STDBOOL_H="@@comment "
.endif
.if ${OSVERSION} < 502126
GCCCOMPATVER=	330
.endif
.if ${OSVERSION} >= 502126
a60 1
.endif
a61 1
.endif
a129 1
.if ( ${OSVERSION} >= 500039 )
a130 2
.endif
.if ( ${OSVERSION} >= 502108 )
a131 3
.else
	@@${ECHO_CMD} -e "-no-gcc\n" >>${WRKSRC}/opt/${COMPILERDIR}/bin/${i}
.endif
a134 1
.if ( ${OSVERSION} >= 502108 )
a136 4
.else
	@@${ECHO_CMD} -e "\n-I${PREFIX}/include/stlport\n-Qoption,ld,-CPLUSPLUS\n" \
		>>${WRKSRC}/opt/${COMPILERDIR}/bin/icpc.cfg
.endif
a138 17
.if ( ${OSVERSION} < 502108 )
# Hack while there's no support for ICC in the stdarg.h and sys/cdefs.h.
	@@${CP} ${FILESDIR}/stdarg.h ${WRKSRC}/opt/${COMPILERDIR}/include
	@@${MKDIR} ${WRKSRC}/opt/${COMPILERDIR}/include/sys
	@@${CP} ${FILESDIR}/cdefs.h ${WRKSRC}/opt/${COMPILERDIR}/include/sys
.endif
.if ( ( ${OSVERSION} >= 502108 && ${OSVERSION} < 503103 ) || ( ${OSVERSION} >= 600000 && ${OSVERSION} < 600013 ) )
# Work around bug for ICC support in src/sys/i386/include/_types.h.
	@@${MKDIR} ${WRKSRC}/opt/${COMPILERDIR}/include/machine
	@@${CP} ${FILESDIR}/_types.h ${WRKSRC}/opt/${COMPILERDIR}/include/machine
.endif
.if ( ${OSVERSION} < 503103 || ( ${OSVERSION} >= 600000 && ${OSVERSION} < 600013 ) )
# Work around a bug in stdbool.h
	@@${SED} -e 's:__STDC_VERSION__ < 199901L.*:__STDC_VERSION__ < 199901L \&\& defined(__GNUC__) \&\& __GNUC__ < 3 \&\& !defined(__INTEL_COMPILER):g' \
		</usr/include/stdbool.h \
		>${WRKSRC}/opt/${COMPILERDIR}/include/stdbool.h
.endif
a139 1
.if ( ${OSVERSION} >= 500042 )
a142 1
.endif
a152 8
.if ( ${OSVERSION} < 502101 )
	@@cd ${WRKSRC} && ${CC} ${CFLAGS} -c ${FILESDIR}/cxa_atexit.c
.endif
.if ( ${OSVERSION} < 500042 )
	@@${CC} ${CFLAGS} -c -o ${WRKSRC}/stdin.o ${FILESDIR}/stdin.c
	@@${CC} ${CFLAGS} -c -o ${WRKSRC}/stdout.o ${FILESDIR}/stdout.c
	@@${CC} ${CFLAGS} -c -o ${WRKSRC}/stderr.o ${FILESDIR}/stderr.c
.endif
@


1.95
log
@- Remove the DESTDIR modifications from individual ports as we have a new,
  fully chrooted DESTDIR, which does not need such any more.

Sponsored by:	Google Summer of Code 2007
Approved by:	portmgr (pav)
@
text
@d184 1
a184 2
.if ( ${OSVERSION} >= 470101 && ${OSVERSION} < 500000 ) || \
	( ${OSVERSION} >= 500042 )
d202 1
a202 2
.if ( ${OSVERSION} < 470101 ) || \
	( ${OSVERSION} >= 500000 && ${OSVERSION} < 500042 )
@


1.94
log
@- remove trailing slash in a variable to not have two of them in the plist [1]
- remove comment about stldport-icc [2]
- give up maintainership, I don't have time for it ATM
  ! interested parties should get in contact with me, I got some patches
  ! for icc v9, can provide insight into why some things are done like
  ! they are and maybe some contacts at Intel are still able to provide
  ! some help

PR:		105569 [1]
Noticed by:	Tsurutani Naoki <turutani@@scphys.kyoto-u.ac.jp> [1]
PR:		106707 [2]
Submitted by:	vd [2]
@
text
@d42 1
a42 1
MANPREFIX=	${TARGETDIR}/${COMPILERDIR}
@


1.93
log
@NO_PACKAGE and NO_CDROM are superfluous here
@
text
@d10 1
d15 3
a17 1
MAINTAINER=	netchild@@FreeBSD.org
d42 1
a42 1
MANPREFIX=	${TARGETDIR}/${COMPILERDIR}/
d240 1
a240 1
	@@${ECHO} "On FreeBSD 5 with __FreeBSD_version >= 502108 icpc is set up to use the GNU libstdc++ from the base as STL by default. Alternatively you can use the \"-cxxlib-icc\" option with icpc to use devel/stlport-icc as STL instead. In order to be able to compile C++ source with icpc on FreeBSD 4 or FreeBSD 5 with __FreeBSD_version < 502108 you have to install devel/stlport-icc. No further options to icpc to use devel/stlport-icc are required there." | fmt
@


1.92
log
@Add support for DESTDIR part I.

This commit should largele be a NOOP as it only adds support
for DESTDIR undefined. This does allow us to start testing
ports with DESTDIR set, but this is as of yet not supported.

Although this has been extensively tested on pointyhat, this
is a very intrusive change and some cases may have been
overlooked. Please contact Gabor and me if you find any.

PR:             100555
Submitted by:   gabor
Sponsored by:   Google Summer of Code 2006
@
text
@a26 2
NO_PACKAGE=	${RESTRICTED}
NO_CDROM=	${RESTRICTED}
@


1.91
log
@Forced commit: correct PR number for previous commit is 99198.

Pointy hat to:	kib
Approved by:	kan (mentor)
@
text
@d41 1
a41 1
MANPREFIX=	${PREFIX}/${COMPILERDIR}/
@


1.90
log
@Update to 8.1.038.

PR:	91998
Approved by:	netchild (maintainer)
Approved by:	kan (mentor)
@
text
@@


1.89
log
@Remove USE_REINPLACE from the categories starting with L
@
text
@d9 1
a9 1
PORTVERSION=	8.1.036
@


1.88
log
@Update to 8.1.036.
@
text
@a33 1
USE_REINPLACE=		yes
@


1.87
log
@Update to 8.1.035.
@
text
@d9 1
a9 1
PORTVERSION=	8.1.035
d81 1
a81 1
IGNORE=	"Go to Intel Premier Support, https://premier.intel.com, to obtain ${DISTFILES}. Product updates such as this compiler are posted regularly on Premier Support. You must have a license to obtain access to Premier Support. If you do not already have a license go to ${ICC_SITE} to review licensing options \(evaluation, commercial, and free non-commercial\) and obtain a license. Put ${DISTFILES} into ${DISTDIR} and run make again"
@


1.86
log
@Update to 8.1.034.

PR:		87325 (contains the same update as I did too)
@
text
@d9 1
a9 1
PORTVERSION=	8.1.034
@


1.85
log
@Update to 8.1.033.
@
text
@d9 1
a9 1
PORTVERSION=	8.1.033
@


1.84
log
@Mega-patch to cleanup the ports infrastructure regarding our linux bits:
  - USE_LINUX now implies NO_FILTER_SHLIBS=yes. It also doesn't use FreeBSD
    tools to strip binaries anymore, so it's not neccesary anymore to override
    STRIP and STRIP_CMD.
  - USE_LINUX_PREFIX implies NO_MTREE now.
  - In the USE_LINUX case, USE_XLIB now depends upon the linux X11 libraries
    instead upon the native FreeBSD libraries.
  - The variable LINUX_BASE_PORT contains a string which is suitable as an
    item in *_DEPENDS, so if a port BATCH_DEPENDS or FETCH_DEPENDS upon the
    default (or overriden) linux base, ${LINUX_BASE_PORT} should be used
    instead of a hardcoded reference.
  - Change all ports to comply to the "new world order".
  - The Ports Collection now allows to override the default linux_base port.
    Specify e.g. OVERRIDE_LINUX_BASE_PORT=rh-9 in /etc/make.conf to use
    ${PORTSDIR}/emulators/linux_base-rh-9 (the logic is to use
    ${PORTSDIR}/emulators/linux_base-${OVERRIDE_LINUX_BASE_PORT}).
  - If USE_LINUX or OVERRIDE_LINUX_BASE doesn't point to an existing linux_base
    port and if USE_LINUX isn't set to "yes" (case insensitive), the port will
    be marked as IGNORE. [1]
  - Readd USE_LINUX knobs into several ports and make several uses of a
    conditional dependency ("USE_LINUX?=") into an unconditional one
    ("USE_LINUX=") which where removed/changed by Trevor to allow the use of
    alternative linux_base ports. While this is a nice goal, the implementation
    resulted in missing dependencies. The OVERRIDE_LINUX_BASE_PORT knob
    in this commit is supposed to fix the problem while keeping the feature.
    Basicaly this includes a backout of Trevor's commit, to prevent confusion
    I mention it here explicitely.
  - Use the correct prefix (X11- instead of LOCAL- or LINUX-) for some ports.
    Chase dependencies for this.
  - Changes to make linux_devtools installable on amd64, remove some stray
    device nodes (they don't work on recent OS versions and aren't really
    needed).
  - Make linux_base-8 PREFIX clean and remove some stray device nodes.
    Additionally tell a little bit more about how to setup NIS/YP [2].
  - Update the PGSQL dependency in the linux-opengroupware port to a recent
    version (the old one isn't available anymore), I don't know if this
    works (at least it isn't more broken than before).
  - Use PREFIX/usr/share/doc instead of PREFIX/usr/doc in the divx4linux
    ports, the former path exists already and gets populated by other
    packages too (PREFIX=LINUXPREFIX!).
  - Fix some obvious (non-linuxolator) bugs in some linux ports while being
    there.
  - Bump PORTREVISION where neccesary.

Requested by:	portmgr (linimon) [1]
Submittted by:	Gerrit Kuehn <gerrit_huehn@@gruft.fido.de [2]
Approved by:	portmgr (kris, linimon), maintainers (or maintainer timeout)
Tested on:	ports cluster (kris)
Reviewed by:	silence on emulation@@
Superseedes PR:	69997

Maintainer approval from:
	chris@@chrisburkert.de
	cracauer@@cons.org
	des
	girgen
	jamie@@bishopston.net
	mezz
	mi
	nivit@@users.sf.net
        pat
	simond@@irrelevant.org
	riggs@@rrr.de
	Udo.Schweigert@@Siemens.com
@
text
@d9 1
a9 1
PORTVERSION=	8.1.032
@


1.83
log
@Update to 8.1.032.
@
text
@d21 1
a21 1
PATCH_DEPENDS=		${LINUXBASE}/lib/libc-2.3.2.so:${PORTSDIR}/emulators/linux_base-8
d33 1
a33 1
USE_LINUX?=		yes
a34 1
NO_FILTER_SHLIBS=	yes
d221 2
a222 1
	@@${STRIP_CMD} ${WRKSRC}/opt/${COMPILERDIR}/bin/ldwrapper/ld
@


1.82
log
@Update to 8.1.030.
@
text
@d9 1
a9 1
PORTVERSION=	8.1.030
@


1.81
log
@ - 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]
@
text
@d9 1
a9 1
PORTVERSION=	8.1.028
@


1.80
log
@Respect the user's USE_LINUX setting.
@
text
@d9 1
a9 2
PORTVERSION=	8.1.026
PORTREVISION=	3
d66 1
a66 1
.if ( ${OSVERSION} < 600013 )
d173 1
a173 1
.if ( ${OSVERSION} >= 502108 && ${OSVERSION} < 600013 )
d178 1
a178 1
.if ( ${OSVERSION} < 600013 )
@


1.79
log
@Account for src/include/stdbool.h and src/sys/i386/include/_types.h have
been fixed in FreeBSD >= 600013 regarding using the GCC-compatibility.

Approved by:	netchild (blanket)
@
text
@d34 1
a34 1
USE_LINUX=		yes
@


1.78
log
@The static linking case (C++ only) expects a crtbeginT.o. Based upon
inspection of src/contrib/gnu/crtstuff.c it seems it's the same as
crtbegin.o, so make a symlink for it. At least linking a "Hello World"
program with -static produces a working executable now.

Noticed by:	Niklas Sorensson <nik@@cs.chalmers.se>
@
text
@d10 1
a10 1
PORTREVISION=	2
d63 2
a64 1
PLIST_SUB+=	MACHINE__TYPES_H="@@comment " STDARG_H="" SYS_CDEFS_H=""
d67 5
a78 1
PLIST_SUB+=	MACHINE__TYPES_H=""
d173 2
a174 1
.else
d179 1
d184 1
@


1.77
log
@Fix a system (all supported OS versions) header (stdbool.h) for the use with
icc.

Hint by:	Ulrich Spoerlein <q@@uni.de>
@
text
@d10 1
a10 1
PORTREVISION=	1
d222 3
@


1.76
log
@Say hello to the linux mega patch, it consolidates our linux bits a
little bit and allows to proceed to a more recent linux_base from
a stable (read as: the major bugs should be ironed out or identified
and most linux ports build just fine) source.

It also allows to ship 4.11 with a working linuxolator (the EOLed
linux_base is marked forbidden because of a security hole).

This is a major update, please read UPDATING (and CHANGES if you
develop linux ports).

Changes:
 - change the default linux_base from v7 to v8
 - add a newer freetype to linux_base-8 for nicer fonts display [1]
 - don't let cpio use hardlinks in the linux_base-8 port to quiet some
   warnings in some cases [2]
 - fix a cut&past error in the linux_base-8 pkg-install script [3]
 - convert the binary knob "USE_LINUX" to a version specifier, e.g.
   USE_LINUX=<value> specifies a dependency upon
   emulators/linux_base-<value>, exceptions are a value of "7" (which
   does what you want and adds a dependency to linux_base) and any
   value without a corresponding port in
   PORTSDIR/emulators/linux_base-<value> (which adds a dependency to
   the default linux_base)
 - don't implicitly add USE_LINUX with the USE_LINUX_PREFIX knob,
   this allows us to use the USE_LINUX_PREFIX knob for linux_base and
   paves the way for splitting up future linux base ports into
   individual pieces
 - remove RESTRICTED from some GPL licensed ports, even when we only
   distribute binaries, we get them from official linux sites, so
   anyone can grab them there if he needs to
 - add a dependency upon the linux X11 bits where necessary (based upon
   guesswork)
 - don't use USE_X_PREFIX in some linux ports since it adds a dependency
   to the FreeBSD X11 libs, as a workaround use PREFIX?= (the clean
   solution would be to remove the implicit USE_XLIB from USE_X_PREFIX)
 - bump the portrevision of the linux ports ("better safe than sorry"
   algorithm)
 - pass maintainership of the important linux infrastructure to a
   mailinglist, hijack freebsd-emulation@@ for this purpose (if somebody
   doesn't like this: tell us your bikeshed color at freebsd-emulation@@,
   my color would be "linuxolator@@" in case someone cares...)
 - add a pkg-install script for linux-fontconfig, but don't use it;
   everything should work without it (the FreeBSD fc-cache program should
   do all the work), but in case we need it we just need to decomment the
   pkg-install part in the Makefile
 - fix some dependencies
 - fix some bugs
 - add some static plists
 - unbreak the ports with dependecies to more than one linux_base

This also fixes some ports which are marked BROKEN because of dependencies
to v7 and v8 of linux_base at the same time.

Known bugs:
 - the linux-mesa and linux-devtools ports install libGL*.so symlinks
 - some "minor" plist bugs (e.g. ld.so.{conf,cache} are modified by
   the linux X11 port, so linx_Base-8 moans at deinstall time)

Future work (interested souls should coordinate with freebsd-emulation@@):
 - add some kind of USE_LINUX_X11 knob to streamline the X11 dependencies,
   or modify the behavior of USE_XLIB in the USE_LINUX case
   AFAIK trevor has some patches.
 - make USE_XLIB and USE_X_PREFIX orthogonal to be able to get rid of
   the PREFIX?= workaround in some linux ports
   Should be discussed/coordinated on/with x11@@.
 - move the RPM bits from x11-toolkits/linux-gtk/Makefile to PORTSDIR/Mk/
 - update to a more recent linux base

PR:			69997, 70539 (and maybe others)
Discussed with/on:	java@@, x11@@, trevor, portmgr
Tested by:		mezz, portmgr, pointyhat
RPM hunted down by:	Joseph Gelinas <scirocco@@tasam.com> [1]
Requested by:		portmgr [2]
Submitted by:		kris [3]
Approved by:		portmgr
@
text
@d10 1
d173 4
d232 1
a232 1
	@@${ECHO} "If you use icc on a Pentium 4 you may have to use 'options CPU_ENABLE_SSE' (depending on the OS version, if in doubt try if it works) in your kernel config (have a look at http://www.FreeBSD.org/handbook/ if you do not know how to do this), else icc will hang forever." | fmt
@


1.75
log
@Update to 8.1.026.
@
text
@a20 1
#PATCH_DEPENDS=		${LINUXBASE}/etc/redhat-release:${PORTSDIR}/emulators/linux_base
d33 1
a33 2
#USE_LINUX=		yes
RUN_DEPENDS=		${LINUXBASE}/lib/libc-2.3.2.so:${PORTSDIR}/emulators/linux_base-8
@


1.74
log
@- Update to 8.1.024.
- Declare a PATCH_DEPENDS on emulators/linux_base-8 only if actually using
  RTPpatch to apply an Intel provided binary patch.
- Turn the GCC-compatibility of ICC on by default for FreeBSD >= 502108;
  except for one bug which is worked around by this port and will be fixed
  in src later FreeBSD gained support for using the GCC-compatibility along
  with the patch to compile the kernel with ICC (but the ICC 8.0 series
  wasn't configurable/hackable enough to actually use it on FreeBSD, which
  resulted into the aforementioned bug).
- On FreeBSD >= 502108 default to using libstdc++ from the base as STL
  instead of STLport unless "-cxxlib-icc" is passed to icpc (made possible
  by turning on the GCC-compatibility and the compatibility to GCC 3.3 and
  3.4 which was added to ICC 8.1). On FreeBSD < 502108 STLport i.e.
  devel/stlport-icc is and will continue to be the only STL available.
  Update the instructions displayed by the post-install target accordingly.
- Put the wrappers for glibc specific symbols and other GNU/Linux compat
  hacks into their own library "libiccfbsd" and teach the ld-wrapper to
  injected this lib instead of adding these things to the Intel libcxa and
  libcxaguard. Beginning with ICC 8.1 non of the Intel libs is "guaranteed"
  to be linked into resulting executable (this is actually a fix in ICC
  as libcxa and libcxaguard are C++ only). This fixes linking against libm
  with icc amongst other things [1].
- Clean the ld-wrapper up a bit. Stop trying to create a perfect world for
  the real ld(1) regarding superfluous linkage options, ICC natively passes
  far to many of them to the linker that we easily could remove them all.
- Change the ld-wrapper to allow for bootstrapping STLport in a bit
  different way that we used to do it, required to make devel/stlport-icc
  build correctly again.
- Use fmt(1) to print the infos displayed by the post-install target so
  the text is formated properly after the included variables are expanded [2].

Todo: - Rework the freaking thread library selection via the PTHREAD_LIBS
        environment variable by the ld-wrapper, this causes really annoying
        problems when compiling ports with ICC. Some functionality analogous
        to the GCC "-pthread" option (which is also known by ICC but is not
        documented and doesn't do the right thing for FreeBSD) would be great.
      - Make devel/stlport-icc build again with ICC 8.1 after devel/stlport
        has been updated to 4.6.2 (PR 73604). Patch for 4.5.3 already done.

Reported by:	Dan Nelson <dnelson@@allantgroup.com> [1]
Courtesy of:	netchild [2]
Approved by:	netchild
@
text
@d9 1
a9 1
PORTVERSION=	8.1.024
d12 1
a12 1
DISTNAME=	l_cc_pu_${PORTVERSION:C/p.+$//}
@


1.73
log
@o Preliminary update to 8.1.022:
  - For changes since the 8.0 series see the installed C++ReleaseNotes.htm
    but note that information given there doesn't necessarily apply to ICC
    on FreeBSD, e.g. -cxxlib-gcc isn't the default on FreeBSD yet and this
    port also doesn't install the Eclipse and CDT IDEs.
  - ICC now unfortunately requires emulators/linux_base-8.
  - Works fine for compiling C source.
  - A 6.0-current GENERIC kernel compiles and boots.
  - The devel/stlport-icc port currently can't link the exception handling
    testsuite with this ICC version (due to relying on a missbehaviour of
    the old ICC versions) and has to be changed in a way that doesn't break
    lang/icc7.
  - Support for using the GCC-compatibility of ICC on FreeBSD and using
    the GNU libstdc++ as the STL with ICC is in the works.

o Like with the system GCC, default to libpthread for the threads library
  on FreeBSD >= 502102.

Approved by:		netchild
In joint forces with:	netchild
@
text
@d9 1
a9 1
PORTVERSION=	8.1.022
d12 1
a12 1
DISTNAME=	l_cc_pc_${PORTVERSION:C/p.+$//}
d21 2
a25 2
#PATCH_DEPENDS=		${LINUXBASE}/etc/redhat-release:${PORTSDIR}/emulators/linux_base
PATCH_DEPENDS=		${LINUXBASE}/lib/libc-2.3.2.so:${PORTSDIR}/emulators/linux_base-8
d64 1
a64 1
PLIST_SUB+=	STDARG_H="" SYS_CDEFS_H=""
d67 8
d124 1
d143 1
a143 1
	@@${ECHO_CMD} -e "-no-gcc\n-Qlocation,ld,${PREFIX}/${COMPILERDIR}/bin/ldwrapper\n\n-wr1125\n-we140\n\n-Ulinux\n-U__linux__\n-U__linux\n-U__gnu_linux__\n\n-D__FreeBSD__=${ICCCFGVAL}\n\n" >>${WRKSRC}/opt/${COMPILERDIR}/bin/${i}
d149 2
d155 4
d161 1
a163 1
# Hack while there's no support for icc in the stdarg.h and sys/cdefs.h.
d165 1
d169 4
d206 1
a206 2
	@@${AR} q ${WRKSRC}/opt/${COMPILERDIR}/lib/libcxa.a ${WRKSRC}/*.o
	@@${AR} q ${WRKSRC}/opt/${COMPILERDIR}/lib/libcxaguard.a ${WRKSRC}/*.o
d225 9
a233 18
	@@${ECHO} "${PKGNAME} is now installed in ${PREFIX}/${COMPILERDIR}, to use it you have to"
	@@${ECHO} "put your license into your \$${INTEL_FLEXLM_LICENSE} (default:"
	@@${ECHO} "${PREFIX}/${COMPILERDIR}/licenses) directory and add"
	@@${ECHO} "${PREFIX}/${COMPILERDIR}/bin to your PATH."
	@@${ECHO}
	@@${ECHO} "In order to be able to compile C++ source with icpc you have to install"
	@@${ECHO} "devel/stlport-icc."
	@@${ECHO}
	@@${ECHO} "If you use icc on a Pentium 4 make sure you have 'options CPU_ENABLE_SSE'"
	@@${ECHO} "in your kernel config (have a look at http://www.FreeBSD.org/handbook/"
	@@${ECHO} "if you do not know how to do this), else icc will hang forever."
	@@${ECHO}
	@@${ECHO} "WARNING: If you use icc while having linux_devtools installed, icc will use"
	@@${ECHO} "the wrong includes and therefore will generate bogus (not working) binaries!"
	@@${ECHO}
	@@${ECHO} "If you encounter further problems with icc please consult the errata at"
	@@${ECHO} "http://support.intel.com/support/performancetools/c/C_Compiler_Errata.htm"
	@@${ECHO} "first."
d236 3
a238 18
	@@${ECHO} "Intel is interested to see some benchmark numbers which compare gcc with icc."
	@@${ECHO} "If you have a CPU produced by Intel and are able to do benchmarks with"
	@@${ECHO} "either your own source or with one of our major ports (e.g. with"
	@@${ECHO} "a webserver, a mailserver, a database system, an important graphics"
	@@${ECHO} "suite/program or some important math tool, ...) please try to spend some time"
	@@${ECHO} "to do a benchmark and send me (${MAINTAINER}) the result. You should"
	@@${ECHO} "include your system specs (CPU: speed/model, RAM: amount/speed, used disks"
	@@${ECHO} "(if necessary), chipset/mainboard type, ...), the version of the used"
	@@${ECHO} "software (OS, gcc, icc, ...), non default tuning options (kernel, sysctl) and"
	@@${ECHO} "the used compiler switches. If you don't use some 'standard' benchmark"
	@@${ECHO} "(e.g. the official MySQL benchmark, or the performance test suite of your"
	@@${ECHO} "prefered scripting language), please include a description about the"
	@@${ECHO} "benchmark too."
	@@${ECHO}
	@@${ECHO} "Please use FreeBSD as the name of your OS in communications with the support,"
	@@${ECHO} "the larger the FreeBSD userbase is, the more work gets done on FreeBSD"
	@@${ECHO} "specific issues by Intel. And please thank them for the FreeBSD support,"
	@@${ECHO} "they are already spending some time to improve icc on FreeBSD."
d240 1
a240 2
	@@${ECHO} "To read the entire post install message again, just run"
	@@${ECHO} "'make post-install | less'."
@


1.72
log
@Update to 8.0.066p070.1.
@
text
@d9 1
a9 1
PORTVERSION=	8.0.066p070.1
d24 2
a25 1
PATCH_DEPENDS=		${LINUXBASE}/etc/redhat-release:${PORTSDIR}/emulators/linux_base
d34 2
a35 1
USE_LINUX=		yes
d52 3
d57 1
d164 2
a165 1
.for i in codecov iccbin iccfilt icpcbin icpi mcpcom profmerge proforder tselect xiar xild
d180 2
a181 1
.for i in libcxa.a libcxaguard.a libimf.a libirc.a libircmt.a libunwind.a
d195 5
@


1.71
log
@Update to 8.0.066p069.1.
@
text
@d9 1
a9 1
PORTVERSION=	8.0.066p069.1
@


1.70
log
@Change the way we handle the version numbering to be more correct
to the way pkg_version handles it.

Submitted by:	eik
@
text
@d9 1
a9 1
PORTVERSION=	8.0.066p067.1
@


1.69
log
@Update to 8.0.066.p067.1.
@
text
@d9 1
a9 1
PORTVERSION=	8.0.066.p067.1
d12 1
a12 1
DISTNAME=	l_cc_pc_${PORTVERSION:C/\.p.+$//}
@


1.68
log
@icc 8.0.066 now adds "-m elf_i386" in some circumstances. Remove this part
of the command line in the ld wrapper.

Noticed by:	Morten Rodal <morten@@rodal.no>
@
text
@d9 1
a9 2
PORTVERSION=	8.0.066
PORTREVISION=	1
@


1.67
log
@Update to 8.0.066.
@
text
@d10 1
@


1.66
log
@Update to 8.0.058.p063.1.
@
text
@d9 1
a9 1
PORTVERSION=	8.0.058.p063.1
@


1.65
log
@Update to 8.0.058.p061.

This version fixes the stlport test cases (heap corruption due to
inlining and exception handling).
@
text
@d9 1
a9 1
PORTVERSION=	8.0.058.p061
@


1.64
log
@- some base system headers know about icc now, don't override them
  where appropriate [1]
- make portlint happy [1]
- sync icc7 and icc [1]
- add linux_base as a patch depends for icc v8

Submitted by:	Marius Strobl <marius@@alchemy.franken.de> [1]
Requested by:	maintainer [1]
@
text
@d9 1
a9 2
PORTVERSION=	8.0.058.p060
PORTREVISION=	1
@


1.63
log
@Update to 8.0.058.p060.
@
text
@d10 1
d25 1
d58 6
d130 1
a130 1
.if ${OSVERSION} >= 500039
d133 3
d144 1
d148 1
d158 1
a158 1
# Use the Linux ABI for the binaries 
@


1.62
log
@icc & icc7:
 - correct the use of ECHO_CMD and ECHO (swap them) [1]

icc:
 - fix the DISTFILE handling, it's automatically available after
   bsd.port.post.mk, not after bsd.port.pre.mk, so set it explicitly
   to be able to use it in the check for the IGNORE message [1]

icc7:
 - don't extract the Intel debugger, it's not usable without a
   threads debugging lib
 - USE_SIZE

Noticed after:			reading the commit log/diff of the
				ifc port [1]
Submitted indirectly by:	maho, hrs [1]
@
text
@d9 1
a9 1
PORTVERSION=	8.0.058.p059
a33 1
USE_SIZE=		yes
@


1.61
log
@- update to 8.0.058.p059
- use SIZE
- remove variables for objcopy and brandelf, they're now available
  from bsd.port.mk
- use a more generic chmod command
@
text
@d18 1
d20 1
a20 2
DISTFILES=	${DISTNAME}${EXTRACT_SUFX} \
		${DISTNAME}_${PATCHLEVEL}${EXTRACT_SUFX}
d122 1
a122 1
	@@${ECHO} -e "-no-gcc\n-Qlocation,ld,${PREFIX}/${COMPILERDIR}/bin/ldwrapper\n\n-wr1125\n-we140\n\n-Ulinux\n-U__linux__\n-U__linux\n-U__gnu_linux__\n\n-D__FreeBSD__=${ICCCFGVAL}\n\n" >>${WRKSRC}/opt/${COMPILERDIR}/bin/${i}
d124 1
a124 1
	@@${ECHO} -e "-D__wchar_t=__ct_rune_t\n" >>${WRKSRC}/opt/${COMPILERDIR}/bin/${i}
d129 1
a129 1
	@@${ECHO} -e "\n-I${PREFIX}/include/stlport\n-Qoption,ld,-CPLUSPLUS\n" \
d182 41
a222 41
	@@${ECHO_CMD} "${PKGNAME} is now installed in ${PREFIX}/${COMPILERDIR}, to use it you have to"
	@@${ECHO_CMD} "put your license into your \$${INTEL_FLEXLM_LICENSE} (default:"
	@@${ECHO_CMD} "${PREFIX}/${COMPILERDIR}/licenses) directory and add"
	@@${ECHO_CMD} "${PREFIX}/${COMPILERDIR}/bin to your PATH."
	@@${ECHO_CMD}
	@@${ECHO_CMD} "In order to be able to compile C++ source with icpc you have to install"
	@@${ECHO_CMD} "devel/stlport-icc."
	@@${ECHO_CMD}
	@@${ECHO_CMD} "If you use icc on a Pentium 4 make sure you have 'options CPU_ENABLE_SSE'"
	@@${ECHO_CMD} "in your kernel config (have a look at http://www.FreeBSD.org/handbook/"
	@@${ECHO_CMD} "if you do not know how to do this), else icc will hang forever."
	@@${ECHO_CMD}
	@@${ECHO_CMD} "WARNING: If you use icc while having linux_devtools installed, icc will use"
	@@${ECHO_CMD} "the wrong includes and therefore will generate bogus (not working) binaries!"
	@@${ECHO_CMD}
	@@${ECHO_CMD} "If you encounter further problems with icc please consult the errata at"
	@@${ECHO_CMD} "http://support.intel.com/support/performancetools/c/C_Compiler_Errata.htm"
	@@${ECHO_CMD} "first."
	@@${ECHO_CMD}
	@@${ECHO_CMD} "Call for benchmarks:"
	@@${ECHO_CMD} "Intel is interested to see some benchmark numbers which compare gcc with icc."
	@@${ECHO_CMD} "If you have a CPU produced by Intel and are able to do benchmarks with"
	@@${ECHO_CMD} "either your own source or with one of our major ports (e.g. with"
	@@${ECHO_CMD} "a webserver, a mailserver, a database system, an important graphics"
	@@${ECHO_CMD} "suite/program or some important math tool, ...) please try to spend some time"
	@@${ECHO_CMD} "to do a benchmark and send me (${MAINTAINER}) the result. You should"
	@@${ECHO_CMD} "include your system specs (CPU: speed/model, RAM: amount/speed, used disks"
	@@${ECHO_CMD} "(if necessary), chipset/mainboard type, ...), the version of the used"
	@@${ECHO_CMD} "software (OS, gcc, icc, ...), non default tuning options (kernel, sysctl) and"
	@@${ECHO_CMD} "the used compiler switches. If you don't use some 'standard' benchmark"
	@@${ECHO_CMD} "(e.g. the official MySQL benchmark, or the performance test suite of your"
	@@${ECHO_CMD} "prefered scripting language), please include a description about the"
	@@${ECHO_CMD} "benchmark too."
	@@${ECHO_CMD}
	@@${ECHO_CMD} "Please use FreeBSD as the name of your OS in communications with the support,"
	@@${ECHO_CMD} "the larger the FreeBSD userbase is, the more work gets done on FreeBSD"
	@@${ECHO_CMD} "specific issues by Intel. And please thank them for the FreeBSD support,"
	@@${ECHO_CMD} "they are already spending some time to improve icc on FreeBSD."
	@@${ECHO_CMD}
	@@${ECHO_CMD} "To read the entire post install message again, just run"
	@@${ECHO_CMD} "'make post-install | less'."
@


1.60
log
@Use the CPIO macro defined in bsd.port.mk.
@
text
@d9 1
a9 1
PORTVERSION=	8.0.058
d34 1
a56 3
BRANDELF?=	/usr/bin/brandelf
OBJCOPY?=	/usr/bin/objcopy

d94 1
a94 1
		${XARGS} -0 ${CHMOD} a-x,g-w
@


1.59
log
@- update to 8.0.058
- add intel-patch target to easy porting effort of future versions [1]
- remove intel debugger rpm, as long as we don't have a libthread_db
  we can't use it [2]

Note: The stlport-icc exception handling test will still fail with this
      version.

Suggested by (sort of):	Marius Strobl <marius@@alchemy.franken.de> [1]
Noticed by:		Marius Strobl <marius@@alchemy.franken.de> [2]
@
text
@a56 1
CPIO?=		/usr/bin/cpio
@


1.58
log
@Update to 8.0.055.p057.

As Intel uses it's own directory for ifc and icc, we don't conflict with
ifc anymore.

Because of ABI changes, you have to recompile C++ programs (don't forget
stlport-icc).

Note that this port is a _work in progress_:
 - Icc allows to use an already installed libstdc++ from gcc, this doesn't
   work yet on FreeBSD. Libstdc++ on 4.x is too old, so it's unlikely we
   can add support for it. The headers of libstdc++ shipping with FreeBSD
   5.2-CURRENT use GCCisms not (yet) supported by icc, the hardcoded search
   path for them also doesn't fit for FreeBSD 5.2-CURRENT.
 - We've incorporated parts (cxa) of the FreeBSD >= 502101 libc on < 502101
   systems. It's tested on 4.x, but not on FreeBSD < 502101.
 - Not all (new) options (including GCC compatibility) are thoroughly
   tested.

When encountering problems please report to me first instead of directly
contacting Intel.

Ackknowledgements:
 - Bradley T Hughes <bhughes@@trolltech.com> for PR 59552, it resulted in
   a modification of our libc (C++ DSO Object Destruction API) we
   incorporate in the port on < 502101 systems.
 - Marius Strobl <marius@@alchemy.franken.de> for his help with the port
   (e.g. ld.c, cxa).
@
text
@d9 1
a9 1
PORTVERSION=	8.0.055.p057
d12 1
a12 1
DISTNAME=	l_cc_p_${PORTVERSION:C/\.p.+$//}
d49 1
d71 1
a71 5
.for i in \
	intel-icc8-8.0-44.i386.rpm \
#	intel-iidb7-7.3.1-85.i386.rpm
	@@cd ${WRKSRC} && rpm2cpio.pl 2>/dev/null ${i} | ${CPIO} -idu --quiet
.endfor
d73 1
a73 1
pre-patch:
d80 2
@


1.57
log
@ - use the libc cxa support on a recent -current instead of the hack
   NOTE: you need to rebuild stlport-icc and maybe some other C++
         programs/libs.
 - rework ld.c to fix the build of stlport-icc on 4.x (first part
   of the build fix, the second part follows shortly in a stlport
   commit) [1]

Submitted by:	Marius Strobl <marius@@alchemy.franken.de> [1]
@
text
@d9 1
a9 2
PORTVERSION=	7.1.034
PORTREVISION=	1
d12 1
a12 2
DISTNAME=	l_cc_pc_${PORTVERSION}
EXTRACT_SUFX=	.tar
d17 6
d30 1
a30 1
CONFLICTS=		linux_devtools* ifc*
a33 1
NO_WRKSUBDIR=		yes
d36 1
a36 1
COMPILERDIR=	compiler70
d38 1
a38 1
PATCH_WRKSRC=	${WRKSRC}/opt/intel/${COMPILERDIR}
d41 2
a42 1
MANPREFIX=	${PREFIX}/intel/${COMPILERDIR}/
d55 1
d59 2
a60 1
.if !exists(${DISTDIR}/${DIST_SUBDIR}/${DISTNAME}${EXTRACT_SUFX})
d63 1
d65 2
a66 4
.if exists(${LINUXBASE}/boot/kernel.h) || \
	exists(${PREFIX}/intel/compiler60/bin/ifc) || \
	exists(${PREFIX}/intel/compiler70/bin/ifc)
BROKEN=	Cannot coexist with linux_devtools or ifc
a69 6
	@@${SED} 's:%%COMPILERDIR%%:${COMPILERDIR}:' ${FILESDIR}/cpio-exclude \
		>${WRKDIR}/cpio-exclude
.if defined(NOPORTDOCS)
	@@${SED} 's:%%COMPILERDIR%%:${COMPILERDIR}:' \
		${FILESDIR}/cpio-exclude_noportdocs >>${WRKDIR}/cpio-exclude
.endif
d71 3
a73 4
	intel-icc7-7.1-37.i386.rpm
#	intel-iidb7-7.2.2-75.i386.rpm
	@@cd ${WRKSRC} && rpm2cpio.pl 2>/dev/null ${i} | \
		${CPIO} -idfuE ${WRKDIR}/cpio-exclude --quiet
d77 17
a93 1
# Allow everyone to use it
d95 3
a97 3
# Remove unneeded/unsafe access rights
.for i in docs ia32/include ia32/lib
	@@${FIND} ${WRKSRC}/opt/intel/${COMPILERDIR}/${i} -type f -print0 | \
d101 1
a101 5
	@@${CHMOD} a-x ${WRKSRC}/opt/intel/${COMPILERDIR}/ia32/bin/Errormatch.txt
# Use the Linux ABI for the binaries
.for i in iccbin iccfilt icid icpcbin icpi mcpcom profmerge proforder xiar xild
	@@brandelf -t Linux ${WRKSRC}/opt/intel/${COMPILERDIR}/ia32/bin/${i}
.endfor
d105 16
a120 8
.for i in ia32/bin/icc ia32/bin/iccvars.csh ia32/bin/iccvars.sh ia32/bin/icpc
	@@${REINPLACE_CMD} -i "" -e 's:@@@@PREFIX@@@@:${PREFIX}:g; s@@\<INSTALLDIR\>@@${PREFIX}/intel@@g; s@@man -w@@manpath -q@@g' \
		${WRKSRC}/opt/intel/${COMPILERDIR}/${i}
	@@${CHMOD} 755 ${WRKSRC}/opt/intel/${COMPILERDIR}/${i}
.endfor
	@@${REINPLACE_CMD} -i "" -e 's:\<INSTALLTIMECOMBOPACKAGEID\>:${DISTNAME}:g' \
		${WRKSRC}/opt/intel/${COMPILERDIR}/docs/csupport
	@@${RM} ${WRKSRC}/opt/intel/${COMPILERDIR}/ia32/include/*.orig
d122 1
a122 1
	@@${RM} ${WRKSRC}/opt/intel/${COMPILERDIR}/ia32/bin/${i}
d126 1
a126 3
	@@${REINPLACE_CMD} -i "" -e 's:-Xlinker -rpath -Xlinker <INSTALLDIR>/${COMPILERDIR}/ia32/lib::g' \
		${WRKSRC}/opt/intel/${COMPILERDIR}/ia32/bin/${i}
	@@${ECHO} -e "-Qlocation,ld,${PREFIX}/intel/${COMPILERDIR}/ia32/bin/ldwrapper\n\n-wr1125\n-we140\n\n-Ulinux\n-U__linux__\n-U__linux\n-U__gnu_linux__\n\n-D__FreeBSD__=${ICCCFGVAL}\n-D__ELF__=1\n" >>${WRKSRC}/opt/intel/${COMPILERDIR}/ia32/bin/${i}
d128 1
a128 1
	@@${ECHO} -e "-D__wchar_t=__ct_rune_t\n" >>${WRKSRC}/opt/intel/${COMPILERDIR}/ia32/bin/${i}
d130 1
a130 1
	@@${CHMOD} a-x,g-w ${WRKSRC}/opt/intel/${COMPILERDIR}/ia32/bin/${i}
d133 8
a140 4
	@@${ECHO} -e "\n-I${PREFIX}/include/stlport\n-Qoption,ld,-CPLUSPLUS\n" >>${WRKSRC}/opt/intel/${COMPILERDIR}/ia32/bin/icpc.cfg
	@@cd ${WRKSRC}/opt/intel/${COMPILERDIR}/ia32/bin/ && ${LN} -s icc.cfg iccbin.cfg && ${LN} -s icpc.cfg icpcbin.cfg
# Hack while there's no support for icc in the stdarg.h of FreeBSD.
	@@${CP} ${FILESDIR}/stdarg.h ${WRKSRC}/opt/intel/${COMPILERDIR}/ia32/include
d150 4
d158 1
a158 2
	@@cd ${WRKSRC} && ${CC} ${CFLAGS} -c ${FILESDIR}/cxa_atexit.c \
		${FILESDIR}/cxa_finalize.c
d166 1
a166 1
.for i in libcxa.a libimf.a libirc.a libircmt.a libunwind.a
d169 1
a169 1
		${WRKSRC}/opt/intel/${COMPILERDIR}/ia32/lib/${i}
d171 2
a172 1
	@@${AR} q ${WRKSRC}/opt/intel/${COMPILERDIR}/ia32/lib/libcxa.a ${WRKSRC}/*.o
d174 1
a174 1
	@@${MKDIR} ${WRKSRC}/opt/intel/${COMPILERDIR}/ia32/bin/ldwrapper
d176 1
a176 1
		${WRKSRC}/opt/intel/${COMPILERDIR}/ia32/bin/ldwrapper/ld \
d178 2
a179 2
	@@${STRIP_CMD} ${WRKSRC}/opt/intel/${COMPILERDIR}/ia32/bin/ldwrapper/ld
	@@${CHMOD} 755 ${WRKSRC}/opt/intel/${COMPILERDIR}/ia32/bin/ldwrapper/ld
d186 1
a186 1
	@@${ECHO_CMD} "${PKGNAME} is now installed in ${PREFIX}/intel, to use it you have to"
d188 2
a189 2
	@@${ECHO_CMD} "${PREFIX}/intel/licenses) directory and add"
	@@${ECHO_CMD} "${PREFIX}/intel/${COMPILERDIR}/ia32/bin to your PATH."
@


1.56
log
@- Update to 7.1.034.
- Modify plist to print a diagnostic instead of a pkg_delete warning
  if there's a license in the license directory.
@
text
@d10 1
a10 1
#PORTREVISION=	1
a131 1
		${FILESDIR}/cxa_atexit.c ${FILESDIR}/cxa_finalize.c \
d133 4
d168 1
a168 2
	@@${ECHO_CMD} "devel/stlport-icc. (It is a good idea to run 'rehash' before or stlport-icc"
	@@${ECHO_CMD} "probably won't find the compiler.)"
@


1.55
log
@s/rpm2cpio/rpm2cpio.pl/ after the recent update of archivers/rpm2cpio (the
script was renamed to solve a conflict with archivers/rpm) to fix possible
build problems.

I've tested this with lang/icc. Any new errors because of this commit in
one of the modified ports may be because the ports previously may have used
rpm2cpio from archivers/rpm instead of the used {EXTRACT,BUILD}_DEPENDS
archivers/rpm2cpio.
@
text
@d9 1
a9 1
PORTVERSION=	7.1.033
d72 2
a73 6
	intel-icc7-7.1-35.i386.rpm
#	intel-iidb7-7.2.2-72.i386.rpm \
#	intel-isubh7-7.1-35.i386.rpm \
#	intel-ecc7-7.1-35.ia64.rpm \
#	intel-eidb7-7.2.2-72.ia64.rpm \
#	intel-esubh7-7.1-35.ia64.rpm
@


1.54
log
@Update to 7.1.033.
@
text
@d19 1
a19 1
EXTRACT_DEPENDS=	rpm2cpio:${PORTSDIR}/archivers/rpm2cpio
d78 1
a78 1
	@@cd ${WRKSRC} && rpm2cpio 2>/dev/null ${i} | \
@


1.53
log
@correct the syntax of the warning -> error options
@
text
@d9 1
a9 1
PORTVERSION=	7.1.032
d72 6
a77 6
	intel-icc7-7.1-32.i386.rpm
#	intel-iidb7-7.2.2-68.i386.rpm \
#	intel-isubh7-7.1-32.i386.rpm \
#	intel-ecc7-7.1-32.ia64.rpm \
#	intel-eidb7-7.2.2-68.ia64.rpm \
#	intel-esubh7-7.1-32.ia64.rpm
@


1.52
log
@- Update to 7.1.032.
- Transform some warnings into errors as suggested by some included
  docs (some kind of MSVC compatibility which isn't reverted in icc
  for linux).

ld.c:
 - add possibility to use a different threads lib via PTHREAD_LIBS
   variable (e.g. PTHREAD_LIBS=-lthr) [1]
   this may be subject to change when gcc learns how to handle our
   different threads libs
 - refactor some code [1][2]
 - remove mailwrapper license, there's no code from mailwrapper
   anymore [2]
 - correct the order of libc and libc_r [1][2]

Submitted by:	mi [1]
Submitted by:	Marius Strobl <marius@@alchemy.franken.de> [2]
Reviewed by:	Marius Strobl <marius@@alchemy.franken.de> [1]
@
text
@d114 1
a114 1
	@@${ECHO} -e "-Qlocation,ld,${PREFIX}/intel/${COMPILERDIR}/ia32/bin/ldwrapper\n\n-Qwr1125\n-Qwe140\n\n-Ulinux\n-U__linux__\n-U__linux\n-U__gnu_linux__\n\n-D__FreeBSD__=${ICCCFGVAL}\n-D__ELF__=1\n" >>${WRKSRC}/opt/intel/${COMPILERDIR}/ia32/bin/${i}
@


1.51
log
@Use the FIND and XARGS macros introduced in bsd.port.mk 1.391.
@
text
@d9 2
a10 2
PORTVERSION=	7.1.031
PORTREVISION=	1
d73 1
a73 1
#	intel-iidb7-7.2.2-65.i386.rpm \
d76 1
a76 1
#	intel-eidb7-7.2.2-65.ia64.rpm \
d114 1
a114 1
	@@${ECHO} -e "-Qlocation,ld,${PREFIX}/intel/${COMPILERDIR}/ia32/bin/ldwrapper\n\n-Ulinux\n-U__linux__\n-U__linux\n-U__gnu_linux__\n\n-D__FreeBSD__=${ICCCFGVAL}\n-D__ELF__=1\n" >>${WRKSRC}/opt/intel/${COMPILERDIR}/ia32/bin/${i}
@


1.50
log
@Add a paragraph about Intels support in the post-install message.
@
text
@d88 1
a88 1
		xargs -0 ${CHMOD} a-x,g-w
d90 1
a90 1
	@@${FIND} ${WRKSRC}/opt -type d -print0 | xargs -0 ${CHMOD} go-w
@


1.49
log
@- Fix icc and icpc scripts (variable overriding) [1]
- Don't extract ia64 RPMs [2]
- Fix bug on some 4.7 systems [3]

Noticed by:	mi [1]
Suggested by:	mi [2]
Tested by:	Clint Olsen <clint@@0lsen.net>
@
text
@d198 5
@


1.48
log
@Update to 7.1.031.
@
text
@d10 1
a10 1
#PORTREVISION=	1
d44 5
d126 7
d143 1
a143 1
.else
d146 1
a146 3
		--redefine-sym stdin=__stdinp \
		--redefine-sym stdout=__stdoutp \
		--redefine-sym stderr=__stderrp \
a148 1
.endif
@


1.47
log
@Reword IGNORE text.

Suggested by:	Intel Corporation
@
text
@d9 1
a9 1
PORTVERSION=	7.1.030
d19 1
a19 1
BUILD_DEPENDS=	rpm2cpio:${PORTSDIR}/archivers/rpm2cpio
d67 6
a72 6
	intel-icc7-7.1-31.i386.rpm
#	intel-iidb7-7.2.2-64.i386.rpm \
#	intel-isubh7-7.1-31.i386.rpm \
#	intel-ecc7-7.1-31.ia64.rpm \
#	intel-eidb7-7.2.2-64.ia64.rpm \
#	intel-esubh7-7.1-31.ia64.rpm
@


1.46
log
@Update to 7.1.030.
@
text
@d50 1
a50 1
IGNORE=	"Please manually download ${DISTFILES} from ${ICC_SITE}, ${ICC_SITE}clin/noncom.htm or https://premier.intel.com/ \(whichever has the file\; to access premier.intel.com you have to register at http://www.intel.com/software/products/registrationcenter/index.htm\; LOOK AT ALL 3 LOCATIONS, not every version is everywhere, but premier.intel.com has always the newest version\). With a little bit of luck it may also be available from ftp://download.intel.com/software/products/compilers/downloads/. Put it into ${DISTDIR} and run make again"
@


1.45
log
@Update to 7.1.029.
@
text
@d9 1
a9 1
PORTVERSION=	7.1.029
d67 6
a72 6
	intel-icc7-7.1-30.i386.rpm
#	intel-iidb7-7.2.2-63.i386.rpm \
#	intel-isubh7-7.1-30.i386.rpm \
#	intel-ecc7-7.1-30.ia64.rpm \
#	intel-eidb7-7.2.2-63.ia64.rpm \
#	intel-esubh7-7.1-30.ia64.rpm
@


1.44
log
@Update to 7.1.028.
@
text
@d9 1
a9 1
PORTVERSION=	7.1.028
d67 6
a72 6
	intel-icc7-7.1-29.i386.rpm
#	intel-iidb7-7.2.2-61.i386.rpm \
#	intel-isubh7-7.1-29.i386.rpm \
#	intel-ecc7-7.1-29.ia64.rpm \
#	intel-eidb7-7.2.2-61.ia64.rpm \
#	intel-esubh7-7.1-29.ia64.rpm
@


1.43
log
@Fix __sigsetjmp linking problem.
@
text
@d9 2
a10 2
PORTVERSION=	7.1.027
PORTREVISION=	1
d67 6
a72 6
	intel-icc7-7.1-28.i386.rpm
#	intel-iidb7-7.2.2-58.i386.rpm \
#	intel-isubh7-7.1-28.i386.rpm \
#	intel-ecc7-7.1-28.ia64.rpm \
#	intel-eidb7-7.2.2-58.ia64.rpm \
#	intel-esubh7-7.1-28.ia64.rpm
@


1.42
log
@- Update to 7.1.027.
- Teach the ld wrapper about /libexec on a recent -current. [1]

Submitted by:	Marius Strobl <marius@@alchemy.franken.de> [1]
@
text
@d10 1
a10 1
#PORTREVISION=	1
d133 2
a134 1
	@@${OBJCOPY} --redefine-sym stdin=__stdinp \
@


1.41
log
@- Update to 7.1.025.
- Fix spelling of CONFLICTS [1].
- Add request for benchmark numbers [2].

Noticed by:	Andreas Schweitzer <Andreas.Schweitzer@@hs.uni-hamburg.de> [1]
Discussed with:	Intel [2]
@
text
@d9 1
a9 1
PORTVERSION=	7.1.025
d67 6
a72 6
	intel-icc7-7.1-26.i386.rpm
#	intel-iidb7-7.2.2-54.i386.rpm \
#	intel-isubh7-7.1-26.i386.rpm \
#	intel-ecc7-7.1-26.ia64.rpm \
#	intel-eidb7-7.2.2-54.ia64.rpm \
#	intel-esubh7-7.1-26.ia64.rpm
@


1.40
log
@Update to 7.1.021.
@
text
@d9 1
a9 1
PORTVERSION=	7.1.021
d26 1
a26 1
CONFLICS=		linux_devtools* ifc*
d67 6
a72 6
	intel-icc7-7.1-22.i386.rpm
#	intel-iidb7-7.1-47.i386.rpm \
#	intel-isubh7-7.1-22.i386.rpm \
#	intel-ecc7-7.1-22.ia64.rpm \
#	intel-eidb7-7.1-47.ia64.rpm \
#	intel-esubh7-7.1-22.ia64.rpm
d172 18
@


1.39
log
@Update to 7.1.019.
@
text
@d9 1
a9 1
PORTVERSION=	7.1.019
d67 6
a72 6
	intel-icc7-7.1-21.i386.rpm
#	intel-iidb7-7.1-42.i386.rpm \
#	intel-isubh7-7.1-21.i386.rpm \
#	intel-ecc7-7.1-21.ia64.rpm \
#	intel-eidb7-7.1-42.ia64.rpm \
#	intel-esubh7-7.1-21.ia64.rpm
@


1.38
log
@Fix the "make fetch" help string.

Noticed by:	markm
@
text
@d9 1
a9 1
PORTVERSION=	7.1.018
d26 1
d67 6
a72 6
	intel-icc7-7.1-18.i386.rpm
#	intel-iidb7-7.1-36.i386.rpm \
#	intel-isubh7-7.1-18.i386.rpm \
#	intel-ecc7-7.1-18.ia64.rpm \
#	intel-eidb7-7.1-36.ia64.rpm \
#	intel-esubh7-7.1-18.ia64.rpm
@


1.37
log
@Update to 7.1.018.
@
text
@d49 1
a49 1
IGNORE=	"Please manually download ${DISTFILES} from ${ICC_SITE}, ${ICC_SITE}clin/noncom.htm or https://premier.intel.com/ \(whichever has the file; to access premier.intel.com you have to register at http://www.intel.com/software/products/registrationcenter/index.htm; LOOK AT ALL 3 LOCATIONS, not every version is everywhere, but premier.intel.com has always the newest version\). With a little bit of luck it may also be available from ftp://download.intel.com/software/products/compilers/downloads/. Put it into ${DISTDIR} and run make again"
@


1.36
log
@Update to 7.1.017.
@
text
@d9 1
a9 1
PORTVERSION=	7.1.017
d49 1
a49 1
IGNORE=	"Please manually download ${DISTFILES} from ${ICC_SITE}, ${ICC_SITE}clin/noncom.htm or https://premier.intel.com/ \(whichever has the file, to access premier.intel.com you have to register at http://www.intel.com/software/products/registrationcenter/index.htm\). With a little bit of luck it may also be available from ftp://download.intel.com/software/products/compilers/downloads/. Put it into ${DISTDIR} and run make again"
d66 6
a71 6
	intel-icc7-7.1-16.i386.rpm
#	intel-iidb7-7.1-33.i386.rpm \
#	intel-isubh7-7.1-16.i386.rpm \
#	intel-ecc7-7.1-16.ia64.rpm \
#	intel-eidb7-7.1-33.ia64.rpm \
#	intel-esubh7-7.1-16.ia64.rpm
@


1.35
log
@Update to 7.1.014.
@
text
@d9 1
a9 1
PORTVERSION=	7.1.014
d13 1
a13 1
DISTNAME=	l_cc_pu_${PORTVERSION}
d66 6
a71 6
	intel-icc7-7.1-12.i386.rpm
#	intel-iidb7-7.1-25.i386.rpm \
#	intel-isubh7-7.1-12.i386.rpm \
#	intel-ecc7-7.1-12.ia64.rpm \
#	intel-eidb7-7.1-25.ia64.rpm \
#	intel-esubh7-7.1-12.ia64.rpm
@


1.34
log
@When trying to link dynamic libraries with dependancies, e.g:

	icc -shared -o libfoo.so foo.o -lbaz

the ld wrapper gets confused and thinks that a static link is intended
and the link fails. This patch appears to fix things.

Submitted by:	dfr
@
text
@d9 2
a10 2
PORTVERSION=	7.1.011
PORTREVISION=	1
d66 6
a71 6
	intel-icc7-7.1-9.i386.rpm
#	intel-iidb7-7.1-19.i386.rpm \
#	intel-isubh7-7.1-9.i386.rpm \
#	intel-ecc7-7.1-9.ia64.rpm \
#	intel-eidb7-7.1-19.ia64.rpm \
#	intel-esubh7-7.1-9.ia64.rpm
@


1.33
log
@Update to 7.1.011.
@
text
@d10 1
@


1.32
log
@ - back out special '-I' handling, it causes problems with the stlport [1]
   (this may break ports which depend upon OpenSSL from ports which was
   compiled as a base system replacement because it includes a system
   header directory again)
 - ignore "-pipe" in CFLAGS, this should unbreak some ports with hardcoded
   "-pipe"

Noticed by:	Krzysztof Parzyszek <kristof@@swissmail.org> [1]
Tested by:	Krzysztof Parzyszek <kristof@@swissmail.org> [1]
@
text
@d9 1
a9 2
PORTVERSION=	7.1.006
PORTREVISION=	2
d12 1
a12 1
DISTNAME=	l_cc_p_${PORTVERSION}
d65 6
a70 6
	intel-icc7-7.1-6.i386.rpm
#	intel-ildb7-7.1-11.i386.rpm \
#	intel-isubh7-7.1-6.i386.rpm \
#	intel-ecc7-7.1-6.ia64.rpm \
#	intel-eldb7-7.1-11.ia64.rpm \
#	intel-esubh7-7.1-6.ia64.rpm
@


1.31
log
@The new version of icc adds -I include paths before the standard include
path, thus adding a system path with -I results in not respecting the
sunstitute headers. This results in problems because we have some important
changes there.

Parts of this commit where
Submitted by:	marius@@alchemy.franken.de
@
text
@d10 1
a10 1
PORTREVISION=	1
@


1.30
log
@ - Update to 7.1.006.

Submitted by:	marius@@alchemy.franken.de

 - Minor cosmetics (FIND) and corrections (COMMENT).
@
text
@d10 1
@


1.29
log
@Clear moonlight beckons.
Requiem mors pacem pkg-comment,
And be calm ports tree.

E Nomini Patri, E Fili, E Spiritu Sancti.
@
text
@d9 1
a9 1
PORTVERSION=	7.0.086
d12 1
a12 1
DISTNAME=	l_cc_pu_${PORTVERSION}
d16 1
a16 1
COMMENT=	Intels C/C++ compiler, set up to produce native FreeBSD objects
d44 1
d65 6
a70 6
	intel-icc7-7.0-86.i386.rpm
#	intel-ildb7-7.0-172.i386.rpm \
#	intel-isubh7-7.0-86.i386.rpm \
#	intel-ecc7-7.0-86.ia64.rpm \
#	intel-eldb7-7.0-172.ia64.rpm \
#	intel-esubh7-7.0-86.ia64.rpm
d72 1
a72 1
		cpio -idfuE ${WRKDIR}/cpio-exclude --quiet
d147 2
a148 1
	@@cd ${WRKSRC}/opt && find . | cpio -pdu -R ${BINOWN}:${BINGRP} ${PREFIX}
@


1.28
log
@Update to 7.0.086.
@
text
@d16 1
@


1.27
log
@Update to 7.0.083.

I'm not aware of a change between 7.0.082 and this version which affects
FreeBSD, so no need to update if you already have 7.0.082 installed.
@
text
@d9 1
a9 1
PORTVERSION=	7.0.083
d63 6
a68 6
	intel-icc7-7.0-83.i386.rpm
#	intel-ildb7-7.0-166.i386.rpm \
#	intel-isubh7-7.0-83.i386.rpm \
#	intel-ecc7-7.0-83.ia64.rpm \
#	intel-eldb7-7.0-166.ia64.rpm \
#	intel-esubh7-7.0-83.ia64.rpm
@


1.26
log
@- update to 7.0.082
- fix [dfi]vec.h with stlport-iostreams
- do not install a Windows header (mathf.h)
- do not install libompstub (depends on pthread_atfork(), see PR 17437)

Submitted by:	marius@@alchemy.franken.de

- point to the icc errata after make install
@
text
@d9 1
a9 1
PORTVERSION=	7.0.082
d63 6
a68 6
	intel-icc7-7.0-82.i386.rpm
#	intel-ildb7-7.0-164.i386.rpm \
#	intel-isubh7-7.0-82.i386.rpm \
#	intel-ecc7-7.0-82.ia64.rpm \
#	intel-eldb7-7.0-164.ia64.rpm \
#	intel-esubh7-7.0-82.ia64.rpm
@


1.25
log
@Remove the "warning -> error" options for excessive function arguments,
they seem to cause problems in some cases.

Noticed by:	roberto, marius@@alchemy.franken.de
@
text
@d9 1
a9 2
PORTVERSION=	7.0.078
PORTREVISION=	1
d63 6
a68 6
	intel-icc7-7.0-78.i386.rpm
#	intel-ildb7-7.0-156.i386.rpm \
#	intel-isubh7-7.0-78.i386.rpm \
#	intel-ecc7-7.0-78.ia64.rpm \
#	intel-eldb7-7.0-156.ia64.rpm \
#	intel-esubh7-7.0-78.ia64.rpm
d105 1
a105 1
	@@${ECHO} -e "-Qlocation,ld,${PREFIX}/intel/${COMPILERDIR}/ia32/bin/ldwrapper\n\n-Ulinux\n-U__linux__\n-U__linux\n\n-D__FreeBSD__=${ICCCFGVAL}\n-D__ELF__=1\n" >>${WRKSRC}/opt/intel/${COMPILERDIR}/ia32/bin/${i}
d128 1
a128 1
.for i in libcxa.a libimf.a libirc.a libircmt.a libompstub.a libunwind.a
d163 4
@


1.24
log
@Update icc to 7.0.078.

Note:
Object files built with version 6.0 of Intel(R) Compilers may not link
properly with objects built with version 7.0 of Intel(R) Compilers.
Rebuilding of the object files is suggested.

Changes between the submitted version and the committed version:
 - update to 078 instead of 075
 - treat excessive parameters in function calls as an error instead
   of a warning (removed compatibility with a not named MS product, as
   suggested by Intel)
 - allow to override the INTEL_FLEXLM_LICENSE variable

From the submitter:
- Unbreak usage of signal.h on -current and RELENG_5_0.
  (committers note: see below)
- Fix ownership of installed files when built as non-root.
- Fix the patched versions of the icc- and the icpc-script to work with options
  containing spaces (e.g. '-DFOOBAR="foo bar"').
- Install 'clicense' and 'csupport' in the docs-dir even if NOPORTDOCS is
  defined, the later is not optional but required by 'icid'.
- Move the ld-wrapper to a sub-dir and thus out of what is normally set in
  PATH to prevent footshooting (this isn't perfect but simple until someone
  reworks this port to provide FreeBSD-compatibility in another way... or
  Intel releases a native version).
- Patch the headers to better fit for FreeBSD (hopefully...).

Notes:	- Icc7 is more picky about unknow options than the previous versions,
	  i.e. the gcc-options normally supplied in CFLAGS unless altered in
	  /etc/make.conf. Therefore compilation of ports with icc likely fail
	  if the standard CFLAGS are not unset (e.g. `make CC=icc CFLAGS=""`)
	  or replaced by options valid for icc.
	- When compiling multi-threaded C-code make sure to link with icc and
	  option '-mt' (for ports e.g. via PTHREAD_CFLAGS) otherwise libc_r
	  won't be linked in correctly.

Submitted by:	marius@@alchemy.franken.de

Additional information:
 - rev 1.20 of src/sys/i386/include/signal.h introduced __aligned which
   isn't handled in sys/cdefs.h for non GCC compilers (at least not in
   publically available sources)
 - the FreeBSD stdarg.h is missing a macro for va_copy() in the non GCC case,
   we handle it in the port, but be prepared to get problems when the base
   system gets fixed
 - we don't use the icc-buildin of alignof()
 - Intel provides a float.h which has different floatingpoint values
   (e.g. MAX_FLOAT) than we have in the base system, in the port we use the
   FreeBSD header (Warner knows about the issue... at least he got a mail
   from me and Marius)
 - we replace __wchar_t with __ct_rune_t because icc has a build-in type
   for it, this affects "typedef __ct_rune_t __wchar_t;" in sys/_types.h.
   It isn't known if this may be evil...
 - icc doesn't need the option "-mt" anymore to generate thread safe code,
   but our FreeBSD version still needs it to be able to choose libc_r
   instead of libc

If a src-committer wants to address any of the above mentioned issues he
should first contact me, I may have already some fixes in my local tree.
@
text
@d10 1
d106 1
a106 1
	@@${ECHO} -e "-Qlocation,ld,${PREFIX}/intel/${COMPILERDIR}/ia32/bin/ldwrapper\n\n-Ulinux\n-U__linux__\n-U__linux\n\n-D__FreeBSD__=${ICCCFGVAL}\n-D__ELF__=1\n\n-Qwr1125\n-Qwe140\n" >>${WRKSRC}/opt/intel/${COMPILERDIR}/ia32/bin/${i}
@


1.23
log
@- fix typo in message
- catch up with __sF change in -stable

Tested by:	marius@@alchemy.franken.de
@
text
@d9 1
a9 2
PORTVERSION=	6.0.1.304
PORTREVISION=	1
d12 1
a12 1
DISTNAME=	l_cc_p_6.0.1.304
d30 6
a35 2
MAN1=	icc.1
MANPREFIX=	${PREFIX}/intel/compiler60/
d46 1
a46 1
IGNORE=	"Please manually download ${DISTFILES} from ${ICC_SITE}, ${ICC_SITE}c60l/noncom.htm or https://premier.intel.com/ \(whichever has the file, to access premier.intel.com you have to register at http://www.intel.com/software/products/registrationcenter/index.htm\). With a little bit of luck it may also be available from ftp://download.intel.com/software/products/compilers/downloads/. Put it into ${DISTDIR} and run make again"
d50 2
a51 1
	exists(${PREFIX}/intel/compiler60/bin/ifc)
d56 6
d63 6
a68 11
	intel-icc6-6.0.1-304.i386.rpm \
#	intel-ildb6-6.0.1-308.i386.rpm \
#	intel-isubh6-6.0.1-304.i386.rpm \
#	intel-ecc6-6.0.1-304.ia64.rpm \
#	intel-eldb6-6.0.1-308.ia64.rpm \
#	intel-esubh6-6.0.1-304.ia64.rpm
.if defined(NOPORTDOCS)
	@@cd ${WRKSRC} && rpm2cpio 2>/dev/null ${i} | \
		cpio -idfuE ${FILESDIR}/cpio-exclude --quiet \
		*/opt/intel/compiler60/docs/*
.else
d70 1
a70 2
		cpio -idfuE ${FILESDIR}/cpio-exclude --quiet
.endif
d78 1
a78 1
	@@${FIND} ${WRKSRC}/opt/intel/compiler60/${i} -type f -print0 | \
d82 1
d84 2
a85 3
.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}
d90 8
a97 9
.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 docs/csupport
	@@${REINPLACE_CMD} -i "" -e 's:@@@@PREFIX@@@@:${PREFIX}:g; s@@\<INSTALLDIR\>@@${PREFIX}/intel@@g; s@@man -w@@manpath -q@@g; s:\<INSTALLTIMECOMBOPACKAGEID\>:${DISTNAME}:g' \
		${WRKSRC}/opt/intel/compiler60/${i}
	@@${CHMOD} 755 ${WRKSRC}/opt/intel/compiler60/${i}
.endfor
.for i in cfloat.orig cwchar.orig yvals.h.orig
	@@${RM} ${WRKSRC}/opt/intel/compiler60/ia32/include/${i}
.endfor
d99 1
a99 1
	@@${RM} ${WRKSRC}/opt/intel/compiler60/ia32/bin/${i}
a100 4
# Remove empty directory
.if defined(NOPORTDOCS)
	@@${RM} -rf ${WRKSRC}/opt/intel/compiler60/docs
.endif
d103 7
a109 2
	@@${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/${i}
	@@${CHMOD} a-x,g-w ${WRKSRC}/opt/intel/compiler60/ia32/bin/${i}
d112 4
a115 3
	@@${ECHO} -e "\n-I${PREFIX}/include/stlport\n-Qoption,ld,-CPLUSPLUS\n" >>${WRKSRC}/opt/intel/compiler60/ia32/bin/icpc.cfg
	@@cd ${WRKSRC}/opt/intel/compiler60/ia32/bin/ && ${LN} -s icc.cfg iccbin.cfg && ${LN} -s icpc.cfg icpcbin.cfg
# \n-Qlocation,ld,/usr/bin\n\n-sox-\n
d124 2
d128 5
a132 3
.for i in libcxa.a libimf.a libirc.a libircmt.a libunwind.a
	@@${OBJCOPY} --redefine-sym stderr=__stderrp \
		${WRKSRC}/opt/intel/compiler60/ia32/lib/${i}
d135 1
a135 1
	@@${AR} q ${WRKSRC}/opt/intel/compiler60/ia32/lib/libcxa.a ${WRKSRC}/*.o
d137 6
a142 3
	@@${CC} ${CFLAGS} -o ${WRKSRC}/opt/intel/compiler60/ia32/bin/ld ${FILESDIR}/ld.c
	@@${STRIP_CMD} ${WRKSRC}/opt/intel/compiler60/ia32/bin/ld
	@@${CHMOD} 755 ${WRKSRC}/opt/intel/compiler60/ia32/bin/ld
d145 1
a145 2
	@@cd ${WRKSRC}/opt && ${TAR} -cf - . | \
		${TAR} -xf - -C ${PREFIX}
d151 1
a151 1
	@@${ECHO_CMD} "${PREFIX}/intel/compiler60/ia32/bin to your PATH."
@


1.22
log
@- mark BROKEN when linux_devtools or ifc is installed
- make it more clear that you shouldn't install linux_devtools in the post
  install message
@
text
@d48 1
a48 1
BROKEN=	Can not coexist with linux_devtools or ifc
d117 2
a118 1
.if ${OSVERSION} < 500042
@


1.21
log
@- Keep up with changes on -current (__sF, elf_i386 -> elf_i386_fbsd).
- Use an exclude file for cpio, there's not much sense in extracting
  and chmod'ing a whole bunch of files only to delete them afterwards.
- Fix two bugs in the ld-wrapper that could cause it to dump core in
  rare cases.
- Remove a forgotten C++ include.
- Improve IGNORE message.

Submitted by:	marius@@alchemy.franken.de
@
text
@d46 5
d149 2
a150 2
	@@${ECHO_CMD} "WARNING: If you use icc while having linux-devtools installed, icc will use"
	@@${ECHO_CMD} "the wrong includes and therefore will generate bogus binaries!"
@


1.20
log
@- link libc_pic.a when compiling with "-KPIC -static"
- link libc_p.a/lib_c_r.a when compiling with "-pg -static"
- fix unresolved symbols to make "-pg" and "-prof_gen" work

Submitted by:	marius@@alchemy.franken.de
Approved by:	kris
@
text
@d40 2
d43 1
a43 1
IGNORE=	"Please manually download ${DISTFILES} from ${ICC_SITE}, e.g. from ${ICC_SITE}c60l/noncom.htm or from https://premier.intel.com/ \(whichever has the file, to access premier.intel.com you have to register at http://www.intel.com/software/products/registrationcenter/index.htm\). With a little bit of luck it may also be available from ftp://download.intel.com/software/products/compilers/downloads/. Put it into ${DISTDIR} and run make again."
d54 8
a61 1
	@@cd ${WRKSRC};  rpm2cpio 2>/dev/null ${i} | cpio -idu --quiet
d87 1
a87 8
# Remove unneeded files
.for i in cfloat.orig cwchar.orig yvals.h.orig algorithm bitset complex deque \
	fstream fstream.h functional hash_map hash_set iomanip iomanip.h ios \
	iosfwd iostream iostream.h istream iterator limits list locale map \
	memory numeric ostream queue set slist sstream stack stdexcept stl.h \
	stream.h streambuf string strstream strstream.h utility valarray \
	vector xcomplex xdebug xhash xiosbase xlocale xlocinfo xlocinfo.h \
	xlocmes xlocmon xlocnum xloctime xmemory xstring xtree xutility ymath.h
d90 4
a93 7
.for i in libcprts.a libcprts.so libcprts.so.1 libguide.a libguide.so \
	libunwind.so libunwind.so.1
	@@${RM} -rf ${WRKSRC}/opt/intel/compiler60/ia32/lib/${i}
.endfor
	@@${RM} ${WRKSRC}/opt/intel/compiler60/ia32/bin/uninstall \
		${WRKSRC}/opt/intel/compiler60/ia32/bin/icc.orig \
		${WRKSRC}/opt/intel/compiler60/ia32/bin/icpc.orig
d111 10
a120 3
		${FILESDIR}/errno_location.c ${FILESDIR}/stderr.c \
		${FILESDIR}/mcount.S && \
		${AR} q opt/intel/compiler60/ia32/lib/libcxa.a *.o
@


1.19
log
@Add another possible download site (it isn't guaranteed that te file is
available from there).

Noticed by:	"Ulrich 'Q' Spoerlein" <q@@uni.de>
@
text
@d10 1
d109 5
a113 4
# Fix unresolved references in libcxa.a, libimf.a and libunwind.a
	@@cd ${WRKSRC} && ${CC} ${CFLAGS} -c ${FILESDIR}/cxa_atexit.c \
		${FILESDIR}/cxa_finalize.c ${FILESDIR}/errno_location.c \
		${FILESDIR}/stderr.c && \
@


1.18
log
@- Update to 6.0.1.304.
- Re-enable patching of iccvars.(c)sh (solely called by icid and therefore
  overlooked), accidentally broken by last commit.
- Fix generation of multi-threaded code, triggered by the (badly documented)
  compiler option "-mt".
- Disable compiler options "-openmp*" and "-parallel", they depend on
  libguide which itself depends on pthread_atfork() (not provided by libc_r),
  therefore don't install libguide.
  Note: All compiler options are now believed to either work on FreeBSD or
  be disabled (Maintainer note: '-prof_gen' is under investigation).
- Add a message about installing stlport-icc in order to get full C++ support.
- Remove workaround for generation of shared objects with binutils/ld 2.12.x,
  appears to be fixed (unfortunately no confirmation by Intel Support, "That
  is good news <...> then we should just close this issue." *sigh*).

Submitted by:	marius@@alchemy.franken.de

- Add note about a problem on P4 and how to solve it.

Suggested by:	Martin Kahlert <martin.kahlert@@infineon.com>

- Remove outdated information in pkg-descr.
@
text
@d40 1
a40 1
IGNORE=	"Please manually download ${DISTFILES} from ${ICC_SITE}, e.g. from ${ICC_SITE}c60l/noncom.htm or from https://premier.intel.com/ \(whichever has the file, to access premier.intel.com you have to register at http://www.intel.com/software/products/registrationcenter/index.htm\). Put it into ${DISTDIR} and run make again."
@


1.17
log
@- C++ support: fix to work also on -current, work around broken exception
  handling when generating shared objects with binutils/ld 2.12.[0,1], link
  in the icc C++ ABI definitions not those of gcc
- remove libcprts (STL): it has unresolvable glibc dependencies in both,
  dynamic and static, versions, therefore is not usable and entirely unneeded
  when libstlport is used instead
- add libimf (Intel's optimized math functions library), while there's no
  measurable speed improvement (at least for the functions tested) in
  comparison to FreeBSD's libm beyond the "normal" icc vs. gcc boost icc
  occasionally produces code depending on libimf when told to optimize for
  Pentium 4
- replace the ld-script with a wrapper written in C as (c)sh is a bit limited
  and long winded for that purpose
- minor stuff and cleanup

Submitted by:	marius@@alchemy.franken.de
@
text
@d9 1
a9 2
PORTVERSION=	6.0.159
PORTREVISION=	3
d12 1
a12 1
DISTNAME=	l_cc_pu_6.0.159
d45 6
a50 6
	intel-icc6-6.0-159.i386.rpm \
#	intel-ildb6-6.0-228.i386.rpm \
#	intel-isubh6-6.0-159.i386.rpm \
#	intel-ecc6-6.0-159.ia64.rpm \
#	intel-eldb6-6.0-228.ia64.rpm \
#	intel-esubh6-6.0-159.ia64.rpm
d73 1
a73 1
	@@${REINPLACE_CMD} -i "" -e 's:@@@@PREFIX@@@@:${PREFIX}:g; s@@man -w@@manpath -q@@g; s:\<INSTALLTIMECOMBOPACKAGEID\>:${DISTNAME}:g' \
d87 2
a88 1
.for i in libcprts.a libcprts.so libcprts.so.1 libunwind.so libunwind.so.1
d127 8
@


1.16
log
@Fix syntax error in the no distfile case.

Submitted by:	Lukas Ertl <l.ertl@@univie.ac.at>
@
text
@d10 1
a10 1
PORTREVISION=	2
a28 1
NO_BUILD=		yes
d74 1
a74 1
	@@${REINPLACE_CMD} -i "" -e '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; s:\<INSTALLTIMECOMBOPACKAGEID\>:${DISTNAME}:g' \
d79 3
a81 3
.for i in cwchar.orig yvals.h.orig algorithm bitset complex deque fstream \
	fstream.h functional hash_map hash_set iomanip iomanip.h ios iosfwd \
	iostream iostream.h istream iterator limits list locale map mathf.h \
d88 1
a88 2
.for i in crtxi.o crtxn.o icrt.link libcprts.so libcprts.so.1 libimf.a \
	libunwind.so libunwind.so.1
d92 2
a93 1
		${WRKSRC}/opt/intel/compiler60/ia32/bin/icc.orig
d102 1
a102 1
# C++ hack for ipcp
d106 6
a111 2
# Fix (some) unresolved references in libcprts, libcxa and libunwind
	@@cd ${WRKSRC} && ${CC} -c ${FILESDIR}/*.c && \
d114 2
a115 1
	@@${SED} 's:@@@@PREFIX@@@@:${PREFIX}:g' ${FILESDIR}/ld >${WRKSRC}/opt/intel/compiler60/ia32/bin/ld
a116 3
	@@${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
@


1.15
log
@- add category: devel
- use reinplace command where appropriate
- gzip man page
- clarify download instructions (1)
- fix typo in a comment (2)
- preparation for successfull C++ compiles (2, minor changes by me)

Even if I bumped the port revision for the C++ parts, there's no need to
update yet, wait until I commit the icc-stlport.

Requested by:	mi (1)
Submitted by:	Marius Strobl <marius@@alchemy.franken.de> (2)
@
text
@d42 1
a42 1
IGNORE=	"Please manually download ${DISTFILES} from ${ICC_SITE}, e.g. from ${ICC_SITE}c60l/noncom.htm or from https://premier.intel.com/ (whichever has the file, to access premier.intel.com you have to register at http://www.intel.com/software/products/registrationcenter/index.htm). Put it into ${DISTDIR} and run make again."
@


1.14
log
@1) The new icc doesn't respect icc.cfg, solve this issue.
2) An actual rpm2cpio talks a little bit more, redirect sdterr to /dev/null.

Noticed by:	marius@@alchemy.franken.de (1)
@
text
@d10 2
a11 2
PORTREVISION=	1
CATEGORIES=	lang linux
d27 1
d32 3
d42 1
a42 1
IGNORE=	"Please manually download ${DISTFILES} from ${ICC_SITE}, e.g. from ${ICC_SITE}c60l/noncom.htm or from https://premier.intel.com/. Put it into ${DISTDIR} and run make again."
d59 1
a59 1
# Remove unneded/unsafe access rights
d75 1
a75 4
	@@${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; s:\<INSTALLTIMECOMBOPACKAGEID\>:${DISTNAME}:g' \
		${WRKSRC}/opt/intel/compiler60/${i} \
		>${WRKSRC}/opt/intel/compiler60/${i}.seded
	@@${MV} -f ${WRKSRC}/opt/intel/compiler60/${i}.seded \
d80 15
a94 1
	@@${RM} ${WRKSRC}/opt/intel/compiler60/ia32/include/yvals.h.orig
d103 2
d107 3
@


1.13
log
@Document the bad interaction with the linux-devtools port.

Noticed by:	"Simon 'corecode' Schubert" <corecode@@corecode.ath.cx>
@
text
@d10 1
d49 1
a49 1
	@@cd ${WRKSRC};  rpm2cpio ${i} | cpio -idu --quiet
d71 1
a71 1
	@@${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; s:\<INSTALLTIMECOMBOPACKAGEID\>:Intel(R) C++ Compiler for Linux:g' \
d84 5
a88 1
	@@${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
@


1.12
log
@Update to 6.0.159.
@
text
@d5 1
a5 1
# $FreeBSD: ports/lang/icc/Makefile,v 1.11 2002/07/01 17:25:31 netchild Exp $
d101 3
@


1.11
log
@Add another download location.
@
text
@d5 1
a5 1
# $FreeBSD$
d9 1
a9 1
PORTVERSION=	6.0.149
d12 1
a12 1
DISTNAME=	l_cc_pu_6.0.149
d42 6
a47 6
	intel-icc6-6.0-149.i386.rpm \
#	intel-ildb6-6.0-208.i386.rpm \
#	intel-isubh6-6.0-149.i386.rpm \
#	intel-ecc6-6.0-149.ia64.rpm \
#	intel-eldb6-6.0-208.ia64.rpm \
#	intel-esubh6-6.0-149.ia64.rpm
@


1.10
log
@Get the IGNORE warning working.  ${DISTFILES} cannot be referenced in
a .if condition before reading through bsd.port.post.mk.

Approved by:	netchild (MAINTAINER)
@
text
@d37 1
a37 1
IGNORE=	"Please manually download ${DISTFILES} from ${ICC_SITE}, e.g. from ${ICC_SITE}c60l/noncom.htm. Put it into ${DISTDIR} and run make again."
@


1.9
log
@- update to icc 6.0.149
- use an empty MASTER_SITES to not get mail from fenner's distfile survey
  Suggested by:	fenner
- correct the message in IGNORE after obrien's change to linux-base
- fill in the product name in docs/csupport
@
text
@d36 1
a36 1
.if !exists(${DISTDIR}/${DISTFILES})
@


1.8
log
@Explict dependancy on version 7 of linux_base is not needed anymore.
The linux_base port is now at RH version 7.
@
text
@d9 1
a9 2
PORTVERSION=	6.0.139
PORTREVISION=	1
d11 2
a12 2
MASTER_SITES=	http://www.intel.com/software/products/compilers/
DISTNAME=	l_cc_p_6.0.139
d30 2
d36 2
a37 2
.if !exists(${DISTDIR}/${DISTNAME}${EXTRACT_SUFX})
IGNORE=	"Please manually download it from ${MASTER_SITES}, e.g. from http://www.intel.com/software/products/compilers/c60l/noncom.htm. Put it into ${DISTDIR} and run make again. WARNING: this will lead to a mixed up installation if you already use the default linux emulation. This port uses the linux_base-7 port instead of the default linux_base port"
d42 6
a47 6
	intel-icc6-6.0-139.i386.rpm \
#	intel-ildb6-6.0-189.i386.rpm \
#	intel-isubh6-6.0-139.i386.rpm \
#	intel-ecc6-6.0-139.ia64.rpm \
#	intel-eldb6-6.0-189.ia64.rpm \
#	intel-esubh6-6.0-139.ia64.rpm
d69 2
a70 2
	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' \
@


1.7
log
@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>
@
text
@a18 1
RUN_DEPENDS=	${LINUXBASE}/lib/libc-2.2.2.so:${PORTSDIR}/emulators/linux_base-7
d26 1
a26 1
#USE_LINUX=		yes
@


1.6
log
@Corrections to some paths in descriptive messages, no need to bump the
port revision.

Submitted by:	marius@@alchemy.franken.de
@
text
@d10 1
d52 1
d54 1
d60 1
d67 1
d77 1
d82 1
d85 6
d93 1
a93 1
	@@cd ${WRKSRC}/opt && ${TAR} -chf - . | \
d99 2
a100 2
	@@${ECHO_CMD} "${PREFIX}/intel/licenses) directory and add ${PREFIX}/intel/compiler60/ia32/bin"
	@@${ECHO_CMD} "to your PATH."
@


1.5
log
@Update icc from 5.0.1 to 6.0.139.
@
text
@d86 1
a86 1
	@@${ECHO_CMD} "${PREFIX}/intel/licenses) directory and add ${PREFIX}/intel/compiler60/bin"
@


1.4
log
@Unbreak for 4.x.

Approved by:	steve
Noticed by:	murray
@
text
@d9 1
a9 2
PORTVERSION=	5.0.1
PORTREVISION=	1
d11 2
a12 2
MASTER_SITES=	http://www.intel.com/software/products/compilers/c50/linux/
DISTNAME=	cc010911rh71
d36 1
a36 1
IGNORE=	"Please manually download the version for RedHat 7.1 from ${MASTER_SITES}, e.g. from http://www.intel.com/software/products/compilers/c50/linux/noncom.htm. Put it into ${DISTDIR} and run make again. WARNING: this will lead to a mixed up installation if you already use the default linux emulation. This port uses the linux_base-7 port instead of the default linux_base port"
d41 7
a47 6
	intel-icc-5.0.1-129.i386.rpm \
#	intel-ecc64-5.0.1-71.ia64.rpm \
#	intel-ldb-5.0.1-119.i386.rpm \
#	intel-subh-5.0.1-118.i386.rpm \
#	intel-xenv64-5.0.1-35.ia64.rpm
	@@cd ${WRKSRC}; rpm2cpio ${i} | cpio -idu --quiet
d53 1
a53 1
	@@${FIND} ${WRKSRC}/opt/intel/compiler50/${i} -type f -print0 | \
d57 3
a59 5
.for i in icc iccfilt icid icpc icpi mcpcom profmerge proforder
	@@brandelf -t Linux ${WRKSRC}/opt/intel/compiler50/ia32/bin/${i}
.endfor
.for i in intelpto lmgrd lmutil
	@@brandelf -t Linux ${WRKSRC}/opt/intel/compiler50/flexlm/${i}
d63 8
a70 8
.for i in ia32/bin/iccvars.csh ia32/bin/iccvars.sh ia32/bin/icc.cfg \
	ia32/bin/icpc.cfg docs/iccsupport
	@@${SED} 's@@\<INSTALLDIR\>@@${PREFIX}/intel@@g; s@@-tp p6@@@@' \
		${WRKSRC}/opt/intel/compiler50/${i} \
		>${WRKSRC}/opt/intel/compiler50/${i}.seded
	@@${MV} -f ${WRKSRC}/opt/intel/compiler50/${i}.seded \
		${WRKSRC}/opt/intel/compiler50/${i}
	@@${CHMOD} 755 ${WRKSRC}/opt/intel/compiler50/${i}
d72 1
a72 1
	@@${RM} ${WRKSRC}/opt/intel/compiler50/ia32/include/yvals.h.orig
d74 1
a74 1
	@@${RM} -rf ${WRKSRC}/opt/intel/compiler50/docs
d76 2
a77 1
	@@${ECHO} -e "\n-Ulinux\n-U__linux__\n-U__linux\n\n-D__FreeBSD__=${ICCCFGVAL}\n-D__ELF__=1\n" >>${WRKSRC}/opt/intel/compiler50/ia32/bin/icc.cfg
d85 3
a87 3
	@@${ECHO_CMD} "source the appropriate ${PREFIX}/intel/compiler50/ia32/bin/iccvars.{,c}sh"
	@@${ECHO_CMD} "script and put your license into your \$${INTEL_FLEXLM_LICENSE} (default:"
	@@${ECHO_CMD} "${PREFIX}/intel/licenses) directory."
@


1.3
log
@Style fixes.

Submitted by:	obrien
Approved by:	steve
@
text
@d37 1
a37 1
IGNORE=	"Please manually download the version for RedHat 7.1 from ${MASTER_SITES} (e.g. http://www.intel.com/software/products/compilers/c50/linux/noncom.htm), put it into ${DISTDIR} and run make again. WARNING: this will lead to a mixed up installation if you already use the default linux emulation. This port uses the linux_base-7 port instead of the default linux_base port"
@


1.2
log
@ - reword pkg-descr
 - fix iccvars.csh (PR)
 - mimic some parts of gcc's preprocessor (defines)

PR:		36555
Approved by:	steve
@
text
@d19 1
a19 2
RUN_DEPENDS=	\
	${LINUXBASE}/lib/libc-2.2.2.so:${PORTSDIR}/emulators/linux_base-7
d22 2
a24 1
NO_WRKSUBDIR=		yes
d27 2
a31 3
NO_PACKAGE=		${RESTRICTED}
NO_CDROM=		yes

d37 1
a37 1
IGNORE=	"Please manually download the version for RedHat 7.1 from ${MASTER_SITES}, put it into ${DISTDIR} and run make again"
d41 2
a42 1
.for i in intel-icc-5.0.1-129.i386.rpm \
@


1.1
log
@This is Intels C/C++ compiler. It is setup to produce native FreeBSD objects.
This port is not able to produce native executables on its own. You need to do
it yourself with gcc.

Approved by:	steve
@
text
@d10 1
d35 2
d57 8
d67 1
a67 1
	@@${SED} 's@@\<INSTALLDIR\>@@${PREFIX}/intel@@g' \
a73 8
.for i in icc iccfilt icid icpc icpi mcpcom profmerge proforder
	@@brandelf -t Linux ${WRKSRC}/opt/intel/compiler50/ia32/bin/${i}
.endfor
.for i in intelpto lmgrd lmutil
	@@brandelf -t Linux ${WRKSRC}/opt/intel/compiler50/flexlm/${i}
.endfor

post-patch:
d78 1
@

