diff --git a/ci/travis.sh b/ci/travis.sh index 7e27d70..3661d75 100644 --- a/ci/travis.sh +++ b/ci/travis.sh @@ -19,6 +19,12 @@ if [ $NPROCESSORS -gt 4 ] ; then NPROCESSORS=4 fi +# Tell make to use the processors. No preceding '-' required. +MAKEFLAGS="j${NPROCESSORS}" +export MAKEFLAGS + +env | sort + # Set default values to OFF for these variables if not specified. : "${NO_EXCEPTION:=OFF}" : "${NO_RTTI:=OFF}" @@ -30,7 +36,6 @@ export BUILD_TYPE=Debug cmake -DCMAKE_CXX_FLAGS=$CXX_FLAGS \ -DCMAKE_BUILD_TYPE=$BUILD_TYPE \ - -DTFE_BUILD_NPROCESSORS=$NPROCESSORS \ .. make CTEST_OUTPUT_ON_FAILURE=1 make test diff --git a/vendor/CMakeLists.txt b/vendor/CMakeLists.txt index 9f9ca9b..ce03ca9 100644 --- a/vendor/CMakeLists.txt +++ b/vendor/CMakeLists.txt @@ -2,11 +2,6 @@ include(ExternalProject) -# NPROCESSOR, set by travis.sh -if(TFE_BUILD_NPROCESSORS) -set(ENV{MAKEFLAGS} "j${TFE_BUILD_NPROCESSORS}") -endif() - ### OpenSSL 1.1.0h ExternalProject_Add(OpenSSL PREFIX openssl URL ${CMAKE_CURRENT_SOURCE_DIR}/openssl-1.1.0h.tar.gz @@ -24,10 +19,12 @@ set(OPENSSL_PKGCONFIG_PATH ${INSTALL_DIR}/lib/pkgconfig/) file(MAKE_DIRECTORY ${INSTALL_DIR}/include) add_library(openssl-crypto-static STATIC IMPORTED GLOBAL) +add_dependencies(openssl-crypto-static OpenSSL) set_property(TARGET openssl-crypto-static PROPERTY IMPORTED_LOCATION ${INSTALL_DIR}/lib/libcrypto.a) set_property(TARGET openssl-crypto-static PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${INSTALL_DIR}/include) add_library(openssl-ssl-static STATIC IMPORTED GLOBAL) +add_dependencies(openssl-ssl-static OpenSSL) set_property(TARGET openssl-ssl-static PROPERTY IMPORTED_LOCATION ${INSTALL_DIR}/lib/libssl.a) set_property(TARGET openssl-ssl-static PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${INSTALL_DIR}/include) @@ -46,16 +43,19 @@ ExternalProject_Get_Property(libevent INSTALL_DIR) file(MAKE_DIRECTORY ${INSTALL_DIR}/include) add_library(libevent-static STATIC IMPORTED GLOBAL) +add_dependencies(libevent-static libevent) set_property(TARGET libevent-static PROPERTY IMPORTED_LOCATION ${INSTALL_DIR}/lib/libevent.a) set_property(TARGET libevent-static PROPERTY IMPORTED_INTERFACE_LINK_LIBRARIES pthread crypto) set_property(TARGET libevent-static PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${INSTALL_DIR}/include) add_library(libevent-static-openssl STATIC IMPORTED GLOBAL) +add_dependencies(libevent-static-openssl libevent) set_property(TARGET libevent-static-openssl PROPERTY IMPORTED_LOCATION ${INSTALL_DIR}/lib/libevent_openssl.a) set_property(TARGET libevent-static-openssl PROPERTY IMPORTED_INTERFACE_LINK_LIBRARIES pthread crypto) set_property(TARGET libevent-static-openssl PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${INSTALL_DIR}/include) add_library(libevent-static-pthreads STATIC IMPORTED GLOBAL) +add_dependencies(libevent-static-pthreads libevent) set_property(TARGET libevent-static-pthreads PROPERTY IMPORTED_LOCATION ${INSTALL_DIR}/lib/libevent_pthreads.a) set_property(TARGET libevent-static-pthreads PROPERTY IMPORTED_INTERFACE_LINK_LIBRARIES pthread crypto) set_property(TARGET libevent-static-pthreads PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${INSTALL_DIR}/include) @@ -74,24 +74,10 @@ set(HTTP_PARSER_INCLUDE_DIRECTORIES ${SOURCE_DIR}) file(MAKE_DIRECTORY ${HTTP_PARSER_INCLUDE_DIRECTORIES}) add_library(http-parser-static STATIC IMPORTED GLOBAL) +add_dependencies(http-parser-static http-parser) set_property(TARGET http-parser-static PROPERTY IMPORTED_LOCATION ${SOURCE_DIR}/libhttp_parser.a) set_property(TARGET http-parser-static PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${SOURCE_DIR}) -### libcheck -ExternalProject_Add(libcheck PREFIX libcheck - URL ${CMAKE_CURRENT_SOURCE_DIR}/check-0.12.0.tar.gz - URL_MD5 31b17c6075820a434119592941186f70 - CONFIGURE_COMMAND ./configure --prefix= --disable-shared - BUILD_IN_SOURCE 1) - -ExternalProject_Get_Property(libcheck INSTALL_DIR) -file(MAKE_DIRECTORY ${INSTALL_DIR}/include) - -add_library(libcheck-static STATIC IMPORTED GLOBAL) -set_property(TARGET libcheck-static PROPERTY IMPORTED_LOCATION ${INSTALL_DIR}/lib/libcheck.a) -set_property(TARGET libcheck-static PROPERTY IMPORTED_INTERFACE_LINK_LIBRARIES pthread rt m) -set_property(TARGET libcheck-static PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${INSTALL_DIR}/include) - ### nghttp2 ExternalProject_Add(nghttp2 PREFIX nghttp2 @@ -104,6 +90,7 @@ ExternalProject_Get_Property(nghttp2 INSTALL_DIR) file(MAKE_DIRECTORY ${INSTALL_DIR}/include) add_library(nghttp2-static STATIC IMPORTED GLOBAL) +add_dependencies(nghttp2-static nghttp2) set_property(TARGET nghttp2-static PROPERTY IMPORTED_LOCATION ${INSTALL_DIR}/lib/libnghttp2.a) set_property(TARGET nghttp2-static PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${INSTALL_DIR}/include) @@ -117,11 +104,13 @@ ExternalProject_Get_Property(googletest INSTALL_DIR) file(MAKE_DIRECTORY ${INSTALL_DIR}/include) add_library(gtest STATIC IMPORTED GLOBAL) +add_dependencies(gtest googletest) set_property(TARGET gtest PROPERTY IMPORTED_LOCATION ${INSTALL_DIR}/lib/libgtest.a) set_property(TARGET gtest PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${INSTALL_DIR}/include) set_property(TARGET gtest PROPERTY INTERFACE_LINK_LIBRARIES pthread) add_library(gmock STATIC IMPORTED GLOBAL) +add_dependencies(gmock googletest) set_property(TARGET gmock PROPERTY IMPORTED_LOCATION ${INSTALL_DIR}/lib/libgmock.a) set_property(TARGET gmock PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${INSTALL_DIR}/include) @@ -158,19 +147,20 @@ add_library(MESA_field_stat SHARED IMPORTED GLOBAL) set_property(TARGET MESA_field_stat PROPERTY IMPORTED_LOCATION ${MESA_FRAMEWORK_LIB_DIR}/libMESA_field_stat2.so) set_property(TARGET MESA_field_stat PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${MESA_FRAMEWORK_INCLUDE_DIR}) - - ### cJSON ExternalProject_Add(cJSON PREFIX cJSON URL ${CMAKE_CURRENT_SOURCE_DIR}/cJSON-1.7.7.tar.gz URL_MD5 715009c99728bf81d6c97352718650ff - CMAKE_ARGS -DCMAKE_INSTALL_PREFIX= -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}) + CMAKE_ARGS -DCMAKE_INSTALL_PREFIX= + -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} + -DBUILD_SHARED_AND_STATIC_LIBS=1) ExternalProject_Get_Property(cJSON INSTALL_DIR) file(MAKE_DIRECTORY ${INSTALL_DIR}/include) add_library(cjson SHARED IMPORTED GLOBAL) -set_property(TARGET cjson PROPERTY IMPORTED_LOCATION ${INSTALL_DIR}/lib64/libcjson.so) +add_dependencies(cjson cJSON) +set_property(TARGET cjson PROPERTY IMPORTED_LOCATION ${INSTALL_DIR}/lib64/libcjson.a) set_property(TARGET cjson PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${INSTALL_DIR}/include) ### librdkafka @@ -183,6 +173,7 @@ ExternalProject_Get_Property(librdkafka INSTALL_DIR) file(MAKE_DIRECTORY ${INSTALL_DIR}/include) add_library(librdkafka-static STATIC IMPORTED GLOBAL) +add_dependencies(librdkafka-static librdkafka) set_property(TARGET librdkafka-static PROPERTY IMPORTED_LOCATION ${INSTALL_DIR}/lib/librdkafka.a) set_property(TARGET librdkafka-static PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${INSTALL_DIR}/include) set_property(TARGET librdkafka-static PROPERTY INTERFACE_LINK_LIBRARIES ssl crypto sasl2 m z dl pthread rt) @@ -199,9 +190,6 @@ ExternalProject_Get_Property(ctemplate INSTALL_DIR) file(MAKE_DIRECTORY ${INSTALL_DIR}/include) add_library(ctemplate-static STATIC IMPORTED GLOBAL) +add_dependencies(ctemplate-static ctemplate) set_property(TARGET ctemplate-static PROPERTY IMPORTED_LOCATION ${INSTALL_DIR}/lib/libctemplate.a) set_property(TARGET ctemplate-static PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${INSTALL_DIR}/include) - -if(TFE_BUILD_NPROCESSORS) - set(ENV{MAKEFLAGS} "") -endif()