mirror of
https://github.com/NotImplementedLife/FSPDS.git
synced 2025-06-18 17:05:33 -04:00
added auto incremental version system
This commit is contained in:
parent
d1e5ecd0c2
commit
91cd4e334b
3
.gitignore
vendored
3
.gitignore
vendored
@ -1,3 +1,4 @@
|
|||||||
|
__pycache__/
|
||||||
.git/
|
.git/
|
||||||
arm7/build/
|
arm7/build/
|
||||||
arm9/build/
|
arm9/build/
|
||||||
@ -5,5 +6,5 @@ build/
|
|||||||
flipnotes-example/
|
flipnotes-example/
|
||||||
FSPDS.layout
|
FSPDS.layout
|
||||||
*.elf
|
*.elf
|
||||||
FSPDS.nds
|
*.nds
|
||||||
run.bat
|
run.bat
|
2
Makefile
2
Makefile
@ -10,6 +10,7 @@ include $(DEVKITARM)/ds_rules
|
|||||||
export GAME_TITLE := FSPDS
|
export GAME_TITLE := FSPDS
|
||||||
export GAME_ICON := $(CURDIR)/icon.bmp
|
export GAME_ICON := $(CURDIR)/icon.bmp
|
||||||
export TARGET := FSPDS
|
export TARGET := FSPDS
|
||||||
|
export NDS_FILE := $(TARGET)
|
||||||
|
|
||||||
|
|
||||||
.PHONY: arm7/$(TARGET).elf arm9/$(TARGET).elf
|
.PHONY: arm7/$(TARGET).elf arm9/$(TARGET).elf
|
||||||
@ -23,6 +24,7 @@ all: $(TARGET).nds
|
|||||||
$(TARGET).nds : arm7/$(TARGET).elf arm9/$(TARGET).elf
|
$(TARGET).nds : arm7/$(TARGET).elf arm9/$(TARGET).elf
|
||||||
@ndstool -7 arm7/$(TARGET).elf -9 arm9/$(TARGET).elf -b $(GAME_ICON) "$(GAME_TITLE)" -c $(TARGET).nds
|
@ndstool -7 arm7/$(TARGET).elf -9 arm9/$(TARGET).elf -b $(GAME_ICON) "$(GAME_TITLE)" -c $(TARGET).nds
|
||||||
@echo built ... $(notdir $@)
|
@echo built ... $(notdir $@)
|
||||||
|
mv $(TARGET).nds $(TARGET)-V${shell python build_counter.py}.nds
|
||||||
|
|
||||||
#---------------------------------------------------------------------------------
|
#---------------------------------------------------------------------------------
|
||||||
arm7/$(TARGET).elf:
|
arm7/$(TARGET).elf:
|
||||||
|
6
arm9/include/version.h
Normal file
6
arm9/include/version.h
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
#pragma once
|
||||||
|
|
||||||
|
extern const char BUILD_TYPE; //! 'D' = Debug, 'R' = Release
|
||||||
|
extern const u8 MAJOR;
|
||||||
|
extern const u8 MINOR;
|
||||||
|
extern const u32 BUILD;
|
6
arm9/source/build_counter.c
Normal file
6
arm9/source/build_counter.c
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
// This file was generated automatically. Do not modify it
|
||||||
|
#include "version.h"
|
||||||
|
const char BUILD_TYPE = 'D';
|
||||||
|
const u8 MAJOR = 0;
|
||||||
|
const u8 MINOR = 3;
|
||||||
|
const u32 BUILD = 40471012;
|
43
build_counter.py
Normal file
43
build_counter.py
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
#!/usr/bin/env python
|
||||||
|
|
||||||
|
from datetime import datetime
|
||||||
|
import sys
|
||||||
|
|
||||||
|
origin = datetime(2021, 1, 27)
|
||||||
|
now = datetime.now()
|
||||||
|
build_number = int((now - origin).total_seconds())
|
||||||
|
|
||||||
|
bc_src_string ='// This file was generated automatically. Do not modify it\n#include "version.h"\n'
|
||||||
|
|
||||||
|
from importlib.util import spec_from_loader, module_from_spec
|
||||||
|
from importlib.machinery import SourceFileLoader
|
||||||
|
|
||||||
|
spec = spec_from_loader("version", SourceFileLoader("version", "version.ini"))
|
||||||
|
version = module_from_spec(spec)
|
||||||
|
spec.loader.exec_module(version)
|
||||||
|
|
||||||
|
def get_book_variable_module_name(module_name):
|
||||||
|
module = globals().get(module_name, None)
|
||||||
|
book = {}
|
||||||
|
if module:
|
||||||
|
book = {key: value for key, value in module.__dict__.items() if not (key.startswith('__') or key.startswith('_'))}
|
||||||
|
return book
|
||||||
|
|
||||||
|
|
||||||
|
book = get_book_variable_module_name('version')
|
||||||
|
book['BUILD'] = build_number;
|
||||||
|
for key, value in book.items():
|
||||||
|
if isinstance(value, int):
|
||||||
|
if(value<256):
|
||||||
|
bc_src_string += "const u8 {:<10} = {:>12};\n".format(key,value)
|
||||||
|
else:
|
||||||
|
bc_src_string += "const u32 {:<10} = {:>12};\n".format(key, value)
|
||||||
|
elif isinstance(value, str):
|
||||||
|
if(len(value)==1):
|
||||||
|
bc_src_string += "const char {:<10} = {:>12};\n".format(key, f"'{value}'")
|
||||||
|
|
||||||
|
print(f"{book['MAJOR']}.{book['MINOR']}.{build_number}{book['BUILD_TYPE']}")
|
||||||
|
|
||||||
|
bc_src = open("arm9/source/build_counter.c", "w")
|
||||||
|
bc_src.write(bc_src_string)
|
||||||
|
bc_src.close()
|
3
version.ini
Normal file
3
version.ini
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
BUILD_TYPE = 'D'
|
||||||
|
MAJOR = 0
|
||||||
|
MINOR = 3
|
Loading…
Reference in New Issue
Block a user