[tarantool-patches] Re: [PATCH v3] travis-ci: fixed Mojave mac build

Alexander Turenko alexander.turenko at tarantool.org
Fri Mar 15 19:20:37 MSK 2019


Changed the commit message and pushed to 2.1 and 1.10.

WBR, Alexander Turenko.

On Thu, Mar 14, 2019 at 02:20:28PM +0300, Alexander V. Tikhonov wrote:
> Fixed Mojave Mac build with MACOSX_DEPLOYMENT_TARGET
> environment setup. Specified the minimum version of OS X
> on which the target binaries are to be deployed. CMake
> uses this value for the make environment and the
> -mmacosx-version-min flag to help choose the default SDK
> Removed virtualenv for osx at all
> 
> Fixed #3797
> ---
> 
> Github: https://github.com/tarantool/tarantool/tree/avtikhon/gh-3797-mojave-mac-build
> Issue: https://github.com/tarantool/tarantool/issues/3797
> 
>  .travis.mk         | 10 +++-------
>  .travis.yml        | 11 ++++++++---
>  cmake/luajit.cmake |  9 +++++++--
>  3 files changed, 18 insertions(+), 12 deletions(-)
> 
> diff --git a/.travis.mk b/.travis.mk
> index edd94cd7d..6e429735d 100644
> --- a/.travis.mk
> +++ b/.travis.mk
> @@ -47,6 +47,8 @@ test_ubuntu: deps_ubuntu
>  deps_osx:
>  	brew update
>  	brew install openssl readline curl icu4c --force
> +	curl --silent --show-error --retry 5 https://bootstrap.pypa.io/get-pip.py | python
> +	pip install -r test-run/requirements.txt
>  
>  test_osx: deps_osx
>  	cmake . -DCMAKE_BUILD_TYPE=RelWithDebInfoWError ${CMAKE_EXTRA_PARAMS}
> @@ -57,13 +59,7 @@ test_osx: deps_osx
>  	ulimit -S -n 20480 || :
>  	ulimit -n
>  	make -j8
> -	virtualenv ./test-env && \
> -	. ./test-env/bin/activate && \
> -	curl --silent --show-error --retry 5 https://bootstrap.pypa.io/get-pip.py | python && \
> -	pip --version && \
> -	pip install -r test-run/requirements.txt && \
> -	cd test && python test-run.py -j 1 unit/ app/ app-tap/ box/ box-tap/ && \
> -	deactivate
> +	cd test && python test-run.py -j 1 unit/ app/ app-tap/ box/ box-tap/
>  
>  coverage_ubuntu: deps_ubuntu
>  	cmake . -DCMAKE_BUILD_TYPE=Debug -DENABLE_GCOV=ON
> diff --git a/.travis.yml b/.travis.yml
> index ffe2e8247..8a118a7f2 100644
> --- a/.travis.yml
> +++ b/.travis.yml
> @@ -8,7 +8,7 @@ language: cpp
>  os: linux
>  compiler: gcc
>  
> -osx_image: xcode9
> +osx_image: xcode10.2
>  
>  cache:
>      directories:
> @@ -24,11 +24,16 @@ jobs:
>        - name: RelWithDebInfoWError build + test (Linux, clang)
>          env: TARGET=test
>          compiler: clang
> -      - name: RelWithDebInfoWError build + test (OS X)
> +      - name: RelWithDebInfoWError build + test (OS X Mojave 10.14)
>          env: TARGET=test
>          os: osx
>        - name: Debug build + test + coverage (Linux, gcc)
>          env: TARGET=coverage
> +      - name: RelWithDebInfoWError build + test (OS X High Sierra 10.13)
> +        env: TARGET=test
> +        os: osx
> +        osx_image: xcode9.4
> +        if: branch = "2.1"
>        - name: LTO build + test (Linux, gcc)
>          env: TARGET=test CMAKE_EXTRA_PARAMS=-DENABLE_LTO=ON
>          if: branch = "2.1"
> @@ -36,7 +41,7 @@ jobs:
>          env: TARGET=test CMAKE_EXTRA_PARAMS=-DENABLE_LTO=ON
>          if: branch = "2.1"
>          compiler: clang
> -      - name: LTO build + test (OS X)
> +      - name: LTO build + test (OS X Mojave 10.14)
>          os: osx
>          env: TARGET=test CMAKE_EXTRA_PARAMS=-DENABLE_LTO=ON
>          if: branch = "2.1"
> diff --git a/cmake/luajit.cmake b/cmake/luajit.cmake
> index ea4878a93..eca2bf36b 100644
> --- a/cmake/luajit.cmake
> +++ b/cmake/luajit.cmake
> @@ -202,7 +202,7 @@ macro(luajit_build)
>          endif()
>          set(luajit_ldflags
>              ${luajit_ldflags} -Wl,-macosx_version_min,${luajit_osx_deployment_target})
> -    endif ()
> +    endif()
>      if (ENABLE_GCOV)
>          set (luajit_ccdebug ${luajit_ccdebug} -fprofile-arcs -ftest-coverage)
>      endif()
> @@ -233,7 +233,12 @@ macro(luajit_build)
>          CCOPT="${luajit_ccopt}"
>          CCDEBUG="${luajit_ccdebug}"
>          XCFLAGS="${luajit_xcflags}"
> -        Q='')
> +        Q=''
> +        # We need to set MACOSX_DEPLOYMENT_TARGET to at least 10.6,
> +        # because 10.4 SDK (which is set by default in LuaJIT's
> +        # Makefile) is not longer included in Mac OS X Mojave 10.14.
> +        # See also https://github.com/LuaJIT/LuaJIT/issues/484
> +        MACOSX_DEPLOYMENT_TARGET="${luajit_osx_deployment_target}")
>      if (${PROJECT_BINARY_DIR} STREQUAL ${PROJECT_SOURCE_DIR})
>          add_custom_command(OUTPUT ${PROJECT_BINARY_DIR}/third_party/luajit/src/libluajit.a
>              WORKING_DIRECTORY ${PROJECT_BINARY_DIR}/third_party/luajit
> -- 
> 2.17.1
> 




More information about the Tarantool-patches mailing list