summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordanieldg <danieldg@e03df62e-2008-0410-955e-edbf42e46eb7>2009-09-01 15:05:03 +0000
committerdanieldg <danieldg@e03df62e-2008-0410-955e-edbf42e46eb7>2009-09-01 15:05:03 +0000
commitee0d8addcea381775c98dc1e40031a0d658636b6 (patch)
treec3f6bd318c37b13213a37e8bbd4c95fd4d1df1ea
parent192fa7d3138ccb5929dc9af8de3395d6ea25619c (diff)
Fix install of module .so files
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11558 e03df62e-2008-0410-955e-edbf42e46eb7
-rw-r--r--.Makefile.inc4
-rwxr-xr-xconfigure100
2 files changed, 4 insertions, 100 deletions
diff --git a/.Makefile.inc b/.Makefile.inc
index 2d5231eae..e8bf232b9 100644
--- a/.Makefile.inc
+++ b/.Makefile.inc
@@ -105,6 +105,8 @@ install: allreal@EXTRA_DIR@
@-install -d -m $(INSTMODE) $(BINPATH)
@-install -d -m $(INSTMODE) $(CONPATH)
@-install -d -m $(INSTMODE) $(MODPATH)
+ -install -m $(INSTMODE) src/commands/*.so $(LIBPATH)
+ -install -m $(INSTMODE) src/modules/*.so $(MODPATH)
-install -m $(INSTMODE) @STARTSCRIPT@ $(@DESTINATION@) 2>/dev/null
@INSTALL_LIST@ -install -m $(INSTMODE) src/inspircd $(BINPATH)
@echo ""
@@ -136,6 +138,8 @@ modclean:
deinstall:
-rm $(BINPATH)/inspircd
+ -rm $(LIBPATH)/*.so
+ -rm $(MODPATH)/*.so
@UNINSTALL_LIST@
squeakyclean: distclean
diff --git a/configure b/configure
index eafa87174..0754c8f79 100755
--- a/configure
+++ b/configure
@@ -1214,27 +1214,6 @@ EOF
}
- # Create a Modules List..
- my $modules = "";
- foreach my $i (@modlist)
- {
- $modules .= "m_".$i.".so ";
- }
- chomp($modules); # Remove Redundant whitespace..
-
- opendir(DIRHANDLE, "src/modules");
- foreach my $name2 (sort readdir(DIRHANDLE)) {
- if ($name2 =~ /^m_(.+?)$/) {
- if (defined(opendir(MDIRHANDLE, "src/modules/$name2"))) {
- closedir(MDIRHANDLE);
- $modules .= "$name2.so ";
- $uninstall_list = $uninstall_list . " -rm \$(MODPATH)/$name2.so\n";
- }
- }
- }
- closedir(DIRHANDLE);
-
-
# Write all .in files.
my $tmp = "";
my $file = "";
@@ -1318,89 +1297,10 @@ EOF
chmod 0744, 'inspircd';
}
-sub read_module_directory {
- my ($dpath, $reldpath) = @_;
-
- if (opendir(MDIRHANDLE, $dpath) == 0) {
- return;
- }
-
- foreach my $fname (sort readdir(MDIRHANDLE)) {
- if ($fname =~ /\.cpp$/) {
- my $cmflags = getcompilerflags("$dpath/$fname");
- $mliflags = $mliflags . " " . getlinkerflags("$dpath/$fname");
- my $deps = getdependencies("$dpath/$fname");
- my $oname = $fname;
- $oname =~ s/\.cpp$/.o/g;
- $mfrules = $mfrules . "$reldpath/$oname: $reldpath/$fname ../../include/modules.h ../../include/users.h ../../include/channels.h ../../include/base.h ../../include/inspircd_config.h ../../include/inspircd.h ../../include/configreader.h $deps\n";
- $mfrules = $mfrules . " \$(RUNCC) -I. \$(FLAGS) $cmflags $SHARED -o $reldpath/$oname -c $reldpath/$fname\n\n";
- $mobjs = $mobjs . " $reldpath/$oname";
- $mfcount++;
- }
- elsif ((-d "$dpath/$fname") && !($fname eq ".") && !($fname eq "..")) {
- read_module_directory($dpath."/".$fname, $reldpath."/".$fname);
- }
- }
-}
-
-sub calcdeps($)
-{
- # Yes i know we could use gcc -M but it seems to ideneify a lot of 'deep'
- # dependencies which are not relevent in C++.
-
- my $file = $_[0];
-
- open (CPP, "<$file") or die("Can't open $file for reading!");
-
- my %dupe = ();
- my $retlist = "";
-
- foreach my $d (@ignoredeps)
- {
- $dupe{$d} = 1;
- }
-
- my $immutable = "";
- foreach my $dep (@immutabledeps)
- {
- $immutable = $immutable . "../include/$dep ";
- }
- $immutable =~ s/ $//g;
-
- while (defined(my $line = <CPP>))
- {
- chomp($line);
- if ($line =~ /#include "(.+\.h)"/)
- {
- if (!exists($dupe{$1}))
- {
- $retlist = $retlist . "../include/$1 ";
- $dupe{$1} = 1;
- }
- }
- }
- close CPP;
- return length($immutable) ? $immutable . " " . $retlist : $retlist;
-}
-
sub prepare_dynamic_makefile
{
my $i = 0;
- my @cmdlist = ();
my %existing_install_list = ();
- my %core_files_list = ();
-
- opendir(DIRHANDLE, "src/commands");
- foreach my $name (sort readdir(DIRHANDLE))
- {
- if ($name =~ /^cmd_(.+)\.cpp$/)
- {
- $cmdlist[$i++] = $1;
- $install_list = $install_list . " -install -m \$(INSTMODE) src/commands/cmd_" . $1 . ".so \$(LIBPATH)\n";
- $uninstall_list = $uninstall_list . " -rm \$(LIBPATH)/cmd_$1.so\n";
- }
- }
- closedir(DIRHANDLE);
if (!$has_epoll)
{