mirror of
https://git.FreeBSD.org/ports.git
synced 2024-10-22 20:41:26 +00:00
- Unbreak the build of 173.14.xx legacy version on recent -CURRENT, and
use more accurate OSVERSION value in the check (1000000
-> 1000041)
- Fix regression introduced in r342061, when <bsd.port.options.mk> was
included before OPTIONS definitions
- Rename patches to get rid of those ugly double underscores (yuck!)
- Wrap couple of overly long lines after STAGEDIR conversion in r342050
- Create `drivers' and `extensions' directories in pre-install, not in
pre-su-install: no longer needed for stagified port
- Fix regex when patching lib/Makefile for WITHOUT_LINUX handling, and
improve nearby expressions while here as well
This commit is contained in:
parent
cf511b57d6
commit
a7cfe935cf
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=346243
@ -42,8 +42,6 @@ NVVERSION= ${DISTVERSION:S/.//g}
|
||||
NVVERSION= ${DISTVERSION:S/.//g}00
|
||||
.endif
|
||||
|
||||
.include <bsd.port.options.mk>
|
||||
|
||||
.if ${NVVERSION} >= 1952200
|
||||
MASTER_SITE_SUBDIR= XFree86/FreeBSD-x86${ARCH_SUFX}/${DISTVERSION}
|
||||
ONLY_FOR_ARCHS= i386 amd64
|
||||
@ -53,21 +51,15 @@ ONLY_FOR_ARCHS= i386
|
||||
.endif
|
||||
|
||||
.if ${NVVERSION} <= 1904200
|
||||
EXTRA_PATCHES= ${FILESDIR}/legacy-patch-nvidia.lib.mk
|
||||
EXTRA_PATCHES= ${FILESDIR}/legacy-patch-mk-nvidia.lib.mk
|
||||
.else
|
||||
EXTRA_PATCHES= ${FILESDIR}/extra-patch-mk__nvidia.lib.mk
|
||||
EXTRA_PATCHES= ${FILESDIR}/extra-patch-mk-nvidia.lib.mk
|
||||
.endif
|
||||
|
||||
.if ${NVVERSION} >= 3312000
|
||||
EXTRA_PATCHES+= ${FILESDIR}/extra-patch-x11__driver__Makefile
|
||||
EXTRA_PATCHES+= ${FILESDIR}/extra-patch-x11-driver-Makefile
|
||||
.else
|
||||
EXTRA_PATCHES+= ${FILESDIR}/legacy-patch-x11__driver__Makefile
|
||||
.endif
|
||||
|
||||
.if ${OSVERSION} >= 1000000
|
||||
.if ${NVVERSION} == 1731435 || ${NVVERSION} == 718615
|
||||
BROKEN= does not compile
|
||||
.endif
|
||||
EXTRA_PATCHES+= ${FILESDIR}/legacy-patch-x11-driver-Makefile
|
||||
.endif
|
||||
|
||||
# Fix recent arbitrary memory access vulnerability in legacy drivers
|
||||
@ -94,11 +86,16 @@ OPTIONS_DEFINE+= WBINVD
|
||||
WBINVD_DESC= Flush CPU caches directly with WBINVD
|
||||
.endif
|
||||
|
||||
.include <bsd.port.pre.mk>
|
||||
|
||||
PLIST_SUB+= LINUXBASE=${LINUXBASE} SHLIB_VERSION=${PORTVERSION} \
|
||||
MODULESDIR=${MODULESDIR}
|
||||
|
||||
.include <bsd.port.options.mk>
|
||||
|
||||
# FreeBSD src SVN r254138 had broken 71.86.xx legacy series :(
|
||||
.if ${OSVERSION} > 1000041 && ${NVVERSION} <= 718615
|
||||
BROKEN= does not compile
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MLINUX}
|
||||
CONFLICTS= linux[-_]dri-[0-9]* linux-f10-dri-[0-9]*
|
||||
USE_LINUX= yes
|
||||
@ -175,6 +172,11 @@ post-patch: .SILENT
|
||||
/return SYSCTL_OUT\(req, bus_type/d' \
|
||||
${WRKSRC}/src/nvidia_sysctl.c
|
||||
.endif
|
||||
# Unbreak the build of 173.14.xx legacy series on recent -CURRENT
|
||||
.if ${NVVERSION} < 1952200 && ${NVVERSION} >= 1690400
|
||||
${REINPLACE_CMD} -E 's/os_(alloc|free)_contig_pages/NV_API_CALL &/' \
|
||||
${WRKSRC}/src/nv-freebsd.h
|
||||
.endif
|
||||
# Process OPTIONS
|
||||
.if ${PORT_OPTIONS:MFREEBSD_AGP}
|
||||
${REINPLACE_CMD} -E 's/undef (NV_SUPPORT_OS_AGP)/define \1/' \
|
||||
@ -192,7 +194,7 @@ post-patch: .SILENT
|
||||
${REINPLACE_CMD} -E 's/undef (NV_USE_WBINVD)/define \1/' \
|
||||
${WRKSRC}/src/nv-freebsd.h
|
||||
.endif
|
||||
${REINPLACE_CMD} -e '/exists/s/$$/ \&\& !defined(WITHOUT_LINUX)/' \
|
||||
${REINPLACE_CMD} -e 's/exists(\/.*/& \&\& !defined(WITHOUT_LINUX)/' \
|
||||
${WRKSRC}/lib/Makefile
|
||||
# Do not install VDPAU libraries which are provided by `multimedia/libvdpau'
|
||||
# port for a while now
|
||||
@ -220,19 +222,20 @@ post-patch: .SILENT
|
||||
${WRKSRC}/lib/libGL/Makefile
|
||||
# Do not execute afterinstall target (prevent automatic module registration
|
||||
# and "smart" installation of conflicting files heuristics)
|
||||
${REINPLACE_CMD} -e 's/afterinstall/dontexecute/' ${WRKSRC}/Makefile
|
||||
${REINPLACE_CMD} -e 's/beforeinstall/dontexecute/' \
|
||||
${REINPLACE_CMD} -e 's/afterinstall/&_dontexecute/' ${WRKSRC}/Makefile
|
||||
${REINPLACE_CMD} -e 's/beforeinstall/&_dontexecute/' \
|
||||
${WRKSRC}/lib/Makefile ${WRKSRC}/src/Makefile
|
||||
|
||||
pre-su-install:
|
||||
pre-install:
|
||||
# While this port silently assumes PREFIX == LOCALBASE, at least try to
|
||||
# pretend we support different paths thereof and make sure these directories
|
||||
# exist
|
||||
@cd ${STAGEDIR}${PREFIX} && ${MKDIR} ${MODULESDIR}
|
||||
@cd ${STAGEDIR}${PREFIX}/${MODULESDIR} && ${MKDIR} drivers extensions
|
||||
@${MKDIR} ${STAGEDIR}${PREFIX}/${MODULESDIR}/drivers \
|
||||
${STAGEDIR}${PREFIX}/${MODULESDIR}/extensions
|
||||
|
||||
post-install: .SILENT
|
||||
${INSTALL_SCRIPT} ${WRKSRC}/obj/nvidia-bug-report.sh ${STAGEDIR}${PREFIX}/bin
|
||||
${INSTALL_SCRIPT} ${WRKSRC}/obj/nvidia-bug-report.sh \
|
||||
${STAGEDIR}${PREFIX}/bin
|
||||
# pkg-plist is already overbloated, so use these hacks instead of PLIST_SUB's
|
||||
.if ${NVVERSION} < 817400
|
||||
${REINPLACE_CMD} -e '/libnvidia-cfg/d' ${TMPPLIST}
|
||||
@ -253,7 +256,8 @@ post-install: .SILENT
|
||||
.if ${NVVERSION} >= 3101900
|
||||
${REINPLACE_CMD} -e '/libXvMCNVIDIA/d' ${TMPPLIST}
|
||||
.else # some applications need this symlink (see PR ports/72877)
|
||||
${LN} -sf libXvMCNVIDIA.so.1 ${STAGEDIR}${PREFIX}/lib/libXvMCNVIDIA_dynamic.so.1
|
||||
${LN} -sf libXvMCNVIDIA.so.1 \
|
||||
${STAGEDIR}${PREFIX}/lib/libXvMCNVIDIA_dynamic.so.1
|
||||
.endif
|
||||
.if ${NVVERSION} < 3311300 || ${ARCH} == amd64
|
||||
${REINPLACE_CMD} -E '/lib(nvidia-)?(EGL|eglcore|GLESv|glsi)/d' \
|
||||
@ -263,4 +267,4 @@ post-install: .SILENT
|
||||
${REINPLACE_CMD} -e '/does not support PAE/,+1d' ${PKGMESSAGE}
|
||||
.endif
|
||||
|
||||
.include <bsd.port.post.mk>
|
||||
.include <bsd.port.mk>
|
||||
|
Loading…
Reference in New Issue
Block a user