generate_node_version_header.py 663 B

1234567891011121314151617181920212223242526
  1. #!/usr/bin/env python3
  2. import re
  3. import sys
  4. node_version_file = sys.argv[1]
  5. out_file = sys.argv[2]
  6. NMV = None
  7. if len(sys.argv) > 3:
  8. NMV = sys.argv[3]
  9. with open(node_version_file, 'r') as in_file, open(out_file, 'w') as out_file:
  10. changed = False
  11. contents = in_file.read()
  12. new_contents = re.sub(
  13. r'^#define NODE_MODULE_VERSION [0-9]+$',
  14. '#define NODE_MODULE_VERSION ' + NMV,
  15. contents,
  16. flags=re.MULTILINE)
  17. changed = contents != new_contents
  18. if not changed and NMV is not None:
  19. raise Exception("Did not modify the NMV from nodes value, this value MUST "
  20. "differ from node")
  21. out_file.writelines(new_contents)