summaryrefslogtreecommitdiff
path: root/solenv/gcc-wrappers/wrapper.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'solenv/gcc-wrappers/wrapper.cxx')
-rw-r--r--solenv/gcc-wrappers/wrapper.cxx56
1 files changed, 27 insertions, 29 deletions
diff --git a/solenv/gcc-wrappers/wrapper.cxx b/solenv/gcc-wrappers/wrapper.cxx
index a03b1dddee90..72e48e5a7b37 100644
--- a/solenv/gcc-wrappers/wrapper.cxx
+++ b/solenv/gcc-wrappers/wrapper.cxx
@@ -15,27 +15,25 @@
#define BUFLEN 2048
-using namespace std;
-
-string getexe(string exename, bool maybeempty) {
+std::string getexe(std::string exename, bool maybeempty) {
char* cmdbuf;
size_t cmdlen;
_dupenv_s(&cmdbuf,&cmdlen,exename.c_str());
if(!cmdbuf) {
if (maybeempty) {
- return string();
+ return std::string();
}
- cout << "Error " << exename << " not defined. Did you forget to source the environment?" << endl;
+ std::cout << "Error " << exename << " not defined. Did you forget to source the environment?" << std::endl;
exit(1);
}
- string command(cmdbuf);
+ std::string command(cmdbuf);
free(cmdbuf);
return command;
}
void setupccenv() {
// Set-up library path
- string libpath="LIB=";
+ std::string libpath="LIB=";
char* libbuf;
size_t liblen;
_dupenv_s(&libbuf,&liblen,"ILIB");
@@ -46,12 +44,12 @@ void setupccenv() {
libpath.append(libbuf);
free(libbuf);
if(_putenv(libpath.c_str())<0) {
- cerr << "Error: could not export LIB" << endl;
+ std::cerr << "Error: could not export LIB" << std::endl;
exit(1);
}
// Set-up include path
- string includepath="INCLUDE=.";
+ std::string includepath="INCLUDE=.";
char* incbuf;
size_t inclen;
_dupenv_s(&incbuf,&inclen,"SOLARINC");
@@ -59,13 +57,13 @@ void setupccenv() {
std::cerr << "No environment variable SOLARINC" << std::endl;
std::exit(EXIT_FAILURE);
}
- string inctmp(incbuf);
+ std::string inctmp(incbuf);
free(incbuf);
// 3 = strlen(" -I")
for(size_t pos=0,len=0;pos<inctmp.length();) {
size_t endpos=inctmp.find(" -I",pos+1);
- if(endpos==string::npos)
+ if(endpos==std::string::npos)
endpos=inctmp.length();
len=endpos-pos;
@@ -79,12 +77,12 @@ void setupccenv() {
pos=endpos;
}
if(_putenv(includepath.c_str())<0) {
- cerr << "Error: could not export INCLUDE" << endl;
+ std::cerr << "Error: could not export INCLUDE" << std::endl;
exit(1);
}
}
-string processccargs(vector<string> rawargs, string &env_prefix, bool &verbose)
+std::string processccargs(std::vector<std::string> rawargs, std::string &env_prefix, bool &verbose)
{
// default env var prefix
env_prefix = "REAL_";
@@ -92,7 +90,7 @@ string processccargs(vector<string> rawargs, string &env_prefix, bool &verbose)
bool env_prefix_next_arg = false;
// suppress the msvc banner
- string args=" -nologo";
+ std::string args=" -nologo";
// TODO: should these options be enabled globally?
args.append(" -EHsc");
const char *const pDebugRuntime(getenv("MSVC_USE_DEBUG_RUNTIME"));
@@ -106,13 +104,13 @@ string processccargs(vector<string> rawargs, string &env_prefix, bool &verbose)
// apparently these must be at the end
// otherwise configure tests may fail
// note: always use -debug so a PDB file is created
- string linkargs(" -link -debug");
+ std::string linkargs(" -link -debug");
// instead of using synced PDB access (-FS), use individual PDB files based on output
const char *const pEnvIndividualPDBs(getenv("MSVC_USE_INDIVIDUAL_PDBS"));
const bool bIndividualPDBs = (pEnvIndividualPDBs && !strcmp(pEnvIndividualPDBs, "TRUE"));
- for(vector<string>::iterator i = rawargs.begin(); i != rawargs.end(); ++i) {
+ for(std::vector<std::string>::iterator i = rawargs.begin(); i != rawargs.end(); ++i) {
if (env_prefix_next_arg)
{
env_prefix = *i;
@@ -140,21 +138,21 @@ string processccargs(vector<string> rawargs, string &env_prefix, bool &verbose)
linkargs.append(" -dll -out:");
linkargs.append(*i);
}
- else if (dot == string::npos)
+ else if (dot == std::string::npos)
{
args.append("-Fe");
args.append(*i + ".exe");
}
else
{
- cerr << "unknown -o argument - please adapt gcc-wrapper for \""
- << (*i) << "\"" << endl;
+ std::cerr << "unknown -o argument - please adapt gcc-wrapper for \""
+ << (*i) << "\"" << std::endl;
exit(1);
}
if (bIndividualPDBs)
{
- if (dot == string::npos)
+ if (dot == std::string::npos)
args.append(" -Fd" + *i + ".pdb");
else
args.append(" -Fd" + (*i).substr(0, dot) + ".pdb");
@@ -167,7 +165,7 @@ string processccargs(vector<string> rawargs, string &env_prefix, bool &verbose)
}
else if(!(*i).compare(0,2,"-D")) {
// need to re-escape strings for preprocessor
- for(size_t pos=(*i).find("\""); pos!=string::npos; pos=(*i).find("\"",pos)) {
+ for(size_t pos=(*i).find("\""); pos!=std::string::npos; pos=(*i).find("\"",pos)) {
(*i).replace(pos,0,"\\");
pos+=2;
}
@@ -199,7 +197,7 @@ string processccargs(vector<string> rawargs, string &env_prefix, bool &verbose)
size_t pos = i->find("=");
if (0 == i->compare(0, pos, "--wrapper-env-prefix"))
{
- if (pos == string::npos)
+ if (pos == std::string::npos)
env_prefix_next_arg = true;
else if (pos + 1 == i->length())
{
@@ -217,7 +215,7 @@ string processccargs(vector<string> rawargs, string &env_prefix, bool &verbose)
if (env_prefix_next_arg)
{
- cerr << "wrapper-env-prefix needs an argument!" << endl;
+ std::cerr << "wrapper-env-prefix needs an argument!" << std::endl;
exit(1);
}
@@ -225,7 +223,7 @@ string processccargs(vector<string> rawargs, string &env_prefix, bool &verbose)
return args;
}
-int startprocess(string command, string args, bool verbose)
+int startprocess(std::string command, std::string args, bool verbose)
{
STARTUPINFO si;
PROCESS_INFORMATION pi;
@@ -242,7 +240,7 @@ int startprocess(string command, string args, bool verbose)
sa.bInheritHandle=TRUE;
if(!CreatePipe(&childout_read,&childout_write,&sa,0)) {
- cerr << "Error: could not create stdout pipe" << endl;
+ std::cerr << "Error: could not create stdout pipe" << std::endl;
exit(1);
}
@@ -253,7 +251,7 @@ int startprocess(string command, string args, bool verbose)
// support ccache
size_t pos=command.find("ccache ");
- if(pos != string::npos) {
+ if(pos != std::string::npos) {
args.insert(0,"cl.exe");
command=command.substr(0,pos+strlen("ccache"))+".exe";
}
@@ -261,7 +259,7 @@ int startprocess(string command, string args, bool verbose)
auto cmdline = "\"" + command + "\" " + args;
if (verbose)
- cerr << "CMD= " << command << " " << args << endl;
+ std::cerr << "CMD= " << command << " " << args << std::endl;
// Commandline may be modified by CreateProcess
char* cmdlineBuf=_strdup(cmdline.c_str());
@@ -278,7 +276,7 @@ int startprocess(string command, string args, bool verbose)
&pi) // Process Information
) {
auto const e = GetLastError();
- cerr << "Error: could not create process \"" << cmdlineBuf << "\": " << e << endl;
+ std::cerr << "Error: could not create process \"" << cmdlineBuf << "\": " << e << std::endl;
exit(1);
}
@@ -295,7 +293,7 @@ int startprocess(string command, string args, bool verbose)
if(GetLastError()==ERROR_BROKEN_PIPE)
break;
if(!success) {
- cerr << "Error: could not read from subprocess stdout" << endl;
+ std::cerr << "Error: could not read from subprocess stdout" << std::endl;
exit(1);
}
if(readlen!=0) {