Skip to content

Instantly share code, notes, and snippets.

@markpapadakis
Last active June 21, 2020 09:40
Show Gist options
  • Save markpapadakis/23a6460f36c8c1c7f24a593f9c3d7c3a to your computer and use it in GitHub Desktop.
Save markpapadakis/23a6460f36c8c1c7f24a593f9c3d7c3a to your computer and use it in GitHub Desktop.
#!/bin/bash
# This builds a self-contained archive for access to abseil containers+hashes
mkdir /tmp/BUILDYARD
cd /tmp/BUILDYARD
git clone --depth 1 https://github.com/abseil/abseil-cpp.git
cd abseil-cpp
mkdir build
cd build
cmake .. -DABSL_RUN_TESTS=ON -DABSL_USE_GOOGLETEST_HEAD=ON -DCMAKE_CXX_STANDARD=17
cmake --build . --target all
DEPS="container/libabsl_hashtablez_sampler.a \
base/libabsl_raw_logging_internal.a \
container/libabsl_raw_hash_set.a \
synchronization/libabsl_synchronization.a \
base/libabsl_base.a \
base/libabsl_spinlock_wait.a \
base/libabsl_throw_delegate.a \
base/libabsl_scoped_set_env.a \
base/libabsl_malloc_internal.a \
debugging/libabsl_symbolize.a \
debugging/libabsl_demangle_internal.a \
debugging/libabsl_leak_check_disable.a \
debugging/libabsl_leak_check.a \
debugging/libabsl_examine_stack.a \
debugging/libabsl_failure_signal_handler.a \
debugging/libabsl_stacktrace.a \
debugging/libabsl_debugging_internal.a \
base/libabsl_dynamic_annotations.a \
flags/libabsl_flags_usage_internal.a \
flags/libabsl_flags_program_name.a \
flags/libabsl_flags_config.a \
flags/libabsl_flags_marshalling.a \
flags/libabsl_flags_handle.a \
flags/libabsl_flags_registry.a \
flags/libabsl_flags.a \
flags/libabsl_flags_usage.a \
flags/libabsl_flags_parse.a \
flags/libabsl_flags_internal.a \
hash/libabsl_city.a \
hash/libabsl_hash.a \
strings/libabsl_strings_internal.a \
strings/libabsl_strings.a \
strings/libabsl_str_format_internal.a \
synchronization/libabsl_graphcycles_internal.a \
time/libabsl_civil_time.a \
time/libabsl_time.a \
time/libabsl_time_zone.a \
types/libabsl_bad_optional_access.a \
types/libabsl_bad_variant_access.a \
types/libabsl_bad_any_cast_impl.a \
numeric/libabsl_int128.a"
cd absl/
ar rcs /tmp/libabseil.a ${DEPS}
echo "Done; library available as /tmp/libabseil.a"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment