summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGasol Wu <gasol.wu@gmail.com>2022-01-07 13:00:37 +0100
committerFernando ApesteguĂ­a <fernape@FreeBSD.org>2022-01-07 14:02:12 +0100
commit3fe667d96d5e7a841cc2acc4bde5f288e3e1c9da (patch)
treeb8fc647473432cc1b47954cf548c7437ed4da943
parentdevel/got: update to 0.65 (diff)
devel/c4core: New port: Library of low-level C++ utilities
c4core is a library of low-level C++ utilities, written with low-latency projects in mind. This is a dependency for a new port (devel/rapidyaml) which in turn is needed for the new upcoming version of devel/jsonnet. PR: 260996 Reported by: gasol.wu@gmail.com (maintainer)
-rw-r--r--devel/Makefile1
-rw-r--r--devel/c4core/Makefile26
-rw-r--r--devel/c4core/distinfo9
-rw-r--r--devel/c4core/files/patch-CMakeLists.txt10
-rw-r--r--devel/c4core/files/patch-src_c4_std_string__fwd.hpp11
-rw-r--r--devel/c4core/files/patch-src_c4_std_vector__fwd.hpp15
-rw-r--r--devel/c4core/pkg-descr4
-rw-r--r--devel/c4core/pkg-plist53
8 files changed, 129 insertions, 0 deletions
diff --git a/devel/Makefile b/devel/Makefile
index f7c28dccf0aa..1654b969b3b0 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -300,6 +300,7 @@
SUBDIR += byacc
SUBDIR += byaccj
SUBDIR += c2mdoc
+ SUBDIR += c4core
SUBDIR += caf
SUBDIR += calibrator
SUBDIR += capnproto
diff --git a/devel/c4core/Makefile b/devel/c4core/Makefile
new file mode 100644
index 000000000000..7fd36a862e62
--- /dev/null
+++ b/devel/c4core/Makefile
@@ -0,0 +1,26 @@
+PORTNAME= c4core
+DISTVERSIONPREFIX= v
+DISTVERSION= 0.1.8
+CATEGORIES= devel
+
+MAINTAINER= gasol.wu@gmail.com
+COMMENT= Library of low-level C++ utilities
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/LICENSE.txt
+
+BUILD_DEPENDS= git:devel/git@lite
+
+USES= compiler:c++11-lib cmake:noninja
+
+USE_GITHUB= yes
+GH_ACCOUNT= biojppm
+GH_PROJECT= cmake:cmake debugbreak:debugbreak fast_float:fast_float
+GH_SUBDIR= cmake:cmake src/c4/ext/debugbreak:debugbreak src/c4/ext/fast_float:fast_float
+GH_TAGNAME= 9416f29:cmake 5dcbe41:debugbreak 052975d:fast_float
+
+CMAKE_ON= BUILD_SHARED_LIBS
+
+PLIST_SUB= PORTVERSION=${PORTVERSION}
+
+.include <bsd.port.mk>
diff --git a/devel/c4core/distinfo b/devel/c4core/distinfo
new file mode 100644
index 000000000000..7910120bf386
--- /dev/null
+++ b/devel/c4core/distinfo
@@ -0,0 +1,9 @@
+TIMESTAMP = 1641428715
+SHA256 (biojppm-c4core-v0.1.8_GH0.tar.gz) = 4b219ebd8957c338edf00be0a55254725cb527fb05e3917bd3ee8e158ba23bf6
+SIZE (biojppm-c4core-v0.1.8_GH0.tar.gz) = 202602
+SHA256 (biojppm-cmake-9416f29_GH0.tar.gz) = 4c4b47dec40782866deb56df29a93b89eec059a2b368d3ad72aed85b810109d8
+SIZE (biojppm-cmake-9416f29_GH0.tar.gz) = 121012
+SHA256 (biojppm-debugbreak-5dcbe41_GH0.tar.gz) = d6f80346d3c712a174faaece2cc64e5600d1142ff77f802ce46b474601d1fe2b
+SIZE (biojppm-debugbreak-5dcbe41_GH0.tar.gz) = 7030
+SHA256 (biojppm-fast_float-052975d_GH0.tar.gz) = e2e699795934cdb83c3acc0db5f349e200019a4ba8fd4d0e6191a638f62d85c7
+SIZE (biojppm-fast_float-052975d_GH0.tar.gz) = 75689
diff --git a/devel/c4core/files/patch-CMakeLists.txt b/devel/c4core/files/patch-CMakeLists.txt
new file mode 100644
index 000000000000..4cbafd9718c8
--- /dev/null
+++ b/devel/c4core/files/patch-CMakeLists.txt
@@ -0,0 +1,10 @@
+--- CMakeLists.txt.orig 2022-01-06 20:06:58 UTC
++++ CMakeLists.txt
+@@ -60,7 +60,6 @@ set(C4CORE_SRC_FILES
+ c4/windows.hpp
+ c4/windows_pop.hpp
+ c4/windows_push.hpp
+- c4/c4core.natvis
+ #
+ c4/ext/debugbreak/debugbreak.h
+ c4/ext/rng/rng.hpp
diff --git a/devel/c4core/files/patch-src_c4_std_string__fwd.hpp b/devel/c4core/files/patch-src_c4_std_string__fwd.hpp
new file mode 100644
index 000000000000..1e06b878c1e3
--- /dev/null
+++ b/devel/c4core/files/patch-src_c4_std_string__fwd.hpp
@@ -0,0 +1,11 @@
+--- src/c4/std/string_fwd.hpp.orig 2022-01-06 01:20:26 UTC
++++ src/c4/std/string_fwd.hpp
+@@ -14,7 +14,7 @@
+ // forward declarations for std::string
+ #if defined(__GLIBCXX__) || defined(__GLIBCPP__)
+ #include <bits/stringfwd.h> // use the fwd header in glibcxx
+-#elif defined(_LIBCPP_VERSION) || defined(__APPLE_CC__)
++#elif defined(_LIBCPP_VERSION) || defined(__APPLE_CC__) || __cplusplus > 199711L
+ #include <iosfwd> // use the fwd header in stdlibc++
+ #elif defined(_MSC_VER)
+ //! @todo is there a fwd header in msvc?
diff --git a/devel/c4core/files/patch-src_c4_std_vector__fwd.hpp b/devel/c4core/files/patch-src_c4_std_vector__fwd.hpp
new file mode 100644
index 000000000000..aabe47253a37
--- /dev/null
+++ b/devel/c4core/files/patch-src_c4_std_vector__fwd.hpp
@@ -0,0 +1,15 @@
+--- src/c4/std/vector_fwd.hpp.orig 2022-01-06 01:17:58 UTC
++++ src/c4/std/vector_fwd.hpp
+@@ -8,12 +8,10 @@
+ // forward declarations for std::vector
+ #if defined(__GLIBCXX__) || defined(__GLIBCPP__) || defined(_MSC_VER)
+ namespace std {
+-template<typename> class allocator;
+ template<typename T, typename Alloc> class vector;
+ } // namespace std
+ #elif defined(_LIBCPP_VERSION)
+ namespace std {
+-template<typename> class allocator;
+ #if defined(__EMSCRIPTEN__)
+ inline namespace __2 {
+ template<typename T, typename Alloc> class vector;
diff --git a/devel/c4core/pkg-descr b/devel/c4core/pkg-descr
new file mode 100644
index 000000000000..8cc200a37cba
--- /dev/null
+++ b/devel/c4core/pkg-descr
@@ -0,0 +1,4 @@
+c4core is a library of low-level C++ utilities, written with low-latency
+projects in mind.
+
+WWW: https://github.com/biojppm/c4core
diff --git a/devel/c4core/pkg-plist b/devel/c4core/pkg-plist
new file mode 100644
index 000000000000..d4cbb5124baf
--- /dev/null
+++ b/devel/c4core/pkg-plist
@@ -0,0 +1,53 @@
+include/c4/allocator.hpp
+include/c4/base64.hpp
+include/c4/bitmask.hpp
+include/c4/blob.hpp
+include/c4/c4_pop.hpp
+include/c4/c4_push.hpp
+include/c4/char_traits.hpp
+include/c4/charconv.hpp
+include/c4/common.hpp
+include/c4/compiler.hpp
+include/c4/config.hpp
+include/c4/cpu.hpp
+include/c4/ctor_dtor.hpp
+include/c4/enum.hpp
+include/c4/error.hpp
+include/c4/export.hpp
+include/c4/ext/debugbreak/debugbreak.h
+include/c4/ext/fast_float.hpp
+include/c4/ext/fast_float_all.h
+include/c4/ext/rng/rng.hpp
+include/c4/ext/sg14/inplace_function.h
+include/c4/format.hpp
+include/c4/hash.hpp
+include/c4/language.hpp
+include/c4/memory_resource.hpp
+include/c4/memory_util.hpp
+include/c4/platform.hpp
+include/c4/preprocessor.hpp
+include/c4/restrict.hpp
+include/c4/span.hpp
+include/c4/std/std.hpp
+include/c4/std/std_fwd.hpp
+include/c4/std/string.hpp
+include/c4/std/string_fwd.hpp
+include/c4/std/tuple.hpp
+include/c4/std/vector.hpp
+include/c4/std/vector_fwd.hpp
+include/c4/substr.hpp
+include/c4/substr_fwd.hpp
+include/c4/szconv.hpp
+include/c4/time.hpp
+include/c4/type_name.hpp
+include/c4/types.hpp
+include/c4/unrestrict.hpp
+include/c4/windows.hpp
+include/c4/windows_pop.hpp
+include/c4/windows_push.hpp
+lib/cmake/c4core/c4coreConfig.cmake
+lib/cmake/c4core/c4coreConfigVersion.cmake
+lib/cmake/c4core/c4coreTargets-%%CMAKE_BUILD_TYPE%%.cmake
+lib/cmake/c4core/c4coreTargets.cmake
+lib/libc4core.so
+lib/libc4core.so.%%PORTVERSION%%