=pod
=cut
use Config;
use ExtUtils::MakeMaker;
use strict;
my $def_dce_libs = '-L/usr/include/dce -ldce';
my $mm_dce = {
hpux => {LIBS => [$def_dce_libs, "-lc_r"]},
# solaris => {LIBS => [qw(-ldce)],
# DEFINE => '-I/usr/include/dce -D_REENTRANT'}
solaris => {LIBS => [qw(-ldce -lthread -lsocket -lnsl -lm)],
DEFINE => ''}
};
# Provide a default LIBS for other systems.
my $MM_dce = $mm_dce->{$Config{osname}} || {LIBS => [$def_dce_libs]};
my $typemap = '../typemap';
if (!-f $typemap) { $typemap = './typemap'; } # for top level
WriteMakefile (
%$MM_dce,
TYPEMAPS => [$typemap],
XSPROTOARG => '-noprototypes',
NAME => 'DCE-Perl',
VERSION => '0.19',
'dist' => {
COMPRESS=> 'gzip -9f', SUFFIX=>'gz',
POSTOP => 'mv $(DISTNAME)-$(VERSION).tar.gz ../',
},
);
# "\t".'XSUBPPARGS="$(XSUBPPARGS) -typemap ../typemap"\\',
# "\t".'XSUBPPDEPS="$(XSUBPPDEPS) ../typemap"\\',
sub MY::pasthru {
my $self = shift;
chomp(my $str = $self->MM::pasthru);
join $/, "$str\\",
"\t".'DEFINE="$(DEFINE)"\\',
"\t".'PERL="$(PERL)"\\',
"\t".'FULLPERL="$(FULLPERL)"\\',
"\t".'EXTRALIBS="$(EXTRALIBS)"\\',
"\t".'LDLOADLIBS="$(LDLOADLIBS)"\\',
"\t".'XSPROTOARG="$(XSPROTOARG)"',
"";
}
sub MY::test {
q(
TEST_VERBOSE=0
test:
$(FULLPERL) t/TEST $(TEST_VERBOSE)
);
}
sub MY::post_initialize {
my($self) = shift;
# handy for other DCEish .xs modules
$self->{PM}->{'DCE_Perl.h'} = '$(INST_ARCHLIBDIR)/DCE/DCE_Perl.h';
'';
}