From 417964e4150b77e6d70d5726f8702b1a0210a63b Mon Sep 17 00:00:00 2001 From: rude Date: Sat, 14 Dec 2013 17:44:30 +0100 Subject: [PATCH] Associate .love files with love executable. Resolves issue #807. --- CMakeLists.txt | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index 20a2c4abe..d2460b3bb 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1216,6 +1216,12 @@ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/readme.txt DESTINATION .) +# Icons +install(FILES + ${CMAKE_CURRENT_SOURCE_DIR}/extra/nsis/love.ico + ${CMAKE_CURRENT_SOURCE_DIR}/extra/nsis/game.ico + DESTINATION .) + set(CPACK_GENERATOR ZIP NSIS) set(CPACK_PACKAGE_NAME "love") set(CPACK_PACKAGE_VENDOR "love2d.org") @@ -1258,4 +1264,20 @@ set(CPACK_NSIS_INSTALLER_MUI_ICON_CODE " !define MUI_UNICON \\\"${NSIS_MUI_UNICON}\\\" ") +set(CPACK_NSIS_EXTRA_INSTALL_COMMANDS " + WriteRegStr HKCR \\\".love\\\" \\\"\\\" \\\"LOVE\\\" + WriteRegStr HKCR \\\"LOVE\\\" \\\"\\\" \\\"LOVE Game File\\\" + WriteRegStr HKCR \\\"LOVE\\\\DefaultIcon\\\" \\\"\\\" \\\"$INSTDIR\\\\game.ico\\\" + WriteRegStr HKCR \\\"LOVE\\\\shell\\\" \\\"\\\" \\\"open\\\" + WriteRegStr HKCR \\\"LOVE\\\\shell\\\\open\\\" \\\"\\\" \\\"Open in LOVE\\\" + WriteRegStr HKCR \\\"LOVE\\\\shell\\\\open\\\\command\\\" \\\"\\\" \\\"$INSTDIR\\\\love.exe $\\\\\\\"%1$\\\\\\\"\\\" + System::Call 'shell32.dll::SHChangeNotify(i, i, i, i) v (0x08000000, 0, 0, 0)' +") + +set(CPACK_NSIS_EXTRA_UNINSTALL_COMMANDS " + DeleteRegKey HKCR \\\"LOVE\\\" + DeleteRegKey HKCR \\\".love\\\" + System::Call 'shell32.dll::SHChangeNotify(i, i, i, i) v (0x08000000, 0, 0, 0)' +") + include(CPack)