Overview
Comment:Added option to generate .deb package from local directory source.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | origin/master | trunk
Files: files | file ages | folders
SHA3-256: 1a75bd73027f5b6198dbaec8974dfc474b8913739ac924cf7a6c88db6eddfbfc
User & Date: geraint@users.sourceforge.net on 2002-09-21 14:02:55
Other Links: branch diff | manifest | tags
Context
2002-09-21
18:15:53
Correctly installs info documentation. check-in: 0d2df20be8 user: geraint@users.sourceforge.net tags: origin/master, trunk
14:02:55
Added option to generate .deb package from local directory source. check-in: 1a75bd7302 user: geraint@users.sourceforge.net tags: origin/master, trunk
00:30:48
Script to automate the production of a .deb package from the cvs sources. check-in: b4b8cf85cc user: geraint@users.sourceforge.net tags: origin/master, trunk
Changes

Modified mttroot/mtt/bin/mtt_cvs2deb from [2b957fe7a8] to [5b212d2212].

1
2
3


























4
5
6
7
8
9
10
11




12


13
14


15
16
17
18


19


20























21
22


23
24
25

26






27
28
29
30
31
32


33
34
35
36
37
38
39


40
41
42


#! /bin/sh

# Script to create a .deb package from the current cvs sources.



























# should be root for some of these commands
if [ ! `whoami` = "root" ]; then
    echo root password required
    exec su -p -c "$0 $*"
    exit 1	# if here, su failed
fi





if [ $# -gt 0 ]; then


    version=$1
    text="New release."


else 
    current_version=`mtt --version | gawk '{print $3}'`
    date=`date --iso-8601 | sed 's/\-/./g'`
    version="$current_version.$date"


    text="Snapshot of sources from CVS."


fi
























topdir=`pwd`


tmpdir=`mktemp -d mtt_cvs2deb.tmp.XXXXXXXXXX`
if [ ! -d $tmpdir ]; then
    echo "error: cannot create temporary directory - aborting!"

    exit 1






fi
cd $tmpdir
cvs -z3 -d:pserver:anonymous@cvs.mtt.sf.net:/cvsroot/mtt co mttroot
cd mttroot
tar -czf mtt-${version}.tar.gz mtt/
cd mtt


echo "A \"cannot create diff\" error in the next few lines is probably harmless"
uupdate -u mtt-${version}.tar.gz
cd ../mtt-${version}/debian
dch -v ${version} ${text}
cd ..
dpkg-buildpackage -rfakeroot
cd ..


cp mtt*.deb $topdir/
cd $topdir
rm -r $tmpdir





>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>





|


>
>
>
>
|
>
>
|
|
>
>
|
<
<
<
>
>
|
>
>
|
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>


>
>

|
|
>
|
>
>
>
>
>
>

|
|



>
>
|


|



>
>
|
|
|
>
>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49



50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
#! /bin/sh

# Script to create a .deb package from the current cvs sources.

usage ()
{
    cat <<EOF

usage: $0 [options]

options:
	-d /path/to/mttroot
		Build package from local directory /path/to/mttroot instead of sourceforge CVS.

	-l changelog text
		Write changelog text to changelog file
		Note: this must be the last option given.

	-v #.#
		Use version #.# instead of the date to label the .deb

EOF
}

error ()
{
    echo $0: error: ${1:-"unknown error"} - aborting.
    exit 1
}

# should be root for some of these commands
if [ ! `whoami` = "root" ]; then
    echo root password required
    exec su -p -c "$0 $*"
    error "root authorisation failed"
fi

# default switches
default_sources="sourceforge"
default_logtext="snapshot from ${default_sources}."
default_version=`date --iso-8601 | sed 's/\-/./g'`

sources=${default_sources}
logtext=${default_logtext}
version=${default_version}

# look for command line arguments
while [ -n "`echo $1 | grep '^-'`" ]; do
    case $1 in



	-d) # package directory instead of cvs sources
	    # should be the path to the mttroot directory
	    sources=$2
	    if [ ! "`basename ${sources}`" = "mttroot" ]; then
		error "directory ${sources} is not location of mttroot"
	    fi
	    if [ "${logtext}" = "${default_logtext}" ]; then
		logtext="snapshot from local sources (${sources})"
	    fi
	    echo "Using source directory: ${sources}"
	    shift ;;	
	-h)
	    usage
	    exit 0 ;;	
	-l) # specify changelog text
	    shift
	    logtext="$*"
	    echo "Using changelog text: ${logtext}"
	    shift ;;
	-v) # specify version
	    version=$2
	    echo "Using version number: ${version}"
	    shift ;;
	*)
	    usage
	    error "unknown option $1" ;;	    
    esac
    shift
done

topdir=`pwd`

# create working directory
tmpdir=`mktemp -d mtt_cvs2deb.tmp.XXXXXXXXXX`
if [ ! -d ${tmpdir} ]; then
    error "cannot create temporary directory"
fi

# copy sources to working directory
cd ${tmpdir}
if [ "${sources}" = "${default_sources}" ]; then
    cvs -z3 -d:pserver:anonymous@cvs.mtt.sf.net:/cvsroot/mtt co mttroot
else
    cp -a ${sources} .
fi

# generate tarball of sources
cd mttroot
tar -czf mtt-${version}.tar.gz mtt/
cd mtt

# create .deb
echo "$0: information: a \"Could not find diffs\" error in the next few lines is probably harmless"
uupdate -u mtt-${version}.tar.gz
cd ../mtt-${version}/debian
dch -v ${version} ${logtext}
cd ..
dpkg-buildpackage -rfakeroot
cd ..

# clean up
cp mtt*.deb ${topdir}/
cd ${topdir}
rm -r ${tmpdir}

exit 0


MTT: Model Transformation Tools
GitHub | SourceHut | Sourceforge | Fossil RSS ]