From 425b462d361286822ee0ed7b5fe00881ba312ea3 Mon Sep 17 00:00:00 2001 From: vrouvrea Date: Fri, 5 Dec 2014 13:32:54 +0000 Subject: Moved into trunk git-svn-id: svn+ssh://scm.gforge.inria.fr/svnroot/gudhi/trunk@341 636b058d-ea47-450e-bf9e-a15bfbe3eedb --- scripts/generate_version.sh | 106 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 106 insertions(+) create mode 100644 scripts/generate_version.sh (limited to 'scripts') diff --git a/scripts/generate_version.sh b/scripts/generate_version.sh new file mode 100644 index 00000000..4b5d08f4 --- /dev/null +++ b/scripts/generate_version.sh @@ -0,0 +1,106 @@ +#!/bin/bash +#usage bash generate_version.sh : dont generate if svn st non empty +#usage bash generate_version.sh -f : generate even if svn is empty +#usage bash generate_version.sh -f DIR : generate even if svn is empty and save library in dir +# VERSION CHECK +ROOT_DIR=.. +VERSION_FILE="$ROOT_DIR/Version.txt" + +if [ ! -f $VERSION_FILE ]; then + echo "File not found! : $VERSION_FILE" + exit 1 +fi + +# SVN STATUS CHECK OR IF FORCED BY USER +if [ "$1" != "-f" ] +then + SVN_STATUS=`svn status $ROOT_DIR` + echo $SVN_STATUS +fi + + +TARGET_DIR="" +if [ "$2" != "-f" ] +then + TARGET_DIR=$2 + echo "Install folder : $TARGET_DIR" +fi + +if [ "$SVN_STATUS" != "" ] +then + echo "Svn status must be empty to create a version!" + exit 1 +fi + +# TEMPORARY FOLDER CREATION +VERSION_DATE=`date +"%Y-%m-%d-%H-%M-%S"` +GUDHI="_GUDHI_" +VERSION_REVISION=`cat $VERSION_FILE` +VERSION_DIR="$VERSION_DATE$GUDHI$VERSION_REVISION" +echo $VERSION_DIR +mkdir "$VERSION_DIR" + +# TOP LEVEL FILE COPY +cp $VERSION_FILE $VERSION_DIR +cp $ROOT_DIR/README $VERSION_DIR +cp $ROOT_DIR/Conventions.txt $VERSION_DIR +cp $ROOT_DIR/COPYING $VERSION_DIR +cp -R $ROOT_DIR/data $VERSION_DIR +cp $ROOT_DIR/src/CMakeLists.txt $VERSION_DIR + +# PACKAGE LEVEL COPY +PACKAGE_INC_DIR="/include" +PACKAGE_SRC_DIR="/source" +PACKAGE_EX_DIR="/example" +for package in `ls $ROOT_DIR/src/` +do + echo $package + if [ -d "$ROOT_DIR/src/$package" ] + then + if [ "$package" == "cmake" ] + then + # SPECIFIC FOR CMAKE MODULES + cp -R $ROOT_DIR/src/$package $VERSION_DIR + else + # PACKAGE COPY + if [ -d "$ROOT_DIR/src/$package$PACKAGE_INC_DIR" ] + then + if [ ! -d "$VERSION_DIR$PACKAGE_INC_DIR" ] + then + # MUST CREATE DIRECTORY ON FIRST LOOP + mkdir $VERSION_DIR$PACKAGE_INC_DIR + fi + cp -R $ROOT_DIR/src/$package$PACKAGE_INC_DIR/* $VERSION_DIR$PACKAGE_INC_DIR/ + fi + if [ -d "$ROOT_DIR/src/$package$PACKAGE_SRC_DIR" ] + then + if [ ! -d "$VERSION_DIR$PACKAGE_SRC_DIR" ] + then + # MUST CREATE DIRECTORY ON FIRST LOOP + mkdir $VERSION_DIR$PACKAGE_INC_DIR + fi + cp -R $ROOT_DIR/src/$package$PACKAGE_SRC_DIR/* $VERSION_DIR$PACKAGE_SRC_DIR/ + fi + if [ -d "$ROOT_DIR/src/$package$PACKAGE_EX_DIR" ] + then + mkdir -p $VERSION_DIR$PACKAGE_EX_DIR/$package + cp -R $ROOT_DIR/src/$package$PACKAGE_EX_DIR/* $VERSION_DIR$PACKAGE_EX_DIR/$package + fi + fi + fi +done + + +#INSTALL to some directory +if [ "$TARGET_DIR" != "" ]; then + echo "Install in dir $TARGET_DIR" + mv "$VERSION_DIR" "$TARGET_DIR" +else + # ZIP DIR AND REMOVE IT + tar -zcf "$VERSION_DIR.tar.gz" "$VERSION_DIR" + rm -rf "$VERSION_DIR" +fi + + + + -- cgit v1.2.3