LArSoft
v06_85_00
Liquid Argon Software toolkit - http://larsoft.org/
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
genwindef.cpp
Go to the documentation of this file.
1
//$Id: genconf.cpp,v 1.35 2008/10/15 21:51:24 marcocle Exp $ //
2
3
#ifdef _WIN32
4
// Disable a warning in Boost program_options headers:
5
// inconsistent linkage in program_options/variables_map.hpp
6
#pragma warning ( disable : 4273 )
7
#define popen _popen
8
#define pclose _pclose
9
#define fileno _fileno
10
#include <stdlib.h>
11
#endif
12
13
// Include files----------------------------------------------------------------
14
#include <vector>
15
#include <string>
16
#include <iostream>
17
#include <fstream>
18
#include "
LibSymbolInfo.h
"
19
20
using namespace
std
;
21
22
namespace
windef
{
23
void
usage
(){
24
cerr <<
"Usage: genwindef [-l <dllname>] [-o <output-file> | exports.def] <obj or lib filenames>"
<< endl;
25
exit(1);
26
}
27
}
28
29
//--- Command main program-----------------------------------------------------
30
int
main
(
int
argc,
char
** argv )
31
//-----------------------------------------------------------------------------
32
{
33
string
outfile(
"exports.def"
);
34
string
library(
"UnknownLib"
);
35
string
objfiles;
36
bool
debug
(
false
);
37
38
int
arg;
39
if
(argc < 3)
windef::usage
();
40
arg = 1;
41
while
(argv[arg][0] ==
'-'
) {
42
if
(strcmp(argv[arg],
"--"
) == 0) {
43
windef::usage
();
44
}
45
else
if
(strcmp(argv[arg],
"-l"
) == 0) {
46
arg++;
47
if
(arg == argc)
windef::usage
();
48
library = argv[arg];
49
}
50
else
if
(strcmp(argv[arg],
"-o"
) == 0) {
51
arg++;
52
if
(arg == argc)
windef::usage
();
53
outfile = argv[arg];
54
}
55
arg++;
56
}
57
if
(arg == argc)
windef::usage
();
58
for
(arg; arg < argc; arg++) {
59
objfiles += argv[arg];
60
if
( arg+1 < argc) objfiles +=
" "
;
61
}
62
63
CLibSymbolInfo
libsymbols;
64
ofstream out(outfile.c_str());
65
if
(out.fail()) {
66
cerr <<
"windef: Error opening file "
<< outfile << endl;
67
return
1;
68
}
69
out <<
"LIBRARY "
<< library << endl;
70
out <<
"EXPORTS"
<< endl;
71
72
libsymbols.
DumpSymbols
(const_cast<char*>(objfiles.c_str()), out);
73
74
out.close();
75
76
77
return
0;
78
}
79
80
81
CLibSymbolInfo
Definition:
LibSymbolInfo.h:44
LibSymbolInfo.h
std
STL namespace.
main
int main(int argc, char **argv)
Definition:
genwindef.cpp:30
CLibSymbolInfo::DumpSymbols
BOOL DumpSymbols(LPTSTR lpszLibPathName, std::ostream &pFile)
Definition:
LibSymbolInfo.cpp:43
tca::debug
DebugStuff debug
Definition:
DebugStruct.cxx:4
windef
Definition:
genwindef.cpp:22
windef::usage
void usage()
Definition:
genwindef.cpp:23
usage
void usage(Catch::Session &session, string processName)
Definition:
catch_main.cc:19
geant4.10.03.p03
cmake
Modules
genwindef
genwindef.cpp
Generated on Thu Jul 26 2018 13:09:46 for LArSoft by
1.8.11