diff --git a/ports/sciter/0001_patch_stdafx.patch b/ports/sciter/0001_patch_stdafx.patch new file mode 100644 index 0000000000..b4a85d5d37 --- /dev/null +++ b/ports/sciter/0001_patch_stdafx.patch @@ -0,0 +1,12 @@ +diff --git a/include/sciter-win-main.cpp b/include/sciter-win-main.cpp +index 9f2699e..104b70a 100644 +--- a/include/sciter-win-main.cpp ++++ b/include/sciter-win-main.cpp +@@ -1,4 +1,6 @@ +-#include "stdafx.h" ++// It is better to disable stdafx.h by default. ++// And enable it explicitly via /Fstdafx.h compiler option (C/C++ - Advanced - Force Include File). ++// #include "stdafx.h" + + #include + diff --git a/ports/sciter/CONTROL b/ports/sciter/CONTROL index 0dd3795abb..ba9d888a59 100644 --- a/ports/sciter/CONTROL +++ b/ports/sciter/CONTROL @@ -1,4 +1,4 @@ Source: sciter -Version: 4.0.0.9 +Version: 4.0.0.9-1 Description: Sciter is an embeddable HTML/CSS/scripting engine. Maintainer: andrew.fedoniouk@gmail.com, ehysta@gmail.com diff --git a/ports/sciter/portfile.cmake b/ports/sciter/portfile.cmake index c8a8becdeb..01542219f1 100644 --- a/ports/sciter/portfile.cmake +++ b/ports/sciter/portfile.cmake @@ -1,38 +1,49 @@ -#header-only library +if(VCPKG_LIBRARY_LINKAGE STREQUAL static) + message(WARNING "Warning: Sciter requires sciter.dll to run. Download it manually or install dynamic package.") +endif() + include(vcpkg_common_functions) +# header-only library set(VCPKG_POLICY_DLLS_WITHOUT_LIBS enabled) set(SCITER_VERSION 4.0.0.9) set(SCITER_REVISION 43565156c373f9635cc491551b870a948d4d6f37) -set(SCITER_SHA 8d3a37caa2daa0a9ff1f2bfe89f0d5d67c2e9da8de70d971748a4fc6369b7c81e1e2ae97e577d6c8835f2872b1f284db7ee6c255c99bc54752aa3e7c82d81efc) +set(SCITER_SHA 6c50822c46784a8b2114973dffa8ec4041c69f84303507fdcde425dbac8d698dd6241a209cdc0ae0663751ed0f78d92f7b0c26794417f374978bfb3e33bf004c) set(SCITER_SRC ${CURRENT_BUILDTREES_DIR}/src/sciter-sdk-${SCITER_REVISION}) if(VCPKG_TARGET_ARCHITECTURE STREQUAL x64) - set(SCITER_ARCH 64) + set(SCITER_ARCH 64) elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL x86) - set(SCITER_ARCH 32) + set(SCITER_ARCH 32) endif() -# unpack -vcpkg_download_distfile(ARCHIVE - URLS "https://github.com/c-smile/sciter-sdk/archive/${SCITER_REVISION}.zip" - FILENAME "sciter-sdk-${SCITER_VERSION}.zip" +# check out +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO c-smile/sciter-sdk + REF ${SCITER_REVISION} SHA512 ${SCITER_SHA} ) -vcpkg_extract_source_archive(${ARCHIVE}) -# include +# disable stdafx.h +vcpkg_apply_patches( + SOURCE_PATH ${SOURCE_PATH} + PATCHES ${CMAKE_CURRENT_LIST_DIR}/0001_patch_stdafx.patch +) + +# install include directory file(INSTALL ${SCITER_SRC}/include/ DESTINATION ${CURRENT_PACKAGES_DIR}/include/sciter - FILES_MATCHING - PATTERN "sciter-gtk-main.cpp" EXCLUDE - PATTERN "sciter-osx-main.mm" EXCLUDE - PATTERN "*.cpp" - PATTERN "*.h" - PATTERN "*.hpp" - ) + FILES_MATCHING + PATTERN "sciter-gtk-main.cpp" EXCLUDE + PATTERN "sciter-osx-main.mm" EXCLUDE + PATTERN "*.cpp" + PATTERN "*.h" + PATTERN "*.hpp" +) set(SCITER_SHARE ${CURRENT_PACKAGES_DIR}/share/sciter) +set(SCITER_TOOLS ${CURRENT_PACKAGES_DIR}/tools/sciter) # license file(COPY ${SCITER_SRC}/logfile.htm DESTINATION ${SCITER_SHARE}) @@ -44,14 +55,15 @@ file(COPY ${SCITER_SRC}/samples DESTINATION ${SCITER_SHARE}) file(COPY ${SCITER_SRC}/widgets DESTINATION ${SCITER_SHARE}) # tools -file(INSTALL ${SCITER_SRC}/bin/packfolder.exe DESTINATION ${CURRENT_PACKAGES_DIR}/tools) -file(INSTALL ${SCITER_SRC}/bin/tiscript.exe DESTINATION ${CURRENT_PACKAGES_DIR}/tools) +file(INSTALL ${SCITER_SRC}/bin/packfolder.exe DESTINATION ${SCITER_TOOLS}) +file(INSTALL ${SCITER_SRC}/bin/tiscript.exe DESTINATION ${SCITER_TOOLS}) -file(INSTALL ${SCITER_SRC}/bin/${SCITER_ARCH}/sciter.exe DESTINATION ${CURRENT_PACKAGES_DIR}/tools) -file(INSTALL ${SCITER_SRC}/bin/${SCITER_ARCH}/inspector.exe DESTINATION ${CURRENT_PACKAGES_DIR}/tools) +file(INSTALL ${SCITER_SRC}/bin/${SCITER_ARCH}/sciter.exe DESTINATION ${SCITER_TOOLS}) +file(INSTALL ${SCITER_SRC}/bin/${SCITER_ARCH}/inspector.exe DESTINATION ${SCITER_TOOLS}) if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) - file(INSTALL ${SCITER_SRC}/bin/${SCITER_ARCH}/sciter.dll DESTINATION ${CURRENT_PACKAGES_DIR}/tools) + # DLLs should not be present in a static build + file(INSTALL ${SCITER_SRC}/bin/${SCITER_ARCH}/sciter.dll DESTINATION ${SCITER_TOOLS}) endif() # bin @@ -60,6 +72,4 @@ if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) file(INSTALL ${SCITER_SRC}/bin/${SCITER_ARCH}/sciter.dll DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin) file(INSTALL ${SCITER_SRC}/bin/${SCITER_ARCH}/tiscript-sqlite.dll DESTINATION ${CURRENT_PACKAGES_DIR}/bin) file(INSTALL ${SCITER_SRC}/bin/${SCITER_ARCH}/tiscript-sqlite.dll DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin) -else() - message(WARNING "Sciter requires sciter.dll to run. Download it manually or install dynamic package.") endif()