X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=configure;h=fb4d5d842abd35b0579696c057c696130f502fc5;hb=55730fa073d6aaf058954af6ae64f38cf2c5cbb9;hp=41b0cd0ee82e190aa68876627a1c8e847cd24323;hpb=d1ddbd62f91d4b9453447b5d25f5e41e807b0010;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/configure b/configure index 41b0cd0ee..fb4d5d842 100755 --- a/configure +++ b/configure @@ -531,9 +531,6 @@ else print "no ($config{OSNAME})\n"; } -print "Checking for upgrades to extra and third party modules... "; -system "./modulemanager upgrade"; - ################################################################################ # BEGIN INTERACTIVE PART # ################################################################################ @@ -669,6 +666,7 @@ should NOT be used. You should probably specify a newer compiler.\n\n"; } $config{USE_SSL} = "n"; + $config{MODUPDATE} = 'n'; if ($config{HAS_GNUTLS} eq "y" || $config{HAS_OPENSSL} eq "y") { @@ -702,6 +700,13 @@ should NOT be used. You should probably specify a newer compiler.\n\n"; print "\nCould not detect OpenSSL or GnuTLS. Make sure pkg-config is installed if\n"; print "you intend to use OpenSSL, or that GnuTLS is in your path if you intend\nto use GnuTLS.\n\n"; } + + yesno('MODUPDATE',"Would you like to check for updates to third-party modules?"); + print "\n"; + if ($config{MODUPDATE} eq "y") { + print "Checking for upgrades to extra and third party modules... "; + system "./modulemanager upgrade"; + } } dumphash(); @@ -1044,74 +1049,66 @@ EOF # but right now we only parse .inspircd.inc to form './inspircd' prepare_dynamic_makefile(); - print "Writing \e[1;32mMakefiles\e[0m\n"; + my @dotfiles = qw(main.mk inspircd); + push @dotfiles, 'org.inspircd.plist' if $config{OSNAME} eq 'darwin'; - opendir(DIRHANDLE, $this); - - foreach my $name (sort readdir(DIRHANDLE)) { - if ($name =~ /^\.(.+)\.inc$/) { - $file = $1; - - # Bug #353, omit this on non-darwin - next if (($config{OSNAME} !~ /darwin/) && ($file eq "org.inspircd.plist")); + foreach my $file (@dotfiles) { + open(FILEHANDLE, "make/template/$file") or die "Can't open make/template/$file: $!"; + $_ = join '', ; + close(FILEHANDLE); - # All .name.inc files need parsing! - open(FILEHANDLE, ".$file.inc") or die ("Can't open .$file.inc"); - $_ = join '', ; - close(FILEHANDLE); + $config{BUILD_DIR} ||= resolve_directory($config{ME}."/build"); + for my $var (qw( + CC SYSTEM BASE_DIR CONFIG_DIR MODULE_DIR BINARY_DIR BUILD_DIR + STARTSCRIPT DESTINATION EXTRA_DIR SOCKETENGINE + )) { + s/\@$var\@/$config{$var}/g; + } + s/\@EXECUTABLE\@/$exe/ if defined $exe; + s/\@VERSION\@/$version/ if defined $version; + + if ($file eq 'main.mk') { + print "Writing \e[1;32mGNUmakefile\e[0m ...\n"; + + my $mk_tmp = $_; + s/\@IFDEF (\S+)/ifdef $1/g; + s/\@IFNDEF (\S+)/ifndef $1/g; + s/\@IFEQ (\S+) (\S+)/ifeq ($1,$2)/g; + s/\@ELSIFEQ (\S+) (\S+)/else ifeq ($1,$2)/g; + s/\@ELSE/else/g; + s/\@ENDIF/endif/g; + s/ *\@BSD_ONLY .*\n//g; + s/\@GNU_ONLY //g; + s/\@DO_EXPORT (.*)/export $1/g; + open MKF, '>GNUmakefile' or die "Can't write to GNUmakefile: $!"; + print MKF $_; + close MKF; + + print "Writing \e[1;32mBSDmakefile\e[0m ...\n"; + $_ = $mk_tmp; + s/\@IFDEF (\S+)/.if defined($1)/g; + s/\@IFNDEF (\S+)/.if !defined($1)/g; + s/\@IFEQ (\S+) (\S+)/.if $1 == $2/g; + s/\@ELSIFEQ (\S+) (\S+)/.elif $1 == $2/g; + s/\@ELSE/.else/g; + s/\@ENDIF/.endif/g; + s/\@BSD_ONLY //g; + s/ *\@GNU_ONLY .*\n//g; + $mk_tmp = $_; + $mk_tmp =~ s#\@DO_EXPORT (.*)#"MAKEENV += ".join ' ', map "$_='\${$_}'", split /\s/, $1#eg; + open MKF, '>BSDmakefile' or die "Can't write to BSDmakefile: $!"; + print MKF $mk_tmp; + close MKF; + } else { print "Writing \e[1;32m$file\e[0m ...\n"; - - $config{BUILD_DIR} ||= resolve_directory($config{ME}."/build"); - - for my $var (qw( - CC SYSTEM BASE_DIR CONFIG_DIR MODULE_DIR BINARY_DIR BUILD_DIR - STARTSCRIPT DESTINATION EXTRA_DIR SOCKETENGINE - )) { - s/\@$var\@/$config{$var}/g; - } - s/\@EXECUTABLE\@/$exe/ if defined $exe; - s/\@VERSION\@/$version/ if defined $version; - - if ($file eq 'Makefile') { - my $mk_tmp = $_; - s/\@IFDEF (\S+)/ifdef $1/g; - s/\@IFNDEF (\S+)/ifndef $1/g; - s/\@IFEQ (\S+) (\S+)/ifeq ($1,$2)/g; - s/\@ELSIFEQ (\S+) (\S+)/else ifeq ($1,$2)/g; - s/\@ELSE/else/g; - s/\@ENDIF/endif/g; - s/ *\@BSD_ONLY .*\n//g; - s/\@GNU_ONLY //g; - s/\@DO_EXPORT (.*)/export $1/g; - open MKF, '>GNUmakefile' or die "Can't write to GNUmakefile: $!"; - print MKF $_; - close MKF; - $_ = $mk_tmp; - s/\@IFDEF (\S+)/.if defined($1)/g; - s/\@IFNDEF (\S+)/.if !defined($1)/g; - s/\@IFEQ (\S+) (\S+)/.if $1 == $2/g; - s/\@ELSIFEQ (\S+) (\S+)/.elif $1 == $2/g; - s/\@ELSE/.else/g; - s/\@ENDIF/.endif/g; - s/\@BSD_ONLY //g; - s/ *\@GNU_ONLY .*\n//g; - $mk_tmp = $_; - $mk_tmp =~ s#\@DO_EXPORT (.*)#"MAKEENV += ".join ' ', map "$_='\${$_}'", split /\s/, $1#eg; - open MKF, '>BSDmakefile' or die "Can't write to BSDmakefile: $!"; - print MKF $mk_tmp; - close MKF; - } else { - open(FILEHANDLE, ">$file") or die("Can't write to $file: $!\n"); - print FILEHANDLE $_; - close(FILEHANDLE); - } + open(FILEHANDLE, ">$file") or die("Can't write to $file: $!\n"); + print FILEHANDLE $_; + close(FILEHANDLE); } } - closedir(DIRHANDLE); - # Make inspircd executable! - chmod 0744, 'inspircd'; + chmod 0755, 'inspircd'; } sub depcheck