#!/bin/sh # Built on TCL v2.10 # Required extensions: # compiletc # base-dev # binutils # bison # diffutils # file # findutils # flex # gawk # gcc # gcc-lib # gperf # grep # m4 # make # patch # pkg-config # sed # squashfs-tools-4.0 # openssl-0.9.8 # openssl-0.9.8-dev export CFLAGS="-march=i486 -mtune=i686 -Os -pipe" export CXXFLAGS=$CFLAGS" -fno-exceptions -fno-rtti" export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:/usr/lib/pkgconfig export EXTNAME="vsftpd" export VER="-2.2.2" export DESTDIR=`pwd`/$EXTNAME tar -zxf $EXTNAME$VER.tar.gz cd $EXTNAME$VER # change some defaults to be more compatible with TC sed -i 's!etc!usr/local/etc!' defs.h sed -i "s!-O2!$CFLAGS!" Makefile sed -i 's!/usr!$(DESTDIR)/usr!' Makefile sed -i 's!/etc!$(DESTDIR)/usr/local/etc!' Makefile sed -i 's!usr/share/empty!usr/local/share/empty!' tunables.c sed -i 's!etc!usr/local/etc!' tunables.c sed -i 's!usr/share!usr/local/etc!' tunables.c # bug in source, need to make these directories to avoid errors, does not install to prefix unless these are present mkdir -p $DESTDIR/usr/local/man/man8 $DESTDIR/usr/local/man/man5 $DESTDIR/usr/local/sbin $DESTDIR/usr/local/etc $DESTDIR/usr/local/tce.installed $DESTDIR/usr/local/share/empty make && make install cp vsftpd.conf $DESTDIR/usr/local/etc/vsftpd.conf.orig cd $DESTDIR sudo chown root:root usr/local/etc/vsftpd.conf.orig strip --strip-unneeded usr/local/sbin/* rm -rf usr/local/man echo "#!/bin/sh [ ! -e /usr/local/etc/vsftpd.conf ] && cp -p /usr/local/etc/vsftpd.conf.orig /usr/local/etc/vsftpd.conf" > usr/local/tce.installed/$EXTNAME sudo chown root:root usr/local/* sudo chmod -R 775 usr/local/tce.installed sudo chown -R root:staff usr/local/tce.installed find usr -not -type d > ../$EXTNAME.tcz.list echo "usr/local/share/empty" >> ../$EXTNAME.tcz.list cd .. mksquashfs $EXTNAME $EXTNAME.tcz -noappend md5sum $EXTNAME.tcz > $EXTNAME.tcz.md5.txt sudo rm -rf $EXTNAME # Build again for SSL support cd $EXTNAME$VER sed -i 's!#undef VSF_BUILD_SSL!#define VSF_BUILD_SSL!' builddefs.h make clean # bug in source, need to make these directories to avoid errors, does not install to prefix unless these are present mkdir -p $DESTDIR/usr/local/tce.installed $DESTDIR/usr/local/man/man8 $DESTDIR/usr/local/man/man5 $DESTDIR/usr/local/sbin $DESTDIR/usr/local/etc $DESTDIR/usr/local/share/empty make && make install cp vsftpd.conf $DESTDIR/usr/local/etc/vsftpd.conf.orig cd $DESTDIR strip --strip-unneeded usr/local/sbin/* sudo chown root:staff usr/local/etc/vsftpd.conf.orig rm -rf usr/local/man echo "#!/bin/sh [ ! -e /usr/local/etc/vsftpd.conf ] && cp -p /usr/local/etc/vsftpd.conf.orig /usr/local/etc/vsftpd.conf" > usr/local/tce.installed/$EXTNAME-ssl sudo chown root:root usr/local/* sudo chmod -R 775 usr/local/tce.installed sudo chown -R root:staff usr/local/tce.installed find usr -not -type d > ../$EXTNAME-ssl.tcz.list echo "usr/local/share/empty" >> ../$EXTNAME-ssl.tcz.list cd .. mksquashfs $EXTNAME $EXTNAME-ssl.tcz -noappend md5sum $EXTNAME-ssl.tcz > $EXTNAME-ssl.tcz.md5.txt #sudo rm -rf $EXTNAME $EXTNAME$VER