Restore ext/SDBM_File/sdbm/Makefile to its pre-21655 state.
Rafael Garcia-Suarez [Fri, 26 Dec 2003 08:51:06 +0000 (08:51 +0000)]
This fixes building SDBM_File on AIX.

p4raw-id: //depot/perl@21959

ext/SDBM_File/sdbm/Makefile.PL

index 1859aae..48e3c49 100644 (file)
@@ -10,18 +10,18 @@ if ($^O eq 'VMS') {  # Old VAXC compiler can't handle Duff's device
 
 WriteMakefile(
     NAME      => 'sdbm', # (doesn't matter what the name is here) oh yes it does
-    LINKTYPE  => 'static',
+#    LINKTYPE  => 'static',
     DEFINE    => $define,
     INC       => '-I$(PERL_INC)', # force PERL_INC dir ahead of system -I's
+    SKIP      => [qw(dynamic dynamic_lib dlsyms)],
     OBJECT    => '$(O_FILES)',
     clean     => {'FILES' => 'dbu libsdbm.a dbd dba dbe x-dbu *.dir *.pag'},
     H         => [qw(tune.h sdbm.h pair.h $(PERL_INC)/config.h)],
     C         => [qw(sdbm.c pair.c hash.c)]
 );
 
-
-package MY;
-sub constants {
+sub MY::constants {
+    package MY;
     my $self = shift;
 
     $self->{INST_STATIC} = 'libsdbm$(LIB_EXT)';
@@ -29,22 +29,25 @@ sub constants {
     return $self->SUPER::constants();
 }
 
-sub top_targets {
-    my $self = shift;
-    return $self->SUPER::top_targets if $^O eq 'VMS';
+sub MY::top_targets {
     my $r = '
 all :: static
        $(NOECHO) $(NOOP)
 
+config ::
+       $(NOECHO) $(NOOP)
+
 lint:
        lint -abchx $(LIBSRCS)
 
+';
+    $r .= '
 # This is a workaround, the problem is that our old GNU make exports
 # variables into the environment so $(MYEXTLIB) is set in here to this
 # value which can not be built.
 sdbm/libsdbm.a:
        $(NOECHO) $(NOOP)
-';
+' unless $^O eq 'VMS';
 
-    return $r . $self->SUPER::top_targets;
+    return $r;
 }