Merge pull request #16 from ibbles/master

Out-of-source builds without environment variables.
This commit is contained in:
JoeyDeVries
2015-08-04 22:03:53 +02:00
3 changed files with 6 additions and 1 deletions

View File

@@ -111,6 +111,8 @@ set(5.advanced_lighting
)
configure_file(configuration/root_directory.h.in configuration/root_directory.h)
include_directories(${CMAKE_BINARY_DIR}/configuration)
foreach(CHAPTER ${CHAPTERS})
foreach(DEMO ${${CHAPTER}})

View File

@@ -0,0 +1 @@
const char * logl_root = "${CMAKE_SOURCE_DIR}";

View File

@@ -2,6 +2,7 @@
#define FILESYSTEM_H
#include <string>
#include "root_directory.h" // This is a configuration file generated by CMake.
class FileSystem
{
@@ -18,7 +19,8 @@ public:
private:
static std::string const & getRoot()
{
static char const * givenRoot {getenv("LOGL_ROOT_PATH")};
static char const * envRoot = getenv("LOGL_ROOT_PATH");
static char const * givenRoot {envRoot != nullptr ? envRoot : logl_root};
static std::string root {givenRoot != nullptr ? givenRoot : ""};
return root;
}