Changeset 7582 for code/branches/ois_update/cmake/PackageConfig.cmake
- Timestamp:
- Oct 25, 2010, 11:05:34 PM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
code/branches/ois_update/cmake/PackageConfig.cmake
r7459 r7582 25 25 # 26 26 27 # Check package version info 28 # MAJOR: Breaking change 29 # MINOR: No breaking changes by the dependency package 30 # For example any code running on 3.0 should still run on 3.1 31 # But you can specify that the code only runs on 3.1 and higher 32 # or 4.0 and higher (so both 3.1 and 4.0 will work). 33 SET(ALLOWED_MINIMUM_VERSIONS 3.1 4.0 5.0) 27 INCLUDE(CheckPackageVersion) 34 28 35 IF(NOT EXISTS ${DEPENDENCY_PACKAGE_DIR}/version.txt) 36 SET(DEPENDENCY_VERSION 1.0) 37 ELSE() 38 # Get version from file 39 FILE(READ ${DEPENDENCY_PACKAGE_DIR}/version.txt _file_content) 40 SET(_match) 41 STRING(REGEX MATCH "([0-9]+.[0-9]+)" _match ${_file_content}) 42 IF(_match) 43 SET(DEPENDENCY_VERSION ${_match}) 44 ELSE() 45 MESSAGE(FATAL_ERROR "The version.txt file in the dependency file has corrupt version information.") 46 ENDIF() 47 ENDIF() 48 49 INCLUDE(CompareVersionStrings) 50 SET(_version_match FALSE) 51 FOREACH(_version ${ALLOWED_MINIMUM_VERSIONS}) 52 # Get major version 53 STRING(REGEX REPLACE "^([0-9]+)\\..*$" "\\1" _major_version "${_version}") 54 COMPARE_VERSION_STRINGS(${DEPENDENCY_VERSION} ${_major_version} _result TRUE) 55 IF(_result EQUAL 0) 56 COMPARE_VERSION_STRINGS(${DEPENDENCY_VERSION} ${_version} _result FALSE) 57 IF(NOT _result LESS 0) 58 SET(_version_match TRUE) 59 ENDIF() 60 ENDIF() 61 ENDFOREACH(_version) 62 IF(NOT _version_match) 63 MESSAGE(FATAL_ERROR "Your dependency package version is ${DEPENDENCY_VERSION}\n" 64 "Possible required versions: ${ALLOWED_MINIMUM_VERSIONS}\n" 65 "You can get a new version from www.orxonox.net") 66 ENDIF() 29 CHECK_PACKAGE_VERSION(3.1 4.0 5.0) 67 30 68 31 IF(NOT _INTERNAL_PACKAGE_MESSAGE)
Note: See TracChangeset
for help on using the changeset viewer.