commit: 731131ec436e6f4ca4db21db46ea2502641fe048
Author: Jeroen Roovers <jer <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 30 10:27:53 2016 +0000
Commit: Jeroen Roovers <jer <AT> gentoo <DOT> org>
CommitDate: Sat Jan 30 10:29:54 2016 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=731131ec
x11-drivers/nvidia-drivers: Build tools from source (bug #562910 by Christian
Strahl).
Package-Manager: portage-2.2.27
x11-drivers/nvidia-drivers/Manifest | 1 +
.../nvidia-drivers-304.131-r1.ebuild | 78 ++++++++++++++--------
.../nvidia-drivers/nvidia-drivers-361.18-r2.ebuild | 17 ++---
3 files changed, 62 insertions(+), 34 deletions(-)
diff --git a/x11-drivers/nvidia-drivers/Manifest
b/x11-drivers/nvidia-drivers/Manifest
index 64992d8..24cc8f1 100644
--- a/x11-drivers/nvidia-drivers/Manifest
+++ b/x11-drivers/nvidia-drivers/Manifest
@@ -40,4 +40,5 @@ DIST NVIDIA-Linux-x86_64-355.11.run 76490009 SHA256
a59b425381add9d9058dc2d987bf
DIST NVIDIA-Linux-x86_64-358.16.run 77353969 SHA256
a942cdb29ed715ff1ce25beb06b6c2490126b98ef8bee5d9973967b557596bf2 SHA512
4ae43f5e8c311d6c97eb89b02504bf52e3a947c71662f30641988a78eb9fe083370124aeee3b89db74f8ee50f454338db98dc7abeb35a242ba5729fefccead77
WHIRLPOOL
3dd0dcd4b455fcac12d55f40cfb8db0536af82d90c32b8471528b44a9fa1b3f3706ac26558d7395f82649c37550fded17b48d75d5584b3a41390c94bb1135c48
DIST NVIDIA-Linux-x86_64-361.18.run 86447500 SHA256
94cccc3ff10ee9544f60bf1d32d04dddabc5103880b57895ea60e1167b89a155 SHA512
d307b50226b145761de69892c51af3cd4498b91f9c56b5d5bf7b1f4f00cc073af586008cb060a16c036426240853ed30d244e63d3f727eadf39338736a5c0b02
WHIRLPOOL
87e03bfe694f708d57fb548c01d853bbae1335a696bce225ce997000387189b55c27644922a051e9a50dfa94ec917bda14b6ed4b76f345c8adc8d8f54aebff97
DIST NVIDIA-Linux-x86_64-96.43.23-pkg2.run 15962375 SHA256
ce8d8253e7dab7da63fbdac449ebf190cd0c10cbfffea0f8d0165515f851bc64 SHA512
04bec1187a6024a2b9839f008ec829281f1f2602dae2e639030bc385943186506bcaa2b46a230b2ab87f9217190841abc62f9e2d6395ab5559623389c31c6563
WHIRLPOOL
0651c44a51a1a06fcff5bfddbf9c3e408977e03263c7fe806cb6c01f9fe92f716dfe4e5190ffe1048bde72fcffdc8bca8267e74dd43ba5c9dfb22b6201fcc2bb
+DIST nvidia-settings-304.131.tar.bz2 1480447 SHA256
d36d2d1ae7c1bb72cd18e713470546d2aa7057624b1f61319daf559a94054d29 SHA512
9269f54f87581e29e6d7cabeaf989c70cb27aa55f6b8f5f1c71b8a14401326d06ea194710722b41283cca56f5808b90a9b1fb12158d48c6332cce15a701c5796
WHIRLPOOL
be8e38a09a0bfa40267b9cdae2800a9ef00a89e28e618b743b7acb0cd9ece4b242b74ced32018d735989592300b49b2ee683caa11a1e161bcecf070a58952dfd
DIST nvidia-settings-361.18.tar.bz2 1570821 SHA256
5e821bf9c92931da7c4ac2cac4c61a83e7f74641902935232cad747511fab363 SHA512
1a19ebb6773b53564a7996c8f963c161df599ed8ca577f505fbed1181f144a5e53fa970e3fee7fceed16909bd012f74f9af74080314ae9de9356894df9b1be4d
WHIRLPOOL
23ff413900fca81427d755ecb5889dbb69033e101cf7c2f3edea4971defd03aedee95f5488779f634c690c05bfabe0763baf3dbf6377de950cabe48ad9c72684
diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-304.131-r1.ebuild
b/x11-drivers/nvidia-drivers/nvidia-drivers-304.131-r1.ebuild
index 3d255f0..50aa106 100644
--- a/x11-drivers/nvidia-drivers/nvidia-drivers-304.131-r1.ebuild
+++ b/x11-drivers/nvidia-drivers/nvidia-drivers-304.131-r1.ebuild
@@ -19,27 +19,19 @@ SRC_URI="
amd64? ( ${NV_URI}Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run )
x86-fbsd? ( ${NV_URI}FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )
x86? ( ${NV_URI}Linux-x86/${PV}/${X86_NV_PACKAGE}.run )
+ tools? (
ftp://download.nvidia.com/XFree86/nvidia-settings/nvidia-settings-${PV}.tar.bz2
)
"
LICENSE="GPL-2 NVIDIA-r1"
SLOT="0/${PV%.*}"
KEYWORDS="-* ~amd64 ~x86 ~amd64-fbsd ~x86-fbsd"
-IUSE="acpi multilib kernel_FreeBSD kernel_linux pax_kernel +tools +X"
+IUSE="acpi multilib kernel_FreeBSD kernel_linux pax_kernel static-libs +tools
+X"
RESTRICT="bindist mirror strip"
EMULTILIB_PKG="true"
-COMMON="app-eselect/eselect-opencl
+COMMON="
+ app-eselect/eselect-opencl
kernel_linux? ( >=sys-libs/glibc-2.6.1 )
- X? (
- >=app-eselect/eselect-opengl-1.0.9
- )"
-DEPEND="${COMMON}
- kernel_linux? (
- virtual/linux-sources
- virtual/pkgconfig
- )"
-RDEPEND="${COMMON}
- acpi? ( sys-power/acpid )
tools? (
dev-libs/atk
dev-libs/glib:2
@@ -51,6 +43,18 @@ RDEPEND="${COMMON}
x11-libs/pangox-compat
)
X? (
+ >=app-eselect/eselect-opengl-1.0.9
+ )
+"
+DEPEND="${COMMON}
+ kernel_linux? (
+ virtual/linux-sources
+ virtual/pkgconfig
+ )"
+RDEPEND="${COMMON}
+ acpi? ( sys-power/acpid )
+ tools? ( !media-video/nvidia-settings )
+ X? (
<x11-base/xorg-server-1.18.99:=
x11-libs/libXvMC
multilib? (
@@ -142,15 +146,6 @@ pkg_setup() {
fi
}
-src_unpack() {
- if ! use kernel_FreeBSD; then
- cd "${S}"
- unpack_makeself
- else
- unpack ${A}
- fi
-}
-
src_prepare() {
# Please add a brief description for every added patch
@@ -191,6 +186,25 @@ src_compile() {
elif use kernel_linux; then
MAKEOPTS=-j1 linux-mod_src_compile
fi
+
+ if use tools; then
+ emake -C "${S}"/nvidia-settings-${PV}/src/libXNVCtrl clean
+ emake -C "${S}"/nvidia-settings-${PV}/src/libXNVCtrl \
+ AR="$(tc-getAR)" \
+ CC="$(tc-getCC)" \
+ RANLIB="$(tc-getRANLIB)" \
+ libXNVCtrl.a
+ emake -C "${S}"/nvidia-settings-${PV}/src \
+ AR="$(tc-getAR)" \
+ CC="$(tc-getCC)" \
+ LD="$(tc-getCC)" \
+ LIBDIR="$(get_libdir)" \
+ NVML_ENABLED=0 \
+ NV_USE_BUNDLED_LIBJANSSON=0 \
+ NV_VERBOSE=1 \
+ RANLIB="$(tc-getRANLIB)" \
+ STRIP_CMD=true
+ fi
}
# Install nvidia library:
@@ -323,17 +337,29 @@ src_install() {
newinitd "${FILESDIR}/nvidia-smi.init" nvidia-smi
fi
- if use tools; then
- doexe ${NV_OBJ}/nvidia-settings
- fi
-
dobin ${NV_OBJ}/nvidia-bug-report.sh
# Desktop entries for nvidia-settings
if use tools ; then
+ emake -C "${S}"/nvidia-settings-${PV}/src/ \
+ DESTDIR="${D}" \
+ LIBDIR="${D}/usr/$(get_libdir)" \
+ PREFIX=/usr \
+ NV_USE_BUNDLED_LIBJANSSON=0 \
+ install
+
+ use static-libs && \
+ dolib.a
"${S}"/nvidia-settings-${PV}/src/libXNVCtrl/libXNVCtrl.a
+
+ insinto /usr/include/NVCtrl
+ doins "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/*.h
+
# There is no icon in the FreeBSD tarball.
- use kernel_FreeBSD || newicon ${NV_OBJ}/nvidia-settings.png
${PN}-settings.png
+ use kernel_FreeBSD || \
+ newicon ${NV_OBJ}/nvidia-settings.png ${PN}-settings.png
+
domenu "${FILESDIR}"/${PN}-settings.desktop
+
exeinto /etc/X11/xinit/xinitrc.d
doexe "${FILESDIR}"/95-nvidia-settings
fi
diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-361.18-r2.ebuild
b/x11-drivers/nvidia-drivers/nvidia-drivers-361.18-r2.ebuild
index e5687ec..e2759ed 100644
--- a/x11-drivers/nvidia-drivers/nvidia-drivers-361.18-r2.ebuild
+++ b/x11-drivers/nvidia-drivers/nvidia-drivers-361.18-r2.ebuild
@@ -373,25 +373,26 @@ src_install() {
doins nvidia-application-profiles-${PV}-key-documentation
insinto /etc/nvidia
- newins nvidia-application-profiles-${PV}-rc
nvidia-application-profiles-rc
+ newins \
+ nvidia-application-profiles-${PV}-rc
nvidia-application-profiles-rc
- use static-libs && dolib
"${S}"/nvidia-settings-${PV}/src/libXNVCtrl/libXNVCtrl.a
+ use static-libs && \
+ dolib.a
"${S}"/nvidia-settings-${PV}/src/libXNVCtrl/libXNVCtrl.a
insinto /usr/include/NVCtrl
doins "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/*.h
- fi
-
- dobin ${NV_OBJ}/nvidia-bug-report.sh
- # Desktop entries for nvidia-settings
- if use tools; then
# There is no icon in the FreeBSD tarball.
- use kernel_FreeBSD || newicon ${NV_OBJ}/nvidia-settings.png
${PN}-settings.png
+ use kernel_FreeBSD || \
+ newicon ${NV_OBJ}/nvidia-settings.png ${PN}-settings.png
+
domenu "${FILESDIR}"/${PN}-settings.desktop
+
exeinto /etc/X11/xinit/xinitrc.d
doexe "${FILESDIR}"/95-nvidia-settings
fi
+ dobin ${NV_OBJ}/nvidia-bug-report.sh
#doenvd "${FILESDIR}"/50nvidia-prelink-blacklist
if has_multilib_profile && use multilib; then