aboutsummaryrefslogtreecommitdiff
path: root/testing
diff options
context:
space:
mode:
authorCem Keylan <cem@ckyln.com>2023-07-15 13:38:54 +0200
committerCem Keylan <cem@ckyln.com>2023-07-15 13:38:54 +0200
commit7f64f46197ebc4f05acc69a899e6faf9142c789e (patch)
tree96b5708ef02ecfd29553ec3b4f5b6db04c111b51 /testing
parent4fa595b62719f477d7d5211d43f4141f004b0d7c (diff)
downloadrepository-7f64f46197ebc4f05acc69a899e6faf9142c789e.tar.gz
godot: add new package at 4.1
Diffstat (limited to 'testing')
-rwxr-xr-xtesting/godot/build54
-rw-r--r--testing/godot/checksums7
-rw-r--r--testing/godot/depends20
-rw-r--r--testing/godot/files/godot4.desktop9
-rwxr-xr-xtesting/godot/files/pythonpath6
-rw-r--r--testing/godot/meta3
-rw-r--r--testing/godot/patches/gcc13.patch10
-rw-r--r--testing/godot/patches/no-execinfo.patch27
-rw-r--r--testing/godot/sources6
-rw-r--r--testing/godot/version1
10 files changed, 143 insertions, 0 deletions
diff --git a/testing/godot/build b/testing/godot/build
new file mode 100755
index 00000000..c70e7c23
--- /dev/null
+++ b/testing/godot/build
@@ -0,0 +1,54 @@
+#!/bin/sh -e
+# TODO
+
+# Temporarily install scons to build godot
+(
+ cd scons
+
+ python3 setup.py build
+ python3 setup.py install \
+ --prefix=/usr \
+ --root="$PWD/dist"
+
+)
+
+for patch in *.patch; do
+ [ -f "$patch" ] && patch -p1 < "$patch"
+done
+
+PYTHONPATH=$(./pythonpath)
+PATH=$PWD/scons/dist/usr/bin:$PATH
+LDFLAGS="$LDFLAGS -L$PWD/execinfo"
+CFLAGS="$CFLAGS -I$PWD/execinfo"
+CXXFLAGS="$CXXFLAGS -I$PWD/execinfo"
+
+export PYTHONPATH PATH LDFLAGS CFLAGS CXXFLAGS
+
+# clsed 's/#ifdef CRASH_HANDLER_ENABLED/#if defined(CRASH_HANDLER_ENABLED) \&\& defined(__GLIBC__)/' \
+# platform/linuxbsd/crash_handler_linuxbsd.cpp
+
+scons \
+ LINKFLAGS="$LDFLAGS" \
+ CFLAGS="$CFLAGS" \
+ CXXFLAGS="$CXXFLAGS" \
+ progress=true \
+ arch=x64 \
+ speechd=no \
+ graphite=false \
+ builtin_freetype=false \
+ builtin_zlib=false \
+ builtin_glslang=true \
+ builtin_graphite=false \
+ builtin_harfbuzz=false \
+ builtin_icu4c=false \
+ builtin_libpng=false \
+ builtin_libogg=false \
+ builtin_libtheora=false \
+ builtin_libvorbis=false \
+ builtin_libwebp=false \
+ builtin_zstd=false
+
+clinst -Dm755 bin/godot.linuxbsd.editor.x86_64 "$1/usr/bin/godot4"
+clinst -Dm644 icon.png "$1/usr/share/pixmaps/godot.png"
+clinst -Dm644 godot4.desktop "$1/usr/share/applications/godot4.desktop"
+ln -s godot4 "$1/usr/bin/godot"
diff --git a/testing/godot/checksums b/testing/godot/checksums
new file mode 100644
index 00000000..9af2beaa
--- /dev/null
+++ b/testing/godot/checksums
@@ -0,0 +1,7 @@
+%BLAKE3
+caefa5b61b8992eb3242c885142aa8e19793cd7bd00496a9e8201bcd3c34f21a 4.1-stable.tar.gz
+2b2207d86f6b687d9af604fd86dc47d3cfd07044f1474da9d63180a1dad53687 SCons-4.4.0.tar.gz
+312b85c0aaffc44755ad268c8ce8c83f46e33e4632b9d4b9d6ac06b5cb071dbb pythonpath
+3a15ce56e6e77e491eef51eeacb2ed725c50b94709cd8647319f94f5af6adba3 godot4.desktop
+58cc4335281c866a473f400adb199e39a4e5ab430169ee21bf2416227d18f3b7 gcc13.patch
+5e16897296376160ebab5022c920b7252472e02fb7ad8421064aa2e259a17a61 no-execinfo.patch
diff --git a/testing/godot/depends b/testing/godot/depends
new file mode 100644
index 00000000..be48bc3f
--- /dev/null
+++ b/testing/godot/depends
@@ -0,0 +1,20 @@
+freetype-harfbuzz
+libX11
+libXcursor
+libXext
+libXi
+libXinerama
+libXrandr
+libXrender
+libogg
+libpng
+libtheora
+libvorbis
+libwebp
+libxcb
+mesa
+opus
+opusfile
+python make
+zlib
+zstd
diff --git a/testing/godot/files/godot4.desktop b/testing/godot/files/godot4.desktop
new file mode 100644
index 00000000..7bb357e8
--- /dev/null
+++ b/testing/godot/files/godot4.desktop
@@ -0,0 +1,9 @@
+[Desktop Entry]
+Name=Godot4
+Comment=Application for making games
+Exec=/usr/bin/godot4 %U
+Icon=godot
+Terminal=false
+Type=Application
+Categories=Utility;Game;
+
diff --git a/testing/godot/files/pythonpath b/testing/godot/files/pythonpath
new file mode 100755
index 00000000..f3718ca7
--- /dev/null
+++ b/testing/godot/files/pythonpath
@@ -0,0 +1,6 @@
+#!/usr/bin/python3
+import os
+import sys
+
+print("%s/scons/dist/usr/lib/python%d.%d/site-packages:%s"
+ % (os.getcwd(), sys.version_info.major, sys.version_info.minor, ':'.join(sys.path)))
diff --git a/testing/godot/meta b/testing/godot/meta
new file mode 100644
index 00000000..fde1b6cb
--- /dev/null
+++ b/testing/godot/meta
@@ -0,0 +1,3 @@
+description: Multiplatform 2D and 3D engine
+license: MIT
+maintainer: Cem Keylan <cem@carbslinux.org>
diff --git a/testing/godot/patches/gcc13.patch b/testing/godot/patches/gcc13.patch
new file mode 100644
index 00000000..0db5a116
--- /dev/null
+++ b/testing/godot/patches/gcc13.patch
@@ -0,0 +1,10 @@
+--- a/thirdparty/vhacd/inc/vhacdManifoldMesh.h
++++ b/thirdparty/vhacd/inc/vhacdManifoldMesh.h
+@@ -15,6 +15,7 @@
+ #pragma once
+ #ifndef VHACD_MANIFOLD_MESH_H
+ #define VHACD_MANIFOLD_MESH_H
++#include <cstdint>
+ #include "vhacdCircularList.h"
+ #include "vhacdSArray.h"
+ #include "vhacdVector.h"
diff --git a/testing/godot/patches/no-execinfo.patch b/testing/godot/patches/no-execinfo.patch
new file mode 100644
index 00000000..202bc9c0
--- /dev/null
+++ b/testing/godot/patches/no-execinfo.patch
@@ -0,0 +1,27 @@
+diff --git a/platform/linuxbsd/crash_handler_linuxbsd.cpp b/platform/linuxbsd/crash_handler_linuxbsd.cpp
+index 3a24546..ae7430f 100644
+--- a/platform/linuxbsd/crash_handler_linuxbsd.cpp
++++ b/platform/linuxbsd/crash_handler_linuxbsd.cpp
+@@ -37,7 +37,6 @@
+ #include "main/main.h"
+
+ #ifdef DEBUG_ENABLED
+-#define CRASH_HANDLER_ENABLED 1
+ #endif
+
+ #ifdef CRASH_HANDLER_ENABLED
+diff --git a/platform/linuxbsd/detect.py b/platform/linuxbsd/detect.py
+index 3f713d2..e27e1eb 100644
+--- a/platform/linuxbsd/detect.py
++++ b/platform/linuxbsd/detect.py
+@@ -429,8 +429,8 @@ def configure(env: "Environment"):
+ if not env["execinfo"] and platform.libc_ver()[0] != "glibc":
+ # The default crash handler depends on glibc, so if the host uses
+ # a different libc (BSD libc, musl), fall back to libexecinfo.
+- print("Note: Using `execinfo=yes` for the crash handler as required on platforms where glibc is missing.")
+- env["execinfo"] = True
++ # print("Note: Using `execinfo=yes` for the crash handler as required on platforms where glibc is missing.")
++ env["execinfo"] = False
+
+ if env["execinfo"]:
+ env.Append(LIBS=["execinfo"])
diff --git a/testing/godot/sources b/testing/godot/sources
new file mode 100644
index 00000000..e45ff032
--- /dev/null
+++ b/testing/godot/sources
@@ -0,0 +1,6 @@
+https://github.com/godotengine/godot/archive/4.1-stable.tar.gz
+https://github.com/SCons/scons/releases/download/4.4.0/SCons-4.4.0.tar.gz scons
+files/pythonpath
+files/godot4.desktop
+patches/gcc13.patch
+patches/no-execinfo.patch
diff --git a/testing/godot/version b/testing/godot/version
new file mode 100644
index 00000000..60d2ac65
--- /dev/null
+++ b/testing/godot/version
@@ -0,0 +1 @@
+4.1 1