File: BTBinaryPackageWindows.cmake

package info (click to toggle)
bibletime 3.2.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 13,916 kB
  • sloc: cpp: 30,748; sh: 47; xml: 31; makefile: 8
file content (100 lines) | stat: -rwxr-xr-x 4,211 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
IF(WIN32 AND NOT UNIX)

    # Libs needed for packaging
    FIND_PACKAGE(ZLIB REQUIRED)
    FIND_PACKAGE(CURL REQUIRED)
    FIND_PACKAGE(Sword REQUIRED)

    SET(CPACK_PACKAGE_NAME "BibleTime")
    SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "BibleTime for Windows")
    SET(CPACK_PACKAGE_VENDOR "https://bibletime.info")
    SET(CPACK_PACKAGE_VERSION_MAJOR ${PROJECT_VERSION_MAJOR})
    SET(CPACK_PACKAGE_VERSION_MINOR ${PROJECT_VERSION_MINOR})
    SET(CPACK_PACKAGE_VERSION_PATCH ${PROJECT_VERSION_PATCH})
    SET(CPACK_PACKAGE_INSTALL_DIRECTORY "BibleTime")

    SET(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/LICENSE")

    # We need the libraries, and they're not pulled in automatically
    SET(CMAKE_INSTALL_DEBUG_LIBRARIES TRUE)

    SET(QT_BINARY_DIR "${QT_DIR}/../../../bin")
    INSTALL(DIRECTORY
        "${QT_BINARY_DIR}/../translations"
        DESTINATION "${BT_BINDIR}"
        CONFIGURATIONS "Release"
    )

    FIND_PROGRAM(QT_WINDEPLOYQT_EXECUTABLE windeployqt HINTS "${QT_BIN_DIR}")
    MESSAGE(STATUS "Running ${QT_WINDEPLOYQT_EXECUTABLE}")
    INSTALL(CODE "EXECUTE_PROCESS(COMMAND ${QT_WINDEPLOYQT_EXECUTABLE} -qmldir \"${CMAKE_CURRENT_SOURCE_DIR}/src/frontend/display/modelview/\"    \"\${CMAKE_INSTALL_PREFIX}/bin/bibletime.exe\") ")

    IF(CMAKE_BUILD_TYPE STREQUAL "Debug")
        SET(ZLIB_LIBRARY ${ZLIB_LIBRARY_DEBUG})
    ELSE()
        SET(ZLIB_LIBRARY ${ZLIB_LIBRARY_RELEASE})
    ENDIF()

    SET(ICU_DT_DLL ${CMAKE_INSTALL_PREFIX}/bin/icudt74.dll) 
    MESSAGE(STATUS  "INSTALL icudt_DLL ${ICU_DT_DLL}" )
    INSTALL(FILES ${ICU_DT_DLL} DESTINATION ${BT_BINDIR})

    SET(ICU_IN_DLL ${CMAKE_INSTALL_PREFIX}/bin/icuin74.dll) 
    MESSAGE(STATUS  "INSTALL icuin_DLL ${ICU_IN_DLL}" )
    INSTALL(FILES ${ICU_IN_DLL} DESTINATION ${BT_BINDIR})

    SET(ICU_IO_DLL ${CMAKE_INSTALL_PREFIX}/bin/icuio74.dll) 
    MESSAGE(STATUS  "INSTALL icuio_DLL ${ICU_IO_DLL}" )
    INSTALL(FILES ${ICU_IO_DLL} DESTINATION ${BT_BINDIR})

    SET(ICU_TU_DLL ${CMAKE_INSTALL_PREFIX}/bin/icutu74.dll) 
    MESSAGE(STATUS  "INSTALL icutu_DLL ${ICU_TU_DLL}" )
    INSTALL(FILES ${ICU_TU_DLL} DESTINATION ${BT_BINDIR})

    SET(ICU_UC_DLL ${CMAKE_INSTALL_PREFIX}/bin/icuuc74.dll) 
    MESSAGE(STATUS  "INSTALL icuuc_DLL ${ICU_UC_DLL}" )
    INSTALL(FILES ${ICU_UC_DLL} DESTINATION ${BT_BINDIR})

    MESSAGE(STATUS  "INSTALL Zlib_LIBRARY ${ZLIB_LIBRARY}" )
    STRING(REPLACE ".lib" ".dll" ZLIB_DLL "${ZLIB_LIBRARY}")
    INSTALL(FILES ${ZLIB_DLL} DESTINATION ${BT_BINDIR})

    MESSAGE(STATUS  "INSTALL CLucene_LIBRARY ${CLucene_LIBRARY}" )
    STRING(REPLACE ".lib" ".dll" CLUCENE_DLL "${CLucene_LIBRARY}")
    INSTALL(FILES ${CLUCENE_DLL} DESTINATION ${BT_BINDIR})

    MESSAGE(STATUS  "INSTALL CLucene_LIBRARY ${CLucene_SHARED_LIB}" )
    STRING(REPLACE ".lib" ".dll" CLUCENE_SHARED_DLL "${CLucene_SHARED_LIB}")
    INSTALL(FILES ${CLUCENE_SHARED_DLL} DESTINATION ${BT_BINDIR})

    MESSAGE(STATUS  "INSTALL CURL_LIBRARY ${CURL_LIBRARY}" )
    STRING(REPLACE "_imp.lib" ".dll" CURL_DLL "${CURL_LIBRARY}")
    INSTALL(FILES ${CURL_DLL} DESTINATION ${BT_BINDIR})

    SET(SWORD_DLL "${Sword_LIBRARY_DIRS}/sword.dll")
    MESSAGE(STATUS  "INSTALL SWORD_LIBRARY ${SWORD_DLL}" )
    INSTALL(FILES ${SWORD_DLL} DESTINATION ${BT_BINDIR})

    # Some options for the CPack system.  These should be pretty self-evident
    SET(CPACK_PACKAGE_ICON "${CMAKE_CURRENT_SOURCE_DIR}\\\\pics\\\\icons\\\\bibletime.png")
    SET(CPACK_NSIS_INSTALLED_ICON_NAME "bin\\\\bibletime.exe")
    SET(CPACK_NSIS_DISPLAY_NAME "${CPACK_PACKAGE_INSTALL_DIRECTORY}")
    SET(CPACK_NSIS_HELP_LINK "https:\\\\\\\\bibletime.info")
    SET(CPACK_NSIS_URL_INFO_ABOUT "https:\\\\\\\\bibletime.info")
    SET(CPACK_NSIS_CONTACT "bt-devel@crosswire.org")
    SET(CPACK_NSIS_MODIFY_PATH OFF)
    SET(CPACK_GENERATOR "NSIS")

    SET(CPACK_PACKAGE_EXECUTABLES "bibletime" "BibleTime")

    # This adds in the required Windows system libraries
    MESSAGE(STATUS  "INSTALL Microsoft Redist ${MSVC_REDIST}" )
    SET(CPACK_NSIS_EXTRA_INSTALL_COMMANDS "
        ExecWait \\\"$INSTDIR\\\\bin\\\\vcredist_x86.exe  /q\\\"
        Delete   \\\"$INSTDIR\\\\bin\\\\vcredist_x86.exe\\\"
    ")

    INCLUDE(CPack)

ENDIF(WIN32 AND NOT UNIX)