diff options
author | Alp Mestanogullari <alpmestan@gmail.com> | 2019-05-31 11:20:30 +0200 |
---|---|---|
committer | Marge Bot <ben+marge-bot@smart-cactus.org> | 2019-06-04 01:10:20 -0400 |
commit | 114b014f7ed346727241c78ef3e0bf965d94edfc (patch) | |
tree | 8e93a5f83d350da9b92b4bd0ecebbde09cc4de7d | |
parent | db78ac6f5d69618ff143ab4b572e7f58a1805687 (diff) | |
download | haskell-114b014f7ed346727241c78ef3e0bf965d94edfc.tar.gz |
Hadrian: fix OSX build failure and add an OSX/Hadrian CI job
The OSX build failure introduced in 3aa71a22 was due to a change in the
glob we use to collect libffi shared libraries in hadrian/src/Rules/Libffi.hs.
This commit fixes the problem and adds an OSX CI job that builds GHC with
Hadrian, to make sure we don't break it again.
-rw-r--r-- | .gitlab-ci.yml | 40 | ||||
-rw-r--r-- | hadrian/src/Rules/Libffi.hs | 2 |
2 files changed, 41 insertions, 1 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index f42ce61d7a..72aafc9f2a 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -278,6 +278,46 @@ validate-x86_64-darwin: - cabal-cache - toolchain +validate-x86_64-darwin-hadrian: + <<: *only-default + stage: full-build + tags: + - x86_64-darwin + variables: + GHC_VERSION: 8.6.3 + MACOSX_DEPLOYMENT_TARGET: "10.7" + ac_cv_func_clock_gettime: "no" + LANG: "en_US.UTF-8" + CONFIGURE_ARGS: --with-intree-gmp + TEST_ENV: "x86_64-darwin" + before_script: + - git clean -xdf && git submodule foreach git clean -xdf + - python3 .gitlab/fix-submodules.py + - git submodule sync --recursive + - git submodule update --init --recursive + - git checkout .gitmodules + - "git fetch https://gitlab.haskell.org/ghc/ghc-performance-notes.git refs/notes/perf:refs/notes/perf || true" + + - bash .gitlab/darwin-init.sh + - PATH="`pwd`/toolchain/bin:$PATH" + script: + - cabal update + - ./boot + - ./configure $CONFIGURE_ARGS + - hadrian/build.cabal.sh -j`mk/detect-cpu-count.sh` --docs=no-sphinx binary-dist + - hadrian/build.cabal.sh -j`mk/detect-cpu-count.sh` --docs=no-sphinx test --summary-junit=./junit.xml + - mv _build/bindist/ghc*.tar.xz ghc.tar.xz + after_script: + - cp -Rf $HOME/.cabal cabal-cache + artifacts: + when: always + expire_in: 2 week + reports: + junit: junit.xml + paths: + - ghc.tar.xz + - junit.xml + .validate-linux: extends: .validate tags: diff --git a/hadrian/src/Rules/Libffi.hs b/hadrian/src/Rules/Libffi.hs index a1a53741db..e3f080dda1 100644 --- a/hadrian/src/Rules/Libffi.hs +++ b/hadrian/src/Rules/Libffi.hs @@ -178,7 +178,7 @@ libffiRules = do | windows = "dll" | osx = "dylib" | otherwise = "so" - filepat = "lib" ++ libffiName'' ++ "*." ++ dynlibext ++ "*" + filepat = "lib" ++ libffiName'' ++ "." ++ dynlibext ++ "*" liftIO $ getDirectoryFilesIO "." [libfilesDir -/- filepat] writeFileLines dynLibMan dynLibFiles |