diff options
author | Ilya Leoshkevich <iii@linux.ibm.com> | 2020-11-03 01:36:12 +0100 |
---|---|---|
committer | Vitaly Buka <vitalybuka@gmail.com> | 2020-11-02 18:29:48 -0800 |
commit | 92204dfe68ea3e0fc4b0d61dc76be3fbe9f8341f (patch) | |
tree | bfd5d620d6717031d17f8b34db24acf5c13a1333 | |
parent | 918dafea39ec8ecbec6623c4ec43c9d788db8882 (diff) | |
download | libprotobuf-mutator-92204dfe68ea3e0fc4b0d61dc76be3fbe9f8341f.tar.gz |
Fix CI
Commit 918dafea39ec ("Fix building on Fedora") introduced usage
of CMAKE_INSTALL_LIBDIR in order to predict where gtest and
libprotobuf will put their libraries. Unfortunately, the value of this
variable depends on the value of CMAKE_INSTALL_PREFIX, specifically,
whether it points to /usr.
CI uses precisely -DCMAKE_INSTALL_PREFIX=/usr and was therefore broken
by this change.
In order to fix CI and keep Fedora working, just ask gtest and
libprotobuf to put their libraries into "lib".
-rw-r--r-- | cmake/external/googletest.cmake | 9 | ||||
-rw-r--r-- | cmake/external/protobuf.cmake | 7 |
2 files changed, 7 insertions, 9 deletions
diff --git a/cmake/external/googletest.cmake b/cmake/external/googletest.cmake index 978a2ca..825ff9a 100644 --- a/cmake/external/googletest.cmake +++ b/cmake/external/googletest.cmake @@ -12,8 +12,6 @@ # See the License for the specific language governing permissions and # limitations under the License. -include(GNUInstallDirs) - set(GTEST_TARGET external.googletest) set(GTEST_INSTALL_DIR ${CMAKE_CURRENT_BINARY_DIR}/${GTEST_TARGET}) @@ -27,12 +25,12 @@ set(GTEST_BOTH_LIBRARIES ${GTEST_LIBRARIES} ${GTEST_MAIN_LIBRARIES}) foreach(lib IN LISTS GTEST_BOTH_LIBRARIES) if (MSVC) if (CMAKE_BUILD_TYPE MATCHES Debug) - set(LIB_PATH ${GTEST_INSTALL_DIR}/${CMAKE_INSTALL_LIBDIR}/${lib}d.lib) + set(LIB_PATH ${GTEST_INSTALL_DIR}/lib/${lib}d.lib) else() - set(LIB_PATH ${GTEST_INSTALL_DIR}/${CMAKE_INSTALL_LIBDIR}/${lib}.lib) + set(LIB_PATH ${GTEST_INSTALL_DIR}/lib/${lib}.lib) endif() else() - set(LIB_PATH ${GTEST_INSTALL_DIR}/${CMAKE_INSTALL_LIBDIR}/lib${lib}.a) + set(LIB_PATH ${GTEST_INSTALL_DIR}/lib/lib${lib}.a) endif() list(APPEND GTEST_BUILD_BYPRODUCTS ${LIB_PATH}) @@ -52,5 +50,6 @@ ExternalProject_Add(${GTEST_TARGET} -DCMAKE_CXX_COMPILER:FILEPATH=${CMAKE_CXX_COMPILER} CMAKE_ARGS ${CMAKE_ARGS} -DCMAKE_INSTALL_PREFIX=${GTEST_INSTALL_DIR} + -DCMAKE_INSTALL_LIBDIR=lib BUILD_BYPRODUCTS ${GTEST_BUILD_BYPRODUCTS} ) diff --git a/cmake/external/protobuf.cmake b/cmake/external/protobuf.cmake index d05db04..0b64519 100644 --- a/cmake/external/protobuf.cmake +++ b/cmake/external/protobuf.cmake @@ -12,8 +12,6 @@ # See the License for the specific language governing permissions and # limitations under the License. -include(GNUInstallDirs) - # We only need protobuf_generate_cpp from FindProtobuf, and we are going to # override the rest with ExternalProject version. include (FindProtobuf) @@ -33,9 +31,9 @@ ENDIF() foreach(lib ${PROTOBUF_LIBRARIES}) if (MSVC) - set(LIB_PATH ${PROTOBUF_INSTALL_DIR}/${CMAKE_INSTALL_LIBDIR}/lib${lib}.lib) + set(LIB_PATH ${PROTOBUF_INSTALL_DIR}/lib/lib${lib}.lib) else() - set(LIB_PATH ${PROTOBUF_INSTALL_DIR}/${CMAKE_INSTALL_LIBDIR}/lib${lib}.a) + set(LIB_PATH ${PROTOBUF_INSTALL_DIR}/lib/lib${lib}.a) endif() list(APPEND PROTOBUF_BUILD_BYPRODUCTS ${LIB_PATH}) @@ -70,6 +68,7 @@ ExternalProject_Add(${PROTOBUF_TARGET} CONFIGURE_COMMAND ${CMAKE_COMMAND} ${PROTOBUF_INSTALL_DIR}/src/${PROTOBUF_TARGET}/cmake -G${CMAKE_GENERATOR} -DCMAKE_INSTALL_PREFIX=${PROTOBUF_INSTALL_DIR} + -DCMAKE_INSTALL_LIBDIR=lib -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_C_COMPILER:FILEPATH=${CMAKE_C_COMPILER} |