Skip to content
Snippets Groups Projects
Commit 25cbe1c0 authored by Giovanni Bussi's avatar Giovanni Bussi
Browse files

Tentative fix for conda build

See #416
parent 1a4c2255
No related branches found
No related tags found
No related merge requests found
...@@ -28,8 +28,18 @@ ...@@ -28,8 +28,18 @@
namespace PLMD { namespace PLMD {
namespace config { namespace config {
// This is a fix to allow conda to correctly replace paths in binary files.
// These variables should not be static or they will be optimized away!
// I guess the compiler thinks that they could be replaced from outside
// (even though they are const) and thus cannot optimize them.
const char* plumed_root="@PLUMED_ROOT@";
const char* plumed_soext="@SOEXT@";
const char* plumed_htmldir="@htmldir@";
const char* plumed_includedir="@includedir@";
const char* plumed_program_name="@program_name@";
std::string getSoExt() { std::string getSoExt() {
return "@SOEXT@"; return plumed_soext;
} }
bool isInstalled() { bool isInstalled() {
...@@ -40,7 +50,7 @@ std::string getPlumedRoot() { ...@@ -40,7 +50,7 @@ std::string getPlumedRoot() {
char *env = std::getenv("PLUMED_ROOT"); char *env = std::getenv("PLUMED_ROOT");
std::string ss; std::string ss;
if( env == NULL) { if( env == NULL) {
ss="@PLUMED_ROOT@"; ss=plumed_root;
} else { } else {
ss=std::string( env ); ss=std::string( env );
} }
...@@ -52,7 +62,7 @@ std::string getPlumedHtmldir() { ...@@ -52,7 +62,7 @@ std::string getPlumedHtmldir() {
char *env = std::getenv("PLUMED_HTMLDIR"); char *env = std::getenv("PLUMED_HTMLDIR");
std::string ss; std::string ss;
if( env == NULL) { if( env == NULL) {
ss="@htmldir@"; ss=plumed_htmldir;
} else { } else {
ss=std::string( env ); ss=std::string( env );
} }
...@@ -64,7 +74,7 @@ std::string getPlumedIncludedir() { ...@@ -64,7 +74,7 @@ std::string getPlumedIncludedir() {
char *env = std::getenv("PLUMED_INCLUDEDIR"); char *env = std::getenv("PLUMED_INCLUDEDIR");
std::string ss; std::string ss;
if( env == NULL) { if( env == NULL) {
ss="@includedir@"; ss=plumed_includedir;
} else { } else {
ss=std::string( env ); ss=std::string( env );
} }
...@@ -76,7 +86,7 @@ std::string getPlumedProgramName() { ...@@ -76,7 +86,7 @@ std::string getPlumedProgramName() {
char *env = std::getenv("PLUMED_PROGRAM_NAME"); char *env = std::getenv("PLUMED_PROGRAM_NAME");
std::string ss; std::string ss;
if( env == NULL) { if( env == NULL) {
ss="@program_name@"; ss=plumed_program_name;
} else { } else {
ss=std::string( env ); ss=std::string( env );
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment