mirror of
https://github.com/saitohirga/WSJT-X.git
synced 2024-11-23 20:58:55 -05:00
Add on-line KVASD install to Windows NSIS installer
To comply with the WSJT_X GPL v3 license, the closed source KVASD executable must be delivered separately and optionally to end users. To facilitate this a new install option has been added to the Windows installer to install KVASD by downloading it at install time. The installer first downloads the KVASD EULA from the Internet and presents it to the user for reading and agreement. If agreement is given the KVASD binary is downloaded from the Internet and checksummed using an MD5 hash, if that passes, it is installed along with WSJT-X. An uninstall record is also written to ensure that, if installed, KVASD will be un-installed if WSJT-X is un-installed. To facilitate this enhancment to the NSIS installer the standard CPack NSIS installer script template has been overridden with a project specific version. This version also implements the more modern and recomended nsDialogs mechanism for installer custom page construction including the install options page. See CMake/Modules/NSIS.template.in for details and CMakeCPackOptions.cmake.in for usage in this installer. Merged from branch wsjtx-1.4. git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@4663 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This commit is contained in:
parent
8c348b7171
commit
207db8a5c4
1056
CMake/Modules/NSIS.template.in
Normal file
1056
CMake/Modules/NSIS.template.in
Normal file
File diff suppressed because it is too large
Load Diff
@ -1,25 +1,34 @@
|
|||||||
#
|
#
|
||||||
# CMake script to fetch kvasd binary for the current platform
|
# CMake script to fetch kvasd binary for the current platform
|
||||||
#
|
#
|
||||||
set (kvasd_NAME https://svn.code.sf.net/p/wsjt/wsjt/trunk/kvasd-binary/${SYSTEM_NAME}/kvasd${EXECUTABLE_SUFFIX})
|
set (kvasd_NAME ${URL}/${SYSTEM_NAME}/kvasd${EXECUTABLE_SUFFIX})
|
||||||
message (STATUS "file: ${kvasd_NAME}")
|
message (STATUS "file: ${kvasd_NAME}")
|
||||||
if (APPLE)
|
|
||||||
set (__kvasd_md5sum 198dbdde1e4b04f9940f63731097ee35)
|
file (
|
||||||
elseif (WIN32)
|
DOWNLOAD ${kvasd_NAME}.md5 contrib/kvasd${EXECUTABLE_SUFFIX}.md5
|
||||||
set (__kvasd_md5sum 7b16809e51126a01bd02aed44427510c)
|
TIMEOUT 120
|
||||||
elseif (UNIX)
|
STATUS status
|
||||||
set (__kvasd_md5sum 28a6f8ba2efc3df02af2a781bd3ab654)
|
LOG log
|
||||||
endif ()
|
SHOW_PROGRESS
|
||||||
|
)
|
||||||
|
list (GET staus 0 rc)
|
||||||
|
if (rc)
|
||||||
|
message (WARNING "${status}")
|
||||||
|
message (FATAL_ERROR "${log}")
|
||||||
|
endif (rc)
|
||||||
|
file (READ contrib/kvasd${EXECUTABLE_SUFFIX}.md5 md5sum)
|
||||||
|
string (REGEX MATCH "[0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f]" md5sum ${md5sum})
|
||||||
|
|
||||||
file (
|
file (
|
||||||
DOWNLOAD ${kvasd_NAME} contrib/kvasd${EXECUTABLE_SUFFIX}
|
DOWNLOAD ${kvasd_NAME} contrib/kvasd${EXECUTABLE_SUFFIX}
|
||||||
TIMEOUT 120
|
TIMEOUT 120
|
||||||
STATUS kvasd_STATUS
|
STATUS status
|
||||||
LOG kvasd_LOG
|
LOG log
|
||||||
SHOW_PROGRESS
|
SHOW_PROGRESS
|
||||||
EXPECTED_MD5 ${__kvasd_md5sum}
|
EXPECTED_MD5 ${md5sum}
|
||||||
)
|
)
|
||||||
list (GET kvasd_STATUS 0 kvasd_RC)
|
list (GET status 0 rc)
|
||||||
if (kvasd_RC)
|
if (rc)
|
||||||
message (WARNING "${kvasd_STATUS}")
|
message (WARNING "${status}")
|
||||||
message (FATAL_ERROR "${kvasd_LOG}")
|
message (FATAL_ERROR "${log}")
|
||||||
endif (kvasd_RC)
|
endif (rc)
|
||||||
|
@ -15,9 +15,11 @@ set (CPACK_STRIP_FILES TRUE)
|
|||||||
#
|
#
|
||||||
# components
|
# components
|
||||||
#
|
#
|
||||||
#set (CPACK_COMPONENTS_ALL Unspecified Runtime)
|
#set (CPACK_COMPONENTS_ALL runtime kvasd)
|
||||||
#set (CPACK_COMPONENT_APPLICATIONS_DISPLAY_NAME "@PROJECT_NAME@ Application")
|
#set (CPACK_COMPONENT_RUNTIME_DISPLAY_NAME "@PROJECT_NAME@ Application")
|
||||||
#set (CPACK_COMPONENT_APPLICATIONS_DESCRIPTION "@WSJTX_DESCRIPTION_SUMMARY@")
|
#set (CPACK_COMPONENT_RUNTIME_DESCRIPTION "@WSJTX_DESCRIPTION_SUMMARY@")
|
||||||
|
#set (CPACK_COMPONENT_KVASD_DISPLAY_NAME "KVASD Reed Solomon Decoder")
|
||||||
|
#set (CPACK_COMPONENT_KVASD_DESCRIPTION "Optional decoder component")
|
||||||
|
|
||||||
if (CPACK_GENERATOR MATCHES "NSIS")
|
if (CPACK_GENERATOR MATCHES "NSIS")
|
||||||
set (CPACK_STRIP_FILES FALSE) # breaks Qt packaging on Windows
|
set (CPACK_STRIP_FILES FALSE) # breaks Qt packaging on Windows
|
||||||
@ -44,6 +46,191 @@ if (CPACK_GENERATOR MATCHES "NSIS")
|
|||||||
set (CPACK_NSIS_CONTACT "${CPACK_PACKAGE_CONTACT}")
|
set (CPACK_NSIS_CONTACT "${CPACK_PACKAGE_CONTACT}")
|
||||||
set (CPACK_NSIS_MUI_FINISHPAGE_RUN "wsjtx.exe")
|
set (CPACK_NSIS_MUI_FINISHPAGE_RUN "wsjtx.exe")
|
||||||
set (CPACK_NSIS_MODIFY_PATH ON)
|
set (CPACK_NSIS_MODIFY_PATH ON)
|
||||||
|
|
||||||
|
set (CPACK_NSIS_EXTRA_DEFINES "
|
||||||
|
;
|
||||||
|
; enable local plugins
|
||||||
|
;
|
||||||
|
!ifdef NSIS_WIN32_MAKENSIS
|
||||||
|
!define NSISCONF_3 ';' ; NSIS 2 tries to parse some preprocessor instructions inside \"!if 0\" blocks!
|
||||||
|
!addincludedir '@CMAKE_CURRENT_SOURCE_DIR@\\contrib\\NSIS\\Include'
|
||||||
|
!if \${NSIS_PACKEDVERSION} > 0x02ffffff ; NSIS 3+:
|
||||||
|
!define /redef NSISCONF_3 ''
|
||||||
|
\${NSISCONF_3} !addplugindir /x86-ansi '@CMAKE_CURRENT_SOURCE_DIR@\\contrib\\NSIS\\Plugins-i386-ansi'
|
||||||
|
\${NSISCONF_3} !addplugindir /x86-unicode '@CMAKE_CURRENT_SOURCE_DIR@\\contrib\\NSIS\\Plugins-i386-unicode'
|
||||||
|
!else ; NSIS 2:
|
||||||
|
!addplugindir '@CMAKE_CURRENT_SOURCE_DIR@\\contrib\\NSIS\\Plugins-i386-ansi'
|
||||||
|
!endif ;~ NSIS_PACKEDVERSION
|
||||||
|
!undef NSISCONF_3
|
||||||
|
!endif ;~ NSIS_WIN32_MAKENSIS
|
||||||
|
|
||||||
|
; global variables
|
||||||
|
Var KVASD_EXECUTABLE
|
||||||
|
Var CB_INSTALL_KVASD
|
||||||
|
Var INSTALL_KVASD
|
||||||
|
Var RichEditLicense
|
||||||
|
Var CheckBoxAgree
|
||||||
|
Var KVASD_LICENSE
|
||||||
|
|
||||||
|
; page callbacks
|
||||||
|
Function KVASD_page_create
|
||||||
|
Push $R0
|
||||||
|
|
||||||
|
\${If} $INSTALL_KVASD = \${BST_CHECKED}
|
||||||
|
\${AndIfNot} \${FileExists} $KVASD_LICENSE
|
||||||
|
GetTempFileName $KVASD_LICENSE
|
||||||
|
retry_eula:
|
||||||
|
NSISdl::download /TIMEOUT=30000 @PROJECT_KVASD_URL@/kvasd_eula.txt $KVASD_LICENSE
|
||||||
|
Pop $R0
|
||||||
|
\${If} $R0 != success
|
||||||
|
MessageBox MB_RETRYCANCEL|MB_ICONQUESTION 'Download: @PROJECT_KVASD_URL@/kvasd_eula.txt$\\nFailed: $R0' IDRETRY retry_eula
|
||||||
|
StrCpy $INSTALL_KVASD \${BST_UNCHECKED}
|
||||||
|
Delete $KVASD_LICENSE
|
||||||
|
\${EndIf}
|
||||||
|
\${EndIf}
|
||||||
|
|
||||||
|
\${If} $INSTALL_KVASD = \${BST_CHECKED}
|
||||||
|
\${AndIf} \${FileExists} $KVASD_LICENSE
|
||||||
|
!insertmacro MUI_HEADER_TEXT `$(MUI_TEXT_LICENSE_TITLE)` `Please agree the terms of this license before installing KVASD`
|
||||||
|
|
||||||
|
; disable install button until agreed
|
||||||
|
GetDlgItem $R0 $HWNDPARENT 1
|
||||||
|
EnableWindow $R0 0
|
||||||
|
|
||||||
|
nsDialogs::Create 1018
|
||||||
|
Pop $R0
|
||||||
|
; \${If} $R0 == error
|
||||||
|
; Abort
|
||||||
|
; \${EndIf}
|
||||||
|
|
||||||
|
nsDialogs::CreateControl RichEdit20A \${WS_VISIBLE}|\${WS_CHILD}|\${WS_TABSTOP}|\${WS_VSCROLL}|\${ES_MULTILINE}|\${ES_READONLY} \${__NSD_Text_EXSTYLE} 0 0 100% -24u ''
|
||||||
|
Pop $RichEditLicense
|
||||||
|
|
||||||
|
nsRichEdit::Load $RichEditLicense $KVASD_LICENSE
|
||||||
|
|
||||||
|
\${NSD_CreateCheckBox} 0 -20u 160u 12u `$(^AcceptBtn)`
|
||||||
|
Pop $CheckBoxAgree
|
||||||
|
\${NSD_OnClick} $CheckBoxAgree KVASD_Page_CheckBoxAgree_Click
|
||||||
|
nsDialogs::Show
|
||||||
|
\${Else}
|
||||||
|
Abort ; skip page
|
||||||
|
\${EndIf}
|
||||||
|
|
||||||
|
Pop $R0
|
||||||
|
FunctionEnd
|
||||||
|
|
||||||
|
Function KVASD_page_leave
|
||||||
|
FunctionEnd
|
||||||
|
|
||||||
|
; field callbacks
|
||||||
|
Function KVASD_Page_CheckBoxAgree_Click
|
||||||
|
Pop $0
|
||||||
|
|
||||||
|
\${NSD_GetState} $CheckBoxAgree $R0
|
||||||
|
\${If} $R0 = \${BST_CHECKED}
|
||||||
|
GetDlgItem $R0 $HWNDPARENT 1
|
||||||
|
EnableWindow $R0 1
|
||||||
|
\${Else}
|
||||||
|
GetDlgItem $R0 $HWNDPARENT 1
|
||||||
|
EnableWindow $R0 0
|
||||||
|
\${EndIf}
|
||||||
|
FunctionEnd"
|
||||||
|
)
|
||||||
|
|
||||||
|
set (CPACK_NSIS_EXTRA_INIT_COMMANDS "
|
||||||
|
; initial value of $INSATLL_KVASD chack box
|
||||||
|
IntOp $INSTALL_KVASD 0 + \${BST_CHECKED}"
|
||||||
|
)
|
||||||
|
|
||||||
|
set (CPACK_NSIS_EXTRA_PAGES "
|
||||||
|
; custom page for KVASD license display and acceptance
|
||||||
|
Page custom KVASD_page_create KVASD_page_leave"
|
||||||
|
)
|
||||||
|
|
||||||
|
set (CPACK_NSIS_EXTRA_INSTALL_OPTIONS "
|
||||||
|
; add a chackbox for installing KVASD
|
||||||
|
\${NSD_CreateCheckBox} 0u 110u 100% 10u 'Install the optional KVASD decoder'
|
||||||
|
Pop $CB_INSTALL_KVASD
|
||||||
|
\${NSD_SetState} $CB_INSTALL_KVASD $INSTALL_KVASD"
|
||||||
|
)
|
||||||
|
|
||||||
|
set (CPACK_NSIS_EXTRA_INSTALL_OPTIONS_READ "
|
||||||
|
\${NSD_GetState} $CB_INSTALL_KVASD $INSTALL_KVASD"
|
||||||
|
)
|
||||||
|
|
||||||
|
set (CPACK_NSIS_EXTRA_PREINSTALL_COMMANDS "
|
||||||
|
\${If} $INSTALL_KVASD = \${BST_CHECKED}
|
||||||
|
;
|
||||||
|
; fetch KVASD license
|
||||||
|
;
|
||||||
|
StrCpy $5 @PROJECT_KVASD_URL@/@SYSTEM_NAME@/kvasd@CMAKE_EXECUTABLE_SUFFIX@
|
||||||
|
GetTempFileName $1
|
||||||
|
retry:
|
||||||
|
NSISdl::download /TIMEOUT=30000 $5.md5 $1
|
||||||
|
Pop $R0
|
||||||
|
\${If} $R0 != success
|
||||||
|
MessageBox MB_RETRYCANCEL|MB_ICONQUESTION 'Download: $5.md5$\\nFailed: $R0' IDRETRY retry
|
||||||
|
Abort
|
||||||
|
\${EndIf}
|
||||||
|
ClearErrors
|
||||||
|
FileOpen $2 $1 r
|
||||||
|
\${If} \${Errors}
|
||||||
|
MessageBox MB_RETRYCANCEL|MB_ICONQUESTION 'Failed to read MD5 hash file: $5.md5' IDRETRY retry
|
||||||
|
Abort
|
||||||
|
\${EndIf}
|
||||||
|
|
||||||
|
; extract MD5 hash
|
||||||
|
FileRead $2 $3 32
|
||||||
|
FileClose $2
|
||||||
|
|
||||||
|
;
|
||||||
|
; fetch kvasd executable
|
||||||
|
;
|
||||||
|
GetTempFileName $KVASD_EXECUTABLE
|
||||||
|
NSISdl::download /TIMEOUT=30000 $5 $KVASD_EXECUTABLE
|
||||||
|
Pop $R0
|
||||||
|
\${If} $R0 != success
|
||||||
|
MessageBox MB_RETRYCANCEL|MB_ICONQUESTION 'Download: $5$\\nFailed: $R0' IDRETRY retry
|
||||||
|
Abort
|
||||||
|
\${EndIf}
|
||||||
|
|
||||||
|
; calculate MD5 hash
|
||||||
|
Crypto::HashFile 'MD5' $KVASD_EXECUTABLE
|
||||||
|
Pop $0
|
||||||
|
|
||||||
|
\${If} $3 != $0
|
||||||
|
MessageBox MB_RETRYCANCEL|MB_ICONQUESTION 'MD5 hash check failed on: $5$\\nExpected: [$4]$\\n Actual: [$0]' IDRETRY retry
|
||||||
|
Abort
|
||||||
|
\${EndIf}
|
||||||
|
|
||||||
|
skip_kvasd:
|
||||||
|
Delete $1 ; MD5 hash file
|
||||||
|
\${EndIf}
|
||||||
|
|
||||||
|
; save $INSTALL_KVASD to registry for use in teh un-installer
|
||||||
|
WriteRegDWORD SHCTX 'Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\${CPACK_PACKAGE_INSTALL_REGISTRY_KEY}' \\
|
||||||
|
'InstallKvasd' $INSTALL_KVASD"
|
||||||
|
)
|
||||||
|
|
||||||
|
set (CPACK_NSIS_EXTRA_INSTALL_COMMANDS "
|
||||||
|
; install the kvasd executable
|
||||||
|
\${If} $INSTALL_KVASD = \${BST_CHECKED}
|
||||||
|
\${AndIf} \${FileExists} $KVASD_EXECUTABLE
|
||||||
|
DetailPrint 'Installing: $INSTDIR\\@WSJT_BIN_DESTINATION@\\kvasd@CMAKE_EXECUTABLE_SUFFIX@'
|
||||||
|
Rename $KVASD_EXECUTABLE '$INSTDIR\\@WSJT_BIN_DESTINATION@\\kvasd@CMAKE_EXECUTABLE_SUFFIX@'
|
||||||
|
\${EndIf}"
|
||||||
|
)
|
||||||
|
|
||||||
|
set (CPACK_NSIS_EXTRA_UNINSTALL_COMMANDS "
|
||||||
|
; fetch $INSTALL_KVASD from registry
|
||||||
|
ReadRegDWORD $INSTALL_KVASD SHCTX \\
|
||||||
|
'Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\${CPACK_PACKAGE_INSTALL_REGISTRY_KEY}' 'InstallKvasd'
|
||||||
|
|
||||||
|
; conditionally un-install the kvasd executable
|
||||||
|
\${If} $INSTALL_KVASD = \${BST_CHECKED}
|
||||||
|
Delete '$INSTDIR\\@WSJT_BIN_DESTINATION@\\kvasd@CMAKE_EXECUTABLE_SUFFIX@'
|
||||||
|
\${EndIf}"
|
||||||
|
)
|
||||||
endif ()
|
endif ()
|
||||||
|
|
||||||
if ("${CPACK_GENERATOR}" STREQUAL "PackageMaker")
|
if ("${CPACK_GENERATOR}" STREQUAL "PackageMaker")
|
||||||
|
@ -49,8 +49,9 @@ set (PROJECT_DESCRIPTION "${PROJECT_SUMMARY_DESCRIPTION}
|
|||||||
standard SSB-width IF filters, switching between JT65 and JT9 modes
|
standard SSB-width IF filters, switching between JT65 and JT9 modes
|
||||||
is quick and convenient. Be sure to read the online ${PROJECT_NAME} User's
|
is quick and convenient. Be sure to read the online ${PROJECT_NAME} User's
|
||||||
Guide.")
|
Guide.")
|
||||||
|
set (PROJECT_KVASD_URL https://svn.code.sf.net/p/wsjt/wsjt/trunk/kvasd-binary)
|
||||||
|
|
||||||
set (CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${PROJECT_SOURCE_DIR}/CMake/Modules)
|
set (CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/CMake/Modules ${CMAKE_MODULE_PATH})
|
||||||
|
|
||||||
include (${PROJECT_SOURCE_DIR}/CMake/VersionCompute.cmake)
|
include (${PROJECT_SOURCE_DIR}/CMake/VersionCompute.cmake)
|
||||||
message (STATUS "Building ${CMAKE_PROJECT_NAME}-${wsjtx_VERSION}")
|
message (STATUS "Building ${CMAKE_PROJECT_NAME}-${wsjtx_VERSION}")
|
||||||
@ -102,7 +103,7 @@ attach a debugger which will then receive the console output inside its console.
|
|||||||
# decide if we are bundling kvasd (non-FOSS)
|
# decide if we are bundling kvasd (non-FOSS)
|
||||||
#
|
#
|
||||||
CMAKE_DEPENDENT_OPTION (WSJT_INCLUDE_KVASD "Include kvasd in the package." OFF
|
CMAKE_DEPENDENT_OPTION (WSJT_INCLUDE_KVASD "Include kvasd in the package." OFF
|
||||||
"NOT is_debug_build;NOT WIN32" ON)
|
"NOT is_debug_build" ON)
|
||||||
|
|
||||||
|
|
||||||
#
|
#
|
||||||
@ -666,19 +667,6 @@ elseif (CMAKE_HOST_WIN32)
|
|||||||
endif ()
|
endif ()
|
||||||
|
|
||||||
|
|
||||||
if (WSJT_INCLUDE_KVASD)
|
|
||||||
#
|
|
||||||
# fetch and validate kvasd
|
|
||||||
#
|
|
||||||
set (KVASD contrib/kvasd${CMAKE_EXECUTABLE_SUFFIX})
|
|
||||||
add_custom_target (kvasd ALL
|
|
||||||
${CMAKE_COMMAND} -D SYSTEM_NAME=${CMAKE_SYSTEM_NAME} -D EXECUTABLE_SUFFIX=${CMAKE_EXECUTABLE_SUFFIX} -P ${CMAKE_SOURCE_DIR}/CMake/download_kvasd.cmake
|
|
||||||
COMMENT "Downloading kvasd for ${CMAKE_SYSTEM_NAME}"
|
|
||||||
VERBATIM
|
|
||||||
)
|
|
||||||
endif (WSJT_INCLUDE_KVASD)
|
|
||||||
|
|
||||||
|
|
||||||
# UI generation
|
# UI generation
|
||||||
qt5_wrap_ui (wsjt_qt_GENUISRCS ${wsjt_qt_UISRCS})
|
qt5_wrap_ui (wsjt_qt_GENUISRCS ${wsjt_qt_UISRCS})
|
||||||
qt5_wrap_ui (ConfigTest_GENUISRCS ${ConfigTest_UISRCS})
|
qt5_wrap_ui (ConfigTest_GENUISRCS ${ConfigTest_UISRCS})
|
||||||
@ -736,6 +724,24 @@ add_executable (wsjtx MACOSX_BUNDLE
|
|||||||
)
|
)
|
||||||
qt5_use_modules (wsjtx Widgets OpenGL Network Multimedia)
|
qt5_use_modules (wsjtx Widgets OpenGL Network Multimedia)
|
||||||
|
|
||||||
|
set (SYSTEM_NAME ${CMAKE_SYSTEM_NAME}-${CMAKE_SYSTEM_PROCESSOR})
|
||||||
|
if (WIN32)
|
||||||
|
set (SYSTEM_NAME "${SYSTEM_NAME}i386")
|
||||||
|
endif (WIN32)
|
||||||
|
if (WSJT_INCLUDE_KVASD)
|
||||||
|
#
|
||||||
|
# fetch and validate kvasd
|
||||||
|
#
|
||||||
|
set (KVASD_BINARY contrib/kvasd${CMAKE_EXECUTABLE_SUFFIX})
|
||||||
|
|
||||||
|
add_custom_target (kvasd ALL
|
||||||
|
${CMAKE_COMMAND} -D SYSTEM_NAME=${SYSTEM_NAME} -D EXECUTABLE_SUFFIX=${CMAKE_EXECUTABLE_SUFFIX} -D URL=${PROJECT_KVASD_URL} -P ${CMAKE_SOURCE_DIR}/CMake/download_kvasd.cmake
|
||||||
|
COMMENT "Downloading kvasd for ${SYSTEM_NAME}"
|
||||||
|
VERBATIM
|
||||||
|
)
|
||||||
|
endif (WSJT_INCLUDE_KVASD)
|
||||||
|
|
||||||
|
|
||||||
if (UNIX)
|
if (UNIX)
|
||||||
if (NOT WSJT_SKIP_MANPAGES)
|
if (NOT WSJT_SKIP_MANPAGES)
|
||||||
add_subdirectory (manpages)
|
add_subdirectory (manpages)
|
||||||
@ -768,24 +774,19 @@ target_link_libraries (wsjtx wsjt wsjt_qt ${hamlib_LIBRARIES} ${FFTW3_LIBRARIES}
|
|||||||
# installation
|
# installation
|
||||||
#
|
#
|
||||||
install (TARGETS wsjtx
|
install (TARGETS wsjtx
|
||||||
RUNTIME DESTINATION ${WSJT_BIN_DESTINATION}
|
RUNTIME DESTINATION ${WSJT_BIN_DESTINATION} COMPONENT runtime
|
||||||
LIBRARY DESTINATION ${WSJT_LIB_DESTINATION}
|
BUNDLE DESTINATION . COMPONENT runtime
|
||||||
BUNDLE DESTINATION .
|
|
||||||
#COMPONENT Runtime
|
|
||||||
)
|
)
|
||||||
|
|
||||||
install (TARGETS jt9 jt65code jt9code
|
install (TARGETS jt9 jt65code jt9code
|
||||||
RUNTIME DESTINATION ${WSJT_BIN_DESTINATION}
|
RUNTIME DESTINATION ${WSJT_BIN_DESTINATION} COMPONENT runtime
|
||||||
LIBRARY DESTINATION ${WSJT_LIB_DESTINATION}
|
BUNDLE DESTINATION ${WSJT_BIN_DESTINATION} COMPONENT runtime
|
||||||
BUNDLE DESTINATION ${WSJT_BIN_DESTINATION}
|
|
||||||
#COMPONENT Runtime
|
|
||||||
)
|
)
|
||||||
|
|
||||||
if (WSJT_INCLUDE_KVASD)
|
if (WSJT_INCLUDE_KVASD)
|
||||||
install (PROGRAMS
|
install (PROGRAMS
|
||||||
${CMAKE_BINARY_DIR}/${KVASD}
|
${CMAKE_BINARY_DIR}/${KVASD_BINARY}
|
||||||
DESTINATION ${WSJT_BIN_DESTINATION}
|
DESTINATION ${WSJT_BIN_DESTINATION} COMPONENT runtime
|
||||||
#COMPONENT Runtime
|
|
||||||
)
|
)
|
||||||
else (WSJT_INCLUDE_KVASD)
|
else (WSJT_INCLUDE_KVASD)
|
||||||
if (APPLE)
|
if (APPLE)
|
||||||
@ -800,14 +801,14 @@ endif (WSJT_INCLUDE_KVASD)
|
|||||||
install (PROGRAMS
|
install (PROGRAMS
|
||||||
${RIGCTLD_EXE}
|
${RIGCTLD_EXE}
|
||||||
DESTINATION ${WSJT_BIN_DESTINATION}
|
DESTINATION ${WSJT_BIN_DESTINATION}
|
||||||
#COMPONENT Runtime
|
#COMPONENT runtime
|
||||||
RENAME rigctld-wsjtx${CMAKE_EXECUTABLE_SUFFIX}
|
RENAME rigctld-wsjtx${CMAKE_EXECUTABLE_SUFFIX}
|
||||||
)
|
)
|
||||||
|
|
||||||
install (FILES
|
install (FILES
|
||||||
${CMAKE_BINARY_DIR}/contrib/${PROJECT_MANUAL}
|
${CMAKE_BINARY_DIR}/contrib/${PROJECT_MANUAL}
|
||||||
DESTINATION ${WSJT_SHARE_DESTINATION}/${WSJT_DOC_DESTINATION}
|
DESTINATION ${WSJT_SHARE_DESTINATION}/${WSJT_DOC_DESTINATION}
|
||||||
#COMPONENT Runtime
|
#COMPONENT runtime
|
||||||
)
|
)
|
||||||
|
|
||||||
#
|
#
|
||||||
@ -818,7 +819,7 @@ if (APPLE)
|
|||||||
Darwin/ReadMe.txt
|
Darwin/ReadMe.txt
|
||||||
Darwin/sysctl.conf
|
Darwin/sysctl.conf
|
||||||
DESTINATION .
|
DESTINATION .
|
||||||
#COMPONENT Runtime
|
#COMPONENT runtime
|
||||||
)
|
)
|
||||||
endif (APPLE)
|
endif (APPLE)
|
||||||
|
|
||||||
@ -862,12 +863,12 @@ if (NOT WIN32 AND NOT APPLE)
|
|||||||
install (
|
install (
|
||||||
FILES wsjtx.desktop
|
FILES wsjtx.desktop
|
||||||
DESTINATION share/applications
|
DESTINATION share/applications
|
||||||
#COMPONENT Runtime
|
#COMPONENT runtime
|
||||||
)
|
)
|
||||||
install (
|
install (
|
||||||
FILES icons/Unix/wsjtx_icon.png
|
FILES icons/Unix/wsjtx_icon.png
|
||||||
DESTINATION share/pixmaps
|
DESTINATION share/pixmaps
|
||||||
#COMPONENT Runtime
|
#COMPONENT runtime
|
||||||
)
|
)
|
||||||
endif (NOT WIN32 AND NOT APPLE)
|
endif (NOT WIN32 AND NOT APPLE)
|
||||||
|
|
||||||
@ -901,7 +902,7 @@ if (NOT is_debug_build)
|
|||||||
\"[Paths]
|
\"[Paths]
|
||||||
\")
|
\")
|
||||||
"
|
"
|
||||||
#COMPONENT Runtime
|
#COMPONENT runtime
|
||||||
)
|
)
|
||||||
|
|
||||||
# if a system Qt is used (e.g. installed in /usr/lib/), it will not be included in the installation
|
# if a system Qt is used (e.g. installed in /usr/lib/), it will not be included in the installation
|
||||||
@ -918,7 +919,7 @@ if (NOT is_debug_build)
|
|||||||
${QT_PLUGINS_DIR}/accessible
|
${QT_PLUGINS_DIR}/accessible
|
||||||
DESTINATION ${WSJT_PLUGIN_DESTINATION}
|
DESTINATION ${WSJT_PLUGIN_DESTINATION}
|
||||||
CONFIGURATIONS Release MinSizeRel
|
CONFIGURATIONS Release MinSizeRel
|
||||||
#COMPONENT Runtime
|
#COMPONENT runtime
|
||||||
FILES_MATCHING PATTERN "*${CMAKE_SHARED_LIBRARY_SUFFIX}"
|
FILES_MATCHING PATTERN "*${CMAKE_SHARED_LIBRARY_SUFFIX}"
|
||||||
PATTERN "*minimal*${CMAKE_SHARED_LIBRARY_SUFFIX}" EXCLUDE
|
PATTERN "*minimal*${CMAKE_SHARED_LIBRARY_SUFFIX}" EXCLUDE
|
||||||
PATTERN "*offscreen*${CMAKE_SHARED_LIBRARY_SUFFIX}" EXCLUDE
|
PATTERN "*offscreen*${CMAKE_SHARED_LIBRARY_SUFFIX}" EXCLUDE
|
||||||
@ -932,7 +933,7 @@ if (NOT is_debug_build)
|
|||||||
# ${QT_PLUGINS_DIR}/accessible
|
# ${QT_PLUGINS_DIR}/accessible
|
||||||
# DESTINATION ${WSJT_PLUGIN_DESTINATION}
|
# DESTINATION ${WSJT_PLUGIN_DESTINATION}
|
||||||
# CONFIGURATIONS Debug
|
# CONFIGURATIONS Debug
|
||||||
# #COMPONENT Runtime
|
# #COMPONENT runtime
|
||||||
# FILES_MATCHING PATTERN "*_debug${CMAKE_SHARED_LIBRARY_SUFFIX}"
|
# FILES_MATCHING PATTERN "*_debug${CMAKE_SHARED_LIBRARY_SUFFIX}"
|
||||||
# PATTERN "*minimal*${CMAKE_SHARED_LIBRARY_SUFFIX}" EXCLUDE
|
# PATTERN "*minimal*${CMAKE_SHARED_LIBRARY_SUFFIX}" EXCLUDE
|
||||||
# PATTERN "*offscreen*${CMAKE_SHARED_LIBRARY_SUFFIX}" EXCLUDE
|
# PATTERN "*offscreen*${CMAKE_SHARED_LIBRARY_SUFFIX}" EXCLUDE
|
||||||
@ -945,7 +946,7 @@ file (APPEND \"\$ENV{DESTDIR}\${CMAKE_INSTALL_PREFIX}/${WSJT_QT_CONF_DESTINATION
|
|||||||
\"Plugins = Plugins
|
\"Plugins = Plugins
|
||||||
\")
|
\")
|
||||||
"
|
"
|
||||||
#COMPONENT Runtime
|
#COMPONENT runtime
|
||||||
)
|
)
|
||||||
endif (APPLE)
|
endif (APPLE)
|
||||||
|
|
||||||
@ -963,7 +964,7 @@ file (APPEND \"\$ENV{DESTDIR}\${CMAKE_INSTALL_PREFIX}/${WSJT_QT_CONF_DESTINATION
|
|||||||
${QT_PLUGINS_DIR}/accessible
|
${QT_PLUGINS_DIR}/accessible
|
||||||
DESTINATION ${WSJT_PLUGIN_DESTINATION}
|
DESTINATION ${WSJT_PLUGIN_DESTINATION}
|
||||||
CONFIGURATIONS Release MinSizeRel
|
CONFIGURATIONS Release MinSizeRel
|
||||||
#COMPONENT Runtime
|
#COMPONENT runtime
|
||||||
FILES_MATCHING PATTERN "*${CMAKE_SHARED_LIBRARY_SUFFIX}"
|
FILES_MATCHING PATTERN "*${CMAKE_SHARED_LIBRARY_SUFFIX}"
|
||||||
PATTERN "*minimal*${CMAKE_SHARED_LIBRARY_SUFFIX}" EXCLUDE
|
PATTERN "*minimal*${CMAKE_SHARED_LIBRARY_SUFFIX}" EXCLUDE
|
||||||
PATTERN "*offscreen*${CMAKE_SHARED_LIBRARY_SUFFIX}" EXCLUDE
|
PATTERN "*offscreen*${CMAKE_SHARED_LIBRARY_SUFFIX}" EXCLUDE
|
||||||
@ -976,7 +977,7 @@ file (APPEND \"\$ENV{DESTDIR}\${CMAKE_INSTALL_PREFIX}/${WSJT_QT_CONF_DESTINATION
|
|||||||
# ${QT_PLUGINS_DIR}/accessible
|
# ${QT_PLUGINS_DIR}/accessible
|
||||||
# DESTINATION ${WSJT_PLUGIN_DESTINATION}
|
# DESTINATION ${WSJT_PLUGIN_DESTINATION}
|
||||||
# CONFIGURATIONS Debug
|
# CONFIGURATIONS Debug
|
||||||
# #COMPONENT Runtime
|
# #COMPONENT runtime
|
||||||
# FILES_MATCHING PATTERN "*d${CMAKE_SHARED_LIBRARY_SUFFIX}"
|
# FILES_MATCHING PATTERN "*d${CMAKE_SHARED_LIBRARY_SUFFIX}"
|
||||||
# PATTERN "*minimal*${CMAKE_SHARED_LIBRARY_SUFFIX}" EXCLUDE
|
# PATTERN "*minimal*${CMAKE_SHARED_LIBRARY_SUFFIX}" EXCLUDE
|
||||||
# PATTERN "*offscreen*${CMAKE_SHARED_LIBRARY_SUFFIX}" EXCLUDE
|
# PATTERN "*offscreen*${CMAKE_SHARED_LIBRARY_SUFFIX}" EXCLUDE
|
||||||
@ -990,7 +991,7 @@ file (APPEND \"\$ENV{DESTDIR}\${CMAKE_INSTALL_PREFIX}/${WSJT_QT_CONF_DESTINATION
|
|||||||
\"Plugins = ${_plugins_path}
|
\"Plugins = ${_plugins_path}
|
||||||
\")
|
\")
|
||||||
"
|
"
|
||||||
#COMPONENT Runtime
|
#COMPONENT runtime
|
||||||
)
|
)
|
||||||
|
|
||||||
# set (gp_tool "objdump") # we want MinGW tool - not MSVC (See GetPrerequisites.cmake)
|
# set (gp_tool "objdump") # we want MinGW tool - not MSVC (See GetPrerequisites.cmake)
|
||||||
@ -1010,7 +1011,7 @@ file (APPEND \"\$ENV{DESTDIR}\${CMAKE_INSTALL_PREFIX}/${WSJT_QT_CONF_DESTINATION
|
|||||||
message (STATUS \"fixup_exe: \${the_exe}\")
|
message (STATUS \"fixup_exe: \${the_exe}\")
|
||||||
fixup_bundle (\"\${the_exe}\" \"\${QTPLUGINS}\" \"${fixup_library_dirs}\")
|
fixup_bundle (\"\${the_exe}\" \"\${QTPLUGINS}\" \"${fixup_library_dirs}\")
|
||||||
"
|
"
|
||||||
#COMPONENT Runtime
|
#COMPONENT runtime
|
||||||
)
|
)
|
||||||
endif (APPLE OR WIN32)
|
endif (APPLE OR WIN32)
|
||||||
|
|
||||||
@ -1020,6 +1021,7 @@ endif (NOT is_debug_build)
|
|||||||
#
|
#
|
||||||
# packaging
|
# packaging
|
||||||
#
|
#
|
||||||
|
set (CPACK_MONOLITHIC_INSTALL 1)
|
||||||
set (CPACK_PACKAGE_NAME "${CMAKE_PROJECT_NAME}")
|
set (CPACK_PACKAGE_NAME "${CMAKE_PROJECT_NAME}")
|
||||||
set (CPACK_PACKAGE_VERSION_MAJOR ${WSJTX_VERSION_MAJOR})
|
set (CPACK_PACKAGE_VERSION_MAJOR ${WSJTX_VERSION_MAJOR})
|
||||||
set (CPACK_PACKAGE_VERSION_MINOR ${WSJTX_VERSION_MINOR})
|
set (CPACK_PACKAGE_VERSION_MINOR ${WSJTX_VERSION_MINOR})
|
||||||
|
BIN
contrib/NSIS/NsRichEdit.zip
Normal file
BIN
contrib/NSIS/NsRichEdit.zip
Normal file
Binary file not shown.
BIN
contrib/NSIS/Plugins-i386-ansi/Crypto.dll
Normal file
BIN
contrib/NSIS/Plugins-i386-ansi/Crypto.dll
Normal file
Binary file not shown.
BIN
contrib/NSIS/Plugins-i386-ansi/nsRichEdit.dll
Normal file
BIN
contrib/NSIS/Plugins-i386-ansi/nsRichEdit.dll
Normal file
Binary file not shown.
BIN
contrib/NSIS/Plugins-i386-unicode/Crypto.dll
Normal file
BIN
contrib/NSIS/Plugins-i386-unicode/Crypto.dll
Normal file
Binary file not shown.
BIN
contrib/NSIS/Plugins-i386-unicode/nsRichEdit.dll
Normal file
BIN
contrib/NSIS/Plugins-i386-unicode/nsRichEdit.dll
Normal file
Binary file not shown.
9
contrib/NSIS/README
Normal file
9
contrib/NSIS/README
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
NSIS Addons
|
||||||
|
===========
|
||||||
|
|
||||||
|
This directory contains archives of NSIS plugins and includes that are
|
||||||
|
used in making the WSJT-X Windows installer. The plugin DLLs are also
|
||||||
|
extracted and deployed in sub-directories where they are added to the
|
||||||
|
project NSIS plugin path in the project CMakeCPackOptions.cmake.in
|
||||||
|
template which is in turn used in generating the NSIS installer script
|
||||||
|
from the CMake/Modules/NSIS.template.in template file.
|
BIN
contrib/NSIS/cryptoplg12.zip
Normal file
BIN
contrib/NSIS/cryptoplg12.zip
Normal file
Binary file not shown.
Loading…
Reference in New Issue
Block a user