mirror of
https://gitlab.redox-os.org/redox-os/redox.git
synced 2026-06-23 21:34:18 +08:00
gstreamer: update and compile dynamically
This commit is contained in:
parent
8621c086ab
commit
549c1fd8e2
@ -1,24 +1,37 @@
|
||||
[source]
|
||||
tar = "https://gstreamer.freedesktop.org/src/gstreamer/gstreamer-1.20.6.tar.xz"
|
||||
blake3 = "d96a7fd8bb9bec309bc40ccafdbac3bd4d11d06a9be41c38337cea02deaea95d"
|
||||
patches = [
|
||||
"redox.patch"
|
||||
]
|
||||
tar = "https://gitlab.freedesktop.org/gstreamer/gstreamer/-/archive/1.24.12/gstreamer-1.24.12.tar.gz"
|
||||
blake3 = "181daf73050f7472ec656e7461b7f67028d6002c1133870576033a32e43a364f"
|
||||
patches = ["redox.patch"]
|
||||
|
||||
[build]
|
||||
template = "custom"
|
||||
dependencies = [
|
||||
"cairo",
|
||||
"expat",
|
||||
"ffmpeg6",
|
||||
"freetype2",
|
||||
"fontconfig",
|
||||
"gettext",
|
||||
"glib",
|
||||
"libffi",
|
||||
"glib",
|
||||
"harfbuzz",
|
||||
"libffi",
|
||||
"libiconv",
|
||||
"pcre",
|
||||
"libjpeg",
|
||||
"libogg",
|
||||
"libpng",
|
||||
"libvorbis",
|
||||
"libxml2",
|
||||
#TODO "pango",
|
||||
"pcre",
|
||||
"pixman",
|
||||
"zlib"
|
||||
]
|
||||
script = """
|
||||
DYNAMIC_INIT
|
||||
|
||||
export GLIB_GENMARSHAL="$(which glib-genmarshal)"
|
||||
export GLIB_MKENUMS="$(which glib-mkenums)"
|
||||
export LDFLAGS="-static"
|
||||
export LDFLAGS="-L${COOKBOOK_SYSROOT}/lib"
|
||||
|
||||
# TODO: Fix this annoying shite
|
||||
echo "[binaries]" > cross_file.txt
|
||||
@ -26,7 +39,7 @@ echo "c = '${CC}'" >> cross_file.txt
|
||||
echo "cpp = '${CXX}'" >> cross_file.txt
|
||||
echo "ar = '${AR}'" >> cross_file.txt
|
||||
echo "strip = '${STRIP}'" >> cross_file.txt
|
||||
echo "pkgconfig = '${TARGET}-pkg-config'" >> cross_file.txt
|
||||
echo "pkg-config = '${TARGET}-pkg-config'" >> cross_file.txt
|
||||
|
||||
echo "[host_machine]" >> cross_file.txt
|
||||
echo "system = 'redox'" >> cross_file.txt
|
||||
@ -52,17 +65,16 @@ unset RANLIB
|
||||
unset READELF
|
||||
unset STRIP
|
||||
|
||||
meson setup "${COOKBOOK_SOURCE}" _build \
|
||||
meson \
|
||||
setup \
|
||||
"${COOKBOOK_SOURCE}" \
|
||||
_build \
|
||||
--cross-file cross_file.txt \
|
||||
--buildtype release \
|
||||
--strip \
|
||||
-Ddefault_library=static \
|
||||
-Dprefix=/ \
|
||||
-Dlibdir=lib \
|
||||
-Dbenchmarks=disabled \
|
||||
-Dcoretracers=disabled \
|
||||
-Dexamples=disabled \
|
||||
-Dtests=disabled
|
||||
-Dauto_features=disabled
|
||||
ninja -C _build -v
|
||||
DESTDIR="${COOKBOOK_STAGE}" ninja -C _build -v install
|
||||
"""
|
||||
|
||||
@ -1,57 +1,19 @@
|
||||
diff -ruwN source/gst/gstpoll.c source-new/gst/gstpoll.c
|
||||
--- source/gst/gstpoll.c 2023-02-23 11:23:11.000000000 -0700
|
||||
+++ source-new/gst/gstpoll.c 2023-05-19 13:22:32.365660597 -0600
|
||||
@@ -85,6 +85,10 @@
|
||||
#include <sys/socket.h>
|
||||
#endif
|
||||
|
||||
+#if defined(__redox__)
|
||||
+#include <sys/select.h>
|
||||
+#endif
|
||||
+
|
||||
#ifdef G_OS_WIN32
|
||||
# ifndef EWOULDBLOCK
|
||||
# define EWOULDBLOCK EAGAIN /* This is just to placate gcc */
|
||||
@@ -689,7 +693,9 @@
|
||||
{
|
||||
gint control_sock[2];
|
||||
|
||||
+#if !defined(__redox__)
|
||||
if (socketpair (PF_UNIX, SOCK_STREAM, 0, control_sock) < 0)
|
||||
+#endif
|
||||
goto no_socket_pair;
|
||||
|
||||
nset->control_read_fd.fd = control_sock[0];
|
||||
diff -ruwN source/libs/gst/check/libcheck/meson.build source-new/libs/gst/check/libcheck/meson.build
|
||||
--- source/libs/gst/check/libcheck/meson.build 2023-02-23 11:23:11.000000000 -0700
|
||||
+++ source-new/libs/gst/check/libcheck/meson.build 2023-05-19 13:26:51.285620215 -0600
|
||||
@@ -40,13 +40,13 @@
|
||||
diff -ruwN gstreamer-1.20.7/subprojects/gst-plugins-base/gst-libs/gst/tag/meson.build source/subprojects/gst-plugins-base/gst-libs/gst/tag/meson.build
|
||||
--- gstreamer-1.20.7/subprojects/gst-plugins-base/gst-libs/gst/tag/meson.build 2023-07-26 09:18:38.000000000 -0600
|
||||
+++ source/subprojects/gst-plugins-base/gst-libs/gst/tag/meson.build 2025-04-10 17:19:26.509676357 -0600
|
||||
@@ -135,10 +135,10 @@
|
||||
install: false)
|
||||
endif
|
||||
|
||||
# FIXME: check that timer_create, timer_settime, timer_delete are in rt_lib
|
||||
-if not rt_lib.found()
|
||||
+#if not rt_lib.found()
|
||||
libcheck_files += files(
|
||||
'libcompat/timer_create.c',
|
||||
'libcompat/timer_settime.c',
|
||||
'libcompat/timer_delete.c'
|
||||
)
|
||||
-endif
|
||||
+#endif
|
||||
|
||||
configure_file(input : 'check.h.in',
|
||||
output : 'check.h',
|
||||
diff -ruwN source/plugins/elements/gstfilesink.c source-new/plugins/elements/gstfilesink.c
|
||||
--- source/plugins/elements/gstfilesink.c 2023-02-23 11:23:11.000000000 -0700
|
||||
+++ source-new/plugins/elements/gstfilesink.c 2023-05-19 13:23:26.885652108 -0600
|
||||
@@ -148,8 +148,10 @@
|
||||
else
|
||||
g_assert_not_reached ();
|
||||
|
||||
+#if !defined(__redox__)
|
||||
if (o_sync)
|
||||
flags |= O_SYNC;
|
||||
+#endif
|
||||
|
||||
fd = open (filename, flags, 0666);
|
||||
-executable('mklicensestables', 'mklicensestables.c',
|
||||
- c_args : gst_plugins_base_args,
|
||||
- include_directories: [configinc],
|
||||
- dependencies : [tag_dep, gst_base_dep],
|
||||
- install : false)
|
||||
+#executable('mklicensestables', 'mklicensestables.c',
|
||||
+# c_args : gst_plugins_base_args,
|
||||
+# include_directories: [configinc],
|
||||
+# dependencies : [tag_dep, gst_base_dep],
|
||||
+# install : false)
|
||||
|
||||
gst_tag_dir = meson.current_source_dir()
|
||||
|
||||
Loading…
Reference in New Issue
Block a user