Control: tags -1 patch On 2024-01-29 10:23, Emanuele Rocca wrote: > Upstream proposed two patches though, the one I tried is: > > libatomic_la_LIBADD += $(addsuffix _8_2_.lo,$(SIZEOBJS)) > +libatomic_la_LIBADD += tas_1_2_.lo
The problem was not the patch, but the fact that it did not include an updated Makefile.in. I updated it with the following command from within src/libatomic: AUTOM4TE=/usr/bin/autom4te2.69 autoreconf And added both Makefile.am and Makefile.in to the patch, see attached debdiff. With these changes, libat_test_and_set_1_i2 is not anymore listed among the undefined symbols in the output of objdump -T, and systemd builds fine. I haven't tried to re-enable ada and gccgo, but they should hopefully build again now too.
diff -Nru gcc-14-14-20240127/debian/changelog gcc-14-14-20240127/debian/changelog --- gcc-14-14-20240127/debian/changelog 2024-01-27 09:51:04.000000000 +0100 +++ gcc-14-14-20240127/debian/changelog 2024-01-29 19:55:54.000000000 +0100 @@ -1,3 +1,9 @@ +gcc-14 (14-20240127-1.1) unstable; urgency=medium + + * Add upstream patch libatomic-armel.diff. Closes: #1061370. + + -- Emanuele Rocca <e...@debian.org> Mon, 29 Jan 2024 19:55:54 +0100 + gcc-14 (14-20240127-1) unstable; urgency=medium * Snapshot, taken from the trunk 20240127. diff -Nru gcc-14-14-20240127/debian/patches/libatomic-armel.diff gcc-14-14-20240127/debian/patches/libatomic-armel.diff --- gcc-14-14-20240127/debian/patches/libatomic-armel.diff 1970-01-01 01:00:00.000000000 +0100 +++ gcc-14-14-20240127/debian/patches/libatomic-armel.diff 2024-01-29 19:55:54.000000000 +0100 @@ -0,0 +1,209 @@ +Index: gcc-14-14-20240127/src/libatomic/Makefile.am +=================================================================== +--- gcc-14-14-20240127.orig/src/libatomic/Makefile.am ++++ gcc-14-14-20240127/src/libatomic/Makefile.am +@@ -139,6 +139,7 @@ if ARCH_ARM_LINUX + IFUNC_OPTIONS = -march=armv7-a+fp -DHAVE_KERNEL64 + libatomic_la_LIBADD += $(foreach s,$(SIZES),$(addsuffix _$(s)_1_.lo,$(SIZEOBJS))) + libatomic_la_LIBADD += $(addsuffix _8_2_.lo,$(SIZEOBJS)) ++libatomic_la_LIBADD += tas_1_2_.lo + endif + if ARCH_I386 + IFUNC_OPTIONS = -march=i586 +Index: gcc-14-14-20240127/src/libatomic/Makefile.in +=================================================================== +--- gcc-14-14-20240127.orig/src/libatomic/Makefile.in ++++ gcc-14-14-20240127/src/libatomic/Makefile.in +@@ -1,7 +1,7 @@ +-# Makefile.in generated by automake 1.15.1 from Makefile.am. ++# Makefile.in generated by automake 1.16.5 from Makefile.am. + # @configure_input@ + +-# Copyright (C) 1994-2017 Free Software Foundation, Inc. ++# Copyright (C) 1994-2021 Free Software Foundation, Inc. + + # This Makefile.in is free software; the Free Software Foundation + # gives unlimited permission to copy and/or distribute it, +@@ -95,7 +95,8 @@ target_triplet = @target@ + @ARCH_ARM_LINUX_TRUE@@HAVE_IFUNC_TRUE@ s,$(SIZES),$(addsuffix \ + @ARCH_ARM_LINUX_TRUE@@HAVE_IFUNC_TRUE@ _$(s)_1_.lo,$(SIZEOBJS))) \ + @ARCH_ARM_LINUX_TRUE@@HAVE_IFUNC_TRUE@ $(addsuffix \ +-@ARCH_ARM_LINUX_TRUE@@HAVE_IFUNC_TRUE@ _8_2_.lo,$(SIZEOBJS)) ++@ARCH_ARM_LINUX_TRUE@@HAVE_IFUNC_TRUE@ _8_2_.lo,$(SIZEOBJS)) \ ++@ARCH_ARM_LINUX_TRUE@@HAVE_IFUNC_TRUE@ tas_1_2_.lo + @ARCH_I386_TRUE@@HAVE_IFUNC_TRUE@am__append_4 = $(addsuffix _8_1_.lo,$(SIZEOBJS)) + @ARCH_X86_64_TRUE@@HAVE_IFUNC_TRUE@am__append_5 = $(addsuffix _16_1_.lo,$(SIZEOBJS)) \ + @ARCH_X86_64_TRUE@@HAVE_IFUNC_TRUE@ $(addsuffix _16_2_.lo,$(SIZEOBJS)) +@@ -187,11 +188,16 @@ am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) + am__v_at_0 = @ + am__v_at_1 = + depcomp = $(SHELL) $(top_srcdir)/../depcomp +-am__depfiles_maybe = depfiles ++am__maybe_remake_depfiles = depfiles ++am__depfiles_remade = ./$(DEPDIR)/atomic_16.Plo ./$(DEPDIR)/fence.Plo \ ++ ./$(DEPDIR)/fenv.Plo ./$(DEPDIR)/flag.Plo ./$(DEPDIR)/gcas.Plo \ ++ ./$(DEPDIR)/gexch.Plo ./$(DEPDIR)/glfree.Plo \ ++ ./$(DEPDIR)/gload.Plo ./$(DEPDIR)/gstore.Plo \ ++ ./$(DEPDIR)/init.Plo ./$(DEPDIR)/lock.Plo + am__mv = mv -f + CPPASCOMPILE = $(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ + $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CCASFLAGS) $(CCASFLAGS) +-LTCPPASCOMPILE = $(LIBTOOL) $(AM_V_lt) $(AM_LIBTOOLFLAGS) \ ++LTCPPASCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=compile $(CCAS) $(DEFS) \ + $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ + $(AM_CCASFLAGS) $(CCASFLAGS) +@@ -240,8 +246,8 @@ am__recursive_targets = \ + $(am__extra_recursive_targets) + AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ + cscope +-am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) \ +- $(LISP)auto-config.h.in ++am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) \ ++ auto-config.h.in + # Read a list of newline-separated strings from the standard input, + # and print each of them once, without duplicates. Input order is + # *not* preserved. +@@ -258,9 +264,6 @@ am__define_uniq_tagged_files = \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | $(am__uniquify_input)` +-ETAGS = etags +-CTAGS = ctags +-CSCOPE = cscope + DIST_SUBDIRS = $(SUBDIRS) + ACLOCAL = @ACLOCAL@ + AMTAR = @AMTAR@ +@@ -278,6 +281,8 @@ CCDEPMODE = @CCDEPMODE@ + CFLAGS = @CFLAGS@ + CPP = @CPP@ + CPPFLAGS = @CPPFLAGS@ ++CSCOPE = @CSCOPE@ ++CTAGS = @CTAGS@ + CYGPATH_W = @CYGPATH_W@ + DEFS = @DEFS@ + DEPDIR = @DEPDIR@ +@@ -287,6 +292,7 @@ ECHO_C = @ECHO_C@ + ECHO_N = @ECHO_N@ + ECHO_T = @ECHO_T@ + EGREP = @EGREP@ ++ETAGS = @ETAGS@ + EXEEXT = @EXEEXT@ + FGREP = @FGREP@ + GREP = @GREP@ +@@ -490,8 +496,8 @@ Makefile: $(srcdir)/Makefile.in $(top_bu + echo ' $(SHELL) ./config.status'; \ + $(SHELL) ./config.status;; \ + *) \ +- echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \ +- cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \ ++ echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles)'; \ ++ cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles);; \ + esac; + $(top_srcdir)/../multilib.am $(am__empty): + +@@ -577,17 +583,23 @@ mostlyclean-compile: + distclean-compile: + -rm -f *.tab.c + +-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/atomic_16.Plo@am__quote@ +-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fence.Plo@am__quote@ +-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fenv.Plo@am__quote@ +-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/flag.Plo@am__quote@ +-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gcas.Plo@am__quote@ +-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gexch.Plo@am__quote@ +-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/glfree.Plo@am__quote@ +-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gload.Plo@am__quote@ +-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gstore.Plo@am__quote@ +-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/init.Plo@am__quote@ +-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lock.Plo@am__quote@ ++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/atomic_16.Plo@am__quote@ # am--include-marker ++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fence.Plo@am__quote@ # am--include-marker ++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fenv.Plo@am__quote@ # am--include-marker ++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/flag.Plo@am__quote@ # am--include-marker ++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gcas.Plo@am__quote@ # am--include-marker ++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gexch.Plo@am__quote@ # am--include-marker ++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/glfree.Plo@am__quote@ # am--include-marker ++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gload.Plo@am__quote@ # am--include-marker ++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gstore.Plo@am__quote@ # am--include-marker ++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/init.Plo@am__quote@ # am--include-marker ++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lock.Plo@am__quote@ # am--include-marker ++ ++$(am__depfiles_remade): ++ @$(MKDIR_P) $(@D) ++ @echo '# dummy' >$@-t && $(am__mv) $@-t $@ ++ ++am--depfiles: $(am__depfiles_remade) + + .S.o: + @am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CPPASCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@@ -791,7 +803,17 @@ clean-am: clean-generic clean-libtool cl + + distclean: distclean-recursive + -rm -f $(am__CONFIG_DISTCLEAN_FILES) +- -rm -rf ./$(DEPDIR) ++ -rm -f ./$(DEPDIR)/atomic_16.Plo ++ -rm -f ./$(DEPDIR)/fence.Plo ++ -rm -f ./$(DEPDIR)/fenv.Plo ++ -rm -f ./$(DEPDIR)/flag.Plo ++ -rm -f ./$(DEPDIR)/gcas.Plo ++ -rm -f ./$(DEPDIR)/gexch.Plo ++ -rm -f ./$(DEPDIR)/glfree.Plo ++ -rm -f ./$(DEPDIR)/gload.Plo ++ -rm -f ./$(DEPDIR)/gstore.Plo ++ -rm -f ./$(DEPDIR)/init.Plo ++ -rm -f ./$(DEPDIR)/lock.Plo + -rm -f Makefile + distclean-am: clean-am distclean-compile distclean-generic \ + distclean-hdr distclean-libtool distclean-local distclean-tags +@@ -839,7 +861,17 @@ installcheck-am: + maintainer-clean: maintainer-clean-recursive + -rm -f $(am__CONFIG_DISTCLEAN_FILES) + -rm -rf $(top_srcdir)/autom4te.cache +- -rm -rf ./$(DEPDIR) ++ -rm -f ./$(DEPDIR)/atomic_16.Plo ++ -rm -f ./$(DEPDIR)/fence.Plo ++ -rm -f ./$(DEPDIR)/fenv.Plo ++ -rm -f ./$(DEPDIR)/flag.Plo ++ -rm -f ./$(DEPDIR)/gcas.Plo ++ -rm -f ./$(DEPDIR)/gexch.Plo ++ -rm -f ./$(DEPDIR)/glfree.Plo ++ -rm -f ./$(DEPDIR)/gload.Plo ++ -rm -f ./$(DEPDIR)/gstore.Plo ++ -rm -f ./$(DEPDIR)/init.Plo ++ -rm -f ./$(DEPDIR)/lock.Plo + -rm -f Makefile + maintainer-clean-am: distclean-am maintainer-clean-generic \ + maintainer-clean-local +@@ -862,18 +894,19 @@ uninstall-am: uninstall-toolexeclibLTLIB + .MAKE: $(am__recursive_targets) all install-am install-strip + + .PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am all-local \ +- am--refresh check check-am clean clean-cscope clean-generic \ +- clean-libtool clean-local clean-noinstLTLIBRARIES \ +- clean-toolexeclibLTLIBRARIES cscope cscopelist-am ctags \ +- ctags-am distclean distclean-compile distclean-generic \ +- distclean-hdr distclean-libtool distclean-local distclean-tags \ +- dvi dvi-am html html-am info info-am install install-am \ +- install-data install-data-am install-dvi install-dvi-am \ +- install-exec install-exec-am install-exec-local install-html \ +- install-html-am install-info install-info-am install-man \ +- install-pdf install-pdf-am install-ps install-ps-am \ +- install-strip install-toolexeclibLTLIBRARIES installcheck \ +- installcheck-am installdirs installdirs-am maintainer-clean \ ++ am--depfiles am--refresh check check-am clean clean-cscope \ ++ clean-generic clean-libtool clean-local \ ++ clean-noinstLTLIBRARIES clean-toolexeclibLTLIBRARIES cscope \ ++ cscopelist-am ctags ctags-am distclean distclean-compile \ ++ distclean-generic distclean-hdr distclean-libtool \ ++ distclean-local distclean-tags dvi dvi-am html html-am info \ ++ info-am install install-am install-data install-data-am \ ++ install-dvi install-dvi-am install-exec install-exec-am \ ++ install-exec-local install-html install-html-am install-info \ ++ install-info-am install-man install-pdf install-pdf-am \ ++ install-ps install-ps-am install-strip \ ++ install-toolexeclibLTLIBRARIES installcheck installcheck-am \ ++ installdirs installdirs-am maintainer-clean \ + maintainer-clean-generic maintainer-clean-local mostlyclean \ + mostlyclean-compile mostlyclean-generic mostlyclean-libtool \ + mostlyclean-local pdf pdf-am ps ps-am tags tags-am uninstall \ diff -Nru gcc-14-14-20240127/debian/rules.patch gcc-14-14-20240127/debian/rules.patch --- gcc-14-14-20240127/debian/rules.patch 2024-01-26 12:31:20.000000000 +0100 +++ gcc-14-14-20240127/debian/rules.patch 2024-01-29 19:55:54.000000000 +0100 @@ -232,6 +232,7 @@ endif debian_patches += go-testsuite +debian_patches += libatomic-armel # don't remove, this is regularly overwritten, see PR sanitizer/63958. #debian_patches += libasan-sparc