summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeroen Roovers <jer@gentoo.org>2016-01-30 11:27:53 +0100
committerJeroen Roovers <jer@gentoo.org>2016-01-30 11:29:54 +0100
commit731131ec436e6f4ca4db21db46ea2502641fe048 (patch)
treeaaf7d4dcc5df9fb4099f5888946e71aafea3a2ff /x11-drivers
parenteclass/gnome2-utils.eclass: fix DGSEAL_ENABLE sed (#530490 by Alexander Tsoy) (diff)
downloadgentoo-731131ec436e6f4ca4db21db46ea2502641fe048.tar.gz
gentoo-731131ec436e6f4ca4db21db46ea2502641fe048.tar.bz2
gentoo-731131ec436e6f4ca4db21db46ea2502641fe048.zip
x11-drivers/nvidia-drivers: Build tools from source (bug #562910 by Christian Strahl).
Package-Manager: portage-2.2.27
Diffstat (limited to 'x11-drivers')
-rw-r--r--x11-drivers/nvidia-drivers/Manifest1
-rw-r--r--x11-drivers/nvidia-drivers/nvidia-drivers-304.131-r1.ebuild78
-rw-r--r--x11-drivers/nvidia-drivers/nvidia-drivers-361.18-r2.ebuild17
3 files changed, 62 insertions, 34 deletions
diff --git a/x11-drivers/nvidia-drivers/Manifest b/x11-drivers/nvidia-drivers/Manifest
index 64992d8eda22..24cc8f1d141d 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 3d255f007224..50aa1069b5fd 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 e5687ecc4357..e2759ed6d295 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