Message ID | 20230218101426.630874-1-bagasdotme@gmail.com |
---|---|
State | Rejected |
Headers | show |
Series | Revert "package/gnupg2: bump to version 2.4.0" | expand |
Hello Bagas, Let's add Julien Olivain in Cc, as he did the bump of gnupg2 to version 2.4.0. Julien: could you have a look at the below issue, which is affecting gnupg2 in the autobuilders? Thanks a lot! Thomas On Sat, 18 Feb 2023 17:14:26 +0700 Bagas Sanjaya <bagasdotme@gmail.com> wrote: > Bumping the package version to 2.4.0, it fails to cross-compile with > unsafe cross-compile paths (for example recent build log at [1]): > > make[4]: Entering directory '/home/thomas/autobuild/instance-3/output-1/build/gnupg2-2.4.0/common' > /home/thomas/autobuild/instance-3/output-1/host/bin/aarch64-buildroot-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I.. -DLOCALEDIR=\"/usr/share/locale\" -DGNUPG_BINDIR="\"/usr/bin\"" -DGNUPG_LIBEXECDIR="\"/usr/libexec\"" -DGNUPG_LIBDIR="\"/usr/lib/gnupg\"" -DGNUPG_DATADIR="\"/usr/share/gnupg\"" -DGNUPG_SYSCONFDIR="\"/etc/gnupg\"" -DGNUPG_LOCALSTATEDIR="\"/var\"" -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-3/output-1/host/aarch64-buildroot-linux-gnu/sysroot/usr/include/libusb-1.0 -I/home/thomas/autobuild/instance-3/output-1/host/aarch64-buildroot-linux-gnu/sysroot/include -I/home/thomas/autobuild/instance-3/output-1/host/aarch64-buildroot-linux-gnu/sysroot/include -I/usr/include -I/usr/include -I/usr/include -Wall -Wno-format-zero-length -Wno-pointer-sign -Wpointer-arith -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O3 -g1 -D_FORTIFY_SOURCE=2 -c -o t-stringhelp.o t-stringhelp.c > /home/thomas/autobuild/instance-3/output-1/host/bin/aarch64-buildroot-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I.. -DLOCALEDIR=\"/usr/share/locale\" -DGNUPG_BINDIR="\"/usr/bin\"" -DGNUPG_LIBEXECDIR="\"/usr/libexec\"" -DGNUPG_LIBDIR="\"/usr/lib/gnupg\"" -DGNUPG_DATADIR="\"/usr/share/gnupg\"" -DGNUPG_SYSCONFDIR="\"/etc/gnupg\"" -DGNUPG_LOCALSTATEDIR="\"/var\"" -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-3/output-1/host/aarch64-buildroot-linux-gnu/sysroot/usr/include/libusb-1.0 -I/home/thomas/autobuild/instance-3/output-1/host/aarch64-buildroot-linux-gnu/sysroot/include -I/home/thomas/autobuild/instance-3/output-1/host/aarch64-buildroot-linux-gnu/sysroot/include -I/usr/include -I/usr/include -I/usr/include -I/usr/include -DWITHOUT_NPTH=1 -Wall -Wno-format-zero-length -Wno-pointer-sign -Wpointer-arith -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O3 -g1 -D_FORTIFY_SOURCE=2 -c -o libcommon_a-i18n.o `test -f 'i 18 > n.c' || echo './'`i18n.c > /home/thomas/autobuild/instance-3/output-1/host/bin/aarch64-buildroot-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I.. -DLOCALEDIR=\"/usr/share/locale\" -DGNUPG_BINDIR="\"/usr/bin\"" -DGNUPG_LIBEXECDIR="\"/usr/libexec\"" -DGNUPG_LIBDIR="\"/usr/lib/gnupg\"" -DGNUPG_DATADIR="\"/usr/share/gnupg\"" -DGNUPG_SYSCONFDIR="\"/etc/gnupg\"" -DGNUPG_LOCALSTATEDIR="\"/var\"" -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-3/output-1/host/aarch64-buildroot-linux-gnu/sysroot/usr/include/libusb-1.0 -I/home/thomas/autobuild/instance-3/output-1/host/aarch64-buildroot-linux-gnu/sysroot/include -I/home/thomas/autobuild/instance-3/output-1/host/aarch64-buildroot-linux-gnu/sysroot/include -I/usr/include -I/usr/include -I/usr/include -I/usr/include -DWITHOUT_NPTH=1 -Wall -Wno-format-zero-length -Wno-pointer-sign -Wpointer-arith -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O3 -g1 -D_FORTIFY_SOURCE=2 -c -o libcommon_a-mapstrings.o `test - > f 'mapstrings.c' || echo './'`mapstrings.c > /home/thomas/autobuild/instance-3/output-1/host/bin/aarch64-buildroot-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I.. -DLOCALEDIR=\"/usr/share/locale\" -DGNUPG_BINDIR="\"/usr/bin\"" -DGNUPG_LIBEXECDIR="\"/usr/libexec\"" -DGNUPG_LIBDIR="\"/usr/lib/gnupg\"" -DGNUPG_DATADIR="\"/usr/share/gnupg\"" -DGNUPG_SYSCONFDIR="\"/etc/gnupg\"" -DGNUPG_LOCALSTATEDIR="\"/var\"" -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-3/output-1/host/aarch64-buildroot-linux-gnu/sysroot/usr/include/libusb-1.0 -I/home/thomas/autobuild/instance-3/output-1/host/aarch64-buildroot-linux-gnu/sysroot/include -I/home/thomas/autobuild/instance-3/output-1/host/aarch64-buildroot-linux-gnu/sysroot/include -I/usr/include -I/usr/include -I/usr/include -I/usr/include -DWITHOUT_NPTH=1 -Wall -Wno-format-zero-length -Wno-pointer-sign -Wpointer-arith -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O3 -g1 -D_FORTIFY_SOURCE=2 -c -o libcommon_a-stringhelp.o `test - > f 'stringhelp.c' || echo './'`stringhelp.c > aarch64-buildroot-linux-gnu-gcc: ERROR: unsafe header/library path used in cross-compilation: '-I/usr/include' > make[4]: *** [Makefile:1283: t-stringhelp.o] Error 1 > > Revert the bump for now until the issue can be fixed upstream. > > [1]: http://autobuild.buildroot.net/results/5bf00af86da6e41d1a48abc7304bf339908a0150/build-end.log > > Signed-off-by: Bagas Sanjaya <bagasdotme@gmail.com> > --- > package/gnupg2/0001-ks_ldap_free_state.patch | 21 ++++++++++++++++++++ > package/gnupg2/gnupg2.hash | 10 +++++----- > package/gnupg2/gnupg2.mk | 2 +- > 3 files changed, 27 insertions(+), 6 deletions(-) > create mode 100644 package/gnupg2/0001-ks_ldap_free_state.patch > > diff --git a/package/gnupg2/0001-ks_ldap_free_state.patch b/package/gnupg2/0001-ks_ldap_free_state.patch > new file mode 100644 > index 0000000000..fa55d27c04 > --- /dev/null > +++ b/package/gnupg2/0001-ks_ldap_free_state.patch > @@ -0,0 +1,21 @@ > + > +Fix undefined reference to `ks_ldap_free_state' if OpenLDAP is not > +installed > + > +Backported from: 7011286ce6e1fb56c2989fdafbd11b931c489faa > + > +Signed-off-by: Michael Fischer <mf@go-sys.de> > + > +--- a/dirmngr/server.c > ++++ b/dirmngr/server.c > +@@ -3137,8 +3137,10 @@ start_command_handler (assuan_fd_t fd, unsigned int session_id) > + ctrl->refcount); > + else > + { > ++#if USE_LDAP > + ks_ldap_free_state (ctrl->ks_get_state); > + ctrl->ks_get_state = NULL; > ++#endif > + release_ctrl_ocsp_certs (ctrl); > + xfree (ctrl->server_local); > + dirmngr_deinit_default_ctrl (ctrl); > diff --git a/package/gnupg2/gnupg2.hash b/package/gnupg2/gnupg2.hash > index c642862fe2..f9c071ad45 100644 > --- a/package/gnupg2/gnupg2.hash > +++ b/package/gnupg2/gnupg2.hash > @@ -1,7 +1,7 @@ > -# From https://lists.gnupg.org/pipermail/gnupg-announce/2022q4/000477.html > -sha1 63dde155a8df0d5e1987efa5fc17438beca83ac1 gnupg-2.4.0.tar.bz2 > +# From https://lists.gnupg.org/pipermail/gnupg-announce/2022q4/000476.html > +sha1 1f31b7b4c9c9adad97f94ea3acf1aa64c0424bcc gnupg-2.3.8.tar.bz2 > # Calculated based on the hash above and signature > -# https://gnupg.org/ftp/gcrypt/gnupg/gnupg-2.4.0.tar.bz2.sig > -# using key 6DAA6E64A76D2840571B4902528897B826403ADA > -sha256 1d79158dd01d992431dd2e3facb89fdac97127f89784ea2cb610c600fb0c1483 gnupg-2.4.0.tar.bz2 > +# https://gnupg.org/ftp/gcrypt/gnupg/gnupg-2.3.8.tar.bz2.sig > +# using key 6DAA6E64A76D2840571B4902528897B826403ADA and AC8E115BF73E2D8D47FA9908E98E9B2D19C6C8BD > +sha256 540b7a40e57da261fb10ef521a282e0021532a80fd023e75fb71757e8a4969ed gnupg-2.3.8.tar.bz2 > sha256 bc2d6664f6276fa0a72d57633b3ae68dc7dcb677b71018bf08c8e93e509f1357 COPYING > diff --git a/package/gnupg2/gnupg2.mk b/package/gnupg2/gnupg2.mk > index 5935ce6939..9dc29ca99e 100644 > --- a/package/gnupg2/gnupg2.mk > +++ b/package/gnupg2/gnupg2.mk > @@ -4,7 +4,7 @@ > # > ################################################################################ > > -GNUPG2_VERSION = 2.4.0 > +GNUPG2_VERSION = 2.3.8 > GNUPG2_SOURCE = gnupg-$(GNUPG2_VERSION).tar.bz2 > GNUPG2_SITE = https://gnupg.org/ftp/gcrypt/gnupg > GNUPG2_LICENSE = GPL-3.0+ > > base-commit: d00e437922fb1b611f35c3138b9fbf7bcff62757
Hi Thomas, Bagas, All, On 18/02/2023 11:39, Thomas Petazzoni wrote: > Hello Bagas, > > Let's add Julien Olivain in Cc, as he did the bump of gnupg2 to version > 2.4.0. > > Julien: could you have a look at the below issue, which is affecting > gnupg2 in the autobuilders? I indeed started to receive some autobuild failures. Unfortunately, I cannot reproduce on my system for now: on my side, the build complete successfully. I tried with _and_ without having a /usr/bin/gpgrt-config on host, which I was suspecting to bring some host config. In my first proposal of gnupg2 version 2.4.0 bump [1], I initially proposed to add Buildroot staging bin dir in PATH, to make sure we won't have such host/br-staging confusion: GNUPG2_CONF_ENV = PATH=$(STAGING_DIR)/usr/bin:$(BR_PATH) Bagas, could you try on your side if this solve the issue? [1] https://patchwork.ozlabs.org/project/buildroot/patch/20230103193649.7488-5-ju.o@free.fr/ Best regards, Julien.
Hello Julien, On Sat, 18 Feb 2023 12:13:16 +0100 Julien Olivain <ju.o@free.fr> wrote: > I indeed started to receive some autobuild failures. > Unfortunately, I cannot reproduce on my system for now: > on my side, the build complete successfully. > > I tried with _and_ without having a /usr/bin/gpgrt-config on host, > which I was suspecting to bring some host config. > > In my first proposal of gnupg2 version 2.4.0 bump [1], I initially > proposed > to add Buildroot staging bin dir in PATH, to make sure we won't have > such > host/br-staging confusion: > > GNUPG2_CONF_ENV = PATH=$(STAGING_DIR)/usr/bin:$(BR_PATH) This is a really bad idea, and can potentially break. Indeed, STAGING_DIR/usr/bin contains lots of programs that are compiled for the target. So if you do that, the build process on your build machine might try to invoke executables that are compiled for the target. If the issue comes from a <foo>-config script, then generally, two things are needed: - Make sure the <foo>-config script returns correct values for cross-compilation. If not, use <pkg>_CONFIG_SCRIPTS in the package installing this <foo>-config script - Make sure the package calling the <foo>-config script calls the right one. Most autotools-based projects provide some sort of cache variable that allows to tell the configure script that <foo>-config in $(STAGING_DIR)/usr/bin/<foo>-config should be used Best regards, Thomas Petazzoni
diff --git a/package/gnupg2/0001-ks_ldap_free_state.patch b/package/gnupg2/0001-ks_ldap_free_state.patch new file mode 100644 index 0000000000..fa55d27c04 --- /dev/null +++ b/package/gnupg2/0001-ks_ldap_free_state.patch @@ -0,0 +1,21 @@ + +Fix undefined reference to `ks_ldap_free_state' if OpenLDAP is not +installed + +Backported from: 7011286ce6e1fb56c2989fdafbd11b931c489faa + +Signed-off-by: Michael Fischer <mf@go-sys.de> + +--- a/dirmngr/server.c ++++ b/dirmngr/server.c +@@ -3137,8 +3137,10 @@ start_command_handler (assuan_fd_t fd, unsigned int session_id) + ctrl->refcount); + else + { ++#if USE_LDAP + ks_ldap_free_state (ctrl->ks_get_state); + ctrl->ks_get_state = NULL; ++#endif + release_ctrl_ocsp_certs (ctrl); + xfree (ctrl->server_local); + dirmngr_deinit_default_ctrl (ctrl); diff --git a/package/gnupg2/gnupg2.hash b/package/gnupg2/gnupg2.hash index c642862fe2..f9c071ad45 100644 --- a/package/gnupg2/gnupg2.hash +++ b/package/gnupg2/gnupg2.hash @@ -1,7 +1,7 @@ -# From https://lists.gnupg.org/pipermail/gnupg-announce/2022q4/000477.html -sha1 63dde155a8df0d5e1987efa5fc17438beca83ac1 gnupg-2.4.0.tar.bz2 +# From https://lists.gnupg.org/pipermail/gnupg-announce/2022q4/000476.html +sha1 1f31b7b4c9c9adad97f94ea3acf1aa64c0424bcc gnupg-2.3.8.tar.bz2 # Calculated based on the hash above and signature -# https://gnupg.org/ftp/gcrypt/gnupg/gnupg-2.4.0.tar.bz2.sig -# using key 6DAA6E64A76D2840571B4902528897B826403ADA -sha256 1d79158dd01d992431dd2e3facb89fdac97127f89784ea2cb610c600fb0c1483 gnupg-2.4.0.tar.bz2 +# https://gnupg.org/ftp/gcrypt/gnupg/gnupg-2.3.8.tar.bz2.sig +# using key 6DAA6E64A76D2840571B4902528897B826403ADA and AC8E115BF73E2D8D47FA9908E98E9B2D19C6C8BD +sha256 540b7a40e57da261fb10ef521a282e0021532a80fd023e75fb71757e8a4969ed gnupg-2.3.8.tar.bz2 sha256 bc2d6664f6276fa0a72d57633b3ae68dc7dcb677b71018bf08c8e93e509f1357 COPYING diff --git a/package/gnupg2/gnupg2.mk b/package/gnupg2/gnupg2.mk index 5935ce6939..9dc29ca99e 100644 --- a/package/gnupg2/gnupg2.mk +++ b/package/gnupg2/gnupg2.mk @@ -4,7 +4,7 @@ # ################################################################################ -GNUPG2_VERSION = 2.4.0 +GNUPG2_VERSION = 2.3.8 GNUPG2_SOURCE = gnupg-$(GNUPG2_VERSION).tar.bz2 GNUPG2_SITE = https://gnupg.org/ftp/gcrypt/gnupg GNUPG2_LICENSE = GPL-3.0+
Bumping the package version to 2.4.0, it fails to cross-compile with unsafe cross-compile paths (for example recent build log at [1]): make[4]: Entering directory '/home/thomas/autobuild/instance-3/output-1/build/gnupg2-2.4.0/common' /home/thomas/autobuild/instance-3/output-1/host/bin/aarch64-buildroot-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I.. -DLOCALEDIR=\"/usr/share/locale\" -DGNUPG_BINDIR="\"/usr/bin\"" -DGNUPG_LIBEXECDIR="\"/usr/libexec\"" -DGNUPG_LIBDIR="\"/usr/lib/gnupg\"" -DGNUPG_DATADIR="\"/usr/share/gnupg\"" -DGNUPG_SYSCONFDIR="\"/etc/gnupg\"" -DGNUPG_LOCALSTATEDIR="\"/var\"" -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-3/output-1/host/aarch64-buildroot-linux-gnu/sysroot/usr/include/libusb-1.0 -I/home/thomas/autobuild/instance-3/output-1/host/aarch64-buildroot-linux-gnu/sysroot/include -I/home/thomas/autobuild/instance-3/output-1/host/aarch64-buildroot-linux-gnu/sysroot/include -I/usr/include -I/usr/include -I/usr/include -Wall -Wno-format-zero-length -Wno-pointer-sign -Wpointer-arith -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O3 -g1 -D_FORTIFY_SOURCE=2 -c -o t-stringhelp.o t-stringhelp.c /home/thomas/autobuild/instance-3/output-1/host/bin/aarch64-buildroot-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I.. -DLOCALEDIR=\"/usr/share/locale\" -DGNUPG_BINDIR="\"/usr/bin\"" -DGNUPG_LIBEXECDIR="\"/usr/libexec\"" -DGNUPG_LIBDIR="\"/usr/lib/gnupg\"" -DGNUPG_DATADIR="\"/usr/share/gnupg\"" -DGNUPG_SYSCONFDIR="\"/etc/gnupg\"" -DGNUPG_LOCALSTATEDIR="\"/var\"" -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-3/output-1/host/aarch64-buildroot-linux-gnu/sysroot/usr/include/libusb-1.0 -I/home/thomas/autobuild/instance-3/output-1/host/aarch64-buildroot-linux-gnu/sysroot/include -I/home/thomas/autobuild/instance-3/output-1/host/aarch64-buildroot-linux-gnu/sysroot/include -I/usr/include -I/usr/include -I/usr/include -I/usr/include -DWITHOUT_NPTH=1 -Wall -Wno-format-zero-length -Wno-pointer-sign -Wpointer-arith -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O3 -g1 -D_FORTIFY_SOURCE=2 -c -o libcommon_a-i18n.o `test -f 'i18 n.c' || echo './'`i18n.c /home/thomas/autobuild/instance-3/output-1/host/bin/aarch64-buildroot-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I.. -DLOCALEDIR=\"/usr/share/locale\" -DGNUPG_BINDIR="\"/usr/bin\"" -DGNUPG_LIBEXECDIR="\"/usr/libexec\"" -DGNUPG_LIBDIR="\"/usr/lib/gnupg\"" -DGNUPG_DATADIR="\"/usr/share/gnupg\"" -DGNUPG_SYSCONFDIR="\"/etc/gnupg\"" -DGNUPG_LOCALSTATEDIR="\"/var\"" -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-3/output-1/host/aarch64-buildroot-linux-gnu/sysroot/usr/include/libusb-1.0 -I/home/thomas/autobuild/instance-3/output-1/host/aarch64-buildroot-linux-gnu/sysroot/include -I/home/thomas/autobuild/instance-3/output-1/host/aarch64-buildroot-linux-gnu/sysroot/include -I/usr/include -I/usr/include -I/usr/include -I/usr/include -DWITHOUT_NPTH=1 -Wall -Wno-format-zero-length -Wno-pointer-sign -Wpointer-arith -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O3 -g1 -D_FORTIFY_SOURCE=2 -c -o libcommon_a-mapstrings.o `test - f 'mapstrings.c' || echo './'`mapstrings.c /home/thomas/autobuild/instance-3/output-1/host/bin/aarch64-buildroot-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I.. -DLOCALEDIR=\"/usr/share/locale\" -DGNUPG_BINDIR="\"/usr/bin\"" -DGNUPG_LIBEXECDIR="\"/usr/libexec\"" -DGNUPG_LIBDIR="\"/usr/lib/gnupg\"" -DGNUPG_DATADIR="\"/usr/share/gnupg\"" -DGNUPG_SYSCONFDIR="\"/etc/gnupg\"" -DGNUPG_LOCALSTATEDIR="\"/var\"" -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-3/output-1/host/aarch64-buildroot-linux-gnu/sysroot/usr/include/libusb-1.0 -I/home/thomas/autobuild/instance-3/output-1/host/aarch64-buildroot-linux-gnu/sysroot/include -I/home/thomas/autobuild/instance-3/output-1/host/aarch64-buildroot-linux-gnu/sysroot/include -I/usr/include -I/usr/include -I/usr/include -I/usr/include -DWITHOUT_NPTH=1 -Wall -Wno-format-zero-length -Wno-pointer-sign -Wpointer-arith -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O3 -g1 -D_FORTIFY_SOURCE=2 -c -o libcommon_a-stringhelp.o `test - f 'stringhelp.c' || echo './'`stringhelp.c aarch64-buildroot-linux-gnu-gcc: ERROR: unsafe header/library path used in cross-compilation: '-I/usr/include' make[4]: *** [Makefile:1283: t-stringhelp.o] Error 1 Revert the bump for now until the issue can be fixed upstream. [1]: http://autobuild.buildroot.net/results/5bf00af86da6e41d1a48abc7304bf339908a0150/build-end.log Signed-off-by: Bagas Sanjaya <bagasdotme@gmail.com> --- package/gnupg2/0001-ks_ldap_free_state.patch | 21 ++++++++++++++++++++ package/gnupg2/gnupg2.hash | 10 +++++----- package/gnupg2/gnupg2.mk | 2 +- 3 files changed, 27 insertions(+), 6 deletions(-) create mode 100644 package/gnupg2/0001-ks_ldap_free_state.patch base-commit: d00e437922fb1b611f35c3138b9fbf7bcff62757