summaryrefslogtreecommitdiffstats
path: root/meta-oe/dynamic-layers/multimedia-layer/recipes-graphics
diff options
context:
space:
mode:
Diffstat (limited to 'meta-oe/dynamic-layers/multimedia-layer/recipes-graphics')
-rw-r--r--meta-oe/dynamic-layers/multimedia-layer/recipes-graphics/taisei/taisei/0001-Remove-strip-option-from-executable-build.patch29
-rw-r--r--meta-oe/dynamic-layers/multimedia-layer/recipes-graphics/taisei/taisei/0001-util-consideredharmful-Use-overloadable-func-attribu.patch58
-rw-r--r--meta-oe/dynamic-layers/multimedia-layer/recipes-graphics/taisei/taisei_1.4.2.bb52
3 files changed, 139 insertions, 0 deletions
diff --git a/meta-oe/dynamic-layers/multimedia-layer/recipes-graphics/taisei/taisei/0001-Remove-strip-option-from-executable-build.patch b/meta-oe/dynamic-layers/multimedia-layer/recipes-graphics/taisei/taisei/0001-Remove-strip-option-from-executable-build.patch
new file mode 100644
index 0000000000..aa36c2c3f8
--- /dev/null
+++ b/meta-oe/dynamic-layers/multimedia-layer/recipes-graphics/taisei/taisei/0001-Remove-strip-option-from-executable-build.patch
@@ -0,0 +1,29 @@
1From 6c86f8aea2a29c33af3f212afa9f0ea180822d1e Mon Sep 17 00:00:00 2001
2From: Thomas Perrot <thomas.perrot@bootlin.com>
3Date: Wed, 6 Nov 2024 21:02:54 +0100
4Subject: [PATCH] Remove strip option from executable build
5
6To improve debugging experience, OE tasks will strip binaries.
7
8Upstream-Status: Inappropriate [oe-specific]
9
10Signed-off-by: Thomas Perrot <thomas.perrot@bootlin.com>
11---
12 meson.build | 1 -
13 1 file changed, 1 deletion(-)
14
15diff --git a/meson.build b/meson.build
16index 88d4d53263ae..8a1f540836e0 100644
17--- a/meson.build
18+++ b/meson.build
19@@ -73,7 +73,6 @@ project('taisei', 'c',
20
21 # You may want to change these for a debug build dir
22 'buildtype=release',
23- 'strip=true',
24 'b_lto=true',
25 'b_ndebug=if-release',
26 ]
27--
282.47.0
29
diff --git a/meta-oe/dynamic-layers/multimedia-layer/recipes-graphics/taisei/taisei/0001-util-consideredharmful-Use-overloadable-func-attribu.patch b/meta-oe/dynamic-layers/multimedia-layer/recipes-graphics/taisei/taisei/0001-util-consideredharmful-Use-overloadable-func-attribu.patch
new file mode 100644
index 0000000000..09f4be300c
--- /dev/null
+++ b/meta-oe/dynamic-layers/multimedia-layer/recipes-graphics/taisei/taisei/0001-util-consideredharmful-Use-overloadable-func-attribu.patch
@@ -0,0 +1,58 @@
1From 6f40a8cfbc4dd5ca4c3156338e8e35f25d4d4599 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Fri, 22 Nov 2024 01:16:25 -0800
4Subject: [PATCH] util/consideredharmful: Use overloadable func attribute with
5 clang
6
7When building with glibc HEAD, it has fortified headers with clang as well
8and clang reports errors e.g.
9
10| ../git/src/util/consideredharmful.h:33:7: error: redeclaration of 'strncat' must have the 'overloadable' attribute
11| 33 | char* strncat();
12| | ^
13| /mnt/b/yoe/master/build/tmp/work/core2-64-yoe-linux/taisei/1.4.2/recipe-sysroot/usr/include/bits/string_fortified.h:145:8: note: previous overload of function is here
14| 145 | __NTH (strncat (__fortify_clang_overload_arg (char *, __restrict, __dest),
15| | ^
16
17Upstream-Status: Submitted [https://github.com/taisei-project/taisei/pull/393]
18Signed-off-by: Khem Raj <raj.khem@gmail.com>
19---
20 src/util/consideredharmful.h | 4 ++--
21 1 file changed, 2 insertions(+), 2 deletions(-)
22
23--- a/src/util/consideredharmful.h
24+++ b/src/util/consideredharmful.h
25@@ -8,6 +8,7 @@
26
27 #pragma once
28 #include "taisei.h"
29+#include "util/compat.h"
30
31 #include <stdio.h>
32
33@@ -24,17 +25,23 @@ PRAGMA(GCC diagnostic ignored "-Wstrict-
34 // clang generates lots of these warnings with _FORTIFY_SOURCE
35 PRAGMA(GCC diagnostic ignored "-Wignored-attributes")
36
37+#ifdef __GLIBC__
38+#define OVERLOADABLE __attribute__((overloadable))
39+#else
40+#define OVERLOADABLE
41+#endif
42+
43 #undef fopen
44 attr_deprecated("Use vfs_open or SDL_RWFromFile instead")
45 FILE* fopen();
46
47 #undef strncat
48 attr_deprecated("This function likely doesn't do what you expect, use strlcat")
49-char* strncat();
50+char* OVERLOADABLE strncat();
51
52 #undef strncpy
53 attr_deprecated("This function likely doesn't do what you expect, use strlcpy")
54-char* strncpy();
55+char* OVERLOADABLE strncpy();
56
57 #undef errx
58 attr_deprecated("Use log_fatal instead")
diff --git a/meta-oe/dynamic-layers/multimedia-layer/recipes-graphics/taisei/taisei_1.4.2.bb b/meta-oe/dynamic-layers/multimedia-layer/recipes-graphics/taisei/taisei_1.4.2.bb
new file mode 100644
index 0000000000..ee65f89ab7
--- /dev/null
+++ b/meta-oe/dynamic-layers/multimedia-layer/recipes-graphics/taisei/taisei_1.4.2.bb
@@ -0,0 +1,52 @@
1SUMMARY = "Taisei Project is an open source danmaku"
2DESCRIPTION = "Taisei Project is an open source fan-game set in the world of \
3 Tōhō Project. It is a top-down vertical-scrolling curtain fire \
4 shooting game (STG), also known as a 'bullet hell' or 'danmaku'. \
5 STGs are fast-paced games focused around pattern recognition and \
6 mastery through practice."
7HOMEPAGE = "https://taisei-project.org"
8BUGTRACKER = "https://github.com/taisei-project/taisei/issues"
9LICENSE = "CC-BY-4.0 & CC0-1.0 & MIT"
10LIC_FILES_CHKSUM = "file://COPYING;md5=1a11ffd7e1bdd1d3156cecec60a2846f"
11
12DEPENDS = "\
13 cglm \
14 freetype \
15 virtual/libsdl2 \
16 libwebp \
17 opusfile \
18 zstd \
19"
20DEPENDS:append:libc-musl = " libucontext"
21LDFLAGS:append:libc-musl = " -lucontext"
22
23RDEPENDS_${PN} = "\
24 cglm (>= 0.7.8) \
25 freetype \
26 libsdl2 (>= 2.0.16) \
27 libpng (>= 1.5.0) \
28 libwebp (>= 0.5) \
29 libzstd (>= 1.4.0) \
30 opengl (>= 3.3) \
31 opusfile \
32 zlib \
33"
34
35SRC_URI = "gitsm://github.com/taisei-project/taisei.git;branch=v1.4.x;protocol=https \
36 file://0001-util-consideredharmful-Use-overloadable-func-attribu.patch \
37 file://0001-Remove-strip-option-from-executable-build.patch"
38
39SRCREV = "c098579d4fa0f004ccc204c5bc46eac3717cba28"
40
41
42inherit features_check meson mime mime-xdg pkgconfig python3native
43
44REQUIRED_DISTRO_FEATURES = "opengl"
45
46PACKAGECONFIG ??= ""
47
48PACKAGECONFIG[a_null] = "-Da_null=true,-Da_null=false"
49PACKAGECONFIG[developer] = "-Ddeveloper=true,-Ddeveloper=false"
50PACKAGECONFIG[docs] = "-Ddocs=true,-Ddocs=false,python3-docutils-native"
51
52FILES:${PN} += "${datadir}"