diff options
author | Gurusamy Sarathy <gsar@cpan.org> | 1998-03-01 06:52:26 +0000 |
---|---|---|
committer | Gurusamy Sarathy <gsar@cpan.org> | 1998-03-01 06:52:26 +0000 |
commit | fbbbcc485c1d03c76a91f998e1e4492c8ad56b38 (patch) | |
tree | 3b1a893d2288b11451c4d4419edd75f4f85d2481 /ext | |
parent | c69f6586a27b86846a13e0177336730d72b33c95 (diff) | |
parent | 1c1c7f20b839aeb1c04942d0884c3efb087d3e4a (diff) | |
download | perl-fbbbcc485c1d03c76a91f998e1e4492c8ad56b38.tar.gz |
[asperl] integrate mainline changes
p4raw-id: //depot/asperl@607
Diffstat (limited to 'ext')
-rw-r--r-- | ext/B/B.xs | 16 | ||||
-rw-r--r-- | ext/B/B/Asmdata.pm | 2 | ||||
-rw-r--r-- | ext/B/Makefile.PL | 11 | ||||
-rw-r--r-- | ext/DB_File/DB_File.xs | 8 | ||||
-rw-r--r-- | ext/POSIX/POSIX.xs | 6 | ||||
-rw-r--r-- | ext/SDBM_File/Makefile.PL | 34 | ||||
-rw-r--r-- | ext/SDBM_File/sdbm/Makefile.PL | 4 | ||||
-rw-r--r-- | ext/SDBM_File/sdbm/sdbm.h | 20 |
8 files changed, 51 insertions, 50 deletions
diff --git a/ext/B/B.xs b/ext/B/B.xs index 0bb7acba02..3e519afe43 100644 --- a/ext/B/B.xs +++ b/ext/B/B.xs @@ -11,8 +11,6 @@ #include "perl.h" #include "XSUB.h" #include "INTERN.h" -#include "bytecode.h" -#include "byterun.h" static char *svclassnames[] = { "B::NULL", @@ -288,20 +286,6 @@ cchar(SV *sv) return sstr; } -void * -bset_obj_store(void *obj, I32 ix) -{ - if (ix > obj_list_fill) { - if (obj_list_fill == -1) - New(666, obj_list, ix + 1, void*); - else - Renew(obj_list, ix + 1, void*); - obj_list_fill = ix; - } - obj_list[ix] = obj; - return obj; -} - #ifdef INDIRECT_BGET_MACROS void freadpv(U32 len, void *data) { diff --git a/ext/B/B/Asmdata.pm b/ext/B/B/Asmdata.pm index 3a3cf6da61..b1df379009 100644 --- a/ext/B/B/Asmdata.pm +++ b/ext/B/B/Asmdata.pm @@ -1,5 +1,5 @@ # -# Copyright (c) 1996, 1997 Malcolm Beattie +# Copyright (c) 1996-1998 Malcolm Beattie # # You may distribute under the terms of either the GNU General Public # License or the Artistic License, as specified in the README file. diff --git a/ext/B/Makefile.PL b/ext/B/Makefile.PL index bc42a34d33..92f01e24c4 100644 --- a/ext/B/Makefile.PL +++ b/ext/B/Makefile.PL @@ -4,7 +4,6 @@ use Config; my $e = $Config{'exe_ext'}; my $o = $Config{'obj_ext'}; my $exeout_flag = '-o '; -my @extras = (); if ($^O eq 'MSWin32') { if ($Config{'cc'} =~ /^cl/i) { $exeout_flag = '-Fe'; @@ -12,21 +11,13 @@ if ($^O eq 'MSWin32') { elsif ($Config{'cc'} =~ /^bcc/i) { $exeout_flag = '-e'; } - # XXX this probably applies to everyone else - @extras = ( - OBJECT => "B$o byterun$o", - depend => { - "B$o" => "B.c ../../bytecode.h ../../byterun.h", - "byterun$o" => "../../byterun.c ../../bytecode.h ../../byterun.h", - }); } WriteMakefile( NAME => "B", VERSION => "a5", - @extras, clean => { - FILES => "perl byteperl$e *$o B.c *~" + FILES => "perl$e byteperl$e *$o B.c *~" } ); diff --git a/ext/DB_File/DB_File.xs b/ext/DB_File/DB_File.xs index b6da38609d..91b4dc2ad5 100644 --- a/ext/DB_File/DB_File.xs +++ b/ext/DB_File/DB_File.xs @@ -533,14 +533,6 @@ DB_File db ; DBT_flags(key) ; DBT_flags(value) ; RETVAL = do_SEQ(db, key, value, R_LAST) ; - if (RETVAL < 0 && errno == EBADF) - { - recno_t oops = -1; - key.data = &oops; - key.size = sizeof(oops); - db_get(db, key, value, 0); - RETVAL = do_SEQ(db, key, value, R_LAST) ; - } if (RETVAL == 0) RETVAL = *(I32 *)key.data ; else /* No key means empty file */ diff --git a/ext/POSIX/POSIX.xs b/ext/POSIX/POSIX.xs index d3714557ec..31439b2365 100644 --- a/ext/POSIX/POSIX.xs +++ b/ext/POSIX/POSIX.xs @@ -247,6 +247,12 @@ char *tzname[] = { "" , "" }; * support is added and NETaa14816 is considered in full. * It does not address tzname aspects of NETaa14816. */ +#ifdef HAS_GNULIBC +# ifndef STRUCT_TM_HASZONE +# define STRUCT_TM_HAS_ZONE +# endif +#endif + #ifdef STRUCT_TM_HASZONE static void init_tm(ptm) /* see mktime, strftime and asctime */ diff --git a/ext/SDBM_File/Makefile.PL b/ext/SDBM_File/Makefile.PL index 02dfd7d84f..c0daa064c7 100644 --- a/ext/SDBM_File/Makefile.PL +++ b/ext/SDBM_File/Makefile.PL @@ -6,21 +6,37 @@ use ExtUtils::MakeMaker; # which perform the corresponding actions in the subdirectory. $define = ($^O eq 'MSWin32') ? '-DMSDOS' : ''; +if ($^O eq 'MSWin32') { + $myextlib = 'sdbm\\libsdbm$(LIB_EXT)'; +} elsif ($^O eq 'VMS') { + $myextlib = 'sdbm/libsdbm$(LIB_EXT)'; +} else { + $myextlib = 'sdbm/libsdbm$(LIB_EXT)'; +} WriteMakefile( - NAME => 'SDBM_File', - MYEXTLIB => 'sdbm'.($^O eq 'MSWin32' ? '\\' : '/').'libsdbm$(LIB_EXT)', - MAN3PODS => ' ', # Pods will be built by installman. - XSPROTOARG => '-noprototypes', # XXX remove later? - VERSION_FROM => 'SDBM_File.pm', - DEFINE => $define, -); - + NAME => 'SDBM_File', + MYEXTLIB => $myextlib, + MAN3PODS => ' ', # Pods will be built by installman. + XSPROTOARG => '-noprototypes', # XXX remove later? + VERSION_FROM => 'SDBM_File.pm', + DEFINE => $define, +# NORECURS => $^O eq 'VMS', +# SKIP => $^O eq 'VMS' ? 'subdirs' : '', # Don't do the subdirs section for VMS + ); sub MY::postamble { + if ($^O ne 'VMS') { ' $(MYEXTLIB): sdbm/Makefile cd sdbm && $(MAKE) all '; + } else { + ' +$(MYEXTLIB): [.sdbm]descrip.mms + set def [.sdbm] + $(MMS) all + set def [-] +'; + } } - diff --git a/ext/SDBM_File/sdbm/Makefile.PL b/ext/SDBM_File/sdbm/Makefile.PL index 50fd83eb25..e9d4dcd0fa 100644 --- a/ext/SDBM_File/sdbm/Makefile.PL +++ b/ext/SDBM_File/sdbm/Makefile.PL @@ -5,11 +5,11 @@ $define .= ' -DWIN32' if ($^O eq 'MSWin32'); 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)], - OBJECT => '$(O_FILES)', + OBJECT => ($^O eq 'VMS') ? 'sdbm.obj pair.obj hash.obj' : '$(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)] diff --git a/ext/SDBM_File/sdbm/sdbm.h b/ext/SDBM_File/sdbm/sdbm.h index ac2dc36b01..b3ed2d4b8b 100644 --- a/ext/SDBM_File/sdbm/sdbm.h +++ b/ext/SDBM_File/sdbm/sdbm.h @@ -9,7 +9,11 @@ #define PAIRMAX 1008 /* arbitrary on PBLKSIZ-N */ #define SPLTMAX 10 /* maximum allowed splits */ /* for a single insertion */ +#ifdef VMS +#define DIRFEXT ".sdbm_dir" +#else #define DIRFEXT ".dir" +#endif #define PAGFEXT ".pag" typedef struct { @@ -116,11 +120,15 @@ extern long sdbm_hash proto((char *, int)); #include <ctype.h> #include <setjmp.h> -#ifdef I_UNISTD +#if defined(I_UNISTD) || defined(VMS) #include <unistd.h> #endif -#if !defined(MSDOS) && !defined(WIN32) +#ifdef VMS +# include <fcntl.h> +#endif + +#if !defined(MSDOS) && !defined(WIN32) && !defined(VMS) # ifdef PARAM_NEEDS_TYPES # include <sys/types.h> # endif @@ -237,7 +245,7 @@ extern long sdbm_hash proto((char *, int)); # endif #else # ifndef memcmp -# /* maybe we should have included the full embedding header... */ + /* maybe we should have included the full embedding header... */ # ifdef NO_EMBED # define memcmp my_memcmp # else @@ -264,7 +272,11 @@ extern long sdbm_hash proto((char *, int)); #endif #ifdef I_NETINET_IN -# include <netinet/in.h> +# ifdef VMS +# include <in.h> +# else +# include <netinet/in.h> +# endif #endif #endif /* Include guard */ |