Skip to content

Commit

Permalink
devel/lager: Add port
Browse files Browse the repository at this point in the history
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/
  • Loading branch information
BSDKaffee committed Oct 5, 2023
1 parent 8038f45 commit 0e25aec
Show file tree
Hide file tree
Showing 5 changed files with 122 additions and 0 deletions.
1 change: 1 addition & 0 deletions devel/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -1121,6 +1121,7 @@
SUBDIR += kyra
SUBDIR += kyua
SUBDIR += lab
SUBDIR += lager
SUBDIR += lasi
SUBDIR += lattice-ice40-examples-hx1k
SUBDIR += lattice-ice40-examples-hx8k
Expand Down
43 changes: 43 additions & 0 deletions devel/lager/Makefile
Original file line number Diff line number Diff line change
@@ -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 changes: 3 additions & 0 deletions devel/lager/distinfo
Original file line number Diff line number Diff line change
@@ -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 changes: 5 additions & 0 deletions devel/lager/pkg-descr
Original file line number Diff line number Diff line change
@@ -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 changes: 70 additions & 0 deletions devel/lager/pkg-plist
Original file line number Diff line number Diff line change
@@ -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

0 comments on commit 0e25aec

Please sign in to comment.