From c1d11b5b57b42e0221e63b5f15f08947496364cf Mon Sep 17 00:00:00 2001 From: Liu Aleaxander Date: Sat, 29 May 2010 13:53:23 +0800 Subject: [PATCH] Add release code So, we can now easily run 'make release' or './release.sh' to generate release packages. Signed-off-by: Liu Aleaxander --- Makefile | 6 ++---- release.sh | 38 ++++++++++++++++++++++++++++++++++++++ version | 1 + 3 files changed, 41 insertions(+), 4 deletions(-) create mode 100755 release.sh create mode 100644 version diff --git a/Makefile b/Makefile index 9ab1d73..fad4de6 100644 --- a/Makefile +++ b/Makefile @@ -44,10 +44,8 @@ kernel.img: ${KERNEL_OBJS} doc: (cd doc; make) -backup: clean - (cp thunix.img ./image) - (rm -f thunix.img) - (cd ..; tar -cf /media/Soft/thunix/thunix-0.2-backup.tar thunix) +release: clean + ./release bochs: bochs -qf bochsrc diff --git a/release.sh b/release.sh new file mode 100755 index 0000000..b78f85d --- /dev/null +++ b/release.sh @@ -0,0 +1,38 @@ +#!/bin/sh + +# +# make release package +# + +repo_dir=`pwd` +tmp_dir=`mktemp -d` + +if ! (cd $repo_dir; git diff >/dev/null 2>&1); then + echo "Please run this script inside the thunix git repo" 1>&2 + exit 1 +fi + +version=`cat version` + +function build_clean() +{ + make && make clean +} + + +( + cd $tmp_dir + git clone $repo_dir + echo -n "build for release... " + (cd ${repo_dir##*/}; build_clean >/dev/null 2>&1 && mv *.img image/) + echo "[ DONE ]" + echo -n "creating release tar package... " + tar --exclude-vcs -cjf thunix-$version.tar.bz2 thunix + tar --exclude-vcs -cf thunix-$version.tar.gz thunix + echo "[ DONE ]" +) + +rm -rf release && mkdir release 2>/dev/null +cp ${tmp_dir}/{*.bz2,*.gz} release/ +rm -rf $tmp_dir + diff --git a/version b/version new file mode 100644 index 0000000..3b04cfb --- /dev/null +++ b/version @@ -0,0 +1 @@ +0.2 -- 2.11.4.GIT