pkgsrc-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

pkg/49915: Unbreak Python builds on no-yp/nis platforms



>Number:         49915
>Category:       pkg
>Synopsis:       Unbreak Python builds on no-yp/nis platforms
>Confidential:   no
>Severity:       critical
>Priority:       medium
>Responsible:    pkg-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Wed May 20 02:50:00 +0000 2015
>Originator:     Kamil Rytarowski
>Release:        -current
>Organization:
>Environment:
NetBSD chieftec 7.99.16 NetBSD 7.99.16 (GENERIC) #0: Sat May 16 16:54:24 UTC 2015  root@chieftec:/tmp/netbsd-tmp/sys/arch/amd64/compile/GENERIC amd64
>Description:
It's possible to strip NetBSD installation from YP/NIS packages. If so Python from pkgsrc assume wrongly that yp/nis is installed it makes the package creation fatal.

This patch also resurrects nis.so vs nis_failed.so switch for python33 and python34.

All Python versions, after applying the attached patch build correctly.

As a side note, probably looking for /usr/bin/ypcat isn't the best option, but since the protocol isn't crucial it's good enough.
>How-To-Repeat:
Get clean pkgsrc-current and clean src-current.
Build and install NetBSD without YP/NIS (MKYP..) and try to build Python packages from pkgsrc.
>Fix:
Index: python27/Makefile
===================================================================
RCS file: /public/netbsd-rsync/pkgsrc/lang/python27/Makefile,v
retrieving revision 1.48
diff -u -r1.48 Makefile
--- python27/Makefile	3 Mar 2015 17:19:58 -0000	1.48
+++ python27/Makefile	19 May 2015 19:58:04 -0000
@@ -125,7 +125,7 @@
 PLIST.dll=	yes
 .  if ${OPSYS} == "MirBSD"
 # neither nis nor no-nis
-.  elif ${OPSYS} != "NetBSD" || exists(/usr/bin/ypcat)
+.  elif exists(/usr/bin/ypcat)
 PLIST.nis=	yes
 .  else
 PLIST.no-nis=	yes
Index: python33/Makefile
===================================================================
RCS file: /public/netbsd-rsync/pkgsrc/lang/python33/Makefile,v
retrieving revision 1.30
diff -u -r1.30 Makefile
--- python33/Makefile	16 Mar 2015 13:53:05 -0000	1.30
+++ python33/Makefile	19 May 2015 22:39:37 -0000
@@ -95,7 +95,7 @@
 MAKE_ENV+=	PY_BDB_LIBDIRS=${BDBBASE}/lib
 PLIST.bsddb=	yes
 PLIST.dll=	yes
-.  if ${OPSYS} != "NetBSD" || exists(/usr/bin/ypcat)
+.  if exists(/usr/bin/ypcat)
 PLIST.nis=	yes
 .  else
 PLIST.no-nis=	yes
Index: python33/PLIST
===================================================================
RCS file: /public/netbsd-rsync/pkgsrc/lang/python33/PLIST,v
retrieving revision 1.7
diff -u -r1.7 PLIST
--- python33/PLIST	12 Mar 2014 10:42:42 -0000	1.7
+++ python33/PLIST	20 May 2015 02:20:54 -0000
@@ -1649,7 +1649,8 @@
 lib/python${PY_VER_SUFFIX}/lib-dynload/grp.so
 lib/python${PY_VER_SUFFIX}/lib-dynload/math.so
 lib/python${PY_VER_SUFFIX}/lib-dynload/mmap.so
-lib/python${PY_VER_SUFFIX}/lib-dynload/nis.so
+${PLIST.nis}lib/python${PY_VER_SUFFIX}/lib-dynload/nis.so
+${PLIST.no-nis}lib/python${PY_VER_SUFFIX}/lib-dynload/nis_failed.so
 lib/python${PY_VER_SUFFIX}/lib-dynload/parser.so
 lib/python${PY_VER_SUFFIX}/lib-dynload/resource.so
 lib/python${PY_VER_SUFFIX}/lib-dynload/select.so
Index: python34/Makefile
===================================================================
RCS file: /public/netbsd-rsync/pkgsrc/lang/python34/Makefile,v
retrieving revision 1.9
diff -u -r1.9 Makefile
--- python34/Makefile	26 Feb 2015 06:23:06 -0000	1.9
+++ python34/Makefile	20 May 2015 02:22:13 -0000
@@ -96,7 +96,7 @@
 MAKE_ENV+=	PY_BDB_LIBDIRS=${BDBBASE}/lib
 PLIST.bsddb=	yes
 PLIST.dll=	yes
-.  if ${OPSYS} != "NetBSD" || exists(/usr/bin/ypcat)
+.  if exists(/usr/bin/ypcat)
 PLIST.nis=	yes
 .  else
 PLIST.no-nis=	yes
Index: python34/PLIST
===================================================================
RCS file: /public/netbsd-rsync/pkgsrc/lang/python34/PLIST,v
retrieving revision 1.4
diff -u -r1.4 PLIST
--- python34/PLIST	26 Feb 2015 06:23:06 -0000	1.4
+++ python34/PLIST	20 May 2015 02:21:28 -0000
@@ -1765,7 +1765,8 @@
 lib/python${PY_VER_SUFFIX}/lib-dynload/grp.so
 lib/python${PY_VER_SUFFIX}/lib-dynload/math.so
 lib/python${PY_VER_SUFFIX}/lib-dynload/mmap.so
-lib/python${PY_VER_SUFFIX}/lib-dynload/nis.so
+${PLIST.nis}lib/python${PY_VER_SUFFIX}/lib-dynload/nis.so
+${PLIST.no-nis}lib/python${PY_VER_SUFFIX}/lib-dynload/nis_failed.so
 lib/python${PY_VER_SUFFIX}/lib-dynload/parser.so
 lib/python${PY_VER_SUFFIX}/lib-dynload/resource.so
 lib/python${PY_VER_SUFFIX}/lib-dynload/select.so



Home | Main Index | Thread Index | Old Index