FreeBSD Bugzilla – Attachment 153729 Details for
Bug 192617
[NEW PORT] x11/nvidia-hybrid-graphics: NVIDIA secondary GPU configuration - Optimus Technology support
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch to x11/nvidia-driver adding OPTIMUS option.
optimus.patch (text/plain), 4.97 KB, created by
David Mackay
on 2015-03-03 20:43:11 UTC
(
hide
)
Description:
Patch to x11/nvidia-driver adding OPTIMUS option.
Filename:
MIME Type:
Creator:
David Mackay
Created:
2015-03-03 20:43:11 UTC
Size:
4.97 KB
patch
obsolete
>diff -ruN /opt/sysadm/ports/freebsd/x11/nvidia-driver/Makefile nvidia-driver/Makefile >--- /opt/sysadm/ports/freebsd/x11/nvidia-driver/Makefile 2015-02-04 02:33:05.862347584 +0000 >+++ nvidia-driver/Makefile 2015-03-03 20:31:06.638379000 +0000 >@@ -10,7 +10,7 @@ > # slave ports instead (`x11/nvidia-driver-173', `x11/nvidia-driver-304', > # or `x11/nvidia-driver-340'). > >-PORTNAME= nvidia-driver >+PORTNAME?= nvidia-driver > DISTVERSION?= 346.35 > # Always try to set PORTREVISION as it can be overridden by the slave ports > PORTREVISION?= 0 >@@ -40,7 +40,7 @@ > # hack below to universally set NVIDIA_ROOT. Also provide X11BASE value > # since it is still used by legacy drivers. > MAKE_ENV= NVIDIA_ROOT=${WRKSRC} X11BASE=${LOCALBASE} >-SUB_FILES= pkg-deinstall pkg-install pkg-message >+SUB_FILES= pkg-message > DOCSDIR= ${PREFIX}/share/doc/NVIDIA_GLX-1.0 > MODULESDIR= lib/xorg/modules > PORTDOCS= * >@@ -91,11 +91,12 @@ > EXTRA_PATCHES+= ${FILESDIR}/security-patch-CVE-2012-4225 > .endif > >-OPTIONS_DEFINE= ACPI_PM LINUX DOCS >-OPTIONS_DEFAULT= LINUX >+OPTIONS_DEFINE= ACPI_PM LINUX DOCS OPTIMUS >+OPTIONS_DEFAULT?= LINUX > > ACPI_PM_DESC= ACPI Power Management support > LINUX_DESC= Linux compatibility support >+OPTIMUS_DESC= For use with nVIDIA Optimus > > .if ${NVVERSION} < 310.014 > OPTIONS_DEFINE+= FREEBSD_AGP >@@ -118,15 +119,26 @@ > .include <bsd.port.options.mk> > > .if ${PORT_OPTIONS:MLINUX} >+.if !${PORT_OPTIONS:MOPTIMUS} > CONFLICTS_INSTALL= linux[-_]dri-[0-9]* linux-f10-dri-[0-9]* > USE_LINUX= yes > PLIST_SUB+= LINUX="" >+.endif > .else > PLIST_SUB+= LINUX="@comment " > # Propagate WITHOUT_LINUX variable down to inner Makefiles > MAKE_ENV+= WITHOUT_LINUX=yes > .endif > >+.if ${PORT_OPTIONS:MOPTIMUS} >+PLIST_SUB+= NONOPT="@comment " >+PLIST_SUB+= OPTIMUS="" >+.else >+SUB_FILES+= pkg-install pkg-deinstall >+PLIST_SUB+= NONOPT="" >+PLIST_SUB+= OPTIMUS="@comment " >+.endif >+ > .if ${NVVERSION} < 195.022 > # ABI version is hardcoded inside the binary, so specify it explicitly here > LIB_DEPENDS= libm.so.3:${PORTSDIR}/misc/compat5x >@@ -245,16 +257,33 @@ > .endif > # Adjust installation paths of some conflicting files (shared also between > # libGL, libEGL, libglesv2 and xorg-server) to ease package manager work. >- ${REINPLACE_CMD} -e '/LIBDIR/s:xorg/modules/extensions:&/.nvidia:' \ >+.if ${PORT_OPTIONS:MOPTIMUS} >+ ${REINPLACE_CMD} -e '/LIBDIR/s:xorg/modules/extensions:&/.nvidia_optimus:' \ > ${WRKSRC}/x11/extension/Makefile >- ${REINPLACE_CMD} -e '/LIBDIR/s:lib:&/.nvidia:' \ >+ ${REINPLACE_CMD} -e '/LIBDIR/s:lib:&/.nvidia_optimus:' \ > ${WRKSRC}/lib/libGL/Makefile >+ ${REINPLACE_CMD} -e '/LIBDIR/s:lib:&/.nvidia_optimus:' \ >+ ${WRKSRC}/lib/compat/libGL/Makefile >+.else >+ ${REINPLACE_CMD} -e '/LIBDIR/s:xorg/modules/extensions:&/.nvidia:' \ >+ ${WRKSRC}/x11/extension/Makefile >+ ${REINPLACE_CMD} -e '/LIBDIR/s:lib:&/.nvidia:' \ >+ ${WRKSRC}/lib/libGL/Makefile >+.endif >+ > .if ${NVVERSION} >= 331.013 >+.if ${PORT_OPTIONS:MOPTIMUS} >+ ${REINPLACE_CMD} -e '/LIBDIR/s:lib:&/.nvidia_optimus:' \ >+ ${WRKSRC}/lib/libEGL/Makefile >+ ${REINPLACE_CMD} -e '/LIBDIR/s:lib:&/.nvidia_optimus:' \ >+ ${WRKSRC}/lib/libGLESv2/Makefile >+.else > ${REINPLACE_CMD} -e '/LIBDIR/s:lib:&/.nvidia:' \ > ${WRKSRC}/lib/libEGL/Makefile > ${REINPLACE_CMD} -e '/LIBDIR/s:lib:&/.nvidia:' \ > ${WRKSRC}/lib/libGLESv2/Makefile > .endif >+.endif > # Do not execute afterinstall target (prevent automatic module registration > # and "smart" installation of conflicting files heuristics) > ${REINPLACE_CMD} -e 's/afterinstall/&_dontexecute/' ${WRKSRC}/Makefile >diff -ruN /opt/sysadm/ports/freebsd/x11/nvidia-driver/pkg-plist nvidia-driver/pkg-plist >--- /opt/sysadm/ports/freebsd/x11/nvidia-driver/pkg-plist 2014-11-28 01:27:00.603678724 +0000 >+++ nvidia-driver/pkg-plist 2015-03-03 20:28:02.869031000 +0000 >@@ -1,12 +1,18 @@ > bin/nvidia-bug-report.sh >-lib/.nvidia/libGL.so >-lib/.nvidia/libGL.so.1 >-lib/.nvidia/libEGL.so >-lib/.nvidia/libEGL.so.1 >+%%NONOPT%%lib/.nvidia/libGL.so >+%%NONOPT%%lib/.nvidia/libGL.so.1 >+%%NONOPT%%lib/.nvidia/libEGL.so >+%%NONOPT%%lib/.nvidia/libEGL.so.1 >+%%OPTIMUS%%lib/.nvidia_optimus/libGL.so >+%%OPTIMUS%%lib/.nvidia_optimus/libGL.so.1 >+%%OPTIMUS%%lib/.nvidia_optimus/libEGL.so >+%%OPTIMUS%%lib/.nvidia_optimus/libEGL.so.1 > lib/libGLESv1_CM.so > lib/libGLESv1_CM.so.1 >-lib/.nvidia/libGLESv2.so >-lib/.nvidia/libGLESv2.so.2 >+%%NONOPT%%lib/.nvidia/libGLESv2.so >+%%NONOPT%%lib/.nvidia/libGLESv2.so.2 >+%%OPTIMUS%%lib/.nvidia_optimus/libGLESv2.so >+%%OPTIMUS%%lib/.nvidia_optimus/libGLESv2.so.2 > lib/libGLcore.so > lib/libGLcore.so.1 > lib/libXvMCNVIDIA.a >@@ -24,8 +30,10 @@ > lib/libvdpau_nvidia.so > lib/vdpau/libvdpau_nvidia.so.1 > %%MODULESDIR%%/drivers/nvidia_drv.so >-%%MODULESDIR%%/extensions/.nvidia/libglx.so >-%%MODULESDIR%%/extensions/.nvidia/libglx.so.1 >+%%NONOPT%%%%MODULESDIR%%/extensions/.nvidia/libglx.so >+%%NONOPT%%%%MODULESDIR%%/extensions/.nvidia/libglx.so.1 >+%%OPTIMUS%%%%MODULESDIR%%/extensions/.nvidia_optimus/libglx.so >+%%OPTIMUS%%%%MODULESDIR%%/extensions/.nvidia_optimus/libglx.so.1 > %%MODULESDIR%%/libnvidia-wfb.so.1 > /%%KMODDIR%%/nvidia.ko > %%LINUX%%%%LINUXBASE%%/usr/lib/libEGL.so.%%SHLIB_VERSION%%
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 192617
:
145720
|
145721
|
147752
|
147753
| 153729 |
196829
|
224760