Skip to content

Commit

Permalink
druntime: Add support for macOS 10.15 and DWARF fixes
Browse files Browse the repository at this point in the history
  • Loading branch information
kinke committed Feb 24, 2020
1 parent 20ef705 commit 024b581
Show file tree
Hide file tree
Showing 2 changed files with 30 additions and 14 deletions.
42 changes: 29 additions & 13 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ commonSteps: &commonSteps
- run:
name: Install dependencies
command: |
set -x
cd ..
if [ "$CI_OS" = "linux" ]; then
export DEBIAN_FRONTEND=noninteractive
Expand All @@ -25,25 +26,31 @@ commonSteps: &commonSteps
else
# install libconfig
brew install libconfig
# install CMake
curl -L -o cmake-x64.tar.gz https://cmake.org/files/v3.10/cmake-3.10.0-Darwin-x86_64.tar.gz
mkdir cmake-x64
tar -xf cmake-x64.tar.gz --strip 3 -C cmake-x64
# install Ninja
curl -OL https://github.com/ninja-build/ninja/releases/download/v1.8.2/ninja-mac.zip
# Download & extract CMake
curl -L -o cmake.tar.gz https://github.com/Kitware/CMake/releases/download/v3.13.4/cmake-3.13.4-Darwin-x86_64.tar.gz
mkdir cmake
tar -xf cmake.tar.gz --strip 3 -C cmake
rm cmake.tar.gz
# Download & extract Ninja
curl -OL https://github.com/ninja-build/ninja/releases/download/v1.9.0/ninja-mac.zip
mkdir ninja
tar -xf ninja-mac.zip -C ninja
echo "export PATH=$PWD/cmake-x64/bin:$PWD/ninja:$PATH" >> $BASH_ENV
# install Python pip
rm ninja-mac.zip
# Install pip
curl -OL https://bootstrap.pypa.io/get-pip.py
python get-pip.py
python get-pip.py --user
rm get-pip.py
# Add CMake and Ninja to PATH for future steps
echo "export PATH=$PWD/cmake/bin:$PWD/ninja:$PATH" >> $BASH_ENV
fi
# install lit
pip install --user lit
# Install lit
python -m pip install --user lit
python -c "import lit; lit.main();" --version | head -n 1
- checkout
- run:
name: Install LDC-flavoured LLVM
command: |
set -x
cd ..
mkdir llvm-$LLVM_VERSION
assertsSuffix=""
Expand All @@ -60,6 +67,7 @@ commonSteps: &commonSteps
- run:
name: Build LDC
command: |
set -x
cd ..
LDC_INSTALL_DIR=$PWD/ldc2-x64
mkdir ninja-ldc
Expand All @@ -72,6 +80,7 @@ commonSteps: &commonSteps
name: Build stdlib unittests
when: always
command: |
set -x
cd ../ninja-ldc
ninja -j2 phobos2-ldc-unittest-debug phobos2-ldc-unittest phobos2-ldc-unittest-debug-32 phobos2-ldc-unittest-32
ninja -j3 druntime-ldc-unittest-debug druntime-ldc-unittest druntime-ldc-unittest-debug-32 druntime-ldc-unittest-32
Expand All @@ -84,6 +93,7 @@ commonSteps: &commonSteps
name: Run DMD testsuite
when: always
command: |
set -x
cd ../ninja-ldc
if [ "$CI_OS" = "linux" ]; then
# runnable/{sdtor,variadic} fail, see https://github.com/ldc-developers/ldc/pull/2825#issuecomment-415527889
Expand All @@ -95,6 +105,7 @@ commonSteps: &commonSteps
name: Run stdlib unittests
when: always
command: |
set -x
cd ../ninja-ldc
if [ "$CI_OS" = "osx" ]; then
# 32-bit std.process unittests fail; exclude for now
Expand All @@ -106,6 +117,7 @@ commonSteps: &commonSteps
- run:
name: Install LDC
command: |
set -x
cd ../ninja-ldc
ninja install
cd ..
Expand All @@ -124,6 +136,7 @@ commonSteps: &commonSteps
- run:
name: Build dub
command: |
set -x
cd ..
export DMD=$LDC_INSTALL_DIR/bin/ldmd2
git clone --recursive https://github.com/dlang/dub.git
Expand All @@ -140,6 +153,7 @@ commonSteps: &commonSteps
- run:
name: Pack installation dir
command: |
set -x
cd ..
mkdir artifacts
if [ -z "$CIRCLE_TAG" ]; then
Expand All @@ -152,6 +166,7 @@ commonSteps: &commonSteps
- run:
name: Pack source dir
command: |
set -x
cd ..
if [ "$CI_OS" = "linux" ]; then
if [ -z "$CIRCLE_TAG" ]; then
Expand All @@ -168,6 +183,7 @@ commonSteps: &commonSteps
- run:
name: Deploy to GitHub release if tagged
command: |
set -x
cd ..
if [[ -n "$CIRCLE_TAG" ]]; then
if [ "$CI_OS" = "linux" ]; then
Expand Down Expand Up @@ -199,10 +215,10 @@ jobs:
build-osx:
<<: *commonSteps
macos:
xcode: "9.2.0"
xcode: "11.4.0"
environment:
- CI_OS: osx
- MACOSX_DEPLOYMENT_TARGET: 10.8
- MACOSX_DEPLOYMENT_TARGET: 10.9
- USE_LIBCPP: true
- LLVM_VERSION: 6.0.1-3
- EXTRA_CMAKE_FLAGS: "-DMULTILIB=ON -DBUILD_SHARED_LIBS=OFF -DCMAKE_CXX_FLAGS='-stdlib=libc++' -DCMAKE_EXE_LINKER_FLAGS=-lc++"
Expand Down
2 changes: 1 addition & 1 deletion runtime/druntime

0 comments on commit 024b581

Please sign in to comment.