devel/lager: Add port

Lager is a C++ library to assist value-oriented design by implementing
the unidirectional data-flow architecture. It is heavily inspired by
Elm and Redux, and enables composable designs by promoting the use of
simple value types and testable application logic via pure functions.
And you get time-travel for free!

https://sinusoid.es/lager/
This commit is contained in:
Jason E. Hale 2023-10-05 00:15:03 -04:00
parent 8038f458a5
commit 0e25aeca34
5 changed files with 122 additions and 0 deletions

View File

@ -1121,6 +1121,7 @@
SUBDIR += kyra
SUBDIR += kyua
SUBDIR += lab
SUBDIR += lager
SUBDIR += lasi
SUBDIR += lattice-ice40-examples-hx1k
SUBDIR += lattice-ice40-examples-hx8k

43
devel/lager/Makefile Normal file
View File

@ -0,0 +1,43 @@
PORTNAME= lager
DISTVERSIONPREFIX= v
DISTVERSION= 0.1.0
CATEGORIES= devel
MAINTAINER= jhale@FreeBSD.org
COMMENT= Redux for C++
WWW= https://sinusoid.es/lager/
LICENSE= BSL
LICENSE_FILE= ${WRKSRC}/LICENSE
RUN_DEPENDS= boost-libs>=0:devel/boost-libs \
immer>=0:devel/immer \
zug>=0:devel/zug
USES= cmake
USE_GITHUB= yes
GH_ACCOUNT= arximboldi
CMAKE_ON= DISABLE_WERROR
CMAKE_OFF= lager_BUILD_DOCS \
lager_BUILD_EXAMPLES
NO_ARCH= yes
OPTIONS_DEFINE= TEST
TEST_BUILD_DEPENDS= boost-libs>=0:devel/boost-libs \
catch>=0:devel/catch \
cereal>=0:devel/cereal \
immer>=0:devel/immer \
sdl2>=0:devel/sdl20 \
sdl2_ttf>=0:graphics/sdl2_ttf \
zug>=0:devel/zug
TEST_USES= compiler:c++14-lang pkgconfig qt:5
TEST_USE= QT=buildtools:build,concurrent:build,core:build,declarative:build,qmake:build
TEST_CMAKE_BOOL= lager_BUILD_TESTS
TEST_ALL_TARGET= install tests
TEST_ALL_TARGET_OFF= install
TEST_TEST_TARGET= test
.include <bsd.port.mk>

3
devel/lager/distinfo Normal file
View File

@ -0,0 +1,3 @@
TIMESTAMP = 1696426150
SHA256 (arximboldi-lager-v0.1.0_GH0.tar.gz) = bec57bddd16a35d8ebbba8b94ba90e3a7ba96d740da542025aea70c925ac8084
SIZE (arximboldi-lager-v0.1.0_GH0.tar.gz) = 793997

5
devel/lager/pkg-descr Normal file
View File

@ -0,0 +1,5 @@
Lager is a C++ library to assist value-oriented design by implementing
the unidirectional data-flow architecture. It is heavily inspired by
Elm and Redux, and enables composable designs by promoting the use of
simple value types and testable application logic via pure functions.
And you get time-travel for free!

70
devel/lager/pkg-plist Normal file
View File

@ -0,0 +1,70 @@
include/lager/commit.hpp
include/lager/config.hpp
include/lager/constant.hpp
include/lager/context.hpp
include/lager/cursor.hpp
include/lager/debug/debugger.hpp
include/lager/debug/http_server.hpp
include/lager/debug/tree_debugger.hpp
include/lager/deps.hpp
include/lager/detail/access.hpp
include/lager/detail/lens_nodes.hpp
include/lager/detail/merge_nodes.hpp
include/lager/detail/no_value.hpp
include/lager/detail/nodes.hpp
include/lager/detail/signal.hpp
include/lager/detail/smart_lens.hpp
include/lager/detail/xform_nodes.hpp
include/lager/effect.hpp
include/lager/event_loop/boost_asio.hpp
include/lager/event_loop/manual.hpp
include/lager/event_loop/qml.hpp
include/lager/event_loop/qt.hpp
include/lager/event_loop/queue.hpp
include/lager/event_loop/safe_queue.hpp
include/lager/event_loop/sdl.hpp
include/lager/extra/cereal/enum.hpp
include/lager/extra/cereal/immer_array.hpp
include/lager/extra/cereal/immer_box.hpp
include/lager/extra/cereal/immer_flex_vector.hpp
include/lager/extra/cereal/immer_map.hpp
include/lager/extra/cereal/immer_set.hpp
include/lager/extra/cereal/immer_vector.hpp
include/lager/extra/cereal/inline.hpp
include/lager/extra/cereal/json.hpp
include/lager/extra/cereal/optional_nvp.hpp
include/lager/extra/cereal/struct.hpp
include/lager/extra/cereal/tuple.hpp
include/lager/extra/cereal/variant_with_name.hpp
include/lager/extra/derive.hpp
include/lager/extra/derive/cereal.hpp
include/lager/extra/derive/eq.hpp
include/lager/extra/derive/hana.hpp
include/lager/extra/derive/hash.hpp
include/lager/extra/derive/size_check.hpp
include/lager/extra/enum.hpp
include/lager/extra/qt.hpp
include/lager/extra/struct.hpp
include/lager/future.hpp
include/lager/lens.hpp
include/lager/lenses.hpp
include/lager/lenses/at.hpp
include/lager/lenses/at_or.hpp
include/lager/lenses/attr.hpp
include/lager/lenses/optional.hpp
include/lager/lenses/tuple.hpp
include/lager/lenses/unbox.hpp
include/lager/lenses/variant.hpp
include/lager/reader.hpp
include/lager/resources_path.hpp
include/lager/resources_path.hpp.in
include/lager/sensor.hpp
include/lager/setter.hpp
include/lager/state.hpp
include/lager/store.hpp
include/lager/tags.hpp
include/lager/util.hpp
include/lager/watch.hpp
include/lager/with.hpp
include/lager/writer.hpp
lib/cmake/Lager/LagerConfig.cmake