blob: 668c907b3cde717bd4b246a0790e9a6912275c9c [file] [log] [blame]
From c354e8d9599aa02566c8acc341f3a2c73281483b Mon Sep 17 00:00:00 2001
From: Romain Naour <romain.naour@openwide.fr>
Date: Wed, 17 Sep 2014 13:27:44 +0200
Subject: [PATCH] cmake: use CMAKE_CURRENT_SOURCE_DIR instead of
CMAKE_SOURCE_DIR
The aim of this patch is to be able to call each subproject's CMakeLists.txt
from a top-level CMakeLists.txt.
This will help to build automatically the epl libraries, epl driver, unittests
and demos.
This patch has been submitted upstream:
https://github.com/openPOWERLINK/openPOWERLINK_V2/pull/57
Signed-off-by: Romain Naour <romain.naour@openwide.fr>
---
drivers/linux/drv_daemon_pcap/CMakeLists.txt | 6 +++---
drivers/linux/drv_kernelmod_edrv/CMakeLists.txt | 8 ++++----
hardware/CMakeLists.txt | 4 ++--
hardware/drivers/hostinterface/CMakeLists.txt | 2 +-
hardware/drivers/openmac/CMakeLists.txt | 4 ++--
unittests/CMakeLists.txt | 4 ++--
6 files changed, 14 insertions(+), 14 deletions(-)
diff --git a/drivers/linux/drv_daemon_pcap/CMakeLists.txt b/drivers/linux/drv_daemon_pcap/CMakeLists.txt
index 4c3f933..9041e4d 100644
--- a/drivers/linux/drv_daemon_pcap/CMakeLists.txt
+++ b/drivers/linux/drv_daemon_pcap/CMakeLists.txt
@@ -57,8 +57,8 @@ MESSAGE(STATUS "Configuring ${EXE_NAME}")
###############################################################################
# Set global directories
###############################################################################
-SET(OPLK_BASE_DIR ${CMAKE_SOURCE_DIR}/../../..)
-SET(DRV_SOURCE_DIR ${CMAKE_SOURCE_DIR})
+SET(OPLK_BASE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../../..)
+SET(DRV_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR})
SET(CONTRIB_SOURCE_DIR ${OPLK_BASE_DIR}/contrib)
SET(OPLK_INCLUDE_DIR ${OPLK_BASE_DIR}/stack/include)
SET(TOOLS_DIR ${OPLK_BASE_DIR}/tools)
@@ -66,7 +66,7 @@ SET(TOOLS_DIR ${OPLK_BASE_DIR}/tools)
###############################################################################
# Include CMake Modules
###############################################################################
-SET(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/../../cmake ${CMAKE_MODULE_PATH})
+SET(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../../cmake ${CMAKE_MODULE_PATH})
# include standard cmake modules
INCLUDE(CMakeDependentOption)
diff --git a/drivers/linux/drv_kernelmod_edrv/CMakeLists.txt b/drivers/linux/drv_kernelmod_edrv/CMakeLists.txt
index 2ad1a0d..af85f86 100644
--- a/drivers/linux/drv_kernelmod_edrv/CMakeLists.txt
+++ b/drivers/linux/drv_kernelmod_edrv/CMakeLists.txt
@@ -75,7 +75,7 @@ SET_PROPERTY(CACHE CFG_POWERLINK_EDRV PROPERTY STRINGS 8139 82573 8255x i210 811
################################################################################
# Set global directories
################################################################################
-SET(OPLK_BASE_DIR ${CMAKE_SOURCE_DIR}/../../..)
+SET(OPLK_BASE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../../..)
SET(CONTRIB_SOURCE_DIR ${OPLK_BASE_DIR}/contrib)
SET(STACK_SOURCE_DIR ${OPLK_BASE_DIR}/stack/src)
SET(COMMON_SOURCE_DIR ${OPLK_BASE_DIR}/stack/src/common)
@@ -152,10 +152,10 @@ IF(CFG_OPLK_MN)
ENDIF()
SET(MODULE_DEFS "${MODULE_DEFS} -DCONFIG_MN")
SET(MODULE_NAME "${MODULE_NAME}mn")
- INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/proj/mn)
+ INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/proj/mn)
ELSE()
SET(MODULE_NAME "${MODULE_NAME}cn")
- INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/proj/cn)
+ INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/proj/cn)
ENDIF()
###############################################################################
@@ -189,7 +189,7 @@ ENDFOREACH()
#
SET(MODULE_SOURCE_FILES
${MODULE_SOURCE_FILES}
- ${CMAKE_SOURCE_DIR}/main.c
+ ${CMAKE_CURRENT_SOURCE_DIR}/main.c
${CONTRIB_SOURCE_DIR}/trace/trace-printk.c
${EDRV_SOURCE_DIR}/edrvcyclic.c
${KERNEL_SOURCE_DIR}/ctrl/ctrlk.c
diff --git a/hardware/CMakeLists.txt b/hardware/CMakeLists.txt
index 218c4eb..3ba85ca 100644
--- a/hardware/CMakeLists.txt
+++ b/hardware/CMakeLists.txt
@@ -40,7 +40,7 @@ INCLUDE(reduceboardname)
################################################################################
# Set paths
-SET(OPLK_BASE_DIR ${CMAKE_SOURCE_DIR}/..)
+SET(OPLK_BASE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/..)
SET(OMETHLIB_BASE_DIR ${PROJECT_SOURCE_DIR}/drivers/openmac)
SET(OMETHLIB_BUILD_DIR ${PROJECT_BINARY_DIR}/drivers/openmac)
SET(HOSTIF_BASE_DIR ${PROJECT_SOURCE_DIR}/drivers/hostinterface)
@@ -56,7 +56,7 @@ STRING(TOLOWER "${CMAKE_SYSTEM_PROCESSOR}" SYSTEM_PROCESSOR_DIR)
IF(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
SET(CMAKE_INSTALL_PREFIX
- ${CMAKE_SOURCE_DIR}/lib/${SYSTEM_NAME_DIR}/${SYSTEM_PROCESSOR_DIR} CACHE PATH "openPOWERLINK hardware install prefix" FORCE
+ ${CMAKE_CURRENT_SOURCE_DIR}/lib/${SYSTEM_NAME_DIR}/${SYSTEM_PROCESSOR_DIR} CACHE PATH "openPOWERLINK hardware install prefix" FORCE
)
ENDIF()
diff --git a/hardware/drivers/hostinterface/CMakeLists.txt b/hardware/drivers/hostinterface/CMakeLists.txt
index 1a9d2aa..9c56c16 100644
--- a/hardware/drivers/hostinterface/CMakeLists.txt
+++ b/hardware/drivers/hostinterface/CMakeLists.txt
@@ -71,7 +71,7 @@ ELSE()
SET( HOSTIF_LIB_NAME "${HOSTIF_NAME}")
ENDIF()
-SET(BOARDS_COMMON_DIR ${CMAKE_SOURCE_DIR}/boards/${BOARD_NAME}/common)
+SET(BOARDS_COMMON_DIR ${CMAKE_CURRENT_SOURCE_DIR}/boards/${BOARD_NAME}/common)
SET(EXAMPLE_BINARY_DIR ${CMAKE_BINARY_DIR}/boards/${BOARD_NAME}/${EXAMPLE_NAME})
########################################################################
diff --git a/hardware/drivers/openmac/CMakeLists.txt b/hardware/drivers/openmac/CMakeLists.txt
index 560c0d9..d532996 100644
--- a/hardware/drivers/openmac/CMakeLists.txt
+++ b/hardware/drivers/openmac/CMakeLists.txt
@@ -55,8 +55,8 @@ ELSE()
SET(OMETH_LIB_NAME "${OMETH_NAME}")
ENDIF()
-SET(BOARD_EXAMPLE_DIR ${CMAKE_SOURCE_DIR}/boards/${BOARD_NAME}/${EXAMPLE_NAME})
-SET(BOARDS_COMMON_DIR ${CMAKE_SOURCE_DIR}/boards/${BOARD_NAME}/common)
+SET(BOARD_EXAMPLE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/boards/${BOARD_NAME}/${EXAMPLE_NAME})
+SET(BOARDS_COMMON_DIR ${CMAKE_CURRENT_SOURCE_DIR}/boards/${BOARD_NAME}/common)
SET(EXAMPLE_BINARY_DIR ${CMAKE_BINARY_DIR}/boards/${BOARD_NAME}/${EXAMPLE_NAME})
########################################################################
diff --git a/unittests/CMakeLists.txt b/unittests/CMakeLists.txt
index 533d4e7..4460c2e 100644
--- a/unittests/CMakeLists.txt
+++ b/unittests/CMakeLists.txt
@@ -55,10 +55,10 @@ ENDMACRO(ADD_UNIT_TEST)
################################################################################
# Set general directories
-SET(OPLK_BASE_DIR ${CMAKE_SOURCE_DIR}/..)
+SET(OPLK_BASE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/..)
SET(OPLK_SOURCE_DIR ${OPLK_BASE_DIR}/stack/src)
SET(OPLK_INCLUDE_DIR ${OPLK_BASE_DIR}/stack/include)
-SET(TEST_COMMON_SOURCE_DIR ${CMAKE_SOURCE_DIR}/common)
+SET(TEST_COMMON_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/common)
# We need a oplkcfg.h file for compiling the sources
# We are using the project for the complete MN library
--
2.4.3