diff options
author | HurricanePootis | 2023-12-02 20:16:04 -0600 |
---|---|---|
committer | HurricanePootis | 2023-12-02 20:16:04 -0600 |
commit | 4e4f61cf9774a6d965bd206d9e48d08be61d8014 (patch) | |
tree | db6a72f6288e88da660da3a303101b7a90ea06f8 | |
parent | d335a24a0daa9be3b6ca4f865e7ac066fd6b1c20 (diff) | |
download | aur-4e4f61cf9774a6d965bd206d9e48d08be61d8014.tar.gz |
Update to Godot 4.2, and bring over godot-mono-enhanced to this
-rw-r--r-- | .SRCINFO | 56 | ||||
-rw-r--r-- | PKGBUILD | 162 |
2 files changed, 140 insertions, 78 deletions
@@ -1,34 +1,48 @@ pkgbase = godot-mono - pkgdesc = An advanced, feature packed, multi-platform 2D and 3D game engine. - pkgver = 4.1.3 + pkgdesc = An advanced, feature packed, multi-platform 2D and 3D game engine + pkgver = 4.2 pkgrel = 1 url = https://godotengine.org/ - arch = i686 arch = x86_64 license = MIT - makedepends = git - makedepends = scons>=3.0 - makedepends = libxcursor - makedepends = libxinerama - makedepends = libxi - makedepends = libxrandr - makedepends = mesa - makedepends = glu - makedepends = libglvnd makedepends = alsa-lib + makedepends = gcc makedepends = pulseaudio + makedepends = scons makedepends = yasm - makedepends = freetype2 - makedepends = gcc - makedepends = pkg-config - makedepends = rsync - makedepends = nuget makedepends = xorg-server-xvfb + makedepends = nuget + makedepends = python + makedepends = git + makedepends = rsync + makedepends = gzip + makedepends = python + depends = embree3 + depends = freetype2 + depends = graphite + depends = harfbuzz + depends = harfbuzz-icu + depends = libglvnd + depends = libspeechd + depends = libsquish + depends = libtheora + depends = libvorbis + depends = libwebp + depends = libwslay + depends = libxcursor + depends = libxi + depends = libxinerama + depends = libxrandr + depends = mbedtls2 + depends = miniupnpc + depends = pcre2 depends = dotnet-sdk + depends = hicolor-icon-theme + optdepends = pipewire-alsa: for audio support + optdepends = pipewire-pulse: for audio support provides = godot - provides = godot-mono - conflicts = godot-mono - source = godot-mono::git+https://github.com/godotengine/godot.git - md5sums = SKIP + conflicts = godot + source = https://github.com/godotengine/godot/releases/download/4.2-stable/godot-4.2-stable.tar.xz + sha512sums = ec10126260e939e83dbadb32a3620e79f43249e3f99a1dcfe2ea7b28eaf866040046aea198d42596bac29da02c79a5a0ec0a5c39283b4535923b518530fb64f2 pkgname = godot-mono @@ -1,83 +1,131 @@ # Maintainer: Marvin Dalheimer <me@marvin-dalheimer.de> +# Maintainer: HurricanePootis <hurricanepootis@protonmail.com> +_pkgname=godot-mono pkgname=godot-mono -pkgver=4.1.3 +pkgver=4.2 pkgrel=1 -pkgdesc="An advanced, feature packed, multi-platform 2D and 3D game engine." -arch=('i686' 'x86_64') +pkgdesc="An advanced, feature packed, multi-platform 2D and 3D game engine" +arch=('x86_64') url="https://godotengine.org/" license=('MIT') -depends=("dotnet-sdk") -optdepends=() -makedepends=( - 'git' - 'scons>=3.0' - 'libxcursor' - 'libxinerama' - 'libxi' - 'libxrandr' - 'mesa' - 'glu' - 'libglvnd' - 'alsa-lib' - 'pulseaudio' - 'yasm' - 'freetype2' - 'gcc' - 'pkg-config' - 'rsync' - 'nuget' - 'xorg-server-xvfb' -) -provides=('godot' 'godot-mono') -conflicts=('godot-mono') -source=(${pkgname}::git+https://github.com/godotengine/godot.git) -md5sums=('SKIP') +depends=(embree3 freetype2 graphite harfbuzz harfbuzz-icu libglvnd libspeechd libsquish + libtheora libvorbis libwebp libwslay libxcursor libxi libxinerama libxrandr + mbedtls2 miniupnpc pcre2 dotnet-sdk hicolor-icon-theme) +makedepends=(alsa-lib gcc pulseaudio scons yasm xorg-server-xvfb nuget python git rsync gzip python) +optdepends=('pipewire-alsa: for audio support' + 'pipewire-pulse: for audio support') +provides=('godot') +conflicts=('godot') +source=("https://github.com/godotengine/godot/releases/download/${pkgver}-stable/godot-${pkgver}-stable.tar.xz") +sha512sums=('ec10126260e939e83dbadb32a3620e79f43249e3f99a1dcfe2ea7b28eaf866040046aea198d42596bac29da02c79a5a0ec0a5c39283b4535923b518530fb64f2') + +prepare() { + # Update the MIME info, ref FS#77810 + sed -i 's,xmlns="https://specifications.freedesktop.org/shared-mime-info-spec",xmlns="http://www.freedesktop.org/standards/shared-mime-info",g' \ + "${srcdir}/godot-${pkgver}-stable"/misc/dist/linux/org.godotengine.Godot.xml +} -build() { - cd "${srcdir}/${pkgname}" - #Checkout actual version of Godot - git checkout ${pkgver}-stable + +build() { + cd "${srcdir}/godot-${pkgver}-stable" #Build temporary binaries to generate needed files for mono support - scons -j$(nproc) platform=linuxbsd tools=yes module_mono_enabled=yes mono_glue=no + export BUILD_NAME=arch_linux + scons -j$(nproc) \ + CFLAGS="$CFLAGS -fPIC -Wl,-z,relro,-z,now -w -I/usr/include/mbedtls2" \ + CXXFLAGS="$CXXFLAGS -fPIC -Wl,-z,relro,-z,now -w -I/usr/include/mbedtls2" \ + LINKFLAGS="$LDFLAGS -L/usr/lib/mbedtls2" \ + arch=$CARCH \ + builtin_embree=no \ + builtin_enet=yes \ + builtin_freetype=no \ + builtin_msdfgen=yes \ + builtin_glslang=yes \ + builtin_graphite=no \ + builtin_harfbuzz=no \ + builtin_icu4c=yes \ + builtin_libogg=no \ + builtin_libpng=no \ + builtin_libtheora=no \ + builtin_libvorbis=no \ + builtin_libwebp=no \ + builtin_wslay=yes \ + builtin_mbedtls=no \ + builtin_miniupnpc=no \ + builtin_pcre2=no \ + builtin_pcre2_with_jit=no \ + builtin_recastnavigation=yes \ + builtin_rvo2=yes \ + builtin_squish=no \ + builtin_xatlas=yes \ + builtin_zlib=no \ + builtin_zstd=no \ + colored=yes \ + platform=linuxbsd \ + production=yes \ + pulseaudio=yes \ + system_certs_path=/etc/ssl/certs/ca-certificates.crt \ + target=editor \ + use_llvm=no \ + werror=no \ + module_mono_enabled=yes \ + mono_glue=no + xvfb-run -s "-screen 0 1920x1080x24 -nolisten local" bin/godot.linuxbsd.editor.x86_64.mono --generate-mono-glue modules/mono/glue # Build normal binaries - #scons -j$(nproc) platform=linuxbsd target=editor tools=yes module_mono_enabled=yes bits=64 modules/mono/build_scripts/build_assemblies.py --godot-output-dir=./bin --godot-platform=linuxbsd } package() { install -d \ - "${pkgdir}/opt/${pkgname}/" \ + "${pkgdir}/opt/${_pkgname}/" \ "${pkgdir}/usr/bin/" \ "${pkgdir}/usr/share/applications/" rsync -a \ - "${srcdir}/${pkgname}/bin" "${pkgdir}/opt/${pkgname}" + "${srcdir}/godot-${pkgver}-stable/bin" "${pkgdir}/opt/${_pkgname}" - # I have to use TERM=xterm because of an bug in mono - cat > "${pkgdir}/usr/bin/${pkgname}" <<-EOF - #!/usr/bin/env bash - /opt/godot-mono/bin/godot.linuxbsd.editor.x86_64.mono "\$@" - EOF + ln -s "/opt/${_pkgname}/bin/godot.linuxbsd.editor.x86_64.mono" "${pkgdir}/usr/bin/godot" - chmod a+x ${pkgdir}/usr/bin/${pkgname} + install -Dm644 \ + "${srcdir}/godot-${pkgver}-stable/icon.svg" \ + "${pkgdir}/usr/share/icons/hicolor/scalable/apps/${_pkgname}.svg" install -Dm644 \ - "${srcdir}/${pkgname}/icon.svg" \ - "${pkgdir}/usr/share/icons/hicolor/scalable/apps/${pkgname}.svg" - - cat > "${pkgdir}/usr/share/applications/${pkgname}.desktop" <<-EOF - [Desktop Entry] - Type=Application - Name=Godot-Mono - GenericName=Godot 2D and 3D game engine - Comment=Godot is an Open-Source game engine for 2D and 3D games - Keywords=game-dev;development; - Categories=Development; - Exec=/usr/bin/${pkgname} - Icon=${pkgname} - EOF + "${srcdir}/godot-${pkgver}-stable/LICENSE.txt" \ + "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" + + [[ -f "${srcdir}/godot-${pkgver}-stable/misc/dist/linux/godot.6" ]] && gzip -9 "${srcdir}/godot-${pkgver}-stable/misc/dist/linux/godot.6" + + install -Dm644 \ + "${srcdir}/godot-${pkgver}-stable/misc/dist/linux/godot.6.gz" \ + "${pkgdir}/usr/share/man/man6/${pkgname}.6.gz" + + install -Dm644 \ + "${srcdir}/godot-${pkgver}-stable/misc/dist/linux/org.godotengine.Godot.xml" \ + "${pkgdir}/usr/share/mime/packages/org.godotengine.Godot.xml" + + install -Dm644 \ + "${srcdir}/godot-${pkgver}-stable/misc/dist/linux/org.godotengine.Godot.desktop"\ + "${pkgdir}/usr/share/applications/org.godotengine.Godot.desktop" + + mkdir -p "${pkgdir}/usr/share/icons/hicolor/scalable/mimetypes" + install -Dm644 \ + "${srcdir}/godot-${pkgver}-stable/misc/dist/document_icons/project.svg" \ + "${pkgdir}/usr/share/icons/hicolor/scalable/mimetypes/x-godot-project.svg" + install -Dm644 \ + "${srcdir}/godot-${pkgver}-stable/misc/dist/document_icons/resource.svg" \ + "${pkgdir}/usr/share/icons/hicolor/scalable/mimetypes/x-godot-resource.svg" + install -Dm644 \ + "${srcdir}/godot-${pkgver}-stable/misc/dist/document_icons/scene.svg" \ + "${pkgdir}/usr/share/icons/hicolor/scalable/mimetypes/x-godot-scene.svg" + install -Dm644 \ + "${srcdir}/godot-${pkgver}-stable/misc/dist/document_icons/shader.svg" \ + "${pkgdir}/usr/share/icons/hicolor/scalable/mimetypes/x-godot-shader.svg" + install -Dm644 \ + "${srcdir}/godot-${pkgver}-stable/misc/dist/document_icons/gdscript.svg" \ + "${pkgdir}/usr/share/icons/hicolor/scalable/mimetypes/x-gdscript.svg" + } |