You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
119 lines
2.8 KiB
119 lines
2.8 KiB
function GetCurrentSource
|
|
{
|
|
# First, get the location of the existing source code
|
|
unset SOURCE_LOCATION;
|
|
while [ ! "$SOURCE_LOCATION" ];
|
|
do
|
|
$ECHO "What directory contains the existing files? [no default]";
|
|
$ECHO ": \c";
|
|
read SOURCE_LOCATION;
|
|
|
|
if [ ! -d $SOURCE_LOCATION ];
|
|
then
|
|
$ECHO "Directory does not exist. Try again.";
|
|
$ECHO;
|
|
unset SOURCE_LOCATION;
|
|
fi
|
|
done
|
|
$ECHO;
|
|
|
|
# Now, find C++ source and header files
|
|
CUR_PWD=$PWD;
|
|
cd $SOURCE_LOCATION;
|
|
EXISTING_SOURCE=`/bin/ls -x *.C *.cpp *.cc`;
|
|
EXISTING_HEADER=`/bin/ls -x *.h`;
|
|
cd $CUR_PWD;
|
|
|
|
# Sanity check
|
|
if [ "$EXISTING_SOURCE" -o "$EXISTING_HEADER" ];
|
|
then
|
|
$ECHO "Found these files: $EXISTING_SOURCE $EXISTING_HEADER";
|
|
else
|
|
$ECHO "Could not find any source files in that directory";
|
|
exit 1;
|
|
fi
|
|
}
|
|
|
|
###########################################################################
|
|
#
|
|
# STEP 1: GET USER INFORMATION
|
|
#
|
|
###########################################################################
|
|
# Get the application name
|
|
APPTYPE="existing application";
|
|
unset APPDEFAULT;
|
|
GetProperName
|
|
|
|
# Get the application version
|
|
GetVersion
|
|
|
|
# Get where the sources currently are
|
|
GetCurrentSource
|
|
|
|
# Get the root where this framework will be installed
|
|
GetLocationRoot
|
|
|
|
# Get the author's name
|
|
GetAuthorName
|
|
|
|
# Get the author's email
|
|
GetAuthorEmail
|
|
|
|
# Verify that everything is grand
|
|
$ECHO;
|
|
$ECHO "Here is what I have:";
|
|
$ECHO "The application: $APP_NAME v$APP_VERSION";
|
|
$ECHO "Installed in: $LOCATION_ROOT";
|
|
$ECHO "Source from: $SOURCE_LOCATION";
|
|
$ECHO "Author: $AUTHOR <$EMAIL>";
|
|
$ECHO;
|
|
$ECHO "Is this correct (Y/n)? ";
|
|
$ECHO ": \c";
|
|
read Y_N;
|
|
if [ $Y_N -a $Y_N = 'n' ];
|
|
then
|
|
$ECHO "AUGH! Well, try again.";
|
|
exit 0;
|
|
fi
|
|
$ECHO;
|
|
|
|
$ECHO "OK, Here we go!!";
|
|
|
|
###########################################################################
|
|
#
|
|
# STEP 2: CREATE APPLICATION FRAMEWORK
|
|
#
|
|
###########################################################################
|
|
CreateAppFramework
|
|
|
|
###########################################################################
|
|
#
|
|
# STEP 3: HANDLE EXISTING FILES
|
|
#
|
|
###########################################################################
|
|
for FILE in $EXISTING_SOURCE;
|
|
do
|
|
cp -f $SOURCE_LOCATION/$FILE $LOCATION_ROOT/$APP_NAME_LC/$FILE
|
|
done
|
|
for FILE in $EXISTING_HEADER;
|
|
do
|
|
cp -f $SOURCE_LOCATION/$FILE $LOCATION_ROOT/$APP_NAME_LC/$FILE
|
|
done
|
|
|
|
for EXE_FILE in $EXISTING_FILES;
|
|
do
|
|
. $SHARE_DIR/existing/$EXE_FILE || exit 1;
|
|
done
|
|
|
|
###########################################################################
|
|
#
|
|
# STEP 4: FINAL STEPS
|
|
#
|
|
###########################################################################
|
|
|
|
if [ ! $NOINIT ]; then
|
|
cd $LOCATION_ROOT && $MAKE -f Makefile.cvs
|
|
fi
|
|
|
|
$ECHO "DONE!";
|