Merge lp:~widelands-dev/widelands/fix_osx_nightlies into lp:widelands

Proposed by SirVer
Status: Merged
Merged at revision: 8791
Proposed branch: lp:~widelands-dev/widelands/fix_osx_nightlies
Merge into: lp:widelands
Diff against target: 65 lines (+20/-9)
2 files modified
CMakeLists.txt (+8/-5)
utils/macos/build_app.sh (+12/-4)
To merge this branch: bzr merge lp:~widelands-dev/widelands/fix_osx_nightlies
Reviewer Review Type Date Requested Status
SirVer Approve
Toni Förster Approve
Review via email: mp+353456@code.launchpad.net

Commit message

Unbreak nightly builds by un-modernizing some of the recent changes to the OS X toolchain.

To post a comment you must log in.
Revision history for this message
Toni Förster (stonerl) wrote :

@SirVer, sorry for breaking your workflow.

Revision history for this message
bunnybot (widelandsofficial) wrote :

Continuous integration builds have changed state:

Travis build 3823. State: failed. Details: https://travis-ci.org/widelands/widelands/builds/418446458.
Appveyor build 3622. State: failed. Details: https://ci.appveyor.com/project/widelands-dev/widelands/build/_widelands_dev_widelands_fix_osx_nightlies-3622.

Revision history for this message
GunChleoc (gunchleoc) wrote :

This has broken all the Linux builds on Travis:

-- Found ICU: /usr/lib/x86_64-linux-gnu/libicuuc.so (found version "52.1.0")
CMake Error at CMakeLists.txt:84 (if):
  if given arguments:
    "APPLE" "AND" "GREATER" "11"
  Unknown arguments specified
-- Configuring incomplete, errors occurred!

Revision history for this message
GunChleoc (gunchleoc) wrote :

I have now pushed a fix for Linux. Does it still work for the OSX nightlies?

Revision history for this message
Toni Förster (stonerl) wrote :

> I have now pushed a fix for Linux. Does it still work for the OSX nightlies?

It does for me.

review: Approve
Revision history for this message
bunnybot (widelandsofficial) wrote :

Continuous integration builds have changed state:

Travis build 3825. State: passed. Details: https://travis-ci.org/widelands/widelands/builds/418587526.
Appveyor build 3624. State: failed. Details: https://ci.appveyor.com/project/widelands-dev/widelands/build/_widelands_dev_widelands_fix_osx_nightlies-3624.

Revision history for this message
SirVer (sirver) wrote :

@stonerl: There is no reason to apologize - I am super excited that you picked up, undusted and improved the Mac OS X build experience and untested things break with change. I am sorry to partially undo your modernizations efforts, but I do not have time to do more major changes to the nightlies build process :(

@Gun: Thanks for fixing the Linux problem.

@bunnybot merge

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'CMakeLists.txt'
2--- CMakeLists.txt 2018-08-15 01:38:47 +0000
3+++ CMakeLists.txt 2018-08-21 08:15:14 +0000
4@@ -79,12 +79,15 @@
5 endif()
6 endif()
7
8-# Disable no symbols warning on macOS
9+# Disable no symbols warning on macOS, but only on versions where this is
10+# supported. It is not supported on OS X 10.7 (DARWIN_MAJOR_VERSION == 11).
11 if (APPLE)
12- SET(CMAKE_C_ARCHIVE_CREATE "<CMAKE_AR> Scr <TARGET> <LINK_FLAGS> <OBJECTS>")
13- SET(CMAKE_CXX_ARCHIVE_CREATE "<CMAKE_AR> Scr <TARGET> <LINK_FLAGS> <OBJECTS>")
14- SET(CMAKE_C_ARCHIVE_FINISH "<CMAKE_RANLIB> -no_warning_for_no_symbols -c <TARGET>")
15- SET(CMAKE_CXX_ARCHIVE_FINISH "<CMAKE_RANLIB> -no_warning_for_no_symbols -c <TARGET>")
16+ if (${DARWIN_MAJOR_VERSION} GREATER 11)
17+ SET(CMAKE_C_ARCHIVE_CREATE "<CMAKE_AR> Scr <TARGET> <LINK_FLAGS> <OBJECTS>")
18+ SET(CMAKE_CXX_ARCHIVE_CREATE "<CMAKE_AR> Scr <TARGET> <LINK_FLAGS> <OBJECTS>")
19+ SET(CMAKE_C_ARCHIVE_FINISH "<CMAKE_RANLIB> -no_warning_for_no_symbols -c <TARGET>")
20+ SET(CMAKE_CXX_ARCHIVE_FINISH "<CMAKE_RANLIB> -no_warning_for_no_symbols -c <TARGET>")
21+ endif()
22 endif()
23
24 # TODO(sirver): One day, this should be enabled. Then we have no more cycles in our dependencies....
25
26=== modified file 'utils/macos/build_app.sh'
27--- utils/macos/build_app.sh 2018-08-15 18:33:25 +0000
28+++ utils/macos/build_app.sh 2018-08-21 08:15:14 +0000
29@@ -2,7 +2,7 @@
30
31 set -e
32
33-USAGE="Usage: $0 <clang|gcc> <debug|release> <bzr_repo_directory>"
34+USAGE="Usage: $0 <clang|gcc|gcc6> <debug|release> <bzr_repo_directory>"
35 USE_ASAN="OFF"
36
37 if [ ! -z "$3" ]; then
38@@ -37,6 +37,12 @@
39 CXX_COMPILER="g++-7"
40 COMPILER=$(gcc-7 --version | grep "GCC")
41 ;;
42+ gcc6)
43+ # Used for the nightly builds.
44+ C_COMPILER="gcc-6"
45+ CXX_COMPILER="g++-6"
46+ COMPILER=$(gcc-6 --version | grep -i "GCC")
47+ ;;
48 *)
49 echo $USAGE
50 exit 1
51@@ -173,9 +179,11 @@
52 export SDL2TTFDIR="$(brew --prefix sdl2_ttf)"
53 export BOOST_ROOT="$(brew --prefix boost)"
54
55- # Not needed for CMake 3.12 or above
56- # see cmake --help-policy CMP0074
57- #export ICU_ROOT="$(brew --prefix icu4c)"
58+ # Not needed for CMake 3.12 or above, see cmake --help-policy CMP0074.
59+ # However Mac OS X nighlies cannot upgrade to a newer cmake version than
60+ # 3.9.4 since nothing newer compiles on Mac OS X 10.7 which is used to build
61+ # the nightlies.
62+ export ICU_ROOT="$(brew --prefix icu4c)"
63
64 cmake $SOURCE_DIR -G Ninja \
65 -DCMAKE_C_COMPILER:FILEPATH="$C_COMPILER" \

Subscribers

People subscribed via source and target branches

to status/vote changes: