| cmake_minimum_required(VERSION 3.16) |
| |
| project(CPackIFWGenerator) |
| |
| add_executable(hello main.cpp) |
| |
| install(TARGETS hello |
| ARCHIVE DESTINATION . |
| RUNTIME DESTINATION . |
| LIBRARY DESTINATION . |
| BUNDLE DESTINATION .) |
| |
| # Component that is a reserved name on Windows. |
| # See https://learn.microsoft.com/en-us/windows/win32/fileio/naming-a-file |
| install( |
| DIRECTORY . |
| DESTINATION txt |
| COMPONENT CON |
| FILES_MATCHING PATTERN *.txt) |
| # Component name that is similar to a reserved name on Windows. |
| install( |
| DIRECTORY . |
| DESTINATION txt |
| COMPONENT Console |
| FILES_MATCHING PATTERN *.txt) |
| # Component name that is strongly discouraged on Windows. |
| install( |
| DIRECTORY . |
| DESTINATION txt |
| COMPONENT EndsWithDot. |
| FILES_MATCHING PATTERN *.txt) |
| |
| set(CPACK_IFW_PRODUCT_URL "https://cmake.org/") |
| if(WIN32) |
| set(CPACK_IFW_PACKAGE_ICON "${PROJECT_SOURCE_DIR}/install.ico") |
| else() |
| set(CPACK_IFW_PACKAGE_ICON "${PROJECT_SOURCE_DIR}/BundleIcon.icns") |
| endif() |
| |
| set(CPACK_IFW_PACKAGE_WINDOW_ICON "${PROJECT_SOURCE_DIR}/install.ico") |
| set(CPACK_GENERATOR "IFW") |
| |
| set(CPACK_IFW_PACKAGE_PRODUCT_IMAGES |
| "${PROJECT_SOURCE_DIR}/ApplicationIcon.png" |
| "${PROJECT_SOURCE_DIR}/SplashScreen.png" |
| ) |
| |
| set(CPACK_IFW_PACKAGE_PRODUCT_IMAGE_URLS |
| "https://www.ApplicationIcon.org" |
| "https://www.SplashScreen.org" |
| ) |
| |
| include(CPack) |
| include(CPackIFW) |