Merge topic 'read-less-from-version-headers'
4be6783
read less from version headers into variables
This commit is contained in:
commit
c79dd4d951
|
@ -58,7 +58,7 @@ if(ARMADILLO_INCLUDE_DIR)
|
|||
if(EXISTS "${ARMADILLO_INCLUDE_DIR}/armadillo_bits/arma_version.hpp")
|
||||
|
||||
# Read and parse armdillo version header file for version number
|
||||
file(READ "${ARMADILLO_INCLUDE_DIR}/armadillo_bits/arma_version.hpp" _armadillo_HEADER_CONTENTS)
|
||||
file(STRINGS "${ARMADILLO_INCLUDE_DIR}/armadillo_bits/arma_version.hpp" _armadillo_HEADER_CONTENTS REGEX "#define ARMA_VERSION_[A-Z]+ ")
|
||||
string(REGEX REPLACE ".*#define ARMA_VERSION_MAJOR ([0-9]+).*" "\\1" ARMADILLO_VERSION_MAJOR "${_armadillo_HEADER_CONTENTS}")
|
||||
string(REGEX REPLACE ".*#define ARMA_VERSION_MINOR ([0-9]+).*" "\\1" ARMADILLO_VERSION_MINOR "${_armadillo_HEADER_CONTENTS}")
|
||||
string(REGEX REPLACE ".*#define ARMA_VERSION_PATCH ([0-9]+).*" "\\1" ARMADILLO_VERSION_PATCH "${_armadillo_HEADER_CONTENTS}")
|
||||
|
@ -66,6 +66,7 @@ if(ARMADILLO_INCLUDE_DIR)
|
|||
# WARNING: The number of spaces before the version name is not one.
|
||||
string(REGEX REPLACE ".*#define ARMA_VERSION_NAME +\"([0-9a-zA-Z _-]+)\".*" "\\1" ARMADILLO_VERSION_NAME "${_armadillo_HEADER_CONTENTS}")
|
||||
|
||||
unset(_armadillo_HEADER_CONTENTS)
|
||||
endif()
|
||||
|
||||
set(ARMADILLO_VERSION_STRING "${ARMADILLO_VERSION_MAJOR}.${ARMADILLO_VERSION_MINOR}.${ARMADILLO_VERSION_PATCH}")
|
||||
|
|
|
@ -729,7 +729,7 @@ set(Boost_ERROR_REASON)
|
|||
#
|
||||
set(BOOST_VERSION 0)
|
||||
set(BOOST_LIB_VERSION "")
|
||||
file(READ "${Boost_INCLUDE_DIR}/boost/version.hpp" _boost_VERSION_HPP_CONTENTS)
|
||||
file(STRINGS "${Boost_INCLUDE_DIR}/boost/version.hpp" _boost_VERSION_HPP_CONTENTS REGEX "#define BOOST_(LIB_)?VERSION ")
|
||||
if(Boost_DEBUG)
|
||||
message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] "
|
||||
"location of version.hpp: ${Boost_INCLUDE_DIR}/boost/version.hpp")
|
||||
|
@ -737,6 +737,7 @@ set(Boost_ERROR_REASON)
|
|||
|
||||
string(REGEX REPLACE ".*#define BOOST_VERSION ([0-9]+).*" "\\1" Boost_VERSION "${_boost_VERSION_HPP_CONTENTS}")
|
||||
string(REGEX REPLACE ".*#define BOOST_LIB_VERSION \"([0-9_]+)\".*" "\\1" Boost_LIB_VERSION "${_boost_VERSION_HPP_CONTENTS}")
|
||||
unset(_boost_VERSION_HPP_CONTENTS)
|
||||
|
||||
set(Boost_LIB_VERSION ${Boost_LIB_VERSION} CACHE INTERNAL "The library version string for boost libraries")
|
||||
set(Boost_VERSION ${Boost_VERSION} CACHE INTERNAL "The version number for boost libraries")
|
||||
|
|
|
@ -114,7 +114,7 @@
|
|||
# _gtkversion_hdr = Header file to parse
|
||||
#=============================================================
|
||||
function(_GTK2_GET_VERSION _OUT_major _OUT_minor _OUT_micro _gtkversion_hdr)
|
||||
file(READ ${_gtkversion_hdr} _contents)
|
||||
file(STRINGS ${_gtkversion_hdr} _contents REGEX "#define GTK_M[A-Z]+_VERSION[ \t]+")
|
||||
if(_contents)
|
||||
string(REGEX REPLACE ".*#define GTK_MAJOR_VERSION[ \t]+\\(([0-9]+)\\).*" "\\1" ${_OUT_major} "${_contents}")
|
||||
string(REGEX REPLACE ".*#define GTK_MINOR_VERSION[ \t]+\\(([0-9]+)\\).*" "\\1" ${_OUT_minor} "${_contents}")
|
||||
|
|
|
@ -29,10 +29,11 @@ find_path(HSPELL_INCLUDE_DIR hspell.h)
|
|||
find_library(HSPELL_LIBRARIES NAMES hspell)
|
||||
|
||||
if (HSPELL_INCLUDE_DIR)
|
||||
file(READ "${HSPELL_INCLUDE_DIR}/hspell.h" HSPELL_H)
|
||||
file(STRINGS "${HSPELL_INCLUDE_DIR}/hspell.h" HSPELL_H REGEX "#define HSPELL_VERSION_M(AJO|INO)R [0-9]+")
|
||||
string(REGEX REPLACE ".*#define HSPELL_VERSION_MAJOR ([0-9]+).*" "\\1" HSPELL_VERSION_MAJOR "${HSPELL_H}")
|
||||
string(REGEX REPLACE ".*#define HSPELL_VERSION_MINOR ([0-9]+).*" "\\1" HSPELL_VERSION_MINOR "${HSPELL_H}")
|
||||
set(HSPELL_VERSION_STRING "${HSPELL_VERSION_MAJOR}.${HSPELL_VERSION_MINOR}")
|
||||
unset(HSPELL_H)
|
||||
endif()
|
||||
|
||||
# handle the QUIETLY and REQUIRED arguments and set HSPELL_FOUND to TRUE if
|
||||
|
|
|
@ -33,13 +33,14 @@ find_path(LIBLZMA_INCLUDE_DIR lzma.h )
|
|||
find_library(LIBLZMA_LIBRARY lzma)
|
||||
|
||||
if(LIBLZMA_INCLUDE_DIR AND EXISTS "${LIBLZMA_INCLUDE_DIR}/lzma/version.h")
|
||||
file(READ "${LIBLZMA_INCLUDE_DIR}/lzma/version.h" LIBLZMA_HEADER_CONTENTS)
|
||||
file(STRINGS "${LIBLZMA_INCLUDE_DIR}/lzma/version.h" LIBLZMA_HEADER_CONTENTS REGEX "#define LZMA_VERSION_[A-Z]+ [0-9]+")
|
||||
|
||||
string(REGEX REPLACE ".*#define LZMA_VERSION_MAJOR ([0-9]+).*" "\\1" LIBLZMA_VERSION_MAJOR "${LIBLZMA_HEADER_CONTENTS}")
|
||||
string(REGEX REPLACE ".*#define LZMA_VERSION_MINOR ([0-9]+).*" "\\1" LIBLZMA_VERSION_MINOR "${LIBLZMA_HEADER_CONTENTS}")
|
||||
string(REGEX REPLACE ".*#define LZMA_VERSION_PATCH ([0-9]+).*" "\\1" LIBLZMA_VERSION_PATCH "${LIBLZMA_HEADER_CONTENTS}")
|
||||
|
||||
set(LIBLZMA_VERSION_STRING "${LIBLZMA_VERSION_MAJOR}.${LIBLZMA_VERSION_MINOR}.${LIBLZMA_VERSION_PATCH}")
|
||||
unset(LIBLZMA_HEADER_CONTENTS)
|
||||
endif()
|
||||
|
||||
# We're using new code known now as XZ, even library still been called LZMA
|
||||
|
|
|
@ -107,7 +107,8 @@ if(OSG_INCLUDE_DIR)
|
|||
endif()
|
||||
|
||||
if(EXISTS "${_osg_Version_file}")
|
||||
file(READ "${_osg_Version_file}" _osg_Version_contents)
|
||||
file(STRINGS "${_osg_Version_file}" _osg_Version_contents
|
||||
REGEX "#define (OSG_VERSION_[A-Z]+|OPENSCENEGRAPH_[A-Z]+_VERSION)[ \t]+[0-9]+")
|
||||
else()
|
||||
set(_osg_Version_contents "unknown")
|
||||
endif()
|
||||
|
@ -134,6 +135,7 @@ if(OSG_INCLUDE_DIR)
|
|||
message(WARNING "[ FindOpenSceneGraph.cmake:${CMAKE_CURRENT_LIST_LINE} ] "
|
||||
"Failed to parse version number, please report this as a bug")
|
||||
endif()
|
||||
unset(_osg_Version_contents)
|
||||
|
||||
set(OPENSCENEGRAPH_VERSION "${_osg_VERSION_MAJOR}.${_osg_VERSION_MINOR}.${_osg_VERSION_PATCH}"
|
||||
CACHE INTERNAL "The version of OSG which was detected")
|
||||
|
|
|
@ -74,9 +74,9 @@ endif()
|
|||
|
||||
if(QT_INCLUDE_DIR)
|
||||
#extract the version string from qglobal.h
|
||||
file(READ ${QT_INCLUDE_DIR}/qglobal.h QGLOBAL_H)
|
||||
string(REGEX MATCH "#define[\t ]+QT_VERSION_STR[\t ]+\"[0-9]+.[0-9]+.[0-9]+[a-z]*\"" QGLOBAL_H "${QGLOBAL_H}")
|
||||
file(STRINGS ${QT_INCLUDE_DIR}/qglobal.h QGLOBAL_H REGEX "#define[\t ]+QT_VERSION_STR[\t ]+\"[0-9]+.[0-9]+.[0-9]+[a-z]*\"")
|
||||
string(REGEX REPLACE ".*\"([0-9]+.[0-9]+.[0-9]+[a-z]*)\".*" "\\1" qt_version_str "${QGLOBAL_H}")
|
||||
unset(QGLOBAL_H)
|
||||
|
||||
# Under windows the qt library (MSVC) has the format qt-mtXYZ where XYZ is the
|
||||
# version X.Y.Z, so we need to remove the dots from version
|
||||
|
|
|
@ -223,31 +223,30 @@ macro(KDE3_AUTOMOC)
|
|||
|
||||
if (EXISTS ${_abs_FILE} AND NOT _skip)
|
||||
|
||||
file(READ ${_abs_FILE} _contents)
|
||||
file(STRINGS ${_abs_FILE} _match REGEX "#include +[^ ]+\\.moc[\">]")
|
||||
|
||||
get_filename_component(_abs_PATH ${_abs_FILE} PATH)
|
||||
|
||||
string(REGEX MATCHALL "#include +[^ ]+\\.moc[\">]" _match "${_contents}")
|
||||
if(_match)
|
||||
foreach (_current_MOC_INC ${_match})
|
||||
string(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}")
|
||||
foreach (_current_MOC_INC IN LISTS _match)
|
||||
string(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}")
|
||||
|
||||
get_filename_component(_basename ${_current_MOC} NAME_WE)
|
||||
# set(_header ${CMAKE_CURRENT_SOURCE_DIR}/${_basename}.h)
|
||||
set(_header ${_abs_PATH}/${_basename}.h)
|
||||
set(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_current_MOC})
|
||||
get_filename_component(_basename ${_current_MOC} NAME_WE)
|
||||
# set(_header ${CMAKE_CURRENT_SOURCE_DIR}/${_basename}.h)
|
||||
set(_header ${_abs_PATH}/${_basename}.h)
|
||||
set(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_current_MOC})
|
||||
|
||||
add_custom_command(OUTPUT ${_moc}
|
||||
COMMAND ${QT_MOC_EXECUTABLE}
|
||||
ARGS ${_header} -o ${_moc}
|
||||
DEPENDS ${_header}
|
||||
)
|
||||
add_custom_command(OUTPUT ${_moc}
|
||||
COMMAND ${QT_MOC_EXECUTABLE}
|
||||
ARGS ${_header} -o ${_moc}
|
||||
DEPENDS ${_header}
|
||||
)
|
||||
|
||||
ADD_FILE_DEPENDENCIES(${_abs_FILE} ${_moc})
|
||||
|
||||
endforeach ()
|
||||
endif()
|
||||
ADD_FILE_DEPENDENCIES(${_abs_FILE} ${_moc})
|
||||
|
||||
endforeach ()
|
||||
unset(_match)
|
||||
unset(_header)
|
||||
unset(_moc)
|
||||
endif ()
|
||||
endforeach ()
|
||||
endmacro()
|
||||
|
|
|
@ -187,15 +187,15 @@ macro (QT4_ADD_RESOURCES outfiles )
|
|||
if(EXISTS "${infile}")
|
||||
# parse file for dependencies
|
||||
# all files are absolute paths or relative to the location of the qrc file
|
||||
file(READ "${infile}" _RC_FILE_CONTENTS)
|
||||
string(REGEX MATCHALL "<file[^<]+" _RC_FILES "${_RC_FILE_CONTENTS}")
|
||||
foreach(_RC_FILE ${_RC_FILES})
|
||||
string(REGEX REPLACE "^<file[^>]*>" "" _RC_FILE "${_RC_FILE}")
|
||||
file(STRINGS "${infile}" _RC_FILES REGEX "<file[^>]*>[^<]+")
|
||||
foreach(_RC_FILE IN LISTS _RC_FILES)
|
||||
string(REGEX REPLACE "^<file[^>]*>([^<]*)" "\\1" _RC_FILE "${_RC_FILE}")
|
||||
if(NOT IS_ABSOLUTE "${_RC_FILE}")
|
||||
set(_RC_FILE "${rc_path}/${_RC_FILE}")
|
||||
endif()
|
||||
set(_RC_DEPENDS ${_RC_DEPENDS} "${_RC_FILE}")
|
||||
endforeach()
|
||||
unset(_RC_FILES)
|
||||
# Since this cmake macro is doing the dependency scanning for these files,
|
||||
# let's make a configured file and add it as a dependency so cmake is run
|
||||
# again when dependencies need to be recomputed.
|
||||
|
|
Loading…
Reference in New Issue