From 3a2fe034f457dace313892edf79eda0aeaca6d59 Mon Sep 17 00:00:00 2001
From: Simon Praetorius <simon.praetorius@tu-dresden.de>
Date: Wed, 1 Aug 2012 11:22:36 +0000
Subject: [PATCH] command line parser for petsc-parameters

---
 AMDiS/src/AMDiS.cc | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/AMDiS/src/AMDiS.cc b/AMDiS/src/AMDiS.cc
index bd4ccb61..8d65eff5 100644
--- a/AMDiS/src/AMDiS.cc
+++ b/AMDiS/src/AMDiS.cc
@@ -55,14 +55,22 @@ namespace AMDiS {
 	("init-file", po::value<std::string>(), "set init file")
 	("rs", po::value<int>(), "set restart parameter")
 	("parameters", po::value<std::string>(), "set parameter in init file\nsyntax: \"key1: value1; key2: value2...\"");
+
+    po::options_description hidden("Hidden options");
+    hidden.add_options()
+	("unknown", po::value<std::vector<std::string> >(), "unknown options");
+	
+    po::options_description cmdline_options;
+    cmdline_options.add(desc).add(hidden);
 	
     // first argument is init-filename
     po::positional_options_description p;
     p.add("init-file", 1);
+    p.add("unknown", -1);
 
     // parse comandline
     po::variables_map vm;
-    po::store(po::command_line_parser(argc, argv).options(desc).positional(p).run(), vm);
+    po::store(po::command_line_parser(argc, argv).options(cmdline_options).positional(p).allow_unregistered().run(), vm);
     po::notify(vm);    
 
     // print help message
-- 
GitLab