diff options
author | Brad King <brad.king@kitware.com> | 2007-04-17 17:52:50 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2007-04-17 17:52:50 (GMT) |
commit | c1a6e4dcc666c548c182bc6cf8617815b330d977 (patch) | |
tree | 30299accf90d34188bcc82efe82c0e6b85c03f36 /Tests/Plugin | |
parent | aabcf981e22a7c39bcd828bff1a4fb4345e658c9 (diff) | |
download | CMake-c1a6e4dcc666c548c182bc6cf8617815b330d977.zip CMake-c1a6e4dcc666c548c182bc6cf8617815b330d977.tar.gz CMake-c1a6e4dcc666c548c182bc6cf8617815b330d977.tar.bz2 |
ENH: Configure location of plugin files so that the executable can run with any current working directory.
Diffstat (limited to 'Tests/Plugin')
-rw-r--r-- | Tests/Plugin/CMakeLists.txt | 7 | ||||
-rw-r--r-- | Tests/Plugin/src/example_exe.cxx | 4 | ||||
-rw-r--r-- | Tests/Plugin/src/example_exe.h.in | 6 |
3 files changed, 16 insertions, 1 deletions
diff --git a/Tests/Plugin/CMakeLists.txt b/Tests/Plugin/CMakeLists.txt index 41fd05f..a0d1add 100644 --- a/Tests/Plugin/CMakeLists.txt +++ b/Tests/Plugin/CMakeLists.txt @@ -11,6 +11,13 @@ SET(KWSYS_NAMESPACE kwsys) SET(KWSYS_HEADER_ROOT ${Plugin_BINARY_DIR}/include) SET(KWSYS_USE_DynamicLoader 1) ADD_SUBDIRECTORY(${Plugin_SOURCE_DIR}/../../Source/kwsys src/kwsys) + +# Configure the location of plugins. +CONFIGURE_FILE(${Plugin_SOURCE_DIR}/src/example_exe.h.in + ${Plugin_BINARY_DIR}/include/example_exe.h @ONLY) + +# We need to include headers from the source tree and configured +# headers in the build tree. INCLUDE_DIRECTORIES( ${Plugin_BINARY_DIR}/include ${Plugin_SOURCE_DIR}/include diff --git a/Tests/Plugin/src/example_exe.cxx b/Tests/Plugin/src/example_exe.cxx index 59f1e0b..96566d5 100644 --- a/Tests/Plugin/src/example_exe.cxx +++ b/Tests/Plugin/src/example_exe.cxx @@ -1,5 +1,7 @@ #include <example.h> +#include <example_exe.h> + #include <kwsys/DynamicLoader.hxx> #include <kwsys/ios/iostream> #include <kwsys/stl/string> @@ -21,7 +23,7 @@ extern "C" int example_exe_function() int main() { - kwsys_stl::string libName = "lib/plugin" CONFIG_DIR "/"; + kwsys_stl::string libName = EXAMPLE_EXE_PLUGIN_DIR CONFIG_DIR "/"; libName += kwsys::DynamicLoader::LibPrefix(); libName += "example_mod_1"; libName += kwsys::DynamicLoader::LibExtension(); diff --git a/Tests/Plugin/src/example_exe.h.in b/Tests/Plugin/src/example_exe.h.in new file mode 100644 index 0000000..62f0d9f --- /dev/null +++ b/Tests/Plugin/src/example_exe.h.in @@ -0,0 +1,6 @@ +#ifndef example_exe_h +#define example_exe_h + +#define EXAMPLE_EXE_PLUGIN_DIR "@CMAKE_LIBRARY_OUTPUT_DIRECTORY@" + +#endif |