View | Details | Raw Unified | Return to bug 217901 | Differences between
and this patch

Collapse All | Expand All

(-)x11/nvidia-driver/Makefile (-24 / +375 lines)
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 66-77 SUB_LIST+= NVGL="\# " Link Here
66
.if ${NVVERSION} < 355.006
69
.if ${NVVERSION} < 355.006
67
EXTRA_PATCHES=	${FILESDIR}/extra-patch-src-Makefile \
70
EXTRA_PATCHES=	${FILESDIR}/extra-patch-src-Makefile \
68
		${FILESDIR}/extra-patch-src-nv-freebsd.h \
71
		${FILESDIR}/extra-patch-src-nv-freebsd.h \
69
		${FILESDIR}/extra-patch-src-nv-misc.h
72
		${FILESDIR}/extra-patch-src-nv-misc.h \
73
		${FILESDIR}/extra-patch-src-nvidia_linux.c
70
NVSRC=		.
74
NVSRC=		.
71
.else
75
.else
72
EXTRA_PATCHES=	${FILESDIR}/extra-patch-src_nvidia_Makefile \
76
EXTRA_PATCHES=	${FILESDIR}/extra-patch-src_nvidia_Makefile \
73
		${FILESDIR}/extra-patch-src_nvidia_nv-freebsd.h \
77
		${FILESDIR}/extra-patch-src_nvidia_nv-freebsd.h \
74
		${FILESDIR}/extra-patch-src_nvidia_nv-misc.h
78
		${FILESDIR}/extra-patch-src_nvidia_nv-misc.h \
79
		${FILESDIR}/extra-patch-src_nvidia_nvidia_linux.c
75
NVSRC=		nvidia
80
NVSRC=		nvidia
76
.endif
81
.endif
77
82
Lines 85-90 EXTRA_PATCHES+= ${FILESDIR}/extra-patch-src_nvidia-mod Link Here
85
OPTIONS_DEFINE=	ACPI_PM LINUX WBINVD DOCS
90
OPTIONS_DEFINE=	ACPI_PM LINUX WBINVD DOCS
86
OPTIONS_DEFINE_i386=	PAE
91
OPTIONS_DEFINE_i386=	PAE
87
OPTIONS_DEFAULT=	LINUX
92
OPTIONS_DEFAULT=	LINUX
93
OPTIONS_SUB=		yes
88
94
89
ACPI_PM_DESC=		ACPI Power Management support
95
ACPI_PM_DESC=		ACPI Power Management support
90
LINUX_DESC=		Linux compatibility support
96
LINUX_DESC=		Linux compatibility support
Lines 96-117 OPTIONS_DEFINE+= FREEBSD_AGP Link Here
96
FREEBSD_AGP_DESC=	Use FreeBSD AGP GART driver
102
FREEBSD_AGP_DESC=	Use FreeBSD AGP GART driver
97
.endif
103
.endif
98
104
99
PLIST_SUB+=	LINUXBASE=${LINUXBASE} SHLIB_VERSION=${PORTVERSION} \
105
LINUX_MASTER_SITES=NVIDIA/XFree86/Linux-${LINUX_ARCH_SUFX}/${DISTVERSION}/:linux
106
LINUX_DISTFILES=NVIDIA-Linux-${LINUX_ARCH_SUFX}-${DISTVERSION}.run:linux
107
LINUX_USES=	linux
108
LINUX_USE=	LINUX=xorglibs
109
110
LINUX_ARCH_SUFX=${LINUX_ARCH:S/i386/x86/}
111
LINUX_LIBDIR=	/usr/lib${LINUX_ARCH:S/i386//:S/x86_64/64/}
112
LINUX_WRKSRC=	${WRKDIR}/NVIDIA-Linux-${LINUX_ARCH_SUFX}-${DISTVERSION}
113
114
LINUX_LIBS=	libcuda.so.${PORTVERSION} \
115
		libnvcuvid.so.${PORTVERSION} \
116
		libnvidia-cfg.so.${PORTVERSION} \
117
		libnvidia-compiler.so.${PORTVERSION} \
118
		libnvidia-glcore.so.${PORTVERSION} \
119
		libnvidia-ml.so.${PORTVERSION} \
120
		libnvidia-opencl.so.${PORTVERSION} \
121
		libnvidia-tls.so.${PORTVERSION} \
122
		libvdpau_nvidia.so.${PORTVERSION} \
123
		tls/libnvidia-tls.so.${PORTVERSION}
124
LINUX_LINKS=	libcuda.so.${PORTVERSION} libcuda.so.1 \
125
		libcuda.so.${PORTVERSION} libcuda.so \
126
		libnvcuvid.so.${PORTVERSION} libnvcuvid.so.1 \
127
		libnvcuvid.so.${PORTVERSION} libnvcuvid.so \
128
		libnvidia-cfg.so.${PORTVERSION} libnvidia-cfg.so.1 \
129
		libnvidia-cfg.so.${PORTVERSION} libnvidia-cfg.so \
130
		libnvidia-ml.so.${PORTVERSION} libnvidia-ml.so.1 \
131
		libnvidia-ml.so.${PORTVERSION} libnvidia-ml.so \
132
		libnvidia-opencl.so.${PORTVERSION} libnvidia-opencl.so.1 \
133
		libvdpau_nvidia.so.${PORTVERSION} vdpau/libvdpau_nvidia.so.1
134
LINUX32_LIBS=	libcuda.so.${PORTVERSION} \
135
		libnvidia-compiler.so.${PORTVERSION} \
136
		libnvidia-glcore.so.${PORTVERSION} \
137
		libnvidia-ml.so.${PORTVERSION} \
138
		libnvidia-opencl.so.${PORTVERSION} \
139
		libnvidia-tls.so.${PORTVERSION} \
140
		libvdpau_nvidia.so.${PORTVERSION} \
141
		tls/libnvidia-tls.so.${PORTVERSION}
142
LINUX32_LINKS=	libcuda.so.${PORTVERSION} libcuda.so.1 \
143
		libcuda.so.${PORTVERSION} libcuda.so \
144
		libnvidia-ml.so.${PORTVERSION} libnvidia-ml.so.1 \
145
		libnvidia-ml.so.${PORTVERSION} libnvidia-ml.so \
146
		libnvidia-opencl.so.${PORTVERSION} libnvidia-opencl.so.1 \
147
		libvdpau_nvidia.so.${PORTVERSION} vdpau/libvdpau_nvidia.so.1
148
LINUX_PROGS=	nvidia-debugdump nvidia-settings nvidia-smi nvidia-xconfig
149
LINUX_MANS=	nvidia-settings nvidia-smi nvidia-xconfig
150
LINUX_DATA=	nvidia.icd /etc/OpenCL/vendors
151
.if ${NVVERSION} >= 375.010
152
LINUX_DATA+=	10_nvidia.json /usr/share/glvnd/egl_vendor.d
153
.else
154
PLIST_RE+=	'\,${LINUXBASE}/usr/share/glvnd,d'
155
.endif
156
.if ${NVVERSION} >= 378.009
157
LINUX_DATA+=	10_nvidia_wayland.json /usr/share/egl/egl_external_platform.d
158
.else
159
PLIST_RE+=	'\,${LINUXBASE}/usr/share/egl,d'
160
.endif
161
.if ${NVVERSION} >= 390.042
162
LINUX_LIBS+=	libEGL.so.1.1.0
163
LINUX_LINKS+=	libEGL.so.1.1.0 libEGL.so.1
164
LINUX32_LIBS+=	libEGL.so.1.1.0
165
LINUX32_LINKS+=	libEGL.so.1.1.0 libEGL.so.1
166
PLIST_RE+=	'\,${LINUXBASE},s/(libEGL\.so)\.X/\1.1.1.0/'
167
.elif ${NVVERSION} >= 355.006
168
LINUX_LIBS+=	libEGL.so.1
169
LINUX32_LIBS+=	libEGL.so.1
170
PLIST_RE+=	'\,${LINUXBASE}.*libEGL\.so\.X,d'
171
.elif ${NVVERSION} >= 331.013
172
LINUX_LIBS+=	libEGL.so.${PORTVERSION}
173
LINUX_LINKS+=	libEGL.so.${PORTVERSION} libEGL.so.1
174
LINUX32_LIBS+=	libEGL.so.${PORTVERSION}
175
LINUX32_LINKS+=	libEGL.so.${PORTVERSION} libEGL.so.1
176
PLIST_RE+=	'\,${LINUXBASE},s/(libEGL\.so)\.X/\1.${PORTVERSION}/'
177
.else
178
PLIST_RE+=	'\,${LINUXBASE}.*libEGL\.so,d'
179
.endif
180
.if ${NVVERSION} >= 361.016
181
LINUX_LIBS+=	libEGL_nvidia.so.${PORTVERSION}
182
LINUX_LINKS+=	libEGL_nvidia.so.${PORTVERSION} libEGL_nvidia.so.0
183
LINUX32_LIBS+=	libEGL_nvidia.so.${PORTVERSION}
184
LINUX32_LINKS+=	libEGL_nvidia.so.${PORTVERSION} libEGL_nvidia.so.0
185
.elif ${NVVERSION} >= 355.006
186
LINUX_LIBS+=	libEGL_nvidia.so.0
187
PLIST_RE+=	'\,${LINUXBASE}.*libEGL_nvidia\.so\.${PORTVERSION},d'
188
.else
189
PLIST_RE+=	'\,${LINUXBASE}.*libEGL_nvidia\.so,d'
190
.endif
191
.if ${NVVERSION} >= 390.042
192
LINUX_LIBS+=	libGL.so.1.7.0
193
LINUX_LINKS+=	libGL.so.1.7.0 libGL.so.1
194
LINUX32_LIBS+=	libGL.so.1.7.0
195
LINUX32_LINKS+=	libGL.so.1.7.0 libGL.so.1
196
PLIST_RE+=	'\,${LINUXBASE},s/(libGL\.so)\.X/\1.1.7.0/'
197
.elif ${NVVERSION} >= 361.028
198
LINUX_LIBS+=	libGL.so.1.0.0
199
LINUX_LINKS+=	libGL.so.1.0.0 libGL.so.1
200
LINUX32_LIBS+=	libGL.so.1.0.0
201
LINUX32_LINKS+=	libGL.so.1.0.0 libGL.so.1
202
PLIST_RE+=	'\,${LINUXBASE},s/(libGL\.so)\.X/\1.1.0.0/'
203
.elif ${NVVERSION} >= 361.016
204
LINUX_LIBS+=	libGL.so.1
205
LINUX32_LIBS+=	libGL.so.1
206
PLIST_RE+=	'\,${LINUXBASE}.*libGL\.so\.X,d'
207
.else
208
LINUX_LIBS+=	libGL.so.${PORTVERSION}
209
LINUX_LINKS+=	libGL.so.${PORTVERSION} libGL.so.1
210
LINUX32_LIBS+=	libGL.so.${PORTVERSION}
211
LINUX32_LINKS+=	libGL.so.${PORTVERSION} libGL.so.1
212
PLIST_RE+=	'\,${LINUXBASE},s/(libGL\.so)\.X/\1.${PORTVERSION}/'
213
.endif
214
.if ${NVVERSION} >= 390.042
215
LINUX_LIBS+=	libGLESv1_CM.so.1.2.0 \
216
		libGLESv2.so.2.1.0
217
LINUX_LINKS+=	libGLESv1_CM.so.1.2.0 libGLESv1_CM.so.1 \
218
		libGLESv2.so.2.1.0 libGLESv2.so.2
219
LINUX32_LIBS+=	libGLESv1_CM.so.1.2.0 \
220
		libGLESv2.so.2.1.0
221
LINUX32_LINKS+=	libGLESv1_CM.so.1.2.0 libGLESv1_CM.so.1 \
222
		libGLESv2.so.2.1.0 libGLESv2.so.2
223
PLIST_RE+=	'\,${LINUXBASE},s/(libGLESv1_CM\.so)\.X/\1.1.2.0/' \
224
		'\,${LINUXBASE},s/(libGLESv2\.so)\.X/\1.2.1.0/'
225
.elif ${NVVERSION} >= 361.016
226
LINUX_LIBS+=	libGLESv1_CM.so.1 \
227
		libGLESv2.so.2
228
LINUX32_LIBS+=	libGLESv1_CM.so.1 \
229
		libGLESv2.so.2
230
PLIST_RE+=	'\,${LINUXBASE}.*GLESv(1_CM|2)\.so\.X,d'
231
.elif ${NVVERSION} >= 331.013
232
LINUX_LIBS+=	libGLESv1_CM.so.${PORTVERSION} \
233
		libGLESv2.so.${PORTVERSION}
234
LINUX_LINKS+=	libGLESv1_CM.so.${PORTVERSION} libGLESv1_CM.so.1 \
235
		libGLESv2.so.${PORTVERSION} libGLESv2.so.2
236
LINUX32_LIBS+=	libGLESv1_CM.so.${PORTVERSION} \
237
		libGLESv2.so.${PORTVERSION}
238
LINUX32_LINKS+=	libGLESv1_CM.so.${PORTVERSION} libGLESv1_CM.so.1 \
239
		libGLESv2.so.${PORTVERSION} libGLESv2.so.2
240
PLIST_RE+=	'\,${LINUXBASE},s/(libGLESv(1_CM|2)\.so)\.X/\1.${PORTVERSION}/'
241
.else
242
PLIST_RE+=	'\,${LINUXBASE}.*libGLESv(1_CM|2)\.so,d'
243
.endif
244
.if ${NVVERSION} >= 361.016
245
LINUX_LIBS+=	libGLESv1_CM_nvidia.so.${PORTVERSION} \
246
		libGLESv2_nvidia.so.${PORTVERSION} \
247
		libGLX.so.0 \
248
		libGLX_nvidia.so.${PORTVERSION} \
249
		libnvidia-fatbinaryloader.so.${PORTVERSION} \
250
		libnvidia-ptxjitcompiler.so.${PORTVERSION}
251
LINUX_LINKS+=	libGLESv1_CM_nvidia.so.${PORTVERSION} libGLESv1_CM_nvidia.so.1 \
252
		libGLESv2_nvidia.so.${PORTVERSION} libGLESv2_nvidia.so.2 \
253
		libGLX.so.0 libGLX.so \
254
		libGLX_nvidia.so.${PORTVERSION} libGLX_nvidia.so.0 \
255
		libGLX_nvidia.so.${PORTVERSION} libGLX_indirect.so.0 \
256
		libnvidia-ptxjitcompiler.so.${PORTVERSION} libnvidia-ptxjitcompiler.so.1 \
257
		libnvidia-ptxjitcompiler.so.${PORTVERSION} libnvidia-ptxjitcompiler.so
258
LINUX32_LIBS+=	libGLESv1_CM_nvidia.so.${PORTVERSION} \
259
		libGLESv2_nvidia.so.${PORTVERSION} \
260
		libGLX.so.0 \
261
		libGLX_nvidia.so.${PORTVERSION} \
262
		libnvidia-fatbinaryloader.so.${PORTVERSION} \
263
		libnvidia-ptxjitcompiler.so.${PORTVERSION}
264
LINUX32_LINKS+=	libGLESv1_CM_nvidia.so.${PORTVERSION} libGLESv1_CM_nvidia.so.1 \
265
		libGLESv2_nvidia.so.${PORTVERSION} libGLESv2_nvidia.so.2 \
266
		libGLX.so.0 libGLX.so \
267
		libGLX_nvidia.so.${PORTVERSION} libGLX_nvidia.so.0 \
268
		libGLX_nvidia.so.${PORTVERSION} libGLX_indirect.so.0 \
269
		libnvidia-ptxjitcompiler.so.${PORTVERSION} libnvidia-ptxjitcompiler.so.1 \
270
		libnvidia-ptxjitcompiler.so.${PORTVERSION} libnvidia-ptxjitcompiler.so
271
.else
272
PLIST_RE+=	'\,${LINUXBASE}.*libGLESv(1_CM|2)_nvidia\.so,d' \
273
		'\,${LINUXBASE}.*libGLX(_nvidia|_indirect)?\.so,d' \
274
		'\,${LINUXBASE}.*libnvidia-fatbinaryloader\.so,d' \
275
		'\,${LINUXBASE}.*libnvidia-ptxjitcompiler\.so,d'
276
.endif
277
.if ${NVVERSION} >= 355.006
278
LINUX_LIBS+=	libGLdispatch.so.0 \
279
		libOpenGL.so.0
280
LINUX_LINKS+=	libOpenGL.so.0 libOpenGL.so
281
LINUX32_LIBS+=	libGLdispatch.so.0 \
282
		libOpenGL.so.0
283
LINUX32_LINKS+=	libOpenGL.so.0 libOpenGL.so
284
.else
285
PLIST_RE+=	'\,${LINUXBASE}.*libGLdispatch\.so,d' \
286
		'\,${LINUXBASE}.*libOpenGL\.so,d'
287
.endif
288
.if ${NVVERSION} >= 387.012
289
LINUX_LIBS+=	libnvidia-egl-wayland.so.1.0.2
290
LINUX_LINKS+=	libnvidia-egl-wayland.so.1.0.2 libnvidia-egl-wayland.so.1
291
PLIST_RE+=	'\,${LINUXBASE},s/(libnvidia-egl-wayland\.so)\.X/\1.1.0.2/'
292
.elif ${NVVERSION} >= 378.013
293
LINUX_LIBS+=	libnvidia-egl-wayland.so.1.0.1
294
LINUX_LINKS+=	libnvidia-egl-wayland.so.1.0.1 libnvidia-egl-wayland.so.1
295
PLIST_RE+=	'\,${LINUXBASE},s/(libnvidia-egl-wayland\.so)\.X/\1.1.0.1/'
296
.elif ${NVVERSION} >= 378.009
297
LINUX_LIBS+=	libnvidia-egl-wayland.so.1.0.0
298
LINUX_LINKS+=	libnvidia-egl-wayland.so.1.0.0 libnvidia-egl-wayland.so.1
299
PLIST_RE+=	'\,${LINUXBASE},s/(libnvidia-egl-wayland\.so)\.X/\1.1.0.0/'
300
.elif ${NVVERSION} >= 364.012
301
LINUX_LIBS+=	libnvidia-egl-wayland.so.${PORTVERSION}
302
LINUX_LINKS+=	libnvidia-egl-wayland.so.${PORTVERSION} libnvidia-egl-wayland.so.1
303
PLIST_RE+=	'\,${LINUXBASE},s/(libnvidia-egl-wayland\.so)\.X/\1.${PORTVERSION}/'
304
.else
305
PLIST_RE+=	'\,${LINUXBASE}.*libnvidia-egl-wayland\.so,d'
306
.endif
307
.if ${NVVERSION} >= 331.013
308
LINUX_LIBS+=	libnvidia-eglcore.so.${PORTVERSION} \
309
		libnvidia-fbc.so.${PORTVERSION} \
310
		libnvidia-glsi.so.${PORTVERSION} \
311
		libnvidia-ifr.so.${PORTVERSION}
312
LINUX_LINKS+=	libnvidia-fbc.so.${PORTVERSION} libnvidia-fbc.so.1 \
313
		libnvidia-fbc.so.${PORTVERSION} libnvidia-fbc.so \
314
		libnvidia-ifr.so.${PORTVERSION} libnvidia-ifr.so.1 \
315
		libnvidia-ifr.so.${PORTVERSION} libnvidia-ifr.so
316
LINUX32_LIBS+=	libnvidia-eglcore.so.${PORTVERSION} \
317
		libnvidia-fbc.so.${PORTVERSION} \
318
		libnvidia-glsi.so.${PORTVERSION} \
319
		libnvidia-ifr.so.${PORTVERSION}
320
LINUX32_LINKS+=	libnvidia-fbc.so.${PORTVERSION} libnvidia-fbc.so.1 \
321
		libnvidia-fbc.so.${PORTVERSION} libnvidia-fbc.so \
322
		libnvidia-ifr.so.${PORTVERSION} libnvidia-ifr.so.1 \
323
		libnvidia-ifr.so.${PORTVERSION} libnvidia-ifr.so
324
.else
325
PLIST_RE+=	'\,${LINUXBASE}.*libnvidia-(eglcore|fbc|glsi|ifr),d'
326
.endif
327
.if ${NVVERSION} >= 310.014
328
LINUX_LIBS+=	libnvidia-encode.so.${PORTVERSION}
329
LINUX_LINKS+=	libnvidia-encode.so.${PORTVERSION} libnvidia-encode.so.1 \
330
		libnvidia-encode.so.${PORTVERSION} libnvidia-encode.so
331
LINUX32_LIBS+=	libnvidia-encode.so.${PORTVERSION}
332
LINUX32_LINKS+=	libnvidia-encode.so.${PORTVERSION} libnvidia-encode.so.1 \
333
		libnvidia-encode.so.${PORTVERSION} libnvidia-encode.so
334
PLIST_RE+=	'\,${LINUXBASE}.*libXvMCNVIDIA,d'
335
.else
336
LINUX_LIBS+=	libXvMCNVIDIA.so.${PORTVERSION}
337
LINUX_LINKS+=	libXvMCNVIDIA.so.${PORTVERSION} libXvMCNVIDIA_dynamic.so.1 \
338
		libXvMCNVIDIA.so.${PORTVERSION} libXvMCNVIDIA_dynamic.so
339
PLIST_RE+=	'\,${LINUXBASE}.*libnvidia-encode,d'
340
.endif
341
.if ${NVVERSION} >= 346.016
342
LINUX_LIBS+=	libnvidia-gtk2.so.${PORTVERSION} \
343
		libnvidia-gtk3.so.${PORTVERSION}
344
.else
345
PLIST_RE+=	'\,${LINUXBASE}.*libnvidia-gtk(2|3)\.so,d'
346
.endif
347
.if ${NVVERSION} >= 331.049 && ${NVVERSION} < 352.009
348
LINUX_DATA+=	monitoring.conf /usr/share/nvidia \
349
		${WRKSRC}/pci.ids /usr/share/nvidia
350
.else
351
PLIST_RE+=	'\,${LINUXBASE}.*monitoring\.conf,d' \
352
		'\,${LINUXBASE}.*pci\.ids,d'
353
.endif
354
.if ${NVVERSION} >= 334.016
355
LINUX_DATA+=	nvidia-application-profiles-${PORTVERSION}-key-documentation /usr/share/nvidia
356
.else
357
PLIST_RE+=	'\,${LINUXBASE}.*application-profiles-${PORTVERSION}-key-documentation,d'
358
.endif
359
.if ${NVVERSION} >= 319.012
360
LINUX_DATA+=	nvidia-application-profiles-${PORTVERSION}-rc /usr/share/nvidia
361
.else
362
PLIST_RE+=	'\,${LINUXBASE}.*share/nvidia,d'
363
.endif
364
.if ${NVVERSION} >= 319.017
365
LINUX_PROGS+=	nvidia-cuda-mps-control nvidia-cuda-mps-server \
366
		nvidia-persistenced
367
LINUX_MANS+=	nvidia-cuda-mps-control nvidia-persistenced
368
.else
369
LINUX_PROGS+=	nvidia-cuda-proxy-control nvidia-cuda-proxy-server
370
LINUX_MANS+=	nvidia-cuda-proxy-control
371
PLIST_RE+=	'\,${LINUXBASE},s/cuda-mps/cuda-proxy/' \
372
		'\,${LINUXBASE}.*nvidia-persistenced,d'
373
.endif
374
.if ${NVVERSION} >= 364.012
375
LINUX_DATA+=	nvidia_icd.json /etc/vulkan/icd.d
376
.else
377
PLIST_RE+=	'\,${LINUXBASE}/etc/vulkan,d'
378
.endif
379
380
PLIST_SUB+=	LINUXBASE=${LINUXBASE} \
381
		LINUX_LIBDIR=${LINUX_LIBDIR} \
382
		SHLIB_VERSION=${PORTVERSION} \
100
		MODULESDIR=${MODULESDIR}
383
		MODULESDIR=${MODULESDIR}
101
384
102
.include <bsd.port.options.mk>
385
.include <bsd.port.pre.mk>
103
386
104
.if ${PORT_OPTIONS:MLINUX}
387
.if ${NVVERSION} >= 310.014
105
CONFLICTS_INSTALL=	linux[-_]dri-[0-9]* linux-f10-dri-[0-9]*
388
LINUX32_LIBS+=	libnvcuvid.so.${PORTVERSION}
106
USES+=		linux
389
LINUX32_LINKS+=	libnvcuvid.so.${PORTVERSION} libnvcuvid.so.1 \
107
USE_LINUX=	base:build,run xorglibs
390
		libnvcuvid.so.${PORTVERSION} libnvcuvid.so
108
PLIST_SUB+=	LINUX=""
391
.elif "${LINUX_ARCH}" == "x86_64"
392
PLIST_RE+=	'\,${LINUXBASE}/usr/lib/libnvcuvid\.so,d'
393
.endif
394
395
.if ${NVVERSION} < 390.087 || "${LINUX_ARCH}" != "x86_64"
396
PLIST_RE+=	'\,${KMODDIR}/nvidia-uvm\.ko,d'
397
.endif
398
399
.if "${LINUX_ARCH}" == "x86_64"
400
PLIST_SUB+=	LINUX32=""
109
.else
401
.else
110
PLIST_SUB+=	LINUX="@comment "
402
PLIST_SUB+=	LINUX32="@comment "
111
# Propagate WITHOUT_LINUX variable down to inner Makefiles
112
MAKE_ENV+=	WITHOUT_LINUX=yes
113
.endif
403
.endif
114
404
405
post-extract-LINUX-on:
406
	@(cd ${WRKDIR} && ${SH} \
407
		${DISTDIR}/NVIDIA-Linux-${LINUX_ARCH_SUFX}-${DISTVERSION}.run \
408
		--extract-only > /dev/null)
409
115
post-patch: .SILENT
410
post-patch: .SILENT
116
# We should support -CURRENT: kill the check
411
# We should support -CURRENT: kill the check
117
	${REINPLACE_CMD} -e '24,26d' ${WRKSRC}/src/${NVSRC}/nv-freebsd.h
412
	${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(/' \
431
	    -e 's/kmem_free(kmem_arena, /kmem_free(/' \
137
		${WRKSRC}/src/${NVSRC}/nvidia_subr.c
432
		${WRKSRC}/src/${NVSRC}/nvidia_subr.c
138
.endif
433
.endif
139
# Respect WITHOUT_LINUX setting
434
# Disable installation of Linux libraries
140
	${REINPLACE_CMD} -e 's/exists(\/.*/& \&\& !defined(WITHOUT_LINUX)/' \
435
	${REINPLACE_CMD} -e 's/exists(\/.*/& \&\& 0/' \
141
		${WRKSRC}/lib/Makefile
436
		${WRKSRC}/lib/Makefile
142
# Do not install VDPAU libraries which are provided by `multimedia/libvdpau'
437
# Do not install VDPAU libraries which are provided by `multimedia/libvdpau'
143
# port for a while now
438
# port for a while now
Lines 197-202 post-patch: .SILENT Link Here
197
	${REINPLACE_CMD} -E 's/(x11).*/\1/ ; /doc/d' ${WRKSRC}/Makefile
492
	${REINPLACE_CMD} -E 's/(x11).*/\1/ ; /doc/d' ${WRKSRC}/Makefile
198
.endif
493
.endif
199
494
495
post-patch-LINUX-on:
496
.if ${NVVERSION} >= 384.047
497
	@${SED} 's/__NV_VK_ICD__/libGLX_nvidia.so.0/' \
498
		${LINUX_WRKSRC}/nvidia_icd.json.template > \
499
		${LINUX_WRKSRC}/nvidia_icd.json
500
.endif
501
.if ${NVVERSION} >= 390.087 && "${LINUX_ARCH}" == "x86_64"
502
	@${MKDIR} ${WRKSRC}/src/nvidia-uvm
503
	@${CP} ${FILESDIR}/uvm_Makefile ${WRKSRC}/src/nvidia-uvm/Makefile
504
	@${CP} ${FILESDIR}/uvm_unsupported.c ${WRKSRC}/src/nvidia-uvm
505
	@${REINPLACE_CMD} 's/SUBDIR=/& nvidia-uvm /' ${WRKSRC}/src/Makefile
506
.endif
507
200
pre-install:
508
pre-install:
201
	@${MKDIR} ${STAGEDIR}${PREFIX}/${MODULESDIR}/drivers \
509
	@${MKDIR} ${STAGEDIR}${PREFIX}/${MODULESDIR}/drivers \
202
		${STAGEDIR}${PREFIX}/${MODULESDIR}/extensions
510
		${STAGEDIR}${PREFIX}/${MODULESDIR}/extensions
Lines 206-242 post-install: .SILENT Link Here
206
		${STAGEDIR}${PREFIX}/bin
514
		${STAGEDIR}${PREFIX}/bin
207
# pkg-plist is already overbloated, so use these hacks instead of PLIST_SUB's
515
# 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
516
.if ${NVVERSION} >= 304.128 && ${NVVERSION} < 310.019 || ${NVVERSION} >= 361.016
209
	${REINPLACE_CMD} -E '/libvdpau(_trace)?\.so/d' ${TMPPLIST}
517
	${REINPLACE_CMD} -E '\,${LINUXBASE},!{/libvdpau(_trace)?\.so/d;}' \
518
		${TMPPLIST}
210
.endif
519
.endif
211
.if ${NVVERSION} >= 310.019
520
.if ${NVVERSION} >= 310.019
212
	${REINPLACE_CMD} -e '/libXvMCNVIDIA/d' ${TMPPLIST}
521
	${REINPLACE_CMD} -e '\,${LINUXBASE},!{/libXvMCNVIDIA/d;}' ${TMPPLIST}
213
.else	# some applications need this symlink (see PR ports/72877)
522
.else	# some applications need this symlink (see PR ports/72877)
214
	${LN} -sf libXvMCNVIDIA.so.1 \
523
	${LN} -sf libXvMCNVIDIA.so.1 \
215
		${STAGEDIR}${PREFIX}/lib/libXvMCNVIDIA_dynamic.so.1
524
		${STAGEDIR}${PREFIX}/lib/libXvMCNVIDIA_dynamic.so.1
216
.endif
525
.endif
217
.if ${NVVERSION} < 331.013 || ${ARCH} == amd64 && ${NVVERSION} < 334.016
526
.if ${NVVERSION} < 331.013 || ${ARCH} == amd64 && ${NVVERSION} < 334.016
218
	${REINPLACE_CMD} -E '/lib(nvidia-)?(EGL|eglcore|GLESv|glsi)/d' \
527
	${REINPLACE_CMD} -E '\,${LINUXBASE},!{/lib(nvidia-)?(EGL|eglcore|GLESv|glsi)/d;}' \
219
		${TMPPLIST}
528
		${TMPPLIST}
220
.endif
529
.endif
221
.if ${NVVERSION} < 352.009
530
.if ${NVVERSION} < 352.009
222
	${REINPLACE_CMD} -E '/(lib)?nvidia-(debugdump|smi|ml)/d' ${TMPPLIST}
531
	${REINPLACE_CMD} -E '\,${LINUXBASE},!{/(lib)?nvidia-(debugdump|smi|ml)/d;}' \
532
		${TMPPLIST}
223
.endif
533
.endif
224
.if ${NVVERSION} < 355.006
534
.if ${NVVERSION} < 355.006
225
	${REINPLACE_CMD} -E '/(libEGL_nvidia|GLdispatch|OpenGL)/d' ${TMPPLIST}
535
	${REINPLACE_CMD} -E '\,${LINUXBASE},!{/(libEGL_nvidia|GLdispatch|OpenGL)/d;}' \
536
		${TMPPLIST}
226
.else
537
.else
227
	${REINPLACE_CMD} 's/libEGL\.so\.${PORTVERSION}/libEGL.so/' \
538
	${REINPLACE_CMD} '\,${LINUXBASE},!s/libEGL\.so\.${PORTVERSION}/libEGL.so/' \
228
		${TMPPLIST}
539
		${TMPPLIST}
229
.endif
540
.endif
230
.if ${NVVERSION} < 358.009
541
.if ${NVVERSION} < 358.009
231
	${REINPLACE_CMD} '/nvidia-modeset.ko/d' ${TMPPLIST}
542
	${REINPLACE_CMD} '/nvidia-modeset.ko/d' ${TMPPLIST}
232
.endif
543
.endif
233
.if ${NVVERSION} >= 361.028
544
.if ${NVVERSION} >= 361.028
234
	${REINPLACE_CMD} -E '/(EGL_nvidia\.so|GLESv[12](_CM)?(\.so\.[0-9]+\.[0-9]+))$$/d' \
545
	${REINPLACE_CMD} -E '\,${LINUXBASE},!{/(EGL_nvidia\.so|GLESv[12](_CM)?(\.so\.[0-9]+\.[0-9]+))$$/d;}' \
235
		${TMPPLIST}
546
		${TMPPLIST}
236
.else
547
.else
237
	${REINPLACE_CMD} -E '/\/lib\/libGLESv[12](_CM)?(\.so)?(_nvidia.so(\.[0-9]|\.[0-9]+\.[0-9]+)?)?$$/d ; \
548
	${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}
549
		/libEGL_nvidia\.so\.${PORTVERSION}/d;}' ${TMPPLIST}
239
.endif
550
.endif
551
	${REINPLACE_CMD} -E ${PLIST_RE:S/^/-e /} ${TMPPLIST}
240
# rename libGL.so, libEGL.so and libGLESv2.so
552
# rename libGL.so, libEGL.so and libGLESv2.so
241
	${MV} -f ${STAGEDIR}${PREFIX}/lib/libGL.so \
553
	${MV} -f ${STAGEDIR}${PREFIX}/lib/libGL.so \
242
		${STAGEDIR}${PREFIX}/lib/libGL-NVIDIA.so
554
		${STAGEDIR}${PREFIX}/lib/libGL-NVIDIA.so
Lines 256-261 post-install: .SILENT Link Here
256
	${INSTALL_DATA} ${WRKDIR}/nvidia.conf \
568
	${INSTALL_DATA} ${WRKDIR}/nvidia.conf \
257
		${STAGEDIR}${PREFIX}/etc/libmap.d/
569
		${STAGEDIR}${PREFIX}/etc/libmap.d/
258
570
571
post-install-LINUX-on:
572
.for f d in ${LINUX_DATA}
573
	${MKDIR} ${STAGEDIR}${LINUXBASE}${d}
574
	${INSTALL_DATA} ${LINUX_WRKSRC}/${f} ${STAGEDIR}${LINUXBASE}${d}
575
.endfor
576
	${MKDIR} ${STAGEDIR}${LINUXBASE}/usr/bin
577
	${INSTALL_SCRIPT} ${LINUX_WRKSRC}/nvidia-bug-report.sh \
578
		${STAGEDIR}${LINUXBASE}/usr/bin
579
.for p in ${LINUX_PROGS}
580
	${INSTALL_PROGRAM} ${LINUX_WRKSRC}/${p} ${STAGEDIR}${LINUXBASE}/usr/bin
581
.endfor
582
	${MKDIR} ${STAGEDIR}${LINUXBASE}/usr/share/man/man1
583
.for m in ${LINUX_MANS}
584
	${INSTALL_MAN} ${LINUX_WRKSRC}/${m}.1.gz \
585
		${STAGEDIR}${LINUXBASE}/usr/share/man/man1
586
.endfor
587
	${MKDIR} ${STAGEDIR}${LINUXBASE}${LINUX_LIBDIR}/tls
588
	${MKDIR} ${STAGEDIR}${LINUXBASE}${LINUX_LIBDIR}/vdpau
589
.for l in ${LINUX_LIBS}
590
	${INSTALL_LIB} ${LINUX_WRKSRC}/${l} \
591
		${STAGEDIR}${LINUXBASE}${LINUX_LIBDIR}/${l}
592
.endfor
593
.for s t in ${LINUX_LINKS}
594
	${RLN} ${STAGEDIR}${LINUXBASE}${LINUX_LIBDIR}/${s} \
595
		${STAGEDIR}${LINUXBASE}${LINUX_LIBDIR}/${t}
596
.endfor
597
.if "${LINUX_ARCH}" == "x86_64"
598
	${MKDIR} ${STAGEDIR}${LINUXBASE}/usr/lib/tls
599
	${MKDIR} ${STAGEDIR}${LINUXBASE}/usr/lib/vdpau
600
.for l in ${LINUX32_LIBS}
601
	${INSTALL_LIB} ${LINUX_WRKSRC}/32/${l} \
602
		${STAGEDIR}${LINUXBASE}/usr/lib/${l}
603
.endfor
604
.for s t in ${LINUX32_LINKS}
605
	${RLN} ${STAGEDIR}${LINUXBASE}/usr/lib/${s} \
606
		${STAGEDIR}${LINUXBASE}/usr/lib/${t}
607
.endfor
608
.endif
609
259
# Target below can be used instead of standard `makesum' to correctly
610
# Target below can be used instead of standard `makesum' to correctly
260
# update distinfo (i.e., keeping other driver version entries intact)
611
# update distinfo (i.e., keeping other driver version entries intact)
261
.if ${.TARGETS:Mupdate-distinfo}
612
.if ${.TARGETS:Mupdate-distinfo}
Lines 269-272 update-distinfo: makesum .SILENT Link Here
269
		${MASTERDIR}/distinfo
620
		${MASTERDIR}/distinfo
270
	${RM} ${DISTINFO_FILE} ${MASTERDIR}/distinfo.bak
621
	${RM} ${DISTINFO_FILE} ${MASTERDIR}/distinfo.bak
271
622
272
.include <bsd.port.mk>
623
.include <bsd.port.post.mk>
(-)x11/nvidia-driver/distinfo (+12 lines)
Lines 1-13 Link Here
1
TIMESTAMP = 1482026038
1
TIMESTAMP = 1482026038
2
SHA256 (NVIDIA-FreeBSD-x86_64-390.87.tar.gz) = 221c80982378a333f541646d5d2030c72311c491f5a0f98b93fdd95cd5be11fc
2
SHA256 (NVIDIA-FreeBSD-x86_64-390.87.tar.gz) = 221c80982378a333f541646d5d2030c72311c491f5a0f98b93fdd95cd5be11fc
3
SIZE (NVIDIA-FreeBSD-x86_64-390.87.tar.gz) = 63648591
3
SIZE (NVIDIA-FreeBSD-x86_64-390.87.tar.gz) = 63648591
4
SHA256 (NVIDIA-Linux-x86_64-390.87.run) = 38290a0b19e86037112f22397e02be9cdd6bcd677dd926b2977bbd49119e611e
5
SIZE (NVIDIA-Linux-x86_64-390.87.run) = 82690871
4
SHA256 (NVIDIA-FreeBSD-x86-390.87.tar.gz) = a2e61b0c541aa9bdcde7de43cd88a7ce5ff3de9fdafe60fa7d6e10942186d7d4
6
SHA256 (NVIDIA-FreeBSD-x86-390.87.tar.gz) = a2e61b0c541aa9bdcde7de43cd88a7ce5ff3de9fdafe60fa7d6e10942186d7d4
5
SIZE (NVIDIA-FreeBSD-x86-390.87.tar.gz) = 64326801
7
SIZE (NVIDIA-FreeBSD-x86-390.87.tar.gz) = 64326801
8
SHA256 (NVIDIA-Linux-x86-390.87.run) = 5c29c5f9d80a07ea71219c6323fe5fc9b7577847b970f23161685d4b890b9966
9
SIZE (NVIDIA-Linux-x86-390.87.run) = 47959124
6
SHA256 (NVIDIA-FreeBSD-x86_64-340.107.tar.gz) = 047efae28cc81e4d56c64d2a0c15d9b7ff07f09bba22696464de8276334a4df7
10
SHA256 (NVIDIA-FreeBSD-x86_64-340.107.tar.gz) = 047efae28cc81e4d56c64d2a0c15d9b7ff07f09bba22696464de8276334a4df7
7
SIZE (NVIDIA-FreeBSD-x86_64-340.107.tar.gz) = 61179967
11
SIZE (NVIDIA-FreeBSD-x86_64-340.107.tar.gz) = 61179967
12
SHA256 (NVIDIA-Linux-x86_64-340.107.run) = e3e359964ed568008584c4fb2dbcb76b76a848591d1456a783e94dd0c7f6695f
13
SIZE (NVIDIA-Linux-x86_64-340.107.run) = 70233686
8
SHA256 (NVIDIA-FreeBSD-x86-340.107.tar.gz) = 1978ae48512d8a693979b153463c76954d2aec91a6b2a568b3aa1198e5b3d199
14
SHA256 (NVIDIA-FreeBSD-x86-340.107.tar.gz) = 1978ae48512d8a693979b153463c76954d2aec91a6b2a568b3aa1198e5b3d199
9
SIZE (NVIDIA-FreeBSD-x86-340.107.tar.gz) = 60305952
15
SIZE (NVIDIA-FreeBSD-x86-340.107.tar.gz) = 60305952
16
SHA256 (NVIDIA-Linux-x86-340.107.run) = 8d8bd2b04019eaa55d848534e2dbdc460be918e7731ecd8da87199ef9c1a0856
17
SIZE (NVIDIA-Linux-x86-340.107.run) = 39016798
10
SHA256 (NVIDIA-FreeBSD-x86_64-304.137.tar.gz) = 231693189e1bdf5c1dd02315cde5ef9ed6c0854564314438f2f40f9788a34120
18
SHA256 (NVIDIA-FreeBSD-x86_64-304.137.tar.gz) = 231693189e1bdf5c1dd02315cde5ef9ed6c0854564314438f2f40f9788a34120
11
SIZE (NVIDIA-FreeBSD-x86_64-304.137.tar.gz) = 36474676
19
SIZE (NVIDIA-FreeBSD-x86_64-304.137.tar.gz) = 36474676
20
SHA256 (NVIDIA-Linux-x86_64-304.137.run) = eb1f56db3a2bea13e3ccde7b5ae14abe8cd6c6dbe69af4c71c68a623cc96e3e2
21
SIZE (NVIDIA-Linux-x86_64-304.137.run) = 70087133
12
SHA256 (NVIDIA-FreeBSD-x86-304.137.tar.gz) = 5f874133853eacc5b9a10311cec22d3c4898db7f75b92bb6c12d5be5126516fb
22
SHA256 (NVIDIA-FreeBSD-x86-304.137.tar.gz) = 5f874133853eacc5b9a10311cec22d3c4898db7f75b92bb6c12d5be5126516fb
13
SIZE (NVIDIA-FreeBSD-x86-304.137.tar.gz) = 35399011
23
SIZE (NVIDIA-FreeBSD-x86-304.137.tar.gz) = 35399011
24
SHA256 (NVIDIA-Linux-x86-304.137.run) = ca98379fc2090bdfe8b74113d6ac7bcc7eadbd86a489c3c4ec4cd5ba9f6064f8
25
SIZE (NVIDIA-Linux-x86-304.137.run) = 41504115
(-)x11/nvidia-driver/files/extra-patch-src-nvidia_linux.c (+35 lines)
Line 0 Link Here
1
--- src/nvidia_linux.c.orig	2017-09-14 20:46:30 UTC
2
+++ src/nvidia_linux.c
3
@@ -35,23 +35,16 @@ int linux_ioctl_nvidia(
4
     struct linux_ioctl_args *args
5
 )
6
 {
7
-    struct file *fp;
8
-    int error;
9
-#if __FreeBSD_version >= 1000053
10
-    cap_rights_t rights;
11
-#endif
12
-    u_long cmd;
13
+    static const uint32_t dir[4] = { IOC_VOID, IOC_IN, IOC_OUT, IOC_INOUT };
14
 
15
-    error = fget(td, args->fd, cap_rights_init(&rights, CAP_IOCTL), &fp);
16
-    if (error != 0)
17
-        return error;
18
-
19
-    cmd = args->cmd;
20
-
21
-    error = fo_ioctl(fp, cmd, (caddr_t)args->arg, td->td_ucred, td);
22
-    fdrop(fp, td);
23
-
24
-    return error;
25
+    if ((args->cmd & (1<<29)) != 0) {
26
+        /* FreeBSD has only 13 bits to encode the size. */
27
+        printf("nvidia: pid %d (%s): ioctl cmd=0x%x size too large\n",
28
+            (int)td->td_proc->p_pid, td->td_proc->p_comm, args->cmd);
29
+        return (EINVAL);
30
+    }
31
+    args->cmd = (args->cmd & ~IOC_DIRMASK) | dir[args->cmd >> 30];
32
+    return (sys_ioctl(td, (struct ioctl_args *)args));
33
 }
34
 
35
 struct linux_ioctl_handler nvidia_handler = {
(-)x11/nvidia-driver/files/extra-patch-src_nvidia-modeset_nvidia-modeset-freebsd.c (-2 / +76 lines)
Lines 1-7 Link Here
1
--- src/nvidia-modeset/nvidia-modeset-freebsd.c.orig	2016-05-28 15:44:11 UTC
1
--- src/nvidia-modeset/nvidia-modeset-freebsd.c.orig	2018-08-21 23:09:28 UTC
2
+++ src/nvidia-modeset/nvidia-modeset-freebsd.c
2
+++ src/nvidia-modeset/nvidia-modeset-freebsd.c
3
@@ -245,7 +245,7 @@ struct nvkms_ref_ptr {
3
@@ -25,6 +25,10 @@
4
 #include <sys/poll.h>
5
 #include <sys/file.h>
6
 #include <sys/proc.h>
7
+#include <sys/uio.h>
8
+#include <sys/ktrace.h>
9
+#include <sys/sysent.h>
10
+#include <sys/sysproto.h>
4
 
11
 
12
 #include "nvkms-ioctl.h"
13
 #include "nvidia-modeset-os-interface.h"
14
@@ -250,7 +254,7 @@ struct nvkms_ref_ptr {
15
 
5
 struct nvkms_ref_ptr* NVKMS_API_CALL nvkms_alloc_ref_ptr(void *ptr)
16
 struct nvkms_ref_ptr* NVKMS_API_CALL nvkms_alloc_ref_ptr(void *ptr)
6
 {
17
 {
7
-    struct nvkms_ref_ptr *ref_ptr = nvkms_alloc(sizeof(*ref_ptr), NV_FALSE);
18
-    struct nvkms_ref_ptr *ref_ptr = nvkms_alloc(sizeof(*ref_ptr), NV_FALSE);
Lines 9-11 Link Here
9
     if (ref_ptr) {
20
     if (ref_ptr) {
10
         mtx_init(&ref_ptr->lock, "nvkms-ref-ptr-lock", NULL, MTX_SPIN);
21
         mtx_init(&ref_ptr->lock, "nvkms-ref-ptr-lock", NULL, MTX_SPIN);
11
         // The ref_ptr owner counts as a reference on the ref_ptr itself.
22
         // The ref_ptr owner counts as a reference on the ref_ptr itself.
23
@@ -750,6 +754,7 @@ static int nvkms_ioctl(
24
     u_long nr, size;
25
     NvBool ret;
26
     struct NvKmsIoctlParams *params;
27
+    register_t regparams[3];
28
     struct nvkms_per_open *popen;
29
     int status;
30
 
31
@@ -771,6 +776,18 @@ static int nvkms_ioctl(
32
 
33
     params = (struct NvKmsIoctlParams*) data;
34
 
35
+    if (KTRPOINT(td, KTR_SYSCALL)) {
36
+        regparams[0] = params->cmd;
37
+        regparams[1] = params->size;
38
+        regparams[2] = params->address;
39
+#ifdef __amd64__
40
+        if (SV_PROC_ABI(td->td_proc) == SV_ABI_LINUX && SV_CURPROC_FLAG(SV_LP64))
41
+            ktrsyscall(16, 3, regparams);
42
+        else
43
+#endif
44
+            ktrsyscall(54, 3, regparams);
45
+    }
46
+
47
     sx_xlock(&nvkms_lock);
48
     ret = nvKmsIoctl(popen->data,
49
                      params->cmd,
50
@@ -873,27 +890,16 @@ static int nvkms_linux_ioctl_function(
51
     struct linux_ioctl_args *args
52
 )
53
 {
54
-    struct file *fp;
55
-    int status;
56
-    u_long cmd;
57
+    static const uint32_t dir[4] = { IOC_VOID, IOC_IN, IOC_OUT, IOC_INOUT };
58
 
59
-#if NV_FGET_HAS_CAP_RIGHTS_T_ARG
60
-    cap_rights_t rights;
61
-    status = fget(td, args->fd, cap_rights_init(&rights, CAP_IOCTL), &fp);
62
-#else
63
-    status = fget(td, args->fd, &fp);
64
-#endif
65
-
66
-    if (status != 0) {
67
-        return status;
68
+    if ((args->cmd & (1<<29)) != 0) {
69
+        /* FreeBSD has only 13 bits to encode the size. */
70
+        printf("nvidia: pid %d (%s): ioctl cmd=0x%x size too large\n",
71
+            (int)td->td_proc->p_pid, td->td_proc->p_comm, args->cmd);
72
+        return (EINVAL);
73
     }
74
-
75
-    cmd = args->cmd;
76
-
77
-    status = fo_ioctl(fp, cmd, (caddr_t)args->arg, td->td_ucred, td);
78
-    fdrop(fp, td);
79
-
80
-    return status;
81
+    args->cmd = (args->cmd & ~IOC_DIRMASK) | dir[args->cmd >> 30];
82
+    return (sys_ioctl(td, (struct ioctl_args *)args));
83
 }
84
 
85
 #define NVKMS_LINUX_IOCTL_MIN _IOC(0, NVKMS_IOCTL_MAGIC, NVKMS_IOCTL_CMD, 0)
(-)x11/nvidia-driver/files/extra-patch-src_nvidia_nvidia_linux.c (+35 lines)
Line 0 Link Here
1
--- src/nvidia/nvidia_linux.c.orig	2017-09-14 20:46:30 UTC
2
+++ src/nvidia/nvidia_linux.c
3
@@ -35,23 +35,16 @@ int linux_ioctl_nvidia(
4
     struct linux_ioctl_args *args
5
 )
6
 {
7
-    struct file *fp;
8
-    int error;
9
-#if __FreeBSD_version >= 1000053
10
-    cap_rights_t rights;
11
-#endif
12
-    u_long cmd;
13
+    static const uint32_t dir[4] = { IOC_VOID, IOC_IN, IOC_OUT, IOC_INOUT };
14
 
15
-    error = fget(td, args->fd, cap_rights_init(&rights, CAP_IOCTL), &fp);
16
-    if (error != 0)
17
-        return error;
18
-
19
-    cmd = args->cmd;
20
-
21
-    error = fo_ioctl(fp, cmd, (caddr_t)args->arg, td->td_ucred, td);
22
-    fdrop(fp, td);
23
-
24
-    return error;
25
+    if ((args->cmd & (1<<29)) != 0) {
26
+        /* FreeBSD has only 13 bits to encode the size. */
27
+        printf("nvidia: pid %d (%s): ioctl cmd=0x%x size too large\n",
28
+            (int)td->td_proc->p_pid, td->td_proc->p_comm, args->cmd);
29
+        return (EINVAL);
30
+    }
31
+    args->cmd = (args->cmd & ~IOC_DIRMASK) | dir[args->cmd >> 30];
32
+    return (sys_ioctl(td, (struct ioctl_args *)args));
33
 }
34
 
35
 struct linux_ioctl_handler nvidia_handler = {
(-)x11/nvidia-driver/files/uvm_Makefile (+6 lines)
Line 0 Link Here
1
# $FreeBSD$
2
3
KMOD=	nvidia-uvm
4
SRCS=	uvm_unsupported.c
5
6
.include <bsd.kmod.mk>
(-)x11/nvidia-driver/files/uvm_unsupported.c (+131 lines)
Line 0 Link Here
1
/*
2
 * Dummy nvidia uvm implementation
3
 *
4
 * $FreeBSD$
5
 */
6
7
#include <sys/types.h>
8
#include <sys/conf.h>
9
#include <sys/ioccom.h>
10
#include <sys/kernel.h>
11
#include <sys/module.h>
12
#include <sys/proc.h>
13
#include <sys/sysproto.h>
14
15
#include <machine/../linux/linux.h>
16
#include <machine/../linux/linux_proto.h>
17
#include <compat/linux/linux_ioctl.h>
18
19
#define	UVM_INITIALIZE		_IOWR(0, 1, UVM_INITIALIZE_PARAMS)
20
#define	LINUX_UVM_INITIALIZE	0x30000001
21
typedef struct
22
{
23
	uint64_t	flags __aligned(8);
24
	uint32_t	rmStatus;
25
} UVM_INITIALIZE_PARAMS;
26
27
#define	UVM_DEINITIALIZE	_IO(0, 2)
28
#define	LINUX_UVM_DEINITIALIZE	0x30000002
29
30
#define	NV_ERR_NOT_SUPPORTED	0x00000056
31
32
static int
33
uvm_open(struct cdev *dev __unused, int oflags __unused, int devtype __unused,
34
    struct thread *td __unused)
35
{
36
	return (0);
37
}
38
39
static int
40
uvm_close(struct cdev *dev __unused, int fflag __unused, int devtype __unused,
41
    struct thread *td __unused)
42
{
43
	return (0);
44
}
45
46
static int
47
uvm_ioctl(struct cdev *dev __unused, u_long cmd, caddr_t data,
48
    int fflag __unused, struct thread *td __unused)
49
{
50
	switch (cmd) {
51
	case UVM_DEINITIALIZE:
52
		return (0);
53
	case UVM_INITIALIZE:
54
		((UVM_INITIALIZE_PARAMS *)data)->rmStatus
55
		    = NV_ERR_NOT_SUPPORTED;
56
		return (0);
57
	}
58
	return (EINVAL);
59
}
60
61
static int
62
linux_uvm_ioctl(struct thread *td, struct linux_ioctl_args *args)
63
{
64
	static const uint32_t dir[4] = { IOC_VOID, IOC_IN, IOC_OUT, IOC_INOUT };
65
66
	if ((args->cmd & (1<<29)) != 0) {
67
		/* FreeBSD has only 13 bits to encode the size. */
68
		printf("uvm: pid %d (%s): ioctl cmd=0x%x size too large\n",
69
		    (int)td->td_proc->p_pid, td->td_proc->p_comm, args->cmd);
70
		return (EINVAL);
71
	}
72
73
	switch (args->cmd) {
74
	case LINUX_UVM_DEINITIALIZE:
75
		args->cmd = UVM_DEINITIALIZE;
76
		break;
77
	case LINUX_UVM_INITIALIZE:
78
		args->cmd = UVM_INITIALIZE;
79
		break;
80
	default:
81
		args->cmd = (args->cmd & ~IOC_DIRMASK) | dir[args->cmd >> 30];
82
		break;
83
	}
84
85
	return (sys_ioctl(td, (struct ioctl_args *)args));
86
}
87
88
static struct cdev *uvm_dev;
89
90
static struct cdevsw uvm_cdevsw = {
91
	.d_version = D_VERSION,
92
	.d_open = uvm_open,
93
	.d_close = uvm_close,
94
	.d_ioctl = uvm_ioctl,
95
	.d_name = "nvidia-uvm",
96
};
97
98
struct linux_ioctl_handler linux_uvm_handler = {
99
	linux_uvm_ioctl,
100
	UVM_INITIALIZE & 0xffff,
101
	UVM_DEINITIALIZE & 0xffff
102
};
103
104
static int
105
uvm_load(struct module *m __unused, int what, void *arg __unused)
106
{
107
	int error = 0;
108
109
	switch (what) {
110
	case MOD_LOAD:
111
		error = make_dev_p(MAKEDEV_CHECKNAME | MAKEDEV_WAITOK,
112
		    &uvm_dev, &uvm_cdevsw, 0, UID_ROOT, GID_WHEEL, 0666,
113
		    "nvidia-uvm");
114
		if (error != 0)
115
			break;
116
117
		linux_ioctl_register_handler(&linux_uvm_handler);
118
		break;
119
	case MOD_UNLOAD:
120
		linux_ioctl_unregister_handler(&linux_uvm_handler);
121
		destroy_dev(uvm_dev);
122
		break;
123
	default:
124
		error = EOPNOTSUPP;
125
		break;
126
	}
127
	return (error);
128
}
129
130
DEV_MODULE(uvm, uvm_load, NULL);
131
MODULE_DEPEND(uvm, linux, 1, 1, 1);
(-)x11/nvidia-driver/pkg-plist (-41 / +166 lines)
Lines 34-80 man/man1/nvidia-smi.1.gz Link Here
34
%%MODULESDIR%%/extensions/.nvidia/libglx.so.1
34
%%MODULESDIR%%/extensions/.nvidia/libglx.so.1
35
/%%KMODDIR%%/nvidia.ko
35
/%%KMODDIR%%/nvidia.ko
36
/%%KMODDIR%%/nvidia-modeset.ko
36
/%%KMODDIR%%/nvidia-modeset.ko
37
%%LINUX%%%%LINUXBASE%%/usr/lib/libEGL.so.%%SHLIB_VERSION%%
37
%%LINUX%%/%%KMODDIR%%/nvidia-uvm.ko
38
%%LINUX%%%%LINUXBASE%%/usr/lib/libEGL.so.1
38
%%LINUX%%%%LINUXBASE%%/etc/OpenCL/vendors/nvidia.icd
39
%%LINUX%%@postunexec [ ! -e %%LINUXBASE%%/usr/lib/libEGL.so.1.0.0 ] || ln -sf libEGL.so.1.0.0 %%LINUXBASE%%/usr/lib/libEGL.so.1
39
%%LINUX%%%%LINUXBASE%%/etc/vulkan/icd.d/nvidia_icd.json
40
%%LINUX%%%%LINUXBASE%%/usr/lib/libEGL_nvidia.so.%%SHLIB_VERSION%%
40
%%LINUX%%%%LINUXBASE%%/usr/bin/nvidia-bug-report.sh
41
%%LINUX%%%%LINUXBASE%%/usr/lib/libEGL_nvidia.so.0
41
%%LINUX%%%%LINUXBASE%%/usr/bin/nvidia-cuda-mps-control
42
%%LINUX%%%%LINUXBASE%%/usr/lib/libEGL_nvidia.so
42
%%LINUX%%%%LINUXBASE%%/usr/bin/nvidia-cuda-mps-server
43
%%LINUX%%%%LINUXBASE%%/usr/lib/libGL.so.%%SHLIB_VERSION%%
43
%%LINUX%%%%LINUXBASE%%/usr/bin/nvidia-debugdump
44
%%LINUX%%%%LINUXBASE%%/usr/lib/libGL.so.1
44
%%LINUX%%%%LINUXBASE%%/usr/bin/nvidia-persistenced
45
%%LINUX%%@postunexec [ ! -e %%LINUXBASE%%/usr/lib/libGL.so.1.2.0 ] || ln -sf libGL.so.1.2.0 %%LINUXBASE%%/usr/lib/libGL.so.1
45
%%LINUX%%%%LINUXBASE%%/usr/bin/nvidia-settings
46
%%LINUX%%%%LINUXBASE%%/usr/lib/libGLESv1_CM.so.%%SHLIB_VERSION%%
46
%%LINUX%%%%LINUXBASE%%/usr/bin/nvidia-smi
47
%%LINUX%%%%LINUXBASE%%/usr/lib/libGLESv1_CM.so.1
47
%%LINUX%%%%LINUXBASE%%/usr/bin/nvidia-xconfig
48
%%LINUX%%%%LINUXBASE%%/usr/lib/libGLESv1_CM.so
48
%%LINUX32%%%%LINUXBASE%%/usr/lib/libEGL.so.1
49
%%LINUX%%%%LINUXBASE%%/usr/lib/libGLESv1_CM_nvidia.so.1
49
%%LINUX32%%@postunexec [ ! -e %%LINUXBASE%%/usr/lib/libEGL.so.1.0.0 ] || ln -sf libEGL.so.1.0.0 %%LINUXBASE%%/usr/lib/libEGL.so.1
50
%%LINUX%%%%LINUXBASE%%/usr/lib/libGLESv1_CM_nvidia.so.%%SHLIB_VERSION%%
50
%%LINUX32%%%%LINUXBASE%%/usr/lib/libEGL.so.X
51
%%LINUX%%%%LINUXBASE%%/usr/lib/libGLESv2.so.%%SHLIB_VERSION%%
51
%%LINUX32%%%%LINUXBASE%%/usr/lib/libEGL_nvidia.so.0
52
%%LINUX%%%%LINUXBASE%%/usr/lib/libGLESv2.so.2
52
%%LINUX32%%%%LINUXBASE%%/usr/lib/libEGL_nvidia.so.%%SHLIB_VERSION%%
53
%%LINUX%%%%LINUXBASE%%/usr/lib/libGLESv2.so
53
%%LINUX32%%%%LINUXBASE%%/usr/lib/libGL.so.1
54
%%LINUX%%%%LINUXBASE%%/usr/lib/libGLESv2_nvidia.so.2
54
%%LINUX32%%@postunexec [ ! -e %%LINUXBASE%%/usr/lib/libGL.so.1.2.0 ] || ln -sf libGL.so.1.2.0 %%LINUXBASE%%/usr/lib/libGL.so.1
55
%%LINUX%%%%LINUXBASE%%/usr/lib/libGLESv2_nvidia.so.%%SHLIB_VERSION%%
55
%%LINUX32%%%%LINUXBASE%%/usr/lib/libGL.so.X
56
%%LINUX%%%%LINUXBASE%%/usr/lib/libGLdispatch.so
56
%%LINUX32%%%%LINUXBASE%%/usr/lib/libGLdispatch.so.0
57
%%LINUX%%%%LINUXBASE%%/usr/lib/libGLdispatch.so.0
57
%%LINUX32%%%%LINUXBASE%%/usr/lib/libGLESv1_CM.so.1
58
%%LINUX%%%%LINUXBASE%%/usr/lib/libOpenGL.so
58
%%LINUX32%%%%LINUXBASE%%/usr/lib/libGLESv1_CM.so.X
59
%%LINUX%%%%LINUXBASE%%/usr/lib/libOpenGL.so.0
59
%%LINUX32%%%%LINUXBASE%%/usr/lib/libGLESv1_CM_nvidia.so.1
60
%%LINUX%%%%LINUXBASE%%/usr/lib/libcuda.so.%%SHLIB_VERSION%%
60
%%LINUX32%%%%LINUXBASE%%/usr/lib/libGLESv1_CM_nvidia.so.%%SHLIB_VERSION%%
61
%%LINUX%%%%LINUXBASE%%/usr/lib/libcuda.so.1
61
%%LINUX32%%%%LINUXBASE%%/usr/lib/libGLESv2.so.2
62
%%LINUX%%%%LINUXBASE%%/usr/lib/libnvidia-eglcore.so.%%SHLIB_VERSION%%
62
%%LINUX32%%%%LINUXBASE%%/usr/lib/libGLESv2.so.X
63
%%LINUX%%%%LINUXBASE%%/usr/lib/libnvidia-glcore.so.%%SHLIB_VERSION%%
63
%%LINUX32%%%%LINUXBASE%%/usr/lib/libGLESv2_nvidia.so.2
64
%%LINUX%%%%LINUXBASE%%/usr/lib/libnvidia-glsi.so.%%SHLIB_VERSION%%
64
%%LINUX32%%%%LINUXBASE%%/usr/lib/libGLESv2_nvidia.so.%%SHLIB_VERSION%%
65
%%LINUX%%%%LINUXBASE%%/usr/lib/libnvidia-tls.so.%%SHLIB_VERSION%%
65
%%LINUX32%%%%LINUXBASE%%/usr/lib/libGLX.so
66
%%LINUX%%%%LINUXBASE%%/usr/lib/libvdpau.so.%%SHLIB_VERSION%%
66
%%LINUX32%%%%LINUXBASE%%/usr/lib/libGLX.so.0
67
%%LINUX%%%%LINUXBASE%%/usr/lib/libvdpau.so.1
67
%%LINUX32%%%%LINUXBASE%%/usr/lib/libGLX_indirect.so.0
68
%%LINUX%%%%LINUXBASE%%/usr/lib/libvdpau_nvidia.so
68
%%LINUX32%%%%LINUXBASE%%/usr/lib/libGLX_nvidia.so.0
69
%%LINUX%%%%LINUXBASE%%/usr/lib/libvdpau_trace.so
69
%%LINUX32%%%%LINUXBASE%%/usr/lib/libGLX_nvidia.so.%%SHLIB_VERSION%%
70
%%LINUX%%%%LINUXBASE%%/usr/lib/vdpau/libvdpau_nvidia.so.%%SHLIB_VERSION%%
70
%%LINUX32%%%%LINUXBASE%%/usr/lib/libOpenGL.so
71
%%LINUX%%%%LINUXBASE%%/usr/lib/vdpau/libvdpau_nvidia.so.1
71
%%LINUX32%%%%LINUXBASE%%/usr/lib/libOpenGL.so.0
72
%%LINUX%%%%LINUXBASE%%/usr/lib/vdpau/libvdpau_trace.so.%%SHLIB_VERSION%%
72
%%LINUX32%%%%LINUXBASE%%/usr/lib/libcuda.so
73
%%LINUX%%%%LINUXBASE%%/usr/lib/vdpau/libvdpau_trace.so.1
73
%%LINUX32%%%%LINUXBASE%%/usr/lib/libcuda.so.1
74
%%LINUX%%@postexec %%LINUXBASE%%/sbin/ldconfig -r %%LINUXBASE%%
74
%%LINUX32%%%%LINUXBASE%%/usr/lib/libcuda.so.%%SHLIB_VERSION%%
75
%%LINUX%%@postunexec %%LINUXBASE%%/sbin/ldconfig -r %%LINUXBASE%%
75
%%LINUX32%%%%LINUXBASE%%/usr/lib/libnvcuvid.so
76
%%LINUX%%@dir %%LINUXBASE%%/usr/lib/vdpau
76
%%LINUX32%%%%LINUXBASE%%/usr/lib/libnvcuvid.so.1
77
%%LINUX%%@dir %%LINUXBASE%%/usr/lib
77
%%LINUX32%%%%LINUXBASE%%/usr/lib/libnvcuvid.so.%%SHLIB_VERSION%%
78
%%LINUX32%%%%LINUXBASE%%/usr/lib/libnvidia-compiler.so.%%SHLIB_VERSION%%
79
%%LINUX32%%%%LINUXBASE%%/usr/lib/libnvidia-eglcore.so.%%SHLIB_VERSION%%
80
%%LINUX32%%%%LINUXBASE%%/usr/lib/libnvidia-encode.so
81
%%LINUX32%%%%LINUXBASE%%/usr/lib/libnvidia-encode.so.1
82
%%LINUX32%%%%LINUXBASE%%/usr/lib/libnvidia-encode.so.%%SHLIB_VERSION%%
83
%%LINUX32%%%%LINUXBASE%%/usr/lib/libnvidia-fatbinaryloader.so.%%SHLIB_VERSION%%
84
%%LINUX32%%%%LINUXBASE%%/usr/lib/libnvidia-fbc.so
85
%%LINUX32%%%%LINUXBASE%%/usr/lib/libnvidia-fbc.so.1
86
%%LINUX32%%%%LINUXBASE%%/usr/lib/libnvidia-fbc.so.%%SHLIB_VERSION%%
87
%%LINUX32%%%%LINUXBASE%%/usr/lib/libnvidia-glcore.so.%%SHLIB_VERSION%%
88
%%LINUX32%%%%LINUXBASE%%/usr/lib/libnvidia-glsi.so.%%SHLIB_VERSION%%
89
%%LINUX32%%%%LINUXBASE%%/usr/lib/libnvidia-ifr.so
90
%%LINUX32%%%%LINUXBASE%%/usr/lib/libnvidia-ifr.so.1
91
%%LINUX32%%%%LINUXBASE%%/usr/lib/libnvidia-ifr.so.%%SHLIB_VERSION%%
92
%%LINUX32%%%%LINUXBASE%%/usr/lib/libnvidia-ml.so
93
%%LINUX32%%%%LINUXBASE%%/usr/lib/libnvidia-ml.so.1
94
%%LINUX32%%%%LINUXBASE%%/usr/lib/libnvidia-ml.so.%%SHLIB_VERSION%%
95
%%LINUX32%%%%LINUXBASE%%/usr/lib/libnvidia-opencl.so.1
96
%%LINUX32%%%%LINUXBASE%%/usr/lib/libnvidia-opencl.so.%%SHLIB_VERSION%%
97
%%LINUX32%%%%LINUXBASE%%/usr/lib/libnvidia-ptxjitcompiler.so
98
%%LINUX32%%%%LINUXBASE%%/usr/lib/libnvidia-ptxjitcompiler.so.1
99
%%LINUX32%%%%LINUXBASE%%/usr/lib/libnvidia-ptxjitcompiler.so.%%SHLIB_VERSION%%
100
%%LINUX32%%%%LINUXBASE%%/usr/lib/libnvidia-tls.so.%%SHLIB_VERSION%%
101
%%LINUX32%%%%LINUXBASE%%/usr/lib/libvdpau_nvidia.so.%%SHLIB_VERSION%%
102
%%LINUX32%%%%LINUXBASE%%/usr/lib/tls/libnvidia-tls.so.%%SHLIB_VERSION%%
103
%%LINUX32%%%%LINUXBASE%%/usr/lib/vdpau/libvdpau_nvidia.so.1
104
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libEGL.so.1
105
%%LINUX%%@postunexec [ ! -e %%LINUXBASE%%%%LINUX_LIBDIR%%/libEGL.so.1.0.0 ] || ln -sf libEGL.so.1.0.0 %%LINUXBASE%%%%LINUX_LIBDIR%%/libEGL.so.1
106
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libEGL.so.X
107
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libEGL_nvidia.so.0
108
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libEGL_nvidia.so.%%SHLIB_VERSION%%
109
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libGL.so.1
110
%%LINUX%%@postunexec [ ! -e %%LINUXBASE%%%%LINUX_LIBDIR%%/libGL.so.1.2.0 ] || ln -sf libGL.so.1.2.0 %%LINUXBASE%%%%LINUX_LIBDIR%%/libGL.so.1
111
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libGL.so.X
112
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libGLdispatch.so.0
113
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libGLESv1_CM.so.1
114
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libGLESv1_CM.so.X
115
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libGLESv1_CM_nvidia.so.1
116
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libGLESv1_CM_nvidia.so.%%SHLIB_VERSION%%
117
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libGLESv2.so.2
118
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libGLESv2.so.X
119
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libGLESv2_nvidia.so.2
120
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libGLESv2_nvidia.so.%%SHLIB_VERSION%%
121
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libGLX.so
122
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libGLX.so.0
123
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libGLX_indirect.so.0
124
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libGLX_nvidia.so.0
125
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libGLX_nvidia.so.%%SHLIB_VERSION%%
126
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libOpenGL.so
127
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libOpenGL.so.0
128
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libXvMCNVIDIA.so.%%SHLIB_VERSION%%
129
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libXvMCNVIDIA_dynamic.so
130
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libXvMCNVIDIA_dynamic.so.1
131
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libcuda.so
132
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libcuda.so.1
133
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libcuda.so.%%SHLIB_VERSION%%
134
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libnvcuvid.so
135
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libnvcuvid.so.1
136
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libnvcuvid.so.%%SHLIB_VERSION%%
137
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libnvidia-cfg.so
138
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libnvidia-cfg.so.1
139
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libnvidia-cfg.so.%%SHLIB_VERSION%%
140
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libnvidia-compiler.so.%%SHLIB_VERSION%%
141
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libnvidia-egl-wayland.so.1
142
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libnvidia-egl-wayland.so.X
143
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libnvidia-eglcore.so.%%SHLIB_VERSION%%
144
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libnvidia-encode.so
145
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libnvidia-encode.so.1
146
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libnvidia-encode.so.%%SHLIB_VERSION%%
147
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libnvidia-fatbinaryloader.so.%%SHLIB_VERSION%%
148
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libnvidia-fbc.so
149
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libnvidia-fbc.so.1
150
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libnvidia-fbc.so.%%SHLIB_VERSION%%
151
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libnvidia-glcore.so.%%SHLIB_VERSION%%
152
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libnvidia-glsi.so.%%SHLIB_VERSION%%
153
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libnvidia-gtk2.so.%%SHLIB_VERSION%%
154
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libnvidia-gtk3.so.%%SHLIB_VERSION%%
155
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libnvidia-ifr.so
156
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libnvidia-ifr.so.1
157
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libnvidia-ifr.so.%%SHLIB_VERSION%%
158
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libnvidia-ml.so
159
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libnvidia-ml.so.1
160
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libnvidia-ml.so.%%SHLIB_VERSION%%
161
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libnvidia-opencl.so.1
162
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libnvidia-opencl.so.%%SHLIB_VERSION%%
163
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libnvidia-ptxjitcompiler.so
164
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libnvidia-ptxjitcompiler.so.1
165
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libnvidia-ptxjitcompiler.so.%%SHLIB_VERSION%%
166
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libnvidia-tls.so.%%SHLIB_VERSION%%
167
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/libvdpau_nvidia.so.%%SHLIB_VERSION%%
168
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/tls/libnvidia-tls.so.%%SHLIB_VERSION%%
169
%%LINUX%%%%LINUXBASE%%%%LINUX_LIBDIR%%/vdpau/libvdpau_nvidia.so.1
170
%%LINUX%%%%LINUXBASE%%/usr/share/egl/egl_external_platform.d/10_nvidia_wayland.json
171
%%LINUX%%%%LINUXBASE%%/usr/share/glvnd/egl_vendor.d/10_nvidia.json
172
%%LINUX%%%%LINUXBASE%%/usr/share/man/man1/nvidia-cuda-mps-control.1.gz
173
%%LINUX%%%%LINUXBASE%%/usr/share/man/man1/nvidia-persistenced.1.gz
174
%%LINUX%%%%LINUXBASE%%/usr/share/man/man1/nvidia-settings.1.gz
175
%%LINUX%%%%LINUXBASE%%/usr/share/man/man1/nvidia-smi.1.gz
176
%%LINUX%%%%LINUXBASE%%/usr/share/man/man1/nvidia-xconfig.1.gz
177
%%LINUX%%%%LINUXBASE%%/usr/share/nvidia/monitoring.conf
178
%%LINUX%%%%LINUXBASE%%/usr/share/nvidia/nvidia-application-profiles-%%SHLIB_VERSION%%-key-documentation
179
%%LINUX%%%%LINUXBASE%%/usr/share/nvidia/nvidia-application-profiles-%%SHLIB_VERSION%%-rc
180
%%LINUX%%%%LINUXBASE%%/usr/share/nvidia/pci.ids
181
%%LINUX%%@postexec %%LINUXBASE%%/sbin/ldconfig
182
%%LINUX%%@postunexec %%LINUXBASE%%/sbin/ldconfig
183
%%LINUX%%@dir %%LINUXBASE%%/etc/OpenCL/vendors
184
%%LINUX%%@dir %%LINUXBASE%%/etc/OpenCL
185
%%LINUX%%@dir %%LINUXBASE%%/etc/vulkan/icd.d
186
%%LINUX%%@dir %%LINUXBASE%%/etc/vulkan
187
%%LINUX%%@dir %%LINUXBASE%%/etc
188
%%LINUX%%@dir %%LINUXBASE%%/usr/bin
189
%%LINUX32%%@dir %%LINUXBASE%%/usr/lib/tls
190
%%LINUX32%%@dir %%LINUXBASE%%/usr/lib/vdpau
191
%%LINUX32%%@dir %%LINUXBASE%%/usr/lib
192
%%LINUX%%@dir %%LINUXBASE%%%%LINUX_LIBDIR%%/tls
193
%%LINUX%%@dir %%LINUXBASE%%%%LINUX_LIBDIR%%/vdpau
194
%%LINUX%%@dir %%LINUXBASE%%%%LINUX_LIBDIR%%
195
%%LINUX%%@dir %%LINUXBASE%%/usr/share/egl/egl_external_platform.d
196
%%LINUX%%@dir %%LINUXBASE%%/usr/share/egl
197
%%LINUX%%@dir %%LINUXBASE%%/usr/share/glvnd/egl_vendor.d
198
%%LINUX%%@dir %%LINUXBASE%%/usr/share/glvnd
199
%%LINUX%%@dir %%LINUXBASE%%/usr/share/man/man1
200
%%LINUX%%@dir %%LINUXBASE%%/usr/share/man
201
%%LINUX%%@dir %%LINUXBASE%%/usr/share/nvidia
202
%%LINUX%%@dir %%LINUXBASE%%/usr/share
78
%%LINUX%%@dir %%LINUXBASE%%/usr
203
%%LINUX%%@dir %%LINUXBASE%%/usr
79
%%LINUX%%@dir %%LINUXBASE%%
204
%%LINUX%%@dir %%LINUXBASE%%
80
%%LINUX%%@dir /compat
205
%%LINUX%%@dir /compat

Return to bug 217901