diff --git a/debian/NEWS b/debian/NEWS index 5f8426fd..80d52ee2 100644 --- a/debian/NEWS +++ b/debian/NEWS @@ -1,6 +1,6 @@ llvm-toolchain-15 (1:15.0.6-5) unstable; urgency=medium - * libclang-common-X.Y-dev has been splitted into libclang-rt-X.Y-dev, + * libclang-common-X.Y-dev has been split into libclang-rt-X.Y-dev, libpolly-X.Y-dev, libclang-rt-14-dev-wasm32 and libclang-rt-14-dev-wasm64 compiler-rt and polly moved to libclang-rt-X.Y-dev libclang-common-X.Y-dev is now arch:any and contains headers diff --git a/debian/changelog b/debian/changelog index 5c5172f7..f5a49400 100644 --- a/debian/changelog +++ b/debian/changelog @@ -338,8 +338,12 @@ llvm-toolchain-snapshot (1:15~++20220202093833+1a3137dc8451-1~exp1) experimental llvm-toolchain-14 (1:14.0.6-11) UNRELEASED; urgency=medium + [ Sylvestre Ledru ] * Update SV to 4.6.2 + [ Gianfranco Costamagna ] + * Fix riscv64 build by adding spirv again (from @paravoid) + -- Sylvestre Ledru Mon, 02 Jan 2023 13:54:51 +0100 llvm-toolchain-14 (1:14.0.6-10) unstable; urgency=medium diff --git a/debian/control b/debian/control index dd824414..9b734182 100644 --- a/debian/control +++ b/debian/control @@ -907,7 +907,6 @@ Description: Multi-Level Intermediate Representation library specific compilers, and aid in connecting existing compilers together. - # ------------- bolt ------------- Package: bolt-15 diff --git a/debian/control.in b/debian/control.in index 4e163817..5680632c 100644 --- a/debian/control.in +++ b/debian/control.in @@ -907,7 +907,6 @@ Description: Multi-Level Intermediate Representation library specific compilers, and aid in connecting existing compilers together. - # ------------- bolt ------------- Package: bolt-@LLVM_VERSION@ diff --git a/debian/patches/libcxx-D124227-wasm.patch b/debian/patches/libcxx-D124227-wasm.patch new file mode 100644 index 00000000..dcb4c79d --- /dev/null +++ b/debian/patches/libcxx-D124227-wasm.patch @@ -0,0 +1,249 @@ +From 67b0b02ec9f2bbc57bf8f0550828d97f460ac11f Mon Sep 17 00:00:00 2001 +From: Brad Smith +Date: Sat, 7 May 2022 01:06:32 -0400 +Subject: [PATCH] [libcxx] Remove static inline and make use of + _LIBCPP_HIDE_FROM_ABI in __support headers + +After feedback from D122861, do the same thing with some of the other headers. Try to move the +headers so they have a similar style and way of doing things. + ++ also applies: +https://reviews.llvm.org/D141208 + +Reviewed By: ldionne, daltenty + +Differential Revision: https://reviews.llvm.org/D124227 +--- + libcxx/include/__support/ibm/gettod_zos.h | 3 +- + libcxx/include/__support/ibm/xlocale.h | 53 +++++++++------------ + libcxx/include/__support/musl/xlocale.h | 31 ++++++------ + libcxx/include/__support/solaris/xlocale.h | 55 +++++++++++----------- + 4 files changed, 67 insertions(+), 75 deletions(-) + +Index: llvm-toolchain-14-14.0.6~++20230104093240+f28c006a5895/libcxx/include/__support/ibm/gettod_zos.h +=================================================================== +--- llvm-toolchain-14-14.0.6~++20230104093240+f28c006a5895.orig/libcxx/include/__support/ibm/gettod_zos.h ++++ llvm-toolchain-14-14.0.6~++20230104093240+f28c006a5895/libcxx/include/__support/ibm/gettod_zos.h +@@ -12,7 +12,8 @@ + + #include + +-static inline int gettimeofdayMonotonic(struct timespec64* Output) { ++inline _LIBCPP_HIDE_FROM_ABI int ++gettimeofdayMonotonic(struct timespec64* Output) { + + // The POSIX gettimeofday() function is not available on z/OS. Therefore, + // we will call stcke and other hardware instructions in implement equivalent. +Index: llvm-toolchain-14-14.0.6~++20230104093240+f28c006a5895/libcxx/include/__support/ibm/xlocale.h +=================================================================== +--- llvm-toolchain-14-14.0.6~++20230104093240+f28c006a5895.orig/libcxx/include/__support/ibm/xlocale.h ++++ llvm-toolchain-14-14.0.6~++20230104093240+f28c006a5895/libcxx/include/__support/ibm/xlocale.h +@@ -52,57 +52,50 @@ private: + + // The following are not POSIX routines. These are quick-and-dirty hacks + // to make things pretend to work +-static inline +-long long strtoll_l(const char *__nptr, char **__endptr, +- int __base, locale_t locale) { ++inline _LIBCPP_HIDE_FROM_ABI long long ++strtoll_l(const char *__nptr, char **__endptr, int __base, locale_t locale) { + __setAndRestore __newloc(locale); +- return strtoll(__nptr, __endptr, __base); ++ return ::strtoll(__nptr, __endptr, __base); + } + +-static inline +-long strtol_l(const char *__nptr, char **__endptr, +- int __base, locale_t locale) { ++inline _LIBCPP_HIDE_FROM_ABI long ++strtol_l(const char *__nptr, char **__endptr, int __base, locale_t locale) { + __setAndRestore __newloc(locale); +- return strtol(__nptr, __endptr, __base); ++ return ::strtol(__nptr, __endptr, __base); + } + +-static inline +-double strtod_l(const char *__nptr, char **__endptr, +- locale_t locale) { ++inline _LIBCPP_HIDE_FROM_ABI double ++strtod_l(const char *__nptr, char **__endptr, locale_t locale) { + __setAndRestore __newloc(locale); +- return strtod(__nptr, __endptr); ++ return ::strtod(__nptr, __endptr); + } + +-static inline +-float strtof_l(const char *__nptr, char **__endptr, +- locale_t locale) { ++inline _LIBCPP_HIDE_FROM_ABI float ++strtof_l(const char *__nptr, char **__endptr, locale_t locale) { + __setAndRestore __newloc(locale); +- return strtof(__nptr, __endptr); ++ return ::strtof(__nptr, __endptr); + } + +-static inline +-long double strtold_l(const char *__nptr, char **__endptr, +- locale_t locale) { ++inline _LIBCPP_HIDE_FROM_ABI long double ++strtold_l(const char *__nptr, char **__endptr, locale_t locale) { + __setAndRestore __newloc(locale); +- return strtold(__nptr, __endptr); ++ return ::strtold(__nptr, __endptr); + } + +-static inline +-unsigned long long strtoull_l(const char *__nptr, char **__endptr, +- int __base, locale_t locale) { ++inline _LIBCPP_HIDE_FROM_ABI unsigned long long ++strtoull_l(const char *__nptr, char **__endptr, int __base, locale_t locale) { + __setAndRestore __newloc(locale); +- return strtoull(__nptr, __endptr, __base); ++ return ::strtoull(__nptr, __endptr, __base); + } + +-static inline +-unsigned long strtoul_l(const char *__nptr, char **__endptr, +- int __base, locale_t locale) { ++inline _LIBCPP_HIDE_FROM_ABI unsigned long ++strtoul_l(const char *__nptr, char **__endptr, int __base, locale_t locale) { + __setAndRestore __newloc(locale); +- return strtoul(__nptr, __endptr, __base); ++ return ::strtoul(__nptr, __endptr, __base); + } + +-static inline +-int vasprintf(char **strp, const char *fmt, va_list ap) { ++inline _LIBCPP_HIDE_FROM_ABI int ++vasprintf(char **strp, const char *fmt, va_list ap) { + const size_t buff_size = 256; + if ((*strp = (char *)malloc(buff_size)) == NULL) { + return -1; +Index: llvm-toolchain-14-14.0.6~++20230104093240+f28c006a5895/libcxx/include/__support/musl/xlocale.h +=================================================================== +--- llvm-toolchain-14-14.0.6~++20230104093240+f28c006a5895.orig/libcxx/include/__support/musl/xlocale.h ++++ llvm-toolchain-14-14.0.6~++20230104093240+f28c006a5895/libcxx/include/__support/musl/xlocale.h +@@ -24,30 +24,29 @@ + extern "C" { + #endif + +-static inline long long strtoll_l(const char *nptr, char **endptr, int base, +- locale_t) { +- return strtoll(nptr, endptr, base); ++inline _LIBCPP_HIDE_FROM_ABI long long ++strtoll_l(const char *nptr, char **endptr, int base, locale_t) { ++ return ::strtoll(nptr, endptr, base); + } + +-static inline unsigned long long strtoull_l(const char *nptr, char **endptr, +- int base, locale_t) { +- return strtoull(nptr, endptr, base); ++inline _LIBCPP_HIDE_FROM_ABI unsigned long long ++strtoull_l(const char *nptr, char **endptr, int base, locale_t) { ++ return ::strtoull(nptr, endptr, base); + } + +-static inline long long wcstoll_l(const wchar_t *nptr, wchar_t **endptr, +- int base, locale_t) { +- return wcstoll(nptr, endptr, base); ++inline _LIBCPP_HIDE_FROM_ABI long long ++wcstoll_l(const wchar_t *nptr, wchar_t **endptr, int base, locale_t) { ++ return ::wcstoll(nptr, endptr, base); + } + +-static inline unsigned long long wcstoull_l(const wchar_t *nptr, +- wchar_t **endptr, int base, +- locale_t) { +- return wcstoull(nptr, endptr, base); ++inline _LIBCPP_HIDE_FROM_ABI unsigned long long ++wcstoull_l(const wchar_t *nptr, wchar_t **endptr, int base, locale_t) { ++ return ::wcstoull(nptr, endptr, base); + } + +-static inline long double wcstold_l(const wchar_t *nptr, wchar_t **endptr, +- locale_t) { +- return wcstold(nptr, endptr); ++inline _LIBCPP_HIDE_FROM_ABI long double ++wcstold_l(const wchar_t *nptr, wchar_t **endptr, locale_t) { ++ return ::wcstold(nptr, endptr); + } + + #ifdef __cplusplus +Index: llvm-toolchain-14-14.0.6~++20230104093240+f28c006a5895/libcxx/include/__support/solaris/xlocale.h +=================================================================== +--- llvm-toolchain-14-14.0.6~++20230104093240+f28c006a5895.orig/libcxx/include/__support/solaris/xlocale.h ++++ llvm-toolchain-14-14.0.6~++20230104093240+f28c006a5895/libcxx/include/__support/solaris/xlocale.h +@@ -32,40 +32,39 @@ struct lconv *localeconv(void); + struct lconv *localeconv_l(locale_t __l); + + // FIXME: These are quick-and-dirty hacks to make things pretend to work +-static inline +-long long strtoll_l(const char *__nptr, char **__endptr, +- int __base, locale_t __loc) { +- return strtoll(__nptr, __endptr, __base); +-} +-static inline +-long strtol_l(const char *__nptr, char **__endptr, +- int __base, locale_t __loc) { +- return strtol(__nptr, __endptr, __base); +-} +-static inline +-unsigned long long strtoull_l(const char *__nptr, char **__endptr, +- int __base, locale_t __loc) { +- return strtoull(__nptr, __endptr, __base); +-} +-static inline +-unsigned long strtoul_l(const char *__nptr, char **__endptr, +- int __base, locale_t __loc) { +- return strtoul(__nptr, __endptr, __base); +-} +-static inline +-float strtof_l(const char *__nptr, char **__endptr, +- locale_t __loc) { +- return strtof(__nptr, __endptr); +-} +-static inline +-double strtod_l(const char *__nptr, char **__endptr, +- locale_t __loc) { +- return strtod(__nptr, __endptr); +-} +-static inline +-long double strtold_l(const char *__nptr, char **__endptr, +- locale_t __loc) { +- return strtold(__nptr, __endptr); ++inline _LIBCPP_HIDE_FROM_ABI long long ++strtoll_l(const char *__nptr, char **__endptr, int __base, locale_t __loc) { ++ return ::strtoll(__nptr, __endptr, __base); ++} ++ ++inline _LIBCPP_HIDE_FROM_ABI long ++strtol_l(const char *__nptr, char **__endptr, int __base, locale_t __loc) { ++ return ::strtol(__nptr, __endptr, __base); ++} ++ ++inline _LIBCPP_HIDE_FROM_ABI unsigned long long ++strtoull_l(const char *__nptr, char **__endptr, int __base, locale_t __loc) ++ return ::strtoull(__nptr, __endptr, __base); ++} ++ ++inline _LIBCPP_HIDE_FROM_ABI unsigned long ++strtoul_l(const char *__nptr, char **__endptr, int __base, locale_t __loc) { ++ return ::strtoul(__nptr, __endptr, __base); ++} ++ ++inline _LIBCPP_HIDE_FROM_ABI float ++strtof_l(const char *__nptr, char **__endptr, locale_t __loc) { ++ return ::strtof(__nptr, __endptr); ++} ++ ++inline _LIBCPP_HIDE_FROM_ABI double ++strtod_l(const char *__nptr, char **__endptr, locale_t __loc) { ++ return ::strtod(__nptr, __endptr); ++} ++ ++inline _LIBCPP_HIDE_FROM_ABI long double ++strtold_l(const char *__nptr, char **__endptr, locale_t __loc) { ++ return ::strtold(__nptr, __endptr); + } + + diff --git a/debian/patches/series b/debian/patches/series index 570f3b66..3ffbb7fe 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -153,7 +153,9 @@ bolt-disable-emit-relocs.patch D124841-fix-powerpc-miscompile.patch mips/mips-assert-size.diff protobuf_3.21.patch + # upstream cherry-pick for mesa build add-arm-vcmpz-test.patch fix-mesa-build.patch link-grpc.diff +libcxx-D124227-wasm.patch diff --git a/debian/rules b/debian/rules index b97239c8..5c3e3800 100755 --- a/debian/rules +++ b/debian/rules @@ -337,7 +337,7 @@ STAGE_ALL_CMAKE_EXTRA += -DMLIR_INSTALL_AGGREGATE_OBJECTS=OFF RUN_TEST=yes -ifeq (,$(findstring nocheck,$(DEB_BUILD_OPTIONS))) +ifneq (,$(filter nocheck,$(DEB_BUILD_OPTIONS))) RUN_TEST=no endif ifeq ($(shell dpkg-vendor --derives-from Ubuntu && echo yes),yes)