| #!/usr/bin/env python |
| |
| # |
| # specialize_node_d.py output_file src/node.d flavor arch |
| # |
| # Specialize node.d for given flavor (`freebsd`) and arch (`x64` or `ia32`) |
| # |
| |
| from __future__ import print_function |
| import re |
| import sys |
| |
| if len(sys.argv) != 5: |
| print("usage: specialize_node_d.py outfile src/node.d flavor arch") |
| sys.exit(2) |
| |
| outfile = open(sys.argv[1], 'w') |
| infile = open(sys.argv[2], 'r') |
| flavor = sys.argv[3] |
| arch = sys.argv[4] |
| |
| model = r'curpsinfo->pr_dmodel == PR_MODEL_ILP32' |
| |
| for line in infile: |
| if flavor == 'freebsd': |
| line = re.sub('procfs.d', 'psinfo.d', line) |
| if arch == 'x64': |
| line = re.sub(model, '0', line) |
| else: |
| line = re.sub(model, '1', line) |
| outfile.write(line) |