gen_cs_glue_version.py 993 B

1234567891011121314151617181920
  1. def generate_header(solution_dir, version_header_dst):
  2. import os
  3. latest_mtime = 0
  4. for root, dirs, files in os.walk(solution_dir, topdown=True):
  5. dirs[:] = [d for d in dirs if d not in ['Generated']] # Ignored generated files
  6. files = [f for f in files if f.endswith('.cs')]
  7. for file in files:
  8. filepath = os.path.join(root, file)
  9. mtime = os.path.getmtime(filepath)
  10. latest_mtime = mtime if mtime > latest_mtime else latest_mtime
  11. glue_version = int(latest_mtime) # The latest modified time will do for now
  12. with open(version_header_dst, 'w') as version_header:
  13. version_header.write('/* THIS FILE IS GENERATED DO NOT EDIT */\n')
  14. version_header.write('#ifndef CS_GLUE_VERSION_H\n')
  15. version_header.write('#define CS_GLUE_VERSION_H\n\n')
  16. version_header.write('#define CS_GLUE_VERSION UINT32_C(' + str(glue_version) + ')\n')
  17. version_header.write('\n#endif // CS_GLUE_VERSION_H\n')