diff --git a/.npmignore b/.npmignore index 1bc1114..6f77a7e 100644 --- a/.npmignore +++ b/.npmignore @@ -1,9 +1,16 @@ .idea .vscode +.build +.github +3rdparty build/CMakeFiles build/cmake_install.cmake build/CMakeCache.txt build/Makefile +build/*.vcxproj* +build/*.sln +build/x64/ +build/libnut.dir/ CMakeFiles src test diff --git a/3rdparty/win32/api-ms-win-crt-heap-l1-1-0.dll b/3rdparty/win32/api-ms-win-crt-heap-l1-1-0.dll new file mode 100644 index 0000000..618d989 Binary files /dev/null and b/3rdparty/win32/api-ms-win-crt-heap-l1-1-0.dll differ diff --git a/3rdparty/win32/api-ms-win-crt-runtime-l1-1-0.dll b/3rdparty/win32/api-ms-win-crt-runtime-l1-1-0.dll new file mode 100644 index 0000000..18aed84 Binary files /dev/null and b/3rdparty/win32/api-ms-win-crt-runtime-l1-1-0.dll differ diff --git a/3rdparty/win32/api-ms-win-crt-string-l1-1-0.dll b/3rdparty/win32/api-ms-win-crt-string-l1-1-0.dll new file mode 100644 index 0000000..6d1b7a8 Binary files /dev/null and b/3rdparty/win32/api-ms-win-crt-string-l1-1-0.dll differ diff --git a/3rdparty/win32/msvcp140.dll b/3rdparty/win32/msvcp140.dll new file mode 100644 index 0000000..4a5ca4f Binary files /dev/null and b/3rdparty/win32/msvcp140.dll differ diff --git a/3rdparty/win32/vcruntime140.dll b/3rdparty/win32/vcruntime140.dll new file mode 100644 index 0000000..52fe06b Binary files /dev/null and b/3rdparty/win32/vcruntime140.dll differ diff --git a/3rdparty/win32/vcruntime140_1.dll b/3rdparty/win32/vcruntime140_1.dll new file mode 100644 index 0000000..49f97fe Binary files /dev/null and b/3rdparty/win32/vcruntime140_1.dll differ diff --git a/CMakeLists.txt b/CMakeLists.txt index a3c9b9b..d42dffb 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.12) +cmake_minimum_required(VERSION 3.20) set(CMAKE_CXX_STANDARD 17) project(libnut) @@ -26,8 +26,6 @@ elseif (WIN32) message(STATUS "Windows build") elseif (UNIX AND NOT APPLE) message(STATUS "Linux build") - set(LIBS "${LIBS}" "-lpng") - set(LIBS "${LIBS}" "-lz") set(LIBS "${LIBS}" "-lX11") set(LIBS "${LIBS}" "-lXtst") endif() @@ -40,6 +38,21 @@ else() set(CMAKE_CXX_FLAGS "/Wall /W4 /EHsc") endif() +if (WIN32) + # Copy runtime distributable + add_custom_command( + TARGET ${PROJECT_NAME} POST_BUILD + COMMAND ${CMAKE_COMMAND} -E copy + ${CMAKE_SOURCE_DIR}/3rdparty/win32/msvcp140.dll + ${CMAKE_SOURCE_DIR}/3rdparty/win32/vcruntime140.dll + ${CMAKE_SOURCE_DIR}/3rdparty/win32/vcruntime140_1.dll + ${CMAKE_SOURCE_DIR}/3rdparty/win32/api-ms-win-crt-heap-l1-1-0.dll + ${CMAKE_SOURCE_DIR}/3rdparty/win32/api-ms-win-crt-runtime-l1-1-0.dll + ${CMAKE_SOURCE_DIR}/3rdparty/win32/api-ms-win-crt-string-l1-1-0.dll + ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_BUILD_TYPE}/ + ) +endif() + add_compile_definitions(NAPI_CPP_EXCEPTIONS) add_compile_definitions(NAPI_VERSION=3)