# Maintainer (Parabola): Márcio Silva 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: