2004-05-31 14:33:51 +00:00
|
|
|
# -*- Autoconf -*-
|
|
|
|
# Process this file with autoconf to produce a configure script.
|
|
|
|
AC_PREREQ(2.57)
|
|
|
|
AC_INIT()
|
|
|
|
AC_CONFIG_AUX_DIR(autotools)
|
|
|
|
AC_CONFIG_SRCDIR([src/main.c])
|
|
|
|
AC_CONFIG_HEADER([include/config.h])
|
2004-10-01 18:55:39 +00:00
|
|
|
AC_CONFIG_HEADER([lib/gdbm/autoconf.h])
|
2004-06-07 13:38:36 +00:00
|
|
|
AC_PREFIX_DEFAULT(~/NeoStats3.0)
|
2004-05-31 14:33:51 +00:00
|
|
|
AC_CACHE_LOAD
|
|
|
|
|
|
|
|
#Standard Defines for autoconf here
|
|
|
|
x_maj=3
|
|
|
|
x_min='0'
|
2005-02-24 18:16:46 +00:00
|
|
|
x_rev="a2-dev"
|
2004-05-31 14:33:51 +00:00
|
|
|
x_package='NeoStats'
|
2004-07-06 23:03:17 +00:00
|
|
|
MODULES="connectserv hostserv loveserv moraleserv statserv ircdauth extauth"
|
2004-05-31 14:33:51 +00:00
|
|
|
#dont edit anything after this line!
|
|
|
|
|
|
|
|
x_version=$x_maj.$x_min.$x_rev
|
|
|
|
AM_INIT_AUTOMAKE($x_package, $x_version)
|
2004-06-01 09:40:09 +00:00
|
|
|
AM_MAINTAINER_MODE
|
2004-05-31 14:33:51 +00:00
|
|
|
AC_DEFINE_UNQUOTED(MAJOR, $x_maj, "Major Version Number")
|
|
|
|
AC_DEFINE_UNQUOTED(MINOR, $x_min, "Minor Version Number")
|
|
|
|
AC_DEFINE_UNQUOTED(REV, $x_rev, "Revision Version Number")
|
|
|
|
AC_DEFINE_UNQUOTED(VERSION, $x_version, "Full Version")
|
2005-03-02 14:43:49 +00:00
|
|
|
AC_MSG_HEADER([Configuring Core Now])
|
2004-05-31 14:33:51 +00:00
|
|
|
AC_LIBTOOL_DLOPEN
|
2004-06-01 12:06:40 +00:00
|
|
|
dnl AC_DISABLE_SHARED
|
2004-07-20 11:55:27 +00:00
|
|
|
dnl AC_LIBTOOL_WIN32_DLL
|
|
|
|
dnl AC_LIBLTDL_CONVENIENCE
|
2004-05-31 14:33:51 +00:00
|
|
|
|
|
|
|
# Checks for programs.
|
|
|
|
AC_PROG_CC
|
|
|
|
AC_PROG_LIBTOOL
|
2004-06-01 02:26:49 +00:00
|
|
|
AC_PROG_YACC
|
2004-09-02 12:52:13 +00:00
|
|
|
AC_PROG_LEX
|
2004-05-31 14:33:51 +00:00
|
|
|
AC_PATH_PROG( SED, sed, , $PATH:/usr/bin:/usr/local/bin)
|
|
|
|
|
|
|
|
# Checks for libraries.
|
2004-09-29 10:33:54 +00:00
|
|
|
# AC_LIB_LTDL
|
|
|
|
AC_CHECK_LIB(dl, dlopen)
|
2005-02-26 09:57:58 +00:00
|
|
|
AC_CHECK_LIB(socket, socket)
|
2004-10-01 18:55:39 +00:00
|
|
|
AC_REPLACE_FUNCS(getopt)
|
|
|
|
AC_CHECK_MEMBERS([struct stat.st_blksize])
|
2004-05-31 14:33:51 +00:00
|
|
|
|
|
|
|
# Checks for header files.
|
|
|
|
AC_HEADER_STDC
|
|
|
|
AC_CHECK_HEADERS(
|
|
|
|
sys/types.h \
|
|
|
|
sys/time.h \
|
|
|
|
sys/select.h \
|
|
|
|
sys/socket.h \
|
|
|
|
unistd.h \
|
|
|
|
malloc.h \
|
2004-08-24 19:14:09 +00:00
|
|
|
assert.h \
|
|
|
|
ctype.h \
|
|
|
|
errno.h \
|
2004-09-02 13:29:31 +00:00
|
|
|
stddef.h \
|
2004-08-24 18:54:28 +00:00
|
|
|
stdio.h \
|
2004-05-31 14:33:51 +00:00
|
|
|
stdlib.h \
|
2004-08-24 18:54:28 +00:00
|
|
|
stdarg.h \
|
2004-05-31 14:33:51 +00:00
|
|
|
arpa/inet.h \
|
2005-02-11 21:15:11 +00:00
|
|
|
arpa/nameser.h \
|
2004-05-31 14:33:51 +00:00
|
|
|
net/if.h \
|
|
|
|
netinet/in.h \
|
|
|
|
netdb.h \
|
|
|
|
sys/sockio.h \
|
|
|
|
sys/stat.h \
|
|
|
|
sys/param.h \
|
2004-08-24 18:54:28 +00:00
|
|
|
sys/resource.h \
|
2004-05-31 14:33:51 +00:00
|
|
|
termios.h \
|
|
|
|
termio.h \
|
|
|
|
sgtty.h \
|
|
|
|
fcntl.h \
|
|
|
|
dlfcn.h \
|
|
|
|
alloca.h \
|
|
|
|
winsock.h \
|
|
|
|
time.h \
|
|
|
|
io.h \
|
|
|
|
pwd.h \
|
|
|
|
utime.h \
|
2004-06-01 09:22:43 +00:00
|
|
|
limits.h \
|
2004-05-31 14:33:51 +00:00
|
|
|
sys/utime.h \
|
|
|
|
sys/poll.h \
|
2004-10-01 18:55:39 +00:00
|
|
|
setjmp.h \
|
|
|
|
string.h \
|
|
|
|
sys/file.h \
|
2005-02-26 09:57:58 +00:00
|
|
|
inttypes.h \
|
|
|
|
stdint.h \
|
|
|
|
poll.h \
|
|
|
|
signal.h \
|
|
|
|
sys/epoll.h \
|
|
|
|
sys/queue.h \
|
|
|
|
sys/event.h \
|
|
|
|
sys/ioctl.h \
|
|
|
|
sys/devpoll.h \
|
2004-10-01 18:55:39 +00:00
|
|
|
memory.y,
|
2004-05-31 14:33:51 +00:00
|
|
|
dnl to do if not found
|
|
|
|
[],
|
|
|
|
dnl to do if found
|
|
|
|
[],
|
|
|
|
dnl default includes
|
|
|
|
[
|
|
|
|
#ifdef HAVE_SYS_TYPES_H
|
|
|
|
#include <sys/types.h>
|
|
|
|
#endif
|
|
|
|
#ifdef HAVE_SYS_TIME_H
|
|
|
|
#include <sys/time.h>
|
|
|
|
#endif
|
|
|
|
#ifdef HAVE_SYS_SELECT_H
|
|
|
|
#include <sys/select.h>
|
|
|
|
#endif
|
|
|
|
#ifdef HAVE_SYS_SOCKET_H
|
|
|
|
#include <sys/socket.h>
|
|
|
|
#endif
|
|
|
|
]
|
|
|
|
)
|
|
|
|
|
|
|
|
# Checks for typedefs, structures, and compiler characteristics.
|
|
|
|
AC_C_CONST
|
|
|
|
AC_C_INLINE
|
|
|
|
AC_TYPE_OFF_T
|
|
|
|
AC_TYPE_SIZE_T
|
2005-02-26 09:57:58 +00:00
|
|
|
AC_TYPE_PID_T
|
2004-05-31 14:33:51 +00:00
|
|
|
AC_HEADER_TIME
|
|
|
|
AC_STRUCT_TM
|
|
|
|
AC_C_VOLATILE
|
|
|
|
AC_CHECK_SIZEOF(off_t)
|
2005-02-26 09:57:58 +00:00
|
|
|
AC_CHECK_TYPE(u_int64_t, unsigned long long)
|
|
|
|
AC_CHECK_TYPE(u_int32_t, unsigned int)
|
|
|
|
AC_CHECK_TYPE(u_int16_t, unsigned short)
|
|
|
|
AC_CHECK_TYPE(u_int8_t, unsigned char)
|
2004-05-31 14:33:51 +00:00
|
|
|
|
|
|
|
AC_CHECK_TYPE(long long,
|
|
|
|
[AC_DEFINE(HAVE_LONGLONG, 1, [if your compiler supports 'long long'])])
|
|
|
|
|
|
|
|
# check for ssize_t
|
|
|
|
AC_CHECK_TYPE(ssize_t, ,
|
|
|
|
AC_DEFINE(ssize_t, int, [the signed version of size_t]))
|
|
|
|
|
|
|
|
TYPE_SOCKLEN_T
|
|
|
|
TYPE_IN_ADDR_T
|
|
|
|
|
|
|
|
AC_FUNC_SELECT_ARGTYPES
|
|
|
|
AC_CHECK_FUNCS( socket \
|
|
|
|
select \
|
|
|
|
strdup \
|
|
|
|
strstr \
|
|
|
|
strtok_r \
|
|
|
|
strftime \
|
|
|
|
uname \
|
|
|
|
strcasecmp \
|
|
|
|
stricmp \
|
|
|
|
strcmpi \
|
|
|
|
gethostbyaddr \
|
|
|
|
gettimeofday \
|
|
|
|
inet_addr \
|
|
|
|
inet_ntoa \
|
|
|
|
inet_pton \
|
2004-08-04 19:13:02 +00:00
|
|
|
inet_ntop \
|
2004-05-31 14:33:51 +00:00
|
|
|
tcsetattr \
|
|
|
|
tcgetattr \
|
|
|
|
perror \
|
|
|
|
closesocket \
|
|
|
|
siginterrupt \
|
|
|
|
sigaction \
|
|
|
|
signal \
|
|
|
|
getpass_r \
|
|
|
|
strlcat \
|
|
|
|
getpwuid \
|
|
|
|
geteuid \
|
|
|
|
dlopen \
|
|
|
|
utime \
|
|
|
|
sigsetjmp \
|
2004-06-01 09:22:43 +00:00
|
|
|
memmove \
|
|
|
|
bcopy \
|
|
|
|
strerror \
|
2004-10-01 18:55:39 +00:00
|
|
|
poll \
|
|
|
|
rename \
|
|
|
|
ftruncate \
|
|
|
|
flock \
|
2005-02-26 09:57:58 +00:00
|
|
|
fsync \
|
|
|
|
vasprintf \
|
|
|
|
fcntl,
|
2004-05-31 14:33:51 +00:00
|
|
|
dnl if found
|
|
|
|
[],
|
|
|
|
dnl if not found, $ac_func is the name we check for
|
|
|
|
func="$ac_func"
|
|
|
|
AC_MSG_CHECKING([deeper for $func])
|
|
|
|
AC_TRY_LINK( [],
|
|
|
|
[ $func ();],
|
|
|
|
AC_MSG_RESULT(yes!)
|
|
|
|
eval "ac_cv_func_$func=yes"
|
|
|
|
def=`echo "HAVE_$func" | tr 'a-z' 'A-Z'`
|
|
|
|
AC_DEFINE_UNQUOTED($def, 1, [If you have $func]),
|
|
|
|
AC_MSG_RESULT(but still no)
|
|
|
|
)
|
|
|
|
|
|
|
|
)
|
|
|
|
ADNS_C_GCCATTRIB
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Checks for library functions.
|
|
|
|
AC_REPLACE_FNMATCH
|
|
|
|
AC_FUNC_FORK
|
|
|
|
AC_PROG_GCC_TRADITIONAL
|
|
|
|
AC_FUNC_SELECT_ARGTYPES
|
|
|
|
AC_TYPE_SIGNAL
|
|
|
|
AC_FUNC_STAT
|
|
|
|
AC_FUNC_STRFTIME
|
|
|
|
AC_FUNC_STRNLEN
|
|
|
|
AC_FUNC_STRTOD
|
|
|
|
AC_FUNC_VPRINTF
|
|
|
|
AC_CHECK_FUNCS(strnlen strlcpy strlcat strndup)
|
|
|
|
|
|
|
|
dnl backtrace is used for segv reporting
|
|
|
|
AC_CHECK_FUNC(backtrace,
|
|
|
|
[AC_DEFINE(HAVE_BACKTRACE, 1, 'backtrace function available')
|
|
|
|
LIBS="-g $LIBS"]
|
|
|
|
)
|
|
|
|
|
|
|
|
dnl **** Check for underscore on external symbols ****
|
|
|
|
|
|
|
|
AC_CACHE_CHECK(whether external symbols need an underscore prefix,
|
|
|
|
ac_cv_c_extern_prefix,
|
|
|
|
[saved_libs=$LIBS
|
|
|
|
LIBS="conftest_asm.s $LIBS"
|
|
|
|
cat > conftest_asm.s <<EOF
|
|
|
|
.globl _ac_test
|
|
|
|
_ac_test:
|
|
|
|
.long 0
|
|
|
|
EOF
|
|
|
|
AC_TRY_LINK([extern int ac_test;],[if (ac_test) return 1],
|
|
|
|
ac_cv_c_extern_prefix="yes",ac_cv_c_extern_prefix="no")
|
|
|
|
LIBS=$saved_libs])
|
|
|
|
if test "$ac_cv_c_extern_prefix" = "yes"
|
|
|
|
then
|
|
|
|
AC_DEFINE(NEED_UNDERSCORE_PREFIX, 1, "Our Platfrom requires Underscores")
|
|
|
|
fi
|
|
|
|
|
|
|
|
dnl check for berkeley db support
|
|
|
|
AC_CHECK_HEADER(db.h, AC_DEFINE(HAVE_DB_H, 1, [Define to 1 if you have the <db.h> header file.])
|
|
|
|
AC_CHECK_LIB(db, db_create, LIBDB="-ldb"))
|
|
|
|
|
|
|
|
|
2005-02-24 18:16:46 +00:00
|
|
|
dnl How to copy one va_list to another?
|
2005-02-25 00:29:33 +00:00
|
|
|
AC_CACHE_CHECK([for va_copy], ns_va_copy, [AC_LINK_IFELSE(
|
2005-02-24 18:16:46 +00:00
|
|
|
[AC_LANG_PROGRAM([#include <stdarg.h>], [va_list ap1, ap2; va_copy(ap1, ap2);])],
|
2005-02-25 00:29:33 +00:00
|
|
|
[ns_va_copy="yes"],
|
|
|
|
[ns_va_copy="no"]
|
2005-02-24 18:16:46 +00:00
|
|
|
)])
|
2005-02-25 00:29:33 +00:00
|
|
|
if test "$ns_va_copy" = "yes" ; then
|
2005-02-24 18:16:46 +00:00
|
|
|
AC_DEFINE(HAVE_VA_COPY, 1, [Define if we have va_copy]) fi
|
|
|
|
|
2005-02-25 00:29:33 +00:00
|
|
|
AC_CACHE_CHECK([for __va_copy], ns___va_copy, [AC_LINK_IFELSE(
|
2005-02-24 18:16:46 +00:00
|
|
|
[AC_LANG_PROGRAM([#include <stdarg.h>], [va_list ap1, ap2; __va_copy(ap1, ap2);])],
|
2005-02-25 00:29:33 +00:00
|
|
|
[ns___va_copy="yes"],
|
|
|
|
[ns___va_copy="no"]
|
2005-02-24 18:16:46 +00:00
|
|
|
)])
|
2005-02-25 00:29:33 +00:00
|
|
|
if test "$ns___va_copy" = "yes" ; then
|
2005-02-24 18:16:46 +00:00
|
|
|
AC_DEFINE(HAVE___VA_COPY, 1, [Define if we have __va_copy]) fi
|
|
|
|
|
2005-03-02 14:43:49 +00:00
|
|
|
|
|
|
|
dnl Set NEO_PREFIX in config.h.
|
|
|
|
if test "x${prefix}" = "xNONE"; then
|
|
|
|
AC_DEFINE_UNQUOTED(NEO_PREFIX, "${ac_default_prefix}", "Installation Prefix")
|
|
|
|
else
|
|
|
|
AC_DEFINE_UNQUOTED(NEO_PREFIX, "${prefix}", "Installation Prefix")
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
AX_PATH_LIB_PCRE
|
|
|
|
AX_PATH_LIB_CURL
|
|
|
|
|
|
|
|
AC_DEFINE_UNQUOTED(NS_HOST, "$host_os", "Operating System Host")
|
|
|
|
AC_MSG_HEADER([Configuring CCDV Now])
|
|
|
|
wi_ARG_DISABLE_CCDV
|
|
|
|
wi_PROG_CCDV
|
|
|
|
AC_MSG_HEADER([Configuring LibEvent Now])
|
|
|
|
CHK_LIBEVNT
|
|
|
|
|
|
|
|
AC_MSG_HEADER([NeoStats Configuration Summary:])
|
|
|
|
|
2004-04-23 23:32:05 +00:00
|
|
|
dnl check if we are running with Debug....
|
|
|
|
AC_MSG_CHECKING(Whether to Enable Debuging...)
|
|
|
|
AC_ARG_ENABLE(debug,
|
2004-06-01 10:06:19 +00:00
|
|
|
[ --enable-debug - Enable Debuging],
|
2004-04-23 23:32:05 +00:00
|
|
|
[ case "$enableval" in
|
|
|
|
yes)
|
|
|
|
AC_DEFINE(DEBUG, 1, 'Enable Debugging')
|
2004-05-31 14:33:51 +00:00
|
|
|
CFLAGS="$CFLAGS -ggdb -Wall -DCURLDEBUG"
|
2004-04-23 23:32:05 +00:00
|
|
|
AC_MSG_RESULT(yes - Watch your Log Files)
|
|
|
|
;;
|
|
|
|
*)
|
|
|
|
CFLAGS="$CFLAGS -DNDEBUG"
|
|
|
|
AC_MSG_RESULT(no)
|
|
|
|
;;
|
|
|
|
esac],
|
|
|
|
CFLAGS="$CFLAGS -DNDEBUG"
|
|
|
|
AC_MSG_RESULT(no)
|
|
|
|
)
|
2004-06-01 09:22:43 +00:00
|
|
|
|
|
|
|
AC_MSG_CHECKING(To Enable AutoTools Debug Mode?)
|
2004-06-01 10:06:19 +00:00
|
|
|
AC_ARG_ENABLE(autodebug, [ --enable-autodebug - Enable AutoTools Debug],
|
2004-06-01 09:22:43 +00:00
|
|
|
[ case "$enableval" in
|
|
|
|
yes)
|
|
|
|
AC_MSG_RESULT(yes)
|
|
|
|
;;
|
|
|
|
*)
|
|
|
|
AC_MSG_RESULT(no)
|
|
|
|
AX_MAINTAINER_MODE_AUTO_SILENT
|
|
|
|
;;
|
|
|
|
esac],
|
|
|
|
AC_MSG_RESULT(no)
|
|
|
|
AX_MAINTAINER_MODE_AUTO_SILENT
|
|
|
|
)
|
|
|
|
|
|
|
|
|
2002-11-18 13:57:54 +00:00
|
|
|
AC_MSG_CHECKING(To Enable Raw command?)
|
2004-06-01 10:06:19 +00:00
|
|
|
AC_ARG_ENABLE(raw, [ --enable-raw - Enable Raw command],
|
2002-11-18 13:57:54 +00:00
|
|
|
[ case "$enableval" in
|
|
|
|
yes)
|
|
|
|
AC_DEFINE(USE_RAW, 1, 'Use Raw command')
|
|
|
|
AC_MSG_RESULT(yes)
|
|
|
|
;;
|
|
|
|
*)
|
|
|
|
AC_MSG_RESULT(no)
|
|
|
|
;;
|
|
|
|
esac],
|
|
|
|
AC_MSG_RESULT(no)
|
|
|
|
)
|
|
|
|
|
The sql code is integrated with the conf file, socket code, and initilization portions so far.
its not yet setup to export any of NeoStats structs, but you can test with this release with the built in tables:
to test:
./configure --enable-sqlsrv
add a line to neostats.cfg:
SQLSRV_AUTH Fish!blah@127.0.0.*
(username Fish, pass blah, host 127.0.0.* (IP only, can use wildcards)
compile and start up NeoStats
Check for any errors about unable to bind to ports etc.... (if you need to run on a diff port, add SQLSRV_PORT <portnum> to the neostats.cfg
now that its running, from php/command line, connect to the BINDTO ip address (if using BINDTO) or 127.0.0.1 port 8888
eg: command line:
psql -U Fish -h localhost -p 8888
it should prompt with a password.
once connected, you can view available tables with:
"select * from rta_tables;"
some examples are:
"select * from pg_user;"
"select * from pg_conn;"
"select * from rta_stat;"
"select * from rta_dbg;"
"select * from rta_columns;"
Remember, only very basic SQL is supported
2003-12-11 15:37:05 +00:00
|
|
|
|
2004-05-31 14:33:51 +00:00
|
|
|
AC_MSG_CHECKING(The Modules that will be automatically compiled)
|
2002-02-28 10:33:10 +00:00
|
|
|
AC_MSG_RESULT($MODULES)
|
2000-02-29 10:21:48 +00:00
|
|
|
|
2004-09-22 20:25:28 +00:00
|
|
|
AC_MSG_CHECKING(The additional modules to compile?)
|
2004-06-01 10:06:19 +00:00
|
|
|
AC_ARG_WITH(modules, [ --with-modules - Additional Modules to compile],
|
2004-05-31 14:33:51 +00:00
|
|
|
MODULES="$MODULES $withval"
|
|
|
|
AC_MSG_RESULT($withval),
|
|
|
|
AC_MSG_RESULT("None"))
|
|
|
|
|
2005-02-06 04:02:20 +00:00
|
|
|
|
2005-03-05 08:38:50 +00:00
|
|
|
CFLAGS="$CFLAGS -fno-strict-aliasing"
|
|
|
|
|
2004-03-17 21:06:48 +00:00
|
|
|
AC_SUBST(PROTOCOL)
|
2004-05-31 14:33:51 +00:00
|
|
|
AC_SUBST(SED)
|
2004-06-01 10:06:19 +00:00
|
|
|
AC_SUBST(LIBTOOL_DEPS)
|
2004-06-01 12:06:40 +00:00
|
|
|
AC_SUBST(MODULES)
|
2004-08-12 03:12:27 +00:00
|
|
|
AC_SUBST(LIBDB)
|
2005-02-06 07:36:26 +00:00
|
|
|
AC_SUBST(CCDV)
|
2005-02-26 09:57:58 +00:00
|
|
|
AC_SUBST(EVNTLIBOBJS)
|
2004-07-20 11:55:27 +00:00
|
|
|
AC_CONFIG_FILES([Makefile
|
|
|
|
include/Makefile
|
|
|
|
src/Makefile
|
|
|
|
src/protocol/Makefile
|
2004-09-22 20:51:37 +00:00
|
|
|
src/dbm/Makefile
|
2004-07-20 11:55:27 +00:00
|
|
|
lib/Makefile
|
|
|
|
lib/curl/Makefile
|
|
|
|
lib/adns/Makefile
|
|
|
|
lib/pcre/Makefile
|
2004-09-02 12:52:13 +00:00
|
|
|
lib/rta/Makefile
|
2005-02-26 09:57:58 +00:00
|
|
|
lib/event/Makefile
|
2004-07-20 11:55:27 +00:00
|
|
|
modules/Makefile
|
|
|
|
modules/connectserv/Makefile
|
|
|
|
modules/extauth/Makefile
|
|
|
|
modules/hostserv/Makefile
|
|
|
|
modules/ircdauth/Makefile
|
|
|
|
modules/loveserv/Makefile
|
|
|
|
modules/moraleserv/Makefile
|
|
|
|
modules/statserv/Makefile
|
2005-02-06 10:57:26 +00:00
|
|
|
neostats])
|
2004-06-01 12:06:40 +00:00
|
|
|
|
2004-05-31 14:33:51 +00:00
|
|
|
AC_CACHE_SAVE
|
|
|
|
AC_OUTPUT
|
2005-03-02 14:43:49 +00:00
|
|
|
AC_MSG_HEADER([Configuration complete.])
|
2005-03-05 02:25:36 +00:00
|
|
|
if test ! -f .hush; then \
|
|
|
|
read -p "Press Enter key to read the release notes"; \
|
|
|
|
clear; \
|
|
|
|
more RELNOTES; \
|
|
|
|
echo "Run 'make' (or 'gmake' on some systems) to compile NeoStats."; \
|
|
|
|
echo "If you require support, see the README file."; \
|
|
|
|
fi;
|