diff options
-rw-r--r-- | src/build/Makefile | 6 | ||||
-rwxr-xr-x | src/build/updateBuildTag.py | 77 |
2 files changed, 78 insertions, 5 deletions
diff --git a/src/build/Makefile b/src/build/Makefile index 607ead7b..b639f31b 100644 --- a/src/build/Makefile +++ b/src/build/Makefile @@ -197,11 +197,7 @@ tar: tar install buildinfo: $(P9_XIP_TOOL) $(IMG_DIR)/$(IMAGE_SEEPROM_NAME).bin - $(P9_XIP_TOOL) $(IMG_DIR)/$(IMAGE_SEEPROM_NAME).bin set build_date `date +%Y%m%d` - $(P9_XIP_TOOL) $(IMG_DIR)/$(IMAGE_SEEPROM_NAME).bin set build_time `date +%H%M` - $(P9_XIP_TOOL) $(IMG_DIR)/$(IMAGE_SEEPROM_NAME).bin set build_user `id -un` - $(P9_XIP_TOOL) $(IMG_DIR)/$(IMAGE_SEEPROM_NAME).bin set build_host `hostname` - $(P9_XIP_TOOL) $(IMG_DIR)/$(IMAGE_SEEPROM_NAME).bin set build_tag `git log | grep "Release notes for sbe"| awk '{ print $$NF }' ` |true + ./updateBuildTag.py $(P9_XIP_TOOL) $(IMG_DIR) $(IMAGE_SEEPROM_NAME) add_LoaderAddr: $(P9_XIP_TOOL) $(IMG_DIR)/$(IMAGE_SEEPROM_NAME).out $(P9_XIP_TOOL) $(IMG_DIR)/$(IMAGE_SEEPROM_NAME).bin set L1_LoaderAddr 0x`nm $(IMG_DIR)/$(IMAGE_SEEPROM_NAME).out | grep __l1Loader | cut -f 1 -d " "` diff --git a/src/build/updateBuildTag.py b/src/build/updateBuildTag.py new file mode 100755 index 00000000..6a49c8ce --- /dev/null +++ b/src/build/updateBuildTag.py @@ -0,0 +1,77 @@ +#!/usr/bin/python +# IBM_PROLOG_BEGIN_TAG +# This is an automatically generated prolog. +# +# $Source: src/build/updateBuildTag.py $ +# +# OpenPOWER sbe Project +# +# Contributors Listed Below - COPYRIGHT 2017 +# [+] International Business Machines Corp. +# +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. See the License for the specific language governing +# permissions and limitations under the License. +# +# IBM_PROLOG_END_TAG + +import os +import sys +import subprocess +import socket +from datetime import datetime + +# Update the build tag/time/data/user/host in the +# sbe_seeprom_DD1.bin/the sbe_seeprom_DD2.bin binary image +def updateBuildTag(argv): + try: + xip_tool = argv[1] + image_dir = argv[2] + seeprom_name = argv[3] + except: + print "Missing Xip Tool Path/Image Directory/Seeprom Binary Name" + exit(-1) + + # Commandline cmds getting formed here + cmd_basic = xip_tool+" "+image_dir+"/"+seeprom_name+".bin" + cmd_build_tag = cmd_basic+" set build_tag " + cmd_build_date = cmd_basic+" set build_date " + cmd_build_time = cmd_basic+" set build_time " + cmd_build_user = cmd_basic+" set build_user " + cmd_build_host = cmd_basic+" set build_host " + + tag_exist_cmd = "git log | grep \"Release notes for sbe\"| awk '{ print $NF }'" + proc = subprocess.Popen(tag_exist_cmd, shell=True, stdout=subprocess.PIPE) + build_tag = proc.stdout.read() + if ( build_tag ): + cmd_build_tag = cmd_build_tag+" "+build_tag + + else: + commit_id_cmd = "git log |grep commit -m1 |awk '{ print $NF }' |awk '{print substr ($0, 0, 17)}'" + proc = subprocess.Popen(commit_id_cmd, shell=True, stdout=subprocess.PIPE) + commit_id = proc.stdout.read() + cmd_build_tag = cmd_build_tag+" "+commit_id + + proc = subprocess.Popen(cmd_build_tag, shell=True, stdout=subprocess.PIPE) + cmd_build_date = cmd_build_date+" "+datetime.now().strftime('%Y%m%d') + proc = subprocess.Popen(cmd_build_date, shell=True, stdout=subprocess.PIPE) + cmd_build_time = cmd_build_time+" "+datetime.now().strftime('%H%M') + proc = subprocess.Popen(cmd_build_time, shell=True, stdout=subprocess.PIPE) + cmd_temp = "id -un" + proc = subprocess.Popen(cmd_temp, shell=True, stdout=subprocess.PIPE) + cmd_build_user = cmd_build_user+" "+proc.stdout.read() + proc = subprocess.Popen(cmd_build_user, shell=True, stdout=subprocess.PIPE) + cmd_build_host = cmd_build_host+" "+socket.gethostname() + proc = subprocess.Popen(cmd_build_host, shell=True, stdout=subprocess.PIPE) + +updateBuildTag(sys.argv) + |