openbsd-ports/devel/abseil-cpp/Makefile
2022-03-11 18:49:30 +00:00

126 lines
5.2 KiB
Makefile

COMMENT = abseil common libraries (c++)
REVISION = 2
CATEGORIES = devel
GH_ACCOUNT = abseil
GH_PROJECT = ${GH_ACCOUNT}-cpp
GH_TAGNAME = 20211102.0
HOMEPAGE = https://abseil.io/
MAINTAINER = Andrew Krasavin <noiseless-ak@yandex.ru>, \
Klemens Nanni <kn@openbsd.org>
# Apache 2.0
PERMIT_PACKAGE = Yes
SHARED_LIBS += absl_bad_any_cast_impl 0.0 # 2103.0.1
SHARED_LIBS += absl_bad_optional_access 0.0 # 2103.0.1
SHARED_LIBS += absl_bad_variant_access 0.0 # 2103.0.1
SHARED_LIBS += absl_base 0.0 # 2103.0.1
SHARED_LIBS += absl_city 0.0 # 2103.0.1
SHARED_LIBS += absl_civil_time 0.0 # 2103.0.1
SHARED_LIBS += absl_cord 0.0 # 2103.0.1
SHARED_LIBS += absl_cord_internal 0.0 # 2103.0.1
SHARED_LIBS += absl_cordz_functions 0.0 # 2103.0.1
SHARED_LIBS += absl_cordz_handle 0.0 # 2103.0.1
SHARED_LIBS += absl_cordz_info 0.0 # 2103.0.1
SHARED_LIBS += absl_cordz_sample_token 0.0 # 2103.0.1
SHARED_LIBS += absl_debugging_internal 0.0 # 2103.0.1
SHARED_LIBS += absl_demangle_internal 0.0 # 2103.0.1
SHARED_LIBS += absl_examine_stack 0.0 # 2103.0.1
SHARED_LIBS += absl_exponential_biased 0.0 # 2103.0.1
SHARED_LIBS += absl_failure_signal_handler 0.0 # 2103.0.1
SHARED_LIBS += absl_flags 0.0 # 2103.0.1
SHARED_LIBS += absl_flags_commandlineflag 0.0 # 2103.0.1
SHARED_LIBS += absl_flags_commandlineflag_internal 0.0 # 2103.0.1
SHARED_LIBS += absl_flags_config 0.0 # 2103.0.1
SHARED_LIBS += absl_flags_internal 0.0 # 2103.0.1
SHARED_LIBS += absl_flags_marshalling 0.0 # 2103.0.1
SHARED_LIBS += absl_flags_parse 0.0 # 2103.0.1
SHARED_LIBS += absl_flags_private_handle_accessor 0.0 # 2103.0.1
SHARED_LIBS += absl_flags_program_name 0.0 # 2103.0.1
SHARED_LIBS += absl_flags_reflection 0.0 # 2103.0.1
SHARED_LIBS += absl_flags_usage 0.0 # 2103.0.1
SHARED_LIBS += absl_flags_usage_internal 0.0 # 2103.0.1
SHARED_LIBS += absl_graphcycles_internal 0.0 # 2103.0.1
SHARED_LIBS += absl_hash 0.0 # 2103.0.1
SHARED_LIBS += absl_hashtablez_sampler 0.0 # 2103.0.1
SHARED_LIBS += absl_int128 0.0 # 2103.0.1
SHARED_LIBS += absl_leak_check 0.0 # 2103.0.1
SHARED_LIBS += absl_leak_check_disable 0.0 # 2103.0.1
SHARED_LIBS += absl_log_severity 0.0 # 2103.0.1
SHARED_LIBS += absl_low_level_hash 0.0 # 2103.0.1
SHARED_LIBS += absl_malloc_internal 0.0 # 2103.0.1
SHARED_LIBS += absl_periodic_sampler 0.0 # 2103.0.1
SHARED_LIBS += absl_random_distributions 0.0 # 2103.0.1
SHARED_LIBS += absl_random_internal_distribution_test_util 0.0 # 2103.0.1
SHARED_LIBS += absl_random_internal_platform 0.0 # 2103.0.1
SHARED_LIBS += absl_random_internal_pool_urbg 0.0 # 2103.0.1
SHARED_LIBS += absl_random_internal_randen 0.0 # 2103.0.1
SHARED_LIBS += absl_random_internal_randen_hwaes 0.0 # 2103.0.1
SHARED_LIBS += absl_random_internal_randen_hwaes_impl 0.0 # 2103.0.1
SHARED_LIBS += absl_random_internal_randen_slow 0.0 # 2103.0.1
SHARED_LIBS += absl_random_internal_seed_material 0.0 # 2103.0.1
SHARED_LIBS += absl_random_seed_gen_exception 0.0 # 2103.0.1
SHARED_LIBS += absl_random_seed_sequences 0.0 # 2103.0.1
SHARED_LIBS += absl_raw_hash_set 0.0 # 2103.0.1
SHARED_LIBS += absl_raw_logging_internal 0.0 # 2103.0.1
SHARED_LIBS += absl_scoped_set_env 0.0 # 2103.0.1
SHARED_LIBS += absl_spinlock_wait 0.0 # 2103.0.1
SHARED_LIBS += absl_stacktrace 0.0 # 2103.0.1
SHARED_LIBS += absl_status 0.0 # 2103.0.1
SHARED_LIBS += absl_statusor 0.0 # 2103.0.1
SHARED_LIBS += absl_str_format_internal 0.0 # 2103.0.1
SHARED_LIBS += absl_strerror 0.0 # 2103.0.1
SHARED_LIBS += absl_strings 0.0 # 2103.0.1
SHARED_LIBS += absl_strings_internal 0.0 # 2103.0.1
SHARED_LIBS += absl_symbolize 0.0 # 2103.0.1
SHARED_LIBS += absl_synchronization 0.0 # 2103.0.1
SHARED_LIBS += absl_throw_delegate 0.0 # 2103.0.1
SHARED_LIBS += absl_time 0.0 # 2103.0.1
SHARED_LIBS += absl_time_zone 0.0 # 2103.0.1
SHARED_LIBS += absl_wyhash 0.0 # 2103.0.1
# C++17
COMPILER = base-clang ports-gcc
COMPILER_LANGS= c++
WANTLIB = ${COMPILER_LIBCXX} m
MODULES = devel/cmake
CONFIGURE_ARGS += -DBUILD_SHARED_LIBS:BOOL=ON
# Force the same highest C++ standard because of ABI differences.
# https://github.com/abseil/abseil-cpp/issues/819
CONFIGURE_ARGS += -DCMAKE_CXX_STANDARD=17
# A future Abseil release will default ABSL_PROPAGATE_CXX_STD=ON
# for CMake >= 3.8. Abseil developers recommend enabling this option
# to ensure that our project builds correctly.
CONFIGURE_ARGS += -DABSL_PROPAGATE_CXX_STD:BOOL=ON
.if ${MACHINE_ARCH} == sparc64
# XXX hash/hash_test.cc:614:22: error: use of deleted function 'absl::lts_20211102::hash_internal::PoisonedHash::PoisonedHash()'
NO_TEST = Yes
.else
# use googletest from ports
CONFIGURE_ARGS += -DABSL_USE_EXTERNAL_GOOGLETEST:BOOL=${LOCALBASE}/include/gtest
# turn on tests builds
CONFIGURE_ARGS += -DBUILD_TESTING:BOOL=ON
BUILD_DEPENDS += devel/gtest>=1.11.0pl20220208
TEST_DEPENDS += devel/gtest>=1.11.0pl20220208
# use TEST_TMPDIR instead of /tmp for tests temp data (like in bazel build)
TEST_ENV += TEST_TMPDIR=${WRKBUILD}/test_tmp \
LD_LIBRARY_PATH=/usr/lib:${WRKBUILD}/test_lib
pre-test:
@mkdir -p ${WRKBUILD}/test_tmp
@mkdir -p ${WRKBUILD}/test_lib
cd ${WRKBUILD}/test_lib && \
find ${WRKBUILD} -name "*\.so\.*\.*" | xargs -I {} ln -s {} .
.endif
.include <bsd.port.mk>