From e4d8b08c9162b2a4fcdaa186d66073ecf19256ef Mon Sep 17 00:00:00 2001 From: Benjamin Barenblat Date: Mon, 31 Jan 2022 17:40:57 -0500 Subject: Make flags library header-only MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The Abseil flags library needs to emit code only when being compiled with MSVC, which Debian doesn’t use. Skip absl/flags/flag.cc, and tell CMake to treat the flags library as header-only. --- debian/changelog | 2 ++ debian/libabsl20210324.lintian-overrides | 1 - debian/libabsl20210324.shlibs | 1 - debian/patches/empty-flags-library.diff | 19 +++++++++++++++++++ debian/patches/series | 1 + 5 files changed, 22 insertions(+), 2 deletions(-) create mode 100644 debian/patches/empty-flags-library.diff diff --git a/debian/changelog b/debian/changelog index 0347674f..23869523 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,6 +1,8 @@ abseil (0~20210324.2-1) UNRELEASED; urgency=medium * New upstream release. + * Stop installing libabsl_flags.so and libabsl_flags.a, since they are + empty on every platform that Debian supports. * Correct debian/watch search URLs to avoid picking up rc versions. * Mangle upstream version in debian/watch to match manual mangling in debian/changelog. diff --git a/debian/libabsl20210324.lintian-overrides b/debian/libabsl20210324.lintian-overrides index eda83e40..117966f8 100644 --- a/debian/libabsl20210324.lintian-overrides +++ b/debian/libabsl20210324.lintian-overrides @@ -30,7 +30,6 @@ libabsl20210324: library-not-linked-against-libc usr/lib/*/libabsl_throw_delegat libabsl20210324: no-symbols-control-file usr/lib/*/libabsl_* libabsl20210324: package-name-doesnt-match-sonames libabsl-* libabsl20210324: shared-library-lacks-prerequisites usr/lib/*/libabsl_city.so* -libabsl20210324: shared-library-lacks-prerequisites usr/lib/*/libabsl_flags.so* libabsl20210324: shared-library-lacks-prerequisites usr/lib/*/libabsl_leak_check.so* libabsl20210324: shared-library-lacks-prerequisites usr/lib/*/libabsl_leak_check_disable.so* libabsl20210324: shared-library-lacks-prerequisites usr/lib/*/libabsl_random_internal_platform.so* diff --git a/debian/libabsl20210324.shlibs b/debian/libabsl20210324.shlibs index 73ea7090..f1ecca62 100644 --- a/debian/libabsl20210324.shlibs +++ b/debian/libabsl20210324.shlibs @@ -24,7 +24,6 @@ libabsl_demangle_internal 20210324 libabsl20210324 (>= 0~20210324.2-1) libabsl_examine_stack 20210324 libabsl20210324 (>= 0~20210324.2-1) libabsl_exponential_biased 20210324 libabsl20210324 (>= 0~20210324.2-1) libabsl_failure_signal_handler 20210324 libabsl20210324 (>= 0~20210324.2-1) -libabsl_flags 20210324 libabsl20210324 (>= 0~20210324.2-1) libabsl_flags_commandlineflag 20210324 libabsl20210324 (>= 0~20210324.2-1) libabsl_flags_commandlineflag_internal 20210324 libabsl20210324 (>= 0~20210324.2-1) libabsl_flags_config 20210324 libabsl20210324 (>= 0~20210324.2-1) diff --git a/debian/patches/empty-flags-library.diff b/debian/patches/empty-flags-library.diff new file mode 100644 index 00000000..fe1d3962 --- /dev/null +++ b/debian/patches/empty-flags-library.diff @@ -0,0 +1,19 @@ +From: Benjamin Barenblat +Subject: Eliminate libabsl_flags.so and libabsl_flags.a +Forwarded: not-needed + +The libabsl_flags library only contains code when compiling with MSVC, which +Debian doesn't use. Skip compiling absl/flags/flag.cc, and make the Abseil flags +library header-only. + +--- a/absl/flags/CMakeLists.txt ++++ b/absl/flags/CMakeLists.txt +@@ -197,8 +197,6 @@ + absl_cc_library( + NAME + flags +- SRCS +- "flag.cc" + HDRS + "declare.h" + "flag.h" diff --git a/debian/patches/series b/debian/patches/series index 9cca595d..a954bf95 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,6 +1,7 @@ configure.diff std-hash.diff latomic.diff +empty-flags-library.diff cordrepring-typo.diff thumb-function-bounds.diff float-rounding.diff -- cgit v1.2.3