blob: f23f88ef3d42b45edc5ea5d60e334f631475cd2d (
plain)
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
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
|
# Maintainer (Parabola): Márcio Silva <coadde@lavabit.com>
pkgname=cluster-glue
_pkgname1=${pkgname::7}
_pkgname2=${pkgname:8}
_pkgname=${_pkgname1^}_${_pkgname2^}
_grpname=linux-ha
pkgver=1.0.11
pkgrel=9
pkgdesc='Set of libraries, tools and utilities suitable for the Heartbeat/Pacemaker cluster stack'
arch=(
i686
x86_64
mips64el
)
url=http://$_grpname.org/wiki/$_pkgname
license=(
GPL2
LGPL2.1
)
group=$_grpname
depends=(
curl
dbus-glib
glib2
libaio
libesmtp
libltdl
libnet
libxml2
net-snmp
openhpi
openipmi
python
util-linux
#vacm
)
optdepends=(
net-tools
openssh
)
makedepends=(
help2man
libxslt
lynx
net-tools
openssh
valgrind
w3m
)
options=(!libtool)
provides=(ha-$_pkgname2)
conflicts=ha-$_pkgname2
replaces=ha-$_pkgname2
install=$pkgname.install
source=http://hg.$_grpname.org/$_pkgname2/archive/$_pkgname2-$pkgver.tar.bz2
sha512sums=35ac8ac555c39f24c11e3a768cc50eba051fe617edf4cdc0429dac73f45a472f144cfe6ec5faff575606f2b04ff76a2f732556d848b61410c2683d93ba928413
prepare() {
export _CLUSTER_USER=hacluster
export _CLUSTER_GROUP=haclient
_DGID=666
_DUID=666
#verify the cluster user and group
if ! getent group $_CLUSTER_GROUP >/dev/null;then
msg 'BEFORE COMPILE THIS SOFTWARE YOU MUST CREATE A CLUSTER GROUP, EXECUTE AS ROOT:'
echo -e "# groupadd -r -g $_DGID $_CLUSTER_GROUP\n"
_EXITCODE=1
fi
if ! getent passwd $_CLUSTER_USER >/dev/null;then
msg 'BEFORE COMPILE THIS SOFTWARE YOU MUST CREATE A CLUSTER USER, EXECUTE AS ROOT:'
echo -e "# useradd -r -g $_CLUSTER_GROUP -u $_DUID -d /var/lib/heartbeat/cores/$_CLUSTER_USER -s /sbin/nologin -c \"cluster user\" $_CLUSTER_USER\n"
_EXITCODE=1
fi
if [[ $_EXITCODE -eq 1 ]] ;then
return 1
fi
cd $srcdir/Reusable-${_pkgname1^}-Components-$_pkgname2--$_pkgname2-$pkgver
sed -i 's|AM_CONFIG_HEADER|AC_CONFIG_HEADERS|;
s| -O0||;
s|AM_INIT_AUTOMAKE($PACKAGE_NAME, $PACKAGE_VERSION)|AM_INIT_AUTOMAKE|;
s|${localstatedir}/lock ${localstatedir}/spool/lock ${localstatedir}/spool/locks ${localstatedir}/lock|/run/lock|;
s|/sbin:/usr/sbin:/usr/local/sbin:/usr/local/bin|/usr/bin|;
' configure.ac
sed -i 's|INCLUDES|AM_CPPFLAGS|;
' $(grep -rl INCLUDES . | grep Makefile.am)
# fixing path
sed -i 's|bin/sh|usr/bin/bash|;
' $(grep -rl bin/sh .)
sed -i 's|usr/sbin|usr/bin|;
' $(grep -rl usr/bin .)
sed -i 's| /bin| /usr/bin|;
' $(grep -rl ' /bin' .)
sed -i 's| /sbin| /usr/bin|;
' $(grep -rl ' /sbin' .)
sed -i 's|/var/lock|/run/lock|;
' $(grep -rl /var/lock .)
sed -i 's|var/run|run|;
' $(grep -rl var/run)
# remove Open Source term
sed -i 's|Open Source / ||;
s|open source / ||;
s|Open Source|Free Software|;
s|open source|free software|;
' $(grep -ril 'open source')
sed -i 's|OpenSource / ||;
s|opensource / ||;
s|OpenSource|FreeSoftware|;
s|opensource|freesoftware|;
' $(grep -ril opensource)
# remove Linux term
sed -i '/, Linux/ s|Linux|GNU/Linux|;
/And Linux/ s|Linux|GNU/Linux|;
/and Linux/ s|Linux|GNU/Linux|;
/For Linux/ s|Linux|GNU/Linux|;
/for Linux/ s|Linux|GNU/Linux|;
/Like Linux/ s|Linux|GNU/Linux|;
/like Linux/ s|Linux|GNU/Linux|;
/Linux,/ s|Linux|GNU/Linux|;
/Linux and/ s|Linux|GNU/Linux|;
/Linux distribution/ s|Linux|GNU/Linux|;
/Linux machine/ s|Linux|GNU/Linux|;
/Linux operating/ s|Linux|GNU/Linux|;
/Linux OS/ s|Linux|GNU/Linux|;
/Linux specific/ s|Linux|GNU/Linux|;
/Linux system/ s|Linux|GNU/Linux|;
/Under Linux/ s|Linux|GNU/Linux|;
/under Linux/ s|Linux|GNU/Linux|;
/On Linux/ s|Linux|GNU/Linux|;
/on Linux/ s|Linux|GNU/Linux|;
/(e.g. Linux)/ s|Linux|GNU/Linux|;
/High-Availability Linux/ s|Linux|GNU/Linux|;
/sysDescr.0 = STRING: Linux/ s|Linux|GNU/Linux|;
/This is what the Linux/ s|Linux|GNU/Linux|;
s|GNU/GNU|GNU|;
s|GNU/Linux kernel|Linux kernel|;
s|GNU/Linux specific kernel|Linux specific kernel|;
' $(grep -rl Linux)
}
build() {
cd $srcdir/Reusable-${_pkgname1^}-Components-$_pkgname2--$_pkgname2-$pkgver
setarch $CARCH ./autogen.sh
setarch $CARCH ./configure --prefix=/usr\
--disable-ansi\
--disable-fatal-warnings\
--disable-static\
--enable-doc\
--enable-libnet\
--enable-upstart\
--libdir=/usr/lib\
--localstatedir=/var\
--sbindir=/usr/bin\
--sysconfdir=/etc\
--with-daemon-group=haclient\
--with-daemon-user=hacluster\
--with-ocf-root=/usr/lib/ocf
setarch $CARCH make
}
package() {
cd $srcdir/Reusable-${_pkgname1^}-Components-$_pkgname2--$_pkgname2-$pkgver
setarch $CARCH make DESTDIR=$pkgdir install
rm $pkgdir/etc/rc.d/logd && rmdir $pkgdir/etc{/rc.d,}
install -d $pkgdir/usr/lib/systemd/system
echo '[Unit]' > $pkgdir/usr/lib/systemd/system/ha_log.service
echo 'Description=Startup script logd service' >> $pkgdir/usr/lib/systemd/system/ha_log.service
echo 'Requires=network.target remote-fs.target' >> $pkgdir/usr/lib/systemd/system/ha_log.service
echo '' >> $pkgdir/usr/lib/systemd/system/ha_log.service
echo '[Service]' >> $pkgdir/usr/lib/systemd/system/ha_log.service
echo 'Type=forking' >> $pkgdir/usr/lib/systemd/system/ha_log.service
echo 'ExecStart=/usr/lib/heartbeat/ha_logd' >> $pkgdir/usr/lib/systemd/system/ha_log.service
echo '' >> $pkgdir/usr/lib/systemd/system/ha_log.service
echo '[Install]' >> $pkgdir/usr/lib/systemd/system/ha_log.service
echo 'WantedBy=multi-user.target' >> $pkgdir/usr/lib/systemd/system/ha_log.service
msg 'AFTER COMPILE THIS SOFTWARE YOU MUST DELETE A CLUSTER USER AND A CLUSTER GROUP, EXECUTE AS ROOT:'
echo -e "# userdel $_CLUSTER_USER"
echo -e "# groupdel $_CLUSTER_GROUP"
}
# vim:set ts=2 sw=2 et:
|