Lines 16-21
PORTREVISION?= 0
Link Here
|
16 |
CATEGORIES= x11 |
16 |
CATEGORIES= x11 |
17 |
MASTER_SITES= NVIDIA/XFree86/FreeBSD-${ARCH_SUFX}/${DISTVERSION} |
17 |
MASTER_SITES= NVIDIA/XFree86/FreeBSD-${ARCH_SUFX}/${DISTVERSION} |
18 |
DISTNAME= NVIDIA-FreeBSD-${ARCH_SUFX}-${DISTVERSION} |
18 |
DISTNAME= NVIDIA-FreeBSD-${ARCH_SUFX}-${DISTVERSION} |
|
|
19 |
DISTFILES= ${DISTNAME}${EXTRACT_SUFX} |
20 |
EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX} |
19 |
|
21 |
|
20 |
MAINTAINER= danfe@FreeBSD.org |
22 |
MAINTAINER= danfe@FreeBSD.org |
21 |
COMMENT= NVidia graphics card binary drivers for hardware OpenGL rendering |
23 |
COMMENT= NVidia graphics card binary drivers for hardware OpenGL rendering |
Lines 40-45
USE_LDCONFIG= yes
Link Here
|
40 |
# hack below to universally set NVIDIA_ROOT. Also provide X11BASE value |
42 |
# hack below to universally set NVIDIA_ROOT. Also provide X11BASE value |
41 |
# since it is still used by legacy drivers. |
43 |
# since it is still used by legacy drivers. |
42 |
MAKE_ENV= NVIDIA_ROOT=${WRKSRC} X11BASE=${LOCALBASE} |
44 |
MAKE_ENV= NVIDIA_ROOT=${WRKSRC} X11BASE=${LOCALBASE} |
|
|
45 |
PLIST_RE= # empty |
43 |
SUB_FILES= pkg-deinstall pkg-install pkg-message nvidia.conf |
46 |
SUB_FILES= pkg-deinstall pkg-install pkg-message nvidia.conf |
44 |
DOCSDIR= ${PREFIX}/share/doc/NVIDIA_GLX-1.0 |
47 |
DOCSDIR= ${PREFIX}/share/doc/NVIDIA_GLX-1.0 |
45 |
MODULESDIR= lib/xorg/modules |
48 |
MODULESDIR= lib/xorg/modules |
Lines 85-90
EXTRA_PATCHES+= ${FILESDIR}/extra-patch-src_nvidia-mod
Link Here
|
85 |
OPTIONS_DEFINE= ACPI_PM LINUX WBINVD DOCS |
88 |
OPTIONS_DEFINE= ACPI_PM LINUX WBINVD DOCS |
86 |
OPTIONS_DEFINE_i386= PAE |
89 |
OPTIONS_DEFINE_i386= PAE |
87 |
OPTIONS_DEFAULT= LINUX |
90 |
OPTIONS_DEFAULT= LINUX |
|
|
91 |
OPTIONS_SUB= yes |
88 |
|
92 |
|
89 |
ACPI_PM_DESC= ACPI Power Management support |
93 |
ACPI_PM_DESC= ACPI Power Management support |
90 |
LINUX_DESC= Linux compatibility support |
94 |
LINUX_DESC= Linux compatibility support |
Lines 96-117
OPTIONS_DEFINE+= FREEBSD_AGP
Link Here
|
96 |
FREEBSD_AGP_DESC= Use FreeBSD AGP GART driver |
100 |
FREEBSD_AGP_DESC= Use FreeBSD AGP GART driver |
97 |
.endif |
101 |
.endif |
98 |
|
102 |
|
99 |
PLIST_SUB+= LINUXBASE=${LINUXBASE} SHLIB_VERSION=${PORTVERSION} \ |
103 |
LINUX_MASTER_SITES=NVIDIA/XFree86/Linux-${LINUX_ARCH_SUFX}/${DISTVERSION}/:linux |
|
|
104 |
LINUX_DISTFILES=NVIDIA-Linux-${LINUX_ARCH_SUFX}-${DISTVERSION}.run:linux |
105 |
LINUX_USES= linux |
106 |
LINUX_USE= LINUX=xorglibs |
107 |
|
108 |
LINUX_ARCH_SUFX=${LINUX_ARCH:S/i386/x86/} |
109 |
LINUX_LIBDIR= /usr/lib${LINUX_ARCH:S/i386//:S/x86_64/64/} |
110 |
|
111 |
LINUX_LIBS= libcuda.so.${PORTVERSION} \ |
112 |
libnvcuvid.so.${PORTVERSION} \ |
113 |
libnvidia-cfg.so.${PORTVERSION} \ |
114 |
libnvidia-compiler.so.${PORTVERSION} \ |
115 |
libnvidia-glcore.so.${PORTVERSION} \ |
116 |
libnvidia-ml.so.${PORTVERSION} \ |
117 |
libnvidia-opencl.so.${PORTVERSION} \ |
118 |
libnvidia-tls.so.${PORTVERSION} \ |
119 |
libvdpau_nvidia.so.${PORTVERSION} \ |
120 |
tls/libnvidia-tls.so.${PORTVERSION} |
121 |
LINUX_LINKS= libcuda.so.${PORTVERSION} libcuda.so.1 \ |
122 |
libcuda.so.${PORTVERSION} libcuda.so \ |
123 |
libnvcuvid.so.${PORTVERSION} libnvcuvid.so.1 \ |
124 |
libnvcuvid.so.${PORTVERSION} libnvcuvid.so \ |
125 |
libnvidia-cfg.so.${PORTVERSION} libnvidia-cfg.so.1 \ |
126 |
libnvidia-cfg.so.${PORTVERSION} libnvidia-cfg.so \ |
127 |
libnvidia-ml.so.${PORTVERSION} libnvidia-ml.so.1 \ |
128 |
libnvidia-ml.so.${PORTVERSION} libnvidia-ml.so \ |
129 |
libnvidia-opencl.so.${PORTVERSION} libnvidia-opencl.so.1 \ |
130 |
libvdpau_nvidia.so.${PORTVERSION} vdpau/libvdpau_nvidia.so.1 |
131 |
LINUX32_LIBS= libcuda.so.${PORTVERSION} \ |
132 |
libnvidia-compiler.so.${PORTVERSION} \ |
133 |
libnvidia-glcore.so.${PORTVERSION} \ |
134 |
libnvidia-ml.so.${PORTVERSION} \ |
135 |
libnvidia-opencl.so.${PORTVERSION} \ |
136 |
libnvidia-tls.so.${PORTVERSION} \ |
137 |
libvdpau_nvidia.so.${PORTVERSION} \ |
138 |
tls/libnvidia-tls.so.${PORTVERSION} |
139 |
LINUX32_LINKS= libcuda.so.${PORTVERSION} libcuda.so.1 \ |
140 |
libcuda.so.${PORTVERSION} libcuda.so \ |
141 |
libnvidia-ml.so.${PORTVERSION} libnvidia-ml.so.1 \ |
142 |
libnvidia-ml.so.${PORTVERSION} libnvidia-ml.so \ |
143 |
libnvidia-opencl.so.${PORTVERSION} libnvidia-opencl.so.1 \ |
144 |
libvdpau_nvidia.so.${PORTVERSION} vdpau/libvdpau_nvidia.so.1 |
145 |
LINUX_PROGS= nvidia-debugdump nvidia-settings nvidia-smi nvidia-xconfig |
146 |
LINUX_MANS= nvidia-settings nvidia-smi nvidia-xconfig |
147 |
LINUX_DATA= nvidia.icd /etc/OpenCL/vendors |
148 |
.if ${NVVERSION} >= 375.010 |
149 |
LINUX_DATA+= 10_nvidia.json /usr/share/glvnd/egl_vendor.d |
150 |
.else |
151 |
PLIST_RE+= '\,${LINUXBASE}/usr/share/glvnd,d' |
152 |
.endif |
153 |
.if ${NVVERSION} >= 378.009 |
154 |
LINUX_DATA+= 10_nvidia_wayland.json /usr/share/egl/egl_external_platform.d |
155 |
.else |
156 |
PLIST_RE+= '\,${LINUXBASE}/usr/share/egl,d' |
157 |
.endif |
158 |
.if ${NVVERSION} >= 390.042 |
159 |
LINUX_LIBS+= libEGL.so.1.1.0 |
160 |
LINUX_LINKS+= libEGL.so.1.1.0 libEGL.so.1 |
161 |
LINUX32_LIBS+= libEGL.so.1.1.0 |
162 |
LINUX32_LINKS+= libEGL.so.1.1.0 libEGL.so.1 |
163 |
PLIST_RE+= '\,${LINUXBASE},s/(libEGL\.so)\.X/\1.1.1.0/' |
164 |
.elif ${NVVERSION} >= 355.006 |
165 |
LINUX_LIBS+= libEGL.so.1 |
166 |
LINUX32_LIBS+= libEGL.so.1 |
167 |
PLIST_RE+= '\,${LINUXBASE}.*libEGL\.so\.X,d' |
168 |
.elif ${NVVERSION} >= 331.013 |
169 |
LINUX_LIBS+= libEGL.so.${PORTVERSION} |
170 |
LINUX_LINKS+= libEGL.so.${PORTVERSION} libEGL.so.1 |
171 |
LINUX32_LIBS+= libEGL.so.${PORTVERSION} |
172 |
LINUX32_LINKS+= libEGL.so.${PORTVERSION} libEGL.so.1 |
173 |
PLIST_RE+= '\,${LINUXBASE},s/(libEGL\.so)\.X/\1.${PORTVERSION}/' |
174 |
.else |
175 |
PLIST_RE+= '\,${LINUXBASE}.*libEGL\.so,d' |
176 |
.endif |
177 |
.if ${NVVERSION} >= 361.016 |
178 |
LINUX_LIBS+= libEGL_nvidia.so.${PORTVERSION} |
179 |
LINUX_LINKS+= libEGL_nvidia.so.${PORTVERSION} libEGL_nvidia.so.0 |
180 |
LINUX32_LIBS+= libEGL_nvidia.so.${PORTVERSION} |
181 |
LINUX32_LINKS+= libEGL_nvidia.so.${PORTVERSION} libEGL_nvidia.so.0 |
182 |
.elif ${NVVERSION} >= 355.006 |
183 |
LINUX_LIBS+= libEGL_nvidia.so.0 |
184 |
PLIST_RE+= '\,${LINUXBASE}.*libEGL_nvidia\.so\.${PORTVERSION},d' |
185 |
.else |
186 |
PLIST_RE+= '\,${LINUXBASE}.*libEGL_nvidia\.so,d' |
187 |
.endif |
188 |
.if ${NVVERSION} >= 390.042 |
189 |
LINUX_LIBS+= libGL.so.1.7.0 |
190 |
LINUX_LINKS+= libGL.so.1.7.0 libGL.so.1 |
191 |
LINUX32_LIBS+= libGL.so.1.7.0 |
192 |
LINUX32_LINKS+= libGL.so.1.7.0 libGL.so.1 |
193 |
PLIST_RE+= '\,${LINUXBASE},s/(libGL\.so)\.X/\1.1.7.0/' |
194 |
.elif ${NVVERSION} >= 361.028 |
195 |
LINUX_LIBS+= libGL.so.1.0.0 |
196 |
LINUX_LINKS+= libGL.so.1.0.0 libGL.so.1 |
197 |
LINUX32_LIBS+= libGL.so.1.0.0 |
198 |
LINUX32_LINKS+= libGL.so.1.0.0 libGL.so.1 |
199 |
PLIST_RE+= '\,${LINUXBASE},s/(libGL\.so)\.X/\1.1.0.0/' |
200 |
.elif ${NVVERSION} >= 361.016 |
201 |
LINUX_LIBS+= libGL.so.1 |
202 |
LINUX32_LIBS+= libGL.so.1 |
203 |
PLIST_RE+= '\,${LINUXBASE}.*libGL\.so\.X,d' |
204 |
.else |
205 |
LINUX_LIBS+= libGL.so.${PORTVERSION} |
206 |
LINUX_LINKS+= libGL.so.${PORTVERSION} libGL.so.1 |
207 |
LINUX32_LIBS+= libGL.so.${PORTVERSION} |
208 |
LINUX32_LINKS+= libGL.so.${PORTVERSION} libGL.so.1 |
209 |
PLIST_RE+= '\,${LINUXBASE},s/(libGL\.so)\.X/\1.${PORTVERSION}/' |
210 |
.endif |
211 |
.if ${NVVERSION} >= 390.042 |
212 |
LINUX_LIBS+= libGLESv1_CM.so.1.2.0 \ |
213 |
libGLESv2.so.2.1.0 |
214 |
LINUX_LINKS+= libGLESv1_CM.so.1.2.0 libGLESv1_CM.so.1 \ |
215 |
libGLESv2.so.2.1.0 libGLESv2.so.2 |
216 |
LINUX32_LIBS+= libGLESv1_CM.so.1.2.0 \ |
217 |
libGLESv2.so.2.1.0 |
218 |
LINUX32_LINKS+= libGLESv1_CM.so.1.2.0 libGLESv1_CM.so.1 \ |
219 |
libGLESv2.so.2.1.0 libGLESv2.so.2 |
220 |
PLIST_RE+= '\,${LINUXBASE},s/(libGLESv1_CM\.so)\.X/\1.1.2.0/' \ |
221 |
'\,${LINUXBASE},s/(libGLESv2\.so)\.X/\1.2.1.0/' |
222 |
.elif ${NVVERSION} >= 361.016 |
223 |
LINUX_LIBS+= libGLESv1_CM.so.1 \ |
224 |
libGLESv2.so.2 |
225 |
LINUX32_LIBS+= libGLESv1_CM.so.1 \ |
226 |
libGLESv2.so.2 |
227 |
PLIST_RE+= '\,${LINUXBASE}.*GLESv(1_CM|2)\.so\.X,d' |
228 |
.elif ${NVVERSION} >= 331.013 |
229 |
LINUX_LIBS+= libGLESv1_CM.so.${PORTVERSION} \ |
230 |
libGLESv2.so.${PORTVERSION} |
231 |
LINUX_LINKS+= libGLESv1_CM.so.${PORTVERSION} libGLESv1_CM.so.1 \ |
232 |
libGLESv2.so.${PORTVERSION} libGLESv2.so.2 |
233 |
LINUX32_LIBS+= libGLESv1_CM.so.${PORTVERSION} \ |
234 |
libGLESv2.so.${PORTVERSION} |
235 |
LINUX32_LINKS+= libGLESv1_CM.so.${PORTVERSION} libGLESv1_CM.so.1 \ |
236 |
libGLESv2.so.${PORTVERSION} libGLESv2.so.2 |
237 |
PLIST_RE+= '\,${LINUXBASE},s/(libGLESv(1_CM|2)\.so)\.X/\1.${PORTVERSION}/' |
238 |
.else |
239 |
PLIST_RE+= '\,${LINUXBASE}.*libGLESv(1_CM|2)\.so,d' |
240 |
.endif |
241 |
.if ${NVVERSION} >= 361.016 |
242 |
LINUX_LIBS+= libGLESv1_CM_nvidia.so.${PORTVERSION} \ |
243 |
libGLESv2_nvidia.so.${PORTVERSION} \ |
244 |
libGLX.so.0 \ |
245 |
libGLX_nvidia.so.${PORTVERSION} \ |
246 |
libnvidia-fatbinaryloader.so.${PORTVERSION} \ |
247 |
libnvidia-ptxjitcompiler.so.${PORTVERSION} |
248 |
LINUX_LINKS+= libGLESv1_CM_nvidia.so.${PORTVERSION} libGLESv1_CM_nvidia.so.1 \ |
249 |
libGLESv2_nvidia.so.${PORTVERSION} libGLESv2_nvidia.so.2 \ |
250 |
libGLX.so.0 libGLX.so \ |
251 |
libGLX_nvidia.so.${PORTVERSION} libGLX_nvidia.so.0 \ |
252 |
libGLX_nvidia.so.${PORTVERSION} libGLX_indirect.so.0 \ |
253 |
libnvidia-ptxjitcompiler.so.${PORTVERSION} libnvidia-ptxjitcompiler.so.1 \ |
254 |
libnvidia-ptxjitcompiler.so.${PORTVERSION} libnvidia-ptxjitcompiler.so |
255 |
LINUX32_LIBS+= libGLESv1_CM_nvidia.so.${PORTVERSION} \ |
256 |
libGLESv2_nvidia.so.${PORTVERSION} \ |
257 |
libGLX.so.0 \ |
258 |
libGLX_nvidia.so.${PORTVERSION} \ |
259 |
libnvidia-fatbinaryloader.so.${PORTVERSION} \ |
260 |
libnvidia-ptxjitcompiler.so.${PORTVERSION} |
261 |
LINUX32_LINKS+= libGLESv1_CM_nvidia.so.${PORTVERSION} libGLESv1_CM_nvidia.so.1 \ |
262 |
libGLESv2_nvidia.so.${PORTVERSION} libGLESv2_nvidia.so.2 \ |
263 |
libGLX.so.0 libGLX.so \ |
264 |
libGLX_nvidia.so.${PORTVERSION} libGLX_nvidia.so.0 \ |
265 |
libGLX_nvidia.so.${PORTVERSION} libGLX_indirect.so.0 \ |
266 |
libnvidia-ptxjitcompiler.so.${PORTVERSION} libnvidia-ptxjitcompiler.so.1 \ |
267 |
libnvidia-ptxjitcompiler.so.${PORTVERSION} libnvidia-ptxjitcompiler.so |
268 |
.else |
269 |
PLIST_RE+= '\,${LINUXBASE}.*libGLESv(1_CM|2)_nvidia\.so,d' \ |
270 |
'\,${LINUXBASE}.*libGLX(_nvidia|_indirect)?\.so,d' \ |
271 |
'\,${LINUXBASE}.*libnvidia-fatbinaryloader\.so,d' \ |
272 |
'\,${LINUXBASE}.*libnvidia-ptxjitcompiler\.so,d' |
273 |
.endif |
274 |
.if ${NVVERSION} >= 355.006 |
275 |
LINUX_LIBS+= libGLdispatch.so.0 \ |
276 |
libOpenGL.so.0 |
277 |
LINUX_LINKS+= libOpenGL.so.0 libOpenGL.so |
278 |
LINUX32_LIBS+= libGLdispatch.so.0 \ |
279 |
libOpenGL.so.0 |
280 |
LINUX32_LINKS+= libOpenGL.so.0 libOpenGL.so |
281 |
.else |
282 |
PLIST_RE+= '\,${LINUXBASE}.*libGLdispatch\.so,d' \ |
283 |
'\,${LINUXBASE}.*libOpenGL\.so,d' |
284 |
.endif |
285 |
.if ${NVVERSION} >= 387.012 |
286 |
LINUX_LIBS+= libnvidia-egl-wayland.so.1.0.2 |
287 |
LINUX_LINKS+= libnvidia-egl-wayland.so.1.0.2 libnvidia-egl-wayland.so.1 |
288 |
PLIST_RE+= '\,${LINUXBASE},s/(libnvidia-egl-wayland\.so)\.X/\1.1.0.2/' |
289 |
.elif ${NVVERSION} >= 378.013 |
290 |
LINUX_LIBS+= libnvidia-egl-wayland.so.1.0.1 |
291 |
LINUX_LINKS+= libnvidia-egl-wayland.so.1.0.1 libnvidia-egl-wayland.so.1 |
292 |
PLIST_RE+= '\,${LINUXBASE},s/(libnvidia-egl-wayland\.so)\.X/\1.1.0.1/' |
293 |
.elif ${NVVERSION} >= 378.009 |
294 |
LINUX_LIBS+= libnvidia-egl-wayland.so.1.0.0 |
295 |
LINUX_LINKS+= libnvidia-egl-wayland.so.1.0.0 libnvidia-egl-wayland.so.1 |
296 |
PLIST_RE+= '\,${LINUXBASE},s/(libnvidia-egl-wayland\.so)\.X/\1.1.0.0/' |
297 |
.elif ${NVVERSION} >= 364.012 |
298 |
LINUX_LIBS+= libnvidia-egl-wayland.so.${PORTVERSION} |
299 |
LINUX_LINKS+= libnvidia-egl-wayland.so.${PORTVERSION} libnvidia-egl-wayland.so.1 |
300 |
PLIST_RE+= '\,${LINUXBASE},s/(libnvidia-egl-wayland\.so)\.X/\1.${PORTVERSION}/' |
301 |
.else |
302 |
PLIST_RE+= '\,${LINUXBASE}.*libnvidia-egl-wayland\.so,d' |
303 |
.endif |
304 |
.if ${NVVERSION} >= 331.013 |
305 |
LINUX_LIBS+= libnvidia-eglcore.so.${PORTVERSION} \ |
306 |
libnvidia-fbc.so.${PORTVERSION} \ |
307 |
libnvidia-glsi.so.${PORTVERSION} \ |
308 |
libnvidia-ifr.so.${PORTVERSION} |
309 |
LINUX_LINKS+= libnvidia-fbc.so.${PORTVERSION} libnvidia-fbc.so.1 \ |
310 |
libnvidia-fbc.so.${PORTVERSION} libnvidia-fbc.so \ |
311 |
libnvidia-ifr.so.${PORTVERSION} libnvidia-ifr.so.1 \ |
312 |
libnvidia-ifr.so.${PORTVERSION} libnvidia-ifr.so |
313 |
LINUX32_LIBS+= libnvidia-eglcore.so.${PORTVERSION} \ |
314 |
libnvidia-fbc.so.${PORTVERSION} \ |
315 |
libnvidia-glsi.so.${PORTVERSION} \ |
316 |
libnvidia-ifr.so.${PORTVERSION} |
317 |
LINUX32_LINKS+= libnvidia-fbc.so.${PORTVERSION} libnvidia-fbc.so.1 \ |
318 |
libnvidia-fbc.so.${PORTVERSION} libnvidia-fbc.so \ |
319 |
libnvidia-ifr.so.${PORTVERSION} libnvidia-ifr.so.1 \ |
320 |
libnvidia-ifr.so.${PORTVERSION} libnvidia-ifr.so |
321 |
.else |
322 |
PLIST_RE+= '\,${LINUXBASE}.*libnvidia-(eglcore|fbc|glsi|ifr),d' |
323 |
.endif |
324 |
.if ${NVVERSION} >= 310.014 |
325 |
LINUX_LIBS+= libnvidia-encode.so.${PORTVERSION} |
326 |
LINUX_LINKS+= libnvidia-encode.so.${PORTVERSION} libnvidia-encode.so.1 \ |
327 |
libnvidia-encode.so.${PORTVERSION} libnvidia-encode.so |
328 |
LINUX32_LIBS+= libnvidia-encode.so.${PORTVERSION} |
329 |
LINUX32_LINKS+= libnvidia-encode.so.${PORTVERSION} libnvidia-encode.so.1 \ |
330 |
libnvidia-encode.so.${PORTVERSION} libnvidia-encode.so |
331 |
PLIST_RE+= '\,${LINUXBASE}.*libXvMCNVIDIA,d' |
332 |
.else |
333 |
LINUX_LIBS+= libXvMCNVIDIA.so.${PORTVERSION} |
334 |
LINUX_LINKS+= libXvMCNVIDIA.so.${PORTVERSION} libXvMCNVIDIA_dynamic.so.1 \ |
335 |
libXvMCNVIDIA.so.${PORTVERSION} libXvMCNVIDIA_dynamic.so |
336 |
PLIST_RE+= '\,${LINUXBASE}.*libnvidia-encode,d' |
337 |
.endif |
338 |
.if ${NVVERSION} >= 346.016 |
339 |
LINUX_LIBS+= libnvidia-gtk2.so.${PORTVERSION} \ |
340 |
libnvidia-gtk3.so.${PORTVERSION} |
341 |
.else |
342 |
PLIST_RE+= '\,${LINUXBASE}.*libnvidia-gtk(2|3)\.so,d' |
343 |
.endif |
344 |
.if ${NVVERSION} >= 331.049 && ${NVVERSION} < 352.009 |
345 |
LINUX_DATA+= monitoring.conf /usr/share/nvidia \ |
346 |
${WRKSRC}/pci.ids /usr/share/nvidia |
347 |
.else |
348 |
PLIST_RE+= '\,${LINUXBASE}.*monitoring\.conf,d' \ |
349 |
'\,${LINUXBASE}.*pci\.ids,d' |
350 |
.endif |
351 |
.if ${NVVERSION} >= 334.016 |
352 |
LINUX_DATA+= nvidia-application-profiles-${PORTVERSION}-key-documentation /usr/share/nvidia |
353 |
.else |
354 |
PLIST_RE+= '\,${LINUXBASE}.*application-profiles-${PORTVERSION}-key-documentation,d' |
355 |
.endif |
356 |
.if ${NVVERSION} >= 319.012 |
357 |
LINUX_DATA+= nvidia-application-profiles-${PORTVERSION}-rc /usr/share/nvidia |
358 |
.else |
359 |
PLIST_RE+= '\,${LINUXBASE}.*share/nvidia,d' |
360 |
.endif |
361 |
.if ${NVVERSION} >= 319.017 |
362 |
LINUX_PROGS+= nvidia-cuda-mps-control nvidia-cuda-mps-server \ |
363 |
nvidia-persistenced |
364 |
LINUX_MANS+= nvidia-cuda-mps-control nvidia-persistenced |
365 |
.else |
366 |
LINUX_PROGS+= nvidia-cuda-proxy-control nvidia-cuda-proxy-server |
367 |
LINUX_MANS+= nvidia-cuda-proxy-control |
368 |
PLIST_RE+= '\,${LINUXBASE},s/cuda-mps/cuda-proxy/' \ |
369 |
'\,${LINUXBASE}.*nvidia-persistenced,d' |
370 |
.endif |
371 |
.if ${NVVERSION} >= 364.012 |
372 |
LINUX_DATA+= nvidia_icd.json /etc/vulkan/icd.d |
373 |
.else |
374 |
PLIST_RE+= '\,${LINUXBASE}/etc/vulkan,d' |
375 |
.endif |
376 |
|
377 |
PLIST_SUB+= LINUXBASE=${LINUXBASE} \ |
378 |
LINUX_LIBDIR=${LINUX_LIBDIR} \ |
379 |
SHLIB_VERSION=${PORTVERSION} \ |
100 |
MODULESDIR=${MODULESDIR} |
380 |
MODULESDIR=${MODULESDIR} |
101 |
|
381 |
|
102 |
.include <bsd.port.options.mk> |
382 |
.include <bsd.port.pre.mk> |
103 |
|
383 |
|
104 |
.if ${PORT_OPTIONS:MLINUX} |
384 |
.if ${NVVERSION} >= 310.014 |
105 |
CONFLICTS_INSTALL= linux[-_]dri-[0-9]* linux-f10-dri-[0-9]* |
385 |
LINUX32_LIBS+= libnvcuvid.so.${PORTVERSION} |
106 |
USES+= linux |
386 |
LINUX32_LINKS+= libnvcuvid.so.${PORTVERSION} libnvcuvid.so.1 \ |
107 |
USE_LINUX= base:build,run xorglibs |
387 |
libnvcuvid.so.${PORTVERSION} libnvcuvid.so |
108 |
PLIST_SUB+= LINUX="" |
388 |
.elif "${LINUX_ARCH}" == "x86_64" |
|
|
389 |
PLIST_RE+= '\,${LINUXBASE}/usr/lib/libnvcuvid\.so,d' |
390 |
.endif |
391 |
|
392 |
.if ${NVVERSION} >= 390.087 && "${LINUX_ARCH}" == "x86_64" |
393 |
EXTRA_PATCHES+= ${FILESDIR}/extra-patch-linux_kernel_nvidia-uvm_uvm_unsupported.c |
109 |
.else |
394 |
.else |
110 |
PLIST_SUB+= LINUX="@comment " |
395 |
PLIST_RE+= '\,${KMODDIR}/nvidia-uvm\.ko,d' |
111 |
# Propagate WITHOUT_LINUX variable down to inner Makefiles |
|
|
112 |
MAKE_ENV+= WITHOUT_LINUX=yes |
113 |
.endif |
396 |
.endif |
114 |
|
397 |
|
|
|
398 |
.if "${LINUX_ARCH}" == "x86_64" |
399 |
PLIST_SUB+= LINUX32="" |
400 |
.else |
401 |
PLIST_SUB+= LINUX32="@comment " |
402 |
.endif |
403 |
|
404 |
post-extract-LINUX-on: |
405 |
@(${SH} ${DISTDIR}/NVIDIA-Linux-${LINUX_ARCH_SUFX}-${DISTVERSION}.run \ |
406 |
--extract-only --target ${WRKSRC}/linux > /dev/null) |
407 |
|
115 |
post-patch: .SILENT |
408 |
post-patch: .SILENT |
116 |
# We should support -CURRENT: kill the check |
409 |
# We should support -CURRENT: kill the check |
117 |
${REINPLACE_CMD} -e '24,26d' ${WRKSRC}/src/${NVSRC}/nv-freebsd.h |
410 |
${REINPLACE_CMD} -e '24,26d' ${WRKSRC}/src/${NVSRC}/nv-freebsd.h |
Lines 136-143
post-patch: .SILENT
Link Here
|
136 |
-e 's/kmem_free(kmem_arena, /kmem_free(/' \ |
429 |
-e 's/kmem_free(kmem_arena, /kmem_free(/' \ |
137 |
${WRKSRC}/src/${NVSRC}/nvidia_subr.c |
430 |
${WRKSRC}/src/${NVSRC}/nvidia_subr.c |
138 |
.endif |
431 |
.endif |
139 |
# Respect WITHOUT_LINUX setting |
432 |
# Disable installation of Linux libraries |
140 |
${REINPLACE_CMD} -e 's/exists(\/.*/& \&\& !defined(WITHOUT_LINUX)/' \ |
433 |
${REINPLACE_CMD} -e 's/exists(\/.*/& \&\& 0/' \ |
141 |
${WRKSRC}/lib/Makefile |
434 |
${WRKSRC}/lib/Makefile |
142 |
# Do not install VDPAU libraries which are provided by `multimedia/libvdpau' |
435 |
# Do not install VDPAU libraries which are provided by `multimedia/libvdpau' |
143 |
# port for a while now |
436 |
# port for a while now |
Lines 197-202
post-patch: .SILENT
Link Here
|
197 |
${REINPLACE_CMD} -E 's/(x11).*/\1/ ; /doc/d' ${WRKSRC}/Makefile |
490 |
${REINPLACE_CMD} -E 's/(x11).*/\1/ ; /doc/d' ${WRKSRC}/Makefile |
198 |
.endif |
491 |
.endif |
199 |
|
492 |
|
|
|
493 |
post-patch-LINUX-on: |
494 |
.if ${NVVERSION} >= 384.047 |
495 |
@${SED} 's/__NV_VK_ICD__/libGLX_nvidia.so.0/' \ |
496 |
${WRKSRC}/linux/nvidia_icd.json.template > \ |
497 |
${WRKSRC}/linux/nvidia_icd.json |
498 |
.endif |
499 |
.if ${NVVERSION} >= 390.087 && "${LINUX_ARCH}" == "x86_64" |
500 |
@${CP} ${FILESDIR}/Makefile.uvm \ |
501 |
${WRKSRC}/linux/kernel/nvidia-uvm/Makefile |
502 |
@${REINPLACE_CMD} 's,SUBDIR=,& linux/kernel/nvidia-uvm ,' \ |
503 |
${WRKSRC}/Makefile |
504 |
.endif |
505 |
|
200 |
pre-install: |
506 |
pre-install: |
201 |
@${MKDIR} ${STAGEDIR}${PREFIX}/${MODULESDIR}/drivers \ |
507 |
@${MKDIR} ${STAGEDIR}${PREFIX}/${MODULESDIR}/drivers \ |
202 |
${STAGEDIR}${PREFIX}/${MODULESDIR}/extensions |
508 |
${STAGEDIR}${PREFIX}/${MODULESDIR}/extensions |
Lines 206-242
post-install: .SILENT
Link Here
|
206 |
${STAGEDIR}${PREFIX}/bin |
512 |
${STAGEDIR}${PREFIX}/bin |
207 |
# pkg-plist is already overbloated, so use these hacks instead of PLIST_SUB's |
513 |
# pkg-plist is already overbloated, so use these hacks instead of PLIST_SUB's |
208 |
.if ${NVVERSION} >= 304.128 && ${NVVERSION} < 310.019 || ${NVVERSION} >= 361.016 |
514 |
.if ${NVVERSION} >= 304.128 && ${NVVERSION} < 310.019 || ${NVVERSION} >= 361.016 |
209 |
${REINPLACE_CMD} -E '/libvdpau(_trace)?\.so/d' ${TMPPLIST} |
515 |
${REINPLACE_CMD} -E '\,${LINUXBASE},!{/libvdpau(_trace)?\.so/d;}' \ |
|
|
516 |
${TMPPLIST} |
210 |
.endif |
517 |
.endif |
211 |
.if ${NVVERSION} >= 310.019 |
518 |
.if ${NVVERSION} >= 310.019 |
212 |
${REINPLACE_CMD} -e '/libXvMCNVIDIA/d' ${TMPPLIST} |
519 |
${REINPLACE_CMD} -e '\,${LINUXBASE},!{/libXvMCNVIDIA/d;}' ${TMPPLIST} |
213 |
.else # some applications need this symlink (see PR ports/72877) |
520 |
.else # some applications need this symlink (see PR ports/72877) |
214 |
${LN} -sf libXvMCNVIDIA.so.1 \ |
521 |
${LN} -sf libXvMCNVIDIA.so.1 \ |
215 |
${STAGEDIR}${PREFIX}/lib/libXvMCNVIDIA_dynamic.so.1 |
522 |
${STAGEDIR}${PREFIX}/lib/libXvMCNVIDIA_dynamic.so.1 |
216 |
.endif |
523 |
.endif |
217 |
.if ${NVVERSION} < 331.013 || ${ARCH} == amd64 && ${NVVERSION} < 334.016 |
524 |
.if ${NVVERSION} < 331.013 || ${ARCH} == amd64 && ${NVVERSION} < 334.016 |
218 |
${REINPLACE_CMD} -E '/lib(nvidia-)?(EGL|eglcore|GLESv|glsi)/d' \ |
525 |
${REINPLACE_CMD} -E '\,${LINUXBASE},!{/lib(nvidia-)?(EGL|eglcore|GLESv|glsi)/d;}' \ |
219 |
${TMPPLIST} |
526 |
${TMPPLIST} |
220 |
.endif |
527 |
.endif |
221 |
.if ${NVVERSION} < 352.009 |
528 |
.if ${NVVERSION} < 352.009 |
222 |
${REINPLACE_CMD} -E '/(lib)?nvidia-(debugdump|smi|ml)/d' ${TMPPLIST} |
529 |
${REINPLACE_CMD} -E '\,${LINUXBASE},!{/(lib)?nvidia-(debugdump|smi|ml)/d;}' \ |
|
|
530 |
${TMPPLIST} |
223 |
.endif |
531 |
.endif |
224 |
.if ${NVVERSION} < 355.006 |
532 |
.if ${NVVERSION} < 355.006 |
225 |
${REINPLACE_CMD} -E '/(libEGL_nvidia|GLdispatch|OpenGL)/d' ${TMPPLIST} |
533 |
${REINPLACE_CMD} -E '\,${LINUXBASE},!{/(libEGL_nvidia|GLdispatch|OpenGL)/d;}' \ |
|
|
534 |
${TMPPLIST} |
226 |
.else |
535 |
.else |
227 |
${REINPLACE_CMD} 's/libEGL\.so\.${PORTVERSION}/libEGL.so/' \ |
536 |
${REINPLACE_CMD} '\,${LINUXBASE},!s/libEGL\.so\.${PORTVERSION}/libEGL.so/' \ |
228 |
${TMPPLIST} |
537 |
${TMPPLIST} |
229 |
.endif |
538 |
.endif |
230 |
.if ${NVVERSION} < 358.009 |
539 |
.if ${NVVERSION} < 358.009 |
231 |
${REINPLACE_CMD} '/nvidia-modeset.ko/d' ${TMPPLIST} |
540 |
${REINPLACE_CMD} '/nvidia-modeset.ko/d' ${TMPPLIST} |
232 |
.endif |
541 |
.endif |
233 |
.if ${NVVERSION} >= 361.028 |
542 |
.if ${NVVERSION} >= 361.028 |
234 |
${REINPLACE_CMD} -E '/(EGL_nvidia\.so|GLESv[12](_CM)?(\.so\.[0-9]+\.[0-9]+))$$/d' \ |
543 |
${REINPLACE_CMD} -E '\,${LINUXBASE},!{/(EGL_nvidia\.so|GLESv[12](_CM)?(\.so\.[0-9]+\.[0-9]+))$$/d;}' \ |
235 |
${TMPPLIST} |
544 |
${TMPPLIST} |
236 |
.else |
545 |
.else |
237 |
${REINPLACE_CMD} -E '/\/lib\/libGLESv[12](_CM)?(\.so)?(_nvidia.so(\.[0-9]|\.[0-9]+\.[0-9]+)?)?$$/d ; \ |
546 |
${REINPLACE_CMD} -E '\,${LINUXBASE},!{/\/lib\/libGLESv[12](_CM)?(\.so)?(_nvidia.so(\.[0-9]|\.[0-9]+\.[0-9]+)?)?$$/d ; \ |
238 |
/libEGL_nvidia\.so\.${PORTVERSION}/d' ${TMPPLIST} |
547 |
/libEGL_nvidia\.so\.${PORTVERSION}/d;}' ${TMPPLIST} |
239 |
.endif |
548 |
.endif |
|
|
549 |
${REINPLACE_CMD} -E ${PLIST_RE:S/^/-e /} ${TMPPLIST} |
240 |
# rename libGL.so, libEGL.so and libGLESv2.so |
550 |
# rename libGL.so, libEGL.so and libGLESv2.so |
241 |
${MV} -f ${STAGEDIR}${PREFIX}/lib/libGL.so \ |
551 |
${MV} -f ${STAGEDIR}${PREFIX}/lib/libGL.so \ |
242 |
${STAGEDIR}${PREFIX}/lib/libGL-NVIDIA.so |
552 |
${STAGEDIR}${PREFIX}/lib/libGL-NVIDIA.so |
Lines 256-261
post-install: .SILENT
Link Here
|
256 |
${INSTALL_DATA} ${WRKDIR}/nvidia.conf \ |
566 |
${INSTALL_DATA} ${WRKDIR}/nvidia.conf \ |
257 |
${STAGEDIR}${PREFIX}/etc/libmap.d/ |
567 |
${STAGEDIR}${PREFIX}/etc/libmap.d/ |
258 |
|
568 |
|
|
|
569 |
post-install-LINUX-on: |
570 |
.for f d in ${LINUX_DATA} |
571 |
${MKDIR} ${STAGEDIR}${LINUXBASE}${d} |
572 |
${INSTALL_DATA} ${WRKSRC}/linux/${f} ${STAGEDIR}${LINUXBASE}${d} |
573 |
.endfor |
574 |
${MKDIR} ${STAGEDIR}${LINUXBASE}/usr/bin |
575 |
${INSTALL_SCRIPT} ${WRKSRC}/linux/nvidia-bug-report.sh \ |
576 |
${STAGEDIR}${LINUXBASE}/usr/bin |
577 |
.for p in ${LINUX_PROGS} |
578 |
${INSTALL_PROGRAM} ${WRKSRC}/linux/${p} ${STAGEDIR}${LINUXBASE}/usr/bin |
579 |
.endfor |
580 |
${MKDIR} ${STAGEDIR}${LINUXBASE}/usr/share/man/man1 |
581 |
.for m in ${LINUX_MANS} |
582 |
${INSTALL_MAN} ${WRKSRC}/linux/${m}.1.gz \ |
583 |
${STAGEDIR}${LINUXBASE}/usr/share/man/man1 |
584 |
.endfor |
585 |
${MKDIR} ${STAGEDIR}${LINUXBASE}${LINUX_LIBDIR}/tls |
586 |
${MKDIR} ${STAGEDIR}${LINUXBASE}${LINUX_LIBDIR}/vdpau |
587 |
.for l in ${LINUX_LIBS} |
588 |
${INSTALL_LIB} ${WRKSRC}/linux/${l} \ |
589 |
${STAGEDIR}${LINUXBASE}${LINUX_LIBDIR}/${l} |
590 |
.endfor |
591 |
.for s t in ${LINUX_LINKS} |
592 |
${RLN} ${STAGEDIR}${LINUXBASE}${LINUX_LIBDIR}/${s} \ |
593 |
${STAGEDIR}${LINUXBASE}${LINUX_LIBDIR}/${t} |
594 |
.endfor |
595 |
.if "${LINUX_ARCH}" == "x86_64" |
596 |
${MKDIR} ${STAGEDIR}${LINUXBASE}/usr/lib/tls |
597 |
${MKDIR} ${STAGEDIR}${LINUXBASE}/usr/lib/vdpau |
598 |
.for l in ${LINUX32_LIBS} |
599 |
${INSTALL_LIB} ${WRKSRC}/linux/32/${l} \ |
600 |
${STAGEDIR}${LINUXBASE}/usr/lib/${l} |
601 |
.endfor |
602 |
.for s t in ${LINUX32_LINKS} |
603 |
${RLN} ${STAGEDIR}${LINUXBASE}/usr/lib/${s} \ |
604 |
${STAGEDIR}${LINUXBASE}/usr/lib/${t} |
605 |
.endfor |
606 |
.endif |
607 |
|
259 |
# Target below can be used instead of standard `makesum' to correctly |
608 |
# Target below can be used instead of standard `makesum' to correctly |
260 |
# update distinfo (i.e., keeping other driver version entries intact) |
609 |
# update distinfo (i.e., keeping other driver version entries intact) |
261 |
.if ${.TARGETS:Mupdate-distinfo} |
610 |
.if ${.TARGETS:Mupdate-distinfo} |
Lines 269-272
update-distinfo: makesum .SILENT
Link Here
|
269 |
${MASTERDIR}/distinfo |
618 |
${MASTERDIR}/distinfo |
270 |
${RM} ${DISTINFO_FILE} ${MASTERDIR}/distinfo.bak |
619 |
${RM} ${DISTINFO_FILE} ${MASTERDIR}/distinfo.bak |
271 |
|
620 |
|
272 |
.include <bsd.port.mk> |
621 |
.include <bsd.port.post.mk> |