summaryrefslogtreecommitdiff
path: root/misc
diff options
context:
space:
mode:
authoradam <adam>2017-04-23 08:18:14 +0000
committeradam <adam>2017-04-23 08:18:14 +0000
commit7849557aec28557b478424706346d345d8feb47f (patch)
tree42a7aa7397b712331c4e2e8b37dd5f21ddf06209 /misc
parent69f4c9b36fac2c8156dc5d13bbeb709242884836 (diff)
downloadpkgsrc-7849557aec28557b478424706346d345d8feb47f.tar.gz
RPM 4.13.0.1
Security fixes * Fix several out of bounds reads in the OpenPGP parser * Fix handling of OpenPGP reserved tag (should be rejected) * Fix various crashes from malformed packages with invalid tags General bugfixes * Fix %transfiletriggerpostun nondeterministic behavior * Fix rpmdb cleanup on signal (regression introduced in 4.13.0) Package building * Fix debuginfo GDB index generation (regression introduced in 4.13.0) * Fix malformed packages being generated around 4GB size boundary (regression introduced in 4.12.0) * Fix special %doc/%license directory inheriting default file permissions (regression introduced in 4.13.0) Build process * Fix API documentation generation with Doxygen >= 1.8.8
Diffstat (limited to 'misc')
-rw-r--r--misc/rpm/Makefile81
-rw-r--r--misc/rpm/PLIST69
-rw-r--r--misc/rpm/PLIST.Linux53
-rw-r--r--misc/rpm/PLIST.NetBSD55
-rw-r--r--misc/rpm/PLIST.SunOS55
-rw-r--r--misc/rpm/buildlink3.mk4
-rw-r--r--misc/rpm/distinfo25
-rw-r--r--misc/rpm/patches/patch-configure.ac20
-rw-r--r--misc/rpm/patches/patch-installplatform15
-rw-r--r--misc/rpm/patches/patch-lib_backend_db3.c8
-rw-r--r--misc/rpm/patches/patch-lib_cpio.c20
-rw-r--r--misc/rpm/patches/patch-lib_header.c4
-rw-r--r--misc/rpm/patches/patch-lib_rpmrc.c18
-rw-r--r--misc/rpm/patches/patch-misc_fnmatch.c4
-rw-r--r--misc/rpm/patches/patch-misc_fts.c30
-rw-r--r--misc/rpm/patches/patch-misc_fts.h17
16 files changed, 203 insertions, 275 deletions
diff --git a/misc/rpm/Makefile b/misc/rpm/Makefile
index 36401788beb..b204755b12c 100644
--- a/misc/rpm/Makefile
+++ b/misc/rpm/Makefile
@@ -1,9 +1,8 @@
-# $NetBSD: Makefile,v 1.91 2016/09/18 17:02:12 wiedi Exp $
+# $NetBSD: Makefile,v 1.92 2017/04/23 08:18:14 adam Exp $
-DISTNAME= rpm-4.12.0.1
-PKGREVISION= 4
+DISTNAME= rpm-4.13.0.1
CATEGORIES= misc
-MASTER_SITES= http://rpm.org/releases/rpm-4.12.x/
+MASTER_SITES= http://ftp.rpm.org/releases/rpm-4.13.x/
EXTRACT_SUFX= .tar.bz2
MAINTAINER= pkgsrc-users@NetBSD.org
@@ -15,26 +14,38 @@ CONFLICTS+= rpm2cpio<1.0nb1
NOT_FOR_PLATFORM+= Interix-*-* # getmntent() is nonpublic; needs porting
-MAKE_JOBS_SAFE= no
-
USE_LIBTOOL= yes
USE_PKGLOCALEDIR= yes
-USE_TOOLS+= automake bash:run gmake msgfmt perl:run pkg-config
+USE_TOOLS+= autoconf bash:run gmake msgfmt perl:run pkg-config
GNU_CONFIGURE= yes
-
-GMAKE_REQD+= 3.82nb1
-GMAKE= ${TOOLS_GMAKE}
-
-REPLACE_BASH+= scripts/*
-REPLACE_PERL+= scripts/*
-
-# To avoid build directory references.
-CONFIGURE_ENV+= MYPATH=/sbin:/bin:/usr/sbin:/usr/bin
-
# this is needed in addition of USE_PKGLOCALEDIR
CONFIGURE_ARGS+= --datadir=${PREFIX}/${PKGLOCALEDIR}
-CONFIGURE_ARGS+= --without-lua
CONFIGURE_ARGS+= --with-external-db
+CONFIGURE_ARGS+= --with-vendor=pkgsrc
+CONFIGURE_ARGS+= --without-lua
+# avoid build directory references
+CONFIGURE_ENV+= MYPATH=/sbin:/bin:/usr/sbin:/usr/bin
+# rpm databases are kept under ${RPM_DB_PREFIX}/lib/rpm.
+CONFIGURE_ENV+= varprefix=${RPM_DB_PREFIX:Q}
+CONFIGURE_ENV.Darwin+= ac_cv_func_fdatasync=no
+
+PKGCONFIG_OVERRIDE= rpm.pc.in
+
+GMAKE_REQD= 3.82nb1
+
+REPLACE_BASH+= installplatform
+REPLACE_BASH+= scripts/brp-python-bytecompile
+REPLACE_BASH+= scripts/check-prereqs
+REPLACE_BASH+= scripts/check-rpaths-worker
+REPLACE_BASH+= scripts/find-debuginfo.sh
+REPLACE_BASH+= scripts/fontconfig.prov
+REPLACE_BASH+= scripts/mono-find-provides
+REPLACE_BASH+= scripts/mono-find-requires
+REPLACE_BASH+= scripts/pkgconfigdeps.sh
+REPLACE_BASH+= scripts/pythondeps.sh
+REPLACE_BASH+= scripts/rpmdb_loadcvt
+REPLACE_PERL+= scripts/perl.prov
+REPLACE_PERL+= scripts/perl.req
BDB_ACCEPTED= db4 db5
.include "../../mk/bdb.buildlink3.mk"
@@ -43,8 +54,6 @@ BUILDLINK_TRANSFORM+= l:db:db4
.else
BUILDLINK_TRANSFORM+= l:db:db5
.endif
-# The rpm databases are kept under ${RPM_DB_PREFIX}/lib/rpm.
-CONFIGURE_ENV+= varprefix=${RPM_DB_PREFIX:Q}
LDFLAGS+= ${PTHREAD_LDFLAGS}
@@ -52,25 +61,36 @@ MAKE_FLAGS+= MANDIR=${PREFIX}/${PKGMANDIR}/man8
MAKE_FLAGS+= ROOT=${DESTDIR}
RPMDIR= ${RPM_DB_PREFIX}/lib/rpm
-FILES_SUBST+= RPMDIR=${RPMDIR:Q}
+FILES_SUBST+= RPMDIR=${RPMDIR}
# The configure script doesn't detect whether libintl.so has any
# library dependencies.
-#
BROKEN_GETTEXT_DETECTION= yes
-BUILDLINK_TRANSFORM.SunOS+= rm:-fstack-protector
-CFLAGS.SunOS+= -fno-stack-protector
-
-pre-configure:
- set -e; cd ${WRKSRC}; \
- aclocal; autoheader; automake -a --foreign -i; autoconf
+CHECK_PORTABILITY_SKIP= tests/rpmtests
SUBST_CLASSES+= mkd
SUBST_STAGE.mkd= post-build
-SUBST_MESSAGE.mkd= Fixing workdir tools references in macros file
+SUBST_MESSAGE.mkd= Fixing workdir tools references in macros file.
SUBST_FILES.mkd= macros
-SUBST_SED.mkd+= -e 's,${TOOLS_CMD.mkdir},${TOOLS_PATH.mkdir},'
+SUBST_SED.mkd= -e 's,${TOOLS_CMD.mkdir},${TOOLS_PATH.mkdir},'
+
+# __progname without 'extern' segfaults on some platforms (e.g. Darwin)
+SUBST_CLASSES+= progname
+SUBST_STAGE.progname= pre-configure
+SUBST_MESSAGE.progname= Fixing __progname declarations to include 'extern'.
+SUBST_FILES.progname= lib/poptALL.c
+SUBST_FILES.progname+= rpm2archive.c
+SUBST_FILES.progname+= rpm2cpio.c
+SUBST_FILES.progname+= rpmbuild.c
+SUBST_FILES.progname+= rpmqv.c
+SUBST_FILES.progname+= rpmspec.c
+SUBST_FILES.progname+= tools/rpmdeps.c
+SUBST_FILES.progname+= tools/rpmgraph.c
+SUBST_SED.progname= -e 's,^const char \*__progname;,extern &,'
+
+pre-configure:
+ cd ${WRKSRC} && autoconf
.include "../../archivers/libarchive/buildlink3.mk"
.include "../../converters/libiconv/buildlink3.mk"
@@ -81,5 +101,4 @@ SUBST_SED.mkd+= -e 's,${TOOLS_CMD.mkdir},${TOOLS_PATH.mkdir},'
.include "../../devel/zlib/buildlink3.mk"
.include "../../security/openssl/buildlink3.mk"
.include "../../sysutils/file/buildlink3.mk" # for libmagic.
-
.include "../../mk/bsd.pkg.mk"
diff --git a/misc/rpm/PLIST b/misc/rpm/PLIST
index 64af7c466b0..28294491397 100644
--- a/misc/rpm/PLIST
+++ b/misc/rpm/PLIST
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.10 2015/03/15 05:34:56 ryoon Exp $
+@comment $NetBSD: PLIST,v 1.11 2017/04/23 08:18:14 adam Exp $
bin/gendiff
bin/rpm
bin/rpm2archive
@@ -53,6 +53,7 @@ lib/librpmbuild.la
lib/librpmio.la
lib/librpmsign.la
lib/pkgconfig/rpm.pc
+lib/rpm-plugins/ima.la
lib/rpm-plugins/syslog.la
lib/rpm/appdata.prov
lib/rpm/brp-compress
@@ -97,11 +98,72 @@ lib/rpm/mono-find-provides
lib/rpm/mono-find-requires
lib/rpm/ocaml-find-provides.sh
lib/rpm/ocaml-find-requires.sh
-lib/rpm/osgideps.pl
lib/rpm/perl.prov
lib/rpm/perl.req
-lib/rpm/perldeps.pl
lib/rpm/pkgconfigdeps.sh
+lib/rpm/platform/aarch64/macros
+lib/rpm/platform/alpha/macros
+lib/rpm/platform/alphaev5/macros
+lib/rpm/platform/alphaev56/macros
+lib/rpm/platform/alphaev6/macros
+lib/rpm/platform/alphaev67/macros
+lib/rpm/platform/alphapca56/macros
+lib/rpm/platform/amd64/macros
+lib/rpm/platform/armv3l/macros
+lib/rpm/platform/armv4b/macros
+lib/rpm/platform/armv4l/macros
+lib/rpm/platform/armv5tejl/macros
+lib/rpm/platform/armv5tel/macros
+lib/rpm/platform/armv6hl/macros
+lib/rpm/platform/armv6l/macros
+lib/rpm/platform/armv7hl/macros
+lib/rpm/platform/armv7hnl/macros
+lib/rpm/platform/armv7l/macros
+lib/rpm/platform/athlon/macros
+lib/rpm/platform/geode/macros
+lib/rpm/platform/i386/macros
+lib/rpm/platform/i486/macros
+lib/rpm/platform/i586/macros
+lib/rpm/platform/i686/macros
+lib/rpm/platform/ia32e/macros
+lib/rpm/platform/ia64/macros
+lib/rpm/platform/m68k/macros
+lib/rpm/platform/mips/macros
+lib/rpm/platform/mips64/macros
+lib/rpm/platform/mips64el/macros
+lib/rpm/platform/mips64r6/macros
+lib/rpm/platform/mips64r6el/macros
+lib/rpm/platform/mipsel/macros
+lib/rpm/platform/mipsr6/macros
+lib/rpm/platform/mipsr6el/macros
+lib/rpm/platform/noarch/macros
+lib/rpm/platform/pentium3/macros
+lib/rpm/platform/pentium4/macros
+lib/rpm/platform/ppc/macros
+lib/rpm/platform/ppc32dy4/macros
+lib/rpm/platform/ppc64/macros
+lib/rpm/platform/ppc64iseries/macros
+lib/rpm/platform/ppc64le/macros
+lib/rpm/platform/ppc64p7/macros
+lib/rpm/platform/ppc64pseries/macros
+lib/rpm/platform/ppc8260/macros
+lib/rpm/platform/ppc8560/macros
+lib/rpm/platform/ppciseries/macros
+lib/rpm/platform/ppcpseries/macros
+lib/rpm/platform/riscv64/macros
+lib/rpm/platform/s390/macros
+lib/rpm/platform/s390x/macros
+lib/rpm/platform/sh/macros
+lib/rpm/platform/sh3/macros
+lib/rpm/platform/sh4/macros
+lib/rpm/platform/sh4a/macros
+lib/rpm/platform/sparc/macros
+lib/rpm/platform/sparc64/macros
+lib/rpm/platform/sparc64v/macros
+lib/rpm/platform/sparcv8/macros
+lib/rpm/platform/sparcv9/macros
+lib/rpm/platform/sparcv9v/macros
+lib/rpm/platform/x86_64/macros
lib/rpm/pythondeps.sh
lib/rpm/rpm.daily
lib/rpm/rpm.log
@@ -112,7 +174,6 @@ lib/rpm/rpmdeps
lib/rpm/rpmpopt-${PKGVERSION}
lib/rpm/rpmrc
lib/rpm/script.req
-lib/rpm/tcl.req
lib/rpm/tgpg
man/fr/man8/rpm.8
man/ja/man8/rpm.8
diff --git a/misc/rpm/PLIST.Linux b/misc/rpm/PLIST.Linux
deleted file mode 100644
index 7a45cc4df4c..00000000000
--- a/misc/rpm/PLIST.Linux
+++ /dev/null
@@ -1,53 +0,0 @@
-@comment $NetBSD: PLIST.Linux,v 1.1 2013/12/16 09:53:44 markd Exp $
-lib/rpm/debugedit
-lib/rpm/elfdeps
-lib/rpm/find-debuginfo.sh
-lib/rpm/platform/aarch64-linux/macros
-lib/rpm/platform/alphaev56-linux/macros
-lib/rpm/platform/alphaev5-linux/macros
-lib/rpm/platform/alphaev67-linux/macros
-lib/rpm/platform/alphaev6-linux/macros
-lib/rpm/platform/alpha-linux/macros
-lib/rpm/platform/alphapca56-linux/macros
-lib/rpm/platform/amd64-linux/macros
-lib/rpm/platform/armv3l-linux/macros
-lib/rpm/platform/armv4b-linux/macros
-lib/rpm/platform/armv4l-linux/macros
-lib/rpm/platform/armv5tejl-linux/macros
-lib/rpm/platform/armv5tel-linux/macros
-lib/rpm/platform/armv6l-linux/macros
-lib/rpm/platform/armv7l-linux/macros
-lib/rpm/platform/athlon-linux/macros
-lib/rpm/platform/geode-linux/macros
-lib/rpm/platform/i386-linux/macros
-lib/rpm/platform/i486-linux/macros
-lib/rpm/platform/i586-linux/macros
-lib/rpm/platform/i686-linux/macros
-lib/rpm/platform/ia32e-linux/macros
-lib/rpm/platform/ia64-linux/macros
-lib/rpm/platform/noarch-linux/macros
-lib/rpm/platform/pentium3-linux/macros
-lib/rpm/platform/pentium4-linux/macros
-lib/rpm/platform/ppc32dy4-linux/macros
-lib/rpm/platform/ppc64iseries-linux/macros
-lib/rpm/platform/ppc64-linux/macros
-lib/rpm/platform/ppc64p7-linux/macros
-lib/rpm/platform/ppc64pseries-linux/macros
-lib/rpm/platform/ppc8260-linux/macros
-lib/rpm/platform/ppc8560-linux/macros
-lib/rpm/platform/ppciseries-linux/macros
-lib/rpm/platform/ppc-linux/macros
-lib/rpm/platform/ppcpseries-linux/macros
-lib/rpm/platform/s390-linux/macros
-lib/rpm/platform/s390x-linux/macros
-lib/rpm/platform/sh3-linux/macros
-lib/rpm/platform/sh4a-linux/macros
-lib/rpm/platform/sh4-linux/macros
-lib/rpm/platform/sh-linux/macros
-lib/rpm/platform/sparc64-linux/macros
-lib/rpm/platform/sparc64v-linux/macros
-lib/rpm/platform/sparc-linux/macros
-lib/rpm/platform/sparcv8-linux/macros
-lib/rpm/platform/sparcv9-linux/macros
-lib/rpm/platform/sparcv9v-linux/macros
-lib/rpm/platform/x86_64-linux/macros
diff --git a/misc/rpm/PLIST.NetBSD b/misc/rpm/PLIST.NetBSD
deleted file mode 100644
index d182bd409cf..00000000000
--- a/misc/rpm/PLIST.NetBSD
+++ /dev/null
@@ -1,55 +0,0 @@
-@comment $NetBSD: PLIST.NetBSD,v 1.2 2015/03/15 05:34:56 ryoon Exp $
-lib/rpm/platform/aarch64--gnu/macros
-lib/rpm/platform/alpha--gnu/macros
-lib/rpm/platform/alphaev5--gnu/macros
-lib/rpm/platform/alphaev56--gnu/macros
-lib/rpm/platform/alphaev6--gnu/macros
-lib/rpm/platform/alphaev67--gnu/macros
-lib/rpm/platform/alphapca56--gnu/macros
-lib/rpm/platform/amd64--gnu/macros
-lib/rpm/platform/armv3l--gnu/macros
-lib/rpm/platform/armv4b--gnu/macros
-lib/rpm/platform/armv4l--gnu/macros
-lib/rpm/platform/armv5tejl--gnu/macros
-lib/rpm/platform/armv5tel--gnu/macros
-lib/rpm/platform/armv6hl--gnu/macros
-lib/rpm/platform/armv6l--gnu/macros
-lib/rpm/platform/armv7hl--gnu/macros
-lib/rpm/platform/armv7hnl--gnu/macros
-lib/rpm/platform/armv7l--gnu/macros
-lib/rpm/platform/athlon--gnu/macros
-lib/rpm/platform/geode--gnu/macros
-lib/rpm/platform/i386--gnu/macros
-lib/rpm/platform/i486--gnu/macros
-lib/rpm/platform/i586--gnu/macros
-lib/rpm/platform/i686--gnu/macros
-lib/rpm/platform/ia32e--gnu/macros
-lib/rpm/platform/ia64--gnu/macros
-lib/rpm/platform/m68k--gnu/macros
-lib/rpm/platform/noarch--gnu/macros
-lib/rpm/platform/pentium3--gnu/macros
-lib/rpm/platform/pentium4--gnu/macros
-lib/rpm/platform/ppc--gnu/macros
-lib/rpm/platform/ppc32dy4--gnu/macros
-lib/rpm/platform/ppc64--gnu/macros
-lib/rpm/platform/ppc64iseries--gnu/macros
-lib/rpm/platform/ppc64le--gnu/macros
-lib/rpm/platform/ppc64p7--gnu/macros
-lib/rpm/platform/ppc64pseries--gnu/macros
-lib/rpm/platform/ppc8260--gnu/macros
-lib/rpm/platform/ppc8560--gnu/macros
-lib/rpm/platform/ppciseries--gnu/macros
-lib/rpm/platform/ppcpseries--gnu/macros
-lib/rpm/platform/s390--gnu/macros
-lib/rpm/platform/s390x--gnu/macros
-lib/rpm/platform/sh--gnu/macros
-lib/rpm/platform/sh3--gnu/macros
-lib/rpm/platform/sh4--gnu/macros
-lib/rpm/platform/sh4a--gnu/macros
-lib/rpm/platform/sparc--gnu/macros
-lib/rpm/platform/sparc64--gnu/macros
-lib/rpm/platform/sparc64v--gnu/macros
-lib/rpm/platform/sparcv8--gnu/macros
-lib/rpm/platform/sparcv9--gnu/macros
-lib/rpm/platform/sparcv9v--gnu/macros
-lib/rpm/platform/x86_64--gnu/macros
diff --git a/misc/rpm/PLIST.SunOS b/misc/rpm/PLIST.SunOS
deleted file mode 100644
index c3ea58bd58b..00000000000
--- a/misc/rpm/PLIST.SunOS
+++ /dev/null
@@ -1,55 +0,0 @@
-@comment $NetBSD: PLIST.SunOS,v 1.3 2016/12/06 23:17:16 wiedi Exp $
-lib/rpm/platform/aarch64-solaris/macros
-lib/rpm/platform/alpha-solaris/macros
-lib/rpm/platform/alphaev5-solaris/macros
-lib/rpm/platform/alphaev56-solaris/macros
-lib/rpm/platform/alphaev6-solaris/macros
-lib/rpm/platform/alphaev67-solaris/macros
-lib/rpm/platform/alphapca56-solaris/macros
-lib/rpm/platform/amd64-solaris/macros
-lib/rpm/platform/armv3l-solaris/macros
-lib/rpm/platform/armv4b-solaris/macros
-lib/rpm/platform/armv4l-solaris/macros
-lib/rpm/platform/armv5tejl-solaris/macros
-lib/rpm/platform/armv5tel-solaris/macros
-lib/rpm/platform/armv6hl-solaris/macros
-lib/rpm/platform/armv6l-solaris/macros
-lib/rpm/platform/armv7hl-solaris/macros
-lib/rpm/platform/armv7hnl-solaris/macros
-lib/rpm/platform/armv7l-solaris/macros
-lib/rpm/platform/athlon-solaris/macros
-lib/rpm/platform/geode-solaris/macros
-lib/rpm/platform/i386-solaris/macros
-lib/rpm/platform/i486-solaris/macros
-lib/rpm/platform/i586-solaris/macros
-lib/rpm/platform/i686-solaris/macros
-lib/rpm/platform/ia32e-solaris/macros
-lib/rpm/platform/ia64-solaris/macros
-lib/rpm/platform/m68k-solaris/macros
-lib/rpm/platform/noarch-solaris/macros
-lib/rpm/platform/pentium3-solaris/macros
-lib/rpm/platform/pentium4-solaris/macros
-lib/rpm/platform/ppc-solaris/macros
-lib/rpm/platform/ppc32dy4-solaris/macros
-lib/rpm/platform/ppc64-solaris/macros
-lib/rpm/platform/ppc64iseries-solaris/macros
-lib/rpm/platform/ppc64le-solaris/macros
-lib/rpm/platform/ppc64p7-solaris/macros
-lib/rpm/platform/ppc64pseries-solaris/macros
-lib/rpm/platform/ppc8260-solaris/macros
-lib/rpm/platform/ppc8560-solaris/macros
-lib/rpm/platform/ppciseries-solaris/macros
-lib/rpm/platform/ppcpseries-solaris/macros
-lib/rpm/platform/s390-solaris/macros
-lib/rpm/platform/s390x-solaris/macros
-lib/rpm/platform/sh-solaris/macros
-lib/rpm/platform/sh3-solaris/macros
-lib/rpm/platform/sh4-solaris/macros
-lib/rpm/platform/sh4a-solaris/macros
-lib/rpm/platform/sparc-solaris/macros
-lib/rpm/platform/sparc64-solaris/macros
-lib/rpm/platform/sparc64v-solaris/macros
-lib/rpm/platform/sparcv8-solaris/macros
-lib/rpm/platform/sparcv9-solaris/macros
-lib/rpm/platform/sparcv9v-solaris/macros
-lib/rpm/platform/x86_64-solaris/macros
diff --git a/misc/rpm/buildlink3.mk b/misc/rpm/buildlink3.mk
index 2b40d47286e..34b34374ea0 100644
--- a/misc/rpm/buildlink3.mk
+++ b/misc/rpm/buildlink3.mk
@@ -1,4 +1,4 @@
-# $NetBSD: buildlink3.mk,v 1.12 2012/05/07 01:53:48 dholland Exp $
+# $NetBSD: buildlink3.mk,v 1.13 2017/04/23 08:18:14 adam Exp $
BUILDLINK_TREE+= rpm
@@ -10,7 +10,7 @@ BUILDLINK_ABI_DEPENDS.rpm+= rpm>=2.5.4nb7
BUILDLINK_PKGSRCDIR.rpm?= ../../misc/rpm
BUILDLINK_DEPMETHOD.rpm?= build
-BUILDLINK_CPPFLAGS.rpm= -I${BUILDLINK_PREFIX.rpm}/include/rpm
+BUILDLINK_CPPFLAGS.rpm+= -I${BUILDLINK_PREFIX.rpm}/include/rpm
.include "../../devel/gettext-lib/buildlink3.mk"
.include "../../devel/zlib/buildlink3.mk"
diff --git a/misc/rpm/distinfo b/misc/rpm/distinfo
index d3bd215a5c9..b483829c443 100644
--- a/misc/rpm/distinfo
+++ b/misc/rpm/distinfo
@@ -1,17 +1,16 @@
-$NetBSD: distinfo,v 1.16 2015/11/03 23:49:49 agc Exp $
+$NetBSD: distinfo,v 1.17 2017/04/23 08:18:14 adam Exp $
-SHA1 (rpm-4.12.0.1.tar.bz2) = d416bdb249b246b00b2d5d34c66e7f5a68a62524
-RMD160 (rpm-4.12.0.1.tar.bz2) = c57a676d467d0984b13bdca7df803e26609055fd
-SHA512 (rpm-4.12.0.1.tar.bz2) = ae751b04cec2463f1f259aec4b4750fca1e4cef6144b7e612d0c94f7b6a2864ed119547568f6acebb7fefddb7b040b6021c1f32cf465963db0b627f524c5760f
-Size (rpm-4.12.0.1.tar.bz2) = 4129093 bytes
+SHA1 (rpm-4.13.0.1.tar.bz2) = 9566f95f38fcb214e439c552f378c2f64ba0aff9
+RMD160 (rpm-4.13.0.1.tar.bz2) = 9a9b47b89ddb00b22a46ec3530c39dcc7ee1f85d
+SHA512 (rpm-4.13.0.1.tar.bz2) = b7475dd0803e06a5dd6a95d0bf8add6ff0d8f0620dd389c4d87a85becb0eb4637aa4ff8c48e18d4844ff6feefa25d642d9f876cd210006cb2144006d34a91b91
+Size (rpm-4.13.0.1.tar.bz2) = 4305261 bytes
SHA1 (patch-build_rpmfc.c) = 10e3196d7d2dcc17f7c2be0acbea01f00354eee3
-SHA1 (patch-configure.ac) = c6301dce864ad1ade8bc21c2d00f2c9754594b2d
-SHA1 (patch-lib_backend_db3.c) = 241c9193723253bbe037e61c54992f66aa825136
-SHA1 (patch-lib_cpio.c) = e5f0a60e33832175ab393562be89aba998513ae8
-SHA1 (patch-lib_header.c) = 091dc42741fd5f34edcf9b90f1e9d76087be56b4
-SHA1 (patch-lib_rpmrc.c) = cf9e1349d84dea4f60b7db574e31e14799d4e75c
-SHA1 (patch-misc_fnmatch.c) = d4a8d81fe4a0cb97946e4037c5d8a4299a4411a7
-SHA1 (patch-misc_fts.c) = c0555292deb60c1bd661f082ca7318d6623541bc
-SHA1 (patch-misc_fts.h) = ec4ee0ea18f5d210eb32d9f22c90e43d2ede0c53
+SHA1 (patch-configure.ac) = 40f497407fd0af7ac0a17152b8751a7a02817b88
+SHA1 (patch-installplatform) = f9aed911d6c4695a13cedb63378bcd262b92ba99
+SHA1 (patch-lib_backend_db3.c) = 61c202b330baadaf5f68a22806e08f02a184e01a
+SHA1 (patch-lib_header.c) = e882a7578a844081dce9d534e4d458e89bc0d2f7
+SHA1 (patch-lib_rpmrc.c) = 6e8c26311a596aba2aff142d94823d5b1304750f
+SHA1 (patch-misc_fnmatch.c) = f05137fc4c65986edf7dbcc87c8567ff18bf14eb
+SHA1 (patch-misc_fts.c) = becd8e4cacb126930f7f2c6446855164db6b4537
SHA1 (patch-rpmio_rpmfileutil.c) = fd1debee2c38e866b8098223bab304a66b76eb23
SHA1 (patch-system.h) = 215e3cfaafc1573c527b7f430b3807093550c39e
diff --git a/misc/rpm/patches/patch-configure.ac b/misc/rpm/patches/patch-configure.ac
index 9bacafe4fea..6730196a5f5 100644
--- a/misc/rpm/patches/patch-configure.ac
+++ b/misc/rpm/patches/patch-configure.ac
@@ -1,7 +1,20 @@
-$NetBSD: patch-configure.ac,v 1.3 2015/03/15 05:34:56 ryoon Exp $
+$NetBSD: patch-configure.ac,v 1.4 2017/04/23 08:18:15 adam Exp $
---- configure.ac.orig 2014-09-15 07:39:14.000000000 +0000
+Avoid -fstack-protector, it is not portable.
+Redefine MYPATH to avoid build directory references.
+Detect dirfd() and setprogname() functions.
+
+--- configure.ac.orig 2016-11-02 08:42:29.000000000 +0000
+++ configure.ac
+@@ -37,7 +37,7 @@ fi
+ AS=${AS-as}
+ AC_SUBST(AS)
+ if test "$GCC" = yes; then
+- cflags_to_try="-fno-strict-aliasing -fstack-protector -Wempty-body"
++ cflags_to_try="-fno-strict-aliasing -Wempty-body"
+ AC_MSG_CHECKING([supported compiler flags])
+ old_cflags=$CFLAGS
+ echo
@@ -84,7 +84,7 @@ dnl
if test "$cross_compiling" = "yes"; then
MYPATH=":"
@@ -11,13 +24,12 @@ $NetBSD: patch-configure.ac,v 1.3 2015/03/15 05:34:56 ryoon Exp $
fi
dnl
-@@ -547,6 +547,9 @@ AC_CHECK_FUNCS(fdatasync)
+@@ -547,6 +547,8 @@ AC_CHECK_FUNCS(fdatasync)
AC_CHECK_FUNCS(lutimes)
AC_CHECK_FUNCS(mergesort)
AC_CHECK_FUNCS(getauxval)
+AC_CHECK_FUNCS(dirfd)
+AC_CHECK_FUNCS(setprogname)
-+AC_CHECK_FUNCS(htonll)
AC_REPLACE_FUNCS(stpcpy stpncpy)
diff --git a/misc/rpm/patches/patch-installplatform b/misc/rpm/patches/patch-installplatform
new file mode 100644
index 00000000000..e4b6234ad3e
--- /dev/null
+++ b/misc/rpm/patches/patch-installplatform
@@ -0,0 +1,15 @@
+$NetBSD: patch-installplatform,v 1.1 2017/04/23 08:18:15 adam Exp $
+
+Keep macros in one place across platforms.
+
+--- installplatform.orig 2017-04-23 06:48:59.000000000 +0000
++++ installplatform
+@@ -194,7 +194,7 @@ for ARCH in noarch `grep ^arch_canon $RP
+ LIB=${LIB}64
+ fi
+
+- PPD="${DESTDIR}/${platformdir}/${ARCH}-${OS}"
++ PPD="${DESTDIR}/${platformdir}/${ARCH}"
+ [ -d $PPD ] || mkdir -p $PPD
+
+ cat $PLATFORM \
diff --git a/misc/rpm/patches/patch-lib_backend_db3.c b/misc/rpm/patches/patch-lib_backend_db3.c
index a55676b2220..0176fc4cf1b 100644
--- a/misc/rpm/patches/patch-lib_backend_db3.c
+++ b/misc/rpm/patches/patch-lib_backend_db3.c
@@ -1,6 +1,8 @@
-$NetBSD: patch-lib_backend_db3.c,v 1.2 2015/03/15 05:34:56 ryoon Exp $
+$NetBSD: patch-lib_backend_db3.c,v 1.3 2017/04/23 08:18:15 adam Exp $
---- lib/backend/db3.c.orig 2014-06-30 08:47:13.000000000 +0000
+Add missing include.
+
+--- lib/backend/db3.c.orig 2017-02-16 09:40:09.000000000 +0000
+++ lib/backend/db3.c
@@ -7,6 +7,7 @@ static int _debug = 1; /* XXX if < 0 deb
#include "system.h"
@@ -8,5 +10,5 @@ $NetBSD: patch-lib_backend_db3.c,v 1.2 2015/03/15 05:34:56 ryoon Exp $
#include <errno.h>
+#include <signal.h>
#include <sys/wait.h>
+ #include <popt.h>
#include <db.h>
-
diff --git a/misc/rpm/patches/patch-lib_cpio.c b/misc/rpm/patches/patch-lib_cpio.c
deleted file mode 100644
index 12fb6914ae9..00000000000
--- a/misc/rpm/patches/patch-lib_cpio.c
+++ /dev/null
@@ -1,20 +0,0 @@
-$NetBSD: patch-lib_cpio.c,v 1.1 2015/03/22 17:32:55 sevan Exp $
-
-CVE-2014-8118 - Integer overflow allows remote attackers to execute arbitrary
-code via a crafted CPIO header in the payload section of an RPM file, which
-triggers a stack-based buffer overflow.
-
-https://bugzilla.redhat.com/show_bug.cgi?id=1168715
-
---- lib/cpio.c.orig 2014-06-30 08:47:13.000000000 +0000
-+++ lib/cpio.c
-@@ -399,6 +399,9 @@ int rpmcpioHeaderRead(rpmcpio_t cpio, ch
-
- GET_NUM_FIELD(hdr.filesize, fsize);
- GET_NUM_FIELD(hdr.namesize, nameSize);
-+ if (nameSize <= 0 || nameSize > 4096) {
-+ return RPMERR_BAD_HEADER;
-+ }
-
- char name[nameSize + 1];
- read = Fread(name, nameSize, 1, cpio->fd);
diff --git a/misc/rpm/patches/patch-lib_header.c b/misc/rpm/patches/patch-lib_header.c
index a3b88ad3273..f80d01d451a 100644
--- a/misc/rpm/patches/patch-lib_header.c
+++ b/misc/rpm/patches/patch-lib_header.c
@@ -1,4 +1,4 @@
-$NetBSD: patch-lib_header.c,v 1.2 2015/03/15 05:34:56 ryoon Exp $
+$NetBSD: patch-lib_header.c,v 1.3 2017/04/23 08:18:15 adam Exp $
* Detect htonll in configure script.
@@ -8,7 +8,7 @@ $NetBSD: patch-lib_header.c,v 1.2 2015/03/15 05:34:56 ryoon Exp $
#define ENTRY_IN_REGION(_e) ((_e)->info.offset < 0)
/* Convert a 64bit value to network byte order. */
-+#if !defined(HAVE_HTONLL)
++#if !defined(htonll)
RPM_GNUC_CONST
static uint64_t htonll(uint64_t n)
{
diff --git a/misc/rpm/patches/patch-lib_rpmrc.c b/misc/rpm/patches/patch-lib_rpmrc.c
index 980c8eef73d..11156ea5157 100644
--- a/misc/rpm/patches/patch-lib_rpmrc.c
+++ b/misc/rpm/patches/patch-lib_rpmrc.c
@@ -1,8 +1,20 @@
-$NetBSD: patch-lib_rpmrc.c,v 1.1 2013/09/15 12:32:22 joerg Exp $
+$NetBSD: patch-lib_rpmrc.c,v 1.2 2017/04/23 08:18:15 adam Exp $
---- lib/rpmrc.c.orig 2013-09-14 21:00:41.000000000 +0000
+For macros use a path with _arch.
+Preprocessor portability fix.
+
+--- lib/rpmrc.c.orig 2017-02-16 09:40:09.000000000 +0000
+++ lib/rpmrc.c
-@@ -991,7 +991,7 @@ static void defaultMachine(const char **
+@@ -466,7 +466,7 @@ static void setDefaults(void)
+ if (!macrofiles) {
+ macrofiles = rstrscat(NULL, confdir, "/macros", ":",
+ confdir, "/macros.d/macros.*", ":",
+- confdir, "/platform/%{_target}/macros", ":",
++ confdir, "/platform/%{_arch}/macros", ":",
+ confdir, "/fileattrs/*.attr", ":",
+ confdir, "/" RPMCANONVENDOR "/macros", ":",
+ SYSCONFDIR "/rpm/macros.*", ":",
+@@ -1028,7 +1028,7 @@ static void defaultMachine(rpmrcCtx ctx,
else if(rstreq(un.sysname, "Darwin")) {
#ifdef __ppc__
strcpy(un.machine, "ppc");
diff --git a/misc/rpm/patches/patch-misc_fnmatch.c b/misc/rpm/patches/patch-misc_fnmatch.c
index 337bfb53b8b..13035d77c4d 100644
--- a/misc/rpm/patches/patch-misc_fnmatch.c
+++ b/misc/rpm/patches/patch-misc_fnmatch.c
@@ -1,4 +1,6 @@
-$NetBSD: patch-misc_fnmatch.c,v 1.2 2015/03/15 05:34:56 ryoon Exp $
+$NetBSD: patch-misc_fnmatch.c,v 1.3 2017/04/23 08:18:15 adam Exp $
+
+Add missing include.
--- misc/fnmatch.c.orig 2014-06-30 08:47:14.000000000 +0000
+++ misc/fnmatch.c
diff --git a/misc/rpm/patches/patch-misc_fts.c b/misc/rpm/patches/patch-misc_fts.c
index 6f0aeae7d05..898f52e707d 100644
--- a/misc/rpm/patches/patch-misc_fts.c
+++ b/misc/rpm/patches/patch-misc_fts.c
@@ -1,28 +1,34 @@
-$NetBSD: patch-misc_fts.c,v 1.2 2013/09/20 17:26:14 ryoon Exp $
+$NetBSD: patch-misc_fts.c,v 1.3 2017/04/23 08:18:15 adam Exp $
* Detect dirfd(3) and setprogname(3) in configure script.
---- misc/fts.c.orig 2012-11-18 08:21:06.000000000 +0000
+--- misc/fts.c.orig 2016-11-30 07:03:00.000000000 +0000
+++ misc/fts.c
-@@ -52,7 +52,9 @@ static char sccsid[] = "@(#)fts.c 8.6 (B
+@@ -32,7 +32,7 @@ static char sccsid[] = "@(#)fts.c 8.6 (B
+ #endif /* LIBC_SCCS and not lint */
+
+ /* Conditional to set up proper fstat64 implementation */
+-#if defined(hpux) || defined(sun)
++#if defined(hpux) || defined(sun) || defined(__NetBSD__)
+ # define FTS_FSTAT64(_fd, _sbp) fstat((_fd), (_sbp))
+ #else
+ # define FTS_FSTAT64(_fd, _sbp) fstat64((_fd), (_sbp))
+@@ -59,11 +59,18 @@ static char sccsid[] = "@(#)fts.c 8.6 (B
#endif
#if defined(sun)
# define __errno_location() (&errno)
+# if defined(HAVE_DIRFD)
# define dirfd(dirp) -1
+# endif
- # define _STAT_VER 0
- # define __fxstat64(_stat_ver, _fd, _sbp) fstat((_fd), (_sbp))
#endif
-@@ -61,6 +63,11 @@ static char sccsid[] = "@(#)fts.c 8.6 (B
- # define _STAT_VER 0
- # define __fxstat64(_stat_ver, _fd, _sbp) fstat64((_fd), (_sbp))
+ #if defined(__APPLE__)
+ # define __errno_location() (__error())
#endif
+#if defined(__NetBSD__)
-+# define __errno_location() (&errno)
-+# define stat64 stat
-+# define __fxstat64(_stat_ver, _fd, _sbp) fstat((_fd), (_sbp))
++# define __errno_location() (&errno)
++# define stat64 stat
++# define __fxstat64(_stat_ver, _fd, _sbp) fstat((_fd), (_sbp))
+#endif
+
#include "system.h"
#include <stdlib.h>
- #include <string.h>
diff --git a/misc/rpm/patches/patch-misc_fts.h b/misc/rpm/patches/patch-misc_fts.h
deleted file mode 100644
index 5a1a619fee9..00000000000
--- a/misc/rpm/patches/patch-misc_fts.h
+++ /dev/null
@@ -1,17 +0,0 @@
-$NetBSD: patch-misc_fts.h,v 1.1 2013/09/13 12:41:32 ryoon Exp $
-
-* Definition for NetBSD.
-
---- misc/fts.h.orig 2013-06-10 15:55:10.000000000 +0000
-+++ misc/fts.h
-@@ -61,6 +61,10 @@
- # define _D_EXACT_NAMLEN(d) (strlen((d)->d_name))
- #endif
-
-+#if defined(__NetBSD__)
-+# define _D_EXACT_NAMLEN(d) ((d)->d_reclen)
-+#endif
-+
- #endif
-
- #include <sys/types.h>