]> git.pld-linux.org Git - packages/rpm-build-tools.git/blame - builder.sh
- changed way making spec file for dumping to orginal metod by wiget.
[packages/rpm-build-tools.git] / builder.sh
CommitLineData
5a491465 1#!/bin/bash
2#
3
4PATH="/bin:/usr/bin:/usr/sbin:/sbin:/usr/X11R6/bin"
d287305c 5
bde1c404 6SPECFILE=""
d287305c 7BE_VERBOSE=""
8
9PATCHES=""
10SOURCES=""
11ICON=""
12PACKAGE_RELEASE=""
13PACKAGE_VERSION=""
14PACKAGE_NAME=""
5a491465 15
16usage()
17{
18echo "\
d287305c 19Usage: builder [-V] [--version] [-a] [--as_anon] [-b] [--build]
20 [-d <cvsroot>] [--cvsroot <cvsroot>] [-g] [--get] [-h] [--help]
21 [-l <logfile>] [--logtofile <logfile>] [-q] [--quiet]
22 [-v] [--verbose] <package>.spec
5a491465 23
24 -V, --version - output builder version
25 -a, --as_anon - get files via pserver as cvs@cvs.pld.org.pl,
26 -b, --build - get all files from CVS repo and build
27 package from <package>.spec,
28 -d, --cvsroot - setup \$CVSROOT,
bde1c404 29 -g, --get - get <package>.spec and all relayted files from
5a491465 30 CVS repo,
31 -h, --help - this message,
32 -l, --logtofile - log all to file,
33 -q, --quiet - be quiet,
34 -v, --verbose - be verbose,
35
36"
37}
38
59398507 39parse_spec()
40{
64e5b16a 41 sed -e 's#^%prep#%dump#' ${SPECFILE} > $SPECFILE.__
42
43 SOURCES="`rpm -bp --test $SPECFILE.__ 2>&1 | awk '/ SOURCE[0-9]+/ {print $3}'`"
44 PATCHES="`rpm -bp --test $SPECFILE.__ 2>&1 | awk '/ PATCH[0-9]+/ {print $3}'`"
45 ICON="`rpm -bp --test $SPECFILE.__ 2>&1 | awk '/^Icon:/ {print $2}' ${SPEC}`"
46 PACKAGE_NAME="`rpm -bp --test $SPECFILE.__ 2>&1 | awk '/ name/ {print $3}'`"
47 PACKAGE_VERSION="`rpm -bp --test $SPECFILE.__ 2>&1 | awk '/ PACKAGE_VERSION/ {print $3}'`"
48 PACKAGE_RELEASE="`rpm -bp --test $SPECFILE.__ 2>&1 | awk '/ PACKAGE_RELEASE/ {print $3}'`"
d287305c 49
50 rm -f $SPECFILE.__
51
52 if [ "$BE_VERBOSE" != "" ]; then
53 echo -e "- Sources :\n " $SOURCES
54 echo -e "- Patches :\n " $PATCHES
a3df415f 55 if [ "$ICON" != "" ]; then
56 echo -e "- Icon :\n " $ICON
57 else
58 echo -e "- Icon : *no package icon*"
59 fi
d287305c 60 echo -e "- Name : " $PACKAGE_NAME
61 echo -e "- Version : " $PACKAGE_VERSION
62 echo -e "- Release : " $PACKAGE_RELEASE
63 fi
59398507 64}
65
66get_spec()
67{
d287305c 68 echo "get_spec"
59398507 69}
70
71get_all_files()
72{
d287305c 73 echo "get_all_files"
59398507 74}
75
76build_package()
77{
d287305c 78 echo "build_package"
59398507 79}
80
5a491465 81while test $# -gt 0 ; do
82 case "${1}" in
bde1c404 83 -V | --version )
5a491465 84 shift ;;
bde1c404 85 -a | --as_anon )
5a491465 86 shift ;;
bde1c404 87 -b | --build )
5a491465 88 shift ;;
bde1c404 89 -d | --cvsroot )
5a491465 90 shift ;;
bde1c404 91 -g | --get )
92 COMMAND="get"; shift ;;
93 -h | --help )
94 COMMAND="usage"; shift ;;
5a491465 95 -l | --logtofile )
96 shift ;;
bde1c404 97 -q | --quiet )
98 shift ;;
99 -v | --verbose )
d287305c 100 BE_VERBOSE="1"; shift ;;
bde1c404 101 * )
59398507 102 SPECFILE="${1}"; shift ;;
5a491465 103 esac
104done
105
bde1c404 106case "$COMMAND" in
59398507 107 "build" )
108 if [ "$SPECFILE" != "" ]; then
109 get_spec;
110 parse_spec;
111 get_all_files;
112 build_package;
113 else
114 echo "ERROR: spec file name not specified.";
115 usage;
116 fi
117 ;;
bde1c404 118 "get" )
59398507 119 if [ "$SPECFILE" != "" ]; then
120 get_spec;
121 parse_spec;
122 get_all_files;
bde1c404 123 else
59398507 124 echo "ERROR: spec file name not specified.";
125 usage;
bde1c404 126 fi
127 ;;
128 "usage" )
129 usage;;
130esac
This page took 0.04902 seconds and 4 git commands to generate.