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: 993b274293d2826fb3c288411e571f55c5b864aec93e6716d22c8616fe225905
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: aa617baddf user: geraint@users.sourceforge.net tags: origin/master, trunk
14:02:55
Added option to generate .deb package from local directory source. check-in: 993b274293 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: d73d56666e 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





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 $*"
    exit 1	# if here, su failed
    error "root authorisation failed"
fi

# default switches
default_sources="sourceforge"
default_logtext="snapshot from ${default_sources}."
default_version=`date --iso-8601 | sed 's/\-/./g'`
if [ $# -gt 0 ]; then
    version=$1
    text="New release."
else 

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

# look for command line arguments
while [ -n "`echo $1 | grep '^-'`" ]; do
    case $1 in
    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
	-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
    echo "error: cannot create temporary directory - aborting!"
    exit 1
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
cd $tmpdir
cvs -z3 -d:pserver:anonymous@cvs.mtt.sf.net:/cvsroot/mtt co mttroot

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

# create .deb
echo "A \"cannot create diff\" error in the next few lines is probably harmless"
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} ${text}
dch -v ${version} ${logtext}
cd ..
dpkg-buildpackage -rfakeroot
cd ..

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

exit 0


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