summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--patches/rpm-4.14.1.local.patch360
-rw-r--r--vars/build.vars6
2 files changed, 365 insertions, 1 deletions
diff --git a/patches/rpm-4.14.1.local.patch b/patches/rpm-4.14.1.local.patch
new file mode 100644
index 00000000..94b74f2d
--- /dev/null
+++ b/patches/rpm-4.14.1.local.patch
@@ -0,0 +1,360 @@
+diff -ru rpm-4.14.1.orig/config.h.in rpm-4.14.1/config.h.in
+--- rpm-4.14.1.orig/config.h.in 2018-01-16 10:32:04.032937164 +0100
++++ rpm-4.14.1/config.h.in 2018-04-01 01:52:38.186380003 +0200
+@@ -6,6 +6,9 @@
+ /* Build with dmalloc support? */
+ #undef DMALLOC
+
++/* Enable Berkeley DB rpmdb support */
++#undef ENABLE_BDB
++
+ /* Enable new rpm database format? */
+ #undef ENABLE_NDB
+
+diff -ru rpm-4.14.1.orig/configure rpm-4.14.1/configure
+--- rpm-4.14.1.orig/configure 2018-04-01 01:53:02.034218083 +0200
++++ rpm-4.14.1/configure 2018-04-01 01:52:38.074380764 +0200
+@@ -715,6 +715,8 @@
+ LMDB_CFLAGS
+ NDB_FALSE
+ NDB_TRUE
++BDB_FALSE
++BDB_TRUE
+ WITH_DB_LIB
+ HAVE_LIBDW_STRTAB_FALSE
+ HAVE_LIBDW_STRTAB_TRUE
+@@ -960,6 +962,7 @@
+ with_beecrypt
+ with_internal_beecrypt
+ with_archive
++enable_bdb
+ with_external_db
+ enable_ndb
+ enable_lmdb
+@@ -1652,6 +1655,8 @@
+ --disable-largefile omit support for large files
+ --enable-zstd=[yes/no/auto]
+ build without zstd support (default=auto)
++ --enable-bdb=[yes/no] build with Berkeley DB rpm database format support
++ (default=yes)
+ --enable-ndb (EXPERIMENTAL)
+ enable the new rpm database format
+ --enable-lmdb=[yes/no/auto] (EXPERIMENTAL)
+@@ -21980,6 +21985,23 @@
+
+
+ #=================
++# Enable Berkeley DB rpmdb backend
++# Check whether --enable-bdb was given.
++if test "${enable_bdb+set}" = set; then :
++ enableval=$enable_bdb; enable_bdb="$enableval"
++else
++ enable_bdb=yes
++fi
++
++
++if test "$enable_bdb" = "yes"; then :
++
++
++
++$as_echo "#define ENABLE_BDB /**/" >>confdefs.h
++
++
++#=================
+ # Process --with/without-external-db
+
+ # Check whether --with-external_db was given.
+@@ -22087,6 +22109,16 @@
+
+
+
++fi
++ if test "$enable_bdb" = yes; then
++ BDB_TRUE=
++ BDB_FALSE='#'
++else
++ BDB_TRUE='#'
++ BDB_FALSE=
++fi
++
++
+ #=================
+ # Process --enable-ndb
+ # Check whether --enable-ndb was given.
+@@ -26723,6 +26755,10 @@
+ as_fn_error $? "conditional \"HAVE_LIBDW_STRTAB\" was never defined.
+ Usually this means the macro was only invoked conditionally." "$LINENO" 5
+ fi
++if test -z "${BDB_TRUE}" && test -z "${BDB_FALSE}"; then
++ as_fn_error $? "conditional \"BDB\" was never defined.
++Usually this means the macro was only invoked conditionally." "$LINENO" 5
++fi
+ if test -z "${NDB_TRUE}" && test -z "${NDB_FALSE}"; then
+ as_fn_error $? "conditional \"NDB\" was never defined.
+ Usually this means the macro was only invoked conditionally." "$LINENO" 5
+diff -ru rpm-4.14.1.orig/configure.ac rpm-4.14.1/configure.ac
+--- rpm-4.14.1.orig/configure.ac 2018-01-16 10:30:14.074141024 +0100
++++ rpm-4.14.1/configure.ac 2018-04-01 01:52:13.858545262 +0200
+@@ -509,6 +509,18 @@
+ AM_CONDITIONAL(HAVE_LIBDW_STRTAB,[test "$HAVE_LIBDW_STRTAB" = yes])
+
+ #=================
++# Enable Berkeley DB rpmdb backend
++AC_ARG_ENABLE([bdb],
++ [AS_HELP_STRING([--enable-bdb=@<:@yes/no@:>@],
++ [build with Berkeley DB rpm database format support (default=yes)])],
++ [enable_bdb="$enableval"],
++ [enable_bdb=yes])
++
++AS_IF([test "$enable_bdb" = "yes"], [
++
++ AC_DEFINE([ENABLE_BDB], [], [Enable Berkeley DB rpmdb support])
++
++#=================
+ # Process --with/without-external-db
+ AC_ARG_WITH(external_db, [AS_HELP_STRING([--with-external-db],[build against an external Berkeley db])],
+ [case "$with_external_db" in
+@@ -566,6 +578,8 @@
+ esac
+
+ AC_SUBST([WITH_DB_LIB])
++])
++AM_CONDITIONAL([BDB], [test "$enable_bdb" = yes])
+
+ #=================
+ # Process --enable-ndb
+diff -ru rpm-4.14.1.orig/lib/backend/dbi.c rpm-4.14.1/lib/backend/dbi.c
+--- rpm-4.14.1.orig/lib/backend/dbi.c 2017-10-05 12:04:56.946602155 +0200
++++ rpm-4.14.1/lib/backend/dbi.c 2018-04-01 01:52:13.858545262 +0200
+@@ -50,11 +50,13 @@
+ } else
+ #endif
+ {
++#ifdef ENABLE_BDB
+ rdb->db_ops = &db3_dbops;
+ if (*db_backend == '\0') {
+ free(db_backend);
+ db_backend = xstrdup("bdb");
+ }
++#endif
+ }
+
+ #if defined(WITH_LMDB)
+@@ -75,12 +77,14 @@
+ free(path);
+ #endif
+
++#ifdef ENABLE_BDB
+ path = rstrscat(NULL, dbhome, "/Packages", NULL);
+ if (access(path, F_OK) == 0 && rdb->db_ops != &db3_dbops) {
+ rdb->db_ops = &db3_dbops;
+ rpmlog(RPMLOG_WARNING, _("Found BDB Packages database while attempting %s backend: using bdb backend.\n"), db_backend);
+ }
+ free(path);
++#endif
+
+ if (db_backend)
+ free(db_backend);
+diff -ru rpm-4.14.1.orig/lib/Makefile.am rpm-4.14.1/lib/Makefile.am
+--- rpm-4.14.1.orig/lib/Makefile.am 2017-10-05 12:04:56.944602155 +0200
++++ rpm-4.14.1/lib/Makefile.am 2018-04-01 01:52:13.858545262 +0200
+@@ -24,7 +24,7 @@
+
+ usrlib_LTLIBRARIES = librpm.la
+ librpm_la_SOURCES = \
+- backend/db3.c backend/dbi.c backend/dbi.h \
++ backend/dbi.c backend/dbi.h \
+ backend/dbiset.c backend/dbiset.h \
+ headerutil.c header.c headerfmt.c header_internal.h \
+ rpmdb.c rpmdb_internal.h \
+@@ -59,11 +59,15 @@
+ librpm_la_SOURCES += rpmliblua.c rpmliblua.h
+ endif
+
++if BDB
++librpm_la_SOURCES += \
++ backend/db3.c
+ if WITH_INTERNAL_DB
+ librpm_la_LIBADD += $(libdb_la)
+ else
+ librpm_la_LIBADD += @WITH_DB_LIB@
+ endif
++endif
+
+ if NDB
+ librpm_la_SOURCES += \
+diff -ru rpm-4.14.1.orig/lib/Makefile.in rpm-4.14.1/lib/Makefile.in
+--- rpm-4.14.1.orig/lib/Makefile.in 2018-04-01 01:53:02.858212489 +0200
++++ rpm-4.14.1/lib/Makefile.in 2018-04-01 01:52:38.898375168 +0200
+@@ -96,9 +96,12 @@
+ @WITH_LUA_TRUE@am__append_1 = @LUA_CFLAGS@
+ @WITH_LUA_TRUE@am__append_2 = @LUA_LIBS@
+ @WITH_LUA_TRUE@am__append_3 = rpmliblua.c rpmliblua.h
+-@WITH_INTERNAL_DB_TRUE@am__append_4 = $(libdb_la)
+-@WITH_INTERNAL_DB_FALSE@am__append_5 = @WITH_DB_LIB@
+-@NDB_TRUE@am__append_6 = \
++@BDB_TRUE@am__append_4 = \
++@BDB_TRUE@ backend/db3.c
++
++@BDB_TRUE@@WITH_INTERNAL_DB_TRUE@am__append_5 = $(libdb_la)
++@BDB_TRUE@@WITH_INTERNAL_DB_FALSE@am__append_6 = @WITH_DB_LIB@
++@NDB_TRUE@am__append_7 = \
+ @NDB_TRUE@ backend/ndb/glue.c \
+ @NDB_TRUE@ backend/ndb/rpmpkg.c \
+ @NDB_TRUE@ backend/ndb/rpmpkg.h \
+@@ -107,12 +110,12 @@
+ @NDB_TRUE@ backend/ndb/rpmxdb.c \
+ @NDB_TRUE@ backend/ndb/rpmxdb.h
+
+-@LMDB_TRUE@am__append_7 = $(LMDB_CFLAGS)
+-@LMDB_TRUE@am__append_8 = $(LMDB_LIBS)
+-@LMDB_TRUE@am__append_9 = \
++@LMDB_TRUE@am__append_8 = $(LMDB_CFLAGS)
++@LMDB_TRUE@am__append_9 = $(LMDB_LIBS)
++@LMDB_TRUE@am__append_10 = \
+ @LMDB_TRUE@ backend/lmdb.c
+
+-@WITH_INTERNAL_DB_TRUE@am__append_10 = $(libdb_la)
++@WITH_INTERNAL_DB_TRUE@am__append_11 = $(libdb_la)
+ @WITH_INTERNAL_DB_TRUE@rpmlibexec_PROGRAMS = rpmdb_dump$(EXEEXT) \
+ @WITH_INTERNAL_DB_TRUE@ rpmdb_load$(EXEEXT) \
+ @WITH_INTERNAL_DB_TRUE@ rpmdb_recover$(EXEEXT) \
+@@ -169,9 +172,9 @@
+ am__DEPENDENCIES_1 =
+ @LMDB_TRUE@am__DEPENDENCIES_2 = $(am__DEPENDENCIES_1)
+ librpm_la_DEPENDENCIES = $(top_builddir)/rpmio/librpmio.la \
+- $(am__DEPENDENCIES_1) $(am__append_4) $(am__DEPENDENCIES_1) \
++ $(am__DEPENDENCIES_1) $(am__append_5) $(am__DEPENDENCIES_1) \
+ $(am__DEPENDENCIES_2)
+-am__librpm_la_SOURCES_DIST = backend/db3.c backend/dbi.c backend/dbi.h \
++am__librpm_la_SOURCES_DIST = backend/dbi.c backend/dbi.h \
+ backend/dbiset.c backend/dbiset.h headerutil.c header.c \
+ headerfmt.c header_internal.h rpmdb.c rpmdb_internal.h \
+ fprint.c fprint.h tagname.c rpmtd.c cpio.c cpio.h depends.c \
+@@ -185,25 +188,27 @@
+ rpmlock.h misc.h relocation.c rpmscript.h rpmscript.c \
+ rpmchroot.c rpmchroot.h rpmplugins.c rpmplugins.h rpmplugin.h \
+ rpmug.c rpmug.h rpmtriggers.h rpmtriggers.c rpmvs.c rpmvs.h \
+- rpmliblua.c rpmliblua.h backend/ndb/glue.c \
++ rpmliblua.c rpmliblua.h backend/db3.c backend/ndb/glue.c \
+ backend/ndb/rpmpkg.c backend/ndb/rpmpkg.h backend/ndb/rpmidx.c \
+ backend/ndb/rpmidx.h backend/ndb/rpmxdb.c backend/ndb/rpmxdb.h \
+ backend/lmdb.c
+ am__dirstamp = $(am__leading_dot)dirstamp
+ @WITH_LUA_TRUE@am__objects_1 = rpmliblua.lo
+-@NDB_TRUE@am__objects_2 = backend/ndb/glue.lo backend/ndb/rpmpkg.lo \
++@BDB_TRUE@am__objects_2 = backend/db3.lo
++@NDB_TRUE@am__objects_3 = backend/ndb/glue.lo backend/ndb/rpmpkg.lo \
+ @NDB_TRUE@ backend/ndb/rpmidx.lo backend/ndb/rpmxdb.lo
+-@LMDB_TRUE@am__objects_3 = backend/lmdb.lo
+-am_librpm_la_OBJECTS = backend/db3.lo backend/dbi.lo backend/dbiset.lo \
+- headerutil.lo header.lo headerfmt.lo rpmdb.lo fprint.lo \
+- tagname.lo rpmtd.lo cpio.lo depends.lo order.lo formats.lo \
+- tagexts.lo fsm.lo manifest.lo package.lo poptALL.lo poptI.lo \
+- poptQV.lo psm.lo query.lo rpmal.lo rpmchecksig.lo rpmds.lo \
+- rpmfi.lo rpmgi.lo rpminstall.lo rpmlead.lo rpmps.lo rpmprob.lo \
+- rpmrc.lo rpmte.lo rpmts.lo rpmfs.lo rpmvercmp.lo signature.lo \
+- transaction.lo verify.lo rpmlock.lo relocation.lo rpmscript.lo \
+- rpmchroot.lo rpmplugins.lo rpmug.lo rpmtriggers.lo rpmvs.lo \
+- $(am__objects_1) $(am__objects_2) $(am__objects_3)
++@LMDB_TRUE@am__objects_4 = backend/lmdb.lo
++am_librpm_la_OBJECTS = backend/dbi.lo backend/dbiset.lo headerutil.lo \
++ header.lo headerfmt.lo rpmdb.lo fprint.lo tagname.lo rpmtd.lo \
++ cpio.lo depends.lo order.lo formats.lo tagexts.lo fsm.lo \
++ manifest.lo package.lo poptALL.lo poptI.lo poptQV.lo psm.lo \
++ query.lo rpmal.lo rpmchecksig.lo rpmds.lo rpmfi.lo rpmgi.lo \
++ rpminstall.lo rpmlead.lo rpmps.lo rpmprob.lo rpmrc.lo rpmte.lo \
++ rpmts.lo rpmfs.lo rpmvercmp.lo signature.lo transaction.lo \
++ verify.lo rpmlock.lo relocation.lo rpmscript.lo rpmchroot.lo \
++ rpmplugins.lo rpmug.lo rpmtriggers.lo rpmvs.lo \
++ $(am__objects_1) $(am__objects_2) $(am__objects_3) \
++ $(am__objects_4)
+ librpm_la_OBJECTS = $(am_librpm_la_OBJECTS)
+ AM_V_lt = $(am__v_lt_@AM_V@)
+ am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
+@@ -597,18 +602,18 @@
+ -DLOCALSTATEDIR="\"$(localstatedir)\"" \
+ -DLIBRPMALIAS_FILENAME="\"rpmpopt-${VERSION}\"" \
+ -DLIBRPMALIAS_EXECPATH="\"$(bindir)\"" $(am__append_1) \
+- $(am__append_7)
++ $(am__append_8)
+ usrlibdir = $(libdir)
+-CLEANFILES = $(am__append_10) $(BUILT_SOURCES)
++CLEANFILES = $(am__append_11) $(BUILT_SOURCES)
+ EXTRA_DIST = gentagtbl.sh tagtbl.C rpmhash.C rpmhash.H
+ usrlib_LTLIBRARIES = librpm.la
+-librpm_la_SOURCES = backend/db3.c backend/dbi.c backend/dbi.h \
+- backend/dbiset.c backend/dbiset.h headerutil.c header.c \
+- headerfmt.c header_internal.h rpmdb.c rpmdb_internal.h \
+- fprint.c fprint.h tagname.c rpmtd.c cpio.c cpio.h depends.c \
+- order.c formats.c tagexts.c fsm.c fsm.h manifest.c manifest.h \
+- package.c poptALL.c poptI.c poptQV.c psm.c query.c rpmal.c \
+- rpmal.h rpmchecksig.c rpmds.c rpmds_internal.h rpmfi.c \
++librpm_la_SOURCES = backend/dbi.c backend/dbi.h backend/dbiset.c \
++ backend/dbiset.h headerutil.c header.c headerfmt.c \
++ header_internal.h rpmdb.c rpmdb_internal.h fprint.c fprint.h \
++ tagname.c rpmtd.c cpio.c cpio.h depends.c order.c formats.c \
++ tagexts.c fsm.c fsm.h manifest.c manifest.h package.c \
++ poptALL.c poptI.c poptQV.c psm.c query.c rpmal.c rpmal.h \
++ rpmchecksig.c rpmds.c rpmds_internal.h rpmfi.c \
+ rpmfi_internal.h rpmgi.h rpmgi.c rpminstall.c rpmts_internal.h \
+ rpmlead.c rpmlead.h rpmps.c rpmprob.c rpmrc.c rpmte.c \
+ rpmte_internal.h rpmts.c rpmfs.h rpmfs.c rpmvercmp.c \
+@@ -616,11 +621,12 @@
+ rpmlock.h misc.h relocation.c rpmscript.h rpmscript.c \
+ rpmchroot.c rpmchroot.h rpmplugins.c rpmplugins.h rpmplugin.h \
+ rpmug.c rpmug.h rpmtriggers.h rpmtriggers.c rpmvs.c rpmvs.h \
+- $(am__append_3) $(am__append_6) $(am__append_9)
++ $(am__append_3) $(am__append_4) $(am__append_7) \
++ $(am__append_10)
+ librpm_la_LDFLAGS = -version-info $(rpm_version_info)
+ librpm_la_LIBADD = $(top_builddir)/rpmio/librpmio.la @WITH_POPT_LIB@ \
+ @WITH_CAP_LIB@ @WITH_ACL_LIB@ @LIBINTL@ $(am__append_2) \
+- $(am__append_4) $(am__append_5) $(am__append_8)
++ $(am__append_5) $(am__append_6) $(am__append_9)
+ BUILT_SOURCES = tagtbl.C
+
+ # XXX watchout, $(top_builddir)/db3/libdb.la created by this Makefile may surprise
+@@ -748,12 +754,12 @@
+ backend/$(DEPDIR)/$(am__dirstamp):
+ @$(MKDIR_P) backend/$(DEPDIR)
+ @: > backend/$(DEPDIR)/$(am__dirstamp)
+-backend/db3.lo: backend/$(am__dirstamp) \
+- backend/$(DEPDIR)/$(am__dirstamp)
+ backend/dbi.lo: backend/$(am__dirstamp) \
+ backend/$(DEPDIR)/$(am__dirstamp)
+ backend/dbiset.lo: backend/$(am__dirstamp) \
+ backend/$(DEPDIR)/$(am__dirstamp)
++backend/db3.lo: backend/$(am__dirstamp) \
++ backend/$(DEPDIR)/$(am__dirstamp)
+ backend/ndb/$(am__dirstamp):
+ @$(MKDIR_P) backend/ndb
+ @: > backend/ndb/$(am__dirstamp)
+diff -ru rpm-4.14.1.orig/macros.in rpm-4.14.1/macros.in
+--- rpm-4.14.1.orig/macros.in 2018-01-16 10:02:32.740236142 +0100
++++ rpm-4.14.1/macros.in 2018-04-01 01:51:55.766668212 +0200
+@@ -613,7 +613,7 @@
+ # lmdb Lightning Memory-mapped Database
+ # ndb new data base format
+ #
+-%_db_backend bdb
++%_db_backend lmdb
+
+ #
+ # Macros used to configure Berkley db parameters.
+Only in rpm-4.14.1: macros.in.orig
+diff -ru rpm-4.14.1.orig/rpmio/digest_openssl.c rpm-4.14.1/rpmio/digest_openssl.c
+--- rpm-4.14.1.orig/rpmio/digest_openssl.c 2017-10-05 12:04:57.554602041 +0200
++++ rpm-4.14.1/rpmio/digest_openssl.c 2018-04-01 02:39:06.081268659 +0200
+@@ -175,8 +175,11 @@
+ case PGPHASHALGO_RIPEMD160:
+ return EVP_ripemd160();
+
++/* This should be a ifndef libressl... */
++#ifndef __midipix__
+ case PGPHASHALGO_MD2:
+ return EVP_md2();
++#endif
+
+ case PGPHASHALGO_SHA256:
+ return EVP_sha256();
diff --git a/vars/build.vars b/vars/build.vars
index f1ecd6af..e691c261 100644
--- a/vars/build.vars
+++ b/vars/build.vars
@@ -347,7 +347,7 @@ expat libxml2 alsa_lib apr apr_util bzip2 libdmtx libressl curl libz lmdb libpng
libjpeg_turbo tiff giflib libffi gdbm geoip pcre glib gzip libarchive
libatomic_ops musl_compat libbsd libpipeline libevent libfetch libogg libvorbis libgpg_error libassuan libfirm
libgcrypt libksba libudns lua ncurses ncursestw ncursesw libnettle gnutls libreadline npth
-popt shared_mime_info sqlite3 w32api w32lib xz cmake qrencode util_linux";
+popt rpm shared_mime_info sqlite3 w32api w32lib xz cmake qrencode util_linux";
NATIVE_PACKAGES_DEPS_PREFIX="${PREFIX_NATIVE}";
NATIVE_PACKAGES_DEPS_PYTHON="${PREFIX}/bin/python";
: ${PKG_EXPAT_SHA256SUM:=d9e50ff2d19b3538bd2127902a89987474e1a4db8e43a66a4d1a712ab9a504ff};
@@ -520,6 +520,10 @@ NATIVE_PACKAGES_DEPS_PYTHON="${PREFIX}/bin/python";
: ${PKG_POPT_SHA256SUM:=e728ed296fe9f069a0e005003c3d6b2dde3d9cad453422a10d6558616d304cc8};
: ${PKG_POPT_VERSION:=1.16};
: ${PKG_POPT_URL:=http://rpm5.org/files/popt/popt-${PKG_POPT_VERSION}.tar.gz};
+: ${PKG_RPM_SHA256SUM:=43f40e2ccc3ca65bd3238f8c9f8399d4957be0878c2e83cba2746d2d0d96793b};
+: ${PKG_RPM_VERSION:=4.14.1};
+: ${PKG_RPM_URL:=http://ftp.rpm.org/releases/rpm-${PKG_RPM_VERSION%.*}.x/rpm-${PKG_RPM_VERSION}.tar.bz2};
+: ${PKG_RPM_CONFIGURE_ARGS_EXTRA:="--without-lua --enable-ndb --enable-lmdb --enable-bdb=no --with-crypto=openssl --with-vendor=Midipix"};
: ${PKG_SHARED_MIME_INFO_SHA256SUM:=2af55ef1a0319805b74ab40d331a3962c905477d76c086f49e34dc96363589e9};
: ${PKG_SHARED_MIME_INFO_VERSION:=1.8};
: ${PKG_SHARED_MIME_INFO_URL:=http://freedesktop.org/~hadess/shared-mime-info-${PKG_SHARED_MIME_INFO_VERSION}.tar.xz};