aboutsummaryrefslogtreecommitdiff
path: root/modules/ECMGenerateHeaders.cmake
diff options
context:
space:
mode:
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()