Wed Jan 17 19:16:05 2018 UTC ()
py-sip: update to 4.19.5


(markd)
diff -r1.48 -r1.49 pkgsrc/x11/py-sip/Makefile
diff -r1.1.1.1 -r1.2 pkgsrc/x11/py-sip/PLIST
diff -r1.2 -r1.3 pkgsrc/x11/py-sip/patches/patch-ab
diff -r0 -r1.1 pkgsrc/x11/py-sip/patches/patch-sipgen_gencode.c

cvs diff -r1.48 -r1.49 pkgsrc/x11/py-sip/Makefile (expand / switch to unified diff)

--- pkgsrc/x11/py-sip/Makefile 2017/07/15 13:20:50 1.48
+++ pkgsrc/x11/py-sip/Makefile 2018/01/17 19:16:05 1.49
@@ -1,16 +1,16 @@ @@ -1,16 +1,16 @@
1# $NetBSD: Makefile,v 1.48 2017/07/15 13:20:50 wiz Exp $ 1# $NetBSD: Makefile,v 1.49 2018/01/17 19:16:05 markd Exp $
2 2
3DISTNAME= sip-4.17 3DISTNAME= sip-4.19.5
4PKGNAME= ${PYPKGPREFIX}-${DISTNAME} 4PKGNAME= ${PYPKGPREFIX}-${DISTNAME}
5CATEGORIES= x11 devel python 5CATEGORIES= x11 devel python
6MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=pyqt/} 6MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=pyqt/}
7 7
8MAINTAINER= pkgsrc-users@NetBSD.org 8MAINTAINER= pkgsrc-users@NetBSD.org
9HOMEPAGE= http://www.riverbankcomputing.com/software/sip/ 9HOMEPAGE= http://www.riverbankcomputing.com/software/sip/
10COMMENT= Tool to create Python bindings for C++ libraries 10COMMENT= Tool to create Python bindings for C++ libraries
11 11
12USE_LANGUAGES= c c++ 12USE_LANGUAGES= c c++
13USE_LIBTOOL= yes 13USE_LIBTOOL= yes
14USE_TOOLS+= gmake 14USE_TOOLS+= gmake
15 15
16CONFIGURE_ARGS+= -b ${PREFIX}/bin 16CONFIGURE_ARGS+= -b ${PREFIX}/bin

cvs diff -r1.1.1.1 -r1.2 pkgsrc/x11/py-sip/PLIST (expand / switch to unified diff)

--- pkgsrc/x11/py-sip/PLIST 2008/10/08 14:10:45 1.1.1.1
+++ pkgsrc/x11/py-sip/PLIST 2018/01/17 19:16:05 1.2
@@ -1,7 +1,8 @@ @@ -1,7 +1,8 @@
1@comment $NetBSD: PLIST,v 1.1.1.1 2008/10/08 14:10:45 wiz Exp $ 1@comment $NetBSD: PLIST,v 1.2 2018/01/17 19:16:05 markd Exp $
2bin/sip${PYVERSSUFFIX} 2bin/sip${PYVERSSUFFIX}
3${PYINC}/sip.h 3${PYINC}/sip.h
 4${PYSITELIB}/sip.pyi
4${PYSITELIB}/sip.so 5${PYSITELIB}/sip.so
5${PYSITELIB}/sipconfig.py 6${PYSITELIB}/sipconfig.py
6${PYSITELIB}/sipconfig.pyc 7${PYSITELIB}/sipconfig.pyc
7${PYSITELIB}/sipdistutils.py 8${PYSITELIB}/sipdistutils.py

cvs diff -r1.2 -r1.3 pkgsrc/x11/py-sip/patches/Attic/patch-ab (expand / switch to unified diff)

--- pkgsrc/x11/py-sip/patches/Attic/patch-ab 2011/01/11 15:14:20 1.2
+++ pkgsrc/x11/py-sip/patches/Attic/patch-ab 2018/01/17 19:16:05 1.3
@@ -1,12 +1,12 @@ @@ -1,12 +1,12 @@
1$NetBSD: patch-ab,v 1.2 2011/01/11 15:14:20 drochner Exp $ 1$NetBSD: patch-ab,v 1.3 2018/01/17 19:16:05 markd Exp $
2 2
3--- sipgen/sipgen.sbf.orig 2010-12-23 17:37:09.000000000 +0000 3--- sipgen/sipgen.sbf.orig 2017-02-15 12:37:11.000000000 +0000
4+++ sipgen/sipgen.sbf 4+++ sipgen/sipgen.sbf
5@@ -14,6 +14,6 @@ 5@@ -14,6 +14,6 @@
6 # SIP is supplied WITHOUT ANY WARRANTY; without even the implied warranty of 6 # SIP is supplied WITHOUT ANY WARRANTY; without even the implied warranty of
7 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 7 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
8  8
9-target = sip 9-target = sip
10+target = sip@PYVERSSUFFIX@ 10+target = sip@PYVERSSUFFIX@
11 sources = main.c transform.c gencode.c extracts.c export.c heap.c parser.c lexer.c  11 sources = main.c transform.c gencode.c extracts.c export.c type_hints.c heap.c parser.c lexer.c
12 headers = sip.h parser.h 12 headers = sip.h parser.h

File Added: pkgsrc/x11/py-sip/patches/Attic/patch-sipgen_gencode.c
$NetBSD: patch-sipgen_gencode.c,v 1.1 2018/01/17 19:16:05 markd Exp $

Fixed the handling of the default value of unscoped enums when using
old compilers.  [dd017d3e1454] [tip]

--- sipgen/gencode.c	2017-11-06 13:45:14.000000000 +1300
+++ sipgen/gencode.c	2017-11-11 15:30:06.000000000 +1300
@@ -305,6 +305,7 @@
 static int isString(argDef *ad);
 static scopedNameDef *stripScope(scopedNameDef *snd, classDef *ecd,
         StripAction strip);
+static void prEnumMemberScope(enumMemberDef *emd, FILE *fp);
 
 
 /*
@@ -3295,25 +3296,14 @@
 
         if (!isNoScope(emd->ed))
         {
-            classDef *ecd = emd->ed->ecd;
-
             if (isScopedEnum(emd->ed))
-            {
-                prcode(fp, "::%s::", emd->ed->cname->text);
-            }
-            else if (ecd != NULL)
-            {
-                if (isProtectedEnum(emd->ed))
-                    prcode(fp, "sip%C::", classFQCName(ecd));
-                else if (isProtectedClass(ecd))
-                    prcode(fp, "%U::", ecd);
-                else
-                    prcode(fp, "%S::", classFQCName(ecd));
-            }
+                prcode(fp, "::%s", emd->ed->cname->text);
+            else if (emd->ed->ecd != NULL)
+                prEnumMemberScope(emd, fp);
             else if (mtd != NULL)
-            {
-                prcode(fp, "%S::", mtd->iff->fqcname);
-            }
+                prcode(fp, "%S", mtd->iff->fqcname);
+
+            prcode(fp, "::");
         }
 
         prcode(fp, "%s%s, %d},\n", emd->cname, (generating_c ? "" : ")"), emd->ed->first_alt->enumnr);
@@ -7592,7 +7582,13 @@
 
         if (ed->members != NULL)
         {
-            prcode(fp, "%E::%s", ed, ed->members->cname);
+            if (isScopedEnum(ed))
+                prcode(fp, "%E", ed);
+            else
+                prEnumMemberScope(ed->members, fp);
+
+            prcode(fp, "::%s", ed->members->cname);
+
             return;
         }
 
@@ -15531,3 +15527,19 @@
 
     return snd;
 }
+
+
+/*
+ * Generate the scope of a member of an unscoped enum.
+ */
+static void prEnumMemberScope(enumMemberDef *emd, FILE *fp)
+{
+    classDef *ecd = emd->ed->ecd;
+
+    if (isProtectedEnum(emd->ed))
+        prcode(fp, "sip%C", classFQCName(ecd));
+    else if (isProtectedClass(ecd))
+        prcode(fp, "%U", ecd);
+    else
+        prcode(fp, "%S", classFQCName(ecd));
+}