blob: 15bced004fbc0641dcd5a83dcac06279c68db047 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
|
# Copyright 1999-2004 Gentoo Technologies, Inc.
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/dev-lang/icc/icc-7.1.029.ebuild,v 1.5 2004/05/13 11:07:02 xtv Exp $
inherit rpm
S=${WORKDIR}
DESCRIPTION="Intel C++ Compiler - Intel's Pentium optimized compiler for Linux"
SRC_URI1="ftp://download.intel.com/software/products/compilers/downloads/l_cc_pc_${PV}.tar"
SRC_URI2="ftp://download.intel.co.jp/software/products/compilers/downloads/l_cc_pc_${PV}.tar"
SRC_URI="${SRC_URI1} ${SRC_URI2}"
HOMEPAGE="http://www.intel.com/software/products/compilers/clin/"
LICENSE="icc-7.0"
DEPEND="virtual/linux-sources
>=sys-libs/glibc-2.2.5
x86? ( sys-libs/lib-compat )"
RDEPEND="virtual/linux-sources
>=sys-libs/glibc-2.2.5"
SLOT="7"
KEYWORDS="-* ~ia64 ~x86"
IUSE=""
RESTRICT="nostrip"
src_unpack() {
unpack ${A}
cd ${S}
# Keep disk space to a minimum
if [ "$ARCH" = "x86" ]
then
rm -f intel-*.ia64.rpm
else
rm -f intel-*.i386.rpm
fi
rpm_unpack *.rpm
}
src_compile() {
# From UNTAG_CFG_FILES in 'install'
SD=${S}/opt/intel # Build DESTINATION
RD=/opt/intel # Real DESTINATION
for FILE in $(find $SD/compiler*/ia??/bin/ -regex '.*[ei][cf]p?c$\|.*cfg$\|.*pcl$\|.*vars[^/]*.c?sh$' 2>/dev/null)
do
sed s@\<INSTALLDIR\>@$RD@g ${FILE} > ${FILE}.abs
mv -f ${FILE}.abs ${FILE}
chmod 755 ${FILE}
done
# From UNTAG_SUPPORT in 'install'
eval `grep "^[ ]*COMBOPACKAGEID=" install`
for SUPPORTFILE in ${SD}/compiler*/docs/*support
do
einfo "Untagging: ${SUPPORTFILE}"
sed s@\<INSTALLTIMECOMBOPACKAGEID\>@$COMBOPACKAGEID@g $SUPPORTFILE > $SUPPORTFILE.abs
mv $SUPPORTFILE.abs $SUPPORTFILE
chmod 644 $SUPPORTFILE
done
# these should not be executable
find "${SD}/compiler70/"{docs,man,training,ia32/include} -type f -exec chmod -x "{}" ";"
find "${SD}/compiler70/ia32/lib" -name \*.a -exec chmod -x "{}" ";"
}
src_install () {
dodoc lgpltext
dodoc clicense
cp -a opt ${D}
insinto /etc/env.d
if [ "$ARCH" = "x86" ]
then
newins ${FILESDIR}/${PVR}/05icc-ifc-ia32 05icc-ifc || die
# fix the processor name issue with the primary icc executable
exeinto /opt/intel/compiler70/ia32/bin
newexe ${FILESDIR}/${PVR}/icc-ia32 icc
newexe ${FILESDIR}/${PVR}/icpc-ia32 icc
else
newins ${FILESDIR}/${PVR}/05icc-ifc-ia64 05icc-ifc || die
dodir /usr/bin
dosym ../../opt/intel/compiler70/ia64/bin/eccbin /usr/bin/ecc
dosym ../../opt/intel/compiler70/ia64/bin/ecpcbin /usr/bin/ecpc
fi
}
pkg_postinst () {
einfo "The ICC compiler for Itanium systems is called \"ecc\"."
einfo "http://www.intel.com/software/products/compilers/clin/noncom.htm"
einfo "From the above url you can get a free, non-commercial"
einfo "license to use the Intel C++ Compiler emailed to you."
einfo "You cannot run icc without this license file."
einfo "Read the website for more information on this license."
einfo
einfo "Documentation can be found in /opt/intel/compiler70/docs/"
einfo
einfo "You will need to place your license in /opt/intel/licenses/"
einfo
ewarn
ewarn "Packages compiled with versions of icc older than 7.0 will need"
ewarn "to be recompiled. Until you do that, old packages will"
ewarn "work if you edit /etc/ld.so.conf and change 'compiler70'"
ewarn "to 'compiler60' and run 'ldconfig.' Note that this edit"
ewarn "won't persist and will require you to re-edit after each"
ewarn "package you re-install."
ewarn "BEFORE COMPILING IMPORTANT APPLICATIONS THAT YOUR"
ewarn "SYSTEM DEPENDS ON, READ THE WARNING ABOVE."
ewarn "THIS COULD RENDER YOUR SYSTEM UNUSABLE."
ewarn "THIS IS A PROBLEM WITH INTEL'S SOFTWARE, _NOT_"
ewarn "WITH GENTOO."
ewarn "If 'icc' breaks, use 'iccbin' instead and report a bug."
ewarn "Please use 'source /etc/profile' prior to merging any icc-enabled"
ewarn "ebuilds."
}
|