summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--debian/README.Debian9
-rw-r--r--debian/changelog27
-rw-r--r--debian/control55
-rw-r--r--debian/copyright31
-rw-r--r--debian/gbp.conf16
-rw-r--r--debian/libabsl-dev.install18
-rw-r--r--debian/libabsl20200225.install69
-rw-r--r--debian/libabsl20200225.lintian-overrides24
-rw-r--r--debian/libabsl20200225.shlibs69
-rw-r--r--debian/patches/bug970333.diff20
-rw-r--r--debian/patches/configure.diff104
-rw-r--r--debian/patches/license.diff59
-rw-r--r--debian/patches/series3
-rwxr-xr-xdebian/rules36
-rw-r--r--debian/source/format1
-rwxr-xr-xdebian/tests/cmake45
-rw-r--r--debian/tests/control19
-rwxr-xr-xdebian/tests/smoke37
-rw-r--r--debian/watch17
19 files changed, 659 insertions, 0 deletions
diff --git a/debian/README.Debian b/debian/README.Debian
new file mode 100644
index 00000000..7c0dd3c0
--- /dev/null
+++ b/debian/README.Debian
@@ -0,0 +1,9 @@
+Abseil for Debian
+-----------------
+
+libabsl-dev installs a number of files to 'internal' directories. In general,
+your project should not directly include any files from these directories; they
+may change without warning. If you think you need something from one of those
+files, please report a bug with reportbug(1).
+
+ -- Benjamin Barenblat <bbaren@debian.org> Thu, 07 May 2020 11:35:28 -0400
diff --git a/debian/changelog b/debian/changelog
new file mode 100644
index 00000000..f89ce271
--- /dev/null
+++ b/debian/changelog
@@ -0,0 +1,27 @@
+abseil (0~20200225.2-4) unstable; urgency=medium
+
+ * Fix "autopkgtest needs update for new version of cmake: warning on
+ stderr" by applying a patch from upstream. (Closes: #970333)
+
+ -- Benjamin Barenblat <bbaren@debian.org> Mon, 14 Sep 2020 17:40:05 -0400
+
+abseil (0~20200225.2-3) unstable; urgency=medium
+
+ * Replace symbols file with shlibs infrastructure. (Closes: #966183)
+
+ -- Benjamin Barenblat <bbaren@debian.org> Fri, 24 Jul 2020 09:42:03 -0400
+
+abseil (0~20200225.2-2) unstable; urgency=medium
+
+ * Rebuild for unstable.
+ * Rework symbols file using pkg-kde-tools for increased robustness.
+ * Avoid SSSE3 on amd64 and SSE2 on i386 for greater processor
+ compatibility.
+
+ -- Benjamin Barenblat <bbaren@debian.org> Thu, 23 Jul 2020 17:23:57 -0400
+
+abseil (0~20200225.2-1) experimental; urgency=medium
+
+ * Initial release. (Closes: #888705)
+
+ -- Benjamin Barenblat <bbaren@debian.org> Thu, 18 Jun 2020 16:27:49 -0400
diff --git a/debian/control b/debian/control
new file mode 100644
index 00000000..cb64a6e2
--- /dev/null
+++ b/debian/control
@@ -0,0 +1,55 @@
+# Copyright 2020 Google LLC
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
+
+Source: abseil
+Priority: optional
+Maintainer: Benjamin Barenblat <bbaren@debian.org>
+Build-Depends:
+ cmake (>= 3.5),
+ debhelper-compat (= 12),
+Rules-Requires-Root: no
+Standards-Version: 4.5.0
+Section: libs
+Homepage: https://abseil.io/
+Vcs-Browser: https://salsa.debian.org/debian/abseil
+Vcs-Git: https://salsa.debian.org/debian/abseil.git
+Description: extensions to the C++ standard library
+ Abseil is an open-source collection of C++ library code designed to augment the
+ C++ standard library. The Abseil library code is collected from Google's C++
+ codebase and has been extensively tested and used in production. In some cases,
+ Abseil provides pieces missing from the C++ standard; in others, Abseil
+ provides alternatives to the standard for special needs.
+
+Package: libabsl-dev
+Architecture: any
+Multi-Arch: same
+Section: libdevel
+Depends:
+ libabsl20200225 (= ${binary:Version}),
+ ${misc:Depends},
+Recommends: cmake (>= 2.6), g++ (>= 4.7)
+Description: ${source:Synopsis} (development files)
+ ${source:Extended-Description}
+ .
+ This package contains header files and other data necessary for developing with
+ Abseil.
+
+Package: libabsl20200225
+Architecture: any
+Multi-Arch: same
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Description: ${source:Synopsis}
+ ${source:Extended-Description}
+ .
+ This package contains Abseil's shared libraries.
diff --git a/debian/copyright b/debian/copyright
new file mode 100644
index 00000000..86b38cc4
--- /dev/null
+++ b/debian/copyright
@@ -0,0 +1,31 @@
+Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Upstream-Name: Abseil
+Upstream-Contact: abseil-io@googlegroups.com
+Source: https://github.com/abseil/abseil-cpp/
+Copyright: 2017 The Abseil Authors
+License: Apache-2.0
+
+Files: *
+Copyright:
+ 2000-2017 Google Inc.
+ 2017-2020 The Abseil Authors
+License: Apache-2.0
+
+Files: debian/*
+Copyright: 2020 Google LLC
+License: Apache-2.0
+
+License: Apache-2.0
+ Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+ this file except in compliance with the License. You may obtain a copy of the
+ License at
+ .
+ https://www.apache.org/licenses/LICENSE-2.0
+ .
+ Unless required by applicable law or agreed to in writing, software distributed
+ under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
+ CONDITIONS OF ANY KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations under the License.
+ .
+ On Debian systems, the complete text of the Apache License, Version 2.0, can be
+ found in "/usr/share/common-licenses/Apache-2.0".
diff --git a/debian/gbp.conf b/debian/gbp.conf
new file mode 100644
index 00000000..b7d8655d
--- /dev/null
+++ b/debian/gbp.conf
@@ -0,0 +1,16 @@
+# Copyright 2020 Google LLC
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
+
+[DEFAULT]
+upstream-tag = 20200225.2
diff --git a/debian/libabsl-dev.install b/debian/libabsl-dev.install
new file mode 100644
index 00000000..db5108c6
--- /dev/null
+++ b/debian/libabsl-dev.install
@@ -0,0 +1,18 @@
+# Copyright 2020 Google LLC
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
+
+usr/include/absl
+usr/lib/*/*.a
+usr/lib/*/*.so
+usr/lib/*/cmake
diff --git a/debian/libabsl20200225.install b/debian/libabsl20200225.install
new file mode 100644
index 00000000..4cd547f5
--- /dev/null
+++ b/debian/libabsl20200225.install
@@ -0,0 +1,69 @@
+# Copyright 2020 Google LLC
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
+
+usr/lib/*/libabsl_bad_any_cast_impl.so.*
+usr/lib/*/libabsl_bad_optional_access.so.*
+usr/lib/*/libabsl_bad_variant_access.so.*
+usr/lib/*/libabsl_base.so.*
+usr/lib/*/libabsl_city.so.*
+usr/lib/*/libabsl_civil_time.so.*
+usr/lib/*/libabsl_cord.so.*
+usr/lib/*/libabsl_debugging_internal.so.*
+usr/lib/*/libabsl_demangle_internal.so.*
+usr/lib/*/libabsl_dynamic_annotations.so.*
+usr/lib/*/libabsl_examine_stack.so.*
+usr/lib/*/libabsl_exponential_biased.so.*
+usr/lib/*/libabsl_failure_signal_handler.so.*
+usr/lib/*/libabsl_flags.so.*
+usr/lib/*/libabsl_flags_config.so.*
+usr/lib/*/libabsl_flags_internal.so.*
+usr/lib/*/libabsl_flags_marshalling.so.*
+usr/lib/*/libabsl_flags_parse.so.*
+usr/lib/*/libabsl_flags_program_name.so.*
+usr/lib/*/libabsl_flags_registry.so.*
+usr/lib/*/libabsl_flags_usage.so.*
+usr/lib/*/libabsl_flags_usage_internal.so.*
+usr/lib/*/libabsl_graphcycles_internal.so.*
+usr/lib/*/libabsl_hash.so.*
+usr/lib/*/libabsl_hashtablez_sampler.so.*
+usr/lib/*/libabsl_int128.so.*
+usr/lib/*/libabsl_leak_check.so.*
+usr/lib/*/libabsl_leak_check_disable.so.*
+usr/lib/*/libabsl_log_severity.so.*
+usr/lib/*/libabsl_malloc_internal.so.*
+usr/lib/*/libabsl_periodic_sampler.so.*
+usr/lib/*/libabsl_random_distributions.so.*
+usr/lib/*/libabsl_random_internal_distribution_test_util.so.*
+usr/lib/*/libabsl_random_internal_pool_urbg.so.*
+usr/lib/*/libabsl_random_internal_randen.so.*
+usr/lib/*/libabsl_random_internal_randen_hwaes.so.*
+usr/lib/*/libabsl_random_internal_randen_hwaes_impl.so.*
+usr/lib/*/libabsl_random_internal_randen_slow.so.*
+usr/lib/*/libabsl_random_internal_seed_material.so.*
+usr/lib/*/libabsl_random_seed_gen_exception.so.*
+usr/lib/*/libabsl_random_seed_sequences.so.*
+usr/lib/*/libabsl_raw_hash_set.so.*
+usr/lib/*/libabsl_raw_logging_internal.so.*
+usr/lib/*/libabsl_scoped_set_env.so.*
+usr/lib/*/libabsl_spinlock_wait.so.*
+usr/lib/*/libabsl_stacktrace.so.*
+usr/lib/*/libabsl_status.so.*
+usr/lib/*/libabsl_str_format_internal.so.*
+usr/lib/*/libabsl_strings.so.*
+usr/lib/*/libabsl_strings_internal.so.*
+usr/lib/*/libabsl_symbolize.so.*
+usr/lib/*/libabsl_synchronization.so.*
+usr/lib/*/libabsl_throw_delegate.so.*
+usr/lib/*/libabsl_time.so.*
+usr/lib/*/libabsl_time_zone.so.*
diff --git a/debian/libabsl20200225.lintian-overrides b/debian/libabsl20200225.lintian-overrides
new file mode 100644
index 00000000..1eba3430
--- /dev/null
+++ b/debian/libabsl20200225.lintian-overrides
@@ -0,0 +1,24 @@
+# Copyright 2020 Google LLC
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
+
+libabsl20200225: no-symbols-control-file usr/lib/*/libabsl_*
+libabsl20200225: package-name-doesnt-match-sonames libabsl-*
+libabsl20200225: shared-lib-without-dependency-information usr/lib/*/libabsl_city.so.20200225.0.2
+libabsl20200225: shared-lib-without-dependency-information usr/lib/*/libabsl_flags.so.20200225.0.2
+libabsl20200225: shared-lib-without-dependency-information usr/lib/*/libabsl_leak_check.so.20200225.0.2
+libabsl20200225: shared-lib-without-dependency-information usr/lib/*/libabsl_leak_check_disable.so.20200225.0.2
+libabsl20200225: shared-lib-without-dependency-information usr/lib/*/libabsl_random_internal_randen_hwaes_impl.so.20200225.0.2
+libabsl20200225: shared-lib-without-dependency-information usr/lib/*/libabsl_random_internal_randen_hwaes_impl.so.20200225.0.2
+libabsl20200225: shared-lib-without-dependency-information usr/lib/*/libabsl_random_internal_randen_slow.so.20200225.0.2
+libabsl20200225: spelling-error-in-binary usr/lib/*/libabsl_flags_usage_internal.so.20200225.0.2 helpfull helpful
diff --git a/debian/libabsl20200225.shlibs b/debian/libabsl20200225.shlibs
new file mode 100644
index 00000000..994c1657
--- /dev/null
+++ b/debian/libabsl20200225.shlibs
@@ -0,0 +1,69 @@
+# Copyright 2020 Google LLC
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
+#
+libabsl_bad_any_cast_impl 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_bad_optional_access 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_bad_variant_access 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_base 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_city 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_civil_time 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_cord 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_debugging_internal 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_demangle_internal 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_dynamic_annotations 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_examine_stack 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_exponential_biased 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_failure_signal_handler 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_flags 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_flags_config 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_flags_internal 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_flags_marshalling 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_flags_parse 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_flags_program_name 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_flags_registry 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_flags_usage 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_flags_usage_internal 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_graphcycles_internal 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_hash 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_hashtablez_sampler 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_int128 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_leak_check 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_leak_check_disable 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_log_severity 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_malloc_internal 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_periodic_sampler 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_random_distributions 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_random_internal_distribution_test_util 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_random_internal_pool_urbg 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_random_internal_randen 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_random_internal_randen_hwaes 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_random_internal_randen_hwaes_impl 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_random_internal_randen_slow 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_random_internal_seed_material 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_random_seed_gen_exception 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_random_seed_sequences 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_raw_hash_set 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_raw_logging_internal 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_scoped_set_env 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_spinlock_wait 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_stacktrace 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_status 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_str_format_internal 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_strings 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_strings_internal 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_symbolize 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_synchronization 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_throw_delegate 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_time 20200225 libabsl20200225 (>= 0~20200225.2-2)
+libabsl_time_zone 20200225 libabsl20200225 (>= 0~20200225.2-2)
diff --git a/debian/patches/bug970333.diff b/debian/patches/bug970333.diff
new file mode 100644
index 00000000..efca5a5a
--- /dev/null
+++ b/debian/patches/bug970333.diff
@@ -0,0 +1,20 @@
+From: Zach Toogood <zach@yousician.com>
+Subject: Fix CMake Threads dependency issue
+Origin: upstream, https://github.com/abseil/abseil-cpp/commit/68494aae959dfbbf781cdf03a988d2f5fc7e4802
+Bug: https://github.com/abseil/abseil-cpp/issues/668
+Bug-Debian: https://bugs.debian.org/970333
+
+Improve CMake support by finding the Threads module with find_dependency
+rather than trying to include it directly. This silences a CMake warning.
+
+--- a/CMake/abslConfig.cmake.in
++++ b/CMake/abslConfig.cmake.in
+@@ -1,6 +1,7 @@
+ # absl CMake configuration file.
+
+-include(FindThreads)
++include(CMakeFindDependencyMacro)
++find_dependency(Threads)
+
+ @PACKAGE_INIT@
+
diff --git a/debian/patches/configure.diff b/debian/patches/configure.diff
new file mode 100644
index 00000000..bb88ae7d
--- /dev/null
+++ b/debian/patches/configure.diff
@@ -0,0 +1,104 @@
+From: Benjamin Barenblat <bbaren@google.com>
+Subject: Set package configuration options
+Forwarded: not-needed
+
+Configure Abseil for Debian.
+
+ - Set the SONAME appropriately.
+
+ - To minimize the possibility of future ABI breakage, treat absl::any,
+ absl::optional, absl::string_view, and absl::variant as their own types
+ (rather than aliases for the std:: versions), and compile everything in an
+ inline namespace.
+
+ - Disable Intel SSE2 on i386, since Debian supports some i386 processors
+ without that extension. Keep it enabled on amd64, since all amd64 processors
+ have it.
+
+ - Disable Intel SSSE3 entirely, since no i386 processor supports it and Debian
+ supports amd64 processors without it.
+
+--- a/CMake/AbseilHelpers.cmake
++++ b/CMake/AbseilHelpers.cmake
+@@ -215,6 +215,9 @@
+ OUTPUT_NAME "absl_${_NAME}"
+ )
+ endif()
++
++ set_property(TARGET ${_NAME} PROPERTY SOVERSION 20200225)
++ set_property(TARGET ${_NAME} PROPERTY VERSION "20200225.0.2")
+ else()
+ # Generating header-only library
+ add_library(${_NAME} INTERFACE)
+--- a/absl/base/options.h
++++ b/absl/base/options.h
+@@ -100,7 +100,7 @@
+ // User code should not inspect this macro. To check in the preprocessor if
+ // absl::any is a typedef of std::any, use the feature macro ABSL_USES_STD_ANY.
+
+-#define ABSL_OPTION_USE_STD_ANY 2
++#define ABSL_OPTION_USE_STD_ANY 0
+
+
+ // ABSL_OPTION_USE_STD_OPTIONAL
+@@ -127,7 +127,7 @@
+ // absl::optional is a typedef of std::optional, use the feature macro
+ // ABSL_USES_STD_OPTIONAL.
+
+-#define ABSL_OPTION_USE_STD_OPTIONAL 2
++#define ABSL_OPTION_USE_STD_OPTIONAL 0
+
+
+ // ABSL_OPTION_USE_STD_STRING_VIEW
+@@ -154,7 +154,7 @@
+ // absl::string_view is a typedef of std::string_view, use the feature macro
+ // ABSL_USES_STD_STRING_VIEW.
+
+-#define ABSL_OPTION_USE_STD_STRING_VIEW 2
++#define ABSL_OPTION_USE_STD_STRING_VIEW 0
+
+ // ABSL_OPTION_USE_STD_VARIANT
+ //
+@@ -180,7 +180,7 @@
+ // absl::variant is a typedef of std::variant, use the feature macro
+ // ABSL_USES_STD_VARIANT.
+
+-#define ABSL_OPTION_USE_STD_VARIANT 2
++#define ABSL_OPTION_USE_STD_VARIANT 0
+
+
+ // ABSL_OPTION_USE_INLINE_NAMESPACE
+@@ -206,6 +206,6 @@
+ // allowed.
+
+ #define ABSL_OPTION_USE_INLINE_NAMESPACE 1
+-#define ABSL_OPTION_INLINE_NAMESPACE_NAME lts_2020_02_25
++#define ABSL_OPTION_INLINE_NAMESPACE_NAME debian0
+
+ #endif // ABSL_BASE_OPTIONS_H_
+--- a/absl/container/internal/have_sse.h
++++ b/absl/container/internal/have_sse.h
+@@ -17,22 +17,14 @@
+ #define ABSL_CONTAINER_INTERNAL_HAVE_SSE_H_
+
+ #ifndef SWISSTABLE_HAVE_SSE2
+-#if defined(__SSE2__) || \
+- (defined(_MSC_VER) && \
+- (defined(_M_X64) || (defined(_M_IX86) && _M_IX86_FP >= 2)))
++#if defined(__x86_64__) || (defined(_MSC_VER) && defined(_M_X64))
+ #define SWISSTABLE_HAVE_SSE2 1
+ #else
+ #define SWISSTABLE_HAVE_SSE2 0
+ #endif
+ #endif
+
+-#ifndef SWISSTABLE_HAVE_SSSE3
+-#ifdef __SSSE3__
+-#define SWISSTABLE_HAVE_SSSE3 1
+-#else
+ #define SWISSTABLE_HAVE_SSSE3 0
+-#endif
+-#endif
+
+ #if SWISSTABLE_HAVE_SSSE3 && !SWISSTABLE_HAVE_SSE2
+ #error "Bad configuration!"
diff --git a/debian/patches/license.diff b/debian/patches/license.diff
new file mode 100644
index 00000000..08f315e4
--- /dev/null
+++ b/debian/patches/license.diff
@@ -0,0 +1,59 @@
+From: Benjamin Barenblat <bbaren@google.com>
+Subject: Correct Apache license headers
+Forwarded: yes
+Applied-Upstream: https://github.com/abseil/abseil-cpp/commit/bd317cae3bc2630d1b12c5f1d77036e937d1d725
+
+This repository has always been licensed under the Apache license, but some
+files lacked headers to locally indicate that fact. Add the appropriate headers.
+
+The author works at Google. Upstream applied this patch as Piper revision
+310223650 and exported it to GitHub; the Applied-Upstream URL above points to
+the exported commit.
+
+--- a/absl/debugging/internal/stacktrace_arm-inl.inc
++++ b/absl/debugging/internal/stacktrace_arm-inl.inc
+@@ -1,9 +1,18 @@
+-// Copyright 2011 and onwards Google Inc.
+-// All rights reserved.
++// Copyright 2017 The Abseil Authors.
++//
++// Licensed under the Apache License, Version 2.0 (the "License");
++// you may not use this file except in compliance with the License.
++// You may obtain a copy of the License at
++//
++// https://www.apache.org/licenses/LICENSE-2.0
++//
++// Unless required by applicable law or agreed to in writing, software
++// distributed under the License is distributed on an "AS IS" BASIS,
++// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
++// See the License for the specific language governing permissions and
++// limitations under the License.
+ //
+-// Author: Doug Kwan
+ // This is inspired by Craig Silverstein's PowerPC stacktrace code.
+-//
+
+ #ifndef ABSL_DEBUGGING_INTERNAL_STACKTRACE_ARM_INL_H_
+ #define ABSL_DEBUGGING_INTERNAL_STACKTRACE_ARM_INL_H_
+--- a/absl/debugging/internal/stacktrace_generic-inl.inc
++++ b/absl/debugging/internal/stacktrace_generic-inl.inc
+@@ -1,7 +1,16 @@
+-// Copyright 2000 - 2007 Google Inc.
+-// All rights reserved.
++// Copyright 2017 The Abseil Authors.
+ //
+-// Author: Sanjay Ghemawat
++// Licensed under the Apache License, Version 2.0 (the "License");
++// you may not use this file except in compliance with the License.
++// You may obtain a copy of the License at
++//
++// https://www.apache.org/licenses/LICENSE-2.0
++//
++// Unless required by applicable law or agreed to in writing, software
++// distributed under the License is distributed on an "AS IS" BASIS,
++// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
++// See the License for the specific language governing permissions and
++// limitations under the License.
+ //
+ // Portable implementation - just use glibc
+ //
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644
index 00000000..f544d1d9
--- /dev/null
+++ b/debian/patches/series
@@ -0,0 +1,3 @@
+license.diff
+configure.diff
+bug970333.diff
diff --git a/debian/rules b/debian/rules
new file mode 100755
index 00000000..c6c94e3c
--- /dev/null
+++ b/debian/rules
@@ -0,0 +1,36 @@
+#!/usr/bin/make -f
+# Copyright 2020 Google LLC
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
+
+export DEB_BUILD_MAINT_OPTIONS = hardening=+bindnow reproducible=+fixfilepath
+
+%:
+ dh $@
+
+override_dh_auto_clean:
+ $(RM) -r $(CURDIR)/static
+ $(RM) -r $(CURDIR)/shared
+
+override_dh_auto_configure:
+ dh_auto_configure -Bstatic -- -DCMAKE_CXX_STANDARD=14 -DBUILD_SHARED_LIBS=OFF
+ dh_auto_configure -Bshared -- -DCMAKE_CXX_STANDARD=14 -DBUILD_SHARED_LIBS=ON
+
+override_dh_auto_build:
+ dh_auto_build -Bstatic
+ dh_auto_build -Bshared
+
+override_dh_auto_install:
+ dh_auto_install -Bstatic
+ dh_auto_install -Bshared
+ find debian/tmp -type d -empty -delete
diff --git a/debian/source/format b/debian/source/format
new file mode 100644
index 00000000..163aaf8d
--- /dev/null
+++ b/debian/source/format
@@ -0,0 +1 @@
+3.0 (quilt)
diff --git a/debian/tests/cmake b/debian/tests/cmake
new file mode 100755
index 00000000..1eb04de9
--- /dev/null
+++ b/debian/tests/cmake
@@ -0,0 +1,45 @@
+#!/bin/sh -eu
+# Copyright 2020 Google LLC
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
+
+readonly TMP="$(mktemp -d)"
+trap "rm -rf \"$TMP\"" EXIT
+cd "$TMP"
+
+cat >test.cc <<EOF
+#include <absl/strings/numbers.h>
+
+int main(int argc, char* argv[]) {
+ int n;
+ if (!absl::SimpleAtoi(argv[1], &n)) {
+ return 1;
+ }
+ return n;
+}
+EOF
+
+cat >CMakeLists.txt <<EOF
+cmake_minimum_required(VERSION 3.5)
+project(test CXX)
+set(CMAKE_CXX_STANDARD 14)
+add_executable(test test.cc)
+find_package(absl REQUIRED)
+target_link_libraries(test absl::strings)
+EOF
+
+mkdir build
+cd build
+cmake ..
+make
+./test 0
diff --git a/debian/tests/control b/debian/tests/control
new file mode 100644
index 00000000..43dc87cb
--- /dev/null
+++ b/debian/tests/control
@@ -0,0 +1,19 @@
+# Copyright 2020 Google LLC
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
+
+Tests: smoke
+Depends: @, g++, libgtest-dev
+
+Tests: cmake
+Depends: @, cmake (>= 3.5), g++, make
diff --git a/debian/tests/smoke b/debian/tests/smoke
new file mode 100755
index 00000000..7c4b66fa
--- /dev/null
+++ b/debian/tests/smoke
@@ -0,0 +1,37 @@
+#!/bin/sh -eu
+# Copyright 2020 Google LLC
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
+
+readonly TMP="$(mktemp -d)"
+trap "rm -rf \"$TMP\"" EXIT
+cd "$TMP"
+
+cat >smoke.cc <<EOF
+#include <absl/strings/str_join.h>
+#include <gtest/gtest.h>
+
+#include <vector>
+
+namespace {
+
+TEST(AbseilTest, StrJoinWorks) {
+ std::vector<std::string> v = {"foo", "bar", "baz"};
+ EXPECT_EQ(absl::StrJoin(v, "-"), "foo-bar-baz");
+}
+
+} // namespace
+EOF
+
+g++ -o smoke smoke.cc -labsl_strings -lgtest -lgtest_main -pthread
+./smoke
diff --git a/debian/watch b/debian/watch
new file mode 100644
index 00000000..4337b538
--- /dev/null
+++ b/debian/watch
@@ -0,0 +1,17 @@
+# Copyright 2020 Google LLC
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
+
+version=4
+opts=filenamemangle=s/.+\/v?(\d\S+)\.tar\.gz/abseil-$1\.tar\.gz/ \
+ https://github.com/abseil/abseil-cpp/releases .*/v?(\d\S+)\.tar\.gz