openwrt/tools/liblzo/patches/001-add-cmake-ENABLE-config...

69 lines
2.3 KiB
Diff

--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -51,8 +51,11 @@ endif()
project(lzo VERSION 2.10 LANGUAGES C)
# configuration options
-option(ENABLE_STATIC "Build static LZO library." ON)
-option(ENABLE_SHARED "Build shared LZO library." OFF)
+option(ENABLE_STATIC "Build static LZO library." ON)
+option(ENABLE_SHARED "Build shared LZO library." OFF)
+option(ENABLE_TESTS "Build tests." ON)
+option(ENABLE_EXAMPLES "Build examples." ON)
+option(ENABLE_DOCS "Install documentation." ON)
if(NOT ENABLE_STATIC AND NOT ENABLE_SHARED)
set(ENABLE_STATIC ON)
endif()
@@ -127,14 +130,20 @@ macro(lzo_add_executable t)
endif()
endmacro()
# main test driver
+if(ENABLE_TESTS OR ENABLE_EXAMPLES)
lzo_add_executable(lzotest lzotest/lzotest.c)
+endif()
# examples
+if(ENABLE_EXAMPLES)
lzo_add_executable(dict examples/dict.c)
lzo_add_executable(lzopack examples/lzopack.c)
lzo_add_executable(overlap examples/overlap.c)
lzo_add_executable(precomp examples/precomp.c)
lzo_add_executable(precomp2 examples/precomp2.c)
+endif()
+if(ENABLE_TESTS OR ENABLE_EXAMPLES)
lzo_add_executable(simple examples/simple.c)
+endif()
# some boring internal test programs
if(0)
lzo_add_executable(align tests/align.c)
@@ -144,7 +153,7 @@ if(0)
endif()
# miniLZO
-if(1)
+if(ENABLE_TESTS)
add_executable(testmini minilzo/testmini.c minilzo/minilzo.c)
target_include_directories(testmini PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/include/lzo") # needed for "lzoconf.h"
endif()
@@ -263,8 +272,10 @@ add_test(NAME lzotest-03 COMMAND lzotest
if(DEFINED CMAKE_INSTALL_FULL_LIBDIR)
-set(f AUTHORS COPYING NEWS THANKS doc/LZO.FAQ doc/LZO.TXT doc/LZOAPI.TXT)
-install(FILES ${f} DESTINATION "${CMAKE_INSTALL_FULL_DOCDIR}")
+if(ENABLE_DOCS)
+ set(f AUTHORS COPYING NEWS THANKS doc/LZO.FAQ doc/LZO.TXT doc/LZOAPI.TXT)
+ install(FILES ${f} DESTINATION "${CMAKE_INSTALL_FULL_DOCDIR}")
+endif()
set(f include/lzo/lzo1.h include/lzo/lzo1a.h include/lzo/lzo1b.h
include/lzo/lzo1c.h include/lzo/lzo1f.h include/lzo/lzo1x.h
@@ -285,7 +296,7 @@ if(ENABLE_SHARED)
)
endif()
-if(1)
+if(ENABLE_EXAMPLES)
set(f lzopack lzotest simple testmini) # examples
install(TARGETS ${f} DESTINATION "${CMAKE_INSTALL_FULL_LIBEXECDIR}/lzo/examples")
endif()