aboutsummaryrefslogtreecommitdiff
blob: 3e9a6ce71c60bde7b722ae87bcc282458dc7439b (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
# Copyright 2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $

EAPI=5

inherit eutils

DESCRIPTION="PGI compiler suite"
HOMEPAGE="http://www.pgroup.com/"
SRC_URI="pgilinux-2013-135.tar.gz"

LICENSE="PGI"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="acml cuda java"

RDEPEND="net-misc/curl"

RESTRICT="mirror strip"

QA_PREBUILT="
		opt/pgi/linux86/2013/cuda/4.2/lib/lib*.so.*
		opt/pgi/linux86-64/13.5/bin/*
		opt/pgi/linux86-64/13.5/lib/lib*
		opt/pgi/linux86-64/13.5/lib/*.o
		opt/pgi/linux86-64/13.5/libso/lib*
		opt/pgi/linux86-64/13.5/libso/*.o
		opt/pgi/linux86-64/13.5/cray/lib*
		opt/pgi/linux86-64/13.5/etc/pgi_license_tool/curl
		opt/pgi/linux86-64/13.5/REDIST/lib*.so
		opt/pgi/linux86-64/2013/cuda/5.0/nvvm/cicc
		opt/pgi/linux86-64/2013/cuda/4.2/nvvm/cicc
		opt/pgi/linux86-64/2013/acml/5.3.0/lib/lib*
		opt/pgi/linux86-64/2013/acml/5.3.0/libso/lib*.so
		opt/pgi/linux86/13.5/etc/pgi_license_tool/curl
		opt/pgi/linux86/13.5/bin/*
		opt/pgi/linux86/13.5/lib/lib*
		opt/pgi/linux86/13.5/lib/*.o
		opt/pgi/linux86/13.5/libso/lib*
		opt/pgi/linux86/13.5/cray/lib*
		opt/pgi/linux86/2013/cuda/5.0/nvvm/cicc
		opt/pgi/linux86/2013/cuda/4.2/nvvm/cicc
		opt/pgi/linux86/2013/acml/4.4.0/lib/lib*
		opt/pgi/linux86/2013/acml/4.4.0/libso/lib*.so
"

S="${WORKDIR}"

pkg_nofetch() {
	einfo "PGI doesn't provide direct download links. Please download"
	einfo "${ARCHIVE} from ${HOMEPAGE}"
}

src_prepare() {
	epatch "${FILESDIR}/${P}-terminal.patch"
}

src_install() {
	dodir /opt/pgi

	command="accept
1
${ED}/opt/pgi"

	if use acml; then
		command="${command}
y
accept
"
	else
		command="${command}
n"
	fi

	if use cuda; then
		command="${command}
y
accept"
	else
		command="${command}
n"
	fi

	if use java; then
		command="${command}

accept"
	else
		command="${command}
no"
	fi

	command="${command}
y
n
n
y
"
	./install <<EOF
${command}
EOF
	# fix problems with PGI's C++ compiler and current glibc:
	cd "${ED}"
	epatch "${FILESDIR}/${P}-glibc.patch"

	# java symlink might be broken if useflag is disabled:
	use java || rm opt/pgi/linux86-64/13.5/jre

	# replace PGI's curl with the stock version:
	dodir /opt/pgi/linux86-64/13.5/etc/pgi_license_tool
	dosym /usr/bin/curl /opt/pgi/linux86-64/13.5/etc/pgi_license_tool/curl
	dodir /opt/pgi/linux86/13.5/etc/pgi_license_tool
	dosym /usr/bin/curl /opt/pgi/linux86/13.5/etc/pgi_license_tool/curl
}