]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - configure
Modified m_cloaking to not use need_positive (instead, cast to an unsigned int)....
[user/henk/code/inspircd.git] / configure
index 0b27e2f17fdb8a668bd4446f0a06c4aefaa526e4..d65b9850c1b36b6c10d026e0793a7fffd9d2f6ff 100755 (executable)
--- a/configure
+++ b/configure
@@ -12,7 +12,7 @@
 #
 ###################################################
 
-require 5.6.0;
+require 5.8.0;
 use Socket;
 use Cwd;
 use Getopt::Long;
@@ -484,14 +484,14 @@ if ($has_epoll) {
                                if ($line =~ /GNU C Library .* version (.*?) /)
                                {
                                        $libcv = $1;
-                                       $libcv =~  /([0-9\.\-])+/;
+                                       $libcv =~  /(\d+\.\d+)/;
                                        $libcv = $1;
                                }
                                elsif ($line =~ /Compiled on a Linux (.*?\..*?)\.* system/)
                                {
                                        $kernelv = $1;
                                        # Fix for some retarded libc builds, strip off >> and << etc.
-                                       $kernelv =~ /([0-9\.\-])+/;
+                                       $kernelv =~ /(\d+\.\d+)/;
                                        $kernelv = $1;
                                }
                        }
@@ -549,6 +549,36 @@ if (($config{HAS_OPENSSL}) && (($config{HAS_OPENSSL} >= 0.8) || ($config{HAS_OPE
        $config{HAS_OPENSSL} = "n";
 }
 
+printf "Checking if you are running an ancient, unsupported OS... ";
+if ($config{OSNAME} =~ /FreeBSD/i)
+{
+       $version = `uname -r`;
+       if ($version =~ /^4\./)
+       {
+               $foundit = `ls -l /usr/local/lib/libgnugetopt* | wc -l`;
+               if ($foundit > 0)
+               {
+                       # ICKY ICKY ICK, FREEBSD 4.x! GET AN UPGRADE!
+                       $config{CRAQ} = "-L/usr/local/lib -lgnugetopt -DHAVE_DECL_GETOPT=1";
+                       print "yes\n";
+               }
+               else
+               {
+                       print "\n\nERROR: You require libgnugetopt (from ports or packages) to build InspIRCd on FreeBSD 4.11.\n";
+               }
+       }
+       else
+       {
+               $config{CRAQ} = " ";
+               print "no ($version)\n";
+       }
+}
+else
+{
+       $config{CRAQ} = " ";
+       print "no ($config{OSNAME})\n";
+}
+
 ################################################################################
 #                        BEGIN INTERACTIVE PART                              #
 ################################################################################
@@ -1312,6 +1342,8 @@ sub write_dynamic_makefile {
                $se = "socketengine_ports";
        }
 
+       $freebsd4libs = $config{CRAQ};
+
        open(FH,">src/Makefile") or die("Could not write src/Makefile");
        print FH <<EOM;
 ###################################################
@@ -1447,7 +1479,7 @@ EOM
 all: libIRCDtimer.so libIRCDcull_list.so libIRCDuserprocess.so libIRCDsocketengine.so libIRCDsocket.so libIRCDhash.so libIRCDchannels.so libIRCDmode.so libIRCDxline.so libIRCDstring.so libIRCDasyncdns.so libIRCDbase.so libIRCDconfigreader.so libIRCDinspsocket.so $cmdobjs libIRCDcommands.so libIRCDdynamic.so libIRCDusers.so libIRCDmodules.so libIRCDwildcard.so libIRCDhelper.so libIRCDcommand_parse.so libIRCDsnomasks.so libIRCDserver.so libIRCDfilelogger.so inspircd
 
 inspircd: inspircd.cpp ../include/base.h ../include/channels.h ../include/inspircd.h ../include/channels.h ../include/globals.h ../include/inspircd_config.h ../include/socket.h libIRCDtimer.so libIRCDcull_list.so libIRCDuserprocess.so libIRCDsocketengine.so libIRCDsocket.so libIRCDhash.so libIRCDchannels.so libIRCDmode.so libIRCDxline.so libIRCDstring.so libIRCDasyncdns.so libIRCDbase.so libIRCDconfigreader.so libIRCDinspsocket.so $cmdobjs libIRCDsnomasks.so libIRCDcommands.so libIRCDdynamic.so libIRCDusers.so libIRCDmodules.so libIRCDwildcard.so libIRCDhelper.so libIRCDcommand_parse.so libIRCDserver.so libIRCDfilelogger.so
-       \$(CC) -pipe -I../include -Wl,--rpath -Wl,$config{LIBRARY_DIR} \$(FLAGS) -rdynamic -L. inspircd.cpp -o inspircd \$(LDLIBS) libIRCDchannels.so libIRCDmode.so libIRCDxline.so libIRCDstring.so libIRCDasyncdns.so libIRCDbase.so libIRCDconfigreader.so libIRCDinspsocket.so libIRCDcommands.so libIRCDdynamic.so libIRCDusers.so libIRCDmodules.so libIRCDwildcard.so libIRCDhelper.so libIRCDhash.so libIRCDsocket.so libIRCDsocketengine.so libIRCDuserprocess.so libIRCDcull_list.so libIRCDcommand_parse.so libIRCDtimer.so libIRCDsnomasks.so libIRCDserver.so libIRCDfilelogger.so
+       \$(CC) -pipe -I../include -Wl,--rpath -Wl,$config{LIBRARY_DIR} \$(FLAGS) $freebsd4libs -rdynamic -L. inspircd.cpp -o inspircd \$(LDLIBS) libIRCDchannels.so libIRCDmode.so libIRCDxline.so libIRCDstring.so libIRCDasyncdns.so libIRCDbase.so libIRCDconfigreader.so libIRCDinspsocket.so libIRCDcommands.so libIRCDdynamic.so libIRCDusers.so libIRCDmodules.so libIRCDwildcard.so libIRCDhelper.so libIRCDhash.so libIRCDsocket.so libIRCDsocketengine.so libIRCDuserprocess.so libIRCDcull_list.so libIRCDcommand_parse.so libIRCDtimer.so libIRCDsnomasks.so libIRCDserver.so libIRCDfilelogger.so
 
 libIRCDsocketengine.so: $se.cpp socketengine.cpp ../include/base.h ../include/hashcomp.h ../include/globals.h ../include/inspircd_config.h ../include/$se.h
        \$(CC) -pipe -I../include \$(FLAGS) -export-dynamic -c socketengine.cpp $se.cpp