diff -Nru glibc-2.32/debian/changelog glibc-2.32/debian/changelog --- glibc-2.32/debian/changelog 2020-12-16 12:30:09.000000000 +0000 +++ glibc-2.32/debian/changelog 2021-03-29 20:03:14.000000000 +0000 @@ -1,3 +1,12 @@ +glibc (2.32-0ubuntu3.2) groovy; urgency=medium + + * Make libc6 provide libc6-lse on arm64. + Libc6 is already compiled with -moutline-atomics thus the separate binary + package is dropped. (LP: #1912652) + * debian/control: Libc6 should Conflict and Replace libc6-lse + + -- Balint Reczey Mon, 29 Mar 2021 22:03:14 +0200 + glibc (2.32-0ubuntu3.1) groovy; urgency=medium * Drop check preventing using float128 which breaks new icc (LP: #1895358) diff -Nru glibc-2.32/debian/control glibc-2.32/debian/control --- glibc-2.32/debian/control 2020-12-16 12:30:09.000000000 +0000 +++ glibc-2.32/debian/control 2021-03-29 20:03:14.000000000 +0000 @@ -144,14 +144,15 @@ Depends: ${shlibs:Depends}, ${libgcc:Depends}, ${libcrypt:Depends}, ${libnss-nis:Depends}, ${libnss-nisplus:Depends} Recommends: libidn2-0 (>= 2.0.5~) Suggests: glibc-doc, debconf | debconf-2.0, locales [!hurd-i386] -Provides: libc6-sparcv9b [sparc sparc64], libc0.1-i686 [kfreebsd-i386], libc0.3-i686 [hurd-i386], libc6-i686 [i386], libc6-xen [i386], libc6-armel [armel], libc6-armhf [armhf] -Conflicts: libc0.1-i686 [kfreebsd-i386], libc6-i686 [i386] +Provides: libc6-sparcv9b [sparc sparc64], libc0.1-i686 [kfreebsd-i386], libc0.3-i686 [hurd-i386], libc6-i686 [i386], libc6-xen [i386], libc6-armel [armel], libc6-armhf [armhf], libc6-lse [arm64] +Conflicts: libc0.1-i686 [kfreebsd-i386], libc6-i686 [i386], libc6-lse [arm64] Breaks: nscd (<< 2.32), locales (<< 2.32), locales-all (<< 2.32), hurd (<< 1:0.9.git20170910-1), libtirpc1 (<< 0.2.3), r-cran-later (<< 0.7.5+dfsg-2), nocache (<< 1.1-1~), iraf-fitsutil (<< 2018.07.06-4), wcc (<< 0.0.2+dfsg-3), openssh-server (<< 1:8.2p1-4), macs (<< 2.2.7.1-3~), openarena (<< 0.8.8+dfsg-4~), ioquake3 (<< 1.36+u20200211.f2c61c1~dfsg-2~) Replaces: libc6-amd64 [amd64], libc6-i386 [i386], libc0.1-i686 [kfreebsd-i386], libc0.3-i686 [hurd-i386], libc6-i686 [i386], + libc6-lse [arm64], libc6-xen [i386], libc6-x32 [x32], libc0.1-i386 [kfreebsd-i386], @@ -220,14 +221,15 @@ Depends: ${shlibs:Depends}, ${libgcc:Depends}, ${libcrypt:Depends}, ${libnss-nis:Depends}, ${libnss-nisplus:Depends} Recommends: libidn2-0 (>= 2.0.5~) Suggests: glibc-doc, debconf | debconf-2.0, locales [!hurd-i386] -Provides: libc6-sparcv9b [sparc sparc64], libc0.1-i686 [kfreebsd-i386], libc0.3-i686 [hurd-i386], libc6-i686 [i386], libc6-xen [i386], libc6-armel [armel], libc6-armhf [armhf] -Conflicts: libc0.1-i686 [kfreebsd-i386], libc6-i686 [i386] +Provides: libc6-sparcv9b [sparc sparc64], libc0.1-i686 [kfreebsd-i386], libc0.3-i686 [hurd-i386], libc6-i686 [i386], libc6-xen [i386], libc6-armel [armel], libc6-armhf [armhf], libc6-lse [arm64] +Conflicts: libc0.1-i686 [kfreebsd-i386], libc6-i686 [i386], libc6-lse [arm64] Breaks: nscd (<< 2.32), locales (<< 2.32), locales-all (<< 2.32), hurd (<< 1:0.9.git20170910-1), libtirpc1 (<< 0.2.3), r-cran-later (<< 0.7.5+dfsg-2), nocache (<< 1.1-1~), iraf-fitsutil (<< 2018.07.06-4), wcc (<< 0.0.2+dfsg-3), openssh-server (<< 1:8.2p1-4), macs (<< 2.2.7.1-3~), openarena (<< 0.8.8+dfsg-4~), ioquake3 (<< 1.36+u20200211.f2c61c1~dfsg-2~) Replaces: libc6-amd64 [amd64], libc6-i386 [i386], libc0.1-i686 [kfreebsd-i386], libc0.3-i686 [hurd-i386], libc6-i686 [i386], + libc6-lse [arm64], libc6-xen [i386], libc6-x32 [x32], libc0.1-i386 [kfreebsd-i386], @@ -296,14 +298,15 @@ Depends: ${shlibs:Depends}, ${libgcc:Depends}, ${libcrypt:Depends}, ${libnss-nis:Depends}, ${libnss-nisplus:Depends} Recommends: libidn2-0 (>= 2.0.5~) Suggests: glibc-doc, debconf | debconf-2.0, locales [!hurd-i386] -Provides: libc6-sparcv9b [sparc sparc64], libc0.1-i686 [kfreebsd-i386], libc0.3-i686 [hurd-i386], libc6-i686 [i386], libc6-xen [i386], libc6-armel [armel], libc6-armhf [armhf] -Conflicts: libc0.1-i686 [kfreebsd-i386], libc6-i686 [i386] +Provides: libc6-sparcv9b [sparc sparc64], libc0.1-i686 [kfreebsd-i386], libc0.3-i686 [hurd-i386], libc6-i686 [i386], libc6-xen [i386], libc6-armel [armel], libc6-armhf [armhf], libc6-lse [arm64] +Conflicts: libc0.1-i686 [kfreebsd-i386], libc6-i686 [i386], libc6-lse [arm64] Breaks: nscd (<< 2.32), locales (<< 2.32), locales-all (<< 2.32), hurd (<< 1:0.9.git20170910-1), libtirpc1 (<< 0.2.3), r-cran-later (<< 0.7.5+dfsg-2), nocache (<< 1.1-1~), iraf-fitsutil (<< 2018.07.06-4), wcc (<< 0.0.2+dfsg-3), openssh-server (<< 1:8.2p1-4), macs (<< 2.2.7.1-3~), openarena (<< 0.8.8+dfsg-4~), ioquake3 (<< 1.36+u20200211.f2c61c1~dfsg-2~) Replaces: libc6-amd64 [amd64], libc6-i386 [i386], libc0.1-i686 [kfreebsd-i386], libc0.3-i686 [hurd-i386], libc6-i686 [i386], + libc6-lse [arm64], libc6-xen [i386], libc6-x32 [x32], libc0.1-i386 [kfreebsd-i386], @@ -372,14 +375,15 @@ Depends: ${shlibs:Depends}, ${libgcc:Depends}, ${libcrypt:Depends}, ${libnss-nis:Depends}, ${libnss-nisplus:Depends} Recommends: libidn2-0 (>= 2.0.5~) Suggests: glibc-doc, debconf | debconf-2.0, locales [!hurd-i386] -Provides: libc6-sparcv9b [sparc sparc64], libc0.1-i686 [kfreebsd-i386], libc0.3-i686 [hurd-i386], libc6-i686 [i386], libc6-xen [i386], libc6-armel [armel], libc6-armhf [armhf] -Conflicts: libc0.1-i686 [kfreebsd-i386], libc6-i686 [i386] +Provides: libc6-sparcv9b [sparc sparc64], libc0.1-i686 [kfreebsd-i386], libc0.3-i686 [hurd-i386], libc6-i686 [i386], libc6-xen [i386], libc6-armel [armel], libc6-armhf [armhf], libc6-lse [arm64] +Conflicts: libc0.1-i686 [kfreebsd-i386], libc6-i686 [i386], libc6-lse [arm64] Breaks: nscd (<< 2.32), locales (<< 2.32), locales-all (<< 2.32), hurd (<< 1:0.9.git20170910-1), libtirpc1 (<< 0.2.3), r-cran-later (<< 0.7.5+dfsg-2), nocache (<< 1.1-1~), iraf-fitsutil (<< 2018.07.06-4), wcc (<< 0.0.2+dfsg-3), openssh-server (<< 1:8.2p1-4), macs (<< 2.2.7.1-3~), openarena (<< 0.8.8+dfsg-4~), ioquake3 (<< 1.36+u20200211.f2c61c1~dfsg-2~) Replaces: libc6-amd64 [amd64], libc6-i386 [i386], libc0.1-i686 [kfreebsd-i386], libc0.3-i686 [hurd-i386], libc6-i686 [i386], + libc6-lse [arm64], libc6-xen [i386], libc6-x32 [x32], libc0.1-i386 [kfreebsd-i386], @@ -838,22 +842,6 @@ needs to be installed on Alpha EV67/68 and EV7 machines. If you install this on an older machine, it won't even be used. -Package: libc6-lse -Architecture: arm64 -Section: libs -Priority: optional -Multi-Arch: same -Depends: libc6 (= ${binary:Version}), ${misc:Depends} -Build-Profiles: -Description: GNU C Library: Shared Libraries - Contains the standard libraries that are used by nearly all programs on - the system. This package includes shared versions of the standard C library - and the standard math library, as well as many others. - . - This set of libraries is optimized to support Large System Extensions (LSE). - It only needs to be installed on ARM machine supporting LSE. If you install - this on an machine without LSE support, it won't be used. - Package: libc6-prof Architecture: amd64 arm64 armhf ppc64el riscv64 Section: libs diff -Nru glibc-2.32/debian/control.in/libc glibc-2.32/debian/control.in/libc --- glibc-2.32/debian/control.in/libc 2020-12-16 12:30:09.000000000 +0000 +++ glibc-2.32/debian/control.in/libc 2021-03-29 20:03:14.000000000 +0000 @@ -6,14 +6,15 @@ Depends: ${shlibs:Depends}, ${libgcc:Depends}, ${libcrypt:Depends}, ${libnss-nis:Depends}, ${libnss-nisplus:Depends} Recommends: libidn2-0 (>= 2.0.5~) Suggests: glibc-doc, debconf | debconf-2.0, locales [!hurd-i386] -Provides: libc6-sparcv9b [sparc sparc64], libc0.1-i686 [kfreebsd-i386], libc0.3-i686 [hurd-i386], libc6-i686 [i386], libc6-xen [i386], libc6-armel [armel], libc6-armhf [armhf] -Conflicts: libc0.1-i686 [kfreebsd-i386], libc6-i686 [i386] +Provides: libc6-sparcv9b [sparc sparc64], libc0.1-i686 [kfreebsd-i386], libc0.3-i686 [hurd-i386], libc6-i686 [i386], libc6-xen [i386], libc6-armel [armel], libc6-armhf [armhf], libc6-lse [arm64] +Conflicts: libc0.1-i686 [kfreebsd-i386], libc6-i686 [i386], libc6-lse [arm64] Breaks: nscd (<< @GLIBC_VERSION@), locales (<< @GLIBC_VERSION@), locales-all (<< @GLIBC_VERSION@), hurd (<< 1:0.9.git20170910-1), libtirpc1 (<< 0.2.3), r-cran-later (<< 0.7.5+dfsg-2), nocache (<< 1.1-1~), iraf-fitsutil (<< 2018.07.06-4), wcc (<< 0.0.2+dfsg-3), openssh-server (<< 1:8.2p1-4), macs (<< 2.2.7.1-3~), openarena (<< 0.8.8+dfsg-4~), ioquake3 (<< 1.36+u20200211.f2c61c1~dfsg-2~) Replaces: libc6-amd64 [amd64], libc6-i386 [i386], libc0.1-i686 [kfreebsd-i386], libc0.3-i686 [hurd-i386], libc6-i686 [i386], + libc6-lse [arm64], libc6-xen [i386], libc6-x32 [x32], libc0.1-i386 [kfreebsd-i386], diff -Nru glibc-2.32/debian/control.in/opt glibc-2.32/debian/control.in/opt --- glibc-2.32/debian/control.in/opt 2020-12-16 12:30:09.000000000 +0000 +++ glibc-2.32/debian/control.in/opt 2021-03-29 20:03:14.000000000 +0000 @@ -47,22 +47,6 @@ needs to be installed on Alpha EV67/68 and EV7 machines. If you install this on an older machine, it won't even be used. -Package: libc6-lse -Architecture: arm64 -Section: libs -Priority: optional -Multi-Arch: same -Depends: libc6 (= ${binary:Version}), ${misc:Depends} -Build-Profiles: -Description: GNU C Library: Shared Libraries - Contains the standard libraries that are used by nearly all programs on - the system. This package includes shared versions of the standard C library - and the standard math library, as well as many others. - . - This set of libraries is optimized to support Large System Extensions (LSE). - It only needs to be installed on ARM machine supporting LSE. If you install - this on an machine without LSE support, it won't be used. - Package: libc6-prof Architecture: amd64 arm64 armhf ppc64el riscv64 Section: libs diff -Nru glibc-2.32/debian/rules glibc-2.32/debian/rules --- glibc-2.32/debian/rules 2020-12-16 12:30:09.000000000 +0000 +++ glibc-2.32/debian/rules 2021-03-29 20:03:14.000000000 +0000 @@ -177,7 +177,6 @@ DEBUG_$(libc) = 1 DEBUG_libc6-xen = 1 DEBUG_libc6.1-alphaev67 = 1 -DEBUG_libc6-lse = 1 DEBUG_libc6-prof = 1 ifeq ($(filter stage1,$(DEB_BUILD_PROFILES)),) @@ -201,7 +200,7 @@ # Required Debian targets build-arch: $(stamp)info \ $(patsubst %,$(stamp)build_%,$(GLIBC_PASSES)) \ - $(patsubst %,$(stamp)check_%,$(filter-out $(GLIBC_PASSES_NOCHECK),$(GLIBC_PASSES))) + $(patsubst %,$(stamp)check_%,$(GLIBC_PASSES)) ifeq ($(filter stage1,$(DEB_BUILD_PROFILES)),) build-arch: $(stamp)build_C.UTF-8 \ $(stamp)build_locales-all diff -Nru glibc-2.32/debian/sysdeps/arm64.mk glibc-2.32/debian/sysdeps/arm64.mk --- glibc-2.32/debian/sysdeps/arm64.mk 2020-12-16 12:30:09.000000000 +0000 +++ glibc-2.32/debian/sysdeps/arm64.mk 2021-03-29 20:03:14.000000000 +0000 @@ -1,12 +1,2 @@ # configuration options for all flavours extra_config_options = --enable-multi-arch - -ifeq (,$(filter stage1 stage2, $(DEB_BUILD_PROFILES))) -# build an LSE optimized library -GLIBC_PASSES += lse -GLIBC_PASSES_NOCHECK += lse -DEB_ARCH_REGULAR_PACKAGES += libc6-lse -lse_CC = $(CC) -march=armv8-a+lse -lse_CXX = $(CXX) -march=armv8-a+lse -lse_slibdir = /lib/$(DEB_HOST_MULTIARCH)/atomics -endif