summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorShatur952019-12-28 20:14:32 +0200
committerShatur952019-12-29 20:15:39 +0200
commitb61845d6627bd461e5b0ccfdcb44f2cfc6ac0eb6 (patch)
treecdb22c989c17cf46e03d9b63c340b30a29128cb5
parent68d3ac65aadf05ceaaf9c339a2e7d6efc5528f2c (diff)
downloadaur-b61845d6627bd461e5b0ccfdcb44f2cfc6ac0eb6.tar.gz
Update to 4.24.1
-rw-r--r--.SRCINFO31
-rw-r--r--.gitignore2
-rw-r--r--Makefile5
-rw-r--r--PKGBUILD205
-rw-r--r--add-editorstyle-dependency.patch10
-rw-r--r--allow-unsupported-clang.patch26
-rw-r--r--com.unrealengine.UE4Editor.desktop (renamed from UE4Editor.desktop)4
-rw-r--r--ignore-clang50-install.patch11
-rw-r--r--recompile-version-selector.patch11
-rw-r--r--remove-sysctl-include.patch10
-rw-r--r--unreal-engine.install15
-rw-r--r--use-arch-mono.patch4
12 files changed, 98 insertions, 236 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 33f10a1a8fa2..437727e39665 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,41 +1,30 @@
pkgbase = unreal-engine
pkgdesc = A 3D game engine by Epic Games which can be used non-commercially for free.
- pkgver = 4.23.1
+ pkgver = 4.24.1
pkgrel = 1
url = https://www.unrealengine.com/
- install = unreal-engine.install
arch = x86_64
license = custom:UnrealEngine
- makedepends = clang
makedepends = mono
makedepends = dos2unix
- makedepends = cmake
makedepends = git
depends = icu
depends = sdl2
depends = python
depends = lld
depends = xdg-user-dirs
+ optdepends = clion: build system for projects
+ optdepends = cmake: build system for projects
+ optdepends = qtcreator: IDE for projects
+ optdepends = codelite: IDE for projects
+ optdepends = kdevelop: IDE for projects
+ optdepends = clion: IDE for projects
options = strip
options = staticlibs
- source = git+ssh://git@github.com/EpicGames/UnrealEngine.git#tag=4.23.1-release
- source = UE4Editor.desktop
- source = recompile-version-selector.patch
- source = Makefile
- source = ignore-clang50-install.patch
+ source = com.unrealengine.UE4Editor.desktop
source = use-arch-mono.patch
- source = allow-unsupported-clang.patch
- source = remove-sysctl-include.patch
- source = add-editorstyle-dependency.patch
- sha256sums = SKIP
- sha256sums = 46871ed662a3c97698be609d27da280d9000ec97183f1fa6592986f9910a2118
- sha256sums = 1dd876fa48c6fb4fcd4ccbdb8ed4ceccfa294685911e91be58bbc5e95726c279
- sha256sums = 9654226ef3318389aa8fe15f3d4d14e7ac2113520ee5ebf2899d42273a2a6fb0
- sha256sums = 71a7304deebb00234c323eed9a73cdbd022099ba65f62fc90e78069eceed1f5d
- sha256sums = 6b30adf71eeabaf1b2b669aa56c9deba145a4fe7bdd2e77f44b0cb7423162bc0
- sha256sums = bc4837ead8c89b7e4df2a14aedd62d23f47e7fca08c3f429a267ec4c3b3412d3
- sha256sums = 2672d6d5faf6b855fc2bfd56d215b4fd2a00fd9791ad9d484b6446194867b67d
- sha256sums = 8efbf29ab755bb4fe4c4a423ffb22668dd0e66c7cbc3fc05033ba350b451cfd5
+ sha256sums = fa4bd19ab53e91cc8b4ae6208452a7fe986a08047617213d6250b43e7a140bf3
+ sha256sums = 90a112f72a498f50dafad4feeaf7c551fe4e19830610bcef634f8e23d3d283b3
pkgname = unreal-engine
diff --git a/.gitignore b/.gitignore
deleted file mode 100644
index 72b292003222..000000000000
--- a/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-unreal-engine-*
-UnrealEngine/*
diff --git a/Makefile b/Makefile
deleted file mode 100644
index 706ac3f7e1cb..000000000000
--- a/Makefile
+++ /dev/null
@@ -1,5 +0,0 @@
-
-BUILD = bash "Engine/Build/BatchFiles/Linux/Build.sh"
-
-UnrealVersionSelector-Linux-Shipping:
- $(BUILD) UnrealVersionSelector Linux Shipping $(ARGS)
diff --git a/PKGBUILD b/PKGBUILD
index 624c30528724..67f398f7bf73 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,157 +1,120 @@
# Maintainer: Dylan Ferris <dylan@psilly.com>
+# Maintainer: Michael Lojkovic <mikelojkovic@gmail.com>
+# Maintainer: Shatur95 <genaloner@gmail.com>
-# You must register at unrealengine.com and link your github account to access this private repo.
-# See the wiki for more info: https://wiki.archlinux.org/index.php/Unreal_Engine_4
-
-# The source is over 8 GiB, with an extra 3 GiB of dependencies downloaded in build(), and may take several hours to compile.
-
+# The source is about 200 MiB, with an extra ~11 GiB of dependencies downloaded in Setup.sh, and may take several hours to compile.
pkgname='unreal-engine'
-install="$pkgname.install"
-pkgver=4.23.1
-# shellcheck disable=SC2034
-{
- pkgrel=1
- pkgdesc='A 3D game engine by Epic Games which can be used non-commercially for free.'
- arch=('x86_64')
- url='https://www.unrealengine.com/'
- makedepends=('clang' 'mono' 'dos2unix' 'cmake' 'git')
- depends=('icu' 'sdl2' 'python' 'lld' 'xdg-user-dirs')
- license=('custom:UnrealEngine')
-
- source=(
- "git+ssh://git@github.com/EpicGames/UnrealEngine.git#tag=$pkgver-release"
- 'UE4Editor.desktop'
- 'recompile-version-selector.patch'
- 'Makefile'
- 'ignore-clang50-install.patch'
- 'use-arch-mono.patch'
- 'allow-unsupported-clang.patch'
- 'remove-sysctl-include.patch'
- 'add-editorstyle-dependency.patch'
- )
-
- sha256sums=(
- 'SKIP'
- '46871ed662a3c97698be609d27da280d9000ec97183f1fa6592986f9910a2118'
- '1dd876fa48c6fb4fcd4ccbdb8ed4ceccfa294685911e91be58bbc5e95726c279'
- '9654226ef3318389aa8fe15f3d4d14e7ac2113520ee5ebf2899d42273a2a6fb0'
- '71a7304deebb00234c323eed9a73cdbd022099ba65f62fc90e78069eceed1f5d'
- '6b30adf71eeabaf1b2b669aa56c9deba145a4fe7bdd2e77f44b0cb7423162bc0'
- 'bc4837ead8c89b7e4df2a14aedd62d23f47e7fca08c3f429a267ec4c3b3412d3'
- '2672d6d5faf6b855fc2bfd56d215b4fd2a00fd9791ad9d484b6446194867b67d'
- '8efbf29ab755bb4fe4c4a423ffb22668dd0e66c7cbc3fc05033ba350b451cfd5'
- )
-
- # Package is 3 Gib smaller with "strip" but it takes a long time and generates many warnings
- options=(strip staticlibs)
-}
+pkgver=4.24.1
+pkgrel=1
+pkgdesc='A 3D game engine by Epic Games which can be used non-commercially for free.'
+arch=('x86_64')
+url='https://www.unrealengine.com/'
+makedepends=('mono' 'dos2unix' 'git')
+depends=('icu' 'sdl2' 'python' 'lld' 'xdg-user-dirs')
+optdepends=('clion: build system for projects'
+ 'cmake: build system for projects'
+ 'qtcreator: IDE for projects'
+ 'codelite: IDE for projects'
+ 'kdevelop: IDE for projects'
+ 'clion: IDE for projects')
+license=('custom:UnrealEngine')
+source=('com.unrealengine.UE4Editor.desktop'
+ 'use-arch-mono.patch')
+sha256sums=('fa4bd19ab53e91cc8b4ae6208452a7fe986a08047617213d6250b43e7a140bf3'
+ '90a112f72a498f50dafad4feeaf7c551fe4e19830610bcef634f8e23d3d283b3')
+options=(strip staticlibs) # Package is 3 Gib smaller with "strip" but it takes a long time and generates many warnings
prepare() {
- export TERM=xterm
- # shellcheck disable=SC2154
-
- ue4src="$srcdir/UnrealEngine/Engine/Source"
-
- patch "$srcdir/UnrealEngine/Engine/Build/BatchFiles/Linux/Setup.sh" ignore-clang50-install.patch
- patch "$srcdir/UnrealEngine/Engine/Build/BatchFiles/Linux/SetupMono.sh" use-arch-mono.patch
- patch "$srcdir/UnrealEngine/Setup.sh" recompile-version-selector.patch
- patch "$srcdir/UnrealEngine/Engine/Source/Programs/UnrealBuildTool/Platform/Linux/LinuxToolChain.cs" allow-unsupported-clang.patch
- patch "$srcdir/UnrealEngine/Engine/Source/Runtime/Core/Public/Unix/UnixSystemIncludes.h" remove-sysctl-include.patch
- patch "$srcdir/UnrealEngine/Engine/Source/Runtime/Launch/Launch.Build.cs" add-editorstyle-dependency.patch
-
- cp "$srcdir/Makefile" "$srcdir/UnrealEngine/Makefile"
-
- # Source Code Accessors
-
- # CodeLite (Fully integrated)
- # cd $srcdir/UnrealEngine/Engine/Config/Linux && sed -i '10c\PreferredAccessor=CodeLiteSourceCodeAccessor' LinuxEngine.ini
-
- # Qt Creator
- # cd $srcdir/UnrealEngine/Engine/Plugins/Developer && git clone https://github.com/fire/QtCreatorSourceCodeAccess
- # cd $srcdir/UnrealEngine/Engine/Config/Linux && sed -i '10c\PreferredAccessor=QtCreatorSourceCodeAccessor' LinuxEngine.ini
-
- # VIM or EMACS
- # cd $srcdir/UnrealEngine/Engine/Plugins/Developer && git clone https://github.com/fire/SensibleEditorSourceCodeAccess
- # cd $srcdir/UnrealEngine/Engine/Config/Linux && sed -i '10c\PreferredAccessor=SensibleEditorSourceCodeAccessor' LinuxEngine.ini
-
- # shellcheck disable=SC2164
- cd "$srcdir/UnrealEngine"
+ # Check access to the repository
+ if ! git ls-remote git@github.com:EpicGames/UnrealEngine &>-
+ then
+ error "You must register at unrealengine.com and link your github account to access this private repo. See the wiki for more info: https://wiki.archlinux.org/index.php/Unreal_Engine_4"
+ exit 1
+ fi
- # clean up old builds before building a new version
- #git clean -xdf
+ # Download Unreal Engine source or update if the folder exists
+ if [ ! -d $pkgname ]
+ then
+ git clone --depth=1 --branch=$pkgver-release git@github.com:EpicGames/UnrealEngine $pkgname
+ cd $pkgname
+ else
+ cd $pkgname
+ rm -f .git/index.lock
+ git fetch --depth=1 origin tag $pkgver-release
+ git reset --hard $pkgver-release
+ fi
+
+ patch Engine/Build/BatchFiles/Linux/SetupMono.sh $srcdir/use-arch-mono.patch # Use system mono
+
+ # Qt Creator source code access
+ if [ ! -d Engine/Plugins/Developer/QtCreatorSourceCodeAccess ]
+ then
+ git -C Engine/Plugins/Developer clone --depth=1 git@github.com:fire/QtCreatorSourceCodeAccess
+ fi
- # TODO check if setup files already exist. Check if file edited recently
- echo "Running setup"
+ export TERM=xterm
./Setup.sh
-
- echo "Generating project files"
./GenerateProjectFiles.sh -makefile
}
build() {
- # shellcheck disable=SC2164
- cd "$srcdir/UnrealEngine"
-
- # this should work instead of "git clean", but something leftover causes crashes
- #make ARGS=-clean
-
- # -j1 to force one make job; the first time fails if there are multiple jobs
- make -j1
+ cd $pkgname
+
+ # Build all targets from the "all" rule separately, because building multiple targets in parallel results in an error (but building one target with multiple threads is possible)
+ make CrashReportClient-Linux-Shipping
+ make CrashReportClientEditor-Linux-Shipping
+ make ShaderCompileWorker
+ make UnrealLightmass
+ make UnrealFrontend
+ make UE4Editor
+ make UnrealInsights
}
package() {
- # install dir
- dir="opt/$pkgname"
+ # Install dir
+# dir="opt/$pkgname"
+ dir="/mnt/Files/Programs/Linux/$pkgname"
- # install .desktop
- if [ "$dir" != "opt/$pkgname" ] # set new path if dir changed
+ # Desktop entry
+ if [ "$dir" != "opt/$pkgname" ] # Set new path if dir changed
then
- sed -i "5c\Path=/$dir/Engine/Binaries/Linux/" UE4Editor.desktop
- sed -i "6c\Exec=\'/$dir/Engine/Binaries/Linux/UE4Editor\' %F" UE4Editor.desktop
+ sed -i "5c\Path=/$dir/Engine/Binaries/Linux/" com.unrealengine.UE4Editor.desktop
fi
- # shellcheck disable=SC2154
- install -Dm644 UE4Editor.desktop "$pkgdir/usr/share/applications/UE4Editor.desktop"
-
- # shellcheck disable=SC2164
- cd "$srcdir/UnrealEngine"
-
- # license
- install -Dm644 LICENSE.md "$pkgdir/usr/share/licenses/UnrealEngine/LICENSE.md"
-
- # fix "could not chmod +x" warning when compiling c++ project
- chmod a+x Engine/Binaries/DotNET/IOS/IPhonePackager.exe
-
- # icon for .desktop file
- install -Dm644 Engine/Source/Programs/UnrealVS/Resources/Preview.png "$pkgdir/usr/share/pixmaps/UE4Editor.png"
-
- # engine
+ install -Dm644 com.unrealengine.UE4Editor.desktop $pkgdir/usr/share/applications/com.unrealengine.UE4Editor.desktop
+
+ cd $pkgname
+
+ # Icon for Desktop entry
+ install -Dm644 Engine/Source/Programs/UnrealVS/Resources/Preview.png $pkgdir/usr/share/pixmaps/ue4editor.png
+
+ # License
+ install -Dm644 LICENSE.md $pkgdir/usr/share/licenses/UnrealEngine/LICENSE.md
+
+ # Engine
install -d "$pkgdir/$dir/Engine"
mv Engine/Binaries "$pkgdir/$dir/Engine/Binaries"
mv Engine/Build "$pkgdir/$dir/Engine/Build"
mv Engine/Config "$pkgdir/$dir/Engine/Config"
mv Engine/Content "$pkgdir/$dir/Engine/Content"
- install -d "$pkgdir/$dir/Engine/DerivedDataCache" # editor needs this
mv Engine/Documentation "$pkgdir/$dir/Engine/Documentation"
mv Engine/Extras "$pkgdir/$dir/Engine/Extras"
- install -d "$pkgdir/$dir/Engine/Intermediate" # editor needs this, but not the contents
mv Engine/Plugins "$pkgdir/$dir/Engine/Plugins"
mv Engine/Programs "$pkgdir/$dir/Engine/Programs"
- mv Engine/Saved "$pkgdir/$dir/Engine/Saved"
mv Engine/Shaders "$pkgdir/$dir/Engine/Shaders"
- mv Engine/Source "$pkgdir/$dir/Engine/Source" # the source cannot be redistributed, but seems to be needed to compile c++ projects
-
- # these folders needs to be writable, otherwise there is a segmentation fault when starting the editor
- chmod -R a+rwX "$pkgdir/$dir/Engine"
-
- # content
+ mv Engine/Source "$pkgdir/$dir/Engine/Source"
+
+ # Required folders
+ install -d "$pkgdir/$dir/Engine/DerivedDataCache"
+ install -d "$pkgdir/$dir/Engine/Intermediate"
+ install -d "$pkgdir/$dir/Engine/Saved"
+
+ # Content
mv FeaturePacks "$pkgdir/$dir/FeaturePacks"
mv Samples "$pkgdir/$dir/Samples"
mv Templates "$pkgdir/$dir/Templates"
- # build scripts, used by some plugins (CLion)
+ # Build scripts, used by some plugins (CLion)
install -Dm755 GenerateProjectFiles.sh "$pkgdir/$dir/GenerateProjectFiles.sh"
install -Dm755 Setup.sh "$pkgdir/$dir/Setup.sh"
install -Dm644 .ue4dependencies "$pkgdir/$dir/.ue4dependencies"
}
-
-# vim:set ts=2 sw=2 et:
diff --git a/add-editorstyle-dependency.patch b/add-editorstyle-dependency.patch
deleted file mode 100644
index b2523b90f194..000000000000
--- a/add-editorstyle-dependency.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- UnrealEngine.orig/Engine/Source/Runtime/Launch/Launch.Build.cs
-+++ UnrealEngine/Engine/Source/Runtime/Launch/Launch.Build.cs
-@@ -183,6 +183,7 @@ public class Launch : ModuleRules
-
- PrivateDependencyModuleNames.AddRange(new string[] {
- "SourceControl",
-+ "EditorStyle",
- "UnrealEd",
- "DesktopPlatform",
- "PIEPreviewDeviceProfileSelector",
diff --git a/allow-unsupported-clang.patch b/allow-unsupported-clang.patch
deleted file mode 100644
index 6f2290d1f12c..000000000000
--- a/allow-unsupported-clang.patch
+++ /dev/null
@@ -1,26 +0,0 @@
---- src/UnrealEngine/Engine/Source/Programs/UnrealBuildTool/Platform/Linux/LinuxToolChain.cs.old 2019-11-26 21:47:43.158191012 -0500
-+++ src/UnrealEngine/Engine/Source/Programs/UnrealBuildTool/Platform/Linux/LinuxToolChain.cs 2019-11-26 21:48:30.800848886 -0500
-@@ -174,14 +174,6 @@
- {
- throw new BuildException("Unable to build: no compatible clang version found. Please run Setup.sh");
- }
-- // prevent unknown clangs since the build is likely to fail on too old or too new compilers
-- else if ((CompilerVersionMajor * 10 + CompilerVersionMinor) > 80 || (CompilerVersionMajor * 10 + CompilerVersionMinor) < 60)
-- {
-- throw new BuildException(
-- string.Format("This version of the Unreal Engine can only be compiled with clang 8.0, 7.0 and 6.0. clang {0} may not build it - please use a different version.",
-- CompilerVersionString)
-- );
-- }
-
- // trust lld only for clang 5.x and above (FIXME: also find if present on the system?)
- // NOTE: with early version you can run into errors like "failed to compute relocation:" and others
-@@ -565,7 +557,7 @@
- Result += " -fsanitize=undefined";
- }
-
-- Result += " -Wall -Werror";
-+ Result += " -Wall";
-
- if (!CompileEnvironment.Architecture.StartsWith("x86_64") && !CompileEnvironment.Architecture.StartsWith("i686"))
- {
diff --git a/UE4Editor.desktop b/com.unrealengine.UE4Editor.desktop
index 90778ceff526..7c07a174abbe 100644
--- a/UE4Editor.desktop
+++ b/com.unrealengine.UE4Editor.desktop
@@ -3,9 +3,9 @@ Type=Application
Name=Unreal Engine 4 Editor
Comment=Create next-generation video games
Path=/opt/unreal-engine/Engine/Binaries/Linux/
-Exec=/opt/unreal-engine/Engine/Binaries/Linux/UE4Editor %F
+Exec=UE4Editor %F
MimeType=text/x-uproject
-Icon=UE4Editor
+Icon=ue4editor
Terminal=false
Categories=Development;
diff --git a/ignore-clang50-install.patch b/ignore-clang50-install.patch
deleted file mode 100644
index 3a94a919c886..000000000000
--- a/ignore-clang50-install.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- Setup.sh 2018-11-07 22:50:22.997048687 -0600
-+++ Setup_new.sh 2018-11-07 23:04:31.947012499 -0600
-@@ -41,7 +41,7 @@
- fi
-
- # Install our bundled toolchain unless we are running a Perforce build or a an our of source toolchain is available.
--if [ ! -f Build/PerforceBuild.txt ] && [ -z "$LINUX_MULTIARCH_ROOT" ] && [ -z "$UE_SDKS_ROOT" ]; then
-+if [ ! -f Build/PerforceBuild.txt ] && [[ "$ID" != "arch" ]] && [ -z "$LINUX_MULTIARCH_ROOT" ] && [ -z "$UE_SDKS_ROOT" ]; then
- echo "Installing a bundled clang toolchain"
- pushd Build/BatchFiles/Linux > /dev/null
- ./SetupToolchain.sh
diff --git a/recompile-version-selector.patch b/recompile-version-selector.patch
deleted file mode 100644
index 2e9342d5c53a..000000000000
--- a/recompile-version-selector.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- Setup.sh 2018-07-20 11:07:26.136221539 -0500
-+++ Setup_new.sh 2018-07-20 11:10:00.662078181 -0500
-@@ -41,6 +41,8 @@
-
- echo Register the engine installation...
- if [ -f Engine/Binaries/Linux/UnrealVersionSelector-Linux-Shipping ]; then
-+ make
-+
- pushd Engine/Binaries/Linux > /dev/null
- ./UnrealVersionSelector-Linux-Shipping -register
- popd > /dev/null
diff --git a/remove-sysctl-include.patch b/remove-sysctl-include.patch
deleted file mode 100644
index e905ebccad7f..000000000000
--- a/remove-sysctl-include.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- UnixSystemIncludes.h
-+++ UnixSystemIncludes_new.h
-@@ -31,7 +31,6 @@
- #include <utime.h>
- #include <execinfo.h>
- #include <signal.h>
--#include <sys/sysctl.h>
- #if PLATFORM_ENABLE_VECTORINTRINSICS
- #include <xmmintrin.h>
- #endif // PLATFORM_RASPBERRY
diff --git a/unreal-engine.install b/unreal-engine.install
deleted file mode 100644
index c0c74c11c51a..000000000000
--- a/unreal-engine.install
+++ /dev/null
@@ -1,15 +0,0 @@
-
-
-install_unreal() {
- sed -ri 's|(..*)-makefile.*|\1-projectfiles "$@"|' /opt/unreal-engine/Engine/Build/BatchFiles/Linux/GenerateProjectFiles.sh
- sed -ri '/(..*)make.*/,+1d' /opt/unreal-engine/Setup.sh
- #/opt/unreal-engine/GenerateProjectFiles.sh
-}
-
-post_install() {
- install_unreal
-}
-
-post_upgrade() {
- install_unreal
-}
diff --git a/use-arch-mono.patch b/use-arch-mono.patch
index 1499016525a1..b1a256e1b112 100644
--- a/use-arch-mono.patch
+++ b/use-arch-mono.patch
@@ -1,5 +1,5 @@
---- SetupMono.sh 2019-09-05 18:59:40.953565669 -0500
-+++ SetupMono.sh.new 2019-09-05 19:05:21.203570187 -0500
+--- SetupMono-orig.sh 2019-09-05 18:59:40.953565669 -0500
++++ SetupMono.sh 2019-09-05 19:05:21.203570187 -0500
@@ -11,6 +11,7 @@
bash FixDependencyFiles.sh