]> git.netwichtig.de Git - user/henk/code/inspircd.git/commitdiff
Merge INSPIRCD_MODULE and INSPIRCD_TARGET.
authorPeter Powell <petpow@saberuk.com>
Wed, 18 Oct 2017 16:16:32 +0000 (17:16 +0100)
committerPeter Powell <petpow@saberuk.com>
Wed, 29 Nov 2017 19:23:40 +0000 (19:23 +0000)
make/calcdep.pl
make/template/main.mk

index 99355efa40f1b9843781f0290dcd1c9c450a4b96..3b4ae6b0d7041b3f149489f847504bdcd0330289 100755 (executable)
@@ -30,6 +30,8 @@ BEGIN {
 use strict;
 use warnings FATAL => qw(all);
 
+use File::Basename qw(basename);
+
 use constant {
        BUILDPATH  => $ENV{BUILDPATH},
        SOURCEPATH => $ENV{SOURCEPATH}
@@ -238,6 +240,10 @@ sub dep_so($) {
        my($file) = @_;
        my $out = find_output $file;
 
+       my $name = basename $out, '.so';
+       print MAKE ".PHONY: $name\n";
+       print MAKE "$name: $out\n";
+
        dep_cpp $file, $out, 'gen-so';
        return $out;
 }
@@ -255,6 +261,9 @@ sub dep_dir($$) {
        closedir DIR;
        if (@ofiles) {
                my $ofiles = join ' ', @ofiles;
+               my $name = basename $outdir;
+               print MAKE ".PHONY: $name\n";
+               print MAKE "$name: $outdir.so\n";
                print MAKE "$outdir.so: $ofiles\n";
                print MAKE "\t@\$(SOURCEPATH)/make/unit-cc.pl link-dir \$\@ ${\SOURCEPATH}/src/$dir \$^ \$>\n";
                return 1;
index 4845d0dde87ca4c31ff987da019a6790d4b73bb9..07708428024d508552c86b7dc405ce4f94386e7d 100644 (file)
@@ -137,15 +137,9 @@ export SOURCEPATH
 # Default target
 TARGET = all
 
-ifdef INSPIRCD_MODULE
+ifdef INSPIRCD_TARGET
     HEADER = mod-header
     FOOTER = mod-footer
-    TARGET = modules/$(INSPIRCD_MODULE:.so=).so
-endif
-
-ifdef INSPIRCD_TARGET
-    HEADER =
-    FOOTER = target
     TARGET = $(INSPIRCD_TARGET)
 endif
 
@@ -178,10 +172,10 @@ debug-header:
 
 mod-header:
 ifdef INSPIRCD_STATIC
-       @echo 'Cannot build single modules in pure-static build'
+       @echo 'Cannot build specific targets in pure-static build'
        @exit 1
 endif
-       @echo 'Building single module:'
+       @echo 'Building specific targets:'
 
 mod-footer: target
        @echo 'To install, copy $(BUILDPATH)/$(TARGET) to $(MODPATH)'
@@ -308,9 +302,7 @@ help:
        @echo '           Currently installs to ${BASE}'
        @echo ' debug     Compile a debug build. Equivalent to "make D=1 all"'
        @echo ''
-       @echo ' INSPIRCD_MODULE=m_foo   Builds a single module (core_foo also works here)'
-       @echo ' INSPIRCD_TARGET=target  Builds a user-specified target, such as "inspircd" or "modules"'
-       @echo '                         Other targets are specified by their path in the build directory'
+       @echo ' INSPIRCD_TARGET=target  Builds a user-specified target, such as "inspircd" or "core_dns"'
        @echo '                         Multiple targets may be separated by a space'
        @echo ''
        @echo ' clean     Cleans object files produced by the compile'