Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 19 Feb 2014 20:32:17 +0000 (UTC)
From:      David Naylor <dbn@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r345144 - in head/emulators/i386-wine-devel: . files
Message-ID:  <201402192032.s1JKWH0g053216@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: dbn
Date: Wed Feb 19 20:32:17 2014
New Revision: 345144
URL: http://svnweb.freebsd.org/changeset/ports/345144
QAT: https://qat.redports.org/buildarchive/r345144/

Log:
  Update emulators/i386-wine-devel for FreeBSD 10.0 and 11 packages.

Added:
  head/emulators/i386-wine-devel/files/mergeplist.py   (contents, props changed)
Modified:
  head/emulators/i386-wine-devel/Makefile.inc
  head/emulators/i386-wine-devel/distinfo
  head/emulators/i386-wine-devel/pkg-plist

Modified: head/emulators/i386-wine-devel/Makefile.inc
==============================================================================
--- head/emulators/i386-wine-devel/Makefile.inc	Wed Feb 19 20:21:58 2014	(r345143)
+++ head/emulators/i386-wine-devel/Makefile.inc	Wed Feb 19 20:32:17 2014	(r345144)
@@ -45,8 +45,16 @@ MONO_RUN_DEPENDS=	${DATADIR}/mono/wine-m
 # Included for OPSYS and OSVERSION
 .include <bsd.port.pre.mk>
 
-.if ${OPSYS} != FreeBSD || (!(${OSVERSION} >= 803000 && ${OSVERSION} < 900000) && !(${OSVERSION} >= 901000 && ${OSVERSION} < 1000000))
-IGNORE=		binaries compiled for FreeBSD 8.3+ and 9.1+ only
+.for osrel in 8 9 10 11
+.if ${OSREL:C/\..*//} == ${osrel}
+PLIST_SUB+=	OSREL${osrel}=""
+.else
+PLIST_SUB+=	OSREL${osrel}="@comment "
+.endif
+.endfor
+
+.if ${OPSYS} != FreeBSD || (!(${OSVERSION} >= 803000 && ${OSVERSION} < 900000) && !(${OSVERSION} >= 901000 && ${OSVERSION} < 1000000) && !(${OSVERSION} >= 1000510 && ${OSVERSION} < 1100000) && !(${OSVERSION} >= 1100007 && ${OSVERSION} < 1200000))
+IGNORE=         binaries compiled for FreeBSD 8.3+, 9.1+, 10.0+ and -current only
 DISTFILES=
 .endif
 
@@ -58,20 +66,21 @@ do-extract:
 do-install:
 	${EXTRACT_CMD} ${EXTRACT_BEFORE_ARGS} ${_DISTDIR}/${EXTRACT_ONLY} ${EXTRACT_AFTER_ARGS}
 
-pkg-plist: extract
-	${TAR} -tf ${_DISTDIR}/${EXTRACT_ONLY} ${EXTRACT_AFTER_ARGS} | ${GREP} -v '/$$' | ${SED} 's|/usr/local/||g' | sort > ${WRKDIR}/pkg-plist
-	${TAR} -tf ${_DISTDIR}/${EXTRACT_ONLY} ${EXTRACT_AFTER_ARGS} | ${GREP} '/$$' | ${SED} -e 's|/usr/local/\(.*\)/$$|@dirrm \1|g' -e 's|/$$||g' -e 's|@dirrm man|@dirrmtry man|g' | sort -r >> ${WRKDIR}/pkg-plist
-	${MV} ${WRKDIR}/pkg-plist ${PLIST}
+${PLIST}: extract
+	${TAR} -tf ${_DISTDIR}/${EXTRACT_ONLY} ${EXTRACT_AFTER_ARGS} | ${GREP} -v '/$$' | ${SED} 's|/usr/local/||g' | sort > ${PLIST}
+	${TAR} -tf ${_DISTDIR}/${EXTRACT_ONLY} ${EXTRACT_AFTER_ARGS} | ${GREP} '/$$' | ${SED} -e 's|/usr/local/\(.*\)/$$|@dirrm \1|g' -e 's|/$$||g' -e 's|@dirrm man|@dirrmtry man|g' | sort -r >> ${PLIST}
 
 port-update:
-	${RM} -f ${.CURDIR}/distinfo ${.CURDIR}/distinfo~
-.for osrel in 8 9
+	${RM} -f ${.CURDIR}/distinfo ${.CURDIR}/distinfo~ ${.CURDIR}/pkg-plist.*
+.for osrel in 8 9 10 11
 	${MAKE} fetch OSREL=${osrel}
 	${MAKE} makesum OSREL=${osrel}
 	${CAT} ${.CURDIR}/distinfo >> ${.CURDIR}/distinfo~
 	${RM} ${.CURDIR}/distinfo
+	${MAKE} pkg-plist.${osrel} PLIST=pkg-plist.${osrel} OSREL=${osrel}
 .endfor
 	${MV} ${.CURDIR}/distinfo~ ${.CURDIR}/distinfo
-	${MAKE} pkg-plist
+	python ${FILESDIR}/mergeplist.py ${.CURDIR}/pkg-plist.* > ${PLIST}
+	${RM} ${.CURDIR}/pkg-plist.*
 
 .include <bsd.port.post.mk>

Modified: head/emulators/i386-wine-devel/distinfo
==============================================================================
--- head/emulators/i386-wine-devel/distinfo	Wed Feb 19 20:21:58 2014	(r345143)
+++ head/emulators/i386-wine-devel/distinfo	Wed Feb 19 20:32:17 2014	(r345144)
@@ -2,3 +2,7 @@ SHA256 (freebsd:8:x86:64/i386-wine-devel
 SIZE (freebsd:8:x86:64/i386-wine-devel-1.7.12,1.txz) = 25773312
 SHA256 (freebsd:9:x86:64/i386-wine-devel-1.7.12,1.txz) = 2adf977878c56180cfb41e6945955cebcafc8799afdb50a7d78d9143014d23db
 SIZE (freebsd:9:x86:64/i386-wine-devel-1.7.12,1.txz) = 25754864
+SHA256 (freebsd:10:x86:64/i386-wine-devel-1.7.12,1.txz) = 6d01dc8f6e9ea4d0cc802c52d5ca642289245a2a60cac9fe2b78b05bf135cccb
+SIZE (freebsd:10:x86:64/i386-wine-devel-1.7.12,1.txz) = 25739496
+SHA256 (freebsd:11:x86:64/i386-wine-devel-1.7.12,1.txz) = 4d161b4c8c6195c1839e0f773619c71f813e7328a9913598ffcc6d47fcb1a80c
+SIZE (freebsd:11:x86:64/i386-wine-devel-1.7.12,1.txz) = 23178500

Added: head/emulators/i386-wine-devel/files/mergeplist.py
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/emulators/i386-wine-devel/files/mergeplist.py	Wed Feb 19 20:32:17 2014	(r345144)
@@ -0,0 +1,103 @@
+#!/usr/bin/env python2
+
+import sys
+
+# <recipe url="http://code.activestate.com/recipes/576694/" license="MIT">
+# added peek() method
+import collections
+
+class OrderedSet(collections.MutableSet):
+
+    def __init__(self, iterable=None):
+        self.end = end = [] 
+        end += [None, end, end]         # sentinel node for doubly linked list
+        self.map = {}                   # key --> [key, prev, next]
+        if iterable is not None:
+            self |= iterable
+
+    def __len__(self):
+        return len(self.map)
+
+    def __contains__(self, key):
+        return key in self.map
+
+    def add(self, key):
+        if key not in self.map:
+            end = self.end
+            curr = end[1]
+            curr[2] = end[1] = self.map[key] = [key, curr, end]
+
+    def discard(self, key):
+        if key in self.map:
+            key, prev, next = self.map.pop(key)
+            prev[2] = next
+            next[1] = prev
+
+    def peek(self, last=False):
+        end = self.end
+        curr = end[1] if last else end[2]
+        if curr is not end:
+            return curr[0]
+        raise IndexError("OrderedSet is empty, cannot peek item")
+
+    def __iter__(self):
+        end = self.end
+        curr = end[2]
+        while curr is not end:
+            yield curr[0]
+            curr = curr[2]
+
+    def __reversed__(self):
+        end = self.end
+        curr = end[1]
+        while curr is not end:
+            yield curr[0]
+            curr = curr[1]
+
+    def pop(self, last=False):
+        if not self:
+            raise KeyError('set is empty')
+        key = self.end[1][0] if last else self.end[2][0]
+        self.discard(key)
+        return key
+
+    def __repr__(self):
+        if not self:
+            return '%s()' % (self.__class__.__name__,)
+        return '%s(%r)' % (self.__class__.__name__, list(self))
+
+    def __eq__(self, other):
+        if isinstance(other, OrderedSet):
+            return len(self) == len(other) and list(self) == list(other)
+        return set(self) == set(other)
+#</recipe>
+
+def main(plists):
+    plists_len = len(plists)
+    plists.sort(key=lambda x: int(x.rsplit('.', 2)[-1]))
+    names = ["OSREL" + i.rsplit('.', 2)[-1] for i in plists]
+    for i in range(plists_len):
+        with open(plists[i], 'r') as file:
+            plists[i] = OrderedSet(i.strip() for i in file.readlines())
+    empty = sum(len(i) == 0 for i in plists)
+    while empty < plists_len:
+        if not empty and all(plists[1].peek() == i.peek() for i in plists[1:]):
+            # Test if the top of the queues are all common
+            print(plists[1].peek())
+            for i in plists:
+                i.pop()
+        else:
+            # Find which of the queues have non-common lines
+            lines = {}
+            for i in range(plists_len):
+                while len(plists[i]) and not all(plists[i].peek() in j for j in plists):
+                    lines.setdefault(plists[i].pop(), []).append(i)
+            keys = list(lines.keys())
+            keys.sort()
+            for k in keys:
+                for i in lines[k]:
+                    print("%%" + names[i] + "%%" + k)
+        empty = sum(len(i) == 0 for i in plists)
+
+if __name__ == '__main__':
+    main(sys.argv[1:])

Modified: head/emulators/i386-wine-devel/pkg-plist
==============================================================================
--- head/emulators/i386-wine-devel/pkg-plist	Wed Feb 19 20:21:58 2014	(r345143)
+++ head/emulators/i386-wine-devel/pkg-plist	Wed Feb 19 20:32:17 2014	(r345144)
@@ -792,21 +792,41 @@ include/wine/windows/xmldsodid.h
 include/wine/windows/xmllite.h
 include/wine/windows/xmllite.idl
 include/wine/windows/zmouse.h
-lib32/.libGL/dri/i810_dri.so
+%%OSREL8%%lib32/.libGL/dri/i810_dri.so
+%%OSREL9%%lib32/.libGL/dri/i810_dri.so
+%%OSREL10%%lib32/.libGL/dri/i810_dri.so
 lib32/.libGL/dri/i915_dri.so
 lib32/.libGL/dri/i965_dri.so
-lib32/.libGL/dri/mach64_dri.so
-lib32/.libGL/dri/mga_dri.so
-lib32/.libGL/dri/r128_dri.so
+%%OSREL8%%lib32/.libGL/dri/mach64_dri.so
+%%OSREL9%%lib32/.libGL/dri/mach64_dri.so
+%%OSREL10%%lib32/.libGL/dri/mach64_dri.so
+%%OSREL8%%lib32/.libGL/dri/mga_dri.so
+%%OSREL9%%lib32/.libGL/dri/mga_dri.so
+%%OSREL10%%lib32/.libGL/dri/mga_dri.so
+%%OSREL8%%lib32/.libGL/dri/r128_dri.so
+%%OSREL9%%lib32/.libGL/dri/r128_dri.so
+%%OSREL10%%lib32/.libGL/dri/r128_dri.so
 lib32/.libGL/dri/r200_dri.so
-lib32/.libGL/dri/r300_dri.so
-lib32/.libGL/dri/r600_dri.so
+%%OSREL8%%lib32/.libGL/dri/r300_dri.so
+%%OSREL9%%lib32/.libGL/dri/r300_dri.so
+%%OSREL10%%lib32/.libGL/dri/r300_dri.so
+%%OSREL8%%lib32/.libGL/dri/r600_dri.so
+%%OSREL9%%lib32/.libGL/dri/r600_dri.so
+%%OSREL10%%lib32/.libGL/dri/r600_dri.so
 lib32/.libGL/dri/radeon_dri.so
-lib32/.libGL/dri/savage_dri.so
-lib32/.libGL/dri/sis_dri.so
+%%OSREL8%%lib32/.libGL/dri/savage_dri.so
+%%OSREL9%%lib32/.libGL/dri/savage_dri.so
+%%OSREL10%%lib32/.libGL/dri/savage_dri.so
+%%OSREL8%%lib32/.libGL/dri/sis_dri.so
+%%OSREL9%%lib32/.libGL/dri/sis_dri.so
+%%OSREL10%%lib32/.libGL/dri/sis_dri.so
 lib32/.libGL/dri/swrast_dri.so
-lib32/.libGL/dri/tdfx_dri.so
-lib32/.libGL/dri/unichrome_dri.so
+%%OSREL8%%lib32/.libGL/dri/tdfx_dri.so
+%%OSREL9%%lib32/.libGL/dri/tdfx_dri.so
+%%OSREL10%%lib32/.libGL/dri/tdfx_dri.so
+%%OSREL8%%lib32/.libGL/dri/unichrome_dri.so
+%%OSREL9%%lib32/.libGL/dri/unichrome_dri.so
+%%OSREL10%%lib32/.libGL/dri/unichrome_dri.so
 lib32/.libGL/libGL.so.1
 lib32/libGLU.so.1
 lib32/libX11-xcb.so.1
@@ -822,22 +842,27 @@ lib32/libXrandr.so.2
 lib32/libXrender.so.1
 lib32/libXxf86vm.so.1
 lib32/libcups.so.2
+%%OSREL11%%lib32/libdricore9.1.7.so.1
 lib32/libdrm.so.2
 lib32/libdrm_intel.so.1
+%%OSREL11%%lib32/libdrm_radeon.so.1
 lib32/libexpat.so.6
 lib32/libfontconfig.so.1
 lib32/libfreetype.so.9
 lib32/libgettextpo.so.5
 lib32/libgnutls.so.26
-lib32/libiconv.so.3
+%%OSREL8%%lib32/libiconv.so.3
+%%OSREL9%%lib32/libiconv.so.3
 lib32/libintl.so.9
 lib32/libjpeg.so.11
 lib32/liblcms2.so.2
 lib32/libopenal.so.1
+%%OSREL11%%lib32/libpciaccess.so.0
 lib32/libpng15.so.15
 lib32/libpthread-stubs.so.0
 lib32/libwine.so
 lib32/libwine.so.1
+%%OSREL11%%lib32/libxcb-dri2.so.0
 lib32/libxcb-glx.so.0
 lib32/libxcb.so.2
 lib32/libxml2.so.5



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201402192032.s1JKWH0g053216>