aboutsummaryrefslogtreecommitdiff
path: root/modules/ECMGenerateHeaders.cmake
diff options
context:
space:
mode:
authorDan Vrátil <dvratil@redhat.com>2014-01-13 11:45:59 +0100
committerDan Vrátil <dvratil@redhat.com>2014-01-13 11:45:59 +0100
commit6e5dd4943be1200f9f7f6620d69f140428abff45 (patch)
treeb3327638a945c02ca0d8ad82e21a9240a8dcef3e /modules/ECMGenerateHeaders.cmake
parent4a55cd63141e23d3c599c4071a5f882936c30e77 (diff)
downloadextra-cmake-modules-6e5dd4943be1200f9f7f6620d69f140428abff45.tar.gz
extra-cmake-modules-6e5dd4943be1200f9f7f6620d69f140428abff45.tar.bz2
Avoid '//' in paths in generated header files
REVIEW: 114888
Diffstat (limited to 'modules/ECMGenerateHeaders.cmake')
-rw-r--r--modules/ECMGenerateHeaders.cmake7
1 files changed, 6 insertions, 1 deletions
diff --git a/modules/ECMGenerateHeaders.cmake b/modules/ECMGenerateHeaders.cmake
index f72b1c0b..e98a22e9 100644
--- a/modules/ECMGenerateHeaders.cmake
+++ b/modules/ECMGenerateHeaders.cmake
@@ -53,6 +53,11 @@ function(ECM_GENERATE_HEADERS)
set(EGH_OUTPUT_DIR ${CMAKE_CURRENT_BINARY_DIR})
endif()
+ # Make sure EGH_RELATIVE is /-terminated when it's not empty
+ if (NOT ${EGH_RELATIVE} MATCHES "^.*/$")
+ set(EGH_RELATIVE "${EGH_RELATIVE}/")
+ endif()
+
if (EGH_PREFIX)
string(TOLOWER "${EGH_PREFIX}/" lowercaseprefix)
endif()
@@ -60,7 +65,7 @@ function(ECM_GENERATE_HEADERS)
foreach(_CLASSNAME ${EGH_UNPARSED_ARGUMENTS})
string(TOLOWER ${_CLASSNAME} lowercaseclassname)
set(FANCY_HEADER_NAME ${EGH_OUTPUT_DIR}/${EGH_MODULE_NAME}/${EGH_PREFIX}/${_CLASSNAME})
- set(_actualheader "${CMAKE_CURRENT_SOURCE_DIR}/${EGH_RELATIVE}/${lowercaseclassname}.h")
+ set(_actualheader "${CMAKE_CURRENT_SOURCE_DIR}/${EGH_RELATIVE}${lowercaseclassname}.h")
if (NOT EXISTS ${_actualheader})
message(FATAL_ERROR "Could not find \"${_actualheader}\"")
endif()