Package Details: swift-language 5.10.1-1

Git Clone URL: https://aur.archlinux.org/swift-language.git (read-only, click to copy)
Package Base: swift-language
Description: The Swift programming language and debugger
Upstream URL: https://github.com/apple/swift
Licenses: Apache-2.0
Submitter: Zrax
Maintainer: soloturn (fanjiang, refi.64, spacecowgirl, medzik, KyleYe, xiota)
Last Packager: xiota
Votes: 45
Popularity: 0.000051
First Submitted: 2016-01-08 23:39 (UTC)
Last Updated: 2024-07-02 17:33 (UTC)

Sources (35)

Pinned Comments

xiota commented on 2023-12-31 14:56 (UTC) (edited on 2024-07-13 07:31 (UTC) by xiota)

While I was able to build this in a clean chroot, consider this package to be a wip.

  • According to this comment, swift does need swift to build. So if you haven't previously built this package, you'll need aur/swift-bin.

  • This package attempts to install only swift to /usr/lib/swift.

    • Building (5.9.2) takes about 15GB. Package is 650MB. Installed size is 2GB.
    • cmark and llvm are built, but not installed. If they are installed, space requirement increases to 20GB, package is 2GB, and installed size 7GB.
    • Above space requirements count only the build tree. Does not include space needed to download and install depends. Does not include temporary files that may have been created and deleted by the build system.
    • I don't know if everything actually works correctly. Someone who knows better would have to check. (I would use swift-bin, especially since it's already needed to build this.)
  • This package does not make debug symbols. With debugging enabled, over 70GB would be required to build. I don't know package or install size because I hadn't figured out how to install at that time.

soloturn commented on 2020-09-06 22:25 (UTC) (edited on 2023-02-05 07:39 (UTC) by soloturn)

to speed up check out of the repositories, use shallow or sparse clone, e.g.:

  GITFLAGS="--depth=1" paru -S swift-language

other options to install swift are currently:

  • swift-bin, which repackages tachoknights official released centos8 build: https://aur.archlinux.org/packages/swift-bin/. the install is quick, no hours of waiting until everything is compiled.

  • latest from git, in swift-language-git. there is a binary built with github actions, but this build is not particularly stable, sometimes it uses more resources than github allows, sometimes it fails for a change upstream. the version number is taken out of the official tag on apple/swift main branch: e.g. swift-language-git-swift.DEVELOPMENT.SNAPSHOT.2020.09.28.a.r208.g6651f6e55d4-1-x86_64.pkg.tar.zst. so this one is the development tag from sep 28 + 208 commits, the commit hash is g6651f: aur - https://aur.archlinux.org/packages/swift-language-git. gh-actions: https://github.com/soloturn/swift-aur/releases/tag/latest

there was an 5.4.1 binary build, native arch, by fanjiang, built on GCE: https://github.com/ProfFan/swift-aur/releases

Latest Comments

« First ‹ Previous 1 .. 9 10 11 12 13 14 15 Next › Last »

jdarnold commented on 2016-09-21 17:57 (UTC)

yeah, I think I'm getting the same error as aavci: Foundation/NSData.swift:19:8: error: cannot load underlying module for 'Dispatch' import Dispatch ^ [125/315] CompileC: CoreFoundation/Parsing.subproj/CFXMLParser.c ninja: build stopped: subcommand failed. utils/build-script: fatal error: command terminated with a non-zero exit status 1, aborting which is annoying because it takes *forever* to build and then exit at this point.

aavci commented on 2016-09-17 12:07 (UTC)

Please help, I get the following error when trying to build: + mkdir -p /tmp/yaourt-tmp-aavci/aur-swift/src/build/Ninja-ReleaseAssert + env HOST_VARIABLE_linux_x86_64__SWIFT_BENCHMARK_TARGETS= HOST_VARIABLE_linux_x86_64__SWIFT_RUN_BENCHMARK_TARGETS= HOST_VARIABLE_linux_x86_64__SWIFT_SDKS=LINUX HOST_VARIABLE_linux_x86_64__SWIFT_STDLIB_TARGETS=swift-test-stdlib-linux-x86_64 HOST_VARIABLE_linux_x86_64__SWIFT_TEST_TARGETS= /tmp/yaourt-tmp-aavci/aur-swift/src/swift/utils/build-script-impl --workspace /tmp/yaourt-tmp-aavci/aur-swift/src --build-dir /tmp/yaourt-tmp-aavci/aur-swift/src/build/Ninja-ReleaseAssert --install-prefix /usr --host-target linux-x86_64 --stdlib-deployment-targets linux-x86_64 --host-cc /usr/bin/clang --host-cxx /usr/bin/clang++ --darwin-xcrun-toolchain default --darwin-deployment-version-osx=10.9 --darwin-deployment-version-ios=7.0 --darwin-deployment-version-tvos=9.0 --darwin-deployment-version-watchos=2.0 --cmake /usr/bin/cmake --cmark-build-type Release --llvm-build-type Release --swift-build-type Release --swift-stdlib-build-type Release --lldb-build-type Release --foundation-build-type Release --libdispatch-build-type Release --xctest-build-type Release --llvm-enable-assertions true --swift-enable-assertions true --swift-stdlib-enable-assertions true --swift-analyze-code-coverage false --cmake-generator Ninja --build-jobs 4 '--common-cmake-options=-G Ninja -DCMAKE_C_COMPILER:PATH=/usr/bin/clang -DCMAKE_CXX_COMPILER:PATH=/usr/bin/clang++' --build-args=-j4 --build-stdlib-deployment-targets all --ninja-bin=/usr/bin/ninja --skip-build-playgroundlogger --skip-build-playgroundsupport --build-swift-dynamic-stdlib --build-swift-dynamic-sdk-overlay --skip-build-ios-device --skip-build-ios-simulator --skip-build-tvos-device --skip-build-tvos-simulator --skip-build-watchos-device --skip-build-watchos-simulator --skip-build-android --skip-test-swift --skip-test-cmark --skip-test-lldb --skip-test-llbuild --skip-test-swiftpm --skip-test-xctest --skip-test-foundation --skip-test-libdispatch --skip-test-playgroundlogger --skip-test-playgroundsupport --skip-test-linux --skip-test-freebsd --skip-test-cygwin --skip-test-osx --skip-test-ios-host --skip-test-ios-simulator --skip-test-tvos-host --skip-test-tvos-simulator --skip-test-watchos-host --skip-test-watchos-simulator --skip-test-android-host --skip-test-benchmarks --skip-test-optimized --android-deploy-device-path /data/local/tmp --llvm-lit-args=-sv the --build-dir option is required Usage: build-script-impl [--help|-h] [ --SETTING=VALUE | --SETTING VALUE | --SETTING ]* Available settings. Each setting corresponds to a variable, obtained by upcasing its name, in this script. A variable with no default listed here will be unset in the script if not explicitly specified. A setting passed in the 3rd form will set its corresponding variable to "1". Setting Default Description ------- ------- ----------- --dry-run print the commands that would be executed, but do not execute them --build-args arguments to the build tool; defaults to -j8 when CMake generator is "Unix Makefiles" --build-dir out-of-tree build directory; default is in-tree. **This argument is required** --host-cc the path to CC, the 'clang' compiler for the host platform. **This argument is required** --host-cxx the path to CXX, the 'clang++' compiler for the host platform. **This argument is required** --darwin-xcrun-toolchain default the name of the toolchain to use on Darwin --ninja-bin the path to Ninja tool --cmark-build-type Debug the CMake build variant for CommonMark (Debug, RelWithDebInfo, Release, MinSizeRel). Defaults to Debug. --lldb-extra-cmake-args extra command line args to pass to lldb cmake --lldb-extra-xcodebuild-args extra command line args to pass to lldb xcodebuild --lldb-test-cc CC to use for building LLDB testsuite test inferiors. Defaults to just-built, in-tree clang. If set to 'host-toolchain', sets it to same as host-cc. --lldb-test-with-curses run test lldb test runner using curses terminal control --lldb-no-debugserver delete debugserver after building it, and don't try to codesign it --lldb-use-system-debugserver don't try to codesign debugserver, and use the system's debugserver instead --llvm-build-type Debug the CMake build variant for LLVM and Clang (Debug, RelWithDebInfo, Release, MinSizeRel). Defaults to Debug. --llvm-enable-assertions 1 enable assertions in LLVM and Clang --swift-build-type Debug the CMake build variant for Swift --swift-enable-assertions 1 enable assertions in Swift --swift-analyze-code-coverage not-merged Code coverage analysis mode for Swift (false, not-merged, merged). Defaults to false if the argument is not present, and not-merged if the argument is present without a modifier. --swift-tools-enable-lto enable LTO compilation of Swift tools. *NOTE* This does not include the swift standard library and runtime. Must be set to one of 'thin' or 'full' --llvm-enable-lto Must be set to one of 'thin' or 'full' --swift-tools-num-parallel-lto-link-jobs The number of parallel link jobs to use when compiling swift tools --llvm-num-parallel-lto-link-jobs The number of parallel link jobs to use when compiling llvm --swift-stdlib-build-type Debug the CMake build variant for Swift --swift-stdlib-enable-assertions 1 enable assertions in Swift --swift-stdlib-enable-resilience 0 build the Swift stdlib and overlays with resilience enabled --swift-stdlib-sil-serialize-all 1 build the Swift stdlib and overlays with all method bodies serialized --lldb-build-type Debug the CMake build variant for LLDB --llbuild-build-type Debug the CMake build variant for llbuild --foundation-build-type Debug the build variant for Foundation --libdispatch-build-type Debug the build variant for libdispatch --playgroundlogger-build-type Debug the build variant for PlaygroundLogger --playgroundsupport-build-type Debug the build variant for PlaygroundSupport --xctest-build-type Debug the build variant for xctest --llbuild-enable-assertions 1 enable assertions in llbuild --enable-asan enable Address Sanitizer --cmake path to the cmake binary --distcc use distcc in pump mode --distcc-pump the path to distcc pump executable. This argument is required if distcc is set. --build-runtime-with-host-compiler 1 use the host c++ compiler to build everything --cmake-generator Unix Makefiles kind of build system to generate; see output of 'cmake --help' for choices --verbose-build print the commands executed during the build --install-prefix installation prefix --toolchain-prefix the path to the .xctoolchain directory that houses the install prefix path --install-destdir the path to use as the filesystem root for the installation --install-symroot the path to install debug symbols into --swift-install-components a semicolon-separated list of Swift components to install --llvm-install-components a semicolon-separated list of LLVM components to install --installable-package the path to the archive of the installation directory --test-installable-package whether to run post-packaging tests on the produced package --reconfigure force a CMake configuration run even if CMakeCache.txt already exists --swift-primary-variant-sdk default SDK for target binaries --swift-primary-variant-arch default arch for target binaries --skip-build-cmark set to skip building CommonMark --skip-build-llvm set to skip building LLVM/Clang --skip-build-compiler-rt set to skip building Compiler-RT --skip-build-swift set to skip building Swift --skip-build-linux set to skip building Swift stdlibs for Linux --skip-build-freebsd set to skip building Swift stdlibs for FreeBSD --skip-build-cygwin set to skip building Swift stdlibs for Cygwin --skip-build-osx set to skip building Swift stdlibs for OS X --skip-build-ios-device set to skip building Swift stdlibs for iOS devices (i.e. build simulators only) --skip-build-ios-simulator set to skip building Swift stdlibs for iOS simulators (i.e. build devices only) --skip-build-tvos-device set to skip building Swift stdlibs for tvOS devices (i.e. build simulators only) --skip-build-tvos-simulator set to skip building Swift stdlibs for tvOS simulators (i.e. build devices only) --skip-build-watchos-device set to skip building Swift stdlibs for Apple watchOS devices (i.e. build simulators only) --skip-build-watchos-simulator set to skip building Swift stdlibs for Apple watchOS simulators (i.e. build devices only) --skip-build-android set to skip building Swift stdlibs for Android --skip-build-lldb set to skip building LLDB --skip-build-llbuild set to skip building llbuild --skip-build-swiftpm set to skip building swiftpm --skip-build-xctest set to skip building xctest --skip-build-foundation set to skip building foundation --skip-build-libdispatch set to skip building libdispatch --skip-build-benchmarks set to skip building Swift Benchmark Suite --skip-build-playgroundlogger set to skip building PlaygroundLogger --skip-build-playgroundsupport set to skip building PlaygroundSupport --skip-test-cmark set to skip testing CommonMark --skip-test-lldb set to skip testing lldb --skip-test-swift set to skip testing Swift --skip-test-llbuild set to skip testing llbuild --skip-test-swiftpm set to skip testing swiftpm --skip-test-xctest set to skip testing xctest --skip-test-foundation set to skip testing foundation --skip-test-libdispatch set to skip testing libdispatch --skip-test-playgroundlogger set to skip testing PlaygroundLogger --skip-test-playgroundsupport set to skip testing PlaygroundSupport --skip-test-linux set to skip testing Swift stdlibs for Linux --skip-test-freebsd set to skip testing Swift stdlibs for FreeBSD --skip-test-cygwin set to skip testing Swift stdlibs for Cygwin --skip-test-osx set to skip testing Swift stdlibs for OS X --skip-test-ios-simulator set to skip testing Swift stdlibs for iOS simulators (i.e. test devices only) --skip-test-ios-host set to skip testing the host parts of the iOS toolchain --skip-test-tvos-simulator set to skip testing Swift stdlibs for tvOS simulators (i.e. test devices only) --skip-test-tvos-host set to skip testing the host parts of the tvOS toolchain --skip-test-watchos-simulator set to skip testing Swift stdlibs for Apple watchOS simulators (i.e. test devices only) --skip-test-watchos-host set to skip testing the host parts of the watchOS toolchain --skip-test-android-host set to skip testing the host parts of the Android toolchain --validation-test 0 set to run the validation test suite --long-test 0 set to run the long test suite --skip-test-benchmarks set to skip running Swift Benchmark Suite --skip-test-optimized set to skip testing the test suite in optimized mode --stress-test-sourcekit set to run the stress-SourceKit target --workspace /home/aavci/src source directory containing llvm, clang, swift --enable-llvm-assertions 1 set to enable llvm assertions --build-llvm 1 set to 1 to build LLVM and Clang --build-swift-tools 1 set to 1 to build Swift host tools --build-swift-dynamic-stdlib set to 1 to build dynamic variants of the Swift standard library --build-swift-static-stdlib set to 1 to build static variants of the Swift standard library --build-swift-stdlib-unittest-extra 0 set to 1 to build optional StdlibUnittest components --build-swift-dynamic-sdk-overlay set to 1 to build dynamic variants of the Swift SDK overlay --build-swift-static-sdk-overlay set to 1 to build static variants of the Swift SDK overlay --build-swift-examples 1 set to 1 to build examples --build-swift-remote-mirror 1 set to 1 to build the Swift Remote Mirror library --build-serialized-stdlib-unittest 0 set to 1 to build the StdlibUnittest module with -sil-serialize-all --build-sil-debugging-stdlib 0 set to 1 to build the Swift standard library with -gsil to enable debugging and profiling on SIL level --check-incremental-compilation 0 set to 1 to compile swift libraries multiple times to check if incremental compilation works --llvm-include-tests 1 Set to true to generate testing targets for LLVM. Set to true by default. --swift-include-tests 1 Set to true to generate testing targets for Swift. This allows the build to proceed when 'test' directory is missing (required for B&I builds) --native-llvm-tools-path directory that contains LLVM tools that are executable on the build machine --native-clang-tools-path directory that contains Clang tools that are executable on the build machine --native-swift-tools-path directory that contains Swift tools that are executable on the build machine --compiler-vendor none compiler vendor name [none,apple] --clang-user-visible-version 3.8.0 user-visible version of the embedded Clang and LLVM compilers --swift-user-visible-version 3.0 user-visible version of the Swift language --swift-compiler-version string that indicates a compiler version for Swift --clang-compiler-version string that indicates a compiler version for Clang --embed-bitcode-section 0 embed an LLVM bitcode section in stdlib/overlay binaries for supported platforms --darwin-crash-reporter-client whether to enable CrashReporter integration --darwin-stdlib-install-name-dir the directory of the install_name for standard library dylibs --install-cmark whether to install cmark --install-swift whether to install Swift --install-lldb whether to install LLDB --install-llbuild whether to install llbuild --install-swiftpm whether to install swiftpm --install-xctest whether to install xctest --install-foundation whether to install foundation --install-libdispatch whether to install libdispatch --install-playgroundlogger whether to install PlaygroundLogger --install-playgroundsupport whether to install PlaygroundSupport --darwin-install-extract-symbols whether to extract symbols with dsymutil during installations --host-target The host target. LLVM, Clang, and Swift will be built for this target. The built LLVM and Clang will be used to compile Swift for the cross-compilation targets. **This argument is required** --stdlib-deployment-targets space-separated list of targets to configure the Swift standard library to be compiled or cross-compiled for --build-stdlib-deployment-targets all space-separated list that filters which of the configured targets to build the Swift standard library for, or 'all' --cross-compile-hosts space-separated list of targets to cross-compile host Swift tools for --cross-compile-with-host-tools set to use the clang we build for the host to then build the cross-compile hosts --cross-compile-install-prefixes semicolon-separated list of install prefixes to use for the cross-compiled hosts. The list expands, so if there are more cross-compile hosts than prefixes, unmatched hosts use the last prefix in the list --skip-merge-lipo-cross-compile-tools set to skip running merge-lipo after installing cross-compiled host Swift tools --darwin-deployment-version-osx 10.9 minimum deployment target version for OS X --darwin-deployment-version-ios 7.0 minimum deployment target version for iOS --darwin-deployment-version-tvos 9.0 minimum deployment target version for tvOS --darwin-deployment-version-watchos 2.0 minimum deployment target version for watchOS --extra-cmake-options Extra options to pass to CMake for all targets --extra-swift-args Extra arguments to pass to swift modules which match regex. Assumed to be a flattened cmake list consisting of [module_regexp, args, module_regexp, args, ...] --sil-verify-all 0 If enabled, run the SIL verifier after each transform when building Swift files during this build process --swift-enable-ast-verifier 1 If enabled, and the assertions are enabled, the built Swift compiler will run the AST verifier every time it is invoked --swift-runtime-enable-leak-checker 0 Enable leaks checking routines in the runtime --use-gold-linker Enable using the gold linker --darwin-toolchain-bundle-identifier CFBundleIdentifier for xctoolchain info plist --darwin-toolchain-display-name Display Name for xctoolcain info plist --darwin-toolchain-display-name-short Display Name with out date for xctoolchain info plist --darwin-toolchain-name Directory name for xctoolchain --darwin-toolchain-version Version for xctoolchain info plist and installer pkg --darwin-toolchain-application-cert Application Cert name to codesign xctoolchain --darwin-toolchain-installer-cert Installer Cert name to create installer pkg --darwin-toolchain-installer-package The path to installer pkg --build-jobs The number of parallel build jobs to use --darwin-toolchain-alias Swift alias for toolchain --android-ndk An absolute path to the NDK that will be used as a libc implementation for Android builds --android-api-level The Android API level to target when building for Android. Currently only 21 or above is supported --android-ndk-gcc-version The GCC version to use when building for Android. Currently only 4.9 is supported --android-icu-uc Path to a directory containing libicuuc.so --android-icu-uc-include Path to a directory containing headers for libicuuc --android-icu-i18n Path to a directory containing libicui18n.so --android-icu-i18n-include Path to a directory containing headers libicui18n --android-deploy-device-path Path on an Android device to which built Swift stdlib products will be deployed --check-args-only set to check all arguments are known. Exit with status 0 if success, non zero otherwise --common-cmake-options CMake options used for all targets, including LLVM/Clang --user-config-args **Renamed to --extra-cmake-options**: User-supplied arguments to cmake when used to do configuration. --only-execute all Only execute the named action (see implementation) --llvm-lit-args If set, override the lit args passed to LLVM --llvm-targets-to-build X86;ARM;AArch64;PowerPC;SystemZ The code generators that LLVM should build --build-toolchain-only If set, only build the necessary tools to build an external toolchain Note: when using the form --SETTING VALUE, VALUE must not begin with a hyphen. Note: the "--release" option creates a pre-packaged combination of settings used by the buildbot. Cross-compiling Swift host tools When building cross-compiled tools, it first builds for the native build host machine. Then it proceeds to build the specified cross-compile targets. It currently builds the requested variants of stdlib each time around, so once for the native build, then again each time for the cross-compile tool targets. When installing cross-compiled tools, it first installs each target arch into a separate subdirectory under install-destdir, since you can cross-compile for multiple targets at the same time. It then runs recursive-lipo to produce fat binaries by merging the cross-compiled targets, installing the merged result into the expected location of install-destdir. After that, any remaining steps to extract dsyms and create an installable package operates on install-destdir as normal. utils/build-script: fatal error: command terminated with a non-zero exit status 1, aborting ==> HATA: build() içinde bir hata oluştu. Çıkılıyor... ==> HATA:makepkg 'i inşa edemedi. ==> swift yeniden inşa edilsin mi ? [e/H] ==> ------------------------------------- ==> ::1 chai chai.localdomain localhost localhost.localdomain s

Zrax commented on 2016-09-15 16:17 (UTC)

@walkindude: I've backported a fix for the XAR_CKSUM_SHA{256,512} issue.

walkindude commented on 2016-09-14 23:07 (UTC) (edited on 2016-09-14 23:07 (UTC) by walkindude)

/home/walkindude/yaourt/yaourt-tmp-walkindude/aur-swift-lldb/src/llvm/tools/llvm-objdump/MachODump.cpp:5777:12: error: use of undeclared identifier 'XAR_CKSUM_SHA256' case XAR_CKSUM_SHA256: ^ /home/walkindude/yaourt/yaourt-tmp-walkindude/aur-swift-lldb/src/llvm/tools/llvm-objdump/MachODump.cpp:5780:12: error: use of undeclared identifier 'XAR_CKSUM_SHA512' case XAR_CKSUM_SHA512: ^ 2 errors generated. [2163/2212] Building CXX object tools/llvm-objdump/CMakeFiles/llvm-objdump.dir/llvm-objdump.cpp.o ninja: build stopped: subcommand failed. utils/build-script: fatal error: command terminated with a non-zero exit status 1, aborting ==> ERROR: A failure occurred in build(). Aborting... ==> ERROR: Makepkg was unable to build swift-language. ==> Restart building swift-lldb ? [y/N] ==> ----------------------------------- ==>

Zrax commented on 2016-09-14 15:33 (UTC)

It is assumed that base-devel is installed before building any AUR packages: https://wiki.archlinux.org/index.php/Arch_User_Repository#Prerequisites Therefore, AUR packages are not required to add any of those to their PKGBUILD

axs commented on 2016-09-14 12:07 (UTC) (edited on 2016-09-14 12:08 (UTC) by axs)

Not exactly Swift-specific, but still: makedepends += autoconf automake patch May be helpful for those who try to build it on freshly installed systems. Missing automake results in a particularly confusing error message: Can't exec "aclocal": No such file or directory at /usr/share/autoconf/Autom4te/FileUtils.pm line 326.

Zrax commented on 2016-06-08 15:42 (UTC)

> lib/libswiftSema.a: No space left on device LLVM (and by extension Swift) needs a fairly large amount of disk space available in order to compile... If you have a larger partition, you might try building from there instead, or you might try cleaning up other builds to make more space.

xged commented on 2016-06-08 14:10 (UTC)

lib/libswiftSema.a: No space left on device [223/509] Building CXX object lib/Serialization/CMakeFiles/swiftSerialization.dir/Deserialization.cpp.o ninja: build stopped: subcommand failed.

Zrax commented on 2016-05-19 23:03 (UTC)

Those are just warnings; to get the actual error, you may have to scroll back further in the build output / log.