18
我有一個現有的項目(wvdial)有一個工作的生成文件。我試圖將它集成到使用CMake的主構建過程中。任何人都可以建議如何做到這一點?我基於我們構建的其他項目做了一個嘗試,但是makefile永遠不會被調用。我所要做的就是調用wvdial的makefile,並將二進制文件包含在我們構建的.deb軟件包中。如何讓CMake使用現有的Makefile?
謝謝 肖恩
cmake_minimum_required(VERSION 2.6) SET(COMPONENT_NAME roots-vendor-wvdial) SET(DEBIAN_PACKAGE_VERSION 1.6.1) SET(WVDIAL_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}) SET(WVDIAL_BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}) SET(WVDIAL_INSTALLED ${CMAKE_CURRENT_BINARY_DIR}) ADD_CUSTOM_TARGET( wvdial ALL DEPENDS ${WVDIAL_INSTALLED} ) IF (${ROOTS_TARGET_ARCHITECTURE} STREQUAL "armhf") SET(TARGET_FLAG "--host=arm-linux-gnueabihf") ENDIF() ADD_CUSTOM_COMMAND( WORKING_DIRECTORY ${WVDIAL_BINARY_DIR} OUTPUT ${WVDIAL_INSTALLED} COMMAND env CXXFLAGS=${ROOTS_COMPILER_FLAGS} ./configure ${TARGET_FLAG} ${ROOTS_HOST_OPTION} COMMAND make COMMENT "Building wvdial" VERBATIM ) INSTALL( FILES ${CMAKE_CURRENT_BINARY_DIR}/wvdial DESTINATION usr/local/bin COMPONENT ${COMPONENT_NAME} PERMISSIONS OWNER_EXECUTE OWNER_READ OWNER_WRITE GROUP_EXECUTE GROUP_READ WORLD_EXECUTE WORLD_READ ) DEFINE_DEBIAN_PACKAGE( NAME ${COMPONENT_NAME} CONTROL_TEMPLATE ${CMAKE_CURRENT_SOURCE_DIR}/debian/control CHANGELOG_TEMPLATE ${CMAKE_CURRENT_SOURCE_DIR}/debian/changelog )
Kitware移動了你的鏈接。更新鏈接在這裏:https://blog.kitware.com/wp-content/uploads/2016/01/kitware_quarterly1009.pdf – Matt
@Matt感謝您的通知,我相應地編輯了答案。 – ComicSansMS