summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO19
-rw-r--r--.gitignore4
-rw-r--r--0002-llbuild-ninja-test-binary-links-against-ncurses.patch25
-rw-r--r--PKGBUILD48
4 files changed, 96 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..efea0850f524
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,19 @@
+pkgbase = llbuild-git
+ pkgdesc = Build system and library at the core of XCode and Swift package manager.
+ pkgver = swift.DEVELOPMENT.SNAPSHOT.2020.09.23.a.r0.g3332fc26
+ pkgrel = 1
+ url = https://swift.org/
+ arch = x86_64
+ license = apache2
+ makedepends = clang
+ makedepends = git
+ makedepends = ninja
+ provides = llbuild
+ conflicts = llbuild
+ source = llbuild::git+https://github.com/apple/swift-llbuild
+ source = 0002-llbuild-ninja-test-binary-links-against-ncurses.patch
+ md5sums = SKIP
+ md5sums = SKIP
+
+pkgname = llbuild-git
+
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 000000000000..31306a881695
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,4 @@
+/pkg/
+/src/
+/llbuild
+/*.tar.zst
diff --git a/0002-llbuild-ninja-test-binary-links-against-ncurses.patch b/0002-llbuild-ninja-test-binary-links-against-ncurses.patch
new file mode 100644
index 000000000000..6ff3f16ce0ca
--- /dev/null
+++ b/0002-llbuild-ninja-test-binary-links-against-ncurses.patch
@@ -0,0 +1,25 @@
+From bc82c7d063aff71d09e9a0cef4e059c278459f47 Mon Sep 17 00:00:00 2001
+From: soloturn <soloturn@gmail.com>
+Date: Tue, 15 Sep 2020 02:53:24 +0200
+Subject: [PATCH] llbuild ninja test binary links against ncurses
+
+llbuild ninja test binary needs to link against ncurses:
+https://github.com/apple/swift-llbuild/blob/a9f4b75cf7288156ed1880f98cebe17da1543a38/Package.swift#L207
+---
+ lib/llvm/Support/CMakeLists.txt | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/lib/llvm/Support/CMakeLists.txt b/lib/llvm/Support/CMakeLists.txt
+index 5871d60a..9d5a714b 100644
+--- a/lib/llvm/Support/CMakeLists.txt
++++ b/lib/llvm/Support/CMakeLists.txt
+@@ -64,3 +64,6 @@ if(${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD")
+ execinfo)
+ endif()
+
++if(${CMAKE_SYSTEM_NAME} MATCHES "Android|Darwin|Linux")
++ target_link_libraries(llvmSupport PRIVATE curses)
++endif()
+--
+2.28.0
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..2748194f99fa
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,48 @@
+# Maintainer: soloturn@gmail.com
+
+_basename=llbuild
+pkgname="$_basename-git"
+pkgver=swift.DEVELOPMENT.SNAPSHOT.2020.09.23.a.r0.g3332fc26
+pkgrel=1
+pkgdesc="Build system and library at the core of XCode and Swift package manager."
+arch=('x86_64')
+url="https://swift.org/"
+license=('apache2')
+conflicts=("$_basename")
+provides=("$_basename")
+makedepends=('clang' 'git' 'ninja')
+source=(
+ 'llbuild::git+https://github.com/apple/swift-llbuild'
+ '0002-llbuild-ninja-test-binary-links-against-ncurses.patch'
+)
+md5sums=(
+ 'SKIP'
+ 'SKIP'
+)
+
+pkgver() {
+ cd "$_basename"
+ git describe --long | sed 's/\([^-]*-g\)/r\1/;s/-/./g'
+}
+
+prepare() {
+ mkdir -p build
+ ( cd "$_basename" && patch -p1 -i "$srcdir/0002-llbuild-ninja-test-binary-links-against-ncurses.patch" )
+}
+
+build() {
+ cd build
+
+ # this is a copy of the build command generated by apples build-script, when building swift:
+ #/usr/sbin/cmake -G Ninja -DCMAKE_C_COMPILER:PATH=/usr/sbin/clang -DCMAKE_CXX_COMPILER:PATH=/usr/sbin/clang++ -DCMAKE_LIBTOOL:PATH=/usr/sbin/libtool -DLLVM_VERSION_MAJOR:STRING=10 -DLLVM_VERSION_MINOR:STRING=0 -DLLVM_VERSION_PATCH:STRING=0 -DCLANG_VERSION_MAJOR:STRING=10 -DCLANG_VERSION_MINOR:STRING=0 -DCLANG_VERSION_PATCH:STRING=0 -DCMAKE_MAKE_PROGRAM=/usr/sbin/ninja -DCMAKE_BUILD_TYPE:STRING=Release -DCMAKE_INSTALL_PREFIX:PATH=/usr/ -DCMAKE_IGNORE_PATH=/usr/include/bits
+
+ CXX=clang++ CC=clang cmake ../${_basename} -G Ninja -DCMAKE_BUILD_TYPE:STRING=Release -DCMAKE_INSTALL_PREFIX:PATH=/usr/
+ ninja
+}
+
+package() {
+ cd build
+ DESTDIR="${pkgdir}" ninja install
+}
+
+# vim:set ts=2 sw=2 et: