Index: head/emulators/i386-wine-devel/Makefile.inc =================================================================== --- head/emulators/i386-wine-devel/Makefile.inc (revision 382291) +++ head/emulators/i386-wine-devel/Makefile.inc (revision 382292) @@ -1,98 +1,98 @@ # Created by: David Naylor # $FreeBSD$ PORTNAME= wine -PORTVERSION= 1.7.38 +PORTVERSION= 1.7.39 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 MAINTAINER= dbn@FreeBSD.org COMMENT?= 32bit Microsoft Windows compatibility environment for 64bit FreeBSD LICENSE= LGPL21 LGPL3 LICENSE_COMB= dual LICENSE_FILE= ${WRKDIR}/LICENSE OPTIONS_DEFINE= GECKO MONO GECKO_DESC= Bundle Gecko MSI package for Wine MONO_DESC= Bundle Mono MSI package for Wine CONFLICTS_INSTALL?= wine-[0-9]* wine-compholio-[0-9]* wine-devel-[0-9]* \ i386-wine-[0-9]* i386-wine-compholio-[0-9]* EXTRACT_AFTER_ARGS= -C / --exclude +COMPACT_MANIFEST --exclude +MANIFEST \ --exclude +MTREE_DIRS --exclude share/licenses/'*' \ --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 SLAVEDIR?= ${.CURDIR} PKGINSTALL= ${SLAVEDIR}/files/pkg-install PKGDEINSTALL= ${PKGINSTALL} PKGMESSAGE= ${WRKDIR}/pkg-message SUB_FILES= pkg-message USE_LDCONFIG32= ${PREFIX}/lib32 ${PREFIX}/lib32/wine USES= tar:xz GECKO_RUN_DEPENDS= ${DATADIR}/gecko/wine_gecko-2.36-x86.msi:${PORTSDIR}/emulators/wine-gecko-devel MONO_RUN_DEPENDS= ${DATADIR}/mono/wine-mono-4.5.6.msi:${PORTSDIR}/emulators/wine-mono-devel # Included for OPSYS and OSVERSION .include .for osrel in 8 9 10 11 .if ${OSREL:C/\..*//} == ${osrel} PLIST_SUB+= OSREL${osrel}="" .if ${PKGNAMESUFFIX} == -devel PLIST_SUB+= OSREL${osrel}-DEVEL="" PLIST_SUB+= OSREL${osrel}-COMPHOLIO="@comment " .else PLIST_SUB+= OSREL${osrel}-DEVEL="@comment " PLIST_SUB+= OSREL${osrel}-COMPHOLIO="" .endif .else PLIST_SUB+= OSREL${osrel}="@comment " PLIST_SUB+= OSREL${osrel}-DEVEL="@comment " PLIST_SUB+= OSREL${osrel}-COMPHOLIO="@comment " .endif .endfor .if ${OPSYS} != FreeBSD || (!(${OSVERSION} >= 804000 && ${OSVERSION} < 900000) && !(${OSVERSION} >= 901000 && ${OSVERSION} < 1000000) && !(${OSVERSION} >= 1000510 && ${OSVERSION} < 1100000) && !(${OSVERSION} >= 1100048 && ${OSVERSION} < 1200000)) IGNORE= binaries compiled for FreeBSD 8.4+, 9.1+, 10.0+ and -current only DISTFILES= .endif do-extract: @${RM} -rf ${WRKDIR} @${MKDIR} ${WRKDIR} ${EXTRACT_CMD} ${EXTRACT_BEFORE_ARGS} ${_DISTDIR}/${EXTRACT_ONLY} -C ${WRKDIR} --include '/usr/local/share/licenses/${PKGNAME}/LICENSE' -s '|/usr/local/share/licenses/${PKGNAME}/||g' do-install: ${EXTRACT_CMD} ${EXTRACT_BEFORE_ARGS} ${_DISTDIR}/${EXTRACT_ONLY} ${EXTRACT_AFTER_ARGS} ${PLIST}: fetch ${TAR} -tf ${_DISTDIR}/${EXTRACT_ONLY} ${EXTRACT_AFTER_ARGS} | ${GREP} -v '/$$' | ${SED} 's|/usr/local/||g' | sort > ${PLIST} port-update: ${RM} -f ${SLAVEDIR}/distinfo ${SLAVEDIR}/distinfo~ ${SLAVEDIR}/pkg-plist.* .for osrel in 8 9 10 11 .for suffix in -devel -compholio ${MAKE} fetch OSREL=${osrel} OSVERSION=${osrel}99999 UNAME_r=${osrel} PKGNAMESUFFIX=${suffix} ${MAKE} makesum OSREL=${osrel} OSVERSION=${osrel}99999 UNAME_r=${osrel} PKGNAMESUFFIX=${suffix} ${CAT} ${SLAVEDIR}/distinfo >> ${SLAVEDIR}/distinfo~ ${RM} ${SLAVEDIR}/distinfo ${MAKE} pkg-plist.${osrel}${suffix:tu} PLIST=pkg-plist.${osrel}${suffix:tu} OSREL=${osrel} OSVERSION=${osrel}99999 UNAME_r=${osrel} PKGNAMESUFFIX=${suffix} .endfor .endfor ${MV} ${SLAVEDIR}/distinfo~ ${SLAVEDIR}/distinfo python ${FILESDIR}/mergeplist.py ${SLAVEDIR}/pkg-plist.* > ${PLIST} ${RM} ${SLAVEDIR}/pkg-plist.* .include Index: head/emulators/i386-wine-devel/distinfo =================================================================== --- head/emulators/i386-wine-devel/distinfo (revision 382291) +++ head/emulators/i386-wine-devel/distinfo (revision 382292) @@ -1,16 +1,16 @@ -SHA256 (freebsd:8:x86:64/i386-wine-devel-1.7.38,1.txz) = 30f6591e38a4d4965cae6d4907b0f79a95904db7298e631027950a2c84a366b5 -SIZE (freebsd:8:x86:64/i386-wine-devel-1.7.38,1.txz) = 49046512 -SHA256 (freebsd:8:x86:64/i386-wine-compholio-1.7.38,1.txz) = 81547c4955282bad3b1ed200da693afc88e34191f8fae24c44c6aa311287fbae -SIZE (freebsd:8:x86:64/i386-wine-compholio-1.7.38,1.txz) = 51990216 -SHA256 (freebsd:9:x86:64/i386-wine-devel-1.7.38,1.txz) = 90d78184615eed1f9bc6489bea4bef4ca62bd8c8aaab3cd9261e77782acf0207 -SIZE (freebsd:9:x86:64/i386-wine-devel-1.7.38,1.txz) = 47604836 -SHA256 (freebsd:9:x86:64/i386-wine-compholio-1.7.38,1.txz) = b97dee3a5115989c1b720b7fec42269ffe0da8767bc3e50c894ec796b6f12381 -SIZE (freebsd:9:x86:64/i386-wine-compholio-1.7.38,1.txz) = 50564384 -SHA256 (freebsd:10:x86:64/i386-wine-devel-1.7.38,1.txz) = 95f0caeb402422bc0930335605acf04e7fd7d21e6667eb9a2fc2efe9290b6153 -SIZE (freebsd:10:x86:64/i386-wine-devel-1.7.38,1.txz) = 33451232 -SHA256 (freebsd:10:x86:64/i386-wine-compholio-1.7.38,1.txz) = d1ecf6b81dfa184c99d617ae7ccbb67009a66d0d744d8eb47c892028c02c5338 -SIZE (freebsd:10:x86:64/i386-wine-compholio-1.7.38,1.txz) = 36385284 -SHA256 (freebsd:11:x86:64/i386-wine-devel-1.7.38,1.txz) = b049a1597a7ba1def69bbc2e83410bd8d6808ce79ce18125e2e18ed57cb63936 -SIZE (freebsd:11:x86:64/i386-wine-devel-1.7.38,1.txz) = 36777020 -SHA256 (freebsd:11:x86:64/i386-wine-compholio-1.7.38,1.txz) = 776f8f41729f4ef72fafeb3083aa9e9020cd74904f8b6015a231912eca22b0f6 -SIZE (freebsd:11:x86:64/i386-wine-compholio-1.7.38,1.txz) = 42339692 +SHA256 (freebsd:8:x86:64/i386-wine-devel-1.7.39,1.txz) = f04b929cf4f33e1fa43176bd42228dba0a94c0d9aca66a02a541e7aca3c8528b +SIZE (freebsd:8:x86:64/i386-wine-devel-1.7.39,1.txz) = 49173680 +SHA256 (freebsd:8:x86:64/i386-wine-compholio-1.7.39,1.txz) = b1442aae1decce3020bbff69d59920e1c01a50966672cb17ca65b0295cd793a0 +SIZE (freebsd:8:x86:64/i386-wine-compholio-1.7.39,1.txz) = 52121512 +SHA256 (freebsd:9:x86:64/i386-wine-devel-1.7.39,1.txz) = d96666f2900bec7d1478f762e08001d0220897aa70fdb159cd8a2fa39b415e8a +SIZE (freebsd:9:x86:64/i386-wine-devel-1.7.39,1.txz) = 47711356 +SHA256 (freebsd:9:x86:64/i386-wine-compholio-1.7.39,1.txz) = b363958a41c08031851b59e04ba6acc6a990325db111cf5c3a8f7a49ea800ade +SIZE (freebsd:9:x86:64/i386-wine-compholio-1.7.39,1.txz) = 50669060 +SHA256 (freebsd:10:x86:64/i386-wine-devel-1.7.39,1.txz) = e764b053c5e91b8f22a15614c03189cb0ff0334958cb9f2b499b346b5b0ad479 +SIZE (freebsd:10:x86:64/i386-wine-devel-1.7.39,1.txz) = 33573184 +SHA256 (freebsd:10:x86:64/i386-wine-compholio-1.7.39,1.txz) = dbf9796b1af3a5c8d564c649385221167a68b754390626773d636a65f8f09245 +SIZE (freebsd:10:x86:64/i386-wine-compholio-1.7.39,1.txz) = 36505136 +SHA256 (freebsd:11:x86:64/i386-wine-devel-1.7.39,1.txz) = 7991ce05c6061a249c45edb3385368a13120303a8f68b3cab08d6f47dbebe1ba +SIZE (freebsd:11:x86:64/i386-wine-devel-1.7.39,1.txz) = 36823548 +SHA256 (freebsd:11:x86:64/i386-wine-compholio-1.7.39,1.txz) = 429293e2806eee8230f5d988c9deb796fca05a89bed69916b500c587a166d2d8 +SIZE (freebsd:11:x86:64/i386-wine-compholio-1.7.39,1.txz) = 42170216 Index: head/emulators/i386-wine-devel/files/nvidia.sh =================================================================== --- head/emulators/i386-wine-devel/files/nvidia.sh (revision 382291) +++ head/emulators/i386-wine-devel/files/nvidia.sh (revision 382292) @@ -1,213 +1,213 @@ #!/bin/sh -# Copyright 2010, 2011, 2012, 2013 David Naylor . +# Copyright 2010 to 2015 David Naylor # Copyright 2012 Jan Beich # All rights reserved. # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions are met: # # 1. Redistributions of source code must retain the above copyright notice, # this list of conditions and the following disclaimer. # # 2. Redistributions in binary form must reproduce the above copyright notice, # this list of conditions and the following disclaimer in the documentation # and/or other materials provided with the distribution. # # THIS SOFTWARE IS PROVIDED BY David Naylor ``AS IS'' AND ANY EXPRESS OR IMPLIED # WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF # MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO # EVENT SHALL David Naylor OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, # OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, # EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # # The views and conclusions contained in the software and documentation are # those of the authors and should not be interpreted as representing official # policies, either expressed or implied, of David Naylor. # Version 1.0 - 2010/05/28 # - initial release # Version 1.1 - 2010/10/04 # - add support for 256 driver series # - use passive connections for FTP # - allow resuming of downloads if they were interrupted # - add license and copyright notice # Version 1.2 - 2010/10/17 # - try to save the NVIDIA tarball under $PORTSDIR/distfiles # - obay $PREFIX # - extract files directly to destination (avoids using /tmp) # Version 1.3 - 2010/11/02 # - add support for future driver series # Version 1.4 - 2011/05/23 # - add support for legacy drivers # Version 1.5 - 2011/10/23 # - add support for no-fetch mode # - backup the original openGL.so.1 library # Version 1.6 - 2012/06/06 # - add support for pkgng # Version 1.7 - 2012/06/23 # - make nVidia detection more robust # - allow mixed pkg/pkgng operation # Version 1.8 - 2012/07/02 # - fix mixed pkg/pkgng operation # Version 1.9 - 2012/10/31 # - fix permission of extracts files # Version 1.10 - 2013/05/06 # - s/wine-fbsd64/i386-wine/g # - fix unwanted failures due to `set -e` # 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 # Version 1.13 - 2014/08/05 # - add detection for i386-wine-compholio # Version 1.14 - 2014/12/26 # - gracefully handle a corrupt nVidia tarball # - provide checksum and size information for nVidia tarball +# Version 1.15 - 2015/03/10 +# - handle nvidia-driver with package name suffix +# - handle i386-wine with arbitary package name suffix +# - remove support for old pkg_ tools set -e PORTSDIR=${PORTSDIR:-/usr/ports} PREFIX=${PREFIX:-/usr/local} DISTDIR=${DISTDIR:-${PORTSDIR}/distfiles} if [ -d $DISTDIR ] then cd $DISTDIR NO_REMOVE_NVIDIA="yes" else cd /tmp/ fi terminate() { echo "!!! $2 !!!" echo "Terminating..." exit $1 } args=`getopt dn $*` if [ $? -ne 0 ] then echo "Usage: $0 [-n]" exit 7 fi set -- $args while true do case $1 in -d) rm -f ${PREFIX}/lib32/libGL.so.1 rm -f ${PREFIX}/lib32/libGLcore.so.1 ${PREFIX}/lib32/libnvidia-tls.so.1 rm -f ${PREFIX}/lib32/libnvidia-glcore.so.1 ${PREFIX}/lib32/libnvidia-tls.so.1 rm -rf ${PREFIX}/lib32/.nvidia/ if [ -d ${PREFIX}/lib32/.libGL-new ] then ln -s .libGL-new/libGL.so.1 ${PREFIX}/lib32/libGL.so.1 else ln -s .libGL/libGL.so.1 ${PREFIX}/lib32/libGL.so.1 fi exit 0 ;; -n) NO_FETCH=yes ;; --) shift break ;; esac shift done version() { local ret pkg="$1" if [ -f "/usr/local/sbin/pkg" ] then - ret=`pkg query -g '%v' $pkg || true` + ret=`pkg query -g '%v' "$pkg" || true` fi - if [ -z "$ret" ] - then - ret=`pkg_info -E $pkg'*' | cut -f 3 -d - || true` - fi # installed manually or failed to register - if [ -z "$ret" ] && [ "$pkg" = "nvidia-driver" ] + if [ -z "$ret" ] && [ "$pkg" = "nvidia-driver*" ] then ret=`sed -n "s/.*Version: //p" 2> /dev/null \ $PREFIX/share/doc/NVIDIA_GLX-1.0/README || true` fi echo "$ret" } [ `whoami` = root ] \ || terminate 254 "This script should be run as root" echo "===> Patching i386-wine to work with x11/nvidia-driver:" if [ -z "${WINE}" ] then - WINE=`version i386-wine; version i386-wine-devel; version i386-wine-compholio` + WINE=`version 'i386-wine*'` fi [ -n "$WINE" ] \ || terminate 255 "Unable to detect i386-wine, please install first" echo "=> Detected i386-wine: ${WINE}" -NV=`version nvidia-driver` +NV=`version 'nvidia-driver*'` [ -n "$NV" ] \ || terminate 1 "Unable to detect nvidia-driver, please install first" echo "=> Detected nvidia-driver: ${NV}" NVIDIA=${NV} NV=`echo ${NV} | cut -f 1 -d _ | cut -f 1 -d ,` if [ ! -f NVIDIA-FreeBSD-x86-${NV}.tar.gz ] || !(tar -tf NVIDIA-FreeBSD-x86-${NV}.tar.gz > /dev/null 2>&1) then [ -n "$NO_FETCH" ] \ && terminate 8 "NVIDIA-FreeBSD-x86-${NV}.tar.gz unavailable" echo "=> Downloading NVIDIA-FreeBSD-x86-${NV}.tar.gz from ftp://download.nvidia.com..." rm -f NVIDIA-FreeBSD-x86-${NV}.tar.gz fetch -apRr ftp://download.nvidia.com/XFree86/FreeBSD-x86/${NV}/NVIDIA-FreeBSD-x86-${NV}.tar.gz \ || terminate 2 "Failed to download NVIDIA-FreeBSD-x86-${NV}.tar.gz" echo "=> Downloaded NVIDIA-FreeBSD-x86-${NV}.tar.gz" echo "Please check the following information against /usr/ports/x11/nvidia-driver/distinfo" sha256 NVIDIA-FreeBSD-x86-${NV}.tar.gz echo "SIZE (NVIDIA-FreeBSD-x86-${NV}.tar.gz) = `stat -f "%z" NVIDIA-FreeBSD-x86-${NV}.tar.gz`" fi echo "=> Extracting NVIDIA-FreeBSD-x86-${NV}.tar.gz to $PREFIX/lib32..." EXTRACT_LIST="libGL.so.1" case $NV in 195*|173*|96*|71*) EXTRACT_LIST="$EXTRACT_LIST libGLcore.so.1 libnvidia-tls.so.1" ;; *) EXTRACT_LIST="$EXTRACT_LIST libnvidia-glcore.so.1 libnvidia-tls.so.1" ;; esac EXTRACT_ARGS="--no-same-owner --no-same-permissions --strip-components 2 -C $PREFIX/lib32" for i in $EXTRACT_LIST do EXTRACT_ARGS="$EXTRACT_ARGS --include NVIDIA-FreeBSD-x86-${NV}/obj/$i" done umask 0333 tar $EXTRACT_ARGS -xvf NVIDIA-FreeBSD-x86-${NV}.tar.gz \ || terminate 3 "Failed to extract NVIDIA-FreeBSD-x86-${NV}.tar.gz" mkdir -m 0755 -p ${PREFIX}/lib32/.nvidia \ || terminate 9 "Failed to create .nvidia shadow directory" mv ${PREFIX}/lib32/libGL.so.1 ${PREFIX}/lib32/.nvidia/ \ || terminate 10 "Failed to move libGL.so.1 to .nvidia/ shadow directory" ln -s .nvidia/libGL.so.1 ${PREFIX}/lib32/libGL.so.1 \ || terminate 11 "Failed to link to .nvidia/libGL.so.1 in the shadow directory" echo "=> Cleaning up..." [ -n "$NO_REMOVE_NVIDIA" ] || rm -vf NVIDIA-FreeBSD-x86-${NV}.tar.gz \ || terminate 6 "Failed to remove files" echo "===> i386-wine-${WINE} successfully patched for nvidia-driver-${NVIDIA}"