@@ -17,14 +17,32 @@ set(LIBPSL_VERSION_MINOR ${psl_VERSION_MINOR})
1717set (LIBPSL_VERSION_PATCH ${psl_VERSION_PATCH} )
1818set (LIBPSL_VERSION "${psl_VERSION_MAJOR} .${psl_VERSION_MINOR} .${psl_VERSION_PATCH} " )
1919
20+ set (LIBPSL_STANDALONE_BUILD OFF )
21+ if (PROJECT_SOURCE_DIR STREQUAL CMAKE_SOURCE_DIR )
22+ set (LIBPSL_STANDALONE_BUILD ON )
23+ endif ()
24+ option (LIBPSL_ENABLE_INSTALL "${PROJECT_NAME} : Enable install" ${LIBPSL_STANDALONE_BUILD} )
25+
26+ option (ENABLE_BUILTIN "Generate built-in PSL data" ON )
27+ set (ENABLE_RUNTIME "" CACHE STRING "Enable runtime PSL data (libicu, libidn, libidn2)" )
28+
2029add_definitions (
2130 -DPACKAGE_VERSION=\"${LIBPSL_VERSION} \"
22- -DBUILDING_PSL=1
23- -DPSL_STATIC=1
24- # ensure that builtin list is enabled
25- -DENABLE_BUILTIN=1
2631)
2732
33+ if (ENABLE_BUILTIN)
34+ add_definitions (-DENABLE_BUILTIN=1)
35+ endif ()
36+ if (ENABLE_RUNTIME STREQUAL "libicu" )
37+ add_definitions (-DWITH_LIBICU=1)
38+ endif ()
39+ if (ENABLE_RUNTIME STREQUAL "libidn" )
40+ add_definitions (-DWITH_LIBIDN=1)
41+ endif ()
42+ if (ENABLE_RUNTIME STREQUAL "libidn2" )
43+ add_definitions (-DWITH_LIBIDN2=1)
44+ endif ()
45+
2846set (PSL_FILE "${CMAKE_SOURCE_DIR} /list/public_suffix_list.dat" )
2947
3048find_program (
@@ -62,5 +80,8 @@ add_dependencies(
6280 "suffixes_dafsa.h"
6381)
6482
65- install (TARGETS ${PROJECT_NAME} DESTINATION lib)
66- install (FILES "${CMAKE_BINARY_DIR} /libpsl.h" DESTINATION include )
83+ if (LIBPSL_ENABLE_INSTALL)
84+ install (TARGETS ${PROJECT_NAME} DESTINATION lib)
85+ install (FILES "${CMAKE_BINARY_DIR} /libpsl.h" DESTINATION include )
86+ endif ()
87+
0 commit comments