/usr/local/CPAN/Net-Bind-rbldnsdAccessor/Makefile.PL
use ExtUtils::MakeMaker;
# See lib/ExtUtils/MakeMaker.pm for details of how to influence
# the contents of the Makefile that is written.
require './scripts/functions.pl';
my $CAT = findpath('cat');
my $CD = 'cd';
my $AR = findpath('ar');
my $RANLIB = findpath('ranlib');
my $zlib = do 'scripts/get_rbldnsd.pl';
if ($@) {
print $@;
exit 0;
}
my $extralibs = ($zlib) ? '' : '-lz';
my $library = 'librbldnsdaccessor.a';
my $libobjects = 'rbldnsdf.o rblf_case.o rblf_name.o';
WriteMakefile(
'NAME' => 'Net::Bind::rbldnsdAccessor',
'VERSION_FROM' => 'rbldnsdAccessor.pm', # finds $VERSION
'LIBS' => [$extralibs],
'INC' => '-Irblndsd',
'OBJECT' => 'rbldnsdAccessor.o '. $library,
'PREREQ_PM' => {
'Net::DNS::Codes' => '0.09',
'Net::DNS::ToolKit' => '0.41',
},
'depend' => {
'rbldnsdAccessor.o' => 'rbldnsdaccessor.h rbldnsdaccessor.c',
},
'clean' => { FILES => "*.bs *.o *~ tmp* *.tmp rbldnsdaccessor.h"},
);
sub MY::constants {
package MY;
my $inherited = shift->SUPER::constants(@_);
$inherited .= qq|
AR = $AR
CAT = $CAT
CD = $CD
RANLIB = $RANLIB
SED = $SED
|;
}
sub MY::top_targets {
package MY; # add dependencies for .pm and xs files
my $inherited = shift->SUPER::top_targets(@_);
$inherited .= q|
rbldnsd/Makefile : rbldnsd/config.h
$(NOOP)
rbldnsd/config.h :
$(CD) rbldnsd; $(SHELL) configure --without-master-dump --without-stats |. $zlib .q#
#. $library . q| : |. $libobjects .q| rbldnsd/rbldnsd.a
-rm -f $@
$(CP) rbldnsd/rbldnsd.a $@
$(AR) rv $@ |. $libobjects .q|
$(RANLIB) $@
rbldnsd/rbldnsd.a : rbldnsd/Makefile rbldnsd/rblf_mem.h
$(CD) rbldnsd; $(MAKE) rbldnsd.a
rbldnsdf.o : rbldnsd/Makefile rbldnsdf.c rbldnsdf.h rblf_base.h rblf_isc_result.h rblf_defines.h rbldnsd_import.h
$(CC) -c $(INC) $(CCFLAGS) $(OPTIMIZE) rbldnsdf.c
rblf_case.o : rblf_case.c rblf_base.h rblf_name.h
$(CC) -c $(INC) $(CCFLAGS) $(OPTIMIZE) rblf_case.c
rblf_name.o : rblf_name.c
$(CC) -c $(INC) $(CCFLAGS) $(OPTIMIZE) rblf_name.c
rbldnsd/rblf_mem.h : rblf_mem.h.in
$(CP) rblf_mem.h.in $@
rbldnsdaccessor.h : rbldnsdaccessor.h.in rblf_mem.h.in
$(CAT) rbldnsdaccessor.h.in rblf_mem.h.in >> $@
|;
}