diff options
author | Steffen Winter <steffen.winter@proton.me> | 2024-02-07 13:37:37 +0100 |
---|---|---|
committer | Steffen Winter <steffen.winter@proton.me> | 2024-02-07 13:48:20 +0100 |
commit | 6d97df2fd2ae412ee0cf1d4ff84f47b148acf0e4 (patch) | |
tree | 8248050010da0e87d059cea3b29add533798e008 /dev-cpp/scnlib | |
parent | dev-cpp/simdutf: new package, add 4.0.9 (diff) | |
download | guru-6d97df2fd2ae412ee0cf1d4ff84f47b148acf0e4.tar.gz guru-6d97df2fd2ae412ee0cf1d4ff84f47b148acf0e4.tar.bz2 guru-6d97df2fd2ae412ee0cf1d4ff84f47b148acf0e4.zip |
dev-cpp/scnlib: new package, add 2.0.0
Signed-off-by: Steffen Winter <steffen.winter@proton.me>
Diffstat (limited to 'dev-cpp/scnlib')
-rw-r--r-- | dev-cpp/scnlib/Manifest | 1 | ||||
-rw-r--r-- | dev-cpp/scnlib/files/scnlib-2.0.0-no-external-test-deps.patch | 59 | ||||
-rw-r--r-- | dev-cpp/scnlib/metadata.xml | 11 | ||||
-rw-r--r-- | dev-cpp/scnlib/scnlib-2.0.0.ebuild | 42 |
4 files changed, 113 insertions, 0 deletions
diff --git a/dev-cpp/scnlib/Manifest b/dev-cpp/scnlib/Manifest new file mode 100644 index 000000000..d9e97204c --- /dev/null +++ b/dev-cpp/scnlib/Manifest @@ -0,0 +1 @@ +DIST scnlib-2.0.0.tar.gz 517424 BLAKE2B 152b2b8510c3ab523349e00b5a139c2ea0e6cc234221eb5a472d746ba2b2d176ec9e6515601578b590c9b2d9cb97a136dcf361f73a56c672b3dfd00350a39f60 SHA512 5bca5a43dce9be019775a0cac64945c4b4cdadbecfa8d8e0889b6ed888c3a37ae757aa5d8d60d40418d0058641a40ab6dce35a1de84e9a9a2a6f5b4d12bceed4 diff --git a/dev-cpp/scnlib/files/scnlib-2.0.0-no-external-test-deps.patch b/dev-cpp/scnlib/files/scnlib-2.0.0-no-external-test-deps.patch new file mode 100644 index 000000000..e78ba0a2a --- /dev/null +++ b/dev-cpp/scnlib/files/scnlib-2.0.0-no-external-test-deps.patch @@ -0,0 +1,59 @@ +diff --git a/cmake/dependencies.cmake b/cmake/dependencies.cmake +index ae2832b..c250eff 100644 +--- a/cmake/dependencies.cmake ++++ b/cmake/dependencies.cmake +@@ -4,41 +4,10 @@ set(SCN_OPTIONAL_DEPENDENCIES "") + + if (SCN_TESTS) + # GTest +- +- FetchContent_Declare( +- googletest +- GIT_REPOSITORY https://github.com/google/googletest.git +- GIT_TAG main +- GIT_SHALLOW TRUE +- ) +- +- # gtest CMake does some flag overriding we don't want, and it's also quite heavy +- # Do it manually +- +- set(gtest_force_shared_crt ON CACHE BOOL "" FORCE) +- +- FetchContent_GetProperties(googletest) +- if (NOT googletest) +- FetchContent_Populate(googletest) +- endif () +- +- find_package(Threads) +- +- add_library(scn_gtest +- "${googletest_SOURCE_DIR}/googletest/src/gtest-all.cc" +- "${googletest_SOURCE_DIR}/googlemock/src/gmock-all.cc" +- ) +- target_include_directories(scn_gtest SYSTEM +- PUBLIC +- "${googletest_SOURCE_DIR}/googletest/include" +- "${googletest_SOURCE_DIR}/googlemock/include" +- PRIVATE +- "${googletest_SOURCE_DIR}/googletest" +- "${googletest_SOURCE_DIR}/googlemock" +- ) +- target_link_libraries(scn_gtest PRIVATE Threads::Threads) +- target_compile_features(scn_gtest PUBLIC cxx_std_17) +- target_compile_options(scn_gtest PRIVATE $<$<CXX_COMPILER_ID:GNU>: -Wno-psabi>) ++ find_package(GTest REQUIRED) ++ add_library(scn_gtest INTERFACE) ++ target_link_libraries(scn_gtest INTERFACE GTest::GTest) ++ target_compile_features(scn_gtest INTERFACE cxx_std_17) + endif () + + if (SCN_BENCHMARKS) +@@ -158,8 +127,3 @@ if (SCN_REGEX_BACKEND STREQUAL "re2") + set(SCN_REGEX_BACKEND_TARGET re2::re2) + endif () + +-# make available +- +-FetchContent_MakeAvailable( +- ${SCN_OPTIONAL_DEPENDENCIES} +-) diff --git a/dev-cpp/scnlib/metadata.xml b/dev-cpp/scnlib/metadata.xml new file mode 100644 index 000000000..3eb942df4 --- /dev/null +++ b/dev-cpp/scnlib/metadata.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>stffn.mobil@freenet.de</email> + <name>Steffen Winter</name> + </maintainer> + <upstream> + <remote-id type="github">eliaskosunen/scnlib</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-cpp/scnlib/scnlib-2.0.0.ebuild b/dev-cpp/scnlib/scnlib-2.0.0.ebuild new file mode 100644 index 000000000..157adc51d --- /dev/null +++ b/dev-cpp/scnlib/scnlib-2.0.0.ebuild @@ -0,0 +1,42 @@ +# Copyright 2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake + +DESCRIPTION="scanf for modern C++ " +HOMEPAGE="https://scnlib.dev/" +SRC_URI="https://github.com/eliaskosunen/scnlib/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64" +IUSE="test" + +BDEPEND=" + dev-cpp/fast_float + >=dev-cpp/simdutf-4.0.0:= + test? ( dev-cpp/gtest ) +" + +RESTRICT="!test? ( test )" + +src_prepare() { + use test && eapply "${FILESDIR}/${P}-no-external-test-deps.patch" + cmake_src_prepare +} + +src_configure() { + local mycmakeargs=( + -DSCN_BENCHMARKS=OFF + -DSCN_BENCHMARKS_BINARYSIZE=OFF + -DSCN_BENCHMARKS_BUILDTIME=OFF + -DSCN_DOCS=OFF + -DSCN_EXAMPLES=$(usex test ON OFF) + -DSCN_TESTS=$(usex test ON OFF) + -DSCN_USE_EXTERNAL_FAST_FLOAT=ON + -DSCN_USE_EXTERNAL_SIMDUTF=ON + ) + cmake_src_configure +} |