pkgsrc-Users archive

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

lang/python27 fails to install on Fedora 29



Greetings,

I've successfully built/installed python27 on CentOS 7 and WSL Ubuntu
18.04, however on Fedora 29 the python27 package does not install. The
problem is that the PLIST includes nis.so on my system, but nis.so is
not included in the package. The tail end of the build log follows:

#v+
=> Checking file-check results for python27-2.7.15nb1
ERROR: ************************************************************
ERROR: The following files are in the PLIST but not in /home/dave/pkg-fedora-29/usr/work/lang/python27/work/.destdir/home/dave/pkg-fedora-29:
ERROR:         /home/dave/pkg-fedora-29/usr/work/lang/python27/work/.destdir/home/dave/pkg-fedora-29/lib/python2.7/lib-dynload/nis.so
*** Error code 1

Stop.
bmake[1]: stopped in /home/dave/usr/src/pkgsrc/lang/python27
*** Error code 1

Stop.
bmake: stopped in /home/dave/usr/src/pkgsrc/lang/python27
#v-

I tried flipping the logic of the check for NetBSD and /usr/bin/ypcat in
the Makefile, which caused PLIST.no-nis to be set to "yes", however that
caused the package to fail with the same error, except the missing file
was `nis_failed.so`. The following (trivial) patch to the Makefile
allows lang/python27 to install on my Fedora 29 instance by not setting
PLIST.nis or PLIST.no-nis.

#v+
Index: Makefile
===================================================================
RCS file: /cvsroot/pkgsrc/lang/python27/Makefile,v
retrieving revision 1.75
diff -u -p -r1.75 Makefile
--- Makefile	28 Sep 2018 11:01:37 -0000	1.75
+++ Makefile	22 Feb 2019 02:45:25 -0000
@@ -114,6 +114,8 @@ PLIST.nis=	yes
PLIST.dll=	yes
.  if ${OPSYS} == "MirBSD" || "${OS_VARIANT}" == "chromeos"
# neither nis nor no-nis
+.  elif !exists(/usr/bin/ypcat)
+# neither nis nor no-nis
.  elif ${OPSYS} != "NetBSD" || exists(/usr/bin/ypcat)
PLIST.nis=	yes
.  else
#v-

However, I think that this is too general: Any system without an
installed ypcat binary would never make it to the check for NetBSD, thus
the install may break on some systems. Therefore, my patch is not
suitable for the package, but I would like to find a patch that is
suitable.

Is there a better way to determine situations where neither nis.so nor
nis_failed.so should be built? Or, if not, is there a way to identify a
system as "Fedora", rather than simply "redhat" (OS_VARIANT contents on
my Fedora system), and thus check for that?

Suggestions and answers welcome - even just pointers on where to look
would be helpful.

Regards,
--
 -dave

Attachment: signature.asc
Description: PGP signature



Home | Main Index | Thread Index | Old Index