summaryrefslogtreecommitdiffstats
path: root/main.cxx
diff options
context:
space:
mode:
authorPrzemysław Pawełczyk <przemyslaw@pawelczyk.it>2010-02-06 20:24:06 -0500
committerFrank Ch. Eigler <fche@elastic.org>2010-02-06 20:24:06 -0500
commitc72dd3c713cc2b21eacae39ce6898f8e5c14e0ad (patch)
treea3409775bb8050dd2c498e6d198d32cdecb9f268 /main.cxx
parent8bead5e11a391879f87565b5a3fc9bbeec187b78 (diff)
downloadsystemtap-steved-c72dd3c713cc2b21eacae39ce6898f8e5c14e0ad.tar.gz
systemtap-steved-c72dd3c713cc2b21eacae39ce6898f8e5c14e0ad.tar.xz
systemtap-steved-c72dd3c713cc2b21eacae39ce6898f8e5c14e0ad.zip
undocumented, obfuscated, *evil* option to suppress -Werror during module building
* session.h (omit_werror): New flag. * buildrun.cxx (compile_pass): Use it. * main.cxx (main): Set it.
Diffstat (limited to 'main.cxx')
-rw-r--r--main.cxx14
1 files changed, 13 insertions, 1 deletions
diff --git a/main.cxx b/main.cxx
index 0126f323..8f5ee72e 100644
--- a/main.cxx
+++ b/main.cxx
@@ -532,6 +532,7 @@ main (int argc, char * const argv [])
s.load_only = false;
s.skip_badvars = false;
s.unprivileged = false;
+ s.omit_werror = false;
bool client_options = false;
string client_options_disallowed;
@@ -616,7 +617,8 @@ main (int argc, char * const argv [])
#define LONG_OPT_VERBOSE_PASS 5
#define LONG_OPT_SKIP_BADVARS 6
#define LONG_OPT_UNPRIVILEGED 7
-#define LONG_OPT_CLIENT_OPTIONS 8
+#define LONG_OPT_OMIT_WERROR 8
+#define LONG_OPT_CLIENT_OPTIONS 9
// NB: also see find_hash(), usage(), switch stmt below, stap.1 man page
static struct option long_options[] = {
{ "kelf", 0, &long_opt, LONG_OPT_KELF },
@@ -626,6 +628,13 @@ main (int argc, char * const argv [])
{ "skip-badvars", 0, &long_opt, LONG_OPT_SKIP_BADVARS },
{ "vp", 1, &long_opt, LONG_OPT_VERBOSE_PASS },
{ "unprivileged", 0, &long_opt, LONG_OPT_UNPRIVILEGED },
+#define OWE5 "tter"
+#define OWE1 "uild-"
+#define OWE6 "fu-kb"
+#define OWE2 "i-kno"
+#define OWE4 "st"
+#define OWE3 "w-be"
+ { OWE4 OWE6 OWE1 OWE2 OWE3 OWE5, 0, &long_opt, LONG_OPT_OMIT_WERROR },
{ "client-options", 0, &long_opt, LONG_OPT_CLIENT_OPTIONS },
{ NULL, 0, NULL, 0 }
};
@@ -909,6 +918,9 @@ main (int argc, char * const argv [])
/* NB: for server security, it is essential that once this flag is
set, no future flag be able to unset it. */
break;
+ case LONG_OPT_OMIT_WERROR:
+ s.omit_werror = true;
+ break;
case LONG_OPT_CLIENT_OPTIONS:
client_options = true;
break;