diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 443d7b1..a71e2b1 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -14,15 +14,17 @@ add_executable(edit_test libedit_test.c) target_link_libraries(edit_test edit) add_executable(edit_test_dll libedit_test_dll.c) install (TARGETS edit edit_test edit_test_dll - DESTINATION "${CMAKE_SOURCE_DIR}/bin${LIB_SUFFIX}") + DESTINATION "${CMAKE_INSTALL_PREFIX}/bin${LIB_SUFFIX}") install (TARGETS edit_a - DESTINATION "${CMAKE_SOURCE_DIR}/lib${LIB_SUFFIX}") + DESTINATION "${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}") install (FILES editline/readline.h - DESTINATION "${CMAKE_SOURCE_DIR}/include/editline") + DESTINATION "${CMAKE_INSTALL_PREFIX}/include/editline") +install (FILES EditlineConfig.cmake + DESTINATION "${CMAKE_INSTALL_PREFIX}") string(TOUPPER "${CMAKE_BUILD_TYPE}" uppercase_CMAKE_BUILD_TYPE) if (MSVC AND uppercase_CMAKE_BUILD_TYPE MATCHES "DEBUG") install (FILES ${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/edit_a.dir/edit_a.pdb - DESTINATION "${CMAKE_SOURCE_DIR}/lib${LIB_SUFFIX}") + DESTINATION "${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}") install (FILES ${CMAKE_CURRENT_BINARY_DIR}/edit.pdb - DESTINATION "${CMAKE_SOURCE_DIR}/bin${LIB_SUFFIX}") + DESTINATION "${CMAKE_INSTALL_PREFIX}/bin${LIB_SUFFIX}") endif() diff --git a/src/EDITLINEConfig.cmake b/src/EDITLINEConfig.cmake new file mode 100644 index 0000000..76c600d --- /dev/null +++ b/src/EDITLINEConfig.cmake @@ -0,0 +1,21 @@ +set(EDITLINE_INCLUDE_DIR "${CMAKE_CURRENT_LIST_DIR}/include") + +if(NOT DEFINED LIB_SUFFIX) + if(CMAKE_SIZEOF_VOID_P MATCHES 4) + set(LIB_SUFFIX "32") + else() + set(LIB_SUFFIX "64") + endif() +endif() + +if (WIN32 AND MSVC_USE_STATIC_RUNTIME) + set(EDITLINE_LIBRARY_DIRS "${CMAKE_CURRENT_LIST_DIR}/lib${LIB_SUFFIX}/edit_a.lib") +elseif(WIN32) + set(EDITLINE_LIBRARY_DIRS "${CMAKE_CURRENT_LIST_DIR}/bin${LIB_SUFFIX}/edit.lib") +else() + message(WARNING "You are apparently not using Windows. We are not ready for that yet...") +endif() + +set(EDITLINE_LIBRARIES "${EDITLINE_LIBRARY_DIRS}") +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(Editline DEFAULT_MSG EDITLINE_LIBRARIES EDITLINE_INCLUDE_DIR)