#!/bin/bash
# Script to make a portmap .tce extension from source




NAME=portmap
VERSION=6.0
DOWNLOAD=http://slackware.mirrors.tds.net/pub/slackware/slackware-current/source/n/portmap
SOURCE=portmap-6.0.tar.bz2
SOURCE1=portmap.lwrap.needs.lnsl.diff.gz
MD5SUM=d375c451209e6b6cbadeafe486e40104
MD5SUM1=377820f7e5de302829b0fcdfa648917a 
TMPDIR=/usr/local/"$NAME"21654
PKG="$TMPDIR"/pkg
DEV="$TMPDIR"/dev
LIST="$TMPDIR"/"$NAME".list
LIST1="$TMPDIR"/"$NAME".list1
SRCDIR=/tmp


download() {
	cd "$SRCDIR"
	if [ -e "$SOURCE" ]; then
	  if [ $(md5sum "$SOURCE" | cut -c1-32) != "$MD5SUM" ]; then
	    rm "$SOURCE"
	  fi
	fi
	if [ ! -e "$SOURCE" ]; then
	  wget "$DOWNLOAD"/"$SOURCE"
	fi
	if [ $(md5sum "$SOURCE" | cut -c1-32) = "$MD5SUM" ]; then
	  echo "md5sum passed."
		sleep 3;
	else
	  echo "Download failed. aborting"
	  exit 1;
	fi
}

download1() {
	cd "$SRCDIR"
	if [ -e "$SOURCE1" ]; then
	  if [ $(md5sum "$SOURCE1" | cut -c1-32) != "$MD5SUM1" ]; then
	    rm "$SOURCE1"
	  fi
	fi
	if [ ! -e "$SOURCE1" ]; then
	  wget "$DOWNLOAD"/"$SOURCE1"
	fi
	if [ $(md5sum "$SOURCE1" | cut -c1-32) = "$MD5SUM1" ]; then
	  echo "md5sum passed."
		sleep 3;
	else
	  echo "Download failed. aborting"
	  exit 1;
	fi
}

build_source() {
	tar xzvf "$SRCDIR"/"$SOURCE" -C "$TMPDIR"
	cd "$TMPDIR"/"$NAME"_"$VERSION"
	zcat "$SRCDIR"/"$SOURCE1" | patch -p1
	make
	strip portmap pmap_dump pmap_set
	cp portmap "$PKG"/usr/local/sbin/portmap
	cp pmap_dump "$PKG"/usr/local/sbin/pmap_dump
	cp pmap_set "$PKG"/usr/local/sbin/pmap_set
	chmod 755 "$PKG"/usr/local/sbin/*
	# Put the portmap script in /tmp to be copied over.
	cp "$SRCDIR"/portmap "$PKG"/etc/init.d

}




make_extension() {
	#mkdir -p "$PKG"/tmp/tce.menu       ####### Hold menu for now
	#cat << EOF > "$PKG"/tmp/tce.menu/portmap-6.0
	#[submenu] (portmap) {}
	#  [exec] (start portmap) {sudo /etc/init.d/portmap start }
	#  [exec] (stop portmap) {sudo /etc/init.d/portmap stop }
	#  [exec] (restart portmap) {sudo /etc/init.d/portmap restart }	
	#[end]
	#
	#EOF
	#chown 1001.50 "$PKG"/tmp/tce.menu/portmap-6.0
	cd "$PKG"
	find . -not -type d > "$LIST"
	tar -T "$LIST" -czvf /home/tc/"$NAME"-"$VERSION".tce
}

################Main####################

export CFLAGS="-march=i686 -O2 -pipe"
export CXXFLAGS="-march=i686 -O2 -pipe"

set -e



if [ -e "$TMPDIR" ]; then
  rm -rf "$TMPDIR" 
fi
mkdir -p "$PKG"/etc/init.d || exit 1
mkdir -p "$PKG"/usr/local/sbin || exit 1
download || exit 1
download1 || exit 1
build_source || exit 1
make_extension || exit 1
echo "Done."