diff --git a/trunk/06c42d151cf7b70b73dda42eba78e91b05c12814.patch b/trunk/06c42d151cf7b70b73dda42eba78e91b05c12814.patch new file mode 100644 index 0000000..2e22a6d --- /dev/null +++ b/trunk/06c42d151cf7b70b73dda42eba78e91b05c12814.patch @@ -0,0 +1,33 @@ +From 34e2d2f4f7224ac24dec5f0461d80cb9dfddb827 Mon Sep 17 00:00:00 2001 +From: Marcelo Fernandez +Date: Mon, 5 Nov 2018 21:34:36 -0300 +Subject: [PATCH] Fix binaries incorrectly detected as shared libraries on some + linux distros + +--- + platform/x11/detect.py | 12 ++++++++++++ + 1 file changed, 12 insertions(+) + +diff --git a/platform/x11/detect.py b/platform/x11/detect.py +index ee59e9b5a17..dc5c22b4b3b 100644 +--- a/platform/x11/detect.py ++++ b/platform/x11/detect.py +@@ -149,6 +149,18 @@ def configure(env): + env.Append(CCFLAGS=['-pipe']) + env.Append(LINKFLAGS=['-pipe']) + ++ # Check for gcc version >= 6 before adding -no-pie ++ version = get_compiler_version(env) or [-1, -1] ++ if using_gcc(env): ++ if version[0] >= 6: ++ env.Append(CCFLAGS=["-fpie"]) ++ env.Append(LINKFLAGS=["-no-pie"]) ++ # Do the same for clang should be fine with Clang 4 and higher ++ if using_clang(env): ++ if version[0] >= 4: ++ env.Append(CCFLAGS=["-fpie"]) ++ env.Append(LINKFLAGS=["-no-pie"]) ++ + ## Dependencies + + env.ParseConfig('pkg-config x11 --cflags --libs') diff --git a/trunk/PKGBUILD b/trunk/PKGBUILD index 7285e66..fb76772 100644 --- a/trunk/PKGBUILD +++ b/trunk/PKGBUILD @@ -10,15 +10,39 @@ pkgdesc='Advanced cross-platform 2D and 3D game engine' url='https://godotengine.org' license=(MIT) arch=(x86_64) -makedepends=(gcc scons yasm) -depends=(alsa-lib freetype2 libglvnd libxcursor libxinerama libxrandr pulseaudio) -source=("$pkgname-$pkgver.tar.gz::https://github.com/godotengine/godot/archive/$pkgver-stable.tar.gz") -b2sums=('1d7ee1703388d98c41524f64a99859216b060daad4502c4118adf31a95d45aa230d058630ae8735282a9b5d9f7c1ee464fb4caf9f92e3e55340370e007102f8d') +makedepends=(gcc scons yasm alsa-lib pulseaudio) +depends=(freetype2 libglvnd libxcursor libxinerama libxrandr libxi embree + bullet libogg libpng libtheora libvorbis libvpx libwebp mbedtls miniupnpc opus opusfile pcre2 zlib zstd) +optdepends=(alsa-lib pulseaudio) +source=("$pkgname-$pkgver.tar.gz::https://github.com/godotengine/godot/archive/$pkgver-stable.tar.gz" + 06c42d151cf7b70b73dda42eba78e91b05c12814.patch) +b2sums=('1d7ee1703388d98c41524f64a99859216b060daad4502c4118adf31a95d45aa230d058630ae8735282a9b5d9f7c1ee464fb4caf9f92e3e55340370e007102f8d' + 'b9c02d4620c6d70e5fa828d1cc8aa4a42311c988becec40f4f2c65ce59a637ebf3db45cb91734b8c8c45ff73ec02dff76bcec5326ae42106fc43210a9bd29040') + +prepare() { + cd $pkgname-$pkgver-stable + patch -p1 -R -i../06c42d151cf7b70b73dda42eba78e91b05c12814.patch +} build() { +#Not unbundled: +# enet contains none upstreamed IPv6 support +# libwebm AUR +# recast +# squish AUR libsquish +# wslay AUR +# xatlas +local to_unbundle="bullet certs embree freetype libogg libpng libtheora libvorbis libvpx libwebp mbedtls miniupnpc opus pcre2 zlib zstd" +local system_libs="" +for _lib in $to_unbundle; do + system_libs+="builtin_"$_lib"=no " + rm -rf thirdparty/$_lib +done + cd $pkgname-$pkgver-stable export BUILD_NAME=arch_linux - scons -j12 \ + scons -j16 \ + system_certs_path=/etc/ssl/certs/ca-certificates.crt \ bits=64 \ colored=yes \ platform=x11 \ @@ -26,9 +50,10 @@ build() { target=release_debug \ tools=yes \ use_llvm=no \ - CFLAGS="$CFLAGS -Wl,-z,relro,-z-now -w" \ - CXXFLAGS="$CXXFLAGS -Wl,-z,relro,-z-now -w" \ - LINKFLAGS="$LDFLAGS -Wl,-z,relro,-z-now -w" + CFLAGS="$CFLAGS" \ + CXXFLAGS="$CXXFLAGS" \ + LINKFLAGS="$LDFLAGS" \ + $system_libs } package() {