Shut up clang compiler warnings
authorPeter Hutterer <peter.hutterer@who-t.net>
Mon, 5 Jan 2015 23:04:18 +0000 (09:04 +1000)
committerPeter Hutterer <peter.hutterer@who-t.net>
Tue, 6 Jan 2015 22:33:10 +0000 (08:33 +1000)
clang looks at GCC pragmas, but doesn't understand -Woverride-init. Instead,
it uses -Winitializer-overrides.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: David Herrmann <dh.herrmann@gmail.com>
libevdev/make-event-names.py

index 980283f80cb6f19bc4699cbd4df35b9bb5236f17..835441e777555a176644b3e3f6aad14852444543 100755 (executable)
@@ -82,8 +82,13 @@ def print_map(bits):
        print("};")
        print("")
 
+       print("#if __clang__")
+       print("#pragma clang diagnostic push")
+       print("#pragma clang diagnostic ignored \"-Winitializer-overrides\"")
+       print("#else")
        print("#pragma GCC diagnostic push")
        print("#pragma GCC diagnostic ignored \"-Woverride-init\"")
+       print("#endif")
        print("static const int ev_max[EV_MAX + 1] = {")
        print(" [0 ... EV_MAX] = -1,")
        for prefix in prefixes:
@@ -91,7 +96,11 @@ def print_map(bits):
                        continue
                print(" [EV_%s] = %s_MAX," % (prefix[:-1], prefix[:-1]))
        print("};")
+       print("#if __clang__")
+       print("#pragma clang diagnostic pop /* \"-Winitializer-overrides\" */")
+       print("#else")
        print("#pragma GCC diagnostic pop /* \"-Woverride-init\" */")
+       print("#endif");
        print("")
 
 def print_python_map(bits):