#!/bin/sh
# Set initial variables:
CWD=`pwd`
if [ "$TMP" = "" ]; then
  TMP=/tmp/xfs-sources
fi
if [ ! -d $TMP ]; then
  mkdir -p $TMP
fi
PKG=$TMP/package-xfsprogs

# There are dependencies within this package (like attr must be
# built and installed before other things can build, so we're
# moving it from a .SlackBuild to a .build to ease maintainance.
# Use slacktrack to create a package.

# To anyone who comes here after me -- sorry for the mess.
# I did what I could.  :-)

VATTR=2.4.16
VXFSPROGS=2.6.13
VDMAPI=2.2.0
VACL=2.2.23
VXFSDUMP=2.2.21

VERSION=${VXFSPROGS}
ARCH=${ARCH:-i486}
BUILD=1
export OPTIMIZER=-O
export DEBUG=-DNDEBUG

# Lots of broken code here...

cd $TMP
rm -rf attr-$VATTR
tar xzf $CWD/attr-$VATTR.src.tar.gz
cd attr-$VATTR
make
echo "check $TMP/attr-$VATTR/Makefile for DESTDIR"
make install DESTDIR=$PKG
make install-dev DESTDIR=$PKG
make install-lib DESTDIR=$PKG
rm -rf $PKG/usr/doc/attr-$VATTR
mv $PKG/usr/doc/attr $PKG/usr/doc/attr-$VATTR

cd $TMP
rm -rf xfsprogs-$VXFSPROGS
tar xzf $CWD/xfsprogs-$VXFSPROGS.src.tar.gz
cd xfsprogs-$VXFSPROGS
make
echo "check $TMP/xfsprogs-$VXFSPROGS/Makefile for DESTDIR"
make install DESTDIR=$PKG
make install-dev DESTDIR=$PKG
make install-lib DESTDIR=$PKG
rm -rf $PKG/usr/doc/xfsprogs-$VXFSPROGS
mv $PKG/usr/doc/xfsprogs $PKG/usr/doc/xfsprogs-$VXFSPROGS

cd $TMP
rm -rf dmapi-$VDMAPI
tar xzf $CWD/dmapi-$VDMAPI.src.tar.gz
cd dmapi-$VDMAPI
make
echo "check $TMP/dmapi-$VDMAPI/Makefile for DESTDIR"
make install DESTDIR=$PKG
make install-dev DESTDIR=$PKG
make install-lib DESTDIR=$PKG
rm -rf $PKG/usr/doc/dmapi-$VDMAPI
mv $PKG/usr/doc/dmapi $PKG/usr/doc/dmapi-$VDMAPI

cd $TMP
rm -rf acl-$VACL
tar xzf $CWD/acl-$VACL.src.tar.gz
cd acl-$VACL
make
echo "check $TMP/acl-$VACL/Makefile for DESTDIR"
make install DESTDIR=$PKG
make install-lib DESTDIR=$PKG
rm -rf $PKG/usr/doc/acl-$VACL
mv $PKG/usr/doc/acl $PKG/usr/doc/acl-$VACL

cd $TMP
rm -rf xfsdump-$VXFSDUMP
tar xzf $CWD/xfsdump-$VXFSDUMP.src.tar.gz
cd xfsdump-$VXFSDUMP
make
echo "check $TMP/xfsdump-$VXFSDUMP/Makefile for DESTDIR"
make install DESTDIR=$PKG
rm -rf $PKG/usr/doc/xfsdump-$VXFSDUMP
mv $PKG/usr/doc/xfsdump $PKG/usr/doc/xfsdump-$VXFSDUMP

mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc

## Move these to /sbin:
mv $PKG/bin/fsck.xfs $PKG/sbin/fsck.xfs
mv $PKG/bin/mkfs.xfs $PKG/sbin/mkfs.xfs
mv $PKG/bin/xfs_repair $PKG/sbin/xfs_repair

# Fix very sloppy installation.  I'd have preferred only static libraries
# for this, but apparently that ./configure option is broken.
rm -f $PKG/lib/lib{attr,dm,handle}.{a,la}
chmod 755 $PKG/lib/lib{acl,attr,dm,handle}.*
( cd $PKG/usr/lib
  rm -f lib{attr,dm,handle}.so
  ln -sf /lib/libattr.so.1 libattr.so
  ln -sf /lib/libdm.so.0 libdm.so
  ln -sf /lib/libhandle.so.1 libhandle.so
)

# Build the package:
cd $PKG
makepkg -l y -c n ../xfsprogs-$VERSION-$ARCH-$BUILD.tgz

# Clean up the extra stuff:
if [ "$1" = "--cleanup" ]; then
  cd $CWD
  rm -rf attr-$VATTR
  rm -rf xfsprogs-$VXFSPROGS
  rm -rf dmapi-$VDMAPI
  rm -rf acl-$VACL
  rm -rf xfsdump-$VXFSDUMP
  rm -rf $PKG
fi

