On Fri, Sep 25, 2009 at 4:36 PM, Dixon, Shane <shane.di...@atmel.com> wrote:
> I’m using the NSIS generator to create a package.  Is there a CPACK variable
> that can be set to add a particular executable to the start menu?  I noticed
> that the start menu is populated with “uninstall” only.
>

This works for me. Here is that part of my CMakeLists.txt

IF(PACKAGE_FOR_INSTALL)

SET(CPACK_PACKAGE_VERSION_MAJOR ${LungAnalysis_VERSION_MAJOR})
SET(CPACK_PACKAGE_VERSION_MINOR ${LungAnalysis_VERSION_MINOR})
SET(CPACK_PACKAGE_VERSION_PATCH ${LungAnalysis_VERSION_PATCH})

IF(CMAKE_CL_64)
     SET(CMAKE_MSVC_ARCH amd64)
   ELSE(CMAKE_CL_64)
     SET(CMAKE_MSVC_ARCH x86)
ENDIF(CMAKE_CL_64)

IF(MSVC80)

    FIND_PROGRAM(MSVC_REDIST NAMES
vcredist_${CMAKE_MSVC_ARCH}/vcredist_${CMAKE_MSVC_ARCH}.exe
      PATHS
      
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\8.0;InstallDir]/../../SDK/v2.0/BootStrapper/Packages/"
      
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\Microsoft\\VisualStudio\\8.0;InstallDir]/../../SDK/v2.0/BootStrapper/Packages/"
      )
    GET_FILENAME_COMPONENT(vcredist_name "${MSVC_REDIST}" NAME)
    INSTALL(PROGRAMS ${MSVC_REDIST} COMPONENT Runtime DESTINATION bin)
    SET(CPACK_NSIS_EXTRA_INSTALL_COMMANDS "ExecWait
'\\\"$INSTDIR\\\\bin\\\\${vcredist_name}\\\"'")
ENDIF(MSVC80)

IF(UNIX AND NOT APPLE)
    INSTALL(TARGETS HyvesDesktop
        DESTINATION bin
    )
    FOREACH(LIB QtCore QtXml QtTest QtGui QtNetwork QtScript)
        INSTALL(FILES
            
"${QT_LIBRARY_DIR}/lib${LIB}.so.${QT_VERSION_MAJOR}.${QT_VERSION_MINOR}.${QT_VERSION_PATCH}"
            RENAME "lib${LIB}.so.${QT_VERSION_MAJOR}"
            DESTINATION bin
        )
    ENDFOREACH(LIB)
ENDIF(UNIX AND NOT APPLE)

IF(WIN32)
        SET(CPACK_NSIS_COMPRESSOR "/SOLID lzma")
        SET(CPACK_PACKAGE_EXECUTABLES "LungAnalysis" "Lung Analysis")

        INSTALL(FILES
                        "${QT_LIBRARY_DIR}/QtCore${QT_VERSION_MAJOR}.dll"
                        "${QT_LIBRARY_DIR}/QtXml${QT_VERSION_MAJOR}.dll"
                        "${QT_LIBRARY_DIR}/QtTest${QT_VERSION_MAJOR}.dll"
                        "${QT_LIBRARY_DIR}/QtGui${QT_VERSION_MAJOR}.dll"
                        "${QT_LIBRARY_DIR}/QtNetwork${QT_VERSION_MAJOR}.dll"
                        "${QT_LIBRARY_DIR}/QtScript${QT_VERSION_MAJOR}.dll"
                        DESTINATION bin
                        COMPONENT Applications
        )
ENDIF(WIN32)

set(CPACK_COMPONENTS_ALL Applications Runtime)

INCLUDE(CPack)
ENDIF(PACKAGE_FOR_INSTALL)
_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Follow this link to subscribe/unsubscribe:
http://www.cmake.org/mailman/listinfo/cmake

Reply via email to