sm-commit AT lists.ibiblio.org
Subject: Source Mage code commit list
List archive
[SM-Commit] GIT changes to master grimoire by Pavel Vinogradov (6634c6f70305da98073a63429c5a30a12a102c01)
- From: Pavel Vinogradov <scm AT sourcemage.org>
- To: sm-commit AT lists.ibiblio.org
- Subject: [SM-Commit] GIT changes to master grimoire by Pavel Vinogradov (6634c6f70305da98073a63429c5a30a12a102c01)
- Date: Wed, 29 Nov 2023 03:23:57 +0000
GIT changes to master grimoire by Pavel Vinogradov <public AT sourcemage.org>:
ChangeLog | 3 +++
wm-addons/libsrm/BUILD | 37 +++++++++++++++++++++++++++++++++++++
wm-addons/libsrm/CONFIGURE | 7 +++++++
wm-addons/libsrm/DEPENDS | 16 ++++++++++++++++
wm-addons/libsrm/DETAILS | 36 ++++++++++++++++++++++++++++++++++++
wm-addons/libsrm/HISTORY | 4 ++++
wm-addons/libsrm/INSTALL | 16 ++++++++++++++++
wm-addons/libsrm/PREPARE | 2 ++
wm-addons/louvre/DEPENDS | 2 +-
wm-addons/louvre/HISTORY | 3 +++
10 files changed, 125 insertions(+), 1 deletion(-)
New commits:
commit 6634c6f70305da98073a63429c5a30a12a102c01
Author: Pavel Vinogradov <public AT sourcemage.org>
Commit: Pavel Vinogradov <public AT sourcemage.org>
wm-addons/louvre: needs libsrm, not srm
commit ba2f67c7b56fec0d4ca20a4a716b2e4a2295d030
Author: Pavel Vinogradov <public AT sourcemage.org>
Commit: Pavel Vinogradov <public AT sourcemage.org>
wm-addons/libsrm: new spell, Simple Rendering Manager
diff --git a/ChangeLog b/ChangeLog
index 2d77122..4306be4 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,6 @@
+2023-11-28 Pavel Vinogradov <public AT sourcemage.org>
+ * wm-addons/libsrm: new spell, Simple Rendering Manager
+
2023-11-26 Pavel Vinogradov <public AT sourcemage.org>
* shell-term-fm/ytree: new spell, UNIX Filemanager
diff --git a/wm-addons/libsrm/BUILD b/wm-addons/libsrm/BUILD
new file mode 100755
index 0000000..2e833d3
--- /dev/null
+++ b/wm-addons/libsrm/BUILD
@@ -0,0 +1,37 @@
+OPTS="${LIBSRM_OPTS} ${OPTS}" &&
+
+local PREFIX=${PREFIX:-/usr} &&
+local MESON_BUILD_TYPE="${MESON_BUILD_TYPE:-release}" &&
+
+local MESON_BUILD &&
+local MESON_OPTS &&
+local BUILDER &&
+local BUILDER_OPTS="-j ${MAKE_NJOBS} -C builddir/" &&
+
+if [[ $(get_spell_provider ${SPELL} MESON-BUILD) == muon ]]; then
+ MESON_BUILD="muon setup" &&
+
+ OPTS="prefix=${INSTALL_ROOT}${PREFIX} buildtype=${MESON_BUILD_TYPE}
default_library=shared libdir=lib ${OPTS}"
+else
+ MESON_BUILD="meson setup"
+ MESON_OPTS="--prefix ${INSTALL_ROOT}${PREFIX} --buildtype
${MESON_BUILD_TYPE} --default-library shared --libdir lib
+"
+fi &&
+
+if ! is_depends_enabled ${SPELL} $(get_spell_provider ${SPELL} NINJA-BUILD);
then
+ BUILDER="muon samu"
+elif [[ $(get_spell_provider ${SPELL} NINJA-BUILD) == samurai ]]; then
+ BUILDER="samu"
+else
+ BUILDER="ninja"
+fi &&
+
+for MO in $OPTS; do
+ MESON_OPTS+=" -D${MO}"
+done &&
+
+cd "${SOURCE_DIRECTORY}/src" &&
+
+${MESON_BUILD} ${MESON_OPTS} builddir/ &&
+
+${BUILDER} ${BUILDER_OPTS}
diff --git a/wm-addons/libsrm/CONFIGURE b/wm-addons/libsrm/CONFIGURE
new file mode 100755
index 0000000..e9e8fd6
--- /dev/null
+++ b/wm-addons/libsrm/CONFIGURE
@@ -0,0 +1,7 @@
+. "${GRIMOIRE}/MESON_CONFIGURE" &&
+
+config_query_option LIBSRM_OPTS "Build examples?" n \
+ "build_examples=true" "build_examples=false" &&
+\
+config_query_option LIBSRM_OPTS "Build tests?" n \
+ "build_tests=true" "build_tests=false"
diff --git a/wm-addons/libsrm/DEPENDS b/wm-addons/libsrm/DEPENDS
new file mode 100755
index 0000000..815bb56
--- /dev/null
+++ b/wm-addons/libsrm/DEPENDS
@@ -0,0 +1,16 @@
+. "${GRIMOIRE}/MESON_DEPENDS" &&
+
+if [[ "${LIBSRM_BRANCH}" == "scm" ]]; then
+ depends git
+fi &&
+
+depends hwdata &&
+depends libdisplay-info &&
+depends DEVICE-MANAGER &&
+depends libdrm &&
+depends OPENGL &&
+
+if list_find "${LIBSRM_OPTS}" "build_examples=true"; then
+ depends libinput &&
+ depends seat
+fi
diff --git a/wm-addons/libsrm/DETAILS b/wm-addons/libsrm/DETAILS
new file mode 100755
index 0000000..34b34c3
--- /dev/null
+++ b/wm-addons/libsrm/DETAILS
@@ -0,0 +1,36 @@
+. "${GRIMOIRE}/FUNCTIONS"
+. "${GRIMOIRE}/MESON_FUNCTIONS"
+ SPELL="libsrm"
+if [[ "${LIBSRM_BRANCH}" == "scm" ]]; then
+ VERSION="$(get_scm_version)"
+ SOURCE="${SPELL}-scm.tar.xz"
+SOURCE_DIRECTORY="${BUILD_DIRECTORY}/${SPELL}-scm"
+ SOURCE_URL[0]="git_http://github.com/CuarzoSoftware/SRM:${SPELL}-scm:main"
+ SOURCE_IGNORE="volatile"
+ FORCE_DOWNLOAD="on"
+else
+ VERSION="0.3.2-2"
+
SOURCE_HASH="sha512:c77c044e2c20118019374df5537b2b6b1e7e4633a2e582e56147e01abcff8f8320219d42f20981ac746e4e2bc7d57c636852783d61e32e1a5c3cfbb11c01afe2"
+ SOURCE="${SPELL}-${VERSION}.tar.gz"
+
SOURCE_URL[0]="https://github.com/CuarzoSoftware/SRM/archive/refs/tags/v${VERSION}.tar.gz"
+# Watch: https://github.com/CuarzoSoftware/SRM/tags tags/v([0-9.\-]+)[.]tar
+SOURCE_DIRECTORY="${BUILD_DIRECTORY}/SRM-${VERSION}"
+fi
+ WEB_SITE="https://cuarzosoftware.github.io/SRM/index.html"
+ ENTERED="20231128"
+ LICENSE[0]="MIT"
+ KEYWORDS="rendering manager library"
+ SHORT="Simple Rendering Manager"
+cat << EOF
+SRM is a C library that simplifies the development of Linux DRM/KMS
+applications.
+
+With SRM, you can focus on the OpenGL ES 2.0 logic of your application.
+For each available display, you can start a rendering thread that triggers
+common events like initializeGL(), paintGL(), resizeGL(), pageFlipped() and
+uninitializeGL().
+
+SRM allows you to use multiple GPUs simultaneously and automatically finds
the
+most efficient configuration. It also offers functions for creating OpenGL
+textures, which are automatically shared among GPUs.
+EOF
diff --git a/wm-addons/libsrm/HISTORY b/wm-addons/libsrm/HISTORY
new file mode 100644
index 0000000..3438aab
--- /dev/null
+++ b/wm-addons/libsrm/HISTORY
@@ -0,0 +1,4 @@
+2023-11-28 Pavel Vinogradov <public AT sourcemage.org>
+ * BUILD, CONFIGURE, DEPENDS, DETAILS, PREPARE, INSTALL: created the
spell,
+ version 0.3.2-2
+
diff --git a/wm-addons/libsrm/INSTALL b/wm-addons/libsrm/INSTALL
new file mode 100755
index 0000000..3f483d6
--- /dev/null
+++ b/wm-addons/libsrm/INSTALL
@@ -0,0 +1,16 @@
+cd "${SOURCE_DIRECTORY}/src" &&
+local MESON_INSTALL &&
+local MESON_OPTS &&
+local EXTRA_OPTS="${@}" &&
+
+if [[ $(get_spell_provider ${SPELL} MESON-BUILD) == muon ]]; then
+ MESON_INSTALL="muon"
+
+ MESON_OPTS="-C builddir/ install ${EXTRA_OPTS}"
+else
+ MESON_INSTALL="meson"
+
+ MESON_OPTS="install -C builddir/ --no-rebuild ${EXTRA_OPTS}"
+fi &&
+
+DESTDIR="${INSTALL_ROOT}/" ${MESON_INSTALL} ${MESON_OPTS}
diff --git a/wm-addons/libsrm/PREPARE b/wm-addons/libsrm/PREPARE
new file mode 100755
index 0000000..e38d86f
--- /dev/null
+++ b/wm-addons/libsrm/PREPARE
@@ -0,0 +1,2 @@
+. "${GRIMOIRE}/FUNCTIONS" &&
+prepare_select_branch stable scm
diff --git a/wm-addons/louvre/DEPENDS b/wm-addons/louvre/DEPENDS
index 70f1b83..7ce9d9e 100755
--- a/wm-addons/louvre/DEPENDS
+++ b/wm-addons/louvre/DEPENDS
@@ -13,7 +13,7 @@ depends libxcursor &&
depends OPENGL &&
depends pixman &&
depends seat &&
-depends srm &&
+depends libsrm &&
depends wayland &&
if list_find "${LOUVRE_OPTS}" "build_examples=true"; then
diff --git a/wm-addons/louvre/HISTORY b/wm-addons/louvre/HISTORY
index f69d06a..6ee4082 100644
--- a/wm-addons/louvre/HISTORY
+++ b/wm-addons/louvre/HISTORY
@@ -1,3 +1,6 @@
+2023-11-28 Pavel Vinogradov <public AT sourcemage.org>
+ * DEPENDS: srm -> libsrm
+
2023-11-22 Pavel Vinogradov <public AT sourcemage.org>
* DETAILS: version 1.0.1-1
- [SM-Commit] GIT changes to master grimoire by Pavel Vinogradov (6634c6f70305da98073a63429c5a30a12a102c01), Pavel Vinogradov, 11/28/2023
Archive powered by MHonArc 2.6.24.