Update emulators/i386-wine-devel to 1.7.4 and add stage support.

Port ChangeLog:
 - Update to version 1.7.4 (for pre-built packages for amd64)
 - Add stage support for both Makefile.(i386|inc)
 - Add the -devel suffix and remove LATEST_LINK
 - Teach the patch-nvidia.sh script about the -devel suffix
 - Track updates for the GECKO version (2.24)
This commit is contained in:
David Naylor 2013-11-03 21:13:34 +00:00
parent 5555d6b474
commit b5da36bb93
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=332648
6 changed files with 25 additions and 36 deletions

View File

@ -1,7 +1,6 @@
# Created by: David Naylor (dbn@FreeBSD.org)
# $FreeBSD$
NO_STAGE= yes
# Special bootstrapper to allow:
# - i386 specific port to be slave to ${PORTSDIR}/emulators/wine-devel
# - amd64 specific port to be normal port (based on binary package)

View File

@ -14,7 +14,6 @@ PKGDEINSTALL= ${PKGINSTALL}
RUN_DEPENDS= dri>0:${PORTSDIR}/graphics/dri
CONFLICTS_INSTALL= i386-wine-1.4* i386-wine-1.6* wine-[0-9]*
LATEST_LINK= ${PKGNAMEPREFIX}${PORTNAME}-devel
ACTUAL-PACKAGE-DEPENDS= ${DO_NADA}
WINELIBDIR= ${PREFIX}/lib32
@ -28,39 +27,39 @@ USE_LDCONFIG32= ${WINELIBDIR} ${WINELIBDIR}/wine
# under FreeBSD/amd64
post-install-script:
# Install bounce script to access the 32bit executables
${INSTALL_SCRIPT} ${.CURDIR}/files/binbounce ${PREFIX}/bin/wine
${INSTALL_SCRIPT} ${.CURDIR}/files/binbounce ${STAGEDIR}${PREFIX}/bin/wine
for i in `grep ^bin ${TMPPLIST} | xargs -n1 basename` ; do \
[ "$${i}" = "wine" ] || ${LN} -f ${PREFIX}/bin/wine ${PREFIX}/bin/$${i} ; \
[ "$${i}" = "wine" ] || ${LN} -f ${STAGEDIR}${PREFIX}/bin/wine ${STAGEDIR}${PREFIX}/bin/$${i} ; \
echo bin32/$${i} >> ${TMPPLIST} ; \
done
# Install dri libraries (internal libGL requirements)
${MKDIR} ${PREFIX}/lib32/.libGL/dri
${MKDIR} ${STAGEDIR}${PREFIX}/lib32/.libGL/dri
for i in ${LOCALBASE}/lib/dri/*.so; do \
${INSTALL_DATA} $${i} ${PREFIX}/lib32/.libGL/dri/ ; \
${INSTALL_DATA} $${i} ${STAGEDIR}${PREFIX}/lib32/.libGL/dri/ ; \
echo lib32/.libGL/dri/$${i##*/} >> ${TMPPLIST} ; \
done
# Find all libraries that are linked too (via ldd(1))
grep -v '[@%]' ${TMPPLIST} | sed "s!^!${PREFIX}/!g" | \
grep -v '[@%]' ${TMPPLIST} | sed "s!^!${STAGEDIR}${PREFIX}/!g" | \
xargs -n1 file -F' ' | grep ELF | cut -f1 -d' ' | \
env LD_LIBRARY_PATH=${PREFIX}/lib32:${LD_LIBRARY_PATH} xargs ldd -f '%p\n' \
| sort -u | grep -v '^\(/usr\)\?/lib' | grep -v "^${PREFIX}/lib32/libwine.so" \
| grep -v "^${PREFIX}/lib32/wine" > ${WRKDIR}/winelibs
env LD_LIBRARY_PATH=${STAGEDIR}${PREFIX}/lib32:${LD_LIBRARY_PATH} xargs ldd -f '%p\n' \
| sort -u | grep -v '^\(/usr\)\?/lib' | grep -v "^${STAGEDIR}${PREFIX}/lib32/libwine.so" \
| grep -v "^${STAGEDIR}${PREFIX}/lib32/wine" > ${WRKDIR}/winelibs
for i in `cat ${WRKDIR}/winelibs` ; do \
if [ `basename $${i}` != libGL.so.1 ]; then \
${INSTALL_DATA} $${i} ${PREFIX}/lib32/ ; \
${INSTALL_DATA} $${i} ${STAGEDIR}${PREFIX}/lib32/ ; \
echo lib32/$${i##*/} >> ${TMPPLIST} ; \
else \
${INSTALL_DATA} $${i} ${PREFIX}/lib32/.libGL/ ; \
${INSTALL_DATA} $${i} ${STAGEDIR}${PREFIX}/lib32/.libGL/ ; \
echo lib32/.libGL/libGL.so.1 >> ${TMPPLIST} ; \
fi ; \
done
# Find all soft dependancies (via strings(1))
grep -v '[@%]' ${TMPPLIST} | sed "s!^!${PREFIX}/!g" | \
grep -v '[@%]' ${TMPPLIST} | sed "s!^!${STAGEDIR}${PREFIX}/!g" | \
xargs -n1 file -F' ' | grep ELF | cut -f1 -d' ' | xargs strings | \
grep '^lib.*\.so' | sort -u > ${WRKDIR}/winesoftlibs
for i in `cat ${WRKDIR}/winesoftlibs` ; do \
if [ -e ${LOCALBASE}/lib/$${i} ] && [ -z "`grep $${i} ${TMPPLIST}`" ] ; then \
${INSTALL_DATA} ${LOCALBASE}/lib/$${i} ${PREFIX}/lib32/ ; \
${INSTALL_DATA} ${LOCALBASE}/lib/$${i} ${STAGEDIR}${PREFIX}/lib32/ ; \
echo lib32/$${i} >> ${TMPPLIST} ; \
fi ; \
done
@ -73,11 +72,8 @@ post-install-script:
fi
echo '@dirrm bin32' >> ${TMPPLIST}
# Install nvidia patching script
${INSTALL_SCRIPT} ${.CURDIR}/files/nvidia.sh ${DATADIR}/patch-nvidia.sh
${INSTALL_SCRIPT} ${.CURDIR}/files/nvidia.sh ${STAGEDIR}${DATADIR}/patch-nvidia.sh
echo ${DATADIR:S|$(PREFIX)/||}/patch-nvidia.sh >> ${TMPPLIST}
@${ECHO}
${SETENV} PKG_PREFIX=${PREFIX} ${SH} ${PKGINSTALL} ${PKGNAME} PRE-INSTALL
${SETENV} PKG_PREFIX=${PREFIX} ${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL
@${CAT} ${PKGMESSAGE}
post-package-script:

View File

@ -2,11 +2,12 @@
# $FreeBSD$
PORTNAME= wine
PORTVERSION= 1.7.3
PORTVERSION= 1.7.4
PORTEPOCH= 1
CATEGORIES= emulators
MASTER_SITES= LOCAL/dbn/repos/wine/${DIST_SUBDIR}/${PORTVERSION}
PKGNAMEPREFIX= i386-
PKGNAMESUFFIX= -devel
DISTNAME= ${PKGNAME}
EXTRACT_SUFX= .txz
DIST_SUBDIR= freebsd:${OSREL:C/\..*//}:x86:64
@ -23,11 +24,11 @@ GECKO_DESC= Bundle Gecko MSI package for Wine
MONO_DESC= Bundle Mono MSI package for Wine
CONFLICTS_INSTALL= i386-wine-1.4* i386-wine-1.6* wine-[0-9]*
LATEST_LINK= ${PKGNAMEPREFIX}${PORTNAME}-devel
EXTRACT_AFTER_ARGS= -C / --exclude +COMPACT_MANIFEST --exclude +MANIFEST \
--exclude +MTREE_DIRS --exclude share/licenses/'*' \
--exclude libdata/ldconfig32/${LATEST_LINK}
--exclude libdata/ldconfig32/${UNIQUENAME} \
-s '|/usr/local|${STAGEDIR}${PREFIX}|gs'
NO_BUILD= yes
ONLY_FOR_ARCHS= i386 amd64
ONLY_FOR_ARCHS_REASON= wine only runs on x86 architecture
@ -46,17 +47,13 @@ DISTFILES=
.endif
.if ${PORT_OPTIONS:MGECKO}
RUN_DEPENDS+= ${DATADIR}/gecko/wine_gecko-2.21-x86.msi:${PORTSDIR}/emulators/wine-gecko-devel
RUN_DEPENDS+= ${DATADIR}/gecko/wine_gecko-2.24-x86.msi:${PORTSDIR}/emulators/wine-gecko-devel
.endif
.if ${PORT_OPTIONS:MMONO}
RUN_DEPENDS+= ${DATADIR}/mono/wine-mono-0.0.8.msi:${PORTSDIR}/emulators/wine-mono
.endif
.if ${PREFIX} != /usr/local
EXTRACT_AFTER_ARGS+= -s '|/usr/local|${PREFIX}|gs'
.endif
do-extract:
@${RM} -rf ${WRKDIR}
@${MKDIR} ${WRKDIR}
@ -64,10 +61,6 @@ do-extract:
do-install:
${EXTRACT_CMD} ${EXTRACT_BEFORE_ARGS} ${_DISTDIR}/${EXTRACT_ONLY} ${EXTRACT_AFTER_ARGS}
@${ECHO}
${SETENV} PKG_PREFIX=${PREFIX} ${SH} ${PKGINSTALL} ${PKGNAME} PRE-INSTALL
${SETENV} PKG_PREFIX=${PREFIX} ${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL
@${CAT} ${PKGMESSAGE}
pkg-plist: extract
${TAR} -tf ${_DISTDIR}/${EXTRACT_ONLY} ${EXTRACT_AFTER_ARGS} | ${GREP} -v '/$$' | ${SED} 's|/usr/local/||g' | sort > ${WRKDIR}/pkg-plist

View File

@ -1,4 +1,4 @@
SHA256 (freebsd:8:x86:64/i386-wine-1.7.3,1.txz) = 7b69980e29ab5ef911736dc12eacc8c3029c945b3a450d74d25690f52199ba18
SIZE (freebsd:8:x86:64/i386-wine-1.7.3,1.txz) = 23544556
SHA256 (freebsd:9:x86:64/i386-wine-1.7.3,1.txz) = c6d4cb915219e24e52a6954446ddf6f9e97fda7b2c1377190ea3fa538f968b3b
SIZE (freebsd:9:x86:64/i386-wine-1.7.3,1.txz) = 23495120
SHA256 (freebsd:9:x86:64/i386-wine-devel-1.7.4,1.txz) = b0128f9f70d4f530ebe944b25ccafb056f86f2115bcb9398e03dcccac3ec8648
SIZE (freebsd:9:x86:64/i386-wine-devel-1.7.4,1.txz) = 23907440
SHA256 (freebsd:9:x86:64/i386-wine-devel-1.7.4,1.txz) = b0128f9f70d4f530ebe944b25ccafb056f86f2115bcb9398e03dcccac3ec8648
SIZE (freebsd:9:x86:64/i386-wine-devel-1.7.4,1.txz) = 23907440

View File

@ -61,6 +61,8 @@
# Version 1.11 - 2013/05/26
# - install libGL.so.1 to ${PREFIX}/lib32/.nvidia and link to it
# - add deinstall option
# Version 1.12 - 2013/11/03
# - add detection for i386-wine-devel
set -e
@ -145,7 +147,7 @@ echo "===> Patching i386-wine to work with x11/nvidia-driver:"
if [ -z "${WINE}" ]
then
WINE=`version i386-wine`
WINE=`version i386-wine; version i386-wine-devel`
fi
[ -n "$WINE" ] \
|| terminate 255 "Unable to detect i386-wine, please install first"

View File

@ -2149,7 +2149,6 @@ share/wine/fonts/vgasysg.fon
share/wine/fonts/vgasysr.fon
share/wine/fonts/vgasyst.fon
share/wine/fonts/wingding.ttf
share/wine/generic.ppd
share/wine/l_intl.nls
share/wine/patch-nvidia.sh
share/wine/wine.inf