#3 Rebase TDNF to v2.1.1
Merged 3 years ago by lalbornoz. Opened 3 years ago by Conan_Kudo.
build/ Conan_Kudo/midipix_build rebase-tdnf  into  main

@@ -6,7 +6,7 @@ 

  alsa_lib apr apr_util bdwgc bmake bochs bzip2 clzip cmake cron dante dbus

  emacs expat ffmpeg file gdbm geoip gettext_tiny ghostscript

  giflib gnuchess gzip hastyhex hexcurse htop imagemagick infounzip infozip

- john lcms2 less lolcode mintty mlogin musl_compat musl_fts ncdu

+ john lcms2 less libmetalink lolcode mintty mlogin musl_compat musl_fts ncdu

  ncurses ncursestw ncursesw npth openjpeg p7zip pcre popt procps_ng qemu

  qpdf qrencode rpm rw shared_mime_info slang sqlite3 tcl tdnf texinfo

  tiff tmux tzdb utf8proc util_linux vim w32api w32lib xorriso xz yabasic
@@ -169,6 +169,10 @@ 

  : ${PKG_LESS_SHA256SUM:=ff165275859381a63f19135a8f1f6c5a194d53ec3187f94121ecd8ef0795fe3d};

  : ${PKG_LESS_VERSION:=551};

  : ${PKG_LESS_URL:=http://www.greenwoodsoftware.com/less/less-${PKG_LESS_VERSION}.tar.gz};

+ : ${PKG_LIBMETALINK_DEPENDS:="expat"};

+ : ${PKG_LIBMETALINK_SHA256SUM:=0753ae1152d970dc3bf327d0ce5cfefeca2f1ab13294b115e64811163a68fd4f};

+ : ${PKG_LIBMETALINK_VERSION:=0.1.3};

+ : ${PKG_LIBMETALINK_URL:=https://launchpad.net/libmetalink/trunk/libmetalink-${PKG_LIBMETALINK_VERSION}/+download/libmetalink-${PKG_LIBMETALINK_VERSION}.tar.bz2};

  : ${PKG_LOLCODE_URLS_GIT:="lci=https://github.com/justinmeza/lci.git@master"};

  : ${PKG_LOLCODE_BUILD_DIR:=lci};

  : ${PKG_MINTTY_DEPENDS:="w32api w32lib"};
@@ -253,7 +257,7 @@ 

  : ${PKG_RPM_SHA256SUM:=ddef45f9601cd12042edfc9b6e37efcca32814e1e0f4bb8682d08144a3e2d230};

  : ${PKG_RPM_VERSION:=4.15.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:="--with-lua --enable-ndb --disable-bdb --enable-zstd --with-crypto=libgcrypt --with-vendor=midipix"};

+ : ${PKG_RPM_CONFIGURE_ARGS:="-C --disable-nls --host=${DEFAULT_TARGET} --prefix=/usr --target=${DEFAULT_TARGET} --with-lua --enable-ndb --disable-bdb --enable-zstd --with-crypto=libgcrypt --with-vendor=midipix"};

  : ${PKG_RPM_ENV_VARS_EXTRA:="LIBGCRYPT_CONFIG=${PREFIX_NATIVE}/bin/libgcrypt-config"};

  : ${PKG_RW_SHA256SUM:=50009730e36991dfe579716f91f4f616f5ba05ffb7bf69c03d41bf305ed93b6d};

  : ${PKG_RW_VERSION:=1.0};
@@ -280,13 +284,10 @@ 

  : ${PKG_TCL_VERSION:=8.7a1};

  : ${PKG_TCL_URL:=http://kuiper.mirrorservice.org/sites/ftp.tcl.tk/pub/tcl/tcl8_7/tcl${PKG_TCL_VERSION}-src.tar.gz};

  : ${PKG_TCL_SUBDIR:=tcl${PKG_TCL_VERSION}/unix};

- : ${PKG_TDNF_DEPENDS:="curl libsolv"};

- : ${PKG_TDNF_SHA256SUM:=ccab50046405d8cd5d4fd5b7154686170311184e63d8bb541b2792e280fee97f};

- : ${PKG_TDNF_VERSION:=2.0.0-alpha.1};

- : ${PKG_TDNF_URL:=https://github.com/vmware/tdnf/archive/v${PKG_TDNF_VERSION}.tar.gz};

- : ${PKG_TDNF_CONFIGURE_ARGS_EXTRA:="--disable-static"};

- : ${PKG_TDNF_ENV_VARS_EXTRA:="LIBSOLV_LIBS=-lsolv:LIBSOLVEXT_LIBS=-lsolvext"};

- : ${PKG_TDNF_FORCE_AUTORECONF:=1};

+ : ${PKG_TDNF_DEPENDS:="libmetalink libressl curl gpgme libsolv"};

+ : ${PKG_TDNF_SHA256SUM:=1ca20b176939f32c212f8dec7bfacd99995f1cb16c7f176b90394378ea854b0b};

+ : ${PKG_TDNF_VERSION:=2.1.1};

+ : ${PKG_TDNF_URL:=https://github.com/vmware/tdnf/archive/v${PKG_TDNF_VERSION}/tdnf-${PKG_TDNF_VERSION}.tar.gz};

  : ${PKG_TDNF_IN_TREE:=1};

  : ${PKG_TDNF_SUBDIR:=tdnf-${PKG_TDNF_VERSION}};

  : ${PKG_TEXINFO_SHA256SUM:=988403c1542d15ad044600b909997ba3079b10e03224c61188117f3676b02caa};

@@ -1,130 +0,0 @@ 

- From f2fe2c648454bc5885366c93d4075ca5777ddbda Mon Sep 17 00:00:00 2001

- From: Neal Gompa <ngompa13@gmail.com>

- Date: Sun, 29 Apr 2018 15:52:26 -0400

- Subject: [PATCH] Fix TDNF build configuration to use pkgconfig data to find

-  dependencies

- 

- With the notable exception of identifying that we're using rpm.org rpm,

- all the configuration of how to use dependencies to compile and link

- TDNF and its libraries should come from pkgconfig. That way, TDNF

- will reliably build across more platforms.

- 

- In addition, trivial changes to drop -Werror and specify that -std=gnu99

- is required for the build are included so that it will compile properly

- on compilers that do not default to newer C standards and not make

- assumptions about what is coerced from a warning to an error by default.

- ---

-  client/Makefile.am  |  5 ++---

-  configure.ac        | 25 +++++++++++++------------

-  solv/Makefile.am    |  4 ++--

-  tdnf-cli-libs.pc.in |  2 +-

-  tdnf.pc.in          |  2 +-

-  5 files changed, 19 insertions(+), 19 deletions(-)

- 

- diff --git a/client/Makefile.am b/client/Makefile.am

- index 9bd3deb..6857c3f 100644

- --- a/client/Makefile.am

- +++ b/client/Makefile.am

- @@ -26,6 +26,5 @@ libtdnf_la_LIBADD =  \

-      @top_builddir@/solv/libtdnfsolv.la \

-      $(top_builddir)/common/libcommon.la \

-      @LIBCURL_LIBS@ \

- -    -lrpm  \

- -    -lsolv \

- -    -lsolvext

- +    @RPM_LIBS@ \

- +    @LIBSOLVEXT_LIBS@

- diff --git a/configure.ac b/configure.ac

- index d78bb8c..d5c4a51 100644

- --- a/configure.ac

- +++ b/configure.ac

- @@ -2,7 +2,7 @@ AC_INIT(tdnf, 2.0.0)

-  AC_MSG_NOTICE([tdnf configuration])

-  

-  AC_CANONICAL_SYSTEM

- -AM_INIT_AUTOMAKE([-Wall -Werror foreign])

- +AM_INIT_AUTOMAKE([-Wall foreign])

-  

-  AC_CONFIG_TESTDIR(tests)

-  

- @@ -15,29 +15,30 @@ AC_PROG_LIBTOOL

-  CPPFLAGS="$CPPFLAGS -D_REENTRANT -D_GNU_SOURCE -fPIC"

-  

-  AM_CPPFLAGS="$AM_CPPFLAGS -I${top_srcdir}/include"

- -AM_CFLAGS="$AM_CFLAGS -Wall -Werror -fno-strict-aliasing"

- +AM_CFLAGS="$AM_CFLAGS -std=gnu99 -Wall -fno-strict-aliasing"

-  

-  CPPFLAGS="$CPPFLAGS -D_REENTRANT -D_GNU_SOURCE -fPIC"

-  AC_SUBST(AM_CPPFLAGS)

-  AC_SUBST(AM_CFLAGS)

-  

-  #libsolv

- -echo "Looking for libsolv headers"

- -AC_CHECK_HEADERS(solv/pool.h)

- +PKG_CHECK_MODULES([LIBSOLV], [libsolv], [have_libsolv=yes], [have_libsolv=no])

- +PKG_CHECK_MODULES([LIBSOLVEXT], [libsolvext], [have_libsolvext=yes], [have_libsolvext=no])

- +AM_CONDITIONAL([LIBSOLV],  [test "$have_libsolv" = "yes"])

- +AM_CONDITIONAL([LIBSOLVEXT],  [test "$have_libsolvext" = "yes"])

-  

- -echo "Looking for libsolv libs"

- -AC_CHECK_LIB(solv, pool_create)

- -

- -#licurl

- +#libcurl

-  PKG_CHECK_MODULES([LIBCURL], [libcurl], [have_libcurl=yes], [have_libcurl=no])

-  AM_CONDITIONAL([LIBCURL],  [test "$have_libcurl" = "yes"])

-  

-  #rpm

- -echo "Looking for librpm headers"

- -AC_CHECK_HEADERS(rpm/rpmlib.h)

- +PKG_CHECK_MODULES([RPM], [rpm], [have_rpm=yes], [have_rpm=no])

- +AM_CONDITIONAL([RPM], [test "$have_rpm" = "yes"])

- +

- +# test to prove rpm.org rpm

- +echo "Looking for rpm.org librpm headers"

- +AC_CHECK_HEADERS(rpm/header.h)

-  

- -echo "Looking for librpm libs"

- -AC_CHECK_LIB(rpm, rpmtsCreate)

-  

-  #makefiles

-  AC_CONFIG_FILES([Makefile

- diff --git a/solv/Makefile.am b/solv/Makefile.am

- index 6625b3b..ef546a9 100644

- --- a/solv/Makefile.am

- +++ b/solv/Makefile.am

- @@ -10,5 +10,5 @@ libtdnfsolv_la_SOURCES = \

-      

-  libtdnfsolv_la_LDFLAGS =  \

-      -static \

- -    -lrpm  \

- -    -lsolv

- +    @RPM_LIBS@ \

- +    @LIBSOLV_LIBS@

- diff --git a/tdnf-cli-libs.pc.in b/tdnf-cli-libs.pc.in

- index 0912b68..4523e4d 100644

- --- a/tdnf-cli-libs.pc.in

- +++ b/tdnf-cli-libs.pc.in

- @@ -6,6 +6,6 @@ includedir=@includedir@/tdnf

-  Name: tdnf-cli-libs

-  Description: tdnf cli libs

-  Version: @VERSION@

- -Requires:

- +Requires: tdnf

-  Libs: -L${libdir} -ltdnfcli

-  Cflags: -I${includedir}

- diff --git a/tdnf.pc.in b/tdnf.pc.in

- index 811568d..4ad7a07 100644

- --- a/tdnf.pc.in

- +++ b/tdnf.pc.in

- @@ -6,6 +6,6 @@ includedir=@includedir@/tdnf

-  Name: tdnf

-  Description: tiny dandified yum

-  Version: @VERSION@

- -Requires:libsolv rpm

- +Requires: libsolv libsolvext rpm libcurl

-  Libs: -L${libdir} -ltdnf

-  Cflags: -I${includedir}

- -- 

- 2.17.0

- 

@@ -0,0 +1,50 @@ 

+ From 047b306ec03d4d83c66653f75de448e697cb8c0c Mon Sep 17 00:00:00 2001

+ From: Neal Gompa <ngompa13@gmail.com>

+ Date: Fri, 29 May 2020 19:17:58 -0400

+ Subject: [PATCH] CMakeLists: Disable building Python stuff for now

+ 

+ We do not need the Python bindings at the moment...

+ 

+ Signed-off-by: Neal Gompa <ngompa13@gmail.com>

+ ---

+  CMakeLists.txt | 2 --

+  1 file changed, 2 deletions(-)

+ 

+ diff --git a/CMakeLists.txt b/CMakeLists.txt

+ index 25ee54e..b126bb0 100644

+ --- a/CMakeLists.txt

+ +++ b/CMakeLists.txt

+ @@ -66,8 +66,6 @@ set(LIB_TDNF_CLI tdnfcli)

+  add_subdirectory("${PROJECT_SOURCE_DIR}/common")

+  add_subdirectory("${PROJECT_SOURCE_DIR}/client")

+  add_subdirectory("${PROJECT_SOURCE_DIR}/plugins")

+ -add_subdirectory("${PROJECT_SOURCE_DIR}/python")

+  add_subdirectory("${PROJECT_SOURCE_DIR}/resources")

+  add_subdirectory("${PROJECT_SOURCE_DIR}/solv")

+  add_subdirectory("${PROJECT_SOURCE_DIR}/tools")

+ -add_subdirectory("${PROJECT_SOURCE_DIR}/pytests")

+ -- 

+ 2.26.1

+ 

+ --- tdnf-2.1.1/tools/cli/lib/CMakeLists.txt.orig	2020-05-29 18:28:42.000000000 +0100

+ +++ tdnf-2.1.1/tools/cli/lib/CMakeLists.txt	2020-05-30 21:15:15.525966612 +0100

+ @@ -6,6 +6,8 @@

+  # of the License are located in the COPYING file of this distribution.

+  #

+  

+ +include_directories(${CMAKE_SOURCE_DIR}/include)

+ +

+  # configure pkgconfig file

+  configure_file(

+      tdnfcli.pc.in

+ @@ -26,6 +28,10 @@

+      updateinfocmd.c

+  )

+  

+ +target_link_libraries(${LIB_TDNF_CLI}

+ +    ${LIB_TDNF}

+ +    ${LIB_TDNF_COMMON}

+ +)

+  

+  set_target_properties(${LIB_TDNF_CLI} PROPERTIES

+      VERSION ${PROJECT_VERSION}

file added
+31
@@ -0,0 +1,31 @@ 

+ #

+ # set +o errexit -o noglob -o nounset is assumed.

+ #

+ 

+ pkg_tdnf_configure() {

+ 	local _rc=0;

+ 	rtl_export_vars	\

+ 		PKG_CONFIG "${PKG_PKG_CONFIG:-}"					\

+ 		PKG_CONFIG_LIBDIR "${PKG_PKG_CONFIG_LIBDIR:-}";

+ 	if ! rtl_fileop rm config.cache							\

+ 	|| ! env CFLAGS="-L${PKG_PREFIX}/lib --sysroot=${PKG_PREFIX}" PREFIX=""		\

+ 		cmake	-DCMAKE_AR="${PREFIX}/bin/${PKG_AR}"				\

+ 			-DCMAKE_C_COMPILER="${PREFIX}/bin/${PKG_CC}"			\

+ 			-DCMAKE_CXX_COMPILER="${PREFIX}/bin/${PKG_TARGET}-g++"		\

+ 			-DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE="ONLY"			\

+ 			-DCMAKE_FIND_ROOT_PATH_MODE_LIBRARY="ONLY"			\

+ 			-DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM="NEVER"			\

+ 			-DCMAKE_FIND_ROOT_PATH="${PKG_PREFIX}"				\

+ 			-DCMAKE_INSTALL_PREFIX=""					\

+ 			-DCMAKE_RANLIB="${PREFIX}/bin/${PKG_RANLIB}"			\

+ 			-DOPENSSL_LIBRARY="${PKG_PREFIX}/lib/libcrypto.so"		\

+ 			"../tdnf-${PKG_VERSION}"; then

+ 		_rc=1;

+ 	fi;

+ 	rtl_export_vars	-u \

+ 		PKG_CONFIG "${PKG_PKG_CONFIG:-}"					\

+ 		PKG_CONFIG_LIBDIR "${PKG_PKG_CONFIG_LIBDIR:-}";

+ 	return "${_rc}";

+ };

+ 

+ # vim:filetype=sh textwidth=0

This pull request rebases TDNF from the 2.0.0 alpha release to the 2.1.1 final release. This adds libmetalink as a new package dependency for TDNF.

@lalbornoz I'm not sure if this works, as this is the first time I'm doing a CMake thing. Please let me know if it's broken and how so I can fix it. Otherwise if it's gravy, merge away! :100:

2 new commits added

  • groups/231.native_packages_etc.group: tdnf: Update to v2.1.1
  • groups/231.native_packages_etc.group: Add libmetalink
3 years ago

2 new commits added

  • groups/231.native_packages_etc.group: tdnf: Update to v2.1.1
  • groups/231.native_packages_etc.group: Add libmetalink
3 years ago

rebased onto eb86d86

3 years ago

rebased onto 7e5d542717133d549018db5ee858bba26637e54b

3 years ago

Thanks! I've pushed the addenda to your commits into the pr3 branch. Could you pull & sign off?

rebased onto eb86d86

3 years ago

rebased onto ddaa391

3 years ago

1 new commit added

  • groups/231.native_packages_etc.group: rpm: Set prefix to /usr
3 years ago

4 new commits added

  • groups/231.native_packages_etc.group: rpm: Set prefix to /usr
  • patches/tdnf-2.1.1_pre.local.patch: fix libtdnfcli library dependencies.
  • groups/231.native_packages_etc.group: tdnf: Update to v2.1.1
  • groups/231.native_packages_etc.group: Add libmetalink
3 years ago

Pull-Request has been merged by lalbornoz

3 years ago