Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Ignore:
Timestamp:
Jan 29, 2009, 10:19:15 PM (15 years ago)
Author:
rgrieder
Message:
  • Added FindPackageHandleAdvancedArgs.cmake module that invokes FindPackageHandleStandardArgs and then checks the version requirements. Usage: FIND_PACKAGE_HANDLE_ADVANCED_ARGS(NAME MSG VERSION VARS) (like the orginal CMake module, but with the additional version argument)
  • Updated DetermineVersion.cmake and HandleLibraryTypes.cmake to use FUNCTION instead of MACRO and also removed CACHE setting of the veriables (unnecessary).
File:
1 edited

Legend:

Unmodified
Added
Removed
  • code/branches/buildsystem2/cmake/DetermineVersion.cmake

    r2583 r2613  
    1717#    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
    1818
    19 MACRO(DETERMINE_VERSION _name _file)
    20   FILE(READ ${_file} _file_content)
    21   IF(_file_content)
     19FUNCTION(DETERMINE_VERSION _name _file)
     20  IF(EXISTS ${_file})
     21    FILE(READ ${_file} _file_content)
    2222    SET(_parts ${ARGN})
    2323    LIST(LENGTH _parts _parts_length)
     
    2929      STRING(REGEX MATCH "${_name}_VERSION_${_part} +([0-9]+)" _match ${_file_content})
    3030      IF(_match)
    31         SET(${_name}_VERSION_${_part} ${CMAKE_MATCH_1} CACHE STRING "")
     31        SET(${_name}_VERSION_${_part} ${CMAKE_MATCH_1})
     32        SET(${_name}_VERSION_${_part} ${CMAKE_MATCH_1} PARENT_SCOPE)
    3233      ELSE(_match)
    33         SET(${_name}_VERSION_${_part} "0" CACHE STRING "")
     34        SET(${_name}_VERSION_${_part} "0")
     35        SET(${_name}_VERSION_${_part} "0" PARENT_SCOPE)
    3436      ENDIF(_match)
    35       MARK_AS_ADVANCED(${_name}_VERSION_${_part})
    3637      IF("${_parts}" MATCHES "^${_part}") # First?
    37         SET(${_name}_VERSION "${${_name}_VERSION_${_part}}" CACHE STRING "" FORCE)
     38        SET(${_name}_VERSION "${${_name}_VERSION_${_part}}")
    3839      ELSE("${_parts}" MATCHES "^${_part}")
    39         SET(${_name}_VERSION "${${_name}_VERSION}.${${_name}_VERSION_${_part}}" CACHE STRING "" FORCE)
     40        SET(${_name}_VERSION "${${_name}_VERSION}.${${_name}_VERSION_${_part}}")
    4041      ENDIF("${_parts}" MATCHES "^${_part}")
    4142    ENDFOREACH(_part)
    42     MARK_AS_ADVANCED(${_name}_VERSION)
    43   ENDIF(_file_content)
    44 ENDMACRO(DETERMINE_VERSION)
     43    SET(${_name}_VERSION "${${_name}_VERSION}" PARENT_SCOPE)
     44  ENDIF(EXISTS ${_file})
     45ENDFUNCTION(DETERMINE_VERSION)
Note: See TracChangeset for help on using the changeset viewer.