Lines 4-10
Link Here
|
4 |
|
4 |
|
5 |
EAPI=5 |
5 |
EAPI=5 |
6 |
|
6 |
|
7 |
inherit eutils flag-o-matic linux-info linux-mod multilib nvidia-driver \ |
7 |
MULTILIB_COMPAT=( abi_x86_{32,64} ) |
|
|
8 |
inherit eutils flag-o-matic linux-info linux-mod multilib-build nvidia-driver \ |
8 |
portability toolchain-funcs unpacker user udev |
9 |
portability toolchain-funcs unpacker user udev |
9 |
|
10 |
|
10 |
NV_URI="http://us.download.nvidia.com/XFree86/" |
11 |
NV_URI="http://us.download.nvidia.com/XFree86/" |
Lines 26-34
Link Here
|
26 |
SLOT="0" |
27 |
SLOT="0" |
27 |
KEYWORDS="-* amd64 x86 ~amd64-fbsd ~x86-fbsd" |
28 |
KEYWORDS="-* amd64 x86 ~amd64-fbsd ~x86-fbsd" |
28 |
RESTRICT="bindist mirror strip" |
29 |
RESTRICT="bindist mirror strip" |
29 |
EMULTILIB_PKG="true" |
|
|
30 |
|
30 |
|
31 |
IUSE="acpi multilib kernel_FreeBSD kernel_linux pax_kernel +tools gtk2 gtk3 +X uvm" |
31 |
IUSE="acpi kernel_FreeBSD kernel_linux pax_kernel +tools gtk2 gtk3 +X uvm" |
32 |
REQUIRED_USE=" |
32 |
REQUIRED_USE=" |
33 |
tools? ( X || ( gtk2 gtk3 ) ) |
33 |
tools? ( X || ( gtk2 gtk3 ) ) |
34 |
" |
34 |
" |
Lines 61-73
Link Here
|
61 |
X? ( |
61 |
X? ( |
62 |
<x11-base/xorg-server-1.17.99:= |
62 |
<x11-base/xorg-server-1.17.99:= |
63 |
>=x11-libs/libvdpau-0.3-r1 |
63 |
>=x11-libs/libvdpau-0.3-r1 |
64 |
multilib? ( |
64 |
abi_x86_32? ( |
65 |
|| ( |
65 |
|| ( |
66 |
( |
66 |
( |
67 |
>=x11-libs/libX11-1.6.2[abi_x86_32] |
67 |
>=x11-libs/libX11-1.6.2[abi_x86_32] |
68 |
>=x11-libs/libXext-1.3.2[abi_x86_32] |
68 |
>=x11-libs/libXext-1.3.2[abi_x86_32] |
69 |
) |
69 |
) |
70 |
app-emulation/emul-linux-x86-xlibs |
70 |
app-emulation/emul-linux-x86-xlibs[-abi_x86_32(-)] |
71 |
) |
71 |
) |
72 |
) |
72 |
) |
73 |
) |
73 |
) |
Lines 78-90
Link Here
|
78 |
S=${WORKDIR}/ |
78 |
S=${WORKDIR}/ |
79 |
|
79 |
|
80 |
pkg_pretend() { |
80 |
pkg_pretend() { |
81 |
|
|
|
82 |
if use amd64 && has_multilib_profile && \ |
83 |
[ "${DEFAULT_ABI}" != "amd64" ]; then |
84 |
eerror "This ebuild doesn't currently support changing your default ABI" |
85 |
die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}" |
86 |
fi |
87 |
|
88 |
if use kernel_linux && kernel_is ge 3 18 ; then |
81 |
if use kernel_linux && kernel_is ge 3 18 ; then |
89 |
ewarn "Gentoo supports kernels which are supported by NVIDIA" |
82 |
ewarn "Gentoo supports kernels which are supported by NVIDIA" |
90 |
ewarn "which are limited to the following kernels:" |
83 |
ewarn "which are limited to the following kernels:" |
Lines 161-175
Link Here
|
161 |
src_prepare() { |
154 |
src_prepare() { |
162 |
# Please add a brief description for every added patch |
155 |
# Please add a brief description for every added patch |
163 |
|
156 |
|
164 |
if use kernel_linux; then |
|
|
165 |
if kernel_is lt 2 6 9 ; then |
166 |
eerror "You must build this against 2.6.9 or higher kernels." |
167 |
fi |
168 |
|
169 |
# If greater than 2.6.5 use M= instead of SUBDIR= |
170 |
# convert_to_m "${NV_SRC}"/Makefile.kbuild |
171 |
fi |
172 |
|
173 |
if use pax_kernel; then |
157 |
if use pax_kernel; then |
174 |
ewarn "Using PAX patches is not supported. You will be asked to" |
158 |
ewarn "Using PAX patches is not supported. You will be asked to" |
175 |
ewarn "use a standard kernel should you have issues. Should you" |
159 |
ewarn "use a standard kernel should you have issues. Should you" |
Lines 364-383
Link Here
|
364 |
doexe "${FILESDIR}"/95-nvidia-settings |
348 |
doexe "${FILESDIR}"/95-nvidia-settings |
365 |
fi |
349 |
fi |
366 |
|
350 |
|
367 |
#doenvd "${FILESDIR}"/50nvidia-prelink-blacklist |
351 |
multilib_foreach_abi src_install-libs |
368 |
|
|
|
369 |
if has_multilib_profile && use multilib ; then |
370 |
local OABI=${ABI} |
371 |
for ABI in $(get_install_abis) ; do |
372 |
src_install-libs |
373 |
done |
374 |
ABI=${OABI} |
375 |
unset OABI |
376 |
else |
377 |
src_install-libs |
378 |
fi |
379 |
|
380 |
is_final_abi || die "failed to iterate through all ABIs" |
381 |
|
352 |
|
382 |
readme.gentoo_create_doc |
353 |
readme.gentoo_create_doc |
383 |
} |
354 |
} |
Lines 388-395
Link Here
|
388 |
local CL_ROOT="/usr/$(get_libdir)/OpenCL/vendors/nvidia" |
359 |
local CL_ROOT="/usr/$(get_libdir)/OpenCL/vendors/nvidia" |
389 |
local libdir=${NV_OBJ} |
360 |
local libdir=${NV_OBJ} |
390 |
|
361 |
|
391 |
if use kernel_linux && has_multilib_profile && \ |
362 |
if use kernel_linux && ! multilib_is_native_abi; then |
392 |
[[ ${ABI} == "x86" ]] ; then |
|
|
393 |
libdir=${NV_OBJ}/32 |
363 |
libdir=${NV_OBJ}/32 |
394 |
fi |
364 |
fi |
395 |
|
365 |
|