blob: 68393ab9e9ac55b083919aa35895e739efb90a31 [file]
EXTRA_OECMAKE:append:gbmc = " -DCMAKE_CXX_STANDARD=17"
FILESEXTRAPATHS:prepend:gbmc := "${THISDIR}/${PN}:"
SRC_URI:append:gbmc = " file://0001-Set-NDEBUG-to-true-to-avoid-DebugOnlyChecks.patch"
CFLAGS += "-ffunction-sections -fdata-sections"
CXXFLAGS += "-ffunction-sections -fdata-sections"
LDFLAGS += "-Wl,--gc-sections"
EXTRA_OECMAKE += " \
-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON \
"
# Do not append all ~90 libabsl-* packages to RDEPENDS:${PN}.
# BitBake's automatic shlibdeps (package_do_shlibs) scans DT_NEEDED entries
# of all target binaries/libraries and installs only the exact libabsl-*
# packages required at runtime, avoiding 16 unreferenced test/debug/profiler
# shared libraries (~1.08 MB on aarch64).
python split_dynamic_packages() {
libdir = d.getVar('libdir')
do_split_packages(
d,
root=libdir,
file_regex=r'^libabsl_(.*)\.so\..*$',
output_pattern='libabsl-%s',
description="abseil shared library %s",
prepend=True,
extra_depends='',
)
}