diff options
author | Michael Hansen | 2016-02-11 18:59:47 -0800 |
---|---|---|
committer | Michael Hansen | 2016-02-11 19:03:33 -0800 |
commit | 68d21968bd91545b307ee20f3c199bbb6ba624c8 (patch) | |
tree | 2368c436e1eddf857197fe5194bff6df0256e2a4 | |
download | aur-68d21968bd91545b307ee20f3c199bbb6ba624c8.tar.gz |
Initial version
-rw-r--r-- | .SRCINFO | 64 | ||||
-rw-r--r-- | .gitignore | 4 | ||||
-rw-r--r-- | PKGBUILD | 161 | ||||
-rw-r--r-- | swift-no-docs.patch | 12 |
4 files changed, 241 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..4e5e53e674eb --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,64 @@ +# Generated by mksrcinfo v8 +# Fri Feb 12 03:03:25 UTC 2016 +pkgbase = swift-development + pkgdesc = The Swift programming language and debugger - latest development snapshot + pkgver = DEVELOPMENT.SNAPSHOT.2016.02.08.a + pkgrel = 1 + url = http://swift.org/ + arch = i686 + arch = x86_64 + license = apache + makedepends = git + makedepends = cmake + makedepends = ninja + makedepends = swig + makedepends = clang>=3.6 + makedepends = python2-six + depends = python2 + depends = libutil-linux + depends = icu + depends = libbsd + depends = libedit + depends = libxml2 + depends = sqlite + depends = ncurses + source = swift-DEVELOPMENT-SNAPSHOT-2016-02-08-a.tar.gz::https://github.com/apple/swift/archive/swift-DEVELOPMENT-SNAPSHOT-2016-02-08-a.tar.gz + source = swift-llvm-DEVELOPMENT-SNAPSHOT-2016-02-08-a.tar.gz::https://github.com/apple/swift-llvm/archive/swift-DEVELOPMENT-SNAPSHOT-2016-02-08-a.tar.gz + source = swift-clang-DEVELOPMENT-SNAPSHOT-2016-02-08-a.tar.gz::https://github.com/apple/swift-clang/archive/swift-DEVELOPMENT-SNAPSHOT-2016-02-08-a.tar.gz + source = swift-lldb-DEVELOPMENT-SNAPSHOT-2016-02-08-a.tar.gz::https://github.com/apple/swift-lldb/archive/swift-DEVELOPMENT-SNAPSHOT-2016-02-08-a.tar.gz + source = swift-cmark-DEVELOPMENT-SNAPSHOT-2016-02-08-a.tar.gz::https://github.com/apple/swift-cmark/archive/swift-DEVELOPMENT-SNAPSHOT-2016-02-08-a.tar.gz + source = swift-llbuild-DEVELOPMENT-SNAPSHOT-2016-02-08-a.tar.gz::https://github.com/apple/swift-llbuild/archive/swift-DEVELOPMENT-SNAPSHOT-2016-02-08-a.tar.gz + source = swift-package-manager-DEVELOPMENT-SNAPSHOT-2016-02-08-a.tar.gz::https://github.com/apple/swift-package-manager/archive/swift-DEVELOPMENT-SNAPSHOT-2016-02-08-a.tar.gz + source = swift-corelibs-xctest-DEVELOPMENT-SNAPSHOT-2016-02-08-a.tar.gz::https://github.com/apple/swift-corelibs-xctest/archive/swift-DEVELOPMENT-SNAPSHOT-2016-02-08-a.tar.gz + source = swift-corelibs-foundation-DEVELOPMENT-SNAPSHOT-2016-02-08-a.tar.gz::https://github.com/apple/swift-corelibs-foundation/archive/swift-DEVELOPMENT-SNAPSHOT-2016-02-08-a.tar.gz + source = swift-no-docs.patch + sha256sums = 68d867bea4a2c13af60310d09fed1272eef33a9712f5283ff7feb6588d5d2f1c + sha256sums = 0e9460c2201523e9df79753f542d1a7b9a288be971aa8db23cee16414f8467bd + sha256sums = 715506f172a4bd03a5a09e8c161d17ae17e735baa2f9d7142651e516168e30c5 + sha256sums = c80983f31096e1872d6b674ccd8c64cb6071c35b8ad0bfb5f72af4cf70a1a630 + sha256sums = f229e6217d985fb0a80aaef187e4fdc2fea9a4cefc7a0fb365f6bca6d5184034 + sha256sums = 0e73731af8bcf8416b8162f765e27840cc12a66e43bd7f4be68808112a2ae9df + sha256sums = 036379b55d9df9150e61e009fde5f5dd88f6e38624aa0a7ff826199c6cabd047 + sha256sums = 5fa849e65cbc28b8da5f3c213a7c8644f7c25a2fdd8c88515265776522b07fe4 + sha256sums = efa5ce12806ca4cadcb84958a99329c9b15802dd1d6df88affd798bd0786fdd9 + sha256sums = 1a8663c48a1a203d1825ae62a7e4191e4980a2dad461d4d88152221ad9e2171d + +pkgname = swift-development + pkgdesc = The Swift programming language compiler and tools - development snapshot + optdepends = swift-lldb: Swift REPL and debugger + provides = swift-language + conflicts = swift-language-git + conflicts = swift-git + conflicts = swift-bin + conflicts = swift + +pkgname = swift-lldb-development + pkgdesc = The Swift programming language debugger (LLDB) and REPL - development snapshot + depends = swift-language + depends = python2-six + provides = lldb + provides = swift-lldb + conflicts = lldb + conflicts = swift-lldb + options = !strip + diff --git a/.gitignore b/.gitignore new file mode 100644 index 000000000000..022fbdd3bca9 --- /dev/null +++ b/.gitignore @@ -0,0 +1,4 @@ +/src/ +/pkg/ +*.tar.xz +*.tar.gz diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..442571c4bbc6 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,161 @@ +pkgbase=swift-development +pkgname=(swift-development swift-lldb-development) +_swiftver=DEVELOPMENT-SNAPSHOT-2016-02-08-a +pkgver=${_swiftver//-/.} +pkgrel=1 +pkgdesc="The Swift programming language and debugger - latest development snapshot" +arch=('i686' 'x86_64') +url="http://swift.org/" +license=('apache') +depends=('python2' 'libutil-linux' 'icu' 'libbsd' 'libedit' 'libxml2' + 'sqlite' 'ncurses') +makedepends=('git' 'cmake' 'ninja' 'swig' 'clang>=3.6' 'python2-six') +source=( + "swift-${_swiftver}.tar.gz::https://github.com/apple/swift/archive/swift-${_swiftver}.tar.gz" + "swift-llvm-${_swiftver}.tar.gz::https://github.com/apple/swift-llvm/archive/swift-${_swiftver}.tar.gz" + "swift-clang-${_swiftver}.tar.gz::https://github.com/apple/swift-clang/archive/swift-${_swiftver}.tar.gz" + "swift-lldb-${_swiftver}.tar.gz::https://github.com/apple/swift-lldb/archive/swift-${_swiftver}.tar.gz" + "swift-cmark-${_swiftver}.tar.gz::https://github.com/apple/swift-cmark/archive/swift-${_swiftver}.tar.gz" + "swift-llbuild-${_swiftver}.tar.gz::https://github.com/apple/swift-llbuild/archive/swift-${_swiftver}.tar.gz" + "swift-package-manager-${_swiftver}.tar.gz::https://github.com/apple/swift-package-manager/archive/swift-${_swiftver}.tar.gz" + "swift-corelibs-xctest-${_swiftver}.tar.gz::https://github.com/apple/swift-corelibs-xctest/archive/swift-${_swiftver}.tar.gz" + "swift-corelibs-foundation-${_swiftver}.tar.gz::https://github.com/apple/swift-corelibs-foundation/archive/swift-${_swiftver}.tar.gz" + "swift-no-docs.patch" +) +sha256sums=('68d867bea4a2c13af60310d09fed1272eef33a9712f5283ff7feb6588d5d2f1c' + '0e9460c2201523e9df79753f542d1a7b9a288be971aa8db23cee16414f8467bd' + '715506f172a4bd03a5a09e8c161d17ae17e735baa2f9d7142651e516168e30c5' + 'c80983f31096e1872d6b674ccd8c64cb6071c35b8ad0bfb5f72af4cf70a1a630' + 'f229e6217d985fb0a80aaef187e4fdc2fea9a4cefc7a0fb365f6bca6d5184034' + '0e73731af8bcf8416b8162f765e27840cc12a66e43bd7f4be68808112a2ae9df' + '036379b55d9df9150e61e009fde5f5dd88f6e38624aa0a7ff826199c6cabd047' + '5fa849e65cbc28b8da5f3c213a7c8644f7c25a2fdd8c88515265776522b07fe4' + 'efa5ce12806ca4cadcb84958a99329c9b15802dd1d6df88affd798bd0786fdd9' + '1a8663c48a1a203d1825ae62a7e4191e4980a2dad461d4d88152221ad9e2171d') + +prepare() { + # Use python2 where appropriate + find "$srcdir" -type f -print0 | \ + xargs -0 sed -i 's|/usr/bin/env python$|&2|' + find "$srcdir/swift-lldb-swift-${_swiftver}" -name Makefile -print0 | \ + xargs -0 sed -i 's|python-config|python2-config|g' + sed -i '/^cmake_minimum_required/a set(Python_ADDITIONAL_VERSIONS 2.7)' \ + "$srcdir/swift-swift-${_swiftver}/CMakeLists.txt" + sed -i '/^cmake_minimum_required/a set(Python_ADDITIONAL_VERSIONS 2.7)' \ + "$srcdir/swift-lldb-swift-${_swiftver}/CMakeLists.txt" + sed -i 's/\<python\>/&2/' \ + "$srcdir/swift-swift-${_swiftver}/utils/build-script-impl" + + # Fix bad include paths + find "$srcdir" -type f -print0 | \ + xargs -0 sed -i 's|/usr/include/x86_64-linux-gnu|/usr/include|g' + + # Use directory names which build-script expects + for sdir in llvm clang lldb cmark llbuild corelibs-xctest corelibs-foundation; do + if [[ "$sdir" =~ ^corelibs- ]]; then + ln -sf swift-${sdir}-swift-${_swiftver} swift-${sdir} + else + ln -sf swift-${sdir}-swift-${_swiftver} ${sdir} + fi + done + ln -sf swift-swift-${_swiftver} swift + ln -sf swift-package-manager-swift-${_swiftver} swiftpm + + # Sphinx 1.3.5 raises a warning (promoted to error) when using an unknown + # syntax highlighting language (like "swift"). + ( cd "${srcdir}/swift" && patch -p1 -i "${srcdir}/swift-no-docs.patch" ) +} + +build() { + cd "$srcdir/swift" + + export SWIFT_SOURCE_ROOT="$srcdir" + export LDFLAGS='-ldl -lpthread' + utils/build-script -R \ + --lldb --llbuild --swiftpm --xctest --foundation \ + -j "$(lscpu --parse=CPU | grep -v '^#' | wc -l)" +} + +check() { + cd "$srcdir/swift" + + export SWIFT_SOURCE_ROOT="$srcdir" + utils/build-script -R -t +} + +package_swift-development() { + pkgdesc='The Swift programming language compiler and tools - development snapshot' + provides=('swift-language') + conflicts=('swift-language-git' 'swift-git' 'swift-bin' 'swift') + optdepends=('swift-lldb: Swift REPL and debugger') + + cd "$srcdir/build/Ninja-ReleaseAssert" + + install -dm755 "$pkgdir/usr/bin" + install -dm755 "$pkgdir/usr/lib/swift" + + # Swift's components don't provide an install target :( + # These are based on what's included in the binary release packages + ( + cd swift-linux-$CARCH + install -m755 bin/swift bin/swift-demangle bin/swift-ide-test "$pkgdir/usr/bin" + ln -s swift "$pkgdir/usr/bin/swiftc" + ln -s swift "$pkgdir/usr/bin/swift-autolink-extract" + + install -dm755 "$pkgdir/usr/share/man/man1" + install -m644 docs/tools/swift.1 "$pkgdir/usr/share/man/man1" + + umask 0022 + cp -rL lib/swift/{clang,glibc,linux,shims} "$pkgdir/usr/lib/swift/" + ) + ( + cd llbuild-linux-$CARCH + install -m755 bin/swift-build-tool "$pkgdir/usr/bin" + ) + ( + cd swiftpm-linux-$CARCH + install -m755 debug/swift-build "$pkgdir/usr/bin" + + install -dm755 "$pkgdir/usr/lib/swift/pm" + install -m755 lib/swift/pm/libPackageDescription.so "$pkgdir/usr/lib/swift/pm" + install -m644 lib/swift/pm/PackageDescription.swiftmodule "$pkgdir/usr/lib/swift/pm" + ) + ( + cd foundation-linux-$CARCH + install -m755 Foundation/libFoundation.so "$pkgdir/usr/lib/swift/linux/" + install -m644 Foundation/Foundation.swiftdoc "$pkgdir/usr/lib/swift/linux/$CARCH" + install -m644 Foundation/Foundation.swiftmodule "$pkgdir/usr/lib/swift/linux/$CARCH" + + umask 0022 + cp -r Foundation/usr/lib/swift/CoreFoundation "$pkgdir/usr/lib/swift/" + ) + ( + cd xctest-linux-$CARCH + install -m755 libXCTest.so "$pkgdir/usr/lib/swift/linux/" + install -m644 XCTest.swiftdoc "$pkgdir/usr/lib/swift/linux/$CARCH" + install -m644 XCTest.swiftmodule "$pkgdir/usr/lib/swift/linux/$CARCH" + ) + + # License file + install -dm755 "$pkgdir/usr/share/licenses/swift" + install -m644 "$srcdir/swift/LICENSE.txt" "$pkgdir/usr/share/licenses/swift" +} + +package_swift-lldb-development() { + pkgdesc='The Swift programming language debugger (LLDB) and REPL - development snapshot' + depends=('swift-language' 'python2-six') + provides=('lldb' 'swift-lldb') + conflicts=('lldb' 'swift-lldb') + options=('!strip') # Don't strip repl_swift -- we need its symbols + + cd "$srcdir/build/Ninja-ReleaseAssert" + + # Install swift-capable lldb + ( + cd lldb-linux-$CARCH + DESTDIR="$pkgdir" ninja install + ) + + # This should be provided from python2-six + rm "$pkgdir/usr/lib/python2.7/site-packages/six.py" +} diff --git a/swift-no-docs.patch b/swift-no-docs.patch new file mode 100644 index 000000000000..47fb791dd7ea --- /dev/null +++ b/swift-no-docs.patch @@ -0,0 +1,12 @@ +diff -rupN a/docs/CMakeLists.txt b/docs/CMakeLists.txt +--- a/docs/CMakeLists.txt 2016-02-11 13:07:07.451027973 -0800 ++++ b/docs/CMakeLists.txt 2016-02-11 13:06:30.881026867 -0800 +@@ -14,7 +14,7 @@ SET(SPHINX_ARGS + -D latex_paper_size=${SWIFT_SPHINX_PAPER_SIZE} + -d ${CMAKE_BINARY_DIR}/doctrees) + +-if(SPHINX_EXECUTABLE) ++if(FALSE) + add_custom_target(docs_html ALL + ${SPHINX_EXECUTABLE} ${SPHINX_ARGS} -b html + . ${CMAKE_BINARY_DIR}/docs/html |