#!/usr/bin/env bash
#
# ToscoConf 0.04
# Copyright (c) 2003-2004 Leandro Pereira <leandro@linuxmag.com.br>
# All rights reserved.
#
# This script is in the Tosco Public License. It may be copied and/or
# modified, in whole or in part, provided that all copies must retain the
# above copyright notice, this condition and the following disclaimer.
#
# THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
# INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
# AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
#
# (yes, I did a copy&paste from the BSD license, eat me)
#
# ---------------------------------------------------------------------------

PACKAGE="AutoScan";
VERSION="0.99_R1";
REP_BASE=`basename ${PWD}`;
REP_TOP='${PWD}';
MD5_SOURCE_NORMAL="2ad3d5025fcf800f3c831d6e59d3d4e9";
echo "ToscoConf (version 0.04) for $PACKAGE version $VERSION"

# ---------------------------------------------------------------------------

echo "Determining system architecture."
OS=`uname`
case $OS in		
	Linux)
		;;
	*)
		echo " (not supported, yet!)"
		exit ;;
esac	

PROC=`uname -m`
case $PROC in
	i?86)
		ARCH="ARCH_i386" ;;
	ppc*)
		ARCH="ARCH_PPC" ;;
	x86_64)
		ARCH="ARCH_x86_64" ;;
	mips*)
		ARCH="ARCH_MIPS" ;;
	parisc*)
		ARCH="ARCH_PARISC" ;;
	sparc*)
		ARCH="ARCH_SPARC" ;;
	armv4l)
		ARCH="ARCH_ARMV4L" ;;
	*)
		# uname -m on m68k doesn't return anything useful :/
		grep "680?0" /proc/cpuinfo > /dev/null
		if [ "$?" == "0" ]; then
			ARCH="ARCH_m68k"
		else
			echo "Architeture \"$ARCH\" not supported." 
			exit
		fi

		;;
esac

if [ "x$ARCH" == "x" ]; then
	echo "Your architecture is not supported yet. Please send the"
	echo "output of the following commands to tlagarde@users.sourceforge.net:"
	echo ""
	echo "  $ cat /proc/cpuinfo"
	echo "  $ uname -a"
	echo "  $ uname -m"
	exit 1
fi

# ---------------------------------------------------------------------------

echo "Compiling $PACKAGE for $OS $PROC ($ARCH)."
echo ""

# -----------------------CHECK SOFT ----------------------------

################# Check GCC
GCCPATH="/usr/bin/gcc `which gcc 2>/dev/null`"
echo -n "Checking for gcc... "
for i in $GCCPATH; do
	if [ -x "$i" ]; then
		GCCPATH=$i
		break
	fi
done

if [ -e "$GCCPATH" ]; then
	echo $GCCPATH
else
	echo "gcc cannot be found  (install \"gcc-3.xx\" or \"gcc-4.xx\")"
	exit
fi
################# Check make
GCCPATH="/usr/bin/make `which make 2>/dev/null`"
echo -n "Checking for make ... "
for i in $GCCPATH; do
	if [ -x "$i" ]; then
		GCCPATH=$i
		break
	fi
done

if [ -e "$GCCPATH" ]; then
	echo $GCCPATH
else
	echo "make cannot be found  (install \"make-3.xx\")"
	exit
fi
################# Check pkg-config
PKGCONFPATH="/usr/bin/pkg-config `which pkg-config 2>/dev/null`"
echo -n "Checking for pkg-config... "
for i in $PKGCONFPATH; do
	if [ -x "$i" ]; then
		PKGCONFPATH=$i
		break
	fi
done

if [ -e "$PKGCONFPATH" ]; then
	echo $PKGCONFPATH
else
	echo "pkg-config cannot be found"
	echo "Fedora : "
	echo "     Install \"pkgconfig\""
	exit
fi
################# Check XML
XMLCONFPATH="/usr/bin/xml2-config `which xml2-config 2>/dev/null`"
echo -n "Checking for xml2-config... "
for i in $XMLCONFPATH; do
	if [ -x "$i" ]; then
		XMLCONFPATH=$i
		break
	fi
done

if [ -e "$XMLCONFPATH" ]; then
	echo $XMLCONFPATH
else
	echo "xml2-config cannot be found"
	echo "Mandrake : "
	echo "     Add source (http://easyurpmi.zarb.org/?language=en)"
	echo "     Install \"libxml2-devel\""	
	echo "Debian : "
	echo "     apt-get install libxml2-dev"
	echo "Fedora : "
	echo "     Install \"libxml2-devel\""
	exit
fi
XML_FLAGS=`xml2-config --cflags`
XLM_LIBS=`xml2-config --libs`
################# Check glib-config
PKGCONFPATH="/usr/bin/glib-config `which glib-config 2>/dev/null`"
echo -n "Checking for glib-config... "
for i in $PKGCONFPATH; do
	if [ -x "$i" ]; then
		PKGCONFPATH=$i
		break
	fi
done

if [ -e "$PKGCONFPATH" ]; then
	echo $PKGCONFPATH
else
	echo "glib-config cannot be found"
	echo "Mandrake : "
	echo "     Add source (http://easyurpmi.zarb.org/?language=en)"
	echo "     Install \"libglib1.x-devel\""
	echo "Debian : "
	echo "     apt-get install -dev"
	echo "Fedora : "
	echo "     Install \"glib-devel-1.x\""	
	exit
fi

################# net-snmp-config
PKGCONFPATH="/usr/bin/net-snmp-config `which net-snmp-config 2>/dev/null`"
echo -n "Checking for net-snmp-config... "
for i in $PKGCONFPATH; do
	if [ -x "$i" ]; then
		PKGCONFPATH=$i
		break
	fi
done

if [ -e "$PKGCONFPATH" ]; then
	echo $PKGCONFPATH
else
	echo "net-snmp-config cannot be found"
	echo "Mandrake : "
	echo "     Add source (http://easyurpmi.zarb.org/?language=en)"
	echo "     Install \"libnet-snmp5-devel\""	
	echo "Fedora : "
	echo "     Install \"net-snmp-devel-5.x\""
	exit
fi
LIBSNMP_FLAGS=`net-snmp-config --cflags`
LIBSNMP_LIBS=`net-snmp-config --libs`
################# gconftool-2
PKGCONFPATH="/usr/bin/gconftool-2 `which gconftool-2 2>/dev/null`"
echo -n "Checking for gconftool-2... "
for i in $PKGCONFPATH; do
	if [ -x "$i" ]; then
		PKGCONFPATH=$i
		break
	fi
done

if [ -e "$PKGCONFPATH" ]; then
	echo $PKGCONFPATH
else
	echo "gconftool-2 cannot be found"
	exit
fi


# -----------------------CHECK LIBS ----------------------------
################# Check GTK
echo
GTK2=-1
MIN_VERSION="2.6.0"
echo -n "Checking for GTK version >= ${MIN_VERSION}... "
for i in `which pkg-config`; do
	pkg-config --errors-to-stdout gtk+-2.0 \
		--atleast-version=$MIN_VERSION > /dev/null
	case $? in
		0)
			GTK_FLAGS=`pkg-config gtk+-2.0 --cflags`
			GTK_LIBS=`pkg-config gtk+-2.0 --libs`
			echo "found `pkg-config gtk+-2.0 --modversion`"
			GTK2=1 ;;
		*)
			echo "not found." ;;
	esac
done
if [ $GTK2 -eq -1 ]; then
	echo -e "\nYou need the GTK libraries."
	echo "Mandrake : "
	echo "     Add source (http://easyurpmi.zarb.org/?language=en)"
	echo "     Install \"libgtk+2.0_0-devel\""	
	echo "Debian : "
	echo "     apt-get install libgtk2.0-dev"
	echo "Fedora : "
	echo "     Install \"gtk2-devel\""
	exit
fi
################# Check ao
AO2=-1
MIN_VERSION="0.8.5"
echo -n "Checking for ao version >= ${MIN_VERSION}... "
for i in `which pkg-config`; do
	pkg-config --errors-to-stdout ao \
		--atleast-version=$MIN_VERSION > /dev/null
	case $? in
		0)
			AO_FLAGS=`pkg-config ao --cflags`
			AO_LIBS=`pkg-config ao --libs`
			echo "found `pkg-config ao --modversion`"
			AO2=1 ;;
		*)
			echo "not found." ;;
	esac
done
if [ $AO2 -eq -1 ]; then
	echo -e "\nYou need the ao libraries."
	echo "Mandrake : "
	echo "     Add source (http://easyurpmi.zarb.org/?language=en)"
	echo "     Install \"libao2-devel\""	
	echo "Debian : "
	echo "     apt-get install -dev"
	echo "Fedora : "
	echo "     Install \"libao-devel\""
	exit
fi
################# Check Vorbis
VORBIS2=-1
MIN_VERSION="1.1.0"
echo -n "Checking for Vorbis version >= ${MIN_VERSION}... "
for i in `which pkg-config`; do
	pkg-config --errors-to-stdout vorbisfile \
		--atleast-version=$MIN_VERSION > /dev/null
	case $? in
		0)
			VORBIS_FLAGS=`pkg-config vorbisfile --cflags`
			VORBIS_LIBS=`pkg-config vorbisfile --libs`
			echo "found `pkg-config vorbisfile --modversion`"
			VORBIS2=1 ;;
		*)
			echo "not found." ;;
	esac
done
if [ $VORBIS2 -eq -1 ]; then
	echo -e "\nYou need the Vorbis libraries."
	echo "Mandrake : "
	echo "     Add source (http://easyurpmi.zarb.org/?language=en)"
	echo "     Install \"libvorbis0-devel\""	
	echo "Debian : "
	echo "     apt-get install -dev"
	echo "Fedora : "
	echo "     Install \"libvorbis-devel\""
	exit
fi
################# Check libgnomeui-2.0
UI2=-1
MIN_VERSION="2.8.1"
echo -n "Checking for libgnomeui-2.0 version >= ${MIN_VERSION}... "
for i in `which pkg-config`; do
	pkg-config --errors-to-stdout libgnomeui-2.0 \
		--atleast-version=$MIN_VERSION > /dev/null
	case $? in
		0)
			UI_FLAGS=`pkg-config libgnomeui-2.0 --cflags`
			UI_LIBS=`pkg-config libgnomeui-2.0 --libs`
			echo "found `pkg-config libgnomeui-2.0 --modversion`"
			UI2=1 ;;
		*)
			echo "not found." ;;
	esac
done
if [ $UI2 -eq -1 ]; then
	echo -e "\nYou need the libgnomeui-2.0 libraries."
	echo "Mandrake : "
	echo "     Add source (http://easyurpmi.zarb.org/?language=en)"
	echo "     Install \"libgnomeui2_0-devel\""	
	echo "Debian : "
	echo "     apt-get install -dev"
	echo "Fedora : "
	echo "     Install \"libgnomeui-devel\""
	exit
fi
################# Check pangoft2
PANGOFT2=-1
MIN_VERSION="1.8.1"
echo -n "Checking for pangoft2 version >= ${MIN_VERSION}... "
for i in `which pkg-config`; do
	pkg-config --errors-to-stdout pangoft2 \
		--atleast-version=$MIN_VERSION > /dev/null
	case $? in
		0)
			PANGO_FLAGS=`pkg-config pangoft2 --cflags`
			PANGO_LIBS=`pkg-config pangoft2 --libs`
			echo "found `pkg-config pangoft2 --modversion`"
			PANGOFT2=1 ;;
		*)
			echo "not found." ;;
	esac
done
if [ $PANGOFT2 -eq -1 ]; then
	echo -e "\nYou need the pangoft2 libraries."
	echo "Mandrake : "
	echo "     Add source (http://easyurpmi.zarb.org/?language=en)"
	echo "     Install \"libpango1.0_0-devel\""	
	echo "Debian : "
	echo "     apt-get install -dev"
	exit
fi
################# Check gnome-keyring-1
GNOMEKEYRING2=-1
MIN_VERSION="0.4.2"
echo -n "Checking for gnome-keyring-1 version >= ${MIN_VERSION}... "
for i in `which pkg-config`; do
	pkg-config --errors-to-stdout gnome-keyring-1 \
		--atleast-version=$MIN_VERSION > /dev/null
	case $? in
		0)
			GNOMEKEYRING_FLAGS=`pkg-config gnome-keyring-1 --cflags`
			GNOMEKEYRING_LIBS=`pkg-config gnome-keyring-1 --libs`
			echo "found `pkg-config gnome-keyring-1 --modversion`"
			GNOMEKEYRING2=1 ;;
		*)
			echo "not found." ;;
	esac
done
if [ $GNOMEKEYRING2 -eq -1 ]; then
	echo -e "\nYou need the gnome-keyring-1 libraries."
	echo "Mandrake : "
	echo "     Add source (http://easyurpmi.zarb.org/?language=en)"
	echo "     Install \"libgnome-keyring0-devel\""	
	echo "Debian : "
	echo "     apt-get install -dev"
	exit
fi
################# Check libbonoboui-2.0
GNOMEBONOBO=-1
MIN_VERSION="2.8.1"
echo -n "Checking for libbonoboui-2.0 version >= ${MIN_VERSION}... "
for i in `which pkg-config`; do
	pkg-config --errors-to-stdout libbonoboui-2.0 \
		--atleast-version=$MIN_VERSION > /dev/null
	case $? in
		0)
			BONOBO_FLAGS=`pkg-config libbonoboui-2.0 --cflags`
			BONOBO_LIBS=`pkg-config libbonoboui-2.0 --libs`
			echo "found `pkg-config libbonoboui-2.0 --modversion`"
			GNOMEBONOBO=1 ;;
		*)
			echo "not found." ;;
	esac
done
if [ $GNOMEBONOBO -eq -1 ]; then
	echo -e "\nYou need the libbonoboui-2.0 libraries."
	echo "Mandrake : "
	echo "     Add source (http://easyurpmi.zarb.org/?language=en)"
	echo "     Install \"libbonoboui2_0-devel\""	
	echo "Debian : "
	echo "     apt-get install -dev"
	exit
fi
################# Check Gnome-Vfs
GFS2=-1
MIN_VERSION="2.8.4"
echo -n "Checking for gnome-vfs version >= ${MIN_VERSION}... "
for i in `which pkg-config`; do
	pkg-config --errors-to-stdout gnome-vfs-2.0 \
		--atleast-version=$MIN_VERSION > /dev/null
	case $? in
		0)
			VFS_FLAGS=`pkg-config gnome-vfs-2.0 --cflags`
			VFS_LIBS=`pkg-config gnome-vfs-2.0 --libs`
			echo "found `pkg-config gnome-vfs-2.0 --modversion`"
			GFS2=1 ;;
		*)
			echo "not found." ;;
	esac
done
if [ $GFS2 -eq -1 ]; then
	echo -e "\nYou need the Gnome-Vfs libraries."
	echo "Mandrake : "
	echo "     Add source (http://easyurpmi.zarb.org/?language=en)"
	echo "     Install \"libgnome-vfs2_0-devel\""	
	echo "Debian : "
	echo "     apt-get install -dev"
	exit
fi
################# Check gthread-2.0
GTHREAD=-1
MIN_VERSION="2.6.3"
echo -n "Checking for Gthread version >= ${MIN_VERSION}... "
for i in `which pkg-config`; do
	pkg-config --errors-to-stdout gthread-2.0 \
		--atleast-version=$MIN_VERSION > /dev/null
	case $? in
		0)
			GTHREAD_FLAGS=`pkg-config gthread-2.0 --cflags`
			GTHREAD_LIBS=`pkg-config gthread-2.0 --libs`
			echo "found `pkg-config gthread-2.0 --modversion`"
			GTHREAD=1 ;;
		*)
			echo "not found." ;;
	esac
done
if [ $GTHREAD -eq -1 ]; then
	echo -e "\nYou need the gthread-2.0 libraries, including the development stuff."
	echo "Mandrake : "
	echo "     Add source (http://easyurpmi.zarb.org/?language=en)"
	echo "     Install \"libglib2.0_0-devel\""	
	echo "Debian : "
	echo "     apt-get install -dev"
	exit
fi
################# Check openssl
LIBSSL=-1
MIN_VERSION="0.9.7a"
echo -n "Checking for openssl version >= ${MIN_VERSION}... "
for i in `which pkg-config`; do
	pkg-config --errors-to-stdout openssl \
		--atleast-version=$MIN_VERSION > /dev/null
	case $? in
		0)
			LIBSSL_FLAGS=`pkg-config openssl --cflags`
			LIBSSL_LIBS=`pkg-config openssl --libs`
			echo "found `pkg-config openssl --modversion`"
			LIBSSL=1 ;;
		*)
			echo "not found." ;;
	esac
done
if [ $LIBSSL -eq -1 ]; then
	echo -e "\nYou need the openssl libraries."
	echo "Mandrake : "
	echo "     Add source (http://easyurpmi.zarb.org/?language=en)"
	echo "     Install \"libopenssl0.9.7-devel\""	
	echo "Debian : "
	echo "     apt-get install -dev"
	exit
fi
################# Check vte
LIBVTE=-1
MIN_VERSION="0.11.12"
echo -n "Checking for vte version >= ${MIN_VERSION}... "
for i in `which pkg-config`; do
	pkg-config --errors-to-stdout vte \
		--atleast-version=$MIN_VERSION > /dev/null
	case $? in
		0)
			LIBVTE_FLAGS=`pkg-config vte --cflags`
			LIBVTE_LIBS=`pkg-config vte --libs`
			echo "found `pkg-config vte --modversion`"
			LIBVTE=1 ;;
		*)
			echo "not found." ;;
	esac
done
if [ $LIBVTE -eq -1 ]; then
	echo -e "\nYou need the vte libraries."
	echo "Mandrake : "
	echo "     Add source (http://easyurpmi.zarb.org/?language=en)"
	echo "     Install \"libvte4-devel\""	
	echo "Debian : "
	echo "     apt-get install libvte-dev"
	echo "Fedora : "
	echo "     Install \"vte-devel\""
	exit
fi
################# Check /usr/include/libsmbclient.h
echo -n "Checking for /usr/include/libsmbclient.h ... "
if test -f "/usr/include/libsmbclient.h"
then
	echo "found"
else
	echo "cannot be found"
	echo "Mandrake : "
	echo "     Add source (http://easyurpmi.zarb.org/?language=en)"
	echo "     Install \"libsmbclient0-devel\""	
	echo "Debian : "
	echo "     apt-get install -dev"
	exit
fi

################# Check  /usr/include/libelf.h
echo -n "Checking for /usr/include/libelf.h ... "
if test -f "/usr/include/libelf.h"
then
	echo "found"
else
	echo "cannot be found"
	echo "Mandrake : "
	echo "     Add source (http://easyurpmi.zarb.org/?language=en)"
	echo "     Install \"libelfutils1-devel\""	
	echo "Debian : "
	echo "     apt-get install libelfg0-dev"
	exit
fi


# -----------------------CHECK FILE ----------------------------
FILE="/usr/include/ao/ao.h /usr/include/vorbis/codec.h /usr/include/vorbis/vorbisfile.h /usr/include/dirent.h  /usr/include/sys/types.h /usr/include/sys/stat.h /usr/include/unistd.h /usr/include/string.h /usr/include/stdio.h /usr/include/sys/msg.h /usr/include/time.h /usr/include/pwd.h /usr/include/sys/utsname.h /usr/include/errno.h /usr/include/semaphore.h /usr/include/sys/ioctl.h /usr/include/sys/socket.h /usr/include/net/if.h /usr/include/netinet/if_ether.h /usr/include/netinet/in.h /usr/include/arpa/inet.h /usr/include/linux/sockios.h /usr/include/fcntl.h /usr/include/sys/poll.h /usr/include/linux/if_packet.h /usr/include/netdb.h"

for i in $FILE; do
echo -n "Checking for $i ... "
	if test -f "$i"
	then
		FILE=$i
		echo "found"
	else
		echo "cannot be found"
		exit
	fi
done


# --------------------------------------------------------------------------
########################## MD5 source #############
rm -f src/AutoScan/config.h
rm -f src/AutoScan/Makefile
rm -f src/AutoScan_Agent/config.h
rm -f src/AutoScan_Agent/Makefile
rm -f MD5.sh
echo "#!/bin/bash" > MD5.sh
echo "while [ -n \"\$1\" ] ; do" >> MD5.sh
echo "if  [ -f \"\$1\" ]; then" >> MD5.sh
#echo "echo \"Traite = \"\$1\"\"" >> MD5.sh
echo "md5sum \$1 >> md5" >> MD5.sh
echo "fi" >> MD5.sh
echo "shift" >> MD5.sh
echo "done" >> MD5.sh
echo "exit 0" >> MD5.sh
chmod +x MD5.sh
rm -f md5
./MD5.sh src/AutoScan/*
./MD5.sh src/AutoScan/Com/*
./MD5.sh src/AutoScan/Interface/*
./MD5.sh src/AutoScan_Agent/*
./MD5.sh src/AutoScan_Agent/Com/*
MD5_SOURCE=`md5sum md5 | cut -d' ' -f1`
echo "MD5 : $MD5_SOURCE"
rm -f MD5.sh
rm -f md5
########################## MAKEFILE ###############
echo "Writing Makefile..."
rm -f Makefile
echo "PACKAGE  = $PACKAGE" > Makefile
echo "VERSION  = $VERSION" >> Makefile
echo "REP_BASE = $REP_BASE" >> Makefile
echo "REP_TOP = $REP_TOP" >> Makefile
echo "GCONF = `gconftool-2 --get-default-source`" >> Makefile
echo "REP_AUTOSCAN_NETWORK = src/AutoScan/" >> Makefile
echo "REP_AUTOSCAN_AGENT = src/AutoScan_Agent/" >> Makefile
echo "" >> Makefile
echo "all: Rep_Bin AutoScan_Network AutoScan_Agent" >> Makefile
echo "" >> Makefile
echo "Rep_Bin : " >> Makefile
echo "	rm -fR bin/; mkdir bin" >> Makefile
echo "" >> Makefile
echo "AutoScan_Network : \$(REP_AUTOSCAN_NETWORK)/Makefile" >> Makefile
echo "	@echo Compiling AutoScan_Network; cd \$(REP_AUTOSCAN_NETWORK) && \$(MAKE); mv AutoScan_Network ../../bin/" >> Makefile
echo "" >> Makefile
echo "AutoScan_Agent : \$(REP_AUTOSCAN_AGENT)/Makefile" >> Makefile
echo "	@echo Compiling AutoScan_Agent; cd \$(REP_AUTOSCAN_AGENT) && \$(MAKE); mv AutoScan_Agent ../../bin/" >> Makefile
echo "" >> Makefile
echo "dist-clean:	clean rpm-mandriva-clean rpm-fedora-clean" >> Makefile
echo "	rm -rf Makefile \$(REP_AUTOSCAN_NETWORK)config.h \$(REP_AUTOSCAN_AGENT)config.h \$(REP_AUTOSCAN_NETWORK)Makefile \$(REP_AUTOSCAN_AGENT)Makefile" >> Makefile
echo "	rm -Rf Package/Debian/bin; rm -Rf Package/Debian/usr" >> Makefile
echo "" >> Makefile
echo "clean:" >> Makefile
echo "	rm -f \$(REP_AUTOSCAN_NETWORK)core \$(REP_AUTOSCAN_NETWORK)*.o \$(REP_AUTOSCAN_AGENT)core \$(REP_AUTOSCAN_AGENT)*.o; rm -fR bin;rm -Rf src/AutoScan/.deps; rm -Rf src/AutoScan_Agent/.deps" >> Makefile
echo "" >> Makefile
echo "package:	dist-clean" >> Makefile
echo "	@echo \"Creating tar.gz...\"" >> Makefile
echo "	cd .. && tar czf \$(PACKAGE).\$(VERSION).tar.gz \$(REP_BASE)/* && cd \$(REP_BASE)" >> Makefile
echo "" >> Makefile
echo "deb:	all" >> Makefile
echo "	@echo \"Creating deb...\"" >> Makefile
echo "	rm -Rf Package/Debian/bin; rm -Rf Package/Debian/usr" >> Makefile
echo "	cp -Rf bin Package/Debian/bin; cp -Rf usr Package/Debian/usr" >> Makefile
echo "	cd Package && dpkg-deb --build Debian && cd .." >> Makefile
echo "	mv Package/Debian.deb \$(PACKAGE).\$(VERSION).deb" >> Makefile
echo "" >> Makefile
echo "rpm-mandriva-clean:" >> Makefile
echo "	rm -Rf Package/Mandrake/BUILD" >> Makefile
echo "	rm -Rf Package/Mandrake/RPMS" >> Makefile
echo "	rm -Rf Package/Mandrake/SOURCES" >> Makefile
echo "	rm -Rf Package/Mandrake/SRPMS" >> Makefile
echo "	rm -Rf Package/Mandrake/tmp" >> Makefile
echo "" >> Makefile
echo "rpm-mandriva: rpm-mandriva-clean package" >> Makefile
echo "	echo \"Creating rpm ...\" ">> Makefile
echo "	echo  \"%_topdir                \$(REP_TOP)/Package/Mandrake/\" > ~/.rpmmacros        ">> Makefile
echo "	echo  \"%_tmppath               \$(REP_TOP)/Package/Mandrake/tmp\" >> ~/.rpmmacros    ">> Makefile
echo "	echo  \"\" >> ~/.rpmmacros     ">> Makefile    
echo "	echo  \"%distribution           Mandrakelinux\" >> ~/.rpmmacros      ">> Makefile
echo "	echo  \"%vendor                 Mandrakesoft\" >> ~/.rpmmacros       ">> Makefile
echo "	mkdir Package/Mandrake/BUILD" >> Makefile
echo "	mkdir Package/Mandrake/RPMS" >> Makefile
echo "	mkdir Package/Mandrake/SOURCES" >> Makefile
echo "	mkdir Package/Mandrake/SRPMS" >> Makefile
echo "	mkdir Package/Mandrake/tmp" >> Makefile
echo "	mv ../\$(PACKAGE).\$(VERSION).tar.gz Package/Mandrake/SOURCES" >> Makefile
echo "	cd Package/Mandrake/SPECS/ && rpm  -ba AutoScan.spec && cd ../../.." >> Makefile
echo "" >> Makefile
echo "" >> Makefile
echo "rpm-fedora-clean:" >> Makefile
echo "	rm -Rf Package/Fedora/BUILD" >> Makefile
echo "	rm -Rf Package/Fedora/RPMS" >> Makefile
echo "	rm -Rf Package/Fedora/SOURCES" >> Makefile
echo "	rm -Rf Package/Fedora/SRPMS" >> Makefile
echo "	rm -Rf Package/Fedora/tmp" >> Makefile
echo "" >> Makefile
echo "rpm-fedora: rpm-fedora-clean package" >> Makefile
echo "	echo \"Creating rpm ...\" ">> Makefile
echo "	echo  \"%_topdir                \$(REP_TOP)/Package/Fedora/\" > ~/.rpmmacros        ">> Makefile
echo "	echo  \"%_tmppath               \$(REP_TOP)/Package/Fedora/tmp\" >> ~/.rpmmacros    ">> Makefile
echo "	echo  \"\" >> ~/.rpmmacros     ">> Makefile    
echo "	echo  \"%distribution           Fedora\" >> ~/.rpmmacros      ">> Makefile
echo "	echo  \"%vendor                 Fedora\" >> ~/.rpmmacros       ">> Makefile
echo "	mkdir Package/Fedora/BUILD" >> Makefile
echo "	mkdir Package/Fedora/RPMS" >> Makefile
echo "	mkdir Package/Fedora/SOURCES" >> Makefile
echo "	mkdir Package/Fedora/SRPMS" >> Makefile
echo "	mkdir Package/Fedora/tmp" >> Makefile
echo "	mv ../\$(PACKAGE).\$(VERSION).tar.gz Package/Fedora/SOURCES" >> Makefile
echo "	cd Package/Fedora/SPECS/ && rpm  -ba AutoScan.spec && cd ../../.." >> Makefile
echo "install:	all" >> Makefile
echo "	@echo '[01;34m*** Creating directories...[00m'" >> Makefile
echo "	mkdir -p /bin" >> Makefile
echo "	mkdir -p /usr/share/apps/AutoScan" >> Makefile
echo "	mkdir -p /usr/share/doc/AutoScan" >> Makefile
echo "	mkdir -p /usr/share/pixmaps/AutoScan" >> Makefile
echo "	mkdir -p /usr/share/sounds/AutoScan" >> Makefile
echo "" >> Makefile
echo "	@echo '[01;34m*** Installing icon...[00m'" >> Makefile
echo "	cp usr/share/applications/AutoScan.desktop /usr/share/applications" >> Makefile
echo "	cp usr/share/icons/AutoScan.png /usr/share/icons" >> Makefile
echo "	cp usr/lib/menu/AutoScan /usr/lib/menu" >> Makefile
echo "" >> Makefile
echo "	@echo '[01;34m*** Installing executable...[00m'" >> Makefile
echo "	cp bin/AutoScan_Network /bin; cp bin/AutoScan_Agent /bin" >> Makefile
echo "" >> Makefile
echo "	@echo '[01;34m*** Installing pixmaps...[00m'" >> Makefile
echo "	cp -r usr/share/pixmaps/* /usr/share/pixmaps/AutoScan" >> Makefile
echo "" >> Makefile
echo "	@echo '[01;34m*** Installing misc data...[00m'" >> Makefile
echo "	cp -r usr/share/apps/AutoScan/* /usr/share/apps/AutoScan/" >> Makefile
echo "	cp -r usr/share/doc/AutoScan/* /usr/share/doc/AutoScan/" >> Makefile
echo "	cp -r usr/share/pixmaps/AutoScan/* /usr/share/pixmaps/AutoScan/" >> Makefile
echo "	cp -r usr/share/sounds/AutoScan/* /usr/share/sounds/AutoScan/" >> Makefile
echo "" >> Makefile
echo "	@echo '[01;34m*** Fixing permissions...[00m'" >> Makefile
echo "	chown root:root /bin/AutoScan_Network" >> Makefile
echo "	chown root:root /bin/AutoScan_Agent" >> Makefile
echo "	chmod +s /bin/AutoScan_Agent" >> Makefile
echo "" >> Makefile
echo "	@echo '[01;34m*** Gconf config...[00m'" >> Makefile
echo "	export GCONF_CONFIG_SOURCE=\$(GCONF);gconftool-2 --makefile-install-rule /usr/share/apps/AutoScan/AutoScan.schemas &>/dev/null" >> Makefile
echo "" >> Makefile
echo "	@echo '[01;34m*** Done installing.[00m'" >> Makefile
echo "" >> Makefile

########################## AUTOSCAN_NETWORK #######################################
## CONFIG.H
echo -e "\nWriting src/AutoScan/config.h..."
echo -e "#ifndef __CONFIG_H__\n#define __CONFIG_H__\n" > src/AutoScan/config.h
echo "#define VERSION \"$VERSION\"" >> src/AutoScan/config.h
echo "#define MD5_SOURCE_NORMAL \"$MD5_SOURCE_NORMAL\"" >> src/AutoScan/config.h
echo "#define MD5_SOURCE \"$MD5_SOURCE\"" >> src/AutoScan/config.h
echo "#define PROCESSOR $ARCH" >> src/AutoScan/config.h
echo "#define PLATFORM \"`uname`\"" >> src/AutoScan/config.h
echo "#define KERNEL   \"`uname -r`\"" >> src/AutoScan/config.h
echo "#define HOSTNAME_COMPILE \"`hostname`\"" >> src/AutoScan/config.h
echo "#define PACKAGE_DATA_DIR \"/usr/local/share\"" >> src/AutoScan/config.h
echo "#define PACKAGE \"AutoScan\"" >> src/AutoScan/config.h
echo -e "\n#endif	/* __CONFIG_H__ */" >> src/AutoScan/config.h
## MAKEFILE
echo "Writing src/AutoScan/Makefile..."
echo "GTK_LIBS = ${GTK_LIBS}" > src/AutoScan/Makefile
echo "GTK_CFLAGS = ${GTK_FLAGS}" >> src/AutoScan/Makefile
echo "XML_FLAGS = ${XML_FLAGS}" >> src/AutoScan/Makefile
echo "XLM_LIBS = ${XLM_LIBS}" >> src/AutoScan/Makefile
echo "AO_FLAGS = ${AO_FLAGS}" >> src/AutoScan/Makefile
echo "AO_LIBS = ${AO_LIBS}" >> src/AutoScan/Makefile
echo "VORBIS_FLAGS = ${VORBIS_FLAGS}" >> src/AutoScan/Makefile
echo "VORBIS_LIBS = ${VORBIS_LIBS}" >> src/AutoScan/Makefile
echo "UI_FLAGS = ${UI_FLAGS}" >> src/AutoScan/Makefile
echo "UI_LIBS = ${UI_LIBS}" >> src/AutoScan/Makefile
echo "PANGO_FLAGS = ${PANGO_FLAGS}" >> src/AutoScan/Makefile
echo "PANGO_LIBS = ${PANGO_LIBS}" >> src/AutoScan/Makefile
echo "GNOMEKEYRING_FLAGS = ${GNOMEKEYRING_FLAGS}" >> src/AutoScan/Makefile
echo "GNOMEKEYRING_LIBS = ${GNOMEKEYRING_LIBS}" >> src/AutoScan/Makefile
echo "BONOBO_FLAGS = ${BONOBO_FLAGS}" >> src/AutoScan/Makefile
echo "BONOBO_LIBS = ${BONOBO_LIBS}" >> src/AutoScan/Makefile
echo "VFS_FLAGS = ${VFS_FLAGS}" >> src/AutoScan/Makefile
echo "VFS_LIBS = ${VFS_LIBS}" >> src/AutoScan/Makefile
echo "LIBVTE_FLAGS = ${LIBVTE_FLAGS}" >> src/AutoScan/Makefile
echo "LIBVTE_LIBS = ${LIBVTE_LIBS}" >> src/AutoScan/Makefile
echo "SAMBA_LIBS = -lsmbclient" >> src/AutoScan/Makefile
echo "PACKAGE = `basename ${PWD}`" >> src/AutoScan/Makefile
echo "ARCHOPTS = " >> src/AutoScan/Makefile
cat src/AutoScan/Makefile.in >> src/AutoScan/Makefile

########################## AUTOSCAN_AGENT #######################################
## CONFIG.H
echo -e "\nWriting src/AutoScan_Agent/config.h..."
echo -e "#ifndef __CONFIG_H__\n#define __CONFIG_H__\n" > src/AutoScan_Agent/config.h
echo "#define VERSION \"$VERSION\"" >> src/AutoScan_Agent/config.h
echo "#define MD5_SOURCE_NORMAL \"$MD5_SOURCE_NORMAL\"" >> src/AutoScan/config.h
echo "#define MD5_SOURCE \"$MD5_SOURCE\"" >> src/AutoScan/config.h
echo "#define PROCESSOR $ARCH" >> src/AutoScan_Agent/config.h
echo "#define PLATFORM \"`uname`\"" >> src/AutoScan_Agent/config.h
echo "#define KERNEL   \"`uname -r`\"" >> src/AutoScan_Agent/config.h
echo "#define HOSTNAME_COMPILE \"`hostname`\"" >> src/AutoScan_Agent/config.h
echo "#define PACKAGE_DATA_DIR \"/usr/local/share\"" >> src/AutoScan_Agent/config.h
echo "#define PACKAGE \"AutoScan\"" >> src/AutoScan_Agent/config.h
echo -e "\n#endif	/* __CONFIG_H__ */" >> src/AutoScan_Agent/config.h
## MAKEFILE
echo "Writing src/AutoScan_Agent/Makefile..."
echo "GTHREAD_LIBS = ${GTHREAD_LIBS}" > src/AutoScan_Agent/Makefile
echo "GTHREAD_CFLAGS = ${GTHREAD_FLAGS}" >> src/AutoScan_Agent/Makefile
echo "LIBSSL_LIBS = ${LIBSSL_LIBS}" >> src/AutoScan_Agent/Makefile
echo "LIBSSL_CFLAGS = ${LIBSSL_FLAGS}" >> src/AutoScan_Agent/Makefile
echo "LIBSNMP_LIBS = ${LIBSNMP_LIBS}" >> src/AutoScan_Agent/Makefile
echo "LIBSNMP_FLAGS = ${LIBSNMP_FLAGS}" >> src/AutoScan_Agent/Makefile
echo "PACKAGE = `basename ${PWD}`" >> src/AutoScan_Agent/Makefile
echo "ARCHOPTS = " >> src/AutoScan_Agent/Makefile
cat src/AutoScan_Agent/Makefile.in >> src/AutoScan_Agent/Makefile


#####################################################################################

cat << EOF
            ..;;;;::::::..                                    
      iiLLLLLLLLLLffLLGGffjjttii,,::                          
  iiDDLLiiiiiiiiiiii;;::..::,,iiiiiitttt;;::                  
iiKKttiiii;;;;;;ii;;..  ......,,ttttiiiijjjjtt,,              
DDGG;;ii;;::;;iitt,,  ......::::DDGGiiiiiittffLLjj::          
KKff;;ii....,,;;ii,,....  ..::::KKDD;;iiiiiittffGGLLtt        
EELL;;;;....,,;;ii,,....::::::;;##WW;;;;;;iiiijjffLLEELL..    
ffKKttii....,,;;;;;;::::..::::tt##WWttii;;iiiijjffLLEEKKff    
..GGKKtt;;..,,;;;;;;,,,,::,,,,jj##WWttii;;iiiittjjLLEEKKEEii  
  ..jjKKjjiiii;;;;;;;;,,,,,,iijj##WWii;;;;;;iiiijjffEEEEDDff  
      ffKKjjjjffjjii;;;;;;;;;;tt##KK;;;;;;;;iiiijjLLEEDDGGff  
        EEEEjjLLGGLLjjtt;;;;;;;;WWDD;;;;;;;;iiiijjGGDDGGGGtt  
        iiWWGGffGGLLffttii;;;;;;DDLL;;;;;;;;;;ttffDDDDGGGG;;  
          iiWWDDLLGGLLffttiiii;;;;;;;;;;;;iiiijjDDDDGGGGLL..  
            ttWWDDLLGGLLffjjttiiii;;iiiiiiiittGGDDGGGGLLLL..  
              ttKKDDGGGGLLffffii;;,,;;iiiijjLLDDDDGGGGLLff    
                ttDDDDDDGGLLLLffii;;iijjffDDDDGGGGLLfftt;;    
                  ..iiLLDDDDDDGGGGLLDDDDGGGGffii;;            
                        iittjjjjjjjjjjttii;;..                

                          AUTOSCAN

            NETWORK MONITORING AND MANAGEMENT TOOL

                  Written by LAGARDE Thierry 
               <tlagarde@users.sourceforge.net>
EOF
echo "Done."
echo "Type \"make\" to compile the program and type \"make install\" to install the program"
echo "Other options :"
echo "	\"make deb\" To build a debian package for your system"
echo "	\"make rpm-mandriva\" To build a rpm package for your system  (dependance \"rpm-build\")"
echo "	\"make rpm-fedora\" To build a rpm package for your system"
