#!/usr/bin/perl
-
# InspIRCd Configuration Script
#
# Copyright 2003 The ChatSpike Development Team
$config{HAS_OPENSSL} =~ /OpenSSL (\S+) \d+ \S+ \d{4}/;
$config{HAS_OPENSSL} = $1;
+# Minihack! Convert Cygwin to 'Cyg-Static' so i can
+# Keep my dynamic module experiments here for later
+# concideration!
+
+if ($config{OSNAME} =~ /CYGWIN/) {
+ $config{OSNAME} = "CYG-STATIC";
+}
+
if ((!$config{OSNAME}) || ($config{OSNAME} eq "")) {
chomp($config{OSNAME} = `/usr/bin/uname`);
if ((!$config{OSNAME}) || ($config{OSNAME} eq "")){
getosflags();
$has_epoll = $config{HAS_EPOLL};
$has_kqueue = $config{HAS_KQUEUE};
- if ($config{OSNAME} =~ /CYGWIN/) {
+ if ($config{STATIC_LINK} eq "yes") {
write_static_modules_makefile();
} else {
write_dynamic_modules_makefile();
print "yes\n" if $has_epoll == 1;
print "no\n" if $has_epoll == 0;
-if ($config{OSNAME} =~ /CYGWIN/) {
+if (($config{OSNAME} =~ /CYGWIN/) || ($config{OSNAME} eq "CYG-STATIC")) {
$config{HAS_STRLCPY} = "true";
}
if ($config{HAS_GNUTLS} eq "y") {
yesno(USE_GNUTLS, "Would you like to enable SSL Support?");
- print "\nUsing GnuTLS SSL module.\n";
+ if ($config{USE_GNUTLS} eq "y") {
+ print "\nUsing GnuTLS SSL module.\n";
+ }
} elsif ($config{HAS_OPENSSL} eq "y") {
yesno(USE_OPENSSL, "Would you like to enable SSL Support?");
- print "\nUsing OpenSSL SSL module.\nYou will get better performance if you move to GnuTLS in the future.\n";
+ if ($config{USE_OPENSSL} eq "y") {
+ print "\nUsing OpenSSL SSL module.\nYou will get better performance if you move to GnuTLS in the future.\n";
+ }
}
print "\nThe following questions will ask you for various figures relating\n";
print "\033[0mMax name length:\033[1;32m\t\t$config{MAX_GECOS}\n";
print "\033[0mMax away length:\033[1;32m\t\t$config{MAX_AWAY}\n";
print "\033[0mGCC Version Found:\033[1;32m\t\t$config{GCCVER}.$config{GCC34}\n";
-print "\033[0mOptimatizaton Flag:\033[1;32m\t\t$config{OPTIMISATI}\033[0m\n";
+print "\033[0mOptimization Flag:\033[1;32m\t\t$config{OPTIMISATI}\033[0m\n";
print "\033[0mCompiler program:\033[1;32m\t\t$config{CC}\033[0m\n";
print "\033[0mStatic modules:\033[1;32m\t\t\t$config{STATIC_LINK}\033[0m\n";
print "\033[0mMultithread DNS:\033[1;32m\t\t$config{THREADED_DNS}\033[0m\n";
print "Skipping SSL Certificate generation, SSL support is not available.\n\n";
}
+getosflags();
makecache();
writefiles();
sub getosflags {
if ($config{OSNAME} =~ /BSD$/) {
$config{LDLIBS} = "-Ldl -lstdc++";
- $config{FLAGS} = "-fPIC -frtti $OPTIMISATI -Wall -Woverloaded-virtual $config{OPTIMISATI}";
+ $config{FLAGS} = "-fPIC -frtti -Wall -Woverloaded-virtual $config{OPTIMISATI}";
$config{MAKEPROG} = "gmake";
if ($config{OSNAME} eq "OpenBSD") {
chomp($foo = `eg++ -dumpversion | cut -c 1`);
}
} else {
$config{LDLIBS} = "-ldl -lstdc++";
- $config{FLAGS} = "-fPIC -frtti $OPTIMISATI -Wall -Woverloaded-virtual $config{OPTIMISATI}";
+ $config{FLAGS} = "-fPIC -frtti -Wall -Woverloaded-virtual $config{OPTIMISATI}";
$config{MAKEPROG} = "make";
if ($config{OSNAME} =~ /CYGWIN/) {
- $config{FLAGS} = "-frtti $OPTIMISATI -Wall -Woverloaded-virtual $config{OPTIMISATI}";
+ $config{FLAGS} = "-frtti -Wall -Woverloaded-virtual $config{OPTIMISATI}";
$config{LDLIBS} = "";
$config{MAKEPROG} = "/usr/bin/make";
$config{MAKEORDER} = "ircd mods config bininst";
+ } elsif ($config{OSNAME} eq "CYG-STATIC") {
+ $config{FLAGS} = "-frtti -Wall -Woverloaded-virtual $config{OPTIMISATI}";
+ $config{LDLIBS} = "";
+ $config{MAKEPROG} = "/usr/bin/make";
+ $config{MAKEORDER} = "mods ircd config bininst";
+ $config{STATICLIBS} = "modules/mods.a";
+ $config{STATIC_LINK} = "yes";
}
}
if ($config{OSNAME} =~ /SunOS/) {
print FILEHANDLE "#define IS_CYGWIN\n";
print FILEHANDLE "#ifndef FD_SETSIZE\n#define FD_SETSIZE 1024\n#endif\n";
}
+ if ($config{OSNAME} eq "CYG-STATIC") {
+ print FILEHANDLE "#ifndef FD_SETSIZE\n#define FD_SETSIZE 1024\n#endif\n";
+ }
+
if ($config{STATIC_LINK} eq "yes") {
print FILEHANDLE "#define STATIC_LINK\n";
}
$cmflags = getcompilerflags("src/modules/m_".$i.".cpp");
$liflags = getlinkerflags("src/modules/m_".$i.".cpp");
- print FILEHANDLE <<EOCHEESE;
###
- # Write Entry to the MakeFile
+ # Write Entry to the Makefile
###
+ print FILEHANDLE <<EOCHEESE;
m_$i.o: m_$i\_static.cpp ../../include/modules.h ../../include/users.h ../../include/channels.h ../../include/base.h
\$(CC) -pipe -I../../include \$(FLAGS) $flags -export-dynamic -c m_$i\_static.cpp
mv m_$i\_static.o ../m_$i.o