11cmake_minimum_required (VERSION 3.31 )
22set (CMAKE_PROJECT_TOP_LEVEL_INCLUDES .devcontainer/cmake/xproinc.cmake)
33project (node-addon-api VERSION 8.5.0)
4- include (xpflags )
5- include (GNUInstallDirs )
6- set (XP_INSTALL_CMAKEDIR ${CMAKE_INSTALL_DATADIR} /cmake) # xpPackageDevel
7- set (XP_NAMESPACE xpro)
84set (targetsFile ${PROJECT_NAME} -targets)
95set (lib_name ${PROJECT_NAME} )
106xpFindPkg (PKGS nodexp )
11- xpPackageDevel (TARGETS_FILE ${targetsFile} DEPS nodexp LIBRARIES ${XP_NAMESPACE} ::${lib_name} )
7+ if (DEFINED XP_NAMESPACE)
8+ xpExternPackage (NAMESPACE ${XP_NAMESPACE}
9+ TARGETS_FILE ${targetsFile} LIBRARIES ${lib_name}
10+ BASE v${CMAKE_PROJECT_VERSION} XPDIFF "intro" DEPS nodexp
11+ WEB "https://github.com/nodejs/node-addon-api" UPSTREAM "github.com/nodejs/node-addon-api"
12+ DESC "Module for using N-API from C++"
13+ LICENSE "[MIT](https://github.com/nodejs/node-addon-api/blob/v8.5.0/LICENSE.md 'MIT License')"
14+ )
15+ set (CMAKE_INSTALL_CMAKEDIR ${XP_INSTALL_CMAKEDIR} )
16+ set (nameSpace NAMESPACE ${XP_NAMESPACE} ::)
17+ elseif (NOT DEFINED CMAKE_INSTALL_CMAKEDIR)
18+ set (CMAKE_INSTALL_CMAKEDIR ${CMAKE_INSTALL_LIBDIR} /cmake/${PROJECT_NAME} )
19+ endif ()
1220########################################
1321set (libsrcs
1422 napi-inl.deprecated.h
@@ -19,10 +27,10 @@ set(libsrcs
1927add_library (${lib_name} INTERFACE ${libsrcs} )
2028target_include_directories (${lib_name} INTERFACE $<INSTALL_INTERFACE :${CMAKE_INSTALL_INCLUDEDIR} >)
2129target_compile_definitions (${lib_name} INTERFACE NODE_ADDON_API_DISABLE_DEPRECATED NAPI_CPP_EXCEPTIONS )
22- target_link_libraries (${lib_name} INTERFACE ${XP_NAMESPACE} ::node )
30+ target_link_libraries (${lib_name} INTERFACE ${NODEXP_LIBRARIES} )
2331########################################
2432install (TARGETS ${lib_name} EXPORT ${targetsFile} )
2533install (FILES ${libsrcs} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} /${PROJECT_NAME} )
26- install (EXPORT ${targetsFile} DESTINATION ${XP_INSTALL_CMAKEDIR} NAMESPACE ${XP_NAMESPACE} :: )
34+ install (EXPORT ${targetsFile} DESTINATION ${CMAKE_INSTALL_CMAKEDIR} ${nameSpace} )
2735install (FILES CHANGELOG.md LICENSE.md README.md DESTINATION ${CMAKE_INSTALL_DATADIR} )
2836install (DIRECTORY doc DESTINATION ${CMAKE_INSTALL_DATADIR} )
0 commit comments