Changeset 1794


Ignore:
Timestamp:
14/12/11 16:06:02 (5 months ago)
Author:
Freddie Akeroyd
Message:

Windows CMake updates. Refs #281

Location:
trunk
Files:
2 added
7 edited

Legend:

Unmodified
Added
Removed
  • trunk/CMakeLists.txt

    r1759 r1794  
    4848set(HDF4_SEARCH "" CACHE PATH "Where to search for HDF4") 
    4949 
     50function(install_pdb target) 
     51#       set (OUT_DIR ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}) 
     52        set (OUT_DIR ${CMAKE_CURRENT_BINARY_DIR}/Release) 
     53        get_target_property (OUT_NAME ${target} OUTPUT_NAME) 
     54        get_filename_component (OUT_BASE_NAME ${OUT_NAME} NAME_WE) 
     55#       set(PDB_FILE ${OUT_DIR}/${OUT_BASE_NAME}${CMAKE_DEBUG_POSTFIX}.pdb) 
     56        set(PDB_FILE ${OUT_DIR}/${OUT_BASE_NAME}.pdb) 
     57        install (FILES ${PDB_FILE} DESTINATION bin COMPONENT Runtime)   
     58endfunction() 
     59 
    5060#find_package(HDF5 REQUIRED) 
    5161find_package(HDF5) 
     
    5868find_package(TCL) 
    5969find_package(LATEX) 
     70 
     71if(UNIX) 
     72    set(HDF5_SEARCH_DEFAULT "/usr" "/usr/local" "/usr/local/hdf5" "/sw") 
     73        set(HD_NAMES df) 
     74        set(HM_NAMES mfhdf) 
     75endif(UNIX) 
     76if(WIN32) 
     77    set(HDF5_SEARCH_DEFAULT "C:/InstallKits/HDF5-1.8.6-win64") 
     78    set(HDF4_SEARCH_DEFAULT "C:/InstallKits/HDF4.2.6_win_x64") 
     79        set(HD_NAMES hd426m hd425m) 
     80        set(HM_NAMES hm426m hm425m) 
     81        set(CMAKE_DEBUG_POSTFIX "D") 
     82endif(WIN32) 
     83 
     84find_library(MY_HDF5_DLL NAMES hdf5dll HINTS ${HDF5_SEARCH} ENV HDF5_ROOT PATHS ${HDF5_SEARCH_DEFAULT} PATH_SUFFIXES dll lib DOC "location of hdf5 dll") 
     85find_library(MY_HDF5 NAMES hdf5 HINTS ${HDF5_SEARCH} ENV HDF5_ROOT PATHS ${HDF5_SEARCH_DEFAULT} PATH_SUFFIXES lib DOC "location of hdf5 lib") 
     86 
     87find_library(MY_HD_DLL NAMES ${HD_NAMES} HINTS ${HDF4_SEARCH} ENV HDF4_ROOT PATHS ${HDF4_SEARCH_DEFAULT} PATH_SUFFIXES dll lib DOC "location of hd dll") 
     88find_library(MY_HM_DLL NAMES ${HM_NAMES} HINTS ${HDF4_SEARCH} ENV HDF4_ROOT PATHS ${HDF4_SEARCH_DEFAULT} PATH_SUFFIXES dll lib DOC "location of hm dll") 
    6089 
    6190if (WIN32) 
     
    7099            set(HDF4_FOUND YES) 
    71100    endif (HDF4_SEARCH) 
    72         set(MXML_CPP "-DNXXML") 
     101#       set(MXML_CPP "-DNXXML") 
    73102else(WIN32) 
    74103    set(HDF5_STATIC_LIBRARIES ${HDF5_SEARCH}/lib/libhdf5.a ) 
     
    105134find_library(HISTORY history) 
    106135 
    107 #Why do we need this? 
    108 SET(CPACK_SET_DESTDIR "ON") 
    109136 
    110137if(M) 
     
    246273# warning 4996 is about using _strdup ratherthan strdup etc 
    247274# /W4 rather than /Wall 
    248 set(NX_CFLAGS "/W4 /wd4820 /wd4996") 
     275# /Zi to get pdb file in all configurations 
     276set(NX_CFLAGS "/W4 /wd4820 /wd4996 /Zi") 
    249277set(NX_CPP -D_CRT_SECURE_NO_WARNINGS) 
    250278 
     
    278306 
    279307# CPack must always be last 
    280 set(CPACK_BINARY_NSIS ON) 
    281 set(CPACK_BINARY_ZIP OFF) 
    282  
    283 set(CPACK_SOURCE_IGNORE_FILES  
    284           "nexus_spec.in;~$;/.svn/;/.cvsignore/;/CMakeFiles/;/nbproject/;autogen.sh;cmake_install.cmake;Makefile;${CPACK_SOURCE_IGNORE_FILES}")  
    285  
    286 include(CPack) 
    287308configure_file("${PROJECT_SOURCE_DIR}/CPackOptions.cmake.in"  
    288309                                "${PROJECT_BINARY_DIRECTORY}CPackOptions.cmake" 
    289310                                @ONLY) 
    290311set(CPACK_PROJECT_CONFIG_FILE "${PROJECT_BINARY_DIRECTORY}CPackOptions.cmake") 
     312include(CPack) 
  • trunk/CPackOptions.cmake.in

    r1727 r1794  
    1  
    21set (CPACK_PACKAGE_NAME "NeXus") 
    3 set (CPACK_PACKAGE_VENDOR "Science and Technology Facilities Council") 
     2set (CPACK_PACKAGE_VENDOR "NeXus International Advisory Committee") 
    43set (CPACK_PACKAGE_VERSION_MAJOR "4") 
    5 set (CPACK_PACKAGE_VERSION_MINOR "2") 
    6 set (CPACK_PACKAGE_VERSION_PATCH "1") 
    7 set (CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_SOURCE_DIR}/cmake_include/nexus_description.txt") 
     4set (CPACK_PACKAGE_VERSION_MINOR "3") 
     5set (CPACK_PACKAGE_VERSION_PATCH "0") 
     6#set (CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_SOURCE_DIR}/cmake_include/nexus_description.txt") 
    87set (CPACK_PACKAGE_DESCRIPTION_SUMMARY "NeXus - a common format for neutron and X-ray scattering data http://www.nexusformat.org/") 
    98set (CPACK_PACKAGE_FILE_NAME "nexus-${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}-${CPACK_PACKAGE_VERSION_PATCH}") 
    10 set (CPACK_PACKAGE_INSTALL_DIRECTORY "nexus") 
     9set (CPACK_PACKAGE_INSTALL_DIRECTORY "NeXus Data Format") 
    1110set (CPACK_RESOURCE_FILE_LICENSE "${CMAKE_SOURCE_DIR}/COPYING") 
    1211#set (CPACK_RESOURCE_FILE_README) 
    1312set (CPACK_RESOURCE_FILE_WELCOME "${CMAKE_SOURCE_DIR}/cmake_include/WELCOME") 
    1413#set (CPACK_MONOLITHIC_INSTALL) 
     14 
     15set(CPACK_BINARY_ZIP OFF) 
     16set(CPACK_SOURCE_IGNORE_FILES  
     17          "nexus_spec.in;~$;/.svn/;/.cvsignore/;/CMakeFiles/;/nbproject/;autogen.sh;cmake_install.cmake;Makefile;${CPACK_SOURCE_IGNORE_FILES}")  
     18#Why do we need this? 
     19SET(CPACK_SET_DESTDIR "ON") 
     20 
    1521if(UNIX) 
    1622    set (CPACK_GENERATOR ${CPACK_GENERATOR};STGZ;TGZ) 
     
    2228    #set (CPACK_RPM_PACKAGE_PROVIDES "") 
    2329endif(LINUX) 
    24 if(MSVC) 
    25     set (CPACK_GENERATOR ${CPACK_GENERATOR};NSIS) 
    26 endif(MSVC) 
     30if(WIN32) 
     31#    set (CPACK_GENERATOR ${CPACK_GENERATOR};NSIS) 
     32        set(CPACK_BINARY_NSIS OFF) 
     33#         set(CPACK_PACKAGE_ICON "${CMake_SOURCE_DIR}/Utilities/Release\\\\InstallIcon.bmp") 
     34#  set(CPACK_NSIS_INSTALLED_ICON_NAME "bin\\\\MyExecutable.exe") 
     35   set(CPACK_NSIS_DISPLAY_NAME "${CPACK_PACKAGE_INSTALL_DIRECTORY} NeXus") 
     36   set(CPACK_NSIS_HELP_LINK "http://www.nexusformat.org/") 
     37   set(CPACK_NSIS_URL_INFO_ABOUT "http://www.nexusformat.org/") 
     38   set(CPACK_NSIS_CONTACT "nexus-tech@nexusformat.org") 
     39   set(CPACK_NSIS_MODIFY_PATH ON) 
     40   #   CPACK_PACKAGE_INSTALL_REGISTRY_KEY  - Name of the registry key for the installer 
     41#   set(CPACK_NSIS_EXTRA_INSTALL_COMMANDS "!include \"${CMAKE_SOURCE_DIR}/nsis_install.nsh\"")   
     42#   set(CPACK_NSIS_EXTRA_UNINSTALL_COMMANDS "!include \"${CMAKE_SOURCE_DIR}/nsis_uninstall.nsh\"") 
     43endif(WIN32) 
    2744if(APPLE) 
    2845    set (CPACK_GENERATOR ${CPACK_GENERATOR};PackageMaker) 
     
    3855set(CPACK_RPM_COMPONENT_INSTALL ON) 
    3956 
     57#cpack_add_component(Runtime 
     58#                    DISPLAY_NAME "Binary Applications" 
     59#                    DESCRIPTION "Binary applications such as nxconvert, nxbrows etc..." 
     60#                    ) 
    4061 
    41 cpack_add_component(Runtime 
    42                     DISPLAY_NAME "Binary Applications" 
    43                     DESCRIPTION "Binary applications such as nxconvert, nxbrows etc..." 
    44                     ) 
     62#cpack_add_component(Documentation 
     63#                    DISPLAY_NAME "Documentation" 
     64#                    DESCRIPTION "Application Documentation, API and help files." 
     65#                    ) 
    4566 
    46 cpack_add_component(Documentation 
    47                     DISPLAY_NAME "Documentation" 
    48                     DESCRIPTION "Application Documentation, API and help files." 
    49                     ) 
     67#cpack_add_component(Development 
     68#                    DISPLAY_NAME "Development" 
     69#                    DESCRIPTION "Development libraies and headers." 
     70#                    ) 
    5071 
    51 cpack_add_component(Development 
    52                     DISPLAY_NAME "Development" 
    53                     DESCRIPTION "Development libraies and headers." 
    54                     ) 
    55  
    56 cpack_add_component(Examples 
    57                     DISPLAY_NAME "Examples" 
    58                     DESCRIPTION "Code example files." 
    59                     ) 
     72#cpack_add_component(Examples 
     73#                    DISPLAY_NAME "Examples" 
     74#                    DESCRIPTION "Code example files." 
     75#                    ) 
  • trunk/applications/CMakeLists.txt

    r1707 r1794  
    4343endif() 
    4444 
     45if (HAVE_XML) 
    4546add_subdirectory (nxingest) 
     47endif(HAVE_XML) 
    4648 
    4749add_subdirectory (NXtraverse) 
  • trunk/bindings/cpp/CMakeLists.txt

    r1748 r1794  
    4949 
    5050#Note - library version needs to be got from somewhere? 
     51# may want to use DEBUG_OUTPUT_NAME and RELEASE_OUTPUT_NAME 
     52# of define CMAKE_DEBUG_POSTFIX globally 
    5153set_target_properties(NeXus_CPP_Shared_Library PROPERTIES OUTPUT_NAME NeXusCPP 
    5254                      VERSION 1.0 SOVERSION 4) 
     
    6163         ARCHIVE DESTINATION lib/nexus COMPONENT Development) 
    6264 
     65install_pdb (NeXus_CPP_Shared_Library) 
    6366 
    6467 
     68 
  • trunk/src/CMakeLists.txt

    r1749 r1794  
    4848endif (WIN32) 
    4949 
     50if(HAVE_XML) 
     51    set (NAPISRC ${NAPISRC} nxxml.c nxio.c nxio.h) 
     52endif(HAVE_XML) 
    5053 
    5154set (NAPISRC ${NAPISRC} nxxml.c nxio.c nxio.h) 
     
    105108target_link_libraries(NeXus_Shared_Library ${HDF5_SHARED_LIBRARIES} ${HDF4_SHARED_LIBRARIES} ${NX_LIBS}) 
    106109 
     110if(HAVE_XML) 
    107111if(MXMLLIB_FOUND) 
    108112    target_link_libraries(NeXus_Static_Library ${MXML}) 
     
    112116    target_link_libraries(NeXus_Shared_Library MXML_Shared_Library) 
    113117endif(MXMLLIB_FOUND) 
     118endif(HAVE_XML) 
    114119 
    115120install (TARGETS NeXus_Static_Library NeXus_Shared_Library 
     
    117122         LIBRARY DESTINATION lib COMPONENT Runtime 
    118123         ARCHIVE DESTINATION lib/nexus COMPONENT Development) 
     124 
     125install_pdb (NeXus_Shared_Library) 
  • trunk/third_party/CMakeLists.txt

    r1636 r1794  
    2828 
    2929add_subdirectory (tclap) 
     30if(HAVE_XML) 
    3031add_subdirectory (mxml-2.6) 
     32endif(HAVE_XML) 
  • trunk/third_party/mxml-2.6/CMakeLists.txt

    r1674 r1794  
    2626# 
    2727#==================================================================== 
    28 include(FindAllIncludes.cmake) 
     28#include(FindAllIncludes.cmake) 
    2929 
    3030if(CMAKE_SYSTEM_NAME STREQUAL "Windows") 
     
    6565target_link_libraries(mxmldoc MXML_Static_Library ${PTHREAD_LINK}) 
    6666 
     67install (TARGETS MXML_Shared_Library MXML_Static_Library 
     68         RUNTIME DESTINATION bin COMPONENT Runtime 
     69         LIBRARY DESTINATION lib COMPONENT Runtime 
     70         ARCHIVE DESTINATION lib/nexus COMPONENT Development) 
    6771 
     72install_pdb (MXML_Shared_Library) 
     73 
Note: See TracChangeset for help on using the changeset viewer.