]> Creatis software - cpPlugins.git/blobdiff - appli/bash/CreateRealConfig.cxx
...
[cpPlugins.git] / appli / bash / CreateRealConfig.cxx
diff --git a/appli/bash/CreateRealConfig.cxx b/appli/bash/CreateRealConfig.cxx
new file mode 100644 (file)
index 0000000..e9737d5
--- /dev/null
@@ -0,0 +1,37 @@
+#include <bash/Config.h>
+
+// -------------------------------------------------------------------------
+int main( int argc, char* argv[] )
+{
+  // Get inputs
+  if( argc < 2 )
+  {
+    std::cerr << "Usage: " << argv[ 0 ] << " output_file" << std::endl;
+    return( 1 );
+
+  } // fi
+  std::string output_filename = argv[ 1 ];
+
+  std::stringstream data;
+  data
+    << "#ifndef __cpPlugins__RealConfig__h__" << std::endl
+    << "#define __cpPlugins__RealConfig__h__" << std::endl
+    << std::endl;
+
+  TStrings tokens;
+  cpPlugins_bash::Tokenize( tokens, cpPlugins_ALL_CONFIGS, ";" );
+  for( auto t = tokens.begin( ); t != tokens.end( ); ++t )
+    data << "#define " << *t << std::endl;
+
+  data << std::endl << "#endif // __cpPlugins__RealConfig__h__" << std::endl;
+  if( !( cpPlugins_bash::Write( data.str( ), output_filename ) ) )
+  {
+    std::cerr << "Error writing file." << std::endl;
+    return( 1 );
+
+  } // fi
+
+  return( 0 );
+}
+
+// eof - $RCSfile$