Python autotool to print socket constants
authorJose A. Lopes <jabolopes@google.com>
Tue, 5 Nov 2013 19:28:08 +0000 (20:28 +0100)
committerJose A. Lopes <jabolopes@google.com>
Fri, 8 Nov 2013 16:57:07 +0000 (17:57 +0100)
Add Python script to autotools which prints socket related constants.
These constants are a transitional solution for eliminating the Python
to Haskell constant generation given that the final solution will
require a change in the configuration and, therefore, postponed to
2.11.

Signed-off-by: Jose A. Lopes <jabolopes@google.com>
Reviewed-by: Klaus Aehlig <aehlig@google.com>

Makefile.am
autotools/print-py-constants [new file with mode: 0755]

index a41c439..85739da 100644 (file)
@@ -1136,6 +1136,7 @@ EXTRA_DIST = \
        autotools/convert-constants \
        autotools/docpp \
        autotools/gen-py-coverage \
+       autotools/print-py-constants \
        autotools/sphinx-wrapper \
        autotools/testrunner \
        autotools/wrong-hardcoded-paths \
diff --git a/autotools/print-py-constants b/autotools/print-py-constants
new file mode 100755 (executable)
index 0000000..5c959ce
--- /dev/null
@@ -0,0 +1,43 @@
+#!/usr/bin/python
+#
+
+# Copyright (C) 2013 Google Inc.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+# 02110-1301, USA.
+
+"""Script for printing Python constants related to sockets.
+
+These constants are the remnants of the Haskell to Python constant
+generation.  This solution is transitional until Ganeti 2.11 because
+the solution for eliminating completely the Python to Haskell
+conversion requires updating the configuration file.
+
+"""
+
+import socket
+import sys
+
+
+def main():
+  if len(sys.argv) > 1:
+    if sys.argv[1] == "AF_INET4":
+      print "%s" % socket.AF_INET
+    elif sys.argv[1] == "AF_INET6":
+      print "%s" % socket.AF_INET6
+
+
+if __name__ == "__main__":
+  main()