Add commit info to version.h (#19542)
				
					
				
			* Initial commit * Fix import order * Fix deleted code instead of debug print line * Format * Update lib/python/qmk/cli/generate/version_h.py Co-authored-by: Ryan <fauxpark@gmail.com> * Renaming * Update lib/python/qmk/cli/generate/version_h.py Co-authored-by: Joel Challis <git@zvecr.com> * Update lib/python/qmk/git.py Co-authored-by: Joel Challis <git@zvecr.com> --------- Co-authored-by: Ryan <fauxpark@gmail.com> Co-authored-by: Joel Challis <git@zvecr.com>
This commit is contained in:
		
							parent
							
								
									53132ab9cf
								
							
						
					
					
						commit
						d55b07696b
					
				
					 2 changed files with 18 additions and 3 deletions
				
			
		|  | @ -6,7 +6,7 @@ from milc import cli | |||
| 
 | ||||
| from qmk.path import normpath | ||||
| from qmk.commands import dump_lines | ||||
| from qmk.git import git_get_version | ||||
| from qmk.git import git_get_qmk_hash, git_get_version, git_is_dirty | ||||
| from qmk.constants import GPL2_HEADER_C_LIKE, GENERATED_HEADER_C_LIKE | ||||
| 
 | ||||
| TIME_FMT = '%Y-%m-%d-%H:%M:%S' | ||||
|  | @ -29,23 +29,30 @@ def generate_version_h(cli): | |||
|         current_time = strftime(TIME_FMT) | ||||
| 
 | ||||
|     if cli.args.skip_git: | ||||
|         git_dirty = False | ||||
|         git_version = "NA" | ||||
|         git_qmk_hash = "NA" | ||||
|         chibios_version = "NA" | ||||
|         chibios_contrib_version = "NA" | ||||
|     else: | ||||
|         git_dirty = git_is_dirty() | ||||
|         git_version = git_get_version() or current_time | ||||
|         git_qmk_hash = git_get_qmk_hash() or "Unknown" | ||||
|         chibios_version = git_get_version("chibios", "os") or current_time | ||||
|         chibios_contrib_version = git_get_version("chibios-contrib", "os") or current_time | ||||
| 
 | ||||
|     # Build the version.h file. | ||||
|     version_h_lines = [GPL2_HEADER_C_LIKE, GENERATED_HEADER_C_LIKE, '#pragma once'] | ||||
| 
 | ||||
|     version_h_lines.append(f""" | ||||
|     version_h_lines.append( | ||||
|         f""" | ||||
| #define QMK_VERSION "{git_version}" | ||||
| #define QMK_BUILDDATE "{current_time}" | ||||
| #define QMK_GIT_HASH  "{git_qmk_hash}{'*' if git_dirty else ''}" | ||||
| #define CHIBIOS_VERSION "{chibios_version}" | ||||
| #define CHIBIOS_CONTRIB_VERSION "{chibios_contrib_version}" | ||||
| """) | ||||
| """ | ||||
|     ) | ||||
| 
 | ||||
|     # Show the results | ||||
|     dump_lines(cli.args.output, version_h_lines, cli.args.quiet) | ||||
|  |  | |||
|  | @ -136,3 +136,11 @@ def git_get_ignored_files(check_dir='.'): | |||
|     if invalid.returncode != 0: | ||||
|         return [] | ||||
|     return invalid.stdout.strip().splitlines() | ||||
| 
 | ||||
| 
 | ||||
| def git_get_qmk_hash(): | ||||
|     output = cli.run(['git', 'rev-parse', '--short', 'HEAD']) | ||||
|     if output.returncode != 0: | ||||
|         return None | ||||
| 
 | ||||
|     return output.stdout.strip() | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Pablo Martínez
						Pablo Martínez