blob: 3ff0d90b0afe5ae7f30d77780b61d5f34c5131f8 (
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
129
130
131
132
133
134
135
136
137
138
139
|
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/dev-lang/ifc/ifc-11.1.072.ebuild,v 1.6 2011/12/29 12:44:32 jlec Exp $
EAPI=4
inherit check-reqs rpm versionator
PB=cprof
PACKAGEID="l_${PB}_p_${PV}"
RELEASE="$(get_version_component_range 1-2)"
BUILD="$(get_version_component_range 3)"
PID=1769
DESCRIPTION="Intel FORTRAN compiler suite for Linux"
HOMEPAGE="http://software.intel.com/en-us/articles/fortran-compilers/"
SRC_COM="http://registrationcenter-download.intel.com/irc_nas/${PID}/${PACKAGEID}"
SRC_URI="
amd64? ( ${SRC_COM}_intel64.tgz )
ia64? ( ${SRC_COM}_ia64.tgz )
x86? ( ${SRC_COM}_ia32.tgz )"
LICENSE="Intel-SDP"
SLOT="0"
IUSE="idb +mkl"
KEYWORDS="~amd64 ~ia64 ~x86 ~amd64-linux ~x86-linux"
RESTRICT="mirror"
DEPEND=""
RDEPEND="
~virtual/libstdc++-3.3
amd64? ( app-emulation/emul-linux-x86-compat )"
DESTINATION="opt/intel/Compiler/${RELEASE}/${BUILD}"
EDESTINATION="${EROOT#/}${DESTINATION}"
QA_TEXTRELS="${EDESTINATION}/*"
QA_EXECSTACK="${EDESTINATION}/*"
QA_PRESTRIPPED="${EDESTINATION}/lib/*/.*libFNP.so ${EDESTINATION}/bin/*/.* ${EDESTINATION}/idb/*/*/.*"
QA_DT_HASH="
${EDESTINATION}/bin/*/.*
${EDESTINATION}/lib/*/.*
${EDESTINATION}/mkl/lib/*/.*
${EDESTINATION}/mkl/benchmarks/mp_linpack/bin_intel/*/.*
${EDESTINATION}/idb/*/*/.*"
CHECKREQS_MEMORY=1024M
CHECKREQS_DISK_BUILD=1536M
pkg_pretend() {
use idb && use mkl && CHECKREQS_DISK_BUILD=2048M
check-reqs_pkg_pretend
}
pkg_setup() {
use idb && use mkl && CHECKREQS_DISK_BUILD=2048M
check-reqs_pkg_setup
}
src_prepare() {
IARCH=ia32
use amd64 && IARCH=intel64
use ia64 && IARCH=ia64
check-reqs_pkg_pretend
}
src_unpack() {
unpack ${A}
mv "${WORKDIR}"/l_* "${S}"
cd "${S}"
use idb || rm -f rpm/*idb*.rpm
use mkl || rm -f rpm/*mkl*.rpm
if has_version "~dev-lang/icc-${PV}"; then
rm -f rpm/*cprolib*.rpm
use idb && built_with_use dev-lang/icc idb && rm -f rpm/*idb*.rpm
use mkl && built_with_use dev-lang/icc mkl && rm -f rpm/*mkl*.rpm
fi
for x in rpm/intel*.rpm; do
rpm_unpack ./${x} || die "rpm_unpack ${x} failed"
done
}
src_prepare() {
# from the PURGE_UB804_FNP in pset/install_fc.sh
# rm -f "${DESTINATION}"/lib/*/*libFNP.so || die
# extract the tag function from the original install
sed -n \
-e "s|find \$DESTINATION|find ${DESTINATION}|g" \
-e "s|@\$DESTINATION|@${EROOT}${DESTINATION}|g" \
-e '/^UNTAG_CFG_FILES[[:space:]]*(/,/^}/p' \
pset/install_fc.sh > tag.sh || die
# fix world writeable files
[[ -d ${DESTINATION}/mkl ]] && chmod 644 \
${DESTINATION}/mkl/tools/{environment,builder}/* \
${DESTINATION}/mkl/tools/plugins/*/*
# remove for collision (bug #288038)
has_version "~dev-lang/icc-${PV}" && \
rm -f ${DESTINATION}/lib/*/locale/*/flexnet.cat
}
src_install() {
einfo "Tagging"
. ./tag.sh
UNTAG_CFG_FILES
keepdir /opt/intel/licenses
einfo "Copying files"
dodir "/${DESTINATION}"
cp -pPR \
${DESTINATION}/* \
"${ED}"/${DESTINATION}/ \
|| die "Copying ${PN} failed"
local envf=05icfc
cat > ${envf} <<-EOF
PATH="${EROOT}${DESTINATION}/bin/${IARCH}"
ROOTPATH="${EROOT}${DESTINATION}/bin/${IARCH}"
LDPATH="${EROOT}${DESTINATION}/lib/${IARCH}:${EROOT}${DESTINATION}/idb/lib/${IARCH}"
LIBRARY_PATH="${EROOT}${DESTINATION}/lib/${IARCH}:${EROOT}${DESTINATION}/idb/lib/${IARCH}"
NLSPATH="${EROOT}${DESTINATION}/lib/locale/en_US/%N"
MANPATH="${EROOT}${DESTINATION}/man/en_US"
EOF
if [[ ! -e "${EROOT}etc/env.d/${envf}" ]] || \
[[ -n $(diff "${EROOT}"etc/env.d/${envf} ./${envf}) ]]; then
doenvd ${envf} || die "doenvd ${envf} failed"
fi
[[ -d ${DESTINATION}/idb ]] && \
dosym ../../common/com.intel.debugger.help_1.0.0 \
${DESTINATION}/idb/gui/${IARCH}/plugins
}
pkg_postinst() {
elog "Make sure you have recieved the an Intel license."
elog "To receive a non-commercial license, you need to register at:"
elog "http://software.intel.com/en-us/articles/non-commercial-software-development/"
elog "Install the license file into ${EROOT}opt/intel/licenses."
}
|