diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index f77420712..d3f30debc 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -196,7 +196,6 @@ jobs: -DCMAKE_TOOLCHAIN_FILE=${{ env.RUNVCPKG_VCPKG_ROOT }}/scripts/buildsystems/vcpkg.cmake ` "-DLibDigiDocpp_ROOT=libs/PFiles64/libdigidocpp" cmake --build build --target msi - cmake --build build --target msishellext cmake --build build --target appx - name: Archive artifacts uses: actions/upload-artifact@v4 diff --git a/client/CMakeLists.txt b/client/CMakeLists.txt index 44377dffd..c8abe9d89 100644 --- a/client/CMakeLists.txt +++ b/client/CMakeLists.txt @@ -234,11 +234,12 @@ elseif(WIN32) -d libs_path=${LIBS_PATH} -d client_path=$ -d qt_suffix=$<$:d> + -d ShellExt=$ ${CMAKE_SOURCE_DIR}/${PROJECT_NAME}.wxs ${CMAKE_SOURCE_DIR}/cmake/modules/WelcomeDlg.wxs ${CMAKE_SOURCE_DIR}/cmake/modules/WixUI_Minimal.wxs ) - add_custom_target(msi DEPENDS ${PROJECT_NAME} + add_custom_target(msi DEPENDS ${PROJECT_NAME} EsteidShellExtension COMMAND ${WIX_CMD} -o "${MSI_FILE}.msi" #Build MSI with QT COMMAND ${WIX_CMD} -d qt_path=${qtCore_install_prefix} -o "${MSI_FILE}.qt.msi" diff --git a/extensions/windows/CMakeLists.txt b/extensions/windows/CMakeLists.txt index 0d1dae52e..9df40530b 100644 --- a/extensions/windows/CMakeLists.txt +++ b/extensions/windows/CMakeLists.txt @@ -1,17 +1,10 @@ -cmake_minimum_required(VERSION 3.16) project(EsteidShellExtension VERSION 3.13.9) - -set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake/modules) -set(CMAKE_INCLUDE_CURRENT_DIR ON) - include(VersionInfo) if(CMAKE_SIZEOF_VOID_P EQUAL 8) set(MIDL_TARGET "x64") - set(PLATFORM "x64") else() set(MIDL_TARGET "win32") - set(PLATFORM "x86") endif() add_custom_command( @@ -37,41 +30,15 @@ set_target_properties(${PROJECT_NAME} PROPERTIES MSVC_RUNTIME_LIBRARY "MultiThreaded$<$:Debug>" COMPILE_DEFINITIONS "_UNICODE;UNICODE;_WINDLL" INCLUDE_DIRECTORIES ${CMAKE_CURRENT_BINARY_DIR} - INTERPROCEDURAL_OPTIMIZATION YES COMPILE_OPTIONS "/guard:cf" LINK_OPTIONS "/guard:cf" LINK_LIBRARIES "uxtheme.lib" SKIP_AUTOMOC ON ) -add_custom_target(msishellext DEPENDS ${PROJECT_NAME} - COMMAND wix.exe build -nologo - -arch ${PLATFORM} - -d MSI_VERSION=${VERSION} - -d ShellExt=$ - ${CMAKE_CURRENT_SOURCE_DIR}/EsteidShellExtension.wxs - ${CMAKE_MODULE_PATH}/WelcomeDlg.wxs - ${CMAKE_MODULE_PATH}/WixUI_Minimal.wxs - -ext WixToolset.UI.wixext - -bv WixUIDialogBmp=${CMAKE_MODULE_PATH}/dlgbmp.bmp - -bv WixUIBannerBmp=${CMAKE_MODULE_PATH}/banner.bmp - -o Digidoc_ShellExt-${VERSION}$ENV{VER_SUFFIX}.${PLATFORM}.msi - WORKING_DIRECTORY ${CMAKE_BINARY_DIR} -) - if(SIGNCERT) - if(CROSSSIGNCERT) - target_link_options(${PROJECT_NAME} PRIVATE "/INTEGRITYCHECK") - endif() add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD COMMAND signtool.exe sign /a /v /s MY /n "${SIGNCERT}" /fd SHA256 /du http://installer.id.ee - "$<$:/ph;/ac;${CROSSSIGNCERT}>" - /tr http://timestamp.digicert.com /td SHA256 $ - COMMAND_EXPAND_LISTS - ) - add_custom_command(TARGET msishellext POST_BUILD - COMMAND signtool.exe sign /a /v /s MY /n "${SIGNCERT}" /fd SHA256 /du http://installer.id.ee - /tr http://timestamp.digicert.com /td SHA256 - "${CMAKE_BINARY_DIR}/Digidoc_ShellExt-${VERSION}$ENV{VER_SUFFIX}.${PLATFORM}.msi" + /tr http://timestamp.digicert.com /td SHA256 $ ) endif() diff --git a/extensions/windows/EsteidShellExtension.wxs b/extensions/windows/EsteidShellExtension.wxs deleted file mode 100644 index 4a3d80e1c..000000000 --- a/extensions/windows/EsteidShellExtension.wxs +++ /dev/null @@ -1,45 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/qdigidoc4.wxs b/qdigidoc4.wxs index d669a008b..dd5ec61fc 100644 --- a/qdigidoc4.wxs +++ b/qdigidoc4.wxs @@ -1,7 +1,13 @@ + + + @@ -24,6 +30,7 @@ + @@ -136,6 +143,23 @@ + + + + + + + + + + + + +