]> Creatis software - cpPlugins.git/blob - bash/CreateRealConfig.cxx
yet another refactoring
[cpPlugins.git] / bash / CreateRealConfig.cxx
1 #include <bash/Config.h>
2
3 // -------------------------------------------------------------------------
4 int main( int argc, char* argv[] )
5 {
6   // Get inputs
7   if( argc < 2 )
8   {
9     std::cerr << "Usage: " << argv[ 0 ] << " output_file" << std::endl;
10     return( 1 );
11
12   } // fi
13   std::string output_filename = argv[ 1 ];
14
15   std::stringstream data;
16   data
17     << "#ifndef __cpPlugins__RealConfig__h__" << std::endl
18     << "#define __cpPlugins__RealConfig__h__" << std::endl
19     << std::endl;
20
21   TStrings tokens;
22   cpPlugins_bash::Tokenize( tokens, cpPlugins_ALL_CONFIGS, ";" );
23   for( auto t = tokens.begin( ); t != tokens.end( ); ++t )
24     data << "#define " << *t << std::endl;
25
26   data << std::endl << "#endif // __cpPlugins__RealConfig__h__" << std::endl;
27   if( !( cpPlugins_bash::Write( data.str( ), output_filename ) ) )
28   {
29     std::cerr << "Error writing file." << std::endl;
30     return( 1 );
31
32   } // fi
33
34   return( 0 );
35 }
36
37 // eof - $RCSfile$