int main(int argc, char * *argv)
{
- // manually "expand" autoconf-style variables
- if (exec_prefix=="${prefix}")
- exec_prefix = prefix;
- if (bindir=="${exec_prefix}/bin")
- bindir = exec_prefix + "/bin";
- if (libdir=="${exec_prefix}/lib")
- libdir = exec_prefix + "/lib";
- // now we can guess what to start
- std::string binprog = bindir + "/ginaccint.bin";
-
- // extend LD_LIBRARY_PATH by libdir, so ginaccint.bin really finds libginac
- const char * LD_LIBRARY_PATH = getenv("LD_LIBRARY_PATH");
- if (LD_LIBRARY_PATH == NULL)
- setenv("LD_LIBRARY_PATH", libdir.c_str(), 1);
- else
- setenv("LD_LIBRARY_PATH", (std::string(LD_LIBRARY_PATH)+':'+libdir).c_str(), 1);
-
- // hard-wire CINTSYSDIR, inherited from configure, if it is not set
- setenv("CINTSYSDIR", CINTSYSDIR.c_str(), 0);
-
- // execute the real thing
- int error = execve(binprog.c_str(), argv, environ);
-
- // only gets here on error
- std::cerr << argv[0] << ": cannot exec " << binprog << std::endl;
- return error;
+ // manually "expand" autoconf-style variables
+ if (exec_prefix=="${prefix}")
+ exec_prefix = prefix;
+ if (bindir=="${exec_prefix}/bin")
+ bindir = exec_prefix + "/bin";
+ if (libdir=="${exec_prefix}/lib")
+ libdir = exec_prefix + "/lib";
+ // now we can guess what to start
+ std::string binprog = bindir + "/ginaccint.bin";
+
+ // extend LD_LIBRARY_PATH by libdir, so ginaccint.bin really finds libginac
+ const char * LD_LIBRARY_PATH = getenv("LD_LIBRARY_PATH");
+ if (LD_LIBRARY_PATH == NULL)
+ setenv("LD_LIBRARY_PATH", libdir.c_str(), 1);
+ else
+ setenv("LD_LIBRARY_PATH", (std::string(LD_LIBRARY_PATH)+':'+libdir).c_str(), 1);
+
+ // hard-wire CINTSYSDIR, inherited from configure, but only if it has
+ // been set therein (to allow for system-wide installations of cint)
+ // and without overriding it if the user has specified it.
+ if (CINTSYSDIR != "@CINTSYSDIR@")
+ setenv("CINTSYSDIR", CINTSYSDIR.c_str(), 0);
+
+ // execute the real thing
+ int error = execve(binprog.c_str(), argv, environ);
+
+ // only gets here on error
+ std::cerr << argv[0] << ": cannot exec " << binprog << std::endl;
+ return error;
}