author | laca |
Wed, 18 Jun 2008 11:50:08 +0000 | |
changeset 26 | b165cfa54af7 |
parent 23 | 6bb145f8bb70 |
child 31 | aed8653fb8d1 |
permissions | -rwxr-xr-x |
18 | 1 |
#!/bin/bash |
2 |
||
3 |
ALL_SPECS=" |
|
4 |
CBEant.spec |
|
5 |
CBEautoconf.spec |
|
6 |
CBEautomake.spec |
|
7 |
CBEbison.spec |
|
8 |
CBEcmake.spec |
|
9 |
CBEcoreutils.spec |
|
10 |
CBEcvs.spec |
|
11 |
CBEdiff.spec |
|
12 |
CBEflex.spec |
|
13 |
CBEgettext.spec |
|
14 |
CBEgnuawk.spec |
|
15 |
CBEgnused.spec |
|
16 |
CBElibtool.spec |
|
17 |
CBEm4.spec |
|
18 |
CBEmake.spec |
|
19 |
CBErsync.spec |
|
20 |
CBEsubversion.spec |
|
21 |
CBEyasm.spec |
|
22 |
" |
|
23 |
||
24 |
usage () { |
|
25 |
echo "Usage: $0 option" |
|
26 |
echo "Options:" |
|
27 |
echo " -s, --src make a source tarball (default: binary)" |
|
28 |
echo " -a arch, --arch arch make dist for arch, arch must be one of sparc or x86" |
|
29 |
exit 1 |
|
30 |
} |
|
31 |
||
32 |
mydir=$(cd $(dirname $0); pwd); |
|
33 |
tardir=${mydir}/tarballs |
|
34 |
the_cpu=`uname -p` |
|
35 |
if [ "x$the_cpu" != xsparc ]; then |
|
36 |
the_cpu=x86 |
|
37 |
fi |
|
38 |
dist_cpu=$the_cpu |
|
39 |
||
40 |
PKGBUILD_VERSION=`grep '^PKGBUILD_VERSION=' cbe-install | head -1 | cut -f2 -d=` |
|
41 |
||
42 |
DIST=bin |
|
43 |
||
44 |
case "$1" in |
|
45 |
-s|--src ) |
|
46 |
DIST=src |
|
47 |
;; |
|
48 |
-a|--arch ) |
|
49 |
shift |
|
50 |
case "$1" in |
|
51 |
sparc|x86) |
|
52 |
dist_cpu=$1 |
|
53 |
;; |
|
54 |
*) |
|
55 |
echo Error: argument to -a or --arch must be either sparc or x86 |
|
56 |
exit 1 |
|
57 |
;; |
|
58 |
esac |
|
59 |
;; |
|
60 |
*) |
|
61 |
usage |
|
62 |
;; |
|
63 |
esac |
|
64 |
||
65 |
pkgsdir=pkgs-${dist_cpu} |
|
66 |
||
67 |
if [ ! -f ${mydir}/CBE_VERSION ]; then |
|
68 |
echo "Run this script in the wells-cbe directory" |
|
69 |
exit 1 |
|
70 |
fi |
|
71 |
||
72 |
CBE_VERSION=`cat ${mydir}/CBE_VERSION` |
|
73 |
DATE=`date +%Y-%m-%d` |
|
74 |
ARCH=`uname -p` |
|
75 |
||
76 |
if [ $DIST = src ]; then |
|
77 |
CBE_TARBALL_NAME=desktop-cbe-src-${CBE_VERSION}.tar.bz2 |
|
78 |
else |
|
79 |
CBE_TARBALL_NAME=desktop-cbe-${CBE_VERSION}-${dist_cpu}.tar.bz2 |
|
80 |
fi |
|
81 |
||
82 |
DIST_SUBDIR=desktop-cbe-$CBE_VERSION |
|
83 |
||
26
b165cfa54af7
fix buglet where README is overwritten by the wrong one
laca
parents:
23
diff
changeset
|
84 |
COMMON_DIST_FILES="cbe-install cbe-remove .pkgtoolrc CBE_VERSION NEWS $ALL_SPECS CBEenv.spec ext-sources/env.sh ext-sources/env.csh ext-sources/ld-wrapper ext-sources/gendiff include/CBE.inc include/default-depend.inc" |
18 | 85 |
|
86 |
cd ${mydir} |
|
87 |
rm -rf $DIST_SUBDIR/* |
|
88 |
mkdir -p ${mydir}/$DIST_SUBDIR || exit 1 |
|
89 |
||
90 |
mkdir -p ${mydir}/$DIST_SUBDIR/ext-sources || exit 1 |
|
91 |
mkdir -p ${mydir}/$DIST_SUBDIR/include || exit 1 |
|
92 |
||
93 |
sed \ |
|
94 |
-e "s/@CBE_VERSION@/$CBE_VERSION/g" \ |
|
23 | 95 |
-e "s/@ARCH@/$ARCH/g" \ |
18 | 96 |
-e "s/@DATE@/$DATE/g" \ |
97 |
$mydir/CBE_README > $mydir/$DIST_SUBDIR/README || exit 1 |
|
98 |
||
99 |
for f in $COMMON_DIST_FILES; do |
|
100 |
cp $mydir/$f $mydir/$DIST_SUBDIR/$f || exit 1 |
|
101 |
done |
|
102 |
||
103 |
chmod +x ${mydir}/cbe-install || exit 1 |
|
104 |
chmod +x ${mydir}/cbe-remove || exit 1 |
|
105 |
||
106 |
if [ $DIST = src ]; then |
|
107 |
CBE_SRC_FILES="include/CBE.inc tarballs/pkgbuild-$PKGBUILD_VERSION.tar.bz2" |
|
108 |
mkdir -p ${mydir}/$DIST_SUBDIR/tarballs || exit 1 |
|
109 |
mkdir -p ${mydir}/$DIST_SUBDIR/patches || exit 1 |
|
110 |
for spec in $ALL_SPECS; do |
|
111 |
srcs=`spectool get_sources $spec` |
|
112 |
for src in $srcs; do |
|
113 |
src=`basename $src` |
|
114 |
test -f "$mydir/ext-sources/$src" && \ |
|
115 |
src=ext-sources/$src || \ |
|
116 |
src=tarballs/$src |
|
117 |
CBE_SRC_FILES="$CBE_SRC_FILES $src" |
|
118 |
done |
|
119 |
srcs=`spectool get_patches $spec` |
|
120 |
for src in $srcs; do |
|
121 |
src=patches/`basename $src` |
|
122 |
CBE_SRC_FILES="$CBE_SRC_FILES $src" |
|
123 |
done |
|
124 |
done |
|
125 |
for f in $CBE_SRC_FILES; do |
|
126 |
cp $mydir/$f $mydir/$DIST_SUBDIR/$f || exit 1 |
|
127 |
done |
|
128 |
else |
|
129 |
CBE_PKGS="$pkgsdir/SFpkgbuild" |
|
130 |
mkdir -p ${mydir}/$DIST_SUBDIR/$pkgsdir/5.10 || exit 1 |
|
131 |
for spec in $ALL_SPECS; do |
|
132 |
pkgs=`spectool get_packages $spec` |
|
133 |
for pkg in $pkgs; do |
|
134 |
CBE_PKGS="$CBE_PKGS $pkgsdir/$pkg" |
|
135 |
test -d $mydir/$pkgsdir/5.10/$pkg && \ |
|
136 |
CBE_PKGS="$CBE_PKGS $pkgsdir/5.10/$pkg" |
|
137 |
done |
|
138 |
done |
|
139 |
for pkg in $CBE_PKGS; do |
|
140 |
cp -pr $mydir/$pkg $mydir/$DIST_SUBDIR/$pkg || exit 1 |
|
141 |
done |
|
142 |
fi |
|
143 |
||
144 |
chmod -R a+rX ${mydir}/$DIST_SUBDIR || exit 1 |
|
145 |
chmod 555 $mydir/$DIST_SUBDIR/cbe-install $mydir/$DIST_SUBDIR/cbe-remove |
|
146 |
||
147 |
cd $mydir |
|
148 |
/bin/tar cvhf - $DIST_SUBDIR | bzip2 -9 \ |
|
149 |
> $CBE_TARBALL_NAME || exit 1 |
|
150 |
rm -rf $DIST_SUBDIR |