Merge pull request #99 from boostorg/feature/update-cmake

Fix CMake Travis failures
This commit is contained in:
jzmaddock
2020-01-21 10:12:56 +00:00
committed by GitHub
2 changed files with 21 additions and 84 deletions

View File

@ -4,18 +4,11 @@
language: cpp
sudo: false
python: "2.7"
os:
- linux
- osx
branches:
only:
- master
- develop
- /feature\/.*/
env:
matrix:
@ -30,25 +23,15 @@ matrix:
- os: linux
env: TEST_CMAKE=true # variables unused - just for identification in travis ci gui
script:
- git submodule update --init tools/cmake
- git submodule update --init libs/conversion
- git submodule update --init libs/function_types
- git submodule update --init libs/fusion
- git submodule update --init libs/typeof
- mkdir __build__ && cd __build__
- cmake .. -DBOOST_ENABLE_CMAKE=ON -DBOOST_REGEX_INCLUDE_EXAMPLES=ON
- cmake .. -DBOOST_ENABLE_CMAKE=ON -DBOOST_INCLUDE_LIBRARIES=regex -DBOOST_REGEX_INCLUDE_EXAMPLES=ON
- cmake --build .
- os: linux
env: TEST_CMAKE=true BUILD_SHARED_LIBS=On # variables unused - just for identification in travis ci gui
script:
- git submodule update --init tools/cmake
- git submodule update --init libs/conversion
- git submodule update --init libs/function_types
- git submodule update --init libs/fusion
- git submodule update --init libs/typeof
- mkdir __build__ && cd __build__
- cmake .. -DBUILD_SHARED_LIBS=ON -DBOOST_ENABLE_CMAKE=ON -DBOOST_REGEX_INCLUDE_EXAMPLES=ON
- cmake .. -DBUILD_SHARED_LIBS=ON -DBOOST_ENABLE_CMAKE=ON -DBOOST_INCLUDE_LIBRARIES=regex -DBOOST_REGEX_INCLUDE_EXAMPLES=ON
- cmake --build .
- os: linux
@ -265,63 +248,27 @@ matrix:
- os: osx
env: TOOLSET=clang COMPILER=clang++ CXXSTD=11
osx_image: xcode6.4
# On this image, git doesn't support --jobs 3
install:
- BOOST_BRANCH=develop && [ "$TRAVIS_BRANCH" == "master" ] && BOOST_BRANCH=master || true
- cd ..
- git clone -b $BOOST_BRANCH --depth 1 https://github.com/boostorg/boost.git boost-root
- cd boost-root
- git submodule update --init tools/boostdep
- cp -r $TRAVIS_BUILD_DIR/* libs/regex
- python tools/boostdep/depinst/depinst.py -I example regex
- ./bootstrap.sh
- ./b2 headers
install:
- BOOST_BRANCH=develop && [ "$TRAVIS_BRANCH" == "master" ] && BOOST_BRANCH=master || true
- cd ..
- git clone -b $BOOST_BRANCH https://github.com/boostorg/boost.git boost-root
- git clone -b $BOOST_BRANCH --depth 1 https://github.com/boostorg/boost.git boost-root
- cd boost-root
- git submodule update --init tools/build
- git submodule update --init tools/boost_install
- git submodule update --init libs/headers
- git submodule update --init libs/config
- git submodule update --init libs/core
- git submodule update --init libs/container_hash
- git submodule update --init libs/detail
- git submodule update --init libs/smart_ptr
- git submodule update --init libs/predef
- git submodule update --init libs/assert
- git submodule update --init libs/throw_exception
- git submodule update --init libs/mpl
- git submodule update --init libs/type_traits
- git submodule update --init libs/static_assert
- git submodule update --init libs/integer
- git submodule update --init libs/preprocessor
- git submodule update --init libs/functional
- git submodule update --init libs/program_options
- git submodule update --init libs/chrono
- git submodule update --init libs/system
- git submodule update --init libs/thread
- git submodule update --init libs/winapi
- git submodule update --init libs/move
- git submodule update --init libs/date_time
- git submodule update --init libs/ratio
- git submodule update --init libs/iterator
- git submodule update --init libs/range
- git submodule update --init libs/any
- git submodule update --init libs/concept_check
- git submodule update --init libs/array
- git submodule update --init libs/timer
- git submodule update --init libs/bind
- git submodule update --init libs/utility
- git submodule update --init libs/io
- git submodule update --init libs/intrusive
- git submodule update --init libs/container
- git submodule update --init libs/tuple
- git submodule update --init libs/exception
- git submodule update --init libs/function
- git submodule update --init libs/type_index
- git submodule update --init libs/lexical_cast
- git submodule update --init libs/numeric
- git submodule update --init libs/math
- git submodule update --init libs/tokenizer
- git submodule update --init libs/optional
- git submodule update --init libs/atomic
- git submodule update --init libs/rational
- git submodule update --init libs/algorithm
- git submodule update --init tools/boostdep
- cp -r $TRAVIS_BUILD_DIR/* libs/regex
- python tools/boostdep/depinst/depinst.py -I example -g "--jobs 3" regex
- ./bootstrap.sh
- ./b2 headers

View File

@ -41,11 +41,10 @@
##### Current Limitations:
#
# - Doesn't compile or run tests
# - Doesn't support installation
#
cmake_minimum_required( VERSION 3.5 )
project( BoostRegex LANGUAGES CXX )
cmake_minimum_required( VERSION 3.5...3.16 )
project( boost_regex VERSION "${BOOST_SUPERPROJECT_VERSION}" LANGUAGES CXX )
option( BOOST_REGEX_INCLUDE_EXAMPLES "Also build (some) boost regex examples" OFF )
option( BOOST_REGEX_USE_ICU "Enable ICU support in boost regex" OFF )
@ -55,20 +54,11 @@ file( GLOB BOOST_REGEX_SRC ./src/*.cpp )
add_library( boost_regex ${BOOST_REGEX_SRC} )
add_library( Boost::regex ALIAS boost_regex )
# Currently, installation isn't supported directly,
# but someone else might install this target from the parent
# CMake script, so lets proactively differentiate between
# the include directory during regular use (BUILD_INTERFACE)
# and after installation
target_include_directories( boost_regex
PUBLIC
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
$<INSTALL_INTERFACE:include>
)
target_include_directories( boost_regex PUBLIC include )
target_compile_definitions( boost_regex
PUBLIC
# No need for autolink and we don't mangle library name anyway
# No need for autolink
BOOST_REGEX_NO_LIB
$<$<STREQUAL:$<TARGET_PROPERTY:boost_regex,TYPE>,SHARED_LIBRARY>:BOOST_REGEX_DYN_LINK=1>
$<$<STREQUAL:$<TARGET_PROPERTY:boost_regex,TYPE>,STATIC_LIBRARY>:BOOST_REGEX_STATIC_LINK=1>