mirror of https://github.com/microsoft/vcpkg.git
84 lines
3.0 KiB
Diff
84 lines
3.0 KiB
Diff
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
|
index 327b2ec..98a3f37 100644
|
|
--- a/CMakeLists.txt
|
|
+++ b/CMakeLists.txt
|
|
@@ -302,7 +302,7 @@ if (MSVC)
|
|
endif ()
|
|
|
|
# Enable Clang C modules for incremental compilation
|
|
-if (CMAKE_C_COMPILER_ID MATCHES "Clang")
|
|
+if (FALSE)
|
|
target_compile_options(
|
|
numkong INTERFACE $<$<COMPILE_LANGUAGE:C>:-fmodules> $<$<COMPILE_LANGUAGE:C>:-fimplicit-module-maps>
|
|
$<$<COMPILE_LANGUAGE:C>:-fmodules-cache-path=${CMAKE_BINARY_DIR}/module-cache>
|
|
@@ -647,7 +647,7 @@ if (NK_BUILD_SHARED)
|
|
)
|
|
|
|
add_executable(nk_shared ${NK_SOURCES} "${CMAKE_BINARY_DIR}/emscripten_stub.c")
|
|
- target_include_directories(nk_shared PUBLIC "${PROJECT_SOURCE_DIR}/include")
|
|
+ target_include_directories(nk_shared PUBLIC $<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}/include> $<INSTALL_INTERFACE:include>)
|
|
|
|
if (NK_WASM64_)
|
|
set_target_properties(
|
|
@@ -699,7 +699,7 @@ if (NK_BUILD_SHARED)
|
|
set_target_properties(nk_shared PROPERTIES ENABLE_EXPORTS ON)
|
|
else ()
|
|
add_library(nk_shared SHARED ${NK_SOURCES})
|
|
- target_include_directories(nk_shared PUBLIC "${PROJECT_SOURCE_DIR}/include")
|
|
+ target_include_directories(nk_shared PUBLIC $<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}/include> $<INSTALL_INTERFACE:include>)
|
|
set_target_properties(nk_shared PROPERTIES OUTPUT_NAME numkong)
|
|
|
|
# Hide all symbols by default; only NK_DYNAMIC-annotated API functions are exported.
|
|
@@ -753,17 +753,25 @@ if (NK_BUILD_SHARED)
|
|
# fail on unsupported OS/runtime combinations.
|
|
endif ()
|
|
|
|
+ target_compile_definitions(nk_shared PUBLIC NK_DYNAMIC_DISPATCH=1 PRIVATE NK_BUILDING_LIBRARY=1)
|
|
+
|
|
install(
|
|
TARGETS nk_shared
|
|
- ARCHIVE
|
|
+ EXPORT unofficial-numkong-config
|
|
+ ARCHIVE DESTINATION lib
|
|
BUNDLE
|
|
FRAMEWORK
|
|
- LIBRARY
|
|
+ LIBRARY DESTINATION lib
|
|
OBJECTS
|
|
PRIVATE_HEADER
|
|
PUBLIC_HEADER
|
|
RESOURCE
|
|
- RUNTIME
|
|
+ RUNTIME DESTINATION bin
|
|
+ )
|
|
+ install(EXPORT unofficial-numkong-config
|
|
+ FILE unofficial-numkong-config.cmake
|
|
+ NAMESPACE unofficial::numkong::
|
|
+ DESTINATION share/unofficial-numkong
|
|
)
|
|
endif ()
|
|
|
|
@@ -852,5 +860,4 @@ if (NK_BUILD_CUDA_TEST)
|
|
add_test(NAME nk_cuda_test COMMAND nk_cuda_test)
|
|
endif ()
|
|
|
|
-install(DIRECTORY include/ DESTINATION include)
|
|
-install(DIRECTORY c/ DESTINATION share/doc/${PROJECT_NAME}/src)
|
|
+install(DIRECTORY include/ DESTINATION include FILES_MATCHING PATTERN *.h)
|
|
diff --git a/include/numkong/types.h b/include/numkong/types.h
|
|
index 6d94b2f..5d0b165 100644
|
|
--- a/include/numkong/types.h
|
|
+++ b/include/numkong/types.h
|
|
@@ -115,7 +115,11 @@
|
|
|
|
#if NK_DYNAMIC_DISPATCH
|
|
#if defined(_WIN32) || defined(__CYGWIN__)
|
|
+#if defined(NK_BUILDING_LIBRARY)
|
|
#define NK_DYNAMIC __declspec(dllexport)
|
|
+#else
|
|
+#define NK_DYNAMIC __declspec(dllimport)
|
|
+#endif
|
|
#elif defined(__GNUC__) || defined(__clang__)
|
|
#define NK_DYNAMIC __attribute__((visibility("default")))
|
|
#else
|