2 # Licensed to the Apache Software Foundation (ASF) under one
3 # or more contributor license agreements. See the NOTICE file
4 # distributed with this work for additional information
5 # regarding copyright ownership. The ASF licenses this file
6 # to you under the Apache License, Version 2.0 (the
7 # "License"); you may not use this file except in compliance
8 # with the License. You may obtain a copy of the License at
10 # http://www.apache.org/licenses/LICENSE-2.0
12 # Unless required by applicable law or agreed to in writing,
13 # software distributed under the License is distributed on an
14 # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 # KIND, either express or implied. See the License for the
16 # specific language governing permissions and limitations
20 set(BOOST_MINREV 1.56)
22 # we are not ready for the new style link targets introduced in
23 # boost 1.70.0 and cmake 3.14.2 which showed up on appveyor in
25 set(Boost_NO_BOOST_CMAKE ON)
27 macro(REQUIRE_BOOST_HEADERS)
28 find_package(Boost ${BOOST_MINREV} QUIET REQUIRED)
30 string(CONCAT fatal_message
31 "Boost ${BOOST_MINREV} or later is required to build sources in ${CMAKE_CURRENT_SOURCE_DIR}")
32 message(FATAL_ERROR, ${fatal_message})
34 if (DEFINED Boost_INCLUDE_DIRS)
35 # pre-boost 1.70.0 aware cmake, otherwise it is using targets
36 include_directories(SYSTEM "${Boost_INCLUDE_DIRS}")
40 macro(REQUIRE_BOOST_LIBRARIES libs)
41 message(STATUS "Locating boost libraries required by sources in ${CMAKE_CURRENT_SOURCE_DIR}")
42 find_package(Boost ${BOOST_MINREV} REQUIRED COMPONENTS ${${libs}})
44 string(CONCAT fatal_message
45 "Boost ${BOOST_MINREV} or later is required to build sources in ${CMAKE_CURRENT_SOURCE_DIR}, "
46 "or use -DBUILD_TESTING=OFF")
47 message(FATAL_ERROR, ${fatal_message})