Skip to content

Commit e36ccba

Browse files
committedOct 3, 2021
remove generated config.hpp from the source tree
since it's been generated from v8pp/config.hpp.in by CMake. Fix default value for `V8PP_PLUGIN_SUFFIX` option. Fix v8pp install step in the CMake files. See #138 (cherry picked from commit d69048d)
1 parent bf13ca1 commit e36ccba

File tree

3 files changed

+11
-70
lines changed

3 files changed

+11
-70
lines changed
 

‎CMakeLists.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ option(BUILD_DOCUMENTATION "Build documentation" OFF)
1919
set(V8PP_HEADER_ONLY 0 CACHE BOOL "Header-only library")
2020
set(V8PP_ISOLATE_DATA_SLOT 0 CACHE STRING "v8::Isolate data slot number, used in v8pp for shared data")
2121
set(V8PP_PLUGIN_INIT_PROC_NAME "v8pp_module_init" CACHE STRING "v8pp plugin initialization procedure name")
22-
set(V8PP_PLUGIN_SUFFIX ${CMAKE_SHARED_LIBRARY_SUFFIX} CACHE STRING "v8pp plugin filename suffix")
22+
set(V8PP_PLUGIN_SUFFIX ${CMAKE_SHARED_MODULE_SUFFIX} CACHE STRING "v8pp plugin filename suffix")
2323
set(V8_COMPRESS_POINTERS 1 CACHE BOOL "Use new V8 ABI with V8_COMPRESS_POINTERS and V8_31BIT_SMIS_ON_64BIT_ARCH")
2424

2525
if(BUILD_SHARED_LIBS AND WIN32)

‎v8pp/CMakeLists.txt

+10-6
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,14 @@
33
list(APPEND CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake)
44
find_package(V8 REQUIRED)
55

6-
configure_file(config.hpp.in ${CMAKE_CURRENT_SOURCE_DIR}/config.hpp)
6+
configure_file(config.hpp.in ${CMAKE_CURRENT_BINARY_DIR}/config.hpp)
77

88
if(V8_COMPRESS_POINTERS)
99
set(V8PP_DEFINES V8_COMPRESS_POINTERS V8_31BIT_SMIS_ON_64BIT_ARCH)
1010
endif()
1111

1212
set(V8PP_HEADERS
13-
${CMAKE_CURRENT_SOURCE_DIR}/config.hpp
13+
${CMAKE_CURRENT_BINARY_DIR}/config.hpp
1414
call_from_v8.hpp
1515
call_v8.hpp
1616
class.hpp
@@ -63,6 +63,7 @@ if(V8PP_HEADER_ONLY)
6363
target_compile_options(v8pp INTERFACE ${V8PP_COMPILE_OPTIONS})
6464
target_include_directories(v8pp INTERFACE
6565
$<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}>
66+
$<BUILD_INTERFACE:${PROJECT_BINARY_DIR}>
6667
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>)
6768
target_link_libraries(v8pp INTERFACE V8::v8 V8::libplatform)
6869
else()
@@ -71,27 +72,30 @@ else()
7172
target_compile_options(v8pp PRIVATE ${V8PP_COMPILE_OPTIONS})
7273
target_include_directories(v8pp PUBLIC
7374
$<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}>
75+
$<BUILD_INTERFACE:${PROJECT_BINARY_DIR}>
7476
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>)
7577
target_link_libraries(v8pp PUBLIC V8::v8 V8::libplatform)
7678
if(BUILD_SHARED_LIBS)
7779
target_link_libraries(v8pp PUBLIC ${CMAKE_DL_LIBS})
7880
endif()
7981
endif()
8082

81-
source_group(TREE ${CMAKE_CURRENT_SOURCE_DIR} FILES ${V8PP_HEADERS} ${V8PP_SOURCES})
83+
#source_group(TREE ${CMAKE_CURRENT_SOURCE_DIR} FILES ${V8PP_HEADERS} ${V8PP_SOURCES})
8284

8385
# Install
8486
include(GNUInstallDirs)
8587
include(CMakePackageConfigHelpers)
8688

89+
set(targets_export_name v8pp_Targets)
90+
8791
write_basic_package_version_file("${PROJECT_BINARY_DIR}/ConfigVersion.cmake" COMPATIBILITY SameMajorVersion)
8892
configure_package_config_file("${PROJECT_SOURCE_DIR}/cmake/Config.cmake.in" "${PROJECT_BINARY_DIR}/Config.cmake"
8993
INSTALL_DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/v8pp/cmake)
9094

91-
install(TARGETS v8pp EXPORT v8pp_Targets)
92-
install(EXPORT v8pp_Targets
95+
install(TARGETS v8pp EXPORT ${targets_export_name})
96+
install(EXPORT ${targets_export_name}
9397
NAMESPACE v8pp::
94-
FILE v8ppTargets.cmake
98+
FILE ${targets_export_name}.cmake
9599
DESTINATION "${CMAKE_INSTALL_DATADIR}/cmake/v8pp")
96100

97101
install(FILES "${PROJECT_BINARY_DIR}/ConfigVersion.cmake" "${PROJECT_BINARY_DIR}/Config.cmake"

‎v8pp/config.hpp

-63
This file was deleted.

0 commit comments

Comments
 (0)