Skip to content

Commit 52d53be

Browse files
Keegan Saundersmeme
Keegan Saunders
andauthoredOct 24, 2020
Optional install target (#1)
Co-authored-by: meme <meme@users.noreply.github.com>
1 parent 3ec7750 commit 52d53be

File tree

4 files changed

+25
-15
lines changed

4 files changed

+25
-15
lines changed
 

‎CMakeLists.txt

+14-10
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ set(KEYSTONE_VERSION_MAJOR 0)
88
set(KEYSTONE_VERSION_MINOR 9)
99

1010
option(KEYSTONE_BUILD_STATIC_RUNTIME "Embed static runtime" ON)
11+
option(KEYSTONE_INSTALL "Generate install target" ON)
1112
option(BUILD_LIBS_ONLY "Only build keystone library" 0)
1213

1314
if (NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES)
@@ -104,18 +105,21 @@ CONFIGURE_FILE(
104105
"${CMAKE_CURRENT_SOURCE_DIR}/pkg-config.pc.cmake"
105106
"${PKG_CONFIG_FILE_PATH}"
106107
)
107-
INSTALL(FILES "${PKG_CONFIG_FILE_PATH}"
108-
DESTINATION lib${LLVM_LIBDIR_SUFFIX}/pkgconfig)
109108

110-
# uninstall target
111-
configure_file(
112-
"${CMAKE_CURRENT_SOURCE_DIR}/CMakeUninstall.in"
113-
"${CMAKE_CURRENT_BINARY_DIR}/CMakeUninstall.cmake"
114-
IMMEDIATE @ONLY)
109+
if(KEYSTONE_INSTALL)
110+
INSTALL(FILES "${PKG_CONFIG_FILE_PATH}"
111+
DESTINATION lib${LLVM_LIBDIR_SUFFIX}/pkgconfig)
115112

116-
if(NOT BUILD_LIBS_ONLY)
117-
add_custom_target(uninstall
118-
COMMAND ${CMAKE_COMMAND} -P ${CMAKE_CURRENT_BINARY_DIR}/CMakeUninstall.cmake)
113+
# uninstall target
114+
configure_file(
115+
"${CMAKE_CURRENT_SOURCE_DIR}/CMakeUninstall.in"
116+
"${CMAKE_CURRENT_BINARY_DIR}/CMakeUninstall.cmake"
117+
IMMEDIATE @ONLY)
118+
119+
if(NOT BUILD_LIBS_ONLY)
120+
add_custom_target(uninstall
121+
COMMAND ${CMAKE_COMMAND} -P ${CMAKE_CURRENT_BINARY_DIR}/CMakeUninstall.cmake)
122+
endif()
119123
endif()
120124

121125
if(NOT BUILD_LIBS_ONLY)

‎kstool/CMakeLists.txt

+3-1
Original file line numberDiff line numberDiff line change
@@ -16,4 +16,6 @@ endif()
1616

1717
target_link_libraries(kstool keystone)
1818

19-
install(TARGETS kstool DESTINATION bin)
19+
if (KEYSTONE_INSTALL)
20+
install(TARGETS kstool DESTINATION bin)
21+
endif ()

‎llvm/CMakeLists.txt

+5-3
Original file line numberDiff line numberDiff line change
@@ -543,6 +543,8 @@ add_subdirectory(keystone)
543543

544544
add_subdirectory(cmake/modules)
545545

546-
install(DIRECTORY ../include/keystone
547-
DESTINATION include
548-
)
546+
if (KEYSTONE_INSTALL)
547+
install(DIRECTORY ../include/keystone
548+
DESTINATION include
549+
)
550+
endif ()

‎llvm/keystone/CMakeLists.txt

+3-1
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,9 @@ add_library(keystone
4343
EVMMapping.cpp
4444
)
4545

46-
install(TARGETS keystone DESTINATION lib${LLVM_LIBDIR_SUFFIX})
46+
if (KEYSTONE_INSTALL)
47+
install(TARGETS keystone DESTINATION lib${LLVM_LIBDIR_SUFFIX})
48+
endif ()
4749

4850
set_target_properties(
4951
keystone

0 commit comments

Comments
 (0)
Please sign in to comment.