diff --git a/CMakeLists.txt b/CMakeLists.txt index 93cd482..6c69049 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2,11 +2,11 @@ cmake_minimum_required (VERSION 2.8) SET(CUBICSDR_VERSION_MAJOR "0") SET(CUBICSDR_VERSION_MINOR "1") -SET(CUBICSDR_VERSION_PATCH "0") +SET(CUBICSDR_VERSION_PATCH "1") SET(CUBICSDR_VERSION_REL "beta") SET(CUBICSDR_VERSION "${CUBICSDR_VERSION_MAJOR}.${CUBICSDR_VERSION_MINOR}.${CUBICSDR_VERSION_PATCH}-${CUBICSDR_VERSION_REL}") -SET(CPACK_PACKAGE_VERSION ${CUBICSDR_VERSION}) +SET(CPACK_PACKAGE_VERSION "${CUBICSDR_VERSION_MAJOR}.${CUBICSDR_VERSION_MINOR}.${CUBICSDR_VERSION_PATCH}") SET(CPACK_PACKAGE_VERSION_MAJOR ${CUBICSDR_VERSION_MAJOR}) SET(CPACK_PACKAGE_VERSION_MINOR ${CUBICSDR_VERSION_MINOR}) SET(CPACK_PACKAGE_VERSION_PATCH ${CUBICSDR_VERSION_PATCH}) @@ -425,17 +425,64 @@ IF (APPLE AND BUNDLE_APP) ENDIF (APPLE AND BUNDLE_APP) IF (WIN32 AND BUILD_INSTALLER) - SET(CPACK_GENERATOR WIX) + set(CPACK_GENERATOR NSIS) set(CPACK_PACKAGE_NAME "CubicSDR") set(CPACK_PACKAGE_VENDOR "cubicsdr.com") set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "CubicSDR ${CUBICSDR_VERSION} Installer") set(CPACK_PACKAGE_INSTALL_DIRECTORY "CubicSDR") - SET(CPACK_WIX_UPGRADE_GUID "5e6920fb-b7e6-4782-8351-3a3fbb04b52d") - SET(CPACK_WIX_PRODUCT_GUID "45c38bb0-cd32-49cf-9d04-2a192abfbda5") - SET(CPACK_WIX_PRODUCT_ICON "${PROJECT_SOURCE_DIR}/icon/CubicSDR.ico") - SET(CPACK_WIX_UI_BANNER "${CUBICSDR_VERSION} Installer") - SET(CPACK_WIX_PROGRAM_MENU_FOLDER "CubicSDR") - SET(CPACK_WIX_CMAKE_PACKAGE_REGISTRY "CubicSDR") + SET(CPACK_NSIS_INSTALLED_ICON_NAME "CubicSDR.ico") + SET(CPACK_RESOURCE_FILE_LICENSE "${PROJECT_SOURCE_DIR}/LICENSE") + + IF(EX_PLATFORM EQUAL 64) + SET(CPACK_NSIS_INSTALL_ROOT "$PROGRAMFILES64") + SET(CPACK_NSIS_PACKAGE_NAME "${CPACK_PACKAGE_INSTALL_DIRECTORY}") + SET(CPACK_PACKAGE_INSTALL_REGISTRY_KEY "${CPACK_PACKAGE_NAME} ${CPACK_PACKAGE_VERSION}") + set(CMAKE_CL_64 TRUE) # This gets around a bug in the CPack installer name generation for MinGW 64-bit since 2.8 + ELSE(EX_PLATFORM EQUAL 64) + SET(CPACK_NSIS_INSTALL_ROOT "$PROGRAMFILES") + SET(CPACK_NSIS_PACKAGE_NAME "${CPACK_PACKAGE_INSTALL_DIRECTORY} (x86)") + SET(CPACK_PACKAGE_INSTALL_REGISTRY_KEY "${CPACK_PACKAGE_NAME} ${CPACK_PACKAGE_VERSION} (x86)") + set(CMAKE_CL_64 FALSE) + ENDIF(EX_PLATFORM EQUAL 64) - INCLUDE(CPack) -ENDIF (WIN32 AND BUNDLE_INSTALLER) \ No newline at end of file + set(CPACK_NSIS_EXECUTABLES_DIRECTORY ".") + install(TARGETS CubicSDR RUNTIME DESTINATION .) + install(FILES + ${PROJECT_SOURCE_DIR}/font/vera_sans_mono12.fnt + ${PROJECT_SOURCE_DIR}/font/vera_sans_mono16.fnt + ${PROJECT_SOURCE_DIR}/font/vera_sans_mono18.fnt + ${PROJECT_SOURCE_DIR}/font/vera_sans_mono24.fnt + ${PROJECT_SOURCE_DIR}/font/vera_sans_mono32.fnt + ${PROJECT_SOURCE_DIR}/font/vera_sans_mono48.fnt + ${PROJECT_SOURCE_DIR}/font/vera_sans_mono12_0.png + ${PROJECT_SOURCE_DIR}/font/vera_sans_mono16_0.png + ${PROJECT_SOURCE_DIR}/font/vera_sans_mono18_0.png + ${PROJECT_SOURCE_DIR}/font/vera_sans_mono24_0.png + ${PROJECT_SOURCE_DIR}/font/vera_sans_mono32_0.png + ${PROJECT_SOURCE_DIR}/font/vera_sans_mono48_0.png + ${PROJECT_SOURCE_DIR}/icon/CubicSDR.ico + ${PROJECT_SOURCE_DIR}/external/fftw-3.3.4/${EX_PLATFORM}/libfftw3f-3.dll + DESTINATION .) + IF (MSVC) + install(FILES + ${PROJECT_SOURCE_DIR}/external/liquid-dsp/msvc/${EX_PLATFORM}/libliquid.dll + ${PROJECT_SOURCE_DIR}/external/rtl-sdr-release/msvc/${EX_PLATFORM}/rtlsdr.dll + ${PROJECT_SOURCE_DIR}/external/rtl-sdr-release/msvc/${EX_PLATFORM}/libusb-1.0.dll + DESTINATION .) + ELSE (MSVC) + install(FILES + ${PROJECT_SOURCE_DIR}/external/liquid-dsp/gcc/${EX_PLATFORM}/libliquid.dll + ${PROJECT_SOURCE_DIR}/external/rtl-sdr-release/gcc/${EX_PLATFORM}/librtlsdr.dll + ${PROJECT_SOURCE_DIR}/external/rtl-sdr-release/gcc/${EX_PLATFORM}/libusb-1.0.dll + DESTINATION .) + ENDIF(MSVC) + + set(CPACK_PACKAGE_EXECUTABLES CubicSDR "CubicSDR") + + IF (MSVC) + install(PROGRAMS ${CMAKE_CURRENT_SOURCE_DIR}/external/msvc/${EX_PLATFORM_NAME}/vcredist_${EX_PLATFORM_NAME}.exe DESTINATION vc_redist) + set(CPACK_NSIS_EXTRA_INSTALL_COMMANDS "ExecWait '\\\"$INSTDIR\\\\vc_redist\\\\vcredist_${EX_PLATFORM_NAME}.exe\\\" /q:a'") + ENDIF (MSVC) + + INCLUDE(CPack) +ENDIF (WIN32 AND BUILD_INSTALLER) \ No newline at end of file diff --git a/external/msvc/x64/vcredist_x64.exe b/external/msvc/x64/vcredist_x64.exe new file mode 100644 index 0000000..5473640 Binary files /dev/null and b/external/msvc/x64/vcredist_x64.exe differ diff --git a/external/msvc/x86/vcredist_x86.exe b/external/msvc/x86/vcredist_x86.exe new file mode 100644 index 0000000..b795578 Binary files /dev/null and b/external/msvc/x86/vcredist_x86.exe differ