#!/bin/bash

#
# Modification History
#
# 2003-July-27    Jason Rohrer
# Created.  Modified from konspire2b source.
#
# 2003-August-26   Jason Rohrer
# Added point-to-point layer.
#
# 2003-September-4   Jason Rohrer
# Added file transfer layer.
#
# 2003-September-5   Jason Rohrer
# Added web server layer.
#
# 2003-September-8   Jason Rohrer
# Added text-based UI.
#
# 2003-October-14   Jason Rohrer
# Added file sharing app.
#
# 2003-November-2   Jason Rohrer
# Added support for Win32 MinGW platform.
#
# 2003-December-15   Jason Rohrer
# Added question for wx-config location.
#
# 2004-January-4   Jason Rohrer
# Added extra library for windows wx gui build.
#
# 2004-January-15    Jason Rohrer
# Fixed string comparison operator.
#


while [ -z "$userEntry" ]
do
    echo "select platform:"

    echo "  1 --  GNU/Linux X86"
    echo "  2 --  GNU/Linux PPC"
    echo "  3 --  FreeBSD X86"
    echo "  4 --  MacOSX"
    echo "  5 --  Solaris"
    echo "  6 --  Win32 using MinGW"
    echo "  q --  quit"

    echo ""
    echo -n "> "

    read userEntry

	
	if [ "$userEntry" = "q" ]
    then
        exit
    fi


    # use ASCII comparison.

	if [[ "$userEntry" > "6" ]]
    then
        userEntry=""
    fi

    if [[ "$userEntry" < "1" ]]
    then
        userEntry=""
    fi

done


# only needed for win32 at the moment (-lwsock32)
extraWxLibs=""


case "$userEntry" in


    "1" )

        rm -f Makefile.temp
        echo "# Auto-generated by MUTE/configure for GNU/Linux X86 platform.  Do not edit manually." > Makefile.temp

        #rm -f kast/Makefile
        #cat Makefile.temp Makefile.GnuLinuxX86 Makefile.common Makefile.minorGems kast/Makefile.all kast/Makefile.other Makefile.minorGems_targets > kast/Makefile

        rm -f layers/messageRouting/Makefile
        cat Makefile.temp Makefile.GnuLinuxX86 Makefile.common Makefile.minorGems layers/messageRouting/Makefile.all Makefile.minorGems_targets > layers/messageRouting/Makefile

        rm -f layers/pointToPoint/Makefile
        cat Makefile.temp Makefile.GnuLinuxX86 Makefile.common Makefile.minorGems layers/pointToPoint/Makefile.all Makefile.minorGems_targets > layers/pointToPoint/Makefile

        rm -f layers/fileTransfer/Makefile
        cat Makefile.temp Makefile.GnuLinuxX86 Makefile.common Makefile.minorGems layers/fileTransfer/Makefile.all Makefile.minorGems_targets > layers/fileTransfer/Makefile

        rm -f userInterface/fileTransferWebInterface/Makefile
        cat Makefile.temp Makefile.GnuLinuxX86 Makefile.common Makefile.minorGems userInterface/fileTransferWebInterface/Makefile.all Makefile.minorGems_targets > userInterface/fileTransferWebInterface/Makefile

        rm -f userInterface/textBased/Makefile
        cat Makefile.temp Makefile.GnuLinuxX86 Makefile.common Makefile.minorGems userInterface/textBased/Makefile.all Makefile.minorGems_targets > userInterface/textBased/Makefile

        rm -f otherApps/fileSharing/Makefile
        cat Makefile.temp Makefile.GnuLinuxX86 Makefile.common Makefile.minorGems otherApps/fileSharing/Makefile.all Makefile.minorGems_targets > otherApps/fileSharing/Makefile

        rm -f otherApps/fileSharing/userInterface/textBased/Makefile
        cat Makefile.temp Makefile.GnuLinuxX86 Makefile.common Makefile.minorGems otherApps/fileSharing/userInterface/textBased/Makefile.all Makefile.minorGems_targets > otherApps/fileSharing/userInterface/textBased/Makefile

        rm -f crypto/Makefile
        cat Makefile.temp Makefile.GnuLinuxX86 Makefile.common Makefile.minorGems crypto/Makefile.all Makefile.minorGems_targets > crypto/Makefile

        #rm -f katcher/Makefile
        #cat Makefile.temp Makefile.GnuLinuxX86 Makefile.common Makefile.minorGems katcher/Makefile.all katcher/Makefile.other Makefile.minorGems_targets > katcher/Makefile

        rm Makefile.temp
    ;;



    "2" )

        rm -f Makefile.temp
        echo "# Auto-generated by MUTE/configure for GNU/Linux PPC platform.  Do not edit manually." > Makefile.temp

        #rm -f kast/Makefile
        #cat Makefile.temp Makefile.GnuLinuxPPC Makefile.common Makefile.minorGems kast/Makefile.all kast/Makefile.other Makefile.minorGems_targets > kast/Makefile

        rm -f layers/messageRouting/Makefile
        cat Makefile.temp Makefile.GnuLinuxPPC Makefile.common Makefile.minorGems layers/messageRouting/Makefile.all Makefile.minorGems_targets > layers/messageRouting/Makefile

        rm -f layers/pointToPoint/Makefile
        cat Makefile.temp Makefile.GnuLinuxPPC Makefile.common Makefile.minorGems layers/pointToPoint/Makefile.all Makefile.minorGems_targets > layers/pointToPoint/Makefile

        rm -f layers/fileTransfer/Makefile
        cat Makefile.temp Makefile.GnuLinuxPPC Makefile.common Makefile.minorGems layers/fileTransfer/Makefile.all Makefile.minorGems_targets > layers/fileTransfer/Makefile

        rm -f userInterface/fileTransferWebInterface/Makefile
        cat Makefile.temp Makefile.GnuLinuxPPC Makefile.common Makefile.minorGems userInterface/fileTransferWebInterface/Makefile.all Makefile.minorGems_targets > userInterface/fileTransferWebInterface/Makefile

        rm -f userInterface/textBased/Makefile
        cat Makefile.temp Makefile.GnuLinuxPPC Makefile.common Makefile.minorGems userInterface/textBased/Makefile.all Makefile.minorGems_targets > userInterface/textBased/Makefile

        rm -f otherApps/fileSharing/Makefile
        cat Makefile.temp Makefile.GnuLinuxPPC Makefile.common Makefile.minorGems otherApps/fileSharing/Makefile.all Makefile.minorGems_targets > otherApps/fileSharing/Makefile

        rm -f otherApps/fileSharing/userInterface/textBased/Makefile
        cat Makefile.temp Makefile.GnuLinuxPPC Makefile.common Makefile.minorGems otherApps/fileSharing/userInterface/textBased/Makefile.all Makefile.minorGems_targets > otherApps/fileSharing/userInterface/textBased/Makefile

        rm -f crypto/Makefile
        cat Makefile.temp Makefile.GnuLinuxPPC Makefile.common Makefile.minorGems crypto/Makefile.all Makefile.minorGems_targets > crypto/Makefile

        #rm -f katcher/Makefile
        #cat Makefile.temp Makefile.GnuLinuxPPC Makefile.common Makefile.minorGems katcher/Makefile.all katcher/Makefile.other Makefile.minorGems_targets > katcher/Makefile

        rm Makefile.temp
    ;;



    "3" )

        rm -f Makefile.temp
        echo "# Auto-generated by MUTE/configure for FreeBSD X86 platform.  Do not edit manually." > Makefile.temp

        #rm -f kast/Makefile
        #cat Makefile.temp Makefile.FreeBSDX86 Makefile.common Makefile.minorGems kast/Makefile.all kast/Makefile.other Makefile.minorGems_targets > kast/Makefile

        rm -f layers/messageRouting/Makefile
        cat Makefile.temp Makefile.FreeBSDX86 Makefile.common Makefile.minorGems layers/messageRouting/Makefile.all Makefile.minorGems_targets > layers/messageRouting/Makefile

        rm -f layers/pointToPoint/Makefile
        cat Makefile.temp Makefile.FreeBSDX86 Makefile.common Makefile.minorGems layers/pointToPoint/Makefile.all Makefile.minorGems_targets > layers/pointToPoint/Makefile

        rm -f layers/fileTransfer/Makefile
        cat Makefile.temp Makefile.FreeBSDX86 Makefile.common Makefile.minorGems layers/fileTransfer/Makefile.all Makefile.minorGems_targets > layers/fileTransfer/Makefile

        rm -f userInterface/fileTransferWebInterface/Makefile
        cat Makefile.temp Makefile.FreeBSDX86 Makefile.common Makefile.minorGems userInterface/fileTransferWebInterface/Makefile.all Makefile.minorGems_targets > userInterface/fileTransferWebInterface/Makefile

        rm -f userInterface/textBased/Makefile
        cat Makefile.temp Makefile.FreeBSDX86 Makefile.common Makefile.minorGems userInterface/textBased/Makefile.all Makefile.minorGems_targets > userInterface/textBased/Makefile

        rm -f otherApps/fileSharing/Makefile
        cat Makefile.temp Makefile.FreeBSDX86 Makefile.common Makefile.minorGems otherApps/fileSharing/Makefile.all Makefile.minorGems_targets > otherApps/fileSharing/Makefile

        rm -f otherApps/fileSharing/userInterface/textBased/Makefile
        cat Makefile.temp Makefile.FreeBSDX86 Makefile.common Makefile.minorGems otherApps/fileSharing/userInterface/textBased/Makefile.all Makefile.minorGems_targets > otherApps/fileSharing/userInterface/textBased/Makefile

        rm -f crypto/Makefile
        cat Makefile.temp Makefile.FreeBSDX86 Makefile.common Makefile.minorGems crypto/Makefile.all Makefile.minorGems_targets > crypto/Makefile

        #rm -f katcher/Makefile
        #cat Makefile.temp Makefile.FreeBSDX86 Makefile.common Makefile.minorGems katcher/Makefile.all katcher/Makefile.other Makefile.minorGems_targets > katcher/Makefile

        rm Makefile.temp
    ;;



    "4" )

        rm -f Makefile.temp
        echo "# Auto-generated by MUTE/configure for MacOSX platform.  Do not edit manually." > Makefile.temp

        #rm -f kast/Makefile
        #cat Makefile.temp Makefile.MacOSX Makefile.common Makefile.minorGems kast/Makefile.all kast/Makefile.MacOSX Makefile.minorGems_targets > kast/Makefile

        rm -f layers/messageRouting/Makefile
        cat Makefile.temp Makefile.MacOSX Makefile.common Makefile.minorGems layers/messageRouting/Makefile.all Makefile.minorGems_targets > layers/messageRouting/Makefile

        rm -f layers/pointToPoint/Makefile
        cat Makefile.temp Makefile.MacOSX Makefile.common Makefile.minorGems layers/pointToPoint/Makefile.all Makefile.minorGems_targets > layers/pointToPoint/Makefile

        rm -f layers/fileTransfer/Makefile
        cat Makefile.temp Makefile.MacOSX Makefile.common Makefile.minorGems layers/fileTransfer/Makefile.all Makefile.minorGems_targets > layers/fileTransfer/Makefile

        rm -f userInterface/fileTransferWebInterface/Makefile
        cat Makefile.temp Makefile.MacOSX Makefile.common Makefile.minorGems userInterface/fileTransferWebInterface/Makefile.all Makefile.minorGems_targets > userInterface/fileTransferWebInterface/Makefile

        rm -f userInterface/textBased/Makefile
        cat Makefile.temp Makefile.MacOSX Makefile.common Makefile.minorGems userInterface/textBased/Makefile.all Makefile.minorGems_targets > userInterface/textBased/Makefile

        rm -f otherApps/fileSharing/Makefile
        cat Makefile.temp Makefile.MacOSX Makefile.common Makefile.minorGems otherApps/fileSharing/Makefile.all Makefile.minorGems_targets > otherApps/fileSharing/Makefile

        rm -f otherApps/fileSharing/userInterface/textBased/Makefile
        cat Makefile.temp Makefile.MacOSX Makefile.common Makefile.minorGems otherApps/fileSharing/userInterface/textBased/Makefile.all Makefile.minorGems_targets > otherApps/fileSharing/userInterface/textBased/Makefile

        rm -f crypto/Makefile
        cat Makefile.temp Makefile.MacOSX Makefile.common Makefile.minorGems crypto/Makefile.all Makefile.minorGems_targets > crypto/Makefile

        #rm -f katcher/Makefile
        #cat Makefile.temp Makefile.MacOSX Makefile.common Makefile.minorGems katcher/Makefile.all katcher/Makefile.MacOSX Makefile.minorGems_targets > katcher/Makefile

        rm Makefile.temp
    ;;



    "5" )

        rm -f Makefile.temp
        echo "# Auto-generated by MUTE/configure for Solaris platform.  Do not edit manually." > Makefile.temp

        #rm -f kast/Makefile
        #cat Makefile.temp Makefile.Solaris Makefile.common Makefile.minorGems kast/Makefile.all kast/Makefile.other Makefile.minorGems_targets > kast/Makefile

        rm -f layers/messageRouting/Makefile
        cat Makefile.temp Makefile.Solaris Makefile.common Makefile.minorGems layers/messageRouting/Makefile.all Makefile.minorGems_targets > layers/messageRouting/Makefile

        rm -f layers/pointToPoint/Makefile
        cat Makefile.temp Makefile.Solaris Makefile.common Makefile.minorGems layers/pointToPoint/Makefile.all Makefile.minorGems_targets > layers/pointToPoint/Makefile

        rm -f layers/fileTransfer/Makefile
        cat Makefile.temp Makefile.Solaris Makefile.common Makefile.minorGems layers/fileTransfer/Makefile.all Makefile.minorGems_targets > layers/fileTransfer/Makefile

        rm -f userInterface/fileTransferWebInterface/Makefile
        cat Makefile.temp Makefile.Solaris Makefile.common Makefile.minorGems userInterface/fileTransferWebInterface/Makefile.all Makefile.minorGems_targets > userInterface/fileTransferWebInterface/Makefile

        rm -f userInterface/textBased/Makefile
        cat Makefile.temp Makefile.Solaris Makefile.common Makefile.minorGems userInterface/textBased/Makefile.all Makefile.minorGems_targets > userInterface/textBased/Makefile

        rm -f otherApps/fileSharing/Makefile
        cat Makefile.temp Makefile.Solaris Makefile.common Makefile.minorGems otherApps/fileSharing/Makefile.all Makefile.minorGems_targets > otherApps/fileSharing/Makefile

        rm -f otherApps/fileSharing/userInterface/textBased/Makefile
        cat Makefile.temp Makefile.Solaris Makefile.common Makefile.minorGems otherApps/fileSharing/userInterface/textBased/Makefile.all Makefile.minorGems_targets > otherApps/fileSharing/userInterface/textBased/Makefile

        rm -f crypto/Makefile
        cat Makefile.temp Makefile.Solaris Makefile.common Makefile.minorGems crypto/Makefile.all Makefile.minorGems_targets > crypto/Makefile

        #rm -f katcher/Makefile
        #cat Makefile.temp Makefile.Solaris Makefile.common Makefile.minorGems katcher/Makefile.all katcher/Makefile.other Makefile.minorGems_targets > katcher/Makefile

        rm Makefile.temp
    ;;




    "6" )

        rm -f Makefile.temp
        echo "# Auto-generated by MUTE/configure for Win32 MinGW platform.  Do not edit manually." > Makefile.temp

        #rm -f kast/Makefile
        #cat Makefile.temp Makefile.MinGW Makefile.common Makefile.minorGems kast/Makefile.all kast/Makefile.other Makefile.minorGems_targets > kast/Makefile

        rm -f layers/messageRouting/Makefile
        cat Makefile.temp Makefile.MinGW Makefile.common Makefile.minorGems layers/messageRouting/Makefile.all Makefile.minorGems_targets > layers/messageRouting/Makefile

        rm -f layers/pointToPoint/Makefile
        cat Makefile.temp Makefile.MinGW Makefile.common Makefile.minorGems layers/pointToPoint/Makefile.all Makefile.minorGems_targets > layers/pointToPoint/Makefile

        rm -f layers/fileTransfer/Makefile
        cat Makefile.temp Makefile.MinGW Makefile.common Makefile.minorGems layers/fileTransfer/Makefile.all Makefile.minorGems_targets > layers/fileTransfer/Makefile

        rm -f userInterface/fileTransferWebInterface/Makefile
        cat Makefile.temp Makefile.MinGW Makefile.common Makefile.minorGems userInterface/fileTransferWebInterface/Makefile.all Makefile.minorGems_targets > userInterface/fileTransferWebInterface/Makefile

        rm -f userInterface/textBased/Makefile
        cat Makefile.temp Makefile.MinGW Makefile.common Makefile.minorGems userInterface/textBased/Makefile.all Makefile.minorGems_targets > userInterface/textBased/Makefile

        rm -f otherApps/fileSharing/Makefile
        cat Makefile.temp Makefile.MinGW Makefile.common Makefile.minorGems otherApps/fileSharing/Makefile.all Makefile.minorGems_targets > otherApps/fileSharing/Makefile

        rm -f otherApps/fileSharing/userInterface/textBased/Makefile
        cat Makefile.temp Makefile.MinGW Makefile.common Makefile.minorGems otherApps/fileSharing/userInterface/textBased/Makefile.all Makefile.minorGems_targets > otherApps/fileSharing/userInterface/textBased/Makefile

        rm -f crypto/Makefile
        cat Makefile.temp Makefile.MinGW Makefile.common Makefile.minorGems crypto/Makefile.all Makefile.minorGems_targets > crypto/Makefile

        #rm -f katcher/Makefile
        #cat Makefile.temp Makefile.MinGW Makefile.common Makefile.minorGems katcher/Makefile.all katcher/Makefile.other Makefile.minorGems_targets > katcher/Makefile

        rm Makefile.temp


        # need winsock library
       	extraWxLibs="-lwsock32"
    ;;




esac


echo ""
echo ""
echo "Enter full path to wxWindows wx-config script."
echo "   Example:   /usr/bin/wx-config"
echo "To us the default setting, or if you do not plan to build the"
echo "wxWindows-based GUI, leave this blank."

echo ""
echo -n "> "

read userEntry


if [ "$userEntry" = "" ]
then
    userEntry="/usr/bin/wx-config"
fi

echo -e "# Auto-generated by MUTE/configure for a generic platform." \
     "\n# Do not edit manually.\n" \
     "\nWX_CONFIG_LOCATION = $userEntry" \
	 "\nEXTRA_WX_LIBS = $extraWxLibs\n" > Makefile.temp

rm -f otherApps/fileSharing/userInterface/wxWindows/Makefile
cat Makefile.temp otherApps/fileSharing/userInterface/wxWindows/Makefile.all > otherApps/fileSharing/userInterface/wxWindows/Makefile


exit
