فهرست منبع

add make release

balbekova 6 سال پیش
والد
کامیت
0b24613fbd
3فایلهای تغییر یافته به همراه46 افزوده شده و 1 حذف شده
  1. 8 0
      Makefile
  2. 15 1
      modules/Makefile
  3. 23 0
      projects/gcc/tools/version.sh

+ 8 - 0
Makefile

@@ -57,4 +57,12 @@ fullflash_6708:
 	sleep 1
 	st-flash --reset write output/stm32bt6708.bin 0x8020000	
 
+release_6702:
+	$(MAKE) -C modules HARDWARE=bt6702 VERBOSE=1 DEBUG=0 PRINTF=custom MAC=EC-4C-4D-00-80-0A release
+	
+release_6706:
+	$(MAKE) -C modules HARDWARE=bt6706 VERBOSE=1 DEBUG=0 PRINTF=custom MAC=EC-4C-4D-00-80-0A release
+
+release_6708:
+	$(MAKE) -C modules HARDWARE=bt6708 VERBOSE=1 DEBUG=0 PRINTF=custom MAC=EC-4C-4D-00-80-0A release
 

+ 15 - 1
modules/Makefile

@@ -189,6 +189,10 @@ endif
 
 $(FSDATA_DIR)/fsdata.c: $(WUI_DIR)/*
 	@../docs/makefsdata.pl $(FSDATA_DIR) $(WUI_DIR)
+	
+ARTIFACTS_PATH := ~/Releases/$(HARDWARE)
+RELEASE_VERSION := $(shell ../projects/gcc/tools/version.sh $(HARDWARE) $(INCLUDES))
+RELEASE_PATH := $(ARTIFACTS_PATH)/$(RELEASE_VERSION)
 
 prebuild: $(FSDATA_DIR)/fsdata.c
 	@echo "Hardware version: $(HARDWARE)"
@@ -200,4 +204,14 @@ postbuild: $(BUILDDIR)/$(TARGET).bin
 	@cp $(BUILDDIR)/$(TARGET).bin $(OUTPUTDIR)/$(FW_NAME).bin
 	@$(BUILDDIR)/../../tools/cortex_crc $(OUTPUTDIR)/$(FW_NAME).bin $(FW_FLASH_START) $(FW_FLASH_CRC)
 	
-	
+release:
+	@echo "FW version: $(RELEASE_VERSION)"
+	@mkdir -p $(RELEASE_PATH)
+	@cp $(OUTPUTDIR)/iap.bin $(RELEASE_PATH)/bl_$(HARDWARE).bin
+	@cp $(OUTPUTDIR)/$(TARGET).bin $(RELEASE_PATH)/IBP.bin
+	@cp ../docs/$(HARDWARE)/*.MIB $(RELEASE_PATH)
+	@vim -c "s/^/# $(RELEASE_VERSION)\r### Добавлено\r\r### Изменено\r\r### Исправлено\r\r\r\r" -c "set noswapfile" -c "3" ../docs/$(HARDWARE)/Changelog.md
+	@cp ../docs/$(HARDWARE)/Changelog.md $(RELEASE_PATH)
+	@echo "Compressing..."
+	@cd $(RELEASE_PATH) && zip $(RELEASE_VERSION).zip IBP.bin *.MIB Changelog.md
+	@echo "Done: $(RELEASE_PATH)/$(RELEASE_VERSION).zip"	

+ 23 - 0
projects/gcc/tools/version.sh

@@ -0,0 +1,23 @@
+#!/bin/bash
+
+INCLUDES=$2
+BIN=tmp
+
+
+if [ "$1" = "bt6702" ];
+then
+SRC=$'#define HARDWARE_BT6702 1\r\n#include <stdio.h>\r\n#include "common_config.h"\r\n'
+elif [ "$1" = "bt6706" ];
+then
+SRC=$'#define HARDWARE_BT6706 1\r\n#include <stdio.h>\r\n#include "common_config.h"\r\n'
+elif [ "$1" = "bt6708" ];
+then
+SRC=$'#define HARDWARE_BT6708 1\r\n#include <stdio.h>\r\n#include "common_config.h"\r\n'
+fi
+SRC+=$'int main(int argc, char *argv[]) {printf("%s", VERSION);}'
+echo "$SRC" > $BIN.c
+
+gcc -w $INCLUDES $BIN.c -o $BIN && chmod +x $BIN && VERSION=$(./$BIN)
+rm $BIN $BIN.c
+
+echo $VERSION