spdlog: define SPDLOG_FMT_EXTERNAL
This commit is contained in:
11
mingw-w64-spdlog/001-spdlog_fmt_external.patch
Normal file
11
mingw-w64-spdlog/001-spdlog_fmt_external.patch
Normal file
@@ -0,0 +1,11 @@
|
||||
--- a/include/spdlog/tweakme.h 2023-01-02 09:57:15.667781832 -0800
|
||||
+++ b/include/spdlog/tweakme.h 2023-01-02 09:57:17.761105926 -0800
|
||||
@@ -78,7 +78,7 @@
|
||||
// In this case spdlog will try to include <fmt/format.h> so set your -I flag
|
||||
// accordingly.
|
||||
//
|
||||
-// #define SPDLOG_FMT_EXTERNAL
|
||||
+#define SPDLOG_FMT_EXTERNAL
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
@@ -4,49 +4,77 @@ _realname=spdlog
|
||||
pkgbase=mingw-w64-${_realname}
|
||||
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
|
||||
pkgver=1.12.0
|
||||
pkgrel=2
|
||||
pkgrel=3
|
||||
pkgdesc='Very fast, header-only/compiled, C++ logging library (mingw-w64)'
|
||||
arch=('any')
|
||||
mingw_arch=('mingw32' 'mingw64' 'ucrt64' 'clang64' 'clang32' 'clangarm64')
|
||||
url='https://github.com/gabime/spdlog'
|
||||
license=('MIT')
|
||||
makedepends=("${MINGW_PACKAGE_PREFIX}-cmake"
|
||||
"${MINGW_PACKAGE_PREFIX}-cc")
|
||||
license=('spdx:MIT')
|
||||
makedepends=("${MINGW_PACKAGE_PREFIX}-cc"
|
||||
"${MINGW_PACKAGE_PREFIX}-cmake"
|
||||
"${MINGW_PACKAGE_PREFIX}-ninja")
|
||||
depends=("${MINGW_PACKAGE_PREFIX}-fmt")
|
||||
options=('staticlibs' '!strip' '!buildflags')
|
||||
source=("${_realname}-${pkgver}.tar.gz::https://github.com/gabime/spdlog/archive/v${pkgver}.tar.gz")
|
||||
sha256sums=('4dccf2d10f410c1e2feaff89966bfc49a1abb29ef6f08246335b110e001e09a9')
|
||||
source=("${_realname}-${pkgver}.tar.gz::https://github.com/gabime/spdlog/archive/v${pkgver}.tar.gz"
|
||||
001-spdlog_fmt_external.patch)
|
||||
sha256sums=('4dccf2d10f410c1e2feaff89966bfc49a1abb29ef6f08246335b110e001e09a9'
|
||||
'a0eb34b7c6920f0db2587460071f53372663c191cdfe34bf5ea2704c309c745f')
|
||||
|
||||
apply_patch_with_msg() {
|
||||
for _patch in "$@"
|
||||
do
|
||||
msg2 "Applying $_patch"
|
||||
patch -Nbp1 -i "${srcdir}/$_patch"
|
||||
done
|
||||
}
|
||||
|
||||
prepare() {
|
||||
cd "${srcdir}/${_realname}-${pkgver}"
|
||||
|
||||
# copied from https://gitlab.archlinux.org/archlinux/packaging/packages/spdlog/-/blob/189f1145/spdlog_fmt_external.patch
|
||||
apply_patch_with_msg \
|
||||
001-spdlog_fmt_external.patch
|
||||
|
||||
find . -name "*.orig" -exec rm -f {} \;
|
||||
}
|
||||
|
||||
build() {
|
||||
[[ -d "${srcdir}/build-${MINGW_CHOST}" ]] && rm -rf "${srcdir}/build-${MINGW_CHOST}"
|
||||
mkdir -p "${srcdir}/build-${MINGW_CHOST}" && cd "${srcdir}/build-${MINGW_CHOST}"
|
||||
mkdir -p "${srcdir}/build-${MSYSTEM}" && cd "${srcdir}/build-${MSYSTEM}"
|
||||
|
||||
declare -a _extra_config
|
||||
if check_option "debug" "n"; then
|
||||
_extra_config+=("-DCMAKE_BUILD_TYPE=Release")
|
||||
else
|
||||
_extra_config+=("-DCMAKE_BUILD_TYPE=Debug")
|
||||
fi
|
||||
|
||||
MSYS2_ARG_CONV_EXCL="-DCMAKE_INSTALL_PREFIX=" \
|
||||
${MINGW_PREFIX}/bin/cmake \
|
||||
-G"MSYS Makefiles" \
|
||||
-G"Ninja" \
|
||||
-DCMAKE_INSTALL_PREFIX=${MINGW_PREFIX} \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
"${_extra_config[@]}" \
|
||||
-DSPDLOG_BUILD_BENCH=OFF \
|
||||
-DSPDLOG_BUILD_EXAMPLE=OFF \
|
||||
-DSPDLOG_BUILD_TESTS=ON \
|
||||
-DSPDLOG_BUILD_TESTS=OFF \
|
||||
-DSPDLOG_FMT_EXTERNAL=ON \
|
||||
-DSPDLOG_BUILD_SHARED=ON \
|
||||
-DCMAKE_RUNTIME_OUTPUT_DIRECTORY="${srcdir}/build-${MINGW_CHOST}" \
|
||||
-DCMAKE_RUNTIME_OUTPUT_DIRECTORY="${srcdir}/build-${MSYSTEM}" \
|
||||
../${_realname}-${pkgver}
|
||||
|
||||
make
|
||||
${MINGW_PREFIX}/bin/cmake --build .
|
||||
}
|
||||
|
||||
check() {
|
||||
cd "${srcdir}/build-${MINGW_CHOST}"
|
||||
cd "${srcdir}/build-${MSYSTEM}"
|
||||
${MINGW_PREFIX}/bin/cmake -DSPDLOG_BUILD_TESTS=ON ../${_realname}-${pkgver}
|
||||
${MINGW_PREFIX}/bin/cmake --build .
|
||||
|
||||
make test || true
|
||||
${MINGW_PREFIX}/bin/ctest || true
|
||||
}
|
||||
|
||||
package() {
|
||||
cd "${srcdir}/build-${MINGW_CHOST}"
|
||||
cd "${srcdir}/build-${MSYSTEM}"
|
||||
|
||||
make DESTDIR="${pkgdir}" install
|
||||
DESTDIR="${pkgdir}" ${MINGW_PREFIX}/bin/cmake --install .
|
||||
|
||||
install -Dm644 "${srcdir}/${_realname}-${pkgver}/LICENSE" -t "${pkgdir}${MINGW_PREFIX}/share/licenses/${_realname}/"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user