From 1b20cb90fb241de86c1c5653f81f772829e638cc Mon Sep 17 00:00:00 2001 From: Carlo Camilloni <carlo.camilloni@gmail.com> Date: Thu, 23 Apr 2015 15:07:37 +0200 Subject: [PATCH] CLTools: added the possibility of setting PLUMED_ROOT as an enviroment variable. This should allow to move more easily a static executable of plumed. I have implemented solutions 2 and 4 of #129 this close #129 --- src/config/Config.cpp.in | 10 +++++++++- src/core/CLToolMain.cpp | 3 +-- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/src/config/Config.cpp.in b/src/config/Config.cpp.in index 0a8885d7d..66c391c02 100644 --- a/src/config/Config.cpp.in +++ b/src/config/Config.cpp.in @@ -22,6 +22,7 @@ #include "Config.h" #include "version.h" +#include <cstdlib> #include <cstring> namespace PLMD{ @@ -36,7 +37,14 @@ bool isInstalled(){ } std::string getPlumedRoot(){ - return "@PLUMED_ROOT@"; + char *env = std::getenv("PLUMED_ROOT"); + std::string ss; + if( env == NULL) { + ss="@PLUMED_ROOT@"; + } else { + ss=std::string( env ); + } + return ss; } std::string getVersion(){ diff --git a/src/core/CLToolMain.cpp b/src/core/CLToolMain.cpp index 212a1e488..ef97621ec 100644 --- a/src/core/CLToolMain.cpp +++ b/src/core/CLToolMain.cpp @@ -167,9 +167,8 @@ int CLToolMain::run(int argc, char **argv,FILE*in,FILE*out,Communicator& pc){ vector<string> files=Tools::ls(root); if(find(files.begin(),files.end(),"patches")==files.end()) { string msg= - "ERROR: I cannot find "+root+"/patches/ directory\n"; + "WARNING: I cannot find "+root+"/patches/ directory. Set PLUMED_ROOT or reinstall PLUMED\n\n"; fprintf(stderr,"%s",msg.c_str()); - return 1; } } -- GitLab