summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorgargan2019-10-23 21:45:31 -0400
committergargan2019-10-23 21:45:31 -0400
commitf02255f8d8b20797175562e2b836791c34af04f6 (patch)
treed4e8f690e2a566a4d8aa5ddf54e9c96dc35de97b
downloadaur-f02255f8d8b20797175562e2b836791c34af04f6.tar.gz
Initial commit.
-rw-r--r--.SRCINFO37
-rw-r--r--.gitignore1
-rw-r--r--PKGBUILD80
-rw-r--r--libloot-0.14.10.patch34
-rw-r--r--loot-0.14.6.patch26
5 files changed, 178 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..061f4b7c1ab6
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,37 @@
+pkgbase = loot
+ pkgdesc = A load order optimisation tool for the Elder Scrolls (Morrowind and later) and Fallout (3 and later) games.
+ pkgver = 0.14.6
+ pkgrel = 1
+ url = https://loot.github.io
+ arch = x86_64
+ license = GPL3
+ makedepends = git
+ makedepends = cmake
+ makedepends = rust
+ makedepends = cbindgen
+ makedepends = yarn
+ makedepends = boost
+ depends = boost-libs
+ depends = http-parser
+ depends = libssh2
+ depends = alsa-lib
+ depends = nss
+ depends = pango
+ depends = atk
+ depends = libxdamage
+ depends = libxcomposite
+ depends = libxcursor
+ depends = libxrandr
+ depends = libxss
+ depends = libxtst
+ source = loot-0.14.6.tar.gz::https://github.com/loot/loot/archive/0.14.6.tar.gz
+ source = libloot-0.14.10.tar.gz::https://github.com/loot/libloot/archive/0.14.10.tar.gz
+ source = local://libloot-0.14.10.patch
+ source = local://loot-0.14.6.patch
+ sha256sums = 04eeedfd99282bcedd23f571f1174aaeac457504c5811e49f7e00c8c9db51908
+ sha256sums = be8ed5e7555bd3187aeb7f32c2eefdf7e327f070d986842224e03a9447feda22
+ sha256sums = 398a12144bec5405824b870e65b75077fd140ae7a95afd7ca21589e08af82146
+ sha256sums = 41e0ec231caf417f79bd895677b71d27d56af33bced919a34e93474bbde357f8
+
+pkgname = loot
+
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 000000000000..72e8ffc0db8a
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1 @@
+*
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..c1f532442c60
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,80 @@
+# Maintainer: John Troxler <firstname dot lastname at gmail dot com>
+
+pkgname=loot
+pkgver=0.14.6
+_pkglibver=0.14.10
+pkgrel=1
+pkgdesc="A load order optimisation tool for the Elder Scrolls (Morrowind and later) and Fallout (3 and later) games."
+arch=('x86_64')
+url="https://loot.github.io"
+license=('GPL3')
+depends=('boost-libs' 'http-parser' 'libssh2' 'alsa-lib' 'nss' 'pango' 'atk' 'libxdamage' 'libxcomposite' 'libxcursor' 'libxrandr' 'libxss' 'libxtst')
+makedepends=('git' 'cmake' 'rust' 'cbindgen' 'yarn' 'boost')
+source=("$pkgname-$pkgver.tar.gz::https://github.com/$pkgname/$pkgname/archive/$pkgver.tar.gz"
+ "lib$pkgname-$_pkglibver.tar.gz::https://github.com/$pkgname/lib$pkgname/archive/$_pkglibver.tar.gz"
+ "local://lib$pkgname-$_pkglibver.patch"
+ "local://$pkgname-$pkgver.patch")
+sha256sums=('04eeedfd99282bcedd23f571f1174aaeac457504c5811e49f7e00c8c9db51908'
+ 'be8ed5e7555bd3187aeb7f32c2eefdf7e327f070d986842224e03a9447feda22'
+ '398a12144bec5405824b870e65b75077fd140ae7a95afd7ca21589e08af82146'
+ '41e0ec231caf417f79bd895677b71d27d56af33bced919a34e93474bbde357f8')
+
+prepare() {
+ # libloot
+ cd "$srcdir/lib$pkgname-$_pkglibver"
+ patch -p1 <"$srcdir/lib$pkgname-$_pkglibver.patch"
+
+ # loot
+ cd "$srcdir/$pkgname-$pkgver"
+ patch -p1 <"$srcdir/$pkgname-$pkgver.patch"
+
+ yarn install
+}
+
+build() {
+ # libloot
+ cd "$srcdir/lib$pkgname-$_pkglibver"
+ mkdir build
+ cd build
+ cmake .. -DCMAKE_SKIP_RPATH=TRUE
+ make loot
+
+ mkdir pkg
+ cp lib$pkgname.so ./pkg/
+ cp -r ../include/ ./pkg/
+ tar -zcf lib$pkgname-$_pkglibver.tar.gz ./pkg/
+
+ # loot
+ cd "$srcdir/$pkgname-$pkgver"
+ mkdir build
+ cd build
+ cmake .. -DLIBLOOT_URL="$srcdir/lib$pkgname-$_pkglibver/build/lib$pkgname-$_pkglibver.tar.gz" -DCMAKE_BUILD_WITH_INSTALL_RPATH=TRUE -DCMAKE_INSTALL_RPATH="/opt/$pkgname"
+ make LOOT
+}
+
+package() {
+ _builddir="$srcdir/$pkgname-$pkgver/build"
+
+ install -Dm755 -t "$pkgdir/opt/$pkgname" \
+ "$_builddir/LOOT" \
+ "$_builddir/lib$pkgname.so" \
+ "$_builddir/libcef.so"
+
+ install -Dm644 -t "$pkgdir/opt/$pkgname" \
+ "$_builddir/icudtl.dat" \
+ "$_builddir/external/src/cef/Resources/cef_extensions.pak" \
+ "$_builddir/natives_blob.bin" \
+ "$_builddir/snapshot_blob.bin" \
+ "$_builddir/v8_context_snapshot.bin" \
+ "$_builddir/cef.pak" \
+ "$_builddir/cef_100_percent.pak" \
+ "$_builddir/cef_200_percent.pak"
+
+ install -Dm644 -t "$pkgdir/opt/$pkgname/resources/l10n" \
+ "$_builddir/external/src/cef/Resources/locales"/*.pak
+
+ cp -r "$_builddir/resources/ui" "$pkgdir/opt/$pkgname/resources/"
+
+ mkdir -p "$pkgdir/usr/bin"
+ ln -s "/opt/$pkgname/LOOT" "$pkgdir/usr/bin"
+}
diff --git a/libloot-0.14.10.patch b/libloot-0.14.10.patch
new file mode 100644
index 000000000000..9c01fafd1b9a
--- /dev/null
+++ b/libloot-0.14.10.patch
@@ -0,0 +1,34 @@
+diff -aru a/src/api/game/load_order_handler.h b/src/api/game/load_order_handler.h
+--- a/src/api/game/load_order_handler.h 2019-10-21 16:34:59.069308937 -0400
++++ b/src/api/game/load_order_handler.h 2019-10-21 16:30:11.742569749 -0400
+@@ -29,6 +29,7 @@
+ #include <list>
+ #include <string>
+ #include <unordered_set>
++#include <vector>
+
+ #include <libloadorder.hpp>
+
+diff -aru a/src/api/helpers/text.cpp b/src/api/helpers/text.cpp
+--- a/src/api/helpers/text.cpp 2019-10-21 16:36:52.762753869 -0400
++++ b/src/api/helpers/text.cpp 2019-10-21 16:37:24.112790799 -0400
+@@ -152,8 +152,8 @@
+ "One of the filenames to compare was invalid.");
+ }
+ #else
+- auto unicodeLhs = UnicodeString::fromUTF8(lhs);
+- auto unicodeRhs = UnicodeString::fromUTF8(rhs);
++ auto unicodeLhs = icu::UnicodeString::fromUTF8(lhs);
++ auto unicodeRhs = icu::UnicodeString::fromUTF8(rhs);
+ return unicodeLhs.caseCompare(unicodeRhs, U_FOLD_CASE_DEFAULT);
+ #endif
+ }
+@@ -165,7 +165,7 @@
+ return FromWinWide(wideString);
+ #else
+ std::string normalizedFilename;
+- UnicodeString::fromUTF8(filename)
++ icu::UnicodeString::fromUTF8(filename)
+ .foldCase(U_FOLD_CASE_DEFAULT)
+ .toUTF8String(normalizedFilename);
+ return normalizedFilename;
diff --git a/loot-0.14.6.patch b/loot-0.14.6.patch
new file mode 100644
index 000000000000..e1fa89075175
--- /dev/null
+++ b/loot-0.14.6.patch
@@ -0,0 +1,26 @@
+diff -aru a/CMakeLists.txt b/CMakeLists.txt
+--- a/CMakeLists.txt 2019-10-21 21:47:49.376729092 -0400
++++ b/CMakeLists.txt 2019-10-22 01:57:36.572070650 -0400
+@@ -40,7 +40,7 @@
+ # External Projects
+ ##############################
+
+-set (Boost_USE_STATIC_LIBS ON)
++set (Boost_USE_STATIC_LIBS OFF)
+ set (Boost_USE_MULTITHREADED ON)
+
+ IF (MSVC)
+diff -aru a/src/gui/helpers.cpp b/src/gui/helpers.cpp
+--- a/src/gui/helpers.cpp 2019-10-21 17:38:30.913050954 -0400
++++ b/src/gui/helpers.cpp 2019-10-21 17:38:17.576261366 -0400
+@@ -148,8 +148,8 @@
+ "One of the filenames to compare was invalid.");
+ }
+ #else
+- auto unicodeLhs = UnicodeString::fromUTF8(lhs);
+- auto unicodeRhs = UnicodeString::fromUTF8(rhs);
++ auto unicodeLhs = icu::UnicodeString::fromUTF8(lhs);
++ auto unicodeRhs = icu::UnicodeString::fromUTF8(rhs);
+ return unicodeLhs.caseCompare(unicodeRhs, U_FOLD_CASE_DEFAULT);
+ #endif
+ }