0
0
Fork 0
haikuports/dev-util/bear/bear-3.0.16.recipe

112 lines
3.6 KiB
Bash

SUMMARY="Automatically generate compilation database for Clang tooling"
DESCRIPTION="Bear records the flags passed to the compiler for each translation unit and \
stores them in a JSON file. This file can be used by Clang's tooling interface \
and programs like clang-check to process a translation unit.\
\
cmake supports the generation of JSON compilation databases out of the box. \
For any other build system that does not support this, Bear can be used \
instead to intercept the invocation of the compiler."
HOMEPAGE="https://github.com/rizsotto/Bear"
COPYRIGHT="2012-2021 by László Nagy"
LICENSE="GNU GPL v3"
REVISION="1"
SOURCE_URI="https://github.com/rizsotto/Bear/archive/$portVersion.tar.gz"
CHECKSUM_SHA256="877ee5e89e8445f74df95f2f3896597f04b86a4e5d0dbbca07ac71027dcb362d"
SOURCE_DIR="Bear-$portVersion"
PATCHES="bear-$portVersion.patchset"
ARCHITECTURES="all !x86_gcc2"
SECONDARY_ARCHITECTURES="?x86"
PROVIDES="
bear$secondaryArchSuffix = $portVersion
cmd:bear = $portVersion compat >= 3
cmd:citnames = $portVersion compat >= 3
cmd:intercept = $portVersion compat >= 3
"
REQUIRES="
haiku$secondaryArchSuffix
cmd:python2
lib:libabsl_bad_optional_access$secondaryArchSuffix
lib:libabsl_bad_variant_access$secondaryArchSuffix
lib:libabsl_base$secondaryArchSuffix
lib:libabsl_city$secondaryArchSuffix
lib:libabsl_civil_time$secondaryArchSuffix
lib:libabsl_cord$secondaryArchSuffix
lib:libabsl_debugging_internal$secondaryArchSuffix
lib:libabsl_demangle_internal$secondaryArchSuffix
lib:libabsl_exponential_biased$secondaryArchSuffix
lib:libabsl_graphcycles_internal$secondaryArchSuffix
lib:libabsl_hash$secondaryArchSuffix
lib:libabsl_hashtablez_sampler$secondaryArchSuffix
lib:libabsl_int128$secondaryArchSuffix
lib:libabsl_log_severity$secondaryArchSuffix
lib:libabsl_malloc_internal$secondaryArchSuffix
lib:libabsl_raw_hash_set$secondaryArchSuffix
lib:libabsl_raw_logging_internal$secondaryArchSuffix
lib:libabsl_spinlock_wait$secondaryArchSuffix
lib:libabsl_stacktrace$secondaryArchSuffix
lib:libabsl_status$secondaryArchSuffix
lib:libabsl_statusor$secondaryArchSuffix
lib:libabsl_strings$secondaryArchSuffix
lib:libabsl_strings_internal$secondaryArchSuffix
lib:libabsl_str_format_internal$secondaryArchSuffix
lib:libabsl_symbolize$secondaryArchSuffix
lib:libabsl_synchronization$secondaryArchSuffix
lib:libabsl_throw_delegate$secondaryArchSuffix
lib:libabsl_time$secondaryArchSuffix
lib:libabsl_time_zone$secondaryArchSuffix
lib:libabsl_wyhash$secondaryArchSuffix
lib:libaddress_sorting$secondaryArchSuffix
lib:libcares$secondaryArchSuffix
lib:libcrypto$secondaryArchSuffix
lib:libfmt$secondaryArchSuffix
lib:libgpr$secondaryArchSuffix
lib:libgrpc++$secondaryArchSuffix
lib:libgrpc$secondaryArchSuffix
lib:libprotobuf$secondaryArchSuffix
lib:libre2$secondaryArchSuffix
lib:libspdlog$secondaryArchSuffix
lib:libssl$secondaryArchSuffix
lib:libupb$secondaryArchSuffix
lib:libz$secondaryArchSuffix
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
devel:libfmt$secondaryArchSuffix
devel:libgrpc$secondaryArchSuffix
devel:libgtest$secondaryArchSuffix
devel:libspdlog$secondaryArchSuffix
devel:nlohmann_json$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:cmake
cmd:g++$secondaryArchSuffix
cmd:gcc$secondaryArchSuffix
cmd:ld$secondaryArchSuffix
cmd:make
cmd:pkg_config$secondaryArchSuffix
cmd:python2
"
BUILD()
{
cmake -B build -S . -DCMAKE_INSTALL_PREFIX=$prefix \
-DCMAKE_BUILD_TYPE=Release
unset -f cmake
cmake --build build $jobArgs
}
INSTALL()
{
unset -f cmake
cmake --install build
mkdir -vp $manDir
cp -vrd $prefix/share/man/man1 $manDir
mkdir -p $dataDir
mv -v $prefix/share $dataDir
}