intel/genxml: drop sort_xml.sh and move the loop directly in gen_sort_tags.py
authorEric Engestrom <eric@engestrom.ch>
Fri, 5 Jun 2020 09:49:06 +0000 (11:49 +0200)
committerMarge Bot <eric+marge@anholt.net>
Fri, 5 Jun 2020 13:44:18 +0000 (13:44 +0000)
Signed-off-by: Eric Engestrom <eric@engestrom.ch>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5353>

src/intel/genxml/README
src/intel/genxml/gen_sort_tags.py [changed mode: 0644->0755]
src/intel/genxml/sort_xml.sh [deleted file]

index 11ac17ada3a3be454a2ce18cb782140d5e68b5a5..09a2adec9fcfca95ee807189eea747ba3cfbb461 100644 (file)
@@ -64,7 +64,7 @@ Keeping genxml files tidy :
    In order to spot differences easily between generations, we keep genxml files sorted.
    You can trigger the sort by running :
 
    In order to spot differences easily between generations, we keep genxml files sorted.
    You can trigger the sort by running :
 
-      $ cd src/intel/genxml; ./sort_xml.sh
+      $ cd src/intel/genxml; ./gen_sort_tags.py
 
    gen_sort_tags.py is the script that sorts genxml files using with
    the following rules :
 
    gen_sort_tags.py is the script that sorts genxml files using with
    the following rules :
old mode 100644 (file)
new mode 100755 (executable)
index 66b1011..8543dab
@@ -1,3 +1,4 @@
+#!/usr/bin/env python
 #encoding=utf-8
 #
 # Copyright © 2019 Intel Corporation
 #encoding=utf-8
 #
 # Copyright © 2019 Intel Corporation
@@ -25,8 +26,8 @@
 from __future__ import print_function
 from collections import OrderedDict
 import os
 from __future__ import print_function
 from collections import OrderedDict
 import os
+import pathlib
 import re
 import re
-import sys
 import xml.etree.cElementTree as et
 
 def get_filename(element):
 import xml.etree.cElementTree as et
 
 def get_filename(element):
@@ -125,12 +126,7 @@ def print_node(f, offset, node):
         f.write('/>\n')
 
 
         f.write('/>\n')
 
 
-def main():
-    if len(sys.argv) < 2:
-        print("No input xml file specified")
-        sys.exit(1)
-
-    filename = sys.argv[1]
+def process(filename):
     xml = et.parse(filename)
     genxml = xml.getroot()
 
     xml = et.parse(filename)
     genxml = xml.getroot()
 
@@ -169,9 +165,14 @@ def main():
 
     genxml[:] = enums + sorted_structs.values() + instructions + registers
 
 
     genxml[:] = enums + sorted_structs.values() + instructions + registers
 
-    print('<?xml version="1.0" ?>')
-    print_node(sys.stdout, 0, genxml)
+    with open(filename, 'w') as f:
+        f.write('<?xml version="1.0" ?>\n')
+        print_node(f, 0, genxml)
 
 
 if __name__ == '__main__':
 
 
 if __name__ == '__main__':
-    main()
+    folder = pathlib.Path('.')
+    for f in folder.glob('*.xml'):
+        print('Processing {}... '.format(f), end='', flush=True)
+        process(f)
+        print('done.')
diff --git a/src/intel/genxml/sort_xml.sh b/src/intel/genxml/sort_xml.sh
deleted file mode 100755 (executable)
index 4836274..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/bin/sh
-
-for i in ./*.xml; do
-    echo -n "Processing $i... "
-    python ./gen_sort_tags.py $i > $i.tmp
-    mv $i.tmp $i
-    echo "done."
-done