Skip to content
Jeff Cho edited this page Jan 21, 2018 · 1 revision

Swift Build Instructions for WALA Integration

You should have completed the steps in Getting Started before continuing. The following lists how I got Swift-WALA integration working on my MacBook Pro; some steps, environment variables, folder structures, etc. may be different for you. This is provided as a reference and example, not as instruction.

My initial state: WALA built and running in Eclipse Neon RCP Working directory in this example is ~/WalaSwift Working WALA build is at ~/WalaSwift/WALA

Machine Profile:

  • macOS Sierra 10.13.2
  • java: 1.8.0.131 64-bit

The Process

  • Update your ~/.bash_profile or /etc/environment:

    # CMake

    PATH="/Applications/CMake.app/Contents/bin:${PATH}"

    export PATH

    # WALA and Swift

    export WALA_HOME=~/WalaSwift/WALA

    export SWIFT_WALA_HOME=~/WalaSwift/swift-wala

  • source your updated file

  • [Mac] Download Xcode 9.2 (as of 3 Jan 2018; check the Apple Swift Readme to see if the requirement has changed)

  • Install Xcode to your /Applications folder. Run Xcode to see if it needs to install additional components.

  • [Optional] If you've been using an Xcode Beta build, switch your Xcode environment back to Xcode official

    • sudo xcode-select --switch /Applications/Xcode.app/
  • Confirm that you have the correct tools after switching

    • clang --version
      • Note: Xcode 9.2 is using Apple LLVM Version 9.0.0 (clang-900.0.39.2)
  • [Ubuntu] Run the big sudo apt-get command from the Apple Swift Readme documentation.

  • Create swift-source directory:

    • > mkdir swift-source
  • Move into the swift-source directory:

    • > cd swift-source
  • Clone the wala branch of the uasys/swift repo:

    • swift-source> git clone -b wala https://github.com/themaplelab/swift/
  • Move into the swift directory:

    • cd swift
  • Checkout requirements for build:

    • swift> utils/update-checkout --clone
  • Confirm you are on the wala branch - it will revert to master during this process.

    • swift> git branch
    • swift> git checkout wala
  • Now run the build script with tests:

    • swift> utils/build-script -r
      • Up to 2-hour initial clean build on rMBP i7-4980HQ with 16 GB RAM
      • If integration worked, you should see a ton of "FOO:" and "CAstValue: 3.7" output near the end.
  • Success!

Clone this wiki locally