Import BSDDB 4.7.25 (as of svn r89086)
This commit is contained in:
532
perl/DB_File/Changes
Normal file
532
perl/DB_File/Changes
Normal file
@@ -0,0 +1,532 @@
|
||||
|
||||
|
||||
1.817 27 March 2008
|
||||
|
||||
* Updated dbinfo
|
||||
|
||||
* Applied core patch 32299 - Re-apply change #30562
|
||||
|
||||
* Applied core patch 32208
|
||||
|
||||
* Applied core patch 32884 - use MM->parse_version() in Makefile.PL
|
||||
|
||||
* Applied core patch 32883 - Silence new warning grep in void context warning
|
||||
|
||||
* Applied core patch 32704 to remove use of PL_na in typemap
|
||||
|
||||
* Applied core patch 30562 to fix a build issue on OSF
|
||||
|
||||
1.816 28 October 2007
|
||||
|
||||
* Clarified the warning about building with a different version of
|
||||
Berkeley DB that is used at runtime.
|
||||
|
||||
* Also made the boot version check less strict.
|
||||
[rt.cpan.org #30013]
|
||||
|
||||
1.815 4 February 2007
|
||||
|
||||
* A few casting cleanups for building with C++ from Steve Peters.
|
||||
|
||||
* Fixed problem with recno which happened if you changed directory after
|
||||
opening the database. Problem reported by Andrew Pam.
|
||||
|
||||
|
||||
1.814 11 November 2005
|
||||
|
||||
* Fix from Dominic Dunlop to tidy up an OS-X specific warning in
|
||||
db-btree.t.
|
||||
|
||||
* Silenced a warning about $DB_File::Error only being used once.
|
||||
Issue spotted by Dominic Dunlop.
|
||||
|
||||
1.813 31st October 2005
|
||||
|
||||
* Updates for Berkeley DB 4.4
|
||||
|
||||
1.812 9th October 2005
|
||||
|
||||
* Added libscan to Makefile.PL
|
||||
|
||||
* Fixed test failing under windows
|
||||
|
||||
1.811 12th March 2005
|
||||
|
||||
* Fixed DBM filter bug in seq
|
||||
|
||||
1.810 7th August 2004
|
||||
|
||||
* Fixed db-hash.t for Cygwin
|
||||
|
||||
* Added substr tests to db-hast.t
|
||||
|
||||
* Documented AIX build problem in README.
|
||||
|
||||
1.809 20th June 2004
|
||||
|
||||
* Merged core patch 22258
|
||||
|
||||
* Merged core patch 22741
|
||||
|
||||
* Fixed core bug 30237.
|
||||
Using substr to pass parameters to the low-level Berkeley DB interface
|
||||
causes problems with Perl 5.8.1 or better.
|
||||
typemap fix supplied by Marcus Holland-Moritz.
|
||||
|
||||
1.808 22nd December 2003
|
||||
|
||||
* Added extra DBM Filter tests.
|
||||
|
||||
* Fixed a memory leak in ParseOpenInfo, which whould occur if the
|
||||
opening of the database failed. Leak spotted by Adrian Enache.
|
||||
|
||||
1.807 1st November 2003
|
||||
|
||||
* Fixed minor typos on pod documetation - reported by Jeremy Mates &
|
||||
Mark Jason Dominus.
|
||||
|
||||
* dbinfo updated to report when a database is encrypted.
|
||||
|
||||
1.806 22nd October 2002
|
||||
|
||||
* Fixed problem when trying to build with a multi-threaded perl.
|
||||
|
||||
* Tidied up the recursion detetion code.
|
||||
|
||||
* merged core patch 17844 - missing dTHX declarations.
|
||||
|
||||
* merged core patch 17838
|
||||
|
||||
1.805 1st September 2002
|
||||
|
||||
* Added support to allow DB_File to build with Berkeley DB 4.1.X
|
||||
|
||||
* Tightened up the test harness to test that calls to untie don't generate
|
||||
the "untie attempted while %d inner references still exist" warning.
|
||||
|
||||
* added code to guard against calling the callbacks (compare,hash & prefix)
|
||||
recursively.
|
||||
|
||||
* pasing undef for the flags and/or mode when opening a database could cause
|
||||
a "Use of uninitialized value in subroutine entry" warning. Now silenced.
|
||||
|
||||
* DBM filter code beefed up to cope with read-only $_.
|
||||
|
||||
1.804 2nd June 2002
|
||||
|
||||
* Perl core patch 14939 added a new warning to "splice". This broke the
|
||||
db-recno test harness. Fixed.
|
||||
|
||||
* merged core patches 16502 & 16540.
|
||||
|
||||
1.803 1st March 2002
|
||||
|
||||
* Fixed a problem with db-btree.t where it complained about an "our"
|
||||
variable redeclaation.
|
||||
|
||||
* FETCH, STORE & DELETE don't map the flags parameter into the
|
||||
equivalent Berkeley DB function anymore.
|
||||
|
||||
1.802 6th January 2002
|
||||
|
||||
* The message about some test failing in db-recno.t had the wrong test
|
||||
numbers. Fixed.
|
||||
|
||||
* merged core patch 13942.
|
||||
|
||||
1.801 26th November 2001
|
||||
|
||||
* Fixed typo in Makefile.PL
|
||||
|
||||
* Added "clean" attribute to Makefile.PL
|
||||
|
||||
1.800 23rd November 2001
|
||||
|
||||
* use pport.h for perl backward compatability code.
|
||||
|
||||
* use new ExtUtils::Constant module to generate XS constants.
|
||||
|
||||
* upgrade Makefile.PL upgrade/downgrade code to toggle "our" with
|
||||
"use vars"
|
||||
|
||||
1.79 22nd October 2001
|
||||
|
||||
* Added a "local $SIG{__DIE__}" inside the eval that checks for
|
||||
the presence of XSLoader s suggested by Andrew Hryckowin.
|
||||
|
||||
* merged core patch 12277.
|
||||
|
||||
* Changed NEXTKEY to not initialise the input key. It isn't used anyway.
|
||||
|
||||
1.79 22nd October 2001
|
||||
|
||||
* Fixed test harness for cygwin
|
||||
|
||||
1.78 30th July 2001
|
||||
|
||||
* the test in Makefile.PL for AIX used -plthreads. Should have been
|
||||
-lpthreads
|
||||
|
||||
* merged Core patches
|
||||
10372, 10335, 10372, 10534, 10549, 10643, 11051, 11194, 11432
|
||||
|
||||
* added documentation patch regarding duplicate keys from Andrew Johnson
|
||||
|
||||
|
||||
1.77 26th April 2001
|
||||
|
||||
* AIX is reported to need -lpthreads, so Makefile.PL now checks for
|
||||
AIX and adds it to the link options.
|
||||
|
||||
* Minor documentation updates.
|
||||
|
||||
* Merged Core patch 9176
|
||||
|
||||
* Added a patch from Edward Avis that adds support for splice with
|
||||
recno databases.
|
||||
|
||||
* Modified Makefile.PL to only enable the warnings pragma if using perl
|
||||
5.6.1 or better.
|
||||
|
||||
1.76 15th January 2001
|
||||
|
||||
* Added instructions for using LD_PRELOAD to get Berkeley DB 2.x to work
|
||||
with DB_File on Linux. Thanks to Norbert Bollow for sending details of
|
||||
this approach.
|
||||
|
||||
|
||||
1.75 17th December 2000
|
||||
|
||||
* Fixed perl core patch 7703
|
||||
|
||||
* Added suppport to allow DB_File to be built with Berkeley DB 3.2 --
|
||||
btree_compare, btree_prefix and hash_cb needed to be changed.
|
||||
|
||||
* Updated dbinfo to support Berkeley DB 3.2 file format changes.
|
||||
|
||||
|
||||
1.74 10th December 2000
|
||||
|
||||
* A "close" call in DB_File.xs needed parenthesised to stop win32 from
|
||||
thinking it was one of its macros.
|
||||
|
||||
* Updated dbinfo to support Berkeley DB 3.1 file format changes.
|
||||
|
||||
* DB_File.pm & the test hasness now use the warnings pragma (when
|
||||
available).
|
||||
|
||||
* Included Perl core patch 7703 -- size argument for hash_cb is different
|
||||
for Berkeley DB 3.x
|
||||
|
||||
* Included Perl core patch 7801 -- Give __getBerkeleyDBInfo the ANSI C
|
||||
treatment.
|
||||
|
||||
* @a = () produced the warning 'Argument "" isn't numeric in entersub'
|
||||
This has been fixed. Thanks to Edward Avis for spotting this bug.
|
||||
|
||||
* Added note about building under Linux. Included patches.
|
||||
|
||||
* Included Perl core patch 8068 -- fix for bug 20001013.009
|
||||
When run with warnings enabled "$hash{XX} = undef " produced an
|
||||
"Uninitialized value" warning. This has been fixed.
|
||||
|
||||
1.73 31st May 2000
|
||||
|
||||
* Added support in version.c for building with threaded Perl.
|
||||
|
||||
* Berkeley DB 3.1 has reenabled support for null keys. The test
|
||||
harness has been updated to reflect this.
|
||||
|
||||
1.72 16th January 2000
|
||||
|
||||
* Added hints/sco.pl
|
||||
|
||||
* The module will now use XSLoader when it is available. When it
|
||||
isn't it will use DynaLoader.
|
||||
|
||||
* The locking section in DB_File.pm has been discredited. Many thanks
|
||||
to David Harris for spotting the underlying problem, contributing
|
||||
the updates to the documentation and writing DB_File::Lock (available
|
||||
on CPAN).
|
||||
|
||||
1.71 7th September 1999
|
||||
|
||||
* Fixed a bug that prevented 1.70 from compiling under win32
|
||||
|
||||
* Updated to support Berkeley DB 3.x
|
||||
|
||||
* Updated dbinfo for Berkeley DB 3.x file formats.
|
||||
|
||||
1.70 4th August 1999
|
||||
|
||||
* Initialise $DB_File::db_ver and $DB_File::db_version with
|
||||
GV_ADD|GV_ADDMULT -- bug spotted by Nick Ing-Simmons.
|
||||
|
||||
* Added a BOOT check to test for equivalent versions of db.h &
|
||||
libdb.a/so.
|
||||
|
||||
1.69 3rd August 1999
|
||||
|
||||
* fixed a bug in push -- DB_APPEND wasn't working properly.
|
||||
|
||||
* Fixed the R_SETCURSOR bug introduced in 1.68
|
||||
|
||||
* Added a new Perl variable $DB_File::db_ver
|
||||
|
||||
1.68 22nd July 1999
|
||||
|
||||
* Merged changes from 5.005_58
|
||||
|
||||
* Fixed a bug in R_IBEFORE & R_IAFTER procesing in Berkeley DB
|
||||
2 databases.
|
||||
|
||||
* Added some of the examples in the POD into the test harness.
|
||||
|
||||
1.67 6th June 1999
|
||||
|
||||
* Added DBM Filter documentation to DB_File.pm
|
||||
|
||||
* Fixed DBM Filter code to work with 5.004
|
||||
|
||||
* A few instances of newSVpvn were used in 1.66. This isn't available in
|
||||
Perl 5.004_04 or earlier. Replaced with newSVpv.
|
||||
|
||||
1.66 15th March 1999
|
||||
|
||||
* Added DBM Filter code
|
||||
|
||||
1.65 6th March 1999
|
||||
|
||||
* Fixed a bug in the recno PUSH logic.
|
||||
* The BOOT version check now needs 2.3.4 when using Berkeley DB version 2
|
||||
|
||||
1.64 21st February 1999
|
||||
|
||||
* Tidied the 1.x to 2.x flag mapping code.
|
||||
* Added a patch from Mark Kettenis <kettenis@wins.uva.nl> to fix a flag
|
||||
mapping problem with O_RDONLY on the Hurd
|
||||
* Updated the message that db-recno.t prints when tests 51, 53 or 55 fail.
|
||||
|
||||
1.63 19th December 1998
|
||||
|
||||
* Fix to allow DB 2.6.x to build with DB_File
|
||||
* Documentation updated to use push,pop etc in the RECNO example &
|
||||
to include the find_dup & del_dup methods.
|
||||
|
||||
1.62 30th November 1998
|
||||
|
||||
Added hints/dynixptx.pl.
|
||||
Fixed typemap -- 1.61 used PL_na instead of na
|
||||
|
||||
1.61 19th November 1998
|
||||
|
||||
Added a note to README about how to build Berkeley DB 2.x when
|
||||
using HP-UX.
|
||||
Minor modifications to get the module to build with DB 2.5.x
|
||||
Fixed a typo in the definition of O_RDONLY, courtesy of Mark Kettenis.
|
||||
|
||||
1.60
|
||||
Changed the test to check for full tied array support
|
||||
|
||||
1.59
|
||||
Updated the license section.
|
||||
|
||||
Berkeley DB 2.4.10 disallows zero length keys. Tests 32 & 42 in
|
||||
db-btree.t and test 27 in db-hash.t failed because of this change.
|
||||
Those tests have been zapped.
|
||||
|
||||
Added dbinfo to the distribution.
|
||||
|
||||
1.58
|
||||
Tied Array support was enhanced in Perl 5.004_57. DB_File now
|
||||
supports PUSH,POP,SHIFT,UNSHIFT & STORESIZE.
|
||||
|
||||
Fixed a problem with the use of sv_setpvn. When the size is
|
||||
specified as 0, it does a strlen on the data. This was ok for DB
|
||||
1.x, but isn't for DB 2.x.
|
||||
|
||||
1.57
|
||||
If Perl has been compiled with Threads support,the symbol op will be
|
||||
defined. This clashes with a field name in db.h, so it needs to be
|
||||
#undef'ed before db.h is included.
|
||||
|
||||
1.56
|
||||
Documented the Solaris 2.5 mutex bug
|
||||
|
||||
1.55
|
||||
Merged 1.16 changes.
|
||||
|
||||
1.54
|
||||
|
||||
Fixed a small bug in the test harness when run under win32
|
||||
The emulation of fd when useing DB 2.x was busted.
|
||||
|
||||
1.53
|
||||
|
||||
Added DB_RENUMBER to flags for recno.
|
||||
|
||||
1.52
|
||||
|
||||
Patch from Nick Ing-Simmons now allows DB_File to build on NT.
|
||||
Merged 1.15 patch.
|
||||
|
||||
1.51
|
||||
|
||||
Fixed the test harness so that it doesn't expect DB_File to have
|
||||
been installed by the main Perl build.
|
||||
|
||||
|
||||
Fixed a bug in mapping 1.x O_RDONLY flag to 2.x DB_RDONLY equivalent
|
||||
|
||||
1.50
|
||||
|
||||
DB_File can now build with either DB 1.x or 2.x, but not both at
|
||||
the same time.
|
||||
|
||||
1.16
|
||||
|
||||
A harmless looking tab was causing Makefile.PL to fail on AIX 3.2.5
|
||||
|
||||
Small fix for the AIX strict C compiler XLC which doesn't like
|
||||
__attribute__ being defined via proto.h and redefined via db.h. Fix
|
||||
courtesy of Jarkko Hietaniemi.
|
||||
|
||||
1.15
|
||||
|
||||
Patch from Gisle Aas <gisle@aas.no> to suppress "use of undefined
|
||||
value" warning with db_get and db_seq.
|
||||
|
||||
Patch from Gisle Aas <gisle@aas.no> to make DB_File export only the
|
||||
O_* constants from Fcntl.
|
||||
|
||||
Removed the DESTROY method from the DB_File::HASHINFO module.
|
||||
|
||||
Previously DB_File hard-wired the class name of any object that it
|
||||
created to "DB_File". This makes sub-classing difficult. Now
|
||||
DB_File creats objects in the namespace of the package it has been
|
||||
inherited into.
|
||||
|
||||
|
||||
1.14
|
||||
|
||||
Made it illegal to tie an associative array to a RECNO database and
|
||||
an ordinary array to a HASH or BTREE database.
|
||||
|
||||
1.13
|
||||
|
||||
Minor changes to DB_FIle.xs and DB_File.pm
|
||||
|
||||
1.12
|
||||
|
||||
Documented the incompatibility with version 2 of Berkeley DB.
|
||||
|
||||
1.11
|
||||
|
||||
Documented the untie gotcha.
|
||||
|
||||
1.10
|
||||
|
||||
Fixed fd method so that it still returns -1 for in-memory files
|
||||
when db 1.86 is used.
|
||||
|
||||
1.09
|
||||
|
||||
Minor bug fix in DB_File::HASHINFO, DB_File::RECNOINFO and
|
||||
DB_File::BTREEINFO.
|
||||
|
||||
Changed default mode to 0666.
|
||||
|
||||
1.08
|
||||
|
||||
Documented operation of bval.
|
||||
|
||||
1.07
|
||||
|
||||
Fixed bug with RECNO, where bval wasn't defaulting to "\n".
|
||||
|
||||
1.06
|
||||
|
||||
Minor namespace cleanup: Localized PrintBtree.
|
||||
|
||||
1.05
|
||||
|
||||
Made all scripts in the documentation strict and -w clean.
|
||||
|
||||
Added logic to DB_File.xs to allow the module to be built after
|
||||
Perl is installed.
|
||||
|
||||
1.04
|
||||
|
||||
Minor documentation changes.
|
||||
|
||||
Fixed a bug in hash_cb. Patches supplied by Dave Hammen,
|
||||
<hammen@gothamcity.jsc.nasa.govt>.
|
||||
|
||||
Fixed a bug with the constructors for DB_File::HASHINFO,
|
||||
DB_File::BTREEINFO and DB_File::RECNOINFO. Also tidied up the
|
||||
constructors to make them -w clean.
|
||||
|
||||
Reworked part of the test harness to be more locale friendly.
|
||||
|
||||
1.03
|
||||
|
||||
Documentation update.
|
||||
|
||||
DB_File now imports the constants (O_RDWR, O_CREAT etc.) from Fcntl
|
||||
automatically.
|
||||
|
||||
The standard hash function exists is now supported.
|
||||
|
||||
Modified the behavior of get_dup. When it returns an associative
|
||||
array, the value is the count of the number of matching BTREE
|
||||
values.
|
||||
|
||||
1.02
|
||||
|
||||
Merged OS/2 specific code into DB_File.xs
|
||||
|
||||
Removed some redundant code in DB_File.xs.
|
||||
|
||||
Documentation update.
|
||||
|
||||
Allow negative subscripts with RECNO interface.
|
||||
|
||||
Changed the default flags from O_RDWR to O_CREAT|O_RDWR.
|
||||
|
||||
The example code which showed how to lock a database needed a call
|
||||
to sync added. Without it the resultant database file was empty.
|
||||
|
||||
Added get_dup method.
|
||||
|
||||
1.01
|
||||
|
||||
Fixed a core dump problem with SunOS.
|
||||
|
||||
The return value from TIEHASH wasn't set to NULL when dbopen
|
||||
returned an error.
|
||||
|
||||
1.0
|
||||
|
||||
DB_File has been in use for over a year. To reflect that, the
|
||||
version number has been incremented to 1.0.
|
||||
|
||||
Added complete support for multiple concurrent callbacks.
|
||||
|
||||
Using the push method on an empty list didn't work properly. This
|
||||
has been fixed.
|
||||
|
||||
0.3
|
||||
|
||||
Added prototype support for multiple btree compare callbacks.
|
||||
|
||||
0.2
|
||||
|
||||
When DB_File is opening a database file it no longer terminates the
|
||||
process if dbopen returned an error. This allows file protection
|
||||
errors to be caught at run time. Thanks to Judith Grass
|
||||
<grass@cybercash.com> for spotting the bug.
|
||||
|
||||
0.1
|
||||
|
||||
First Release.
|
||||
|
||||
2299
perl/DB_File/DB_File.pm
Normal file
2299
perl/DB_File/DB_File.pm
Normal file
File diff suppressed because it is too large
Load Diff
1995
perl/DB_File/DB_File.xs
Normal file
1995
perl/DB_File/DB_File.xs
Normal file
File diff suppressed because it is too large
Load Diff
6
perl/DB_File/DB_File_BS
Normal file
6
perl/DB_File/DB_File_BS
Normal file
@@ -0,0 +1,6 @@
|
||||
# NeXT needs /usr/lib/libposix.a to load along with DB_File.so
|
||||
if ( $dlsrc eq "dl_next.xs" ) {
|
||||
@DynaLoader::dl_resolve_using = ( '/usr/lib/libposix.a' );
|
||||
}
|
||||
|
||||
1;
|
||||
32
perl/DB_File/MANIFEST
Normal file
32
perl/DB_File/MANIFEST
Normal file
@@ -0,0 +1,32 @@
|
||||
Changes
|
||||
DB_File.pm
|
||||
DB_File.xs
|
||||
DB_File_BS
|
||||
MANIFEST
|
||||
Makefile.PL
|
||||
README
|
||||
config.in
|
||||
dbinfo
|
||||
fallback.h
|
||||
fallback.xs
|
||||
hints/dynixptx.pl
|
||||
hints/sco.pl
|
||||
patches/5.004
|
||||
patches/5.004_01
|
||||
patches/5.004_02
|
||||
patches/5.004_03
|
||||
patches/5.004_04
|
||||
patches/5.004_05
|
||||
patches/5.005
|
||||
patches/5.005_01
|
||||
patches/5.005_02
|
||||
patches/5.005_03
|
||||
patches/5.6.0
|
||||
ppport.h
|
||||
t/db-btree.t
|
||||
t/db-hash.t
|
||||
t/db-recno.t
|
||||
t/pod.t
|
||||
typemap
|
||||
version.c
|
||||
META.yml Module meta-data (added by MakeMaker)
|
||||
13
perl/DB_File/META.yml
Normal file
13
perl/DB_File/META.yml
Normal file
@@ -0,0 +1,13 @@
|
||||
--- #YAML:1.0
|
||||
name: DB_File
|
||||
version: 1.817
|
||||
abstract: Perl5 access to Berkeley DB version 1.x
|
||||
license: perl
|
||||
author:
|
||||
- Paul Marquess <pmqs@cpan.org>
|
||||
generated_by: ExtUtils::MakeMaker version 6.44
|
||||
distribution_type: module
|
||||
requires:
|
||||
meta-spec:
|
||||
url: http://module-build.sourceforge.net/META-spec-v1.3.html
|
||||
version: 1.3
|
||||
359
perl/DB_File/Makefile.PL
Normal file
359
perl/DB_File/Makefile.PL
Normal file
@@ -0,0 +1,359 @@
|
||||
#! perl -w
|
||||
|
||||
use strict ;
|
||||
use ExtUtils::MakeMaker 5.16 ;
|
||||
use Config ;
|
||||
|
||||
die "DB_File needs Perl 5.004_05 or better. This is $]\n"
|
||||
if $] <= 5.00404;
|
||||
|
||||
my $VER_INFO ;
|
||||
my $LIB_DIR ;
|
||||
my $INC_DIR ;
|
||||
my $DB_NAME ;
|
||||
my $LIBS ;
|
||||
my $COMPAT185 = "" ;
|
||||
|
||||
ParseCONFIG() ;
|
||||
|
||||
my @files = ('DB_File.pm', glob "t/*.t") ;
|
||||
UpDowngrade(@files);
|
||||
|
||||
if (defined $DB_NAME)
|
||||
{ $LIBS = $DB_NAME }
|
||||
else {
|
||||
if ($^O eq 'MSWin32')
|
||||
{ $LIBS = '-llibdb' }
|
||||
else
|
||||
{ $LIBS = '-ldb' }
|
||||
}
|
||||
|
||||
# Solaris is special.
|
||||
#$LIBS .= " -lthread" if $^O eq 'solaris' ;
|
||||
|
||||
# AIX is special.
|
||||
$LIBS .= " -lpthread" if $^O eq 'aix' ;
|
||||
|
||||
# OS2 is a special case, so check for it now.
|
||||
my $OS2 = "" ;
|
||||
$OS2 = "-DOS2" if $Config{'osname'} eq 'os2' ;
|
||||
|
||||
my $WALL = '' ;
|
||||
#$WALL = ' -Wall ';
|
||||
|
||||
WriteMakefile(
|
||||
NAME => 'DB_File',
|
||||
LIBS => ["-L${LIB_DIR} $LIBS"],
|
||||
#MAN3PODS => {}, # Pods will be built by installman.
|
||||
INC => "-I$INC_DIR",
|
||||
VERSION_FROM => 'DB_File.pm',
|
||||
XS_VERSION => eval MM->parse_version('DB_File.pm'),
|
||||
XSPROTOARG => '-noprototypes',
|
||||
DEFINE => "-D_NOT_CORE $OS2 $VER_INFO $COMPAT185 $WALL",
|
||||
OBJECT => 'version$(OBJ_EXT) DB_File$(OBJ_EXT)',
|
||||
((ExtUtils::MakeMaker->VERSION() gt '6.30')
|
||||
? ('LICENSE' => 'perl')
|
||||
: ()
|
||||
),
|
||||
(
|
||||
$] >= 5.005
|
||||
? (ABSTRACT_FROM => 'DB_File.pm',
|
||||
AUTHOR => 'Paul Marquess <pmqs@cpan.org>')
|
||||
: ()
|
||||
),
|
||||
|
||||
|
||||
#OPTIMIZE => '-g',
|
||||
'depend' => { 'Makefile' => 'config.in',
|
||||
'version$(OBJ_EXT)' => 'version.c'},
|
||||
'clean' => { FILES => 'constants.h constants.xs' },
|
||||
'macro' => { INSTALLDIRS => 'perl', my_files => "@files" },
|
||||
'dist' => { COMPRESS => 'gzip', SUFFIX => 'gz',
|
||||
DIST_DEFAULT => 'MyDoubleCheck tardist'},
|
||||
);
|
||||
|
||||
|
||||
my @names = qw(
|
||||
BTREEMAGIC
|
||||
BTREEVERSION
|
||||
DB_LOCK
|
||||
DB_SHMEM
|
||||
DB_TXN
|
||||
HASHMAGIC
|
||||
HASHVERSION
|
||||
MAX_PAGE_NUMBER
|
||||
MAX_PAGE_OFFSET
|
||||
MAX_REC_NUMBER
|
||||
RET_ERROR
|
||||
RET_SPECIAL
|
||||
RET_SUCCESS
|
||||
R_CURSOR
|
||||
R_DUP
|
||||
R_FIRST
|
||||
R_FIXEDLEN
|
||||
R_IAFTER
|
||||
R_IBEFORE
|
||||
R_LAST
|
||||
R_NEXT
|
||||
R_NOKEY
|
||||
R_NOOVERWRITE
|
||||
R_PREV
|
||||
R_RECNOSYNC
|
||||
R_SETCURSOR
|
||||
R_SNAPSHOT
|
||||
__R_UNUSED
|
||||
);
|
||||
|
||||
if (eval {require ExtUtils::Constant; 1}) {
|
||||
# Check the constants above all appear in @EXPORT in DB_File.pm
|
||||
my %names = map { $_, 1} @names;
|
||||
open F, "<DB_File.pm" or die "Cannot open DB_File.pm: $!\n";
|
||||
while (<F>)
|
||||
{
|
||||
last if /^\s*\@EXPORT\s+=\s+qw\(/ ;
|
||||
}
|
||||
|
||||
while (<F>)
|
||||
{
|
||||
last if /^\s*\)/ ;
|
||||
/(\S+)/ ;
|
||||
delete $names{$1} if defined $1 ;
|
||||
}
|
||||
close F ;
|
||||
|
||||
if ( keys %names )
|
||||
{
|
||||
my $missing = join ("\n\t", sort keys %names) ;
|
||||
die "The following names are missing from \@EXPORT in DB_File.pm\n" .
|
||||
"\t$missing\n" ;
|
||||
}
|
||||
|
||||
|
||||
ExtUtils::Constant::WriteConstants(
|
||||
NAME => 'DB_File',
|
||||
NAMES => \@names,
|
||||
C_FILE => 'constants.h',
|
||||
XS_FILE => 'constants.xs',
|
||||
|
||||
);
|
||||
}
|
||||
else {
|
||||
use File::Copy;
|
||||
copy ('fallback.h', 'constants.h')
|
||||
or die "Can't copy fallback.h to constants.h: $!";
|
||||
copy ('fallback.xs', 'constants.xs')
|
||||
or die "Can't copy fallback.xs to constants.xs: $!";
|
||||
}
|
||||
|
||||
exit;
|
||||
|
||||
|
||||
sub MY::libscan
|
||||
{
|
||||
my $self = shift ;
|
||||
my $path = shift ;
|
||||
|
||||
return undef
|
||||
if $path =~ /(~|\.bak)$/ ||
|
||||
$path =~ /^\..*\.swp$/ ;
|
||||
|
||||
return $path;
|
||||
}
|
||||
|
||||
|
||||
sub MY::postamble { <<'EOM' } ;
|
||||
|
||||
MyDoubleCheck:
|
||||
@echo Checking config.in is setup for a release
|
||||
@(grep "^LIB.*/usr/local/BerkeleyDB" config.in && \
|
||||
grep "^INCLUDE.*/usr/local/BerkeleyDB" config.in && \
|
||||
grep "^#DBNAME.*" config.in) >/dev/null || \
|
||||
(echo config.in needs fixing ; exit 1)
|
||||
@echo config.in is ok
|
||||
@echo
|
||||
@echo Checking DB_File.xs is ok for a release.
|
||||
@(perl -ne ' exit 1 if /^\s*#\s*define\s+TRACE/ ; ' DB_File.xs || \
|
||||
(echo DB_File.xs needs fixing ; exit 1))
|
||||
@echo DB_File.xs is ok
|
||||
@echo
|
||||
@echo Checking for $$^W in files: $(my_files)
|
||||
@perl -ne ' \
|
||||
exit 1 if /^\s*local\s*\(\s*\$$\^W\s*\)/;' $(my_files) || \
|
||||
(echo found unexpected $$^W ; exit 1)
|
||||
@echo No $$^W found.
|
||||
@echo
|
||||
@echo Checking for 'use vars' in files: $(my_files)
|
||||
@perl -ne ' \
|
||||
exit 0 if /^__(DATA|END)__/; \
|
||||
exit 1 if /^\s*use\s+vars/;' $(my_files) || \
|
||||
(echo found unexpected "use vars"; exit 1)
|
||||
@echo No 'use vars' found.
|
||||
@echo
|
||||
@echo All files are OK for a release.
|
||||
@echo
|
||||
|
||||
EOM
|
||||
|
||||
|
||||
|
||||
sub ParseCONFIG
|
||||
{
|
||||
my ($k, $v) ;
|
||||
my @badkey = () ;
|
||||
my %Info = () ;
|
||||
my @Options = qw( INCLUDE LIB PREFIX HASH DBNAME COMPAT185 ) ;
|
||||
my %ValidOption = map {$_, 1} @Options ;
|
||||
my %Parsed = %ValidOption ;
|
||||
my $CONFIG = 'config.in' ;
|
||||
|
||||
print "Parsing $CONFIG...\n" ;
|
||||
|
||||
# DBNAME & COMPAT185 are optional, so pretend they have
|
||||
# been parsed.
|
||||
delete $Parsed{'DBNAME'} ;
|
||||
delete $Parsed{'COMPAT185'} ;
|
||||
$Info{COMPAT185} = "No" ;
|
||||
|
||||
|
||||
open(F, "$CONFIG") or die "Cannot open file $CONFIG: $!\n" ;
|
||||
while (<F>) {
|
||||
s/^\s*|\s*$//g ;
|
||||
next if /^\s*$/ or /^\s*#/ ;
|
||||
s/\s*#\s*$// ;
|
||||
|
||||
($k, $v) = split(/\s+=\s+/, $_, 2) ;
|
||||
$k = uc $k ;
|
||||
if ($ValidOption{$k}) {
|
||||
delete $Parsed{$k} ;
|
||||
$Info{$k} = $v ;
|
||||
}
|
||||
else {
|
||||
push(@badkey, $k) ;
|
||||
}
|
||||
}
|
||||
close F ;
|
||||
|
||||
print "Unknown keys in $CONFIG ignored [@badkey]\n"
|
||||
if @badkey ;
|
||||
|
||||
# check parsed values
|
||||
my @missing = () ;
|
||||
die "The following keys are missing from $CONFIG file: [@missing]\n"
|
||||
if @missing = keys %Parsed ;
|
||||
|
||||
$INC_DIR = $ENV{'DB_FILE_INCLUDE'} || $Info{'INCLUDE'} ;
|
||||
$LIB_DIR = $ENV{'DB_FILE_LIB'} || $Info{'LIB'} ;
|
||||
$DB_NAME = $ENV{'DB_FILE_NAME'} || $Info{'DBNAME'} ;
|
||||
$COMPAT185 = "-DCOMPAT185 -DDB_LIBRARY_COMPATIBILITY_API"
|
||||
if (defined $ENV{'DB_FILE_COMPAT185'} &&
|
||||
$ENV{'DB_FILE_COMPAT185'} =~ /^\s*(on|true|1)\s*$/i) ||
|
||||
$Info{'COMPAT185'} =~ /^\s*(on|true|1)\s*$/i ;
|
||||
my $PREFIX = $Info{'PREFIX'} ;
|
||||
my $HASH = $Info{'HASH'} ;
|
||||
|
||||
$VER_INFO = "-DmDB_Prefix_t=${PREFIX} -DmDB_Hash_t=${HASH}" ;
|
||||
|
||||
print <<EOM if 0 ;
|
||||
INCLUDE [$INC_DIR]
|
||||
LIB [$LIB_DIR]
|
||||
HASH [$HASH]
|
||||
PREFIX [$PREFIX]
|
||||
DBNAME [$DB_NAME]
|
||||
|
||||
EOM
|
||||
|
||||
print "Looks Good.\n" ;
|
||||
|
||||
}
|
||||
|
||||
sub UpDowngrade
|
||||
{
|
||||
my @files = @_ ;
|
||||
|
||||
# our is stable from 5.6.0 onward
|
||||
# warnings is stable from 5.6.1 onward
|
||||
|
||||
# Note: this code assumes that each statement it modifies is not
|
||||
# split across multiple lines.
|
||||
|
||||
|
||||
my $warn_sub ;
|
||||
my $our_sub ;
|
||||
|
||||
if ($] < 5.006001) {
|
||||
# From: use|no warnings "blah"
|
||||
# To: local ($^W) = 1; # use|no warnings "blah"
|
||||
#
|
||||
# and
|
||||
#
|
||||
# From: warnings::warnif(x,y);
|
||||
# To: $^W && carp(y); # warnif -- x
|
||||
$warn_sub = sub {
|
||||
s/^(\s*)(no\s+warnings)/${1}local (\$^W) = 0; #$2/ ;
|
||||
s/^(\s*)(use\s+warnings)/${1}local (\$^W) = 1; #$2/ ;
|
||||
|
||||
s/^(\s*)warnings::warnif\s*\((.*?)\s*,\s*(.*?)\)\s*;/${1}\$^W && carp($3); # warnif - $2/ ;
|
||||
};
|
||||
}
|
||||
else {
|
||||
# From: local ($^W) = 1; # use|no warnings "blah"
|
||||
# To: use|no warnings "blah"
|
||||
#
|
||||
# and
|
||||
#
|
||||
# From: $^W && carp(y); # warnif -- x
|
||||
# To: warnings::warnif(x,y);
|
||||
$warn_sub = sub {
|
||||
s/^(\s*)local\s*\(\$\^W\)\s*=\s*\d+\s*;\s*#\s*((no|use)\s+warnings.*)/$1$2/ ;
|
||||
s/^(\s*)\$\^W\s+\&\&\s*carp\s*\((.*?)\)\s*;\s*#\s*warnif\s*-\s*(.*)/${1}warnings::warnif($3, $2);/ ;
|
||||
};
|
||||
}
|
||||
|
||||
if ($] < 5.006000) {
|
||||
$our_sub = sub {
|
||||
if ( /^(\s*)our\s+\(\s*([^)]+\s*)\)/ ) {
|
||||
my $indent = $1;
|
||||
my $vars = join ' ', split /\s*,\s*/, $2;
|
||||
$_ = "${indent}use vars qw($vars);\n";
|
||||
}
|
||||
};
|
||||
}
|
||||
else {
|
||||
$our_sub = sub {
|
||||
if ( /^(\s*)use\s+vars\s+qw\((.*?)\)/ ) {
|
||||
my $indent = $1;
|
||||
my $vars = join ', ', split ' ', $2;
|
||||
$_ = "${indent}our ($vars);\n";
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
foreach (@files)
|
||||
{ doUpDown($our_sub, $warn_sub, $_) }
|
||||
}
|
||||
|
||||
|
||||
sub doUpDown
|
||||
{
|
||||
my $our_sub = shift;
|
||||
my $warn_sub = shift;
|
||||
|
||||
local ($^I) = ".bak" ;
|
||||
local (@ARGV) = shift;
|
||||
|
||||
while (<>)
|
||||
{
|
||||
print, last if /^__(END|DATA)__/ ;
|
||||
|
||||
&{ $our_sub }();
|
||||
&{ $warn_sub }();
|
||||
print ;
|
||||
}
|
||||
|
||||
return if eof ;
|
||||
|
||||
while (<>)
|
||||
{ print }
|
||||
}
|
||||
|
||||
# end of file Makefile.PL
|
||||
592
perl/DB_File/README
Normal file
592
perl/DB_File/README
Normal file
@@ -0,0 +1,592 @@
|
||||
DB_File
|
||||
|
||||
Version 1.817
|
||||
|
||||
27th March 2008
|
||||
|
||||
Copyright (c) 1995-2008 Paul Marquess. All rights reserved. This
|
||||
program is free software; you can redistribute it and/or modify
|
||||
it under the same terms as Perl itself.
|
||||
|
||||
|
||||
IMPORTANT NOTICE
|
||||
================
|
||||
|
||||
If are using the locking technique described in older versions of
|
||||
DB_File, please read the section called "Locking: The Trouble with fd"
|
||||
in DB_File.pm immediately. The locking method has been found to be
|
||||
unsafe. You risk corrupting your data if you continue to use it.
|
||||
|
||||
DESCRIPTION
|
||||
-----------
|
||||
|
||||
DB_File is a module which allows Perl programs to make use of the
|
||||
facilities provided by Berkeley DB version 1. (DB_File can be built
|
||||
version 2, 3 or 4 of Berkeley DB, but it will only support the 1.x
|
||||
features),
|
||||
|
||||
If you want to make use of the new features available in Berkeley DB
|
||||
2.x, 3.x or 4.x, use the Perl module BerkeleyDB instead.
|
||||
|
||||
Berkeley DB is a C library which provides a consistent interface to a
|
||||
number of database formats. DB_File provides an interface to all three
|
||||
of the database types (hash, btree and recno) currently supported by
|
||||
Berkeley DB.
|
||||
|
||||
For further details see the documentation included at the end of the
|
||||
file DB_File.pm.
|
||||
|
||||
PREREQUISITES
|
||||
-------------
|
||||
|
||||
Before you can build DB_File you must have the following installed on
|
||||
your system:
|
||||
|
||||
* Perl 5.004_05 or greater.
|
||||
|
||||
* Berkeley DB.
|
||||
|
||||
The official web site for Berkeley DB is
|
||||
|
||||
http://www.oracle.com/technology/products/berkeley-db/db/index.html
|
||||
|
||||
The latest version of Berkeley DB is always available there. It
|
||||
is recommended that you use the most recent version available.
|
||||
|
||||
The one exception to this advice is where you want to use DB_File
|
||||
to access database files created by a third-party application, like
|
||||
Sendmail or Netscape. In these cases you must build DB_File with a
|
||||
compatible version of Berkeley DB.
|
||||
|
||||
If you want to use Berkeley DB 2.x, you must have version 2.3.4
|
||||
or greater. If you want to use Berkeley DB 3.x or 4.x, any version
|
||||
will do. For Berkeley DB 1.x, use either version 1.85 or 1.86.
|
||||
|
||||
|
||||
BUILDING THE MODULE
|
||||
-------------------
|
||||
|
||||
Assuming you have met all the prerequisites, building the module should
|
||||
be relatively straightforward.
|
||||
|
||||
Step 1 : If you are running either Solaris 2.5 or HP-UX 10 and want
|
||||
to use Berkeley DB version 2, 3 or 4, read either the Solaris Notes
|
||||
or HP-UX Notes sections below. If you are running Linux please
|
||||
read the Linux Notes section before proceeding.
|
||||
|
||||
Step 2 : Edit the file config.in to suit you local installation.
|
||||
Instructions are given in the file.
|
||||
|
||||
Step 3 : Build and test the module using this sequence of commands:
|
||||
|
||||
perl Makefile.PL
|
||||
make
|
||||
make test
|
||||
|
||||
|
||||
NOTE:
|
||||
If you have a very old version of Berkeley DB (i.e. pre 1.85),
|
||||
three of the tests in the recno test harness may fail (tests 51,
|
||||
53 and 55). You can safely ignore the errors if you're never
|
||||
going to use the broken functionality (recno databases with a
|
||||
modified bval). Otherwise you'll have to upgrade your DB
|
||||
library.
|
||||
|
||||
|
||||
INSTALLATION
|
||||
------------
|
||||
|
||||
make install
|
||||
|
||||
UPDATES
|
||||
=======
|
||||
|
||||
The most recent version of DB_File is always available at
|
||||
|
||||
http://www.cpan.org/modules/by-module/DB_File/
|
||||
|
||||
TROUBLESHOOTING
|
||||
===============
|
||||
|
||||
Here are some of the common problems people encounter when building
|
||||
DB_File.
|
||||
|
||||
Missing db.h or libdb.a
|
||||
-----------------------
|
||||
|
||||
If you get an error like this:
|
||||
|
||||
cc -c -I/usr/local/include -Dbool=char -DHAS_BOOL
|
||||
-O2 -DVERSION=\"1.64\" -DXS_VERSION=\"1.64\" -fpic
|
||||
-I/usr/local/lib/perl5/i586-linux/5.00404/CORE -DmDB_Prefix_t=size_t
|
||||
-DmDB_Hash_t=u_int32_t DB_File.c
|
||||
DB_File.xs:101: db.h: No such file or directory
|
||||
|
||||
or this:
|
||||
|
||||
LD_RUN_PATH="/lib" cc -o blib/arch/auto/DB_File/DB_File.so -shared
|
||||
-L/usr/local/lib DB_File.o -L/usr/local/lib -ldb
|
||||
ld: cannot open -ldb: No such file or directory
|
||||
|
||||
This symptom can imply:
|
||||
|
||||
1. You don't have Berkeley DB installed on your system at all.
|
||||
Solution: get & install Berkeley DB.
|
||||
|
||||
2. You do have Berkeley DB installed, but it isn't in a standard place.
|
||||
Solution: Edit config.in and set the LIB and INCLUDE variables to point
|
||||
to the directories where libdb.a and db.h are installed.
|
||||
|
||||
|
||||
|
||||
|
||||
Undefined symbol db_version
|
||||
---------------------------
|
||||
|
||||
DB_File seems to have built correctly, but you get an error like this
|
||||
when you run the test harness:
|
||||
|
||||
$ make test
|
||||
PERL_DL_NONLAZY=1 /usr/bin/perl5.00404 -I./blib/arch -I./blib/lib
|
||||
-I/usr/local/lib/perl5/i586-linux/5.00404 -I/usr/local/lib/perl5 -e 'use
|
||||
Test::Harness qw(&runtests $verbose); $verbose=0; runtests @ARGV;' t/*.t
|
||||
t/db-btree..........Can't load './blib/arch/auto/DB_File/DB_File.so' for
|
||||
module DB_File: ./blib/arch/auto/DB_File/DB_File.so: undefined symbol:
|
||||
db_version at /usr/local/lib/perl5/i586-linux/5.00404/DynaLoader.pm
|
||||
line 166.
|
||||
|
||||
at t/db-btree.t line 21
|
||||
BEGIN failed--compilation aborted at t/db-btree.t line 21.
|
||||
dubious Test returned status 2 (wstat 512, 0x200)
|
||||
|
||||
This error usually happens when you have two version of Berkeley DB
|
||||
installed on your system -- specifically, if you have both version 1 and
|
||||
a newer version (i.e. version 2 or better) of Berkeley DB installed. If
|
||||
DB_File is built using the db.h for the newer Berkeley DB and the version
|
||||
1 Berkeley DB library you will trigger this error. Unfortunately the two
|
||||
versions aren't compatible with each other. The undefined symbol error is
|
||||
caused because Berkeley DB version 1 doesn't have the symbol db_version.
|
||||
|
||||
Solution: Setting the LIB & INCLUDE variables in config.in to point to the
|
||||
correct directories can sometimes be enough to fix this
|
||||
problem. If that doesn't work the easiest way to fix the
|
||||
problem is to either delete or temporarily rename the copies
|
||||
of db.h and libdb.a that you don't want DB_File to use.
|
||||
|
||||
|
||||
Undefined symbol dbopen
|
||||
-----------------------
|
||||
|
||||
DB_File seems to have built correctly, but you get an error like this
|
||||
when you run the test harness:
|
||||
|
||||
...
|
||||
t/db-btree..........Can't load 'blib/arch/auto/DB_File/DB_File.so' for
|
||||
module DB_File: blib/arch/auto/DB_File/DB_File.so: undefined symbol:
|
||||
dbopen at /usr/local/lib/perl5/5.6.1/i586-linux/DynaLoader.pm line 206.
|
||||
at t/db-btree.t line 23
|
||||
Compilation failed in require at t/db-btree.t line 23.
|
||||
...
|
||||
|
||||
This error usually happens when you have both version 1 and a more recent
|
||||
version of Berkeley DB installed on your system and DB_File attempts
|
||||
to build using the db.h for Berkeley DB version 1 and the newer version
|
||||
library. Unfortunately the two versions aren't compatible with each
|
||||
other. The undefined symbol error is actually caused because versions
|
||||
of Berkeley DB newer than version 1 doesn't have the symbol dbopen.
|
||||
|
||||
Solution: Setting the LIB & INCLUDE variables in config.in to point to the
|
||||
correct directories can sometimes be enough to fix this
|
||||
problem. If that doesn't work the easiest way to fix the
|
||||
problem is to either delete or temporarily rename the copies
|
||||
of db.h and libdb.a that you don't want DB_File to use.
|
||||
|
||||
|
||||
Incompatible versions of db.h and libdb
|
||||
---------------------------------------
|
||||
|
||||
BerkeleyDB seems to have built correctly, but you get an error like this
|
||||
when you run the test harness:
|
||||
|
||||
$ make test
|
||||
PERL_DL_NONLAZY=1 /home/paul/perl/install/bin/perl5.00560 -Iblib/arch
|
||||
-Iblib/lib -I/home/paul/perl/install/5.005_60/lib/5.00560/i586-linux
|
||||
-I/home/paul/perl/install/5.005_60/lib/5.00560 -e 'use Test::Harness
|
||||
qw(&runtests $verbose); $verbose=0; runtests @ARGV;' t/*.t
|
||||
t/db-btree..........
|
||||
DB_File was build with libdb version 2.3.7
|
||||
but you are attempting to run it with libdb version 2.7.5
|
||||
BEGIN failed--compilation aborted at t/db-btree.t line 21.
|
||||
...
|
||||
|
||||
Another variation on the theme of having two versions of Berkeley DB on
|
||||
your system.
|
||||
|
||||
Solution: Setting the LIB & INCLUDE variables in config.in to point to the
|
||||
correct directories can sometimes be enough to fix this
|
||||
problem. If that doesn't work the easiest way to fix the
|
||||
problem is to either delete or temporarily rename the copies
|
||||
of db.h and libdb.a that you don't want BerkeleyDB to use.
|
||||
If you are running Linux, please read the Linux Notes section
|
||||
below.
|
||||
|
||||
|
||||
Solaris build fails with "language optional software package not installed"
|
||||
---------------------------------------------------------------------------
|
||||
|
||||
If you are trying to build this module under Solaris and you get an
|
||||
error message like this
|
||||
|
||||
/usr/ucb/cc: language optional software package not installed
|
||||
|
||||
it means that Perl cannot find the C compiler on your system. The cryptic
|
||||
message is just Sun's way of telling you that you haven't bought their
|
||||
C compiler.
|
||||
|
||||
When you build a Perl module that needs a C compiler, the Perl build
|
||||
system tries to use the same C compiler that was used to build perl
|
||||
itself. In this case your Perl binary was built with a C compiler that
|
||||
lived in /usr/ucb.
|
||||
|
||||
To continue with building this module, you need to get a C compiler,
|
||||
or tell Perl where your C compiler is, if you already have one.
|
||||
|
||||
Assuming you have now got a C compiler, what you do next will be dependant
|
||||
on what C compiler you have installed. If you have just installed Sun's
|
||||
C compiler, you shouldn't have to do anything. Just try rebuilding
|
||||
this module.
|
||||
|
||||
If you have installed another C compiler, say gcc, you have to tell perl
|
||||
how to use it instead of /usr/ucb/cc.
|
||||
|
||||
This set of options seems to work if you want to use gcc. Your mileage
|
||||
may vary.
|
||||
|
||||
perl Makefile.PL CC=gcc CCCDLFLAGS=-fPIC OPTIMIZE=" "
|
||||
make test
|
||||
|
||||
If that doesn't work for you, it's time to make changes to the Makefile
|
||||
by hand. Good luck!
|
||||
|
||||
|
||||
|
||||
Solaris build fails with "gcc: unrecognized option `-KPIC'"
|
||||
-----------------------------------------------------------
|
||||
|
||||
You are running Solaris and you get an error like this when you try to
|
||||
build this Perl module
|
||||
|
||||
gcc: unrecognized option `-KPIC'
|
||||
|
||||
This symptom usually means that you are using a Perl binary that has been
|
||||
built with the Sun C compiler, but you are using gcc to build this module.
|
||||
|
||||
When Perl builds modules that need a C compiler, it will attempt to use
|
||||
the same C compiler and command line options that was used to build perl
|
||||
itself. In this case "-KPIC" is a valid option for the Sun C compiler,
|
||||
but not for gcc. The equivalent option for gcc is "-fPIC".
|
||||
|
||||
The solution is either:
|
||||
|
||||
1. Build both Perl and this module with the same C compiler, either
|
||||
by using the Sun C compiler for both or gcc for both.
|
||||
|
||||
2. Try generating the Makefile for this module like this perl
|
||||
|
||||
perl Makefile.PL CC=gcc CCCDLFLAGS=-fPIC OPTIMIZE=" " LD=gcc
|
||||
make test
|
||||
|
||||
This second option seems to work when mixing a Perl binary built
|
||||
with the Sun C compiler and this module built with gcc. Your
|
||||
mileage may vary.
|
||||
|
||||
|
||||
|
||||
|
||||
Linux Notes
|
||||
-----------
|
||||
|
||||
Some older versions of Linux (e.g. RedHat 6, SuSe 6) ship with a C library
|
||||
that has version 2.x of Berkeley DB linked into it. This makes it
|
||||
difficult to build this module with anything other than the version of
|
||||
Berkeley DB that shipped with your Linux release. If you do try to use
|
||||
a different version of Berkeley DB you will most likely get the error
|
||||
described in the "Incompatible versions of db.h and libdb" section of
|
||||
this file.
|
||||
|
||||
To make matters worse, prior to Perl 5.6.1, the perl binary itself
|
||||
*always* included the Berkeley DB library.
|
||||
|
||||
If you want to use a newer version of Berkeley DB with this module, the
|
||||
easiest solution is to use Perl 5.6.1 (or better) and Berkeley DB 3.x
|
||||
(or better).
|
||||
|
||||
There are two approaches you can use to get older versions of Perl to
|
||||
work with specific versions of Berkeley DB. Both have their advantages
|
||||
and disadvantages.
|
||||
|
||||
The first approach will only work when you want to build a version of
|
||||
Perl older than 5.6.1 along with Berkeley DB 3.x. If you want to use
|
||||
Berkeley DB 2.x, you must use the next approach. This approach involves
|
||||
rebuilding your existing version of Perl after applying an unofficial
|
||||
patch. The "patches" directory in the this module's source distribution
|
||||
contains a number of patch files. There is one patch file for every
|
||||
stable version of Perl since 5.004. Apply the appropriate patch to your
|
||||
Perl source tree before re-building and installing Perl from scratch.
|
||||
For example, assuming you are in the top-level source directory for
|
||||
Perl 5.6.0, the command below will apply the necessary patch. Remember
|
||||
to replace the path shown below with one that points to this module's
|
||||
patches directory.
|
||||
|
||||
patch -p1 -N </path/to/DB_File/patches/5.6.0
|
||||
|
||||
Now rebuild & install perl. You should now have a perl binary that can
|
||||
be used to build this module. Follow the instructions in "BUILDING THE
|
||||
MODULE", remembering to set the INCLUDE and LIB variables in config.in.
|
||||
|
||||
|
||||
The second approach will work with both Berkeley DB 2.x and 3.x.
|
||||
Start by building Berkeley DB as a shared library. This is from
|
||||
the Berkeley DB build instructions:
|
||||
|
||||
Building Shared Libraries for the GNU GCC compiler
|
||||
|
||||
If you're using gcc and there's no better shared library example for
|
||||
your architecture, the following shared library build procedure will
|
||||
probably work.
|
||||
|
||||
Add the -fpic option to the CFLAGS value in the Makefile.
|
||||
|
||||
Rebuild all of your .o files. This will create a Berkeley DB library
|
||||
that contains .o files with PIC code. To build the shared library,
|
||||
then take the following steps in the library build directory:
|
||||
|
||||
% mkdir tmp
|
||||
% cd tmp
|
||||
% ar xv ../libdb.a
|
||||
% gcc -shared -o libdb.so *.o
|
||||
% mv libdb.so ..
|
||||
% cd ..
|
||||
% rm -rf tmp
|
||||
|
||||
Note, you may have to change the gcc line depending on the
|
||||
requirements of your system.
|
||||
|
||||
The file libdb.so is your shared library
|
||||
|
||||
Once you have built libdb.so, you will need to store it somewhere safe.
|
||||
|
||||
cp libdb.so /usr/local/BerkeleyDB/lib
|
||||
|
||||
If you now set the LD_PRELOAD environment variable to point to this
|
||||
shared library, Perl will use it instead of the version of Berkeley DB
|
||||
that shipped with your Linux distribution.
|
||||
|
||||
export LD_PRELOAD=/usr/local/BerkeleyDB/lib/libdb.so
|
||||
|
||||
Finally follow the instructions in "BUILDING THE MODULE" to build,
|
||||
test and install this module. Don't forget to set the INCLUDE and LIB
|
||||
variables in config.in.
|
||||
|
||||
Remember, you will need to have the LD_PRELOAD variable set anytime you
|
||||
want to use Perl with Berkeley DB. Also note that if you have LD_PRELOAD
|
||||
permanently set it will affect ALL commands you execute. This may be a
|
||||
problem if you run any commands that access a database created by the
|
||||
version of Berkeley DB that shipped with your Linux distribution.
|
||||
|
||||
|
||||
Solaris Notes
|
||||
-------------
|
||||
|
||||
If you are running Solaris 2.5, and you get this error when you run the
|
||||
DB_File test harness:
|
||||
|
||||
libc internal error: _rmutex_unlock: rmutex not held.
|
||||
|
||||
you probably need to install a Sun patch. It has been reported that
|
||||
Sun patch 103187-25 (or later revisions) fixes this problem.
|
||||
|
||||
To find out if you have the patch installed, the command "showrev -p"
|
||||
will display the patches that are currently installed on your system.
|
||||
|
||||
|
||||
HP-UX 10 Notes
|
||||
--------------
|
||||
|
||||
Some people running HP-UX 10 have reported getting an error like this
|
||||
when building DB_File with the native HP-UX compiler.
|
||||
|
||||
ld: (Warning) At least one PA 2.0 object file (DB_File.o) was detected.
|
||||
The linked output may not run on a PA 1.x system.
|
||||
ld: Invalid loader fixup for symbol "$000000A5".
|
||||
|
||||
If this is the case for you, Berkeley DB needs to be recompiled with
|
||||
the +z or +Z option and the resulting library placed in a .sl file. The
|
||||
following steps should do the trick:
|
||||
|
||||
1: Configure the Berkeley DB distribution with the +z or +Z C compiler
|
||||
flag:
|
||||
|
||||
env "CFLAGS=+z" ../dist/configure ...
|
||||
|
||||
2: Edit the Berkeley DB Makefile and change:
|
||||
|
||||
"libdb= libdb.a" to "libdb= libdb.sl".
|
||||
|
||||
|
||||
3: Build and install the Berkeley DB distribution as usual.
|
||||
|
||||
HP-UX 11 Notes
|
||||
--------------
|
||||
|
||||
Some people running the combination of HP-UX 11 and Berkeley DB 2.7.7 have
|
||||
reported getting this error when the run the test harness for DB_File
|
||||
|
||||
...
|
||||
lib/db-btree.........Can't call method "DELETE" on an undefined value at lib/db-btree.t line 216.
|
||||
FAILED at test 26
|
||||
lib/db-hash..........Can't call method "DELETE" on an undefined value at lib/db-hash.t line 183.
|
||||
FAILED at test 22
|
||||
...
|
||||
|
||||
The fix for this is to rebuild and install Berkeley DB with the bigfile
|
||||
option disabled.
|
||||
|
||||
|
||||
IRIX NOTES
|
||||
----------
|
||||
|
||||
If you are running IRIX, and want to use Berkeley DB version 1, you can
|
||||
get it from http://reality.sgi.com/ariel. It has the patches necessary
|
||||
to compile properly on IRIX 5.3.
|
||||
|
||||
AIX NOTES
|
||||
---------
|
||||
|
||||
I've had reports of a build failure like this on AIX 5.2 using the
|
||||
xlC compiler.
|
||||
|
||||
rm -f blib/arch/auto/DB_File/DB_File.so
|
||||
LD_RUN_PATH="" ld -bhalt:4 -bM:SRE -bI:/usr/local/5.8.1/lib/perl5/5.8.1/aix/CORE/perl.exp -bE:DB_File.exp -bnoentry -lc
|
||||
-L/usr/local/lib version.o DB_File.o -o blib/arch/auto/DB_File/DB_File.so
|
||||
-L/usr/local/BerkeleyDB/lib -ldb -lpthread
|
||||
ld: 0711-317 ERROR: Undefined symbol: .mutex_lock
|
||||
ld: 0711-317 ERROR: Undefined symbol: .cond_signal
|
||||
ld: 0711-317 ERROR: Undefined symbol: .mutex_unlock
|
||||
ld: 0711-317 ERROR: Undefined symbol: .mutex_trylock
|
||||
ld: 0711-317 ERROR: Undefined symbol: .cond_wait
|
||||
ld: 0711-317 ERROR: Undefined symbol: .mutex_init
|
||||
ld: 0711-317 ERROR: Undefined symbol: .cond_init
|
||||
ld: 0711-317 ERROR: Undefined symbol: .mutex_destroy
|
||||
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
|
||||
make: 1254-004 The error code from the last command is 8.
|
||||
|
||||
Editing Makefile.PL, and changing the line
|
||||
|
||||
$LIBS .= " -lpthread" if $^O eq 'aix' ;
|
||||
|
||||
to this
|
||||
|
||||
$LIBS .= " -lthread" if $^O eq 'aix' ;
|
||||
|
||||
fixed the problem.
|
||||
|
||||
|
||||
FEEDBACK
|
||||
========
|
||||
|
||||
General feedback/questions/bug reports can be sent to me at pmqs@cpan.org.
|
||||
|
||||
Alternatively, if you have Usenet access, you can try the
|
||||
comp.databases.berkeley-db or comp.lang.perl.modules groups.
|
||||
|
||||
|
||||
|
||||
How to report a problem with DB_File.
|
||||
-------------------------------------
|
||||
|
||||
When reporting any problem, I need the information requested below.
|
||||
|
||||
1. The *complete* output from running this
|
||||
|
||||
perl -V
|
||||
|
||||
Do not edit the output in any way.
|
||||
Note, I want you to run "perl -V" and NOT "perl -v".
|
||||
|
||||
If your perl does not understand the "-V" option it is too
|
||||
old. DB_File needs Perl version 5.00405 or better.
|
||||
|
||||
2. The version of DB_File you have.
|
||||
If you have successfully installed DB_File, this one-liner will
|
||||
tell you:
|
||||
|
||||
perl -e 'use DB_File; print qq{DB_File ver $DB_File::VERSION\n}'
|
||||
|
||||
If you are running windows use this
|
||||
|
||||
perl -e "use DB_File; print qq{DB_File ver $DB_File::VERSION\n}"
|
||||
|
||||
If you haven't installed DB_File then search DB_File.pm for a line
|
||||
like this:
|
||||
|
||||
$VERSION = "1.20" ;
|
||||
|
||||
3. The version of Berkeley DB used to build DB_File and the version
|
||||
that is used at runtime. (These are usually the same)
|
||||
|
||||
If you are using a version older than 1.85, think about upgrading. One
|
||||
point to note if you are considering upgrading Berkeley DB - the
|
||||
file formats for 1.85, 1.86, 2.0, 3.0 & 3.1 are all different.
|
||||
|
||||
If you have successfully installed DB_File, these commands will display
|
||||
the versions I need
|
||||
|
||||
perl -MDB_File -e 'print qq{Built with Berkeley DB ver $DB_File::db_ver\n}'
|
||||
perl -MDB_File -e 'print qq{Running with Berkeley DB ver $DB_File::db_version\n}'
|
||||
|
||||
If you are running windows use this
|
||||
|
||||
perl -e "use DB_File; print qq{Built with Berkeley DB ver $DB_File::db_ver\n}"
|
||||
perl -e "use DB_File; print qq{Running Berkeley DB ver $DB_File::db_version\n}"
|
||||
|
||||
4. A copy the file config.in from the DB_File main source directory.
|
||||
|
||||
5. A listing of directories where Berkeley DB is installed.
|
||||
For example, if Berkeley DB is installed in /usr/BerkeleDB/lib and
|
||||
/usr/BerkeleyDB/include, I need the output from running this
|
||||
|
||||
ls -l /usr/BerkeleyDB/lib
|
||||
ls -l /usr/BerkeleyDB/include
|
||||
|
||||
6. If you are having problems building DB_File, send me a complete log
|
||||
of what happened. Start by unpacking the DB_File module into a fresh
|
||||
directory and keep a log of all the steps
|
||||
|
||||
[edit config.in, if necessary]
|
||||
perl Makefile.PL
|
||||
make
|
||||
make test TEST_VERBOSE=1
|
||||
|
||||
7. Now the difficult one. If you think you have found a bug in DB_File
|
||||
and you want me to fix it, you will *greatly* enhance the chances
|
||||
of me being able to track it down by sending me a small
|
||||
self-contained Perl script that illustrates the problem you are
|
||||
encountering. Include a summary of what you think the problem is
|
||||
and a log of what happens when you run the script, in case I can't
|
||||
reproduce your problem on my system. If possible, don't have the
|
||||
script dependent on an existing 20Meg database. If the script you
|
||||
send me can create the database itself then that is preferred.
|
||||
|
||||
I realise that in some cases this is easier said than done, so if
|
||||
you can only reproduce the problem in your existing script, then
|
||||
you can post me that if you want. Just don't expect me to find your
|
||||
problem in a hurry, or at all. :-)
|
||||
|
||||
|
||||
CHANGES
|
||||
-------
|
||||
|
||||
See the Changes file.
|
||||
|
||||
Paul Marquess <pmqs@cpan.org>
|
||||
97
perl/DB_File/config.in
Normal file
97
perl/DB_File/config.in
Normal file
@@ -0,0 +1,97 @@
|
||||
# Filename: config.in
|
||||
#
|
||||
# written by Paul Marquess <Paul.Marquess@btinternet.com>
|
||||
# last modified 9th Sept 1997
|
||||
# version 1.55
|
||||
|
||||
# 1. Where is the file db.h?
|
||||
#
|
||||
# Change the path below to point to the directory where db.h is
|
||||
# installed on your system.
|
||||
|
||||
INCLUDE = /usr/local/BerkeleyDB/include
|
||||
#INCLUDE = /usr/local/include
|
||||
#INCLUDE = /usr/include
|
||||
|
||||
# 2. Where is libdb?
|
||||
#
|
||||
# Change the path below to point to the directory where libdb is
|
||||
# installed on your system.
|
||||
|
||||
LIB = /usr/local/BerkeleyDB/lib
|
||||
#LIB = /usr/local/lib
|
||||
#LIB = /usr/lib
|
||||
|
||||
# 3. What version of Berkely DB have you got?
|
||||
#
|
||||
# If you have version 2.0 or greater, you can skip this question.
|
||||
#
|
||||
# If you have Berkeley DB 1.78 or greater you shouldn't have to
|
||||
# change the definitions for PREFIX and HASH below.
|
||||
#
|
||||
# For older versions of Berkeley DB change both PREFIX and HASH to int.
|
||||
# Version 1.71, 1.72 and 1.73 are known to need this change.
|
||||
#
|
||||
# If you don't know what version you have have a look in the file db.h.
|
||||
#
|
||||
# Search for the string "DB_VERSION_MAJOR". If it is present, you
|
||||
# have Berkeley DB version 2 (or greater).
|
||||
#
|
||||
# If that didn't work, find the definition of the BTREEINFO typedef.
|
||||
# Check the return type from the prefix element. It should look like
|
||||
# this in an older copy of db.h:
|
||||
#
|
||||
# int (*prefix) __P((const DBT *, const DBT *));
|
||||
#
|
||||
# and like this in a more recent copy:
|
||||
#
|
||||
# size_t (*prefix) /* prefix function */
|
||||
# __P((const DBT *, const DBT *));
|
||||
#
|
||||
# Change the definition of PREFIX, below, to reflect the return type
|
||||
# of the prefix function in your db.h.
|
||||
#
|
||||
# Now find the definition of the HASHINFO typedef. Check the return
|
||||
# type of the hash element. Older versions look like this:
|
||||
#
|
||||
# int (*hash) __P((const void *, size_t));
|
||||
#
|
||||
# newer like this:
|
||||
#
|
||||
# u_int32_t /* hash function */
|
||||
# (*hash) __P((const void *, size_t));
|
||||
#
|
||||
# Change the definition of HASH, below, to reflect the return type of
|
||||
# the hash function in your db.h.
|
||||
#
|
||||
|
||||
PREFIX = size_t
|
||||
HASH = u_int32_t
|
||||
|
||||
# 4. Is the library called libdb?
|
||||
#
|
||||
# If you have copies of both 1.x and 2.x Berkeley DB installed on
|
||||
# your system it can sometimes be tricky to make sure you are using
|
||||
# the correct one. Renaming one (or creating a symbolic link) to
|
||||
# include the version number of the library can help.
|
||||
#
|
||||
# For example, if you have both Berkeley DB 2.3.12 and 1.85 on your
|
||||
# system and you want to use the Berkeley DB version 2 library you
|
||||
# could rename the version 2 library from libdb.a to libdb-2.3.12.a and
|
||||
# change the DBNAME line below to look like this:
|
||||
#
|
||||
# DBNAME = -ldb-2.3.12
|
||||
#
|
||||
# That will ensure you are linking the correct version of the DB
|
||||
# library.
|
||||
#
|
||||
# Note: If you are building this module with Win32, -llibdb will be
|
||||
# used by default.
|
||||
#
|
||||
# If you have changed the name of the library, uncomment the line
|
||||
# below (by removing the leading #) and edit the line to use the name
|
||||
# you have picked.
|
||||
|
||||
#DBNAME = -ldb-2.4.10
|
||||
|
||||
# end of file config.in
|
||||
133
perl/DB_File/dbinfo
Normal file
133
perl/DB_File/dbinfo
Normal file
@@ -0,0 +1,133 @@
|
||||
#!/usr/local/bin/perl
|
||||
|
||||
# Name: dbinfo -- identify berkeley DB version used to create
|
||||
# a database file
|
||||
#
|
||||
# Author: Paul Marquess <Paul.Marquess@btinternet.com>
|
||||
# Version: 1.06
|
||||
# Date 27th MArch 2008
|
||||
#
|
||||
# Copyright (c) 1998-2008 Paul Marquess. All rights reserved.
|
||||
# This program is free software; you can redistribute it and/or
|
||||
# modify it under the same terms as Perl itself.
|
||||
|
||||
# Todo: Print more stats on a db file, e.g. no of records
|
||||
# add log/txn/lock files
|
||||
|
||||
use strict ;
|
||||
|
||||
my %Data =
|
||||
(
|
||||
0x053162 => # DB_BTREEMAGIC
|
||||
{
|
||||
Type => "Btree",
|
||||
Versions => # DB_BTREEVERSION
|
||||
{
|
||||
1 => [0, "Unknown (older than 1.71)"],
|
||||
2 => [0, "Unknown (older than 1.71)"],
|
||||
3 => [0, "1.71 -> 1.85, 1.86"],
|
||||
4 => [0, "Unknown"],
|
||||
5 => [0, "2.0.0 -> 2.3.0"],
|
||||
6 => [0, "2.3.1 -> 2.7.7"],
|
||||
7 => [0, "3.0.x"],
|
||||
8 => [0, "3.1.x -> 4.0.x"],
|
||||
9 => [1, "4.1.x or greater"],
|
||||
}
|
||||
},
|
||||
0x061561 => # DB_HASHMAGIC
|
||||
{
|
||||
Type => "Hash",
|
||||
Versions => # DB_HASHVERSION
|
||||
{
|
||||
1 => [0, "Unknown (older than 1.71)"],
|
||||
2 => [0, "1.71 -> 1.85"],
|
||||
3 => [0, "1.86"],
|
||||
4 => [0, "2.0.0 -> 2.1.0"],
|
||||
5 => [0, "2.2.6 -> 2.7.7"],
|
||||
6 => [0, "3.0.x"],
|
||||
7 => [0, "3.1.x -> 4.0.x"],
|
||||
8 => [1, "4.1.x or greater"],
|
||||
9 => [1, "4.6.x or greater"],
|
||||
}
|
||||
},
|
||||
0x042253 => # DB_QAMMAGIC
|
||||
{
|
||||
Type => "Queue",
|
||||
Versions => # DB_QAMVERSION
|
||||
{
|
||||
1 => [0, "3.0.x"],
|
||||
2 => [0, "3.1.x"],
|
||||
3 => [0, "3.2.x -> 4.0.x"],
|
||||
4 => [1, "4.1.x or greater"],
|
||||
}
|
||||
},
|
||||
) ;
|
||||
|
||||
die "Usage: dbinfo file\n" unless @ARGV == 1 ;
|
||||
|
||||
print "testing file $ARGV[0]...\n\n" ;
|
||||
open (F, "<$ARGV[0]") or die "Cannot open file $ARGV[0]: $!\n" ;
|
||||
|
||||
my $buff ;
|
||||
read F, $buff, 30 ;
|
||||
|
||||
|
||||
my (@info) = unpack("NNNNNNC", $buff) ;
|
||||
my (@info1) = unpack("VVVVVVC", $buff) ;
|
||||
my ($magic, $version, $endian, $encrypt) ;
|
||||
|
||||
if ($Data{$info[0]}) # first try DB 1.x format, big endian
|
||||
{
|
||||
$magic = $info[0] ;
|
||||
$version = $info[1] ;
|
||||
$endian = "Big Endian" ;
|
||||
$encrypt = "Not Supported";
|
||||
}
|
||||
elsif ($Data{$info1[0]}) # first try DB 1.x format, little endian
|
||||
{
|
||||
$magic = $info1[0] ;
|
||||
$version = $info1[1] ;
|
||||
$endian = "Little Endian" ;
|
||||
$encrypt = "Not Supported";
|
||||
}
|
||||
elsif ($Data{$info[3]}) # next DB 2.x big endian
|
||||
{
|
||||
$magic = $info[3] ;
|
||||
$version = $info[4] ;
|
||||
$endian = "Big Endian" ;
|
||||
}
|
||||
elsif ($Data{$info1[3]}) # next DB 2.x little endian
|
||||
{
|
||||
$magic = $info1[3] ;
|
||||
$version = $info1[4] ;
|
||||
$endian = "Little Endian" ;
|
||||
}
|
||||
else
|
||||
{ die "not a Berkeley DB database file.\n" }
|
||||
|
||||
my $type = $Data{$magic} ;
|
||||
$magic = sprintf "%06X", $magic ;
|
||||
|
||||
my $ver_string = "Unknown" ;
|
||||
|
||||
if ( defined $type->{Versions}{$version} )
|
||||
{
|
||||
$ver_string = $type->{Versions}{$version}[1];
|
||||
if ($type->{Versions}{$version}[0] )
|
||||
{ $encrypt = $info[6] ? "Enabled" : "Disabled" }
|
||||
else
|
||||
{ $encrypt = "Not Supported" }
|
||||
}
|
||||
|
||||
print <<EOM ;
|
||||
File Type: Berkeley DB $type->{Type} file.
|
||||
File Version ID: $version
|
||||
Built with Berkeley DB: $ver_string
|
||||
Byte Order: $endian
|
||||
Magic: $magic
|
||||
Encryption: $encrypt
|
||||
EOM
|
||||
|
||||
close F ;
|
||||
|
||||
exit ;
|
||||
455
perl/DB_File/fallback.h
Normal file
455
perl/DB_File/fallback.h
Normal file
@@ -0,0 +1,455 @@
|
||||
#define PERL_constant_NOTFOUND 1
|
||||
#define PERL_constant_NOTDEF 2
|
||||
#define PERL_constant_ISIV 3
|
||||
#define PERL_constant_ISNO 4
|
||||
#define PERL_constant_ISNV 5
|
||||
#define PERL_constant_ISPV 6
|
||||
#define PERL_constant_ISPVN 7
|
||||
#define PERL_constant_ISSV 8
|
||||
#define PERL_constant_ISUNDEF 9
|
||||
#define PERL_constant_ISUV 10
|
||||
#define PERL_constant_ISYES 11
|
||||
|
||||
#ifndef NVTYPE
|
||||
typedef double NV; /* 5.6 and later define NVTYPE, and typedef NV to it. */
|
||||
#endif
|
||||
#ifndef aTHX_
|
||||
#define aTHX_ /* 5.6 or later define this for threading support. */
|
||||
#endif
|
||||
#ifndef pTHX_
|
||||
#define pTHX_ /* 5.6 or later define this for threading support. */
|
||||
#endif
|
||||
|
||||
static int
|
||||
constant_6 (pTHX_ const char *name, IV *iv_return) {
|
||||
/* When generated this function returned values for the list of names given
|
||||
here. However, subsequent manual editing may have added or removed some.
|
||||
DB_TXN R_LAST R_NEXT R_PREV */
|
||||
/* Offset 2 gives the best switch position. */
|
||||
switch (name[2]) {
|
||||
case 'L':
|
||||
if (memEQ(name, "R_LAST", 6)) {
|
||||
/* ^ */
|
||||
#ifdef R_LAST
|
||||
*iv_return = R_LAST;
|
||||
return PERL_constant_ISIV;
|
||||
#else
|
||||
return PERL_constant_NOTDEF;
|
||||
#endif
|
||||
}
|
||||
break;
|
||||
case 'N':
|
||||
if (memEQ(name, "R_NEXT", 6)) {
|
||||
/* ^ */
|
||||
#ifdef R_NEXT
|
||||
*iv_return = R_NEXT;
|
||||
return PERL_constant_ISIV;
|
||||
#else
|
||||
return PERL_constant_NOTDEF;
|
||||
#endif
|
||||
}
|
||||
break;
|
||||
case 'P':
|
||||
if (memEQ(name, "R_PREV", 6)) {
|
||||
/* ^ */
|
||||
#ifdef R_PREV
|
||||
*iv_return = R_PREV;
|
||||
return PERL_constant_ISIV;
|
||||
#else
|
||||
return PERL_constant_NOTDEF;
|
||||
#endif
|
||||
}
|
||||
break;
|
||||
case '_':
|
||||
if (memEQ(name, "DB_TXN", 6)) {
|
||||
/* ^ */
|
||||
#ifdef DB_TXN
|
||||
*iv_return = DB_TXN;
|
||||
return PERL_constant_ISIV;
|
||||
#else
|
||||
return PERL_constant_NOTDEF;
|
||||
#endif
|
||||
}
|
||||
break;
|
||||
}
|
||||
return PERL_constant_NOTFOUND;
|
||||
}
|
||||
|
||||
static int
|
||||
constant_7 (pTHX_ const char *name, IV *iv_return) {
|
||||
/* When generated this function returned values for the list of names given
|
||||
here. However, subsequent manual editing may have added or removed some.
|
||||
DB_LOCK R_FIRST R_NOKEY */
|
||||
/* Offset 3 gives the best switch position. */
|
||||
switch (name[3]) {
|
||||
case 'I':
|
||||
if (memEQ(name, "R_FIRST", 7)) {
|
||||
/* ^ */
|
||||
#ifdef R_FIRST
|
||||
*iv_return = R_FIRST;
|
||||
return PERL_constant_ISIV;
|
||||
#else
|
||||
return PERL_constant_NOTDEF;
|
||||
#endif
|
||||
}
|
||||
break;
|
||||
case 'L':
|
||||
if (memEQ(name, "DB_LOCK", 7)) {
|
||||
/* ^ */
|
||||
#ifdef DB_LOCK
|
||||
*iv_return = DB_LOCK;
|
||||
return PERL_constant_ISIV;
|
||||
#else
|
||||
return PERL_constant_NOTDEF;
|
||||
#endif
|
||||
}
|
||||
break;
|
||||
case 'O':
|
||||
if (memEQ(name, "R_NOKEY", 7)) {
|
||||
/* ^ */
|
||||
#ifdef R_NOKEY
|
||||
*iv_return = R_NOKEY;
|
||||
return PERL_constant_ISIV;
|
||||
#else
|
||||
return PERL_constant_NOTDEF;
|
||||
#endif
|
||||
}
|
||||
break;
|
||||
}
|
||||
return PERL_constant_NOTFOUND;
|
||||
}
|
||||
|
||||
static int
|
||||
constant_8 (pTHX_ const char *name, IV *iv_return) {
|
||||
/* When generated this function returned values for the list of names given
|
||||
here. However, subsequent manual editing may have added or removed some.
|
||||
DB_SHMEM R_CURSOR R_IAFTER */
|
||||
/* Offset 5 gives the best switch position. */
|
||||
switch (name[5]) {
|
||||
case 'M':
|
||||
if (memEQ(name, "DB_SHMEM", 8)) {
|
||||
/* ^ */
|
||||
#ifdef DB_SHMEM
|
||||
*iv_return = DB_SHMEM;
|
||||
return PERL_constant_ISIV;
|
||||
#else
|
||||
return PERL_constant_NOTDEF;
|
||||
#endif
|
||||
}
|
||||
break;
|
||||
case 'S':
|
||||
if (memEQ(name, "R_CURSOR", 8)) {
|
||||
/* ^ */
|
||||
#ifdef R_CURSOR
|
||||
*iv_return = R_CURSOR;
|
||||
return PERL_constant_ISIV;
|
||||
#else
|
||||
return PERL_constant_NOTDEF;
|
||||
#endif
|
||||
}
|
||||
break;
|
||||
case 'T':
|
||||
if (memEQ(name, "R_IAFTER", 8)) {
|
||||
/* ^ */
|
||||
#ifdef R_IAFTER
|
||||
*iv_return = R_IAFTER;
|
||||
return PERL_constant_ISIV;
|
||||
#else
|
||||
return PERL_constant_NOTDEF;
|
||||
#endif
|
||||
}
|
||||
break;
|
||||
}
|
||||
return PERL_constant_NOTFOUND;
|
||||
}
|
||||
|
||||
static int
|
||||
constant_9 (pTHX_ const char *name, IV *iv_return) {
|
||||
/* When generated this function returned values for the list of names given
|
||||
here. However, subsequent manual editing may have added or removed some.
|
||||
HASHMAGIC RET_ERROR R_IBEFORE */
|
||||
/* Offset 7 gives the best switch position. */
|
||||
switch (name[7]) {
|
||||
case 'I':
|
||||
if (memEQ(name, "HASHMAGIC", 9)) {
|
||||
/* ^ */
|
||||
#ifdef HASHMAGIC
|
||||
*iv_return = HASHMAGIC;
|
||||
return PERL_constant_ISIV;
|
||||
#else
|
||||
return PERL_constant_NOTDEF;
|
||||
#endif
|
||||
}
|
||||
break;
|
||||
case 'O':
|
||||
if (memEQ(name, "RET_ERROR", 9)) {
|
||||
/* ^ */
|
||||
#ifdef RET_ERROR
|
||||
*iv_return = RET_ERROR;
|
||||
return PERL_constant_ISIV;
|
||||
#else
|
||||
return PERL_constant_NOTDEF;
|
||||
#endif
|
||||
}
|
||||
break;
|
||||
case 'R':
|
||||
if (memEQ(name, "R_IBEFORE", 9)) {
|
||||
/* ^ */
|
||||
#ifdef R_IBEFORE
|
||||
*iv_return = R_IBEFORE;
|
||||
return PERL_constant_ISIV;
|
||||
#else
|
||||
return PERL_constant_NOTDEF;
|
||||
#endif
|
||||
}
|
||||
break;
|
||||
}
|
||||
return PERL_constant_NOTFOUND;
|
||||
}
|
||||
|
||||
static int
|
||||
constant_10 (pTHX_ const char *name, IV *iv_return) {
|
||||
/* When generated this function returned values for the list of names given
|
||||
here. However, subsequent manual editing may have added or removed some.
|
||||
BTREEMAGIC R_FIXEDLEN R_SNAPSHOT __R_UNUSED */
|
||||
/* Offset 5 gives the best switch position. */
|
||||
switch (name[5]) {
|
||||
case 'E':
|
||||
if (memEQ(name, "R_FIXEDLEN", 10)) {
|
||||
/* ^ */
|
||||
#ifdef R_FIXEDLEN
|
||||
*iv_return = R_FIXEDLEN;
|
||||
return PERL_constant_ISIV;
|
||||
#else
|
||||
return PERL_constant_NOTDEF;
|
||||
#endif
|
||||
}
|
||||
break;
|
||||
case 'M':
|
||||
if (memEQ(name, "BTREEMAGIC", 10)) {
|
||||
/* ^ */
|
||||
#ifdef BTREEMAGIC
|
||||
*iv_return = BTREEMAGIC;
|
||||
return PERL_constant_ISIV;
|
||||
#else
|
||||
return PERL_constant_NOTDEF;
|
||||
#endif
|
||||
}
|
||||
break;
|
||||
case 'N':
|
||||
if (memEQ(name, "__R_UNUSED", 10)) {
|
||||
/* ^ */
|
||||
#ifdef __R_UNUSED
|
||||
*iv_return = __R_UNUSED;
|
||||
return PERL_constant_ISIV;
|
||||
#else
|
||||
return PERL_constant_NOTDEF;
|
||||
#endif
|
||||
}
|
||||
break;
|
||||
case 'P':
|
||||
if (memEQ(name, "R_SNAPSHOT", 10)) {
|
||||
/* ^ */
|
||||
#ifdef R_SNAPSHOT
|
||||
*iv_return = R_SNAPSHOT;
|
||||
return PERL_constant_ISIV;
|
||||
#else
|
||||
return PERL_constant_NOTDEF;
|
||||
#endif
|
||||
}
|
||||
break;
|
||||
}
|
||||
return PERL_constant_NOTFOUND;
|
||||
}
|
||||
|
||||
static int
|
||||
constant_11 (pTHX_ const char *name, IV *iv_return) {
|
||||
/* When generated this function returned values for the list of names given
|
||||
here. However, subsequent manual editing may have added or removed some.
|
||||
HASHVERSION RET_SPECIAL RET_SUCCESS R_RECNOSYNC R_SETCURSOR */
|
||||
/* Offset 10 gives the best switch position. */
|
||||
switch (name[10]) {
|
||||
case 'C':
|
||||
if (memEQ(name, "R_RECNOSYNC", 11)) {
|
||||
/* ^ */
|
||||
#ifdef R_RECNOSYNC
|
||||
*iv_return = R_RECNOSYNC;
|
||||
return PERL_constant_ISIV;
|
||||
#else
|
||||
return PERL_constant_NOTDEF;
|
||||
#endif
|
||||
}
|
||||
break;
|
||||
case 'L':
|
||||
if (memEQ(name, "RET_SPECIAL", 11)) {
|
||||
/* ^ */
|
||||
#ifdef RET_SPECIAL
|
||||
*iv_return = RET_SPECIAL;
|
||||
return PERL_constant_ISIV;
|
||||
#else
|
||||
return PERL_constant_NOTDEF;
|
||||
#endif
|
||||
}
|
||||
break;
|
||||
case 'N':
|
||||
if (memEQ(name, "HASHVERSION", 11)) {
|
||||
/* ^ */
|
||||
#ifdef HASHVERSION
|
||||
*iv_return = HASHVERSION;
|
||||
return PERL_constant_ISIV;
|
||||
#else
|
||||
return PERL_constant_NOTDEF;
|
||||
#endif
|
||||
}
|
||||
break;
|
||||
case 'R':
|
||||
if (memEQ(name, "R_SETCURSOR", 11)) {
|
||||
/* ^ */
|
||||
#ifdef R_SETCURSOR
|
||||
*iv_return = R_SETCURSOR;
|
||||
return PERL_constant_ISIV;
|
||||
#else
|
||||
return PERL_constant_NOTDEF;
|
||||
#endif
|
||||
}
|
||||
break;
|
||||
case 'S':
|
||||
if (memEQ(name, "RET_SUCCESS", 11)) {
|
||||
/* ^ */
|
||||
#ifdef RET_SUCCESS
|
||||
*iv_return = RET_SUCCESS;
|
||||
return PERL_constant_ISIV;
|
||||
#else
|
||||
return PERL_constant_NOTDEF;
|
||||
#endif
|
||||
}
|
||||
break;
|
||||
}
|
||||
return PERL_constant_NOTFOUND;
|
||||
}
|
||||
|
||||
static int
|
||||
constant (pTHX_ const char *name, STRLEN len, IV *iv_return) {
|
||||
/* Initially switch on the length of the name. */
|
||||
/* When generated this function returned values for the list of names given
|
||||
in this section of perl code. Rather than manually editing these functions
|
||||
to add or remove constants, which would result in this comment and section
|
||||
of code becoming inaccurate, we recommend that you edit this section of
|
||||
code, and use it to regenerate a new set of constant functions which you
|
||||
then use to replace the originals.
|
||||
|
||||
Regenerate these constant functions by feeding this entire source file to
|
||||
perl -x
|
||||
|
||||
#!bleedperl -w
|
||||
use ExtUtils::Constant qw (constant_types C_constant XS_constant);
|
||||
|
||||
my $types = {map {($_, 1)} qw(IV)};
|
||||
my @names = (qw(BTREEMAGIC BTREEVERSION DB_LOCK DB_SHMEM DB_TXN HASHMAGIC
|
||||
HASHVERSION MAX_PAGE_NUMBER MAX_PAGE_OFFSET MAX_REC_NUMBER
|
||||
RET_ERROR RET_SPECIAL RET_SUCCESS R_CURSOR R_DUP R_FIRST
|
||||
R_FIXEDLEN R_IAFTER R_IBEFORE R_LAST R_NEXT R_NOKEY
|
||||
R_NOOVERWRITE R_PREV R_RECNOSYNC R_SETCURSOR R_SNAPSHOT
|
||||
__R_UNUSED));
|
||||
|
||||
print constant_types(); # macro defs
|
||||
foreach (C_constant ("DB_File", 'constant', 'IV', $types, undef, 3, @names) ) {
|
||||
print $_, "\n"; # C constant subs
|
||||
}
|
||||
print "#### XS Section:\n";
|
||||
print XS_constant ("DB_File", $types);
|
||||
__END__
|
||||
*/
|
||||
|
||||
switch (len) {
|
||||
case 5:
|
||||
if (memEQ(name, "R_DUP", 5)) {
|
||||
#ifdef R_DUP
|
||||
*iv_return = R_DUP;
|
||||
return PERL_constant_ISIV;
|
||||
#else
|
||||
return PERL_constant_NOTDEF;
|
||||
#endif
|
||||
}
|
||||
break;
|
||||
case 6:
|
||||
return constant_6 (aTHX_ name, iv_return);
|
||||
break;
|
||||
case 7:
|
||||
return constant_7 (aTHX_ name, iv_return);
|
||||
break;
|
||||
case 8:
|
||||
return constant_8 (aTHX_ name, iv_return);
|
||||
break;
|
||||
case 9:
|
||||
return constant_9 (aTHX_ name, iv_return);
|
||||
break;
|
||||
case 10:
|
||||
return constant_10 (aTHX_ name, iv_return);
|
||||
break;
|
||||
case 11:
|
||||
return constant_11 (aTHX_ name, iv_return);
|
||||
break;
|
||||
case 12:
|
||||
if (memEQ(name, "BTREEVERSION", 12)) {
|
||||
#ifdef BTREEVERSION
|
||||
*iv_return = BTREEVERSION;
|
||||
return PERL_constant_ISIV;
|
||||
#else
|
||||
return PERL_constant_NOTDEF;
|
||||
#endif
|
||||
}
|
||||
break;
|
||||
case 13:
|
||||
if (memEQ(name, "R_NOOVERWRITE", 13)) {
|
||||
#ifdef R_NOOVERWRITE
|
||||
*iv_return = R_NOOVERWRITE;
|
||||
return PERL_constant_ISIV;
|
||||
#else
|
||||
return PERL_constant_NOTDEF;
|
||||
#endif
|
||||
}
|
||||
break;
|
||||
case 14:
|
||||
if (memEQ(name, "MAX_REC_NUMBER", 14)) {
|
||||
#ifdef MAX_REC_NUMBER
|
||||
*iv_return = MAX_REC_NUMBER;
|
||||
return PERL_constant_ISIV;
|
||||
#else
|
||||
return PERL_constant_NOTDEF;
|
||||
#endif
|
||||
}
|
||||
break;
|
||||
case 15:
|
||||
/* Names all of length 15. */
|
||||
/* MAX_PAGE_NUMBER MAX_PAGE_OFFSET */
|
||||
/* Offset 9 gives the best switch position. */
|
||||
switch (name[9]) {
|
||||
case 'N':
|
||||
if (memEQ(name, "MAX_PAGE_NUMBER", 15)) {
|
||||
/* ^ */
|
||||
#ifdef MAX_PAGE_NUMBER
|
||||
*iv_return = MAX_PAGE_NUMBER;
|
||||
return PERL_constant_ISIV;
|
||||
#else
|
||||
return PERL_constant_NOTDEF;
|
||||
#endif
|
||||
}
|
||||
break;
|
||||
case 'O':
|
||||
if (memEQ(name, "MAX_PAGE_OFFSET", 15)) {
|
||||
/* ^ */
|
||||
#ifdef MAX_PAGE_OFFSET
|
||||
*iv_return = MAX_PAGE_OFFSET;
|
||||
return PERL_constant_ISIV;
|
||||
#else
|
||||
return PERL_constant_NOTDEF;
|
||||
#endif
|
||||
}
|
||||
break;
|
||||
}
|
||||
break;
|
||||
}
|
||||
return PERL_constant_NOTFOUND;
|
||||
}
|
||||
|
||||
88
perl/DB_File/fallback.xs
Normal file
88
perl/DB_File/fallback.xs
Normal file
@@ -0,0 +1,88 @@
|
||||
void
|
||||
constant(sv)
|
||||
PREINIT:
|
||||
#ifdef dXSTARG
|
||||
dXSTARG; /* Faster if we have it. */
|
||||
#else
|
||||
dTARGET;
|
||||
#endif
|
||||
STRLEN len;
|
||||
int type;
|
||||
IV iv;
|
||||
/* NV nv; Uncomment this if you need to return NVs */
|
||||
/* const char *pv; Uncomment this if you need to return PVs */
|
||||
INPUT:
|
||||
SV * sv;
|
||||
const char * s = SvPV(sv, len);
|
||||
PPCODE:
|
||||
/* Change this to constant(aTHX_ s, len, &iv, &nv);
|
||||
if you need to return both NVs and IVs */
|
||||
type = constant(aTHX_ s, len, &iv);
|
||||
/* Return 1 or 2 items. First is error message, or undef if no error.
|
||||
Second, if present, is found value */
|
||||
switch (type) {
|
||||
case PERL_constant_NOTFOUND:
|
||||
sv = sv_2mortal(newSVpvf("%s is not a valid DB_File macro", s));
|
||||
PUSHs(sv);
|
||||
break;
|
||||
case PERL_constant_NOTDEF:
|
||||
sv = sv_2mortal(newSVpvf(
|
||||
"Your vendor has not defined DB_File macro %s, used", s));
|
||||
PUSHs(sv);
|
||||
break;
|
||||
case PERL_constant_ISIV:
|
||||
EXTEND(SP, 1);
|
||||
PUSHs(&PL_sv_undef);
|
||||
PUSHi(iv);
|
||||
break;
|
||||
/* Uncomment this if you need to return NOs
|
||||
case PERL_constant_ISNO:
|
||||
EXTEND(SP, 1);
|
||||
PUSHs(&PL_sv_undef);
|
||||
PUSHs(&PL_sv_no);
|
||||
break; */
|
||||
/* Uncomment this if you need to return NVs
|
||||
case PERL_constant_ISNV:
|
||||
EXTEND(SP, 1);
|
||||
PUSHs(&PL_sv_undef);
|
||||
PUSHn(nv);
|
||||
break; */
|
||||
/* Uncomment this if you need to return PVs
|
||||
case PERL_constant_ISPV:
|
||||
EXTEND(SP, 1);
|
||||
PUSHs(&PL_sv_undef);
|
||||
PUSHp(pv, strlen(pv));
|
||||
break; */
|
||||
/* Uncomment this if you need to return PVNs
|
||||
case PERL_constant_ISPVN:
|
||||
EXTEND(SP, 1);
|
||||
PUSHs(&PL_sv_undef);
|
||||
PUSHp(pv, iv);
|
||||
break; */
|
||||
/* Uncomment this if you need to return SVs
|
||||
case PERL_constant_ISSV:
|
||||
EXTEND(SP, 1);
|
||||
PUSHs(&PL_sv_undef);
|
||||
PUSHs(sv);
|
||||
break; */
|
||||
/* Uncomment this if you need to return UNDEFs
|
||||
case PERL_constant_ISUNDEF:
|
||||
break; */
|
||||
/* Uncomment this if you need to return UVs
|
||||
case PERL_constant_ISUV:
|
||||
EXTEND(SP, 1);
|
||||
PUSHs(&PL_sv_undef);
|
||||
PUSHu((UV)iv);
|
||||
break; */
|
||||
/* Uncomment this if you need to return YESs
|
||||
case PERL_constant_ISYES:
|
||||
EXTEND(SP, 1);
|
||||
PUSHs(&PL_sv_undef);
|
||||
PUSHs(&PL_sv_yes);
|
||||
break; */
|
||||
default:
|
||||
sv = sv_2mortal(newSVpvf(
|
||||
"Unexpected return type %d while processing DB_File macro %s, used",
|
||||
type, s));
|
||||
PUSHs(sv);
|
||||
}
|
||||
3
perl/DB_File/hints/dynixptx.pl
Normal file
3
perl/DB_File/hints/dynixptx.pl
Normal file
@@ -0,0 +1,3 @@
|
||||
# Need to add an extra '-lc' to the end to work around a DYNIX/ptx bug
|
||||
|
||||
$self->{LIBS} = ['-lm -lc'];
|
||||
2
perl/DB_File/hints/sco.pl
Normal file
2
perl/DB_File/hints/sco.pl
Normal file
@@ -0,0 +1,2 @@
|
||||
# osr5 needs to explicitly link against libc to pull in some static symbols
|
||||
$self->{LIBS} = ['-ldb -lc'] if $Config{'osvers'} =~ '3\.2v5\.0\..' ;
|
||||
93
perl/DB_File/patches/5.004
Normal file
93
perl/DB_File/patches/5.004
Normal file
@@ -0,0 +1,93 @@
|
||||
diff -rc perl5.004.orig/Configure perl5.004/Configure
|
||||
*** perl5.004.orig/Configure 1997-05-13 18:20:34.000000000 +0100
|
||||
--- perl5.004/Configure 2003-04-26 16:36:53.000000000 +0100
|
||||
***************
|
||||
*** 188,193 ****
|
||||
--- 188,194 ----
|
||||
mv=''
|
||||
nroff=''
|
||||
perl=''
|
||||
+ perllibs=''
|
||||
pg=''
|
||||
pmake=''
|
||||
pr=''
|
||||
***************
|
||||
*** 9902,9907 ****
|
||||
--- 9903,9916 ----
|
||||
shift
|
||||
extensions="$*"
|
||||
|
||||
+ : Remove libraries needed only for extensions
|
||||
+ : The appropriate ext/Foo/Makefile.PL will add them back in, if
|
||||
+ : necessary.
|
||||
+ set X `echo " $libs " |
|
||||
+ sed -e 's@ -lndbm @ @' -e 's@ -lgdbm @ @' -e 's@ -ldbm @ @' -e 's@ -ldb @ @'`
|
||||
+ shift
|
||||
+ perllibs="$*"
|
||||
+
|
||||
: Remove build directory name from cppstdin so it can be used from
|
||||
: either the present location or the final installed location.
|
||||
echo " "
|
||||
***************
|
||||
*** 10370,10375 ****
|
||||
--- 10379,10385 ----
|
||||
patchlevel='$patchlevel'
|
||||
path_sep='$path_sep'
|
||||
perl='$perl'
|
||||
+ perllibs='$perllibs'
|
||||
perladmin='$perladmin'
|
||||
perlpath='$perlpath'
|
||||
pg='$pg'
|
||||
diff -rc perl5.004.orig/Makefile.SH perl5.004/Makefile.SH
|
||||
*** perl5.004.orig/Makefile.SH 1997-05-01 15:22:39.000000000 +0100
|
||||
--- perl5.004/Makefile.SH 2003-04-26 16:37:23.000000000 +0100
|
||||
***************
|
||||
*** 119,125 ****
|
||||
ext = \$(dynamic_ext) \$(static_ext)
|
||||
DYNALOADER = lib/auto/DynaLoader/DynaLoader\$(LIB_EXT)
|
||||
|
||||
! libs = $libs $cryptlib
|
||||
|
||||
public = perl $suidperl utilities translators
|
||||
|
||||
--- 119,125 ----
|
||||
ext = \$(dynamic_ext) \$(static_ext)
|
||||
DYNALOADER = lib/auto/DynaLoader/DynaLoader\$(LIB_EXT)
|
||||
|
||||
! libs = $perllibs $cryptlib
|
||||
|
||||
public = perl $suidperl utilities translators
|
||||
|
||||
diff -rc perl5.004.orig/myconfig perl5.004/myconfig
|
||||
*** perl5.004.orig/myconfig 1996-12-21 01:13:20.000000000 +0000
|
||||
--- perl5.004/myconfig 2003-04-26 16:37:51.000000000 +0100
|
||||
***************
|
||||
*** 35,41 ****
|
||||
Linker and Libraries:
|
||||
ld='$ld', ldflags ='$ldflags'
|
||||
libpth=$libpth
|
||||
! libs=$libs
|
||||
libc=$libc, so=$so
|
||||
useshrplib=$useshrplib, libperl=$libperl
|
||||
Dynamic Linking:
|
||||
--- 35,41 ----
|
||||
Linker and Libraries:
|
||||
ld='$ld', ldflags ='$ldflags'
|
||||
libpth=$libpth
|
||||
! libs=$perllibs
|
||||
libc=$libc, so=$so
|
||||
useshrplib=$useshrplib, libperl=$libperl
|
||||
Dynamic Linking:
|
||||
diff -rc perl5.004.orig/patchlevel.h perl5.004/patchlevel.h
|
||||
*** perl5.004.orig/patchlevel.h 1997-05-15 23:15:17.000000000 +0100
|
||||
--- perl5.004/patchlevel.h 2003-04-26 16:38:11.000000000 +0100
|
||||
***************
|
||||
*** 38,43 ****
|
||||
--- 38,44 ----
|
||||
*/
|
||||
static char *local_patches[] = {
|
||||
NULL
|
||||
+ ,"NODB-1.0 - remove -ldb from core perl binary."
|
||||
,NULL
|
||||
};
|
||||
|
||||
217
perl/DB_File/patches/5.004_01
Normal file
217
perl/DB_File/patches/5.004_01
Normal file
@@ -0,0 +1,217 @@
|
||||
diff -rc perl5.004_01.orig/Configure perl5.004_01/Configure
|
||||
*** perl5.004_01.orig/Configure Wed Jun 11 00:28:03 1997
|
||||
--- perl5.004_01/Configure Sun Nov 12 22:12:35 2000
|
||||
***************
|
||||
*** 188,193 ****
|
||||
--- 188,194 ----
|
||||
mv=''
|
||||
nroff=''
|
||||
perl=''
|
||||
+ perllibs=''
|
||||
pg=''
|
||||
pmake=''
|
||||
pr=''
|
||||
***************
|
||||
*** 9907,9912 ****
|
||||
--- 9908,9921 ----
|
||||
shift
|
||||
extensions="$*"
|
||||
|
||||
+ : Remove libraries needed only for extensions
|
||||
+ : The appropriate ext/Foo/Makefile.PL will add them back in, if
|
||||
+ : necessary.
|
||||
+ set X `echo " $libs " |
|
||||
+ sed -e 's@ -lndbm @ @' -e 's@ -lgdbm @ @' -e 's@ -ldbm @ @' -e 's@ -ldb @ @'`
|
||||
+ shift
|
||||
+ perllibs="$*"
|
||||
+
|
||||
: Remove build directory name from cppstdin so it can be used from
|
||||
: either the present location or the final installed location.
|
||||
echo " "
|
||||
***************
|
||||
*** 10375,10380 ****
|
||||
--- 10384,10390 ----
|
||||
patchlevel='$patchlevel'
|
||||
path_sep='$path_sep'
|
||||
perl='$perl'
|
||||
+ perllibs='$perllibs'
|
||||
perladmin='$perladmin'
|
||||
perlpath='$perlpath'
|
||||
pg='$pg'
|
||||
diff -rc perl5.004_01.orig/Makefile.SH perl5.004_01/Makefile.SH
|
||||
*** perl5.004_01.orig/Makefile.SH Thu Jun 12 23:27:56 1997
|
||||
--- perl5.004_01/Makefile.SH Sun Nov 12 22:12:35 2000
|
||||
***************
|
||||
*** 126,132 ****
|
||||
ext = \$(dynamic_ext) \$(static_ext)
|
||||
DYNALOADER = lib/auto/DynaLoader/DynaLoader\$(LIB_EXT)
|
||||
|
||||
! libs = $libs $cryptlib
|
||||
|
||||
public = perl $suidperl utilities translators
|
||||
|
||||
--- 126,132 ----
|
||||
ext = \$(dynamic_ext) \$(static_ext)
|
||||
DYNALOADER = lib/auto/DynaLoader/DynaLoader\$(LIB_EXT)
|
||||
|
||||
! libs = $perllibs $cryptlib
|
||||
|
||||
public = perl $suidperl utilities translators
|
||||
|
||||
diff -rc perl5.004_01.orig/lib/ExtUtils/Embed.pm perl5.004_01/lib/ExtUtils/Embed.pm
|
||||
*** perl5.004_01.orig/lib/ExtUtils/Embed.pm Wed Apr 2 22:12:04 1997
|
||||
--- perl5.004_01/lib/ExtUtils/Embed.pm Sun Nov 12 22:12:35 2000
|
||||
***************
|
||||
*** 170,176 ****
|
||||
@path = $path ? split(/:/, $path) : @INC;
|
||||
|
||||
push(@potential_libs, @link_args) if scalar @link_args;
|
||||
! push(@potential_libs, $Config{libs}) if defined $std;
|
||||
|
||||
push(@mods, static_ext()) if $std;
|
||||
|
||||
--- 170,176 ----
|
||||
@path = $path ? split(/:/, $path) : @INC;
|
||||
|
||||
push(@potential_libs, @link_args) if scalar @link_args;
|
||||
! push(@potential_libs, $Config{perllibs}) if defined $std;
|
||||
|
||||
push(@mods, static_ext()) if $std;
|
||||
|
||||
diff -rc perl5.004_01.orig/lib/ExtUtils/Liblist.pm perl5.004_01/lib/ExtUtils/Liblist.pm
|
||||
*** perl5.004_01.orig/lib/ExtUtils/Liblist.pm Sat Jun 7 01:19:44 1997
|
||||
--- perl5.004_01/lib/ExtUtils/Liblist.pm Sun Nov 12 22:13:27 2000
|
||||
***************
|
||||
*** 16,33 ****
|
||||
|
||||
sub _unix_os2_ext {
|
||||
my($self,$potential_libs, $Verbose) = @_;
|
||||
! if ($^O =~ 'os2' and $Config{libs}) {
|
||||
# Dynamic libraries are not transitive, so we may need including
|
||||
# the libraries linked against perl.dll again.
|
||||
|
||||
$potential_libs .= " " if $potential_libs;
|
||||
! $potential_libs .= $Config{libs};
|
||||
}
|
||||
return ("", "", "", "") unless $potential_libs;
|
||||
print STDOUT "Potential libraries are '$potential_libs':\n" if $Verbose;
|
||||
|
||||
my($so) = $Config{'so'};
|
||||
! my($libs) = $Config{'libs'};
|
||||
my $Config_libext = $Config{lib_ext} || ".a";
|
||||
|
||||
|
||||
--- 16,33 ----
|
||||
|
||||
sub _unix_os2_ext {
|
||||
my($self,$potential_libs, $Verbose) = @_;
|
||||
! if ($^O =~ 'os2' and $Config{perllibs}) {
|
||||
# Dynamic libraries are not transitive, so we may need including
|
||||
# the libraries linked against perl.dll again.
|
||||
|
||||
$potential_libs .= " " if $potential_libs;
|
||||
! $potential_libs .= $Config{perllibs};
|
||||
}
|
||||
return ("", "", "", "") unless $potential_libs;
|
||||
print STDOUT "Potential libraries are '$potential_libs':\n" if $Verbose;
|
||||
|
||||
my($so) = $Config{'so'};
|
||||
! my($libs) = $Config{'perllibs'};
|
||||
my $Config_libext = $Config{lib_ext} || ".a";
|
||||
|
||||
|
||||
***************
|
||||
*** 186,196 ****
|
||||
my($self, $potential_libs, $Verbose) = @_;
|
||||
|
||||
# If user did not supply a list, we punt.
|
||||
! # (caller should probably use the list in $Config{libs})
|
||||
return ("", "", "", "") unless $potential_libs;
|
||||
|
||||
my($so) = $Config{'so'};
|
||||
! my($libs) = $Config{'libs'};
|
||||
my($libpth) = $Config{'libpth'};
|
||||
my($libext) = $Config{'lib_ext'} || ".lib";
|
||||
|
||||
--- 186,196 ----
|
||||
my($self, $potential_libs, $Verbose) = @_;
|
||||
|
||||
# If user did not supply a list, we punt.
|
||||
! # (caller should probably use the list in $Config{perllibs})
|
||||
return ("", "", "", "") unless $potential_libs;
|
||||
|
||||
my($so) = $Config{'so'};
|
||||
! my($libs) = $Config{'perllibs'};
|
||||
my($libpth) = $Config{'libpth'};
|
||||
my($libext) = $Config{'lib_ext'} || ".lib";
|
||||
|
||||
***************
|
||||
*** 540,546 ****
|
||||
=item *
|
||||
|
||||
If C<$potential_libs> is empty, the return value will be empty.
|
||||
! Otherwise, the libraries specified by C<$Config{libs}> (see Config.pm)
|
||||
will be appended to the list of C<$potential_libs>. The libraries
|
||||
will be searched for in the directories specified in C<$potential_libs>
|
||||
as well as in C<$Config{libpth}>. For each library that is found, a
|
||||
--- 540,546 ----
|
||||
=item *
|
||||
|
||||
If C<$potential_libs> is empty, the return value will be empty.
|
||||
! Otherwise, the libraries specified by C<$Config{perllibs}> (see Config.pm)
|
||||
will be appended to the list of C<$potential_libs>. The libraries
|
||||
will be searched for in the directories specified in C<$potential_libs>
|
||||
as well as in C<$Config{libpth}>. For each library that is found, a
|
||||
diff -rc perl5.004_01.orig/lib/ExtUtils/MM_Unix.pm perl5.004_01/lib/ExtUtils/MM_Unix.pm
|
||||
*** perl5.004_01.orig/lib/ExtUtils/MM_Unix.pm Thu Jun 12 22:06:18 1997
|
||||
--- perl5.004_01/lib/ExtUtils/MM_Unix.pm Sun Nov 12 22:12:35 2000
|
||||
***************
|
||||
*** 2137,2143 ****
|
||||
MAP_STATIC = ",
|
||||
join(" \\\n\t", reverse sort keys %static), "
|
||||
|
||||
! MAP_PRELIBS = $Config::Config{libs} $Config::Config{cryptlib}
|
||||
";
|
||||
|
||||
if (defined $libperl) {
|
||||
--- 2137,2143 ----
|
||||
MAP_STATIC = ",
|
||||
join(" \\\n\t", reverse sort keys %static), "
|
||||
|
||||
! MAP_PRELIBS = $Config::Config{perllibs} $Config::Config{cryptlib}
|
||||
";
|
||||
|
||||
if (defined $libperl) {
|
||||
diff -rc perl5.004_01.orig/myconfig perl5.004_01/myconfig
|
||||
*** perl5.004_01.orig/myconfig Sat Dec 21 01:13:20 1996
|
||||
--- perl5.004_01/myconfig Sun Nov 12 22:12:35 2000
|
||||
***************
|
||||
*** 35,41 ****
|
||||
Linker and Libraries:
|
||||
ld='$ld', ldflags ='$ldflags'
|
||||
libpth=$libpth
|
||||
! libs=$libs
|
||||
libc=$libc, so=$so
|
||||
useshrplib=$useshrplib, libperl=$libperl
|
||||
Dynamic Linking:
|
||||
--- 35,41 ----
|
||||
Linker and Libraries:
|
||||
ld='$ld', ldflags ='$ldflags'
|
||||
libpth=$libpth
|
||||
! libs=$perllibs
|
||||
libc=$libc, so=$so
|
||||
useshrplib=$useshrplib, libperl=$libperl
|
||||
Dynamic Linking:
|
||||
diff -rc perl5.004_01.orig/patchlevel.h perl5.004_01/patchlevel.h
|
||||
*** perl5.004_01.orig/patchlevel.h Wed Jun 11 03:06:10 1997
|
||||
--- perl5.004_01/patchlevel.h Sun Nov 12 22:12:35 2000
|
||||
***************
|
||||
*** 38,43 ****
|
||||
--- 38,44 ----
|
||||
*/
|
||||
static char *local_patches[] = {
|
||||
NULL
|
||||
+ ,"NODB-1.0 - remove -ldb from core perl binary."
|
||||
,NULL
|
||||
};
|
||||
|
||||
217
perl/DB_File/patches/5.004_02
Normal file
217
perl/DB_File/patches/5.004_02
Normal file
@@ -0,0 +1,217 @@
|
||||
diff -rc perl5.004_02.orig/Configure perl5.004_02/Configure
|
||||
*** perl5.004_02.orig/Configure Thu Aug 7 15:08:44 1997
|
||||
--- perl5.004_02/Configure Sun Nov 12 22:06:24 2000
|
||||
***************
|
||||
*** 188,193 ****
|
||||
--- 188,194 ----
|
||||
mv=''
|
||||
nroff=''
|
||||
perl=''
|
||||
+ perllibs=''
|
||||
pg=''
|
||||
pmake=''
|
||||
pr=''
|
||||
***************
|
||||
*** 9911,9916 ****
|
||||
--- 9912,9925 ----
|
||||
shift
|
||||
extensions="$*"
|
||||
|
||||
+ : Remove libraries needed only for extensions
|
||||
+ : The appropriate ext/Foo/Makefile.PL will add them back in, if
|
||||
+ : necessary.
|
||||
+ set X `echo " $libs " |
|
||||
+ sed -e 's@ -lndbm @ @' -e 's@ -lgdbm @ @' -e 's@ -ldbm @ @' -e 's@ -ldb @ @'`
|
||||
+ shift
|
||||
+ perllibs="$*"
|
||||
+
|
||||
: Remove build directory name from cppstdin so it can be used from
|
||||
: either the present location or the final installed location.
|
||||
echo " "
|
||||
***************
|
||||
*** 10379,10384 ****
|
||||
--- 10388,10394 ----
|
||||
patchlevel='$patchlevel'
|
||||
path_sep='$path_sep'
|
||||
perl='$perl'
|
||||
+ perllibs='$perllibs'
|
||||
perladmin='$perladmin'
|
||||
perlpath='$perlpath'
|
||||
pg='$pg'
|
||||
diff -rc perl5.004_02.orig/Makefile.SH perl5.004_02/Makefile.SH
|
||||
*** perl5.004_02.orig/Makefile.SH Thu Aug 7 13:10:53 1997
|
||||
--- perl5.004_02/Makefile.SH Sun Nov 12 22:06:24 2000
|
||||
***************
|
||||
*** 126,132 ****
|
||||
ext = \$(dynamic_ext) \$(static_ext)
|
||||
DYNALOADER = lib/auto/DynaLoader/DynaLoader\$(LIB_EXT)
|
||||
|
||||
! libs = $libs $cryptlib
|
||||
|
||||
public = perl $suidperl utilities translators
|
||||
|
||||
--- 126,132 ----
|
||||
ext = \$(dynamic_ext) \$(static_ext)
|
||||
DYNALOADER = lib/auto/DynaLoader/DynaLoader\$(LIB_EXT)
|
||||
|
||||
! libs = $perllibs $cryptlib
|
||||
|
||||
public = perl $suidperl utilities translators
|
||||
|
||||
diff -rc perl5.004_02.orig/lib/ExtUtils/Embed.pm perl5.004_02/lib/ExtUtils/Embed.pm
|
||||
*** perl5.004_02.orig/lib/ExtUtils/Embed.pm Fri Aug 1 15:08:44 1997
|
||||
--- perl5.004_02/lib/ExtUtils/Embed.pm Sun Nov 12 22:06:24 2000
|
||||
***************
|
||||
*** 178,184 ****
|
||||
@path = $path ? split(/:/, $path) : @INC;
|
||||
|
||||
push(@potential_libs, @link_args) if scalar @link_args;
|
||||
! push(@potential_libs, $Config{libs}) if defined $std;
|
||||
|
||||
push(@mods, static_ext()) if $std;
|
||||
|
||||
--- 178,184 ----
|
||||
@path = $path ? split(/:/, $path) : @INC;
|
||||
|
||||
push(@potential_libs, @link_args) if scalar @link_args;
|
||||
! push(@potential_libs, $Config{perllibs}) if defined $std;
|
||||
|
||||
push(@mods, static_ext()) if $std;
|
||||
|
||||
diff -rc perl5.004_02.orig/lib/ExtUtils/Liblist.pm perl5.004_02/lib/ExtUtils/Liblist.pm
|
||||
*** perl5.004_02.orig/lib/ExtUtils/Liblist.pm Fri Aug 1 19:36:58 1997
|
||||
--- perl5.004_02/lib/ExtUtils/Liblist.pm Sun Nov 12 22:06:24 2000
|
||||
***************
|
||||
*** 16,33 ****
|
||||
|
||||
sub _unix_os2_ext {
|
||||
my($self,$potential_libs, $verbose) = @_;
|
||||
! if ($^O =~ 'os2' and $Config{libs}) {
|
||||
# Dynamic libraries are not transitive, so we may need including
|
||||
# the libraries linked against perl.dll again.
|
||||
|
||||
$potential_libs .= " " if $potential_libs;
|
||||
! $potential_libs .= $Config{libs};
|
||||
}
|
||||
return ("", "", "", "") unless $potential_libs;
|
||||
print STDOUT "Potential libraries are '$potential_libs':\n" if $verbose;
|
||||
|
||||
my($so) = $Config{'so'};
|
||||
! my($libs) = $Config{'libs'};
|
||||
my $Config_libext = $Config{lib_ext} || ".a";
|
||||
|
||||
|
||||
--- 16,33 ----
|
||||
|
||||
sub _unix_os2_ext {
|
||||
my($self,$potential_libs, $verbose) = @_;
|
||||
! if ($^O =~ 'os2' and $Config{perllibs}) {
|
||||
# Dynamic libraries are not transitive, so we may need including
|
||||
# the libraries linked against perl.dll again.
|
||||
|
||||
$potential_libs .= " " if $potential_libs;
|
||||
! $potential_libs .= $Config{perllibs};
|
||||
}
|
||||
return ("", "", "", "") unless $potential_libs;
|
||||
print STDOUT "Potential libraries are '$potential_libs':\n" if $verbose;
|
||||
|
||||
my($so) = $Config{'so'};
|
||||
! my($libs) = $Config{'perllibs'};
|
||||
my $Config_libext = $Config{lib_ext} || ".a";
|
||||
|
||||
|
||||
***************
|
||||
*** 186,196 ****
|
||||
my($self, $potential_libs, $verbose) = @_;
|
||||
|
||||
# If user did not supply a list, we punt.
|
||||
! # (caller should probably use the list in $Config{libs})
|
||||
return ("", "", "", "") unless $potential_libs;
|
||||
|
||||
my($so) = $Config{'so'};
|
||||
! my($libs) = $Config{'libs'};
|
||||
my($libpth) = $Config{'libpth'};
|
||||
my($libext) = $Config{'lib_ext'} || ".lib";
|
||||
|
||||
--- 186,196 ----
|
||||
my($self, $potential_libs, $verbose) = @_;
|
||||
|
||||
# If user did not supply a list, we punt.
|
||||
! # (caller should probably use the list in $Config{perllibs})
|
||||
return ("", "", "", "") unless $potential_libs;
|
||||
|
||||
my($so) = $Config{'so'};
|
||||
! my($libs) = $Config{'perllibs'};
|
||||
my($libpth) = $Config{'libpth'};
|
||||
my($libext) = $Config{'lib_ext'} || ".lib";
|
||||
|
||||
***************
|
||||
*** 540,546 ****
|
||||
=item *
|
||||
|
||||
If C<$potential_libs> is empty, the return value will be empty.
|
||||
! Otherwise, the libraries specified by C<$Config{libs}> (see Config.pm)
|
||||
will be appended to the list of C<$potential_libs>. The libraries
|
||||
will be searched for in the directories specified in C<$potential_libs>
|
||||
as well as in C<$Config{libpth}>. For each library that is found, a
|
||||
--- 540,546 ----
|
||||
=item *
|
||||
|
||||
If C<$potential_libs> is empty, the return value will be empty.
|
||||
! Otherwise, the libraries specified by C<$Config{perllibs}> (see Config.pm)
|
||||
will be appended to the list of C<$potential_libs>. The libraries
|
||||
will be searched for in the directories specified in C<$potential_libs>
|
||||
as well as in C<$Config{libpth}>. For each library that is found, a
|
||||
diff -rc perl5.004_02.orig/lib/ExtUtils/MM_Unix.pm perl5.004_02/lib/ExtUtils/MM_Unix.pm
|
||||
*** perl5.004_02.orig/lib/ExtUtils/MM_Unix.pm Tue Aug 5 14:28:08 1997
|
||||
--- perl5.004_02/lib/ExtUtils/MM_Unix.pm Sun Nov 12 22:06:25 2000
|
||||
***************
|
||||
*** 2224,2230 ****
|
||||
MAP_STATIC = ",
|
||||
join(" \\\n\t", reverse sort keys %static), "
|
||||
|
||||
! MAP_PRELIBS = $Config::Config{libs} $Config::Config{cryptlib}
|
||||
";
|
||||
|
||||
if (defined $libperl) {
|
||||
--- 2224,2230 ----
|
||||
MAP_STATIC = ",
|
||||
join(" \\\n\t", reverse sort keys %static), "
|
||||
|
||||
! MAP_PRELIBS = $Config::Config{perllibs} $Config::Config{cryptlib}
|
||||
";
|
||||
|
||||
if (defined $libperl) {
|
||||
diff -rc perl5.004_02.orig/myconfig perl5.004_02/myconfig
|
||||
*** perl5.004_02.orig/myconfig Sat Dec 21 01:13:20 1996
|
||||
--- perl5.004_02/myconfig Sun Nov 12 22:06:25 2000
|
||||
***************
|
||||
*** 35,41 ****
|
||||
Linker and Libraries:
|
||||
ld='$ld', ldflags ='$ldflags'
|
||||
libpth=$libpth
|
||||
! libs=$libs
|
||||
libc=$libc, so=$so
|
||||
useshrplib=$useshrplib, libperl=$libperl
|
||||
Dynamic Linking:
|
||||
--- 35,41 ----
|
||||
Linker and Libraries:
|
||||
ld='$ld', ldflags ='$ldflags'
|
||||
libpth=$libpth
|
||||
! libs=$perllibs
|
||||
libc=$libc, so=$so
|
||||
useshrplib=$useshrplib, libperl=$libperl
|
||||
Dynamic Linking:
|
||||
diff -rc perl5.004_02.orig/patchlevel.h perl5.004_02/patchlevel.h
|
||||
*** perl5.004_02.orig/patchlevel.h Fri Aug 1 15:07:34 1997
|
||||
--- perl5.004_02/patchlevel.h Sun Nov 12 22:06:25 2000
|
||||
***************
|
||||
*** 38,43 ****
|
||||
--- 38,44 ----
|
||||
*/
|
||||
static char *local_patches[] = {
|
||||
NULL
|
||||
+ ,"NODB-1.0 - remove -ldb from core perl binary."
|
||||
,NULL
|
||||
};
|
||||
|
||||
223
perl/DB_File/patches/5.004_03
Normal file
223
perl/DB_File/patches/5.004_03
Normal file
@@ -0,0 +1,223 @@
|
||||
diff -rc perl5.004_03.orig/Configure perl5.004_03/Configure
|
||||
*** perl5.004_03.orig/Configure Wed Aug 13 16:09:46 1997
|
||||
--- perl5.004_03/Configure Sun Nov 12 21:56:18 2000
|
||||
***************
|
||||
*** 188,193 ****
|
||||
--- 188,194 ----
|
||||
mv=''
|
||||
nroff=''
|
||||
perl=''
|
||||
+ perllibs=''
|
||||
pg=''
|
||||
pmake=''
|
||||
pr=''
|
||||
***************
|
||||
*** 9911,9916 ****
|
||||
--- 9912,9925 ----
|
||||
shift
|
||||
extensions="$*"
|
||||
|
||||
+ : Remove libraries needed only for extensions
|
||||
+ : The appropriate ext/Foo/Makefile.PL will add them back in, if
|
||||
+ : necessary.
|
||||
+ set X `echo " $libs " |
|
||||
+ sed -e 's@ -lndbm @ @' -e 's@ -lgdbm @ @' -e 's@ -ldbm @ @' -e 's@ -ldb @ @'`
|
||||
+ shift
|
||||
+ perllibs="$*"
|
||||
+
|
||||
: Remove build directory name from cppstdin so it can be used from
|
||||
: either the present location or the final installed location.
|
||||
echo " "
|
||||
***************
|
||||
*** 10379,10384 ****
|
||||
--- 10388,10394 ----
|
||||
patchlevel='$patchlevel'
|
||||
path_sep='$path_sep'
|
||||
perl='$perl'
|
||||
+ perllibs='$perllibs'
|
||||
perladmin='$perladmin'
|
||||
perlpath='$perlpath'
|
||||
pg='$pg'
|
||||
Only in perl5.004_03: Configure.orig
|
||||
diff -rc perl5.004_03.orig/Makefile.SH perl5.004_03/Makefile.SH
|
||||
*** perl5.004_03.orig/Makefile.SH Mon Aug 18 19:24:29 1997
|
||||
--- perl5.004_03/Makefile.SH Sun Nov 12 21:56:18 2000
|
||||
***************
|
||||
*** 126,132 ****
|
||||
ext = \$(dynamic_ext) \$(static_ext)
|
||||
DYNALOADER = lib/auto/DynaLoader/DynaLoader\$(LIB_EXT)
|
||||
|
||||
! libs = $libs $cryptlib
|
||||
|
||||
public = perl $suidperl utilities translators
|
||||
|
||||
--- 126,132 ----
|
||||
ext = \$(dynamic_ext) \$(static_ext)
|
||||
DYNALOADER = lib/auto/DynaLoader/DynaLoader\$(LIB_EXT)
|
||||
|
||||
! libs = $perllibs $cryptlib
|
||||
|
||||
public = perl $suidperl utilities translators
|
||||
|
||||
Only in perl5.004_03: Makefile.SH.orig
|
||||
diff -rc perl5.004_03.orig/lib/ExtUtils/Embed.pm perl5.004_03/lib/ExtUtils/Embed.pm
|
||||
*** perl5.004_03.orig/lib/ExtUtils/Embed.pm Fri Aug 1 15:08:44 1997
|
||||
--- perl5.004_03/lib/ExtUtils/Embed.pm Sun Nov 12 21:56:18 2000
|
||||
***************
|
||||
*** 178,184 ****
|
||||
@path = $path ? split(/:/, $path) : @INC;
|
||||
|
||||
push(@potential_libs, @link_args) if scalar @link_args;
|
||||
! push(@potential_libs, $Config{libs}) if defined $std;
|
||||
|
||||
push(@mods, static_ext()) if $std;
|
||||
|
||||
--- 178,184 ----
|
||||
@path = $path ? split(/:/, $path) : @INC;
|
||||
|
||||
push(@potential_libs, @link_args) if scalar @link_args;
|
||||
! push(@potential_libs, $Config{perllibs}) if defined $std;
|
||||
|
||||
push(@mods, static_ext()) if $std;
|
||||
|
||||
diff -rc perl5.004_03.orig/lib/ExtUtils/Liblist.pm perl5.004_03/lib/ExtUtils/Liblist.pm
|
||||
*** perl5.004_03.orig/lib/ExtUtils/Liblist.pm Fri Aug 1 19:36:58 1997
|
||||
--- perl5.004_03/lib/ExtUtils/Liblist.pm Sun Nov 12 21:57:17 2000
|
||||
***************
|
||||
*** 16,33 ****
|
||||
|
||||
sub _unix_os2_ext {
|
||||
my($self,$potential_libs, $verbose) = @_;
|
||||
! if ($^O =~ 'os2' and $Config{libs}) {
|
||||
# Dynamic libraries are not transitive, so we may need including
|
||||
# the libraries linked against perl.dll again.
|
||||
|
||||
$potential_libs .= " " if $potential_libs;
|
||||
! $potential_libs .= $Config{libs};
|
||||
}
|
||||
return ("", "", "", "") unless $potential_libs;
|
||||
print STDOUT "Potential libraries are '$potential_libs':\n" if $verbose;
|
||||
|
||||
my($so) = $Config{'so'};
|
||||
! my($libs) = $Config{'libs'};
|
||||
my $Config_libext = $Config{lib_ext} || ".a";
|
||||
|
||||
|
||||
--- 16,33 ----
|
||||
|
||||
sub _unix_os2_ext {
|
||||
my($self,$potential_libs, $verbose) = @_;
|
||||
! if ($^O =~ 'os2' and $Config{perllibs}) {
|
||||
# Dynamic libraries are not transitive, so we may need including
|
||||
# the libraries linked against perl.dll again.
|
||||
|
||||
$potential_libs .= " " if $potential_libs;
|
||||
! $potential_libs .= $Config{perllibs};
|
||||
}
|
||||
return ("", "", "", "") unless $potential_libs;
|
||||
print STDOUT "Potential libraries are '$potential_libs':\n" if $verbose;
|
||||
|
||||
my($so) = $Config{'so'};
|
||||
! my($libs) = $Config{'perllibs'};
|
||||
my $Config_libext = $Config{lib_ext} || ".a";
|
||||
|
||||
|
||||
***************
|
||||
*** 186,196 ****
|
||||
my($self, $potential_libs, $verbose) = @_;
|
||||
|
||||
# If user did not supply a list, we punt.
|
||||
! # (caller should probably use the list in $Config{libs})
|
||||
return ("", "", "", "") unless $potential_libs;
|
||||
|
||||
my($so) = $Config{'so'};
|
||||
! my($libs) = $Config{'libs'};
|
||||
my($libpth) = $Config{'libpth'};
|
||||
my($libext) = $Config{'lib_ext'} || ".lib";
|
||||
|
||||
--- 186,196 ----
|
||||
my($self, $potential_libs, $verbose) = @_;
|
||||
|
||||
# If user did not supply a list, we punt.
|
||||
! # (caller should probably use the list in $Config{perllibs})
|
||||
return ("", "", "", "") unless $potential_libs;
|
||||
|
||||
my($so) = $Config{'so'};
|
||||
! my($libs) = $Config{'perllibs'};
|
||||
my($libpth) = $Config{'libpth'};
|
||||
my($libext) = $Config{'lib_ext'} || ".lib";
|
||||
|
||||
***************
|
||||
*** 540,546 ****
|
||||
=item *
|
||||
|
||||
If C<$potential_libs> is empty, the return value will be empty.
|
||||
! Otherwise, the libraries specified by C<$Config{libs}> (see Config.pm)
|
||||
will be appended to the list of C<$potential_libs>. The libraries
|
||||
will be searched for in the directories specified in C<$potential_libs>
|
||||
as well as in C<$Config{libpth}>. For each library that is found, a
|
||||
--- 540,546 ----
|
||||
=item *
|
||||
|
||||
If C<$potential_libs> is empty, the return value will be empty.
|
||||
! Otherwise, the libraries specified by C<$Config{perllibs}> (see Config.pm)
|
||||
will be appended to the list of C<$potential_libs>. The libraries
|
||||
will be searched for in the directories specified in C<$potential_libs>
|
||||
as well as in C<$Config{libpth}>. For each library that is found, a
|
||||
Only in perl5.004_03/lib/ExtUtils: Liblist.pm.orig
|
||||
Only in perl5.004_03/lib/ExtUtils: Liblist.pm.rej
|
||||
diff -rc perl5.004_03.orig/lib/ExtUtils/MM_Unix.pm perl5.004_03/lib/ExtUtils/MM_Unix.pm
|
||||
*** perl5.004_03.orig/lib/ExtUtils/MM_Unix.pm Mon Aug 18 19:16:12 1997
|
||||
--- perl5.004_03/lib/ExtUtils/MM_Unix.pm Sun Nov 12 21:56:19 2000
|
||||
***************
|
||||
*** 2224,2230 ****
|
||||
MAP_STATIC = ",
|
||||
join(" \\\n\t", reverse sort keys %static), "
|
||||
|
||||
! MAP_PRELIBS = $Config::Config{libs} $Config::Config{cryptlib}
|
||||
";
|
||||
|
||||
if (defined $libperl) {
|
||||
--- 2224,2230 ----
|
||||
MAP_STATIC = ",
|
||||
join(" \\\n\t", reverse sort keys %static), "
|
||||
|
||||
! MAP_PRELIBS = $Config::Config{perllibs} $Config::Config{cryptlib}
|
||||
";
|
||||
|
||||
if (defined $libperl) {
|
||||
Only in perl5.004_03/lib/ExtUtils: MM_Unix.pm.orig
|
||||
diff -rc perl5.004_03.orig/myconfig perl5.004_03/myconfig
|
||||
*** perl5.004_03.orig/myconfig Sat Dec 21 01:13:20 1996
|
||||
--- perl5.004_03/myconfig Sun Nov 12 21:56:19 2000
|
||||
***************
|
||||
*** 35,41 ****
|
||||
Linker and Libraries:
|
||||
ld='$ld', ldflags ='$ldflags'
|
||||
libpth=$libpth
|
||||
! libs=$libs
|
||||
libc=$libc, so=$so
|
||||
useshrplib=$useshrplib, libperl=$libperl
|
||||
Dynamic Linking:
|
||||
--- 35,41 ----
|
||||
Linker and Libraries:
|
||||
ld='$ld', ldflags ='$ldflags'
|
||||
libpth=$libpth
|
||||
! libs=$perllibs
|
||||
libc=$libc, so=$so
|
||||
useshrplib=$useshrplib, libperl=$libperl
|
||||
Dynamic Linking:
|
||||
diff -rc perl5.004_03.orig/patchlevel.h perl5.004_03/patchlevel.h
|
||||
*** perl5.004_03.orig/patchlevel.h Wed Aug 13 11:42:01 1997
|
||||
--- perl5.004_03/patchlevel.h Sun Nov 12 21:56:19 2000
|
||||
***************
|
||||
*** 38,43 ****
|
||||
--- 38,44 ----
|
||||
*/
|
||||
static char *local_patches[] = {
|
||||
NULL
|
||||
+ ,"NODB-1.0 - remove -ldb from core perl binary."
|
||||
,NULL
|
||||
};
|
||||
|
||||
Only in perl5.004_03: patchlevel.h.orig
|
||||
209
perl/DB_File/patches/5.004_04
Normal file
209
perl/DB_File/patches/5.004_04
Normal file
@@ -0,0 +1,209 @@
|
||||
diff -rc perl5.004_04.orig/Configure perl5.004_04/Configure
|
||||
*** perl5.004_04.orig/Configure Fri Oct 3 18:57:39 1997
|
||||
--- perl5.004_04/Configure Sun Nov 12 21:50:51 2000
|
||||
***************
|
||||
*** 188,193 ****
|
||||
--- 188,194 ----
|
||||
mv=''
|
||||
nroff=''
|
||||
perl=''
|
||||
+ perllibs=''
|
||||
pg=''
|
||||
pmake=''
|
||||
pr=''
|
||||
***************
|
||||
*** 9910,9915 ****
|
||||
--- 9911,9924 ----
|
||||
shift
|
||||
extensions="$*"
|
||||
|
||||
+ : Remove libraries needed only for extensions
|
||||
+ : The appropriate ext/Foo/Makefile.PL will add them back in, if
|
||||
+ : necessary.
|
||||
+ set X `echo " $libs " |
|
||||
+ sed -e 's@ -lndbm @ @' -e 's@ -lgdbm @ @' -e 's@ -ldbm @ @' -e 's@ -ldb @ @'`
|
||||
+ shift
|
||||
+ perllibs="$*"
|
||||
+
|
||||
: Remove build directory name from cppstdin so it can be used from
|
||||
: either the present location or the final installed location.
|
||||
echo " "
|
||||
***************
|
||||
*** 10378,10383 ****
|
||||
--- 10387,10393 ----
|
||||
patchlevel='$patchlevel'
|
||||
path_sep='$path_sep'
|
||||
perl='$perl'
|
||||
+ perllibs='$perllibs'
|
||||
perladmin='$perladmin'
|
||||
perlpath='$perlpath'
|
||||
pg='$pg'
|
||||
diff -rc perl5.004_04.orig/Makefile.SH perl5.004_04/Makefile.SH
|
||||
*** perl5.004_04.orig/Makefile.SH Wed Oct 15 10:33:16 1997
|
||||
--- perl5.004_04/Makefile.SH Sun Nov 12 21:50:51 2000
|
||||
***************
|
||||
*** 129,135 ****
|
||||
ext = \$(dynamic_ext) \$(static_ext)
|
||||
DYNALOADER = lib/auto/DynaLoader/DynaLoader\$(LIB_EXT)
|
||||
|
||||
! libs = $libs $cryptlib
|
||||
|
||||
public = perl $suidperl utilities translators
|
||||
|
||||
--- 129,135 ----
|
||||
ext = \$(dynamic_ext) \$(static_ext)
|
||||
DYNALOADER = lib/auto/DynaLoader/DynaLoader\$(LIB_EXT)
|
||||
|
||||
! libs = $perllibs $cryptlib
|
||||
|
||||
public = perl $suidperl utilities translators
|
||||
|
||||
diff -rc perl5.004_04.orig/lib/ExtUtils/Embed.pm perl5.004_04/lib/ExtUtils/Embed.pm
|
||||
*** perl5.004_04.orig/lib/ExtUtils/Embed.pm Fri Aug 1 15:08:44 1997
|
||||
--- perl5.004_04/lib/ExtUtils/Embed.pm Sun Nov 12 21:50:51 2000
|
||||
***************
|
||||
*** 178,184 ****
|
||||
@path = $path ? split(/:/, $path) : @INC;
|
||||
|
||||
push(@potential_libs, @link_args) if scalar @link_args;
|
||||
! push(@potential_libs, $Config{libs}) if defined $std;
|
||||
|
||||
push(@mods, static_ext()) if $std;
|
||||
|
||||
--- 178,184 ----
|
||||
@path = $path ? split(/:/, $path) : @INC;
|
||||
|
||||
push(@potential_libs, @link_args) if scalar @link_args;
|
||||
! push(@potential_libs, $Config{perllibs}) if defined $std;
|
||||
|
||||
push(@mods, static_ext()) if $std;
|
||||
|
||||
diff -rc perl5.004_04.orig/lib/ExtUtils/Liblist.pm perl5.004_04/lib/ExtUtils/Liblist.pm
|
||||
*** perl5.004_04.orig/lib/ExtUtils/Liblist.pm Tue Sep 9 17:41:32 1997
|
||||
--- perl5.004_04/lib/ExtUtils/Liblist.pm Sun Nov 12 21:51:33 2000
|
||||
***************
|
||||
*** 16,33 ****
|
||||
|
||||
sub _unix_os2_ext {
|
||||
my($self,$potential_libs, $verbose) = @_;
|
||||
! if ($^O =~ 'os2' and $Config{libs}) {
|
||||
# Dynamic libraries are not transitive, so we may need including
|
||||
# the libraries linked against perl.dll again.
|
||||
|
||||
$potential_libs .= " " if $potential_libs;
|
||||
! $potential_libs .= $Config{libs};
|
||||
}
|
||||
return ("", "", "", "") unless $potential_libs;
|
||||
warn "Potential libraries are '$potential_libs':\n" if $verbose;
|
||||
|
||||
my($so) = $Config{'so'};
|
||||
! my($libs) = $Config{'libs'};
|
||||
my $Config_libext = $Config{lib_ext} || ".a";
|
||||
|
||||
|
||||
--- 16,33 ----
|
||||
|
||||
sub _unix_os2_ext {
|
||||
my($self,$potential_libs, $verbose) = @_;
|
||||
! if ($^O =~ 'os2' and $Config{perllibs}) {
|
||||
# Dynamic libraries are not transitive, so we may need including
|
||||
# the libraries linked against perl.dll again.
|
||||
|
||||
$potential_libs .= " " if $potential_libs;
|
||||
! $potential_libs .= $Config{perllibs};
|
||||
}
|
||||
return ("", "", "", "") unless $potential_libs;
|
||||
warn "Potential libraries are '$potential_libs':\n" if $verbose;
|
||||
|
||||
my($so) = $Config{'so'};
|
||||
! my($libs) = $Config{'perllibs'};
|
||||
my $Config_libext = $Config{lib_ext} || ".a";
|
||||
|
||||
|
||||
***************
|
||||
*** 189,195 ****
|
||||
return ("", "", "", "") unless $potential_libs;
|
||||
|
||||
my($so) = $Config{'so'};
|
||||
! my($libs) = $Config{'libs'};
|
||||
my($libpth) = $Config{'libpth'};
|
||||
my($libext) = $Config{'lib_ext'} || ".lib";
|
||||
|
||||
--- 189,195 ----
|
||||
return ("", "", "", "") unless $potential_libs;
|
||||
|
||||
my($so) = $Config{'so'};
|
||||
! my($libs) = $Config{'perllibs'};
|
||||
my($libpth) = $Config{'libpth'};
|
||||
my($libext) = $Config{'lib_ext'} || ".lib";
|
||||
|
||||
***************
|
||||
*** 539,545 ****
|
||||
=item *
|
||||
|
||||
If C<$potential_libs> is empty, the return value will be empty.
|
||||
! Otherwise, the libraries specified by C<$Config{libs}> (see Config.pm)
|
||||
will be appended to the list of C<$potential_libs>. The libraries
|
||||
will be searched for in the directories specified in C<$potential_libs>
|
||||
as well as in C<$Config{libpth}>. For each library that is found, a
|
||||
--- 539,545 ----
|
||||
=item *
|
||||
|
||||
If C<$potential_libs> is empty, the return value will be empty.
|
||||
! Otherwise, the libraries specified by C<$Config{perllibs}> (see Config.pm)
|
||||
will be appended to the list of C<$potential_libs>. The libraries
|
||||
will be searched for in the directories specified in C<$potential_libs>
|
||||
as well as in C<$Config{libpth}>. For each library that is found, a
|
||||
diff -rc perl5.004_04.orig/lib/ExtUtils/MM_Unix.pm perl5.004_04/lib/ExtUtils/MM_Unix.pm
|
||||
*** perl5.004_04.orig/lib/ExtUtils/MM_Unix.pm Wed Oct 8 14:13:51 1997
|
||||
--- perl5.004_04/lib/ExtUtils/MM_Unix.pm Sun Nov 12 21:50:51 2000
|
||||
***************
|
||||
*** 2229,2235 ****
|
||||
MAP_STATIC = ",
|
||||
join(" \\\n\t", reverse sort keys %static), "
|
||||
|
||||
! MAP_PRELIBS = $Config::Config{libs} $Config::Config{cryptlib}
|
||||
";
|
||||
|
||||
if (defined $libperl) {
|
||||
--- 2229,2235 ----
|
||||
MAP_STATIC = ",
|
||||
join(" \\\n\t", reverse sort keys %static), "
|
||||
|
||||
! MAP_PRELIBS = $Config::Config{perllibs} $Config::Config{cryptlib}
|
||||
";
|
||||
|
||||
if (defined $libperl) {
|
||||
diff -rc perl5.004_04.orig/myconfig perl5.004_04/myconfig
|
||||
*** perl5.004_04.orig/myconfig Mon Oct 6 18:26:49 1997
|
||||
--- perl5.004_04/myconfig Sun Nov 12 21:50:51 2000
|
||||
***************
|
||||
*** 35,41 ****
|
||||
Linker and Libraries:
|
||||
ld='$ld', ldflags ='$ldflags'
|
||||
libpth=$libpth
|
||||
! libs=$libs
|
||||
libc=$libc, so=$so
|
||||
useshrplib=$useshrplib, libperl=$libperl
|
||||
Dynamic Linking:
|
||||
--- 35,41 ----
|
||||
Linker and Libraries:
|
||||
ld='$ld', ldflags ='$ldflags'
|
||||
libpth=$libpth
|
||||
! libs=$perllibs
|
||||
libc=$libc, so=$so
|
||||
useshrplib=$useshrplib, libperl=$libperl
|
||||
Dynamic Linking:
|
||||
diff -rc perl5.004_04.orig/patchlevel.h perl5.004_04/patchlevel.h
|
||||
*** perl5.004_04.orig/patchlevel.h Wed Oct 15 10:55:19 1997
|
||||
--- perl5.004_04/patchlevel.h Sun Nov 12 21:50:51 2000
|
||||
***************
|
||||
*** 39,44 ****
|
||||
--- 39,45 ----
|
||||
/* The following line and terminating '};' are read by perlbug.PL. Don't alter. */
|
||||
static char *local_patches[] = {
|
||||
NULL
|
||||
+ ,"NODB-1.0 - remove -ldb from core perl binary."
|
||||
,NULL
|
||||
};
|
||||
|
||||
209
perl/DB_File/patches/5.004_05
Normal file
209
perl/DB_File/patches/5.004_05
Normal file
@@ -0,0 +1,209 @@
|
||||
diff -rc perl5.004_05.orig/Configure perl5.004_05/Configure
|
||||
*** perl5.004_05.orig/Configure Thu Jan 6 22:05:49 2000
|
||||
--- perl5.004_05/Configure Sun Nov 12 21:36:25 2000
|
||||
***************
|
||||
*** 188,193 ****
|
||||
--- 188,194 ----
|
||||
mv=''
|
||||
nroff=''
|
||||
perl=''
|
||||
+ perllibs=''
|
||||
pg=''
|
||||
pmake=''
|
||||
pr=''
|
||||
***************
|
||||
*** 10164,10169 ****
|
||||
--- 10165,10178 ----
|
||||
shift
|
||||
extensions="$*"
|
||||
|
||||
+ : Remove libraries needed only for extensions
|
||||
+ : The appropriate ext/Foo/Makefile.PL will add them back in, if
|
||||
+ : necessary.
|
||||
+ set X `echo " $libs " |
|
||||
+ sed -e 's@ -lndbm @ @' -e 's@ -lgdbm @ @' -e 's@ -ldbm @ @' -e 's@ -ldb @ @'`
|
||||
+ shift
|
||||
+ perllibs="$*"
|
||||
+
|
||||
: Remove build directory name from cppstdin so it can be used from
|
||||
: either the present location or the final installed location.
|
||||
echo " "
|
||||
***************
|
||||
*** 10648,10653 ****
|
||||
--- 10657,10663 ----
|
||||
patchlevel='$patchlevel'
|
||||
path_sep='$path_sep'
|
||||
perl='$perl'
|
||||
+ perllibs='$perllibs'
|
||||
perladmin='$perladmin'
|
||||
perlpath='$perlpath'
|
||||
pg='$pg'
|
||||
diff -rc perl5.004_05.orig/Makefile.SH perl5.004_05/Makefile.SH
|
||||
*** perl5.004_05.orig/Makefile.SH Thu Jan 6 22:05:49 2000
|
||||
--- perl5.004_05/Makefile.SH Sun Nov 12 21:36:25 2000
|
||||
***************
|
||||
*** 151,157 ****
|
||||
ext = \$(dynamic_ext) \$(static_ext)
|
||||
DYNALOADER = lib/auto/DynaLoader/DynaLoader\$(LIB_EXT)
|
||||
|
||||
! libs = $libs $cryptlib
|
||||
|
||||
public = perl $suidperl utilities translators
|
||||
|
||||
--- 151,157 ----
|
||||
ext = \$(dynamic_ext) \$(static_ext)
|
||||
DYNALOADER = lib/auto/DynaLoader/DynaLoader\$(LIB_EXT)
|
||||
|
||||
! libs = $perllibs $cryptlib
|
||||
|
||||
public = perl $suidperl utilities translators
|
||||
|
||||
diff -rc perl5.004_05.orig/lib/ExtUtils/Embed.pm perl5.004_05/lib/ExtUtils/Embed.pm
|
||||
*** perl5.004_05.orig/lib/ExtUtils/Embed.pm Fri Aug 1 15:08:44 1997
|
||||
--- perl5.004_05/lib/ExtUtils/Embed.pm Sun Nov 12 21:36:25 2000
|
||||
***************
|
||||
*** 178,184 ****
|
||||
@path = $path ? split(/:/, $path) : @INC;
|
||||
|
||||
push(@potential_libs, @link_args) if scalar @link_args;
|
||||
! push(@potential_libs, $Config{libs}) if defined $std;
|
||||
|
||||
push(@mods, static_ext()) if $std;
|
||||
|
||||
--- 178,184 ----
|
||||
@path = $path ? split(/:/, $path) : @INC;
|
||||
|
||||
push(@potential_libs, @link_args) if scalar @link_args;
|
||||
! push(@potential_libs, $Config{perllibs}) if defined $std;
|
||||
|
||||
push(@mods, static_ext()) if $std;
|
||||
|
||||
diff -rc perl5.004_05.orig/lib/ExtUtils/Liblist.pm perl5.004_05/lib/ExtUtils/Liblist.pm
|
||||
*** perl5.004_05.orig/lib/ExtUtils/Liblist.pm Thu Jan 6 22:05:54 2000
|
||||
--- perl5.004_05/lib/ExtUtils/Liblist.pm Sun Nov 12 21:45:31 2000
|
||||
***************
|
||||
*** 16,33 ****
|
||||
|
||||
sub _unix_os2_ext {
|
||||
my($self,$potential_libs, $verbose) = @_;
|
||||
! if ($^O =~ 'os2' and $Config{libs}) {
|
||||
# Dynamic libraries are not transitive, so we may need including
|
||||
# the libraries linked against perl.dll again.
|
||||
|
||||
$potential_libs .= " " if $potential_libs;
|
||||
! $potential_libs .= $Config{libs};
|
||||
}
|
||||
return ("", "", "", "") unless $potential_libs;
|
||||
warn "Potential libraries are '$potential_libs':\n" if $verbose;
|
||||
|
||||
my($so) = $Config{'so'};
|
||||
! my($libs) = $Config{'libs'};
|
||||
my $Config_libext = $Config{lib_ext} || ".a";
|
||||
|
||||
|
||||
--- 16,33 ----
|
||||
|
||||
sub _unix_os2_ext {
|
||||
my($self,$potential_libs, $verbose) = @_;
|
||||
! if ($^O =~ 'os2' and $Config{perllibs}) {
|
||||
# Dynamic libraries are not transitive, so we may need including
|
||||
# the libraries linked against perl.dll again.
|
||||
|
||||
$potential_libs .= " " if $potential_libs;
|
||||
! $potential_libs .= $Config{perllibs};
|
||||
}
|
||||
return ("", "", "", "") unless $potential_libs;
|
||||
warn "Potential libraries are '$potential_libs':\n" if $verbose;
|
||||
|
||||
my($so) = $Config{'so'};
|
||||
! my($libs) = $Config{'perllibs'};
|
||||
my $Config_libext = $Config{lib_ext} || ".a";
|
||||
|
||||
|
||||
***************
|
||||
*** 196,202 ****
|
||||
my $BC = 1 if $cc =~ /^bcc/i;
|
||||
my $GC = 1 if $cc =~ /^gcc/i;
|
||||
my $so = $Config{'so'};
|
||||
! my $libs = $Config{'libs'};
|
||||
my $libpth = $Config{'libpth'};
|
||||
my $libext = $Config{'lib_ext'} || ".lib";
|
||||
|
||||
--- 196,202 ----
|
||||
my $BC = 1 if $cc =~ /^bcc/i;
|
||||
my $GC = 1 if $cc =~ /^gcc/i;
|
||||
my $so = $Config{'so'};
|
||||
! my $libs = $Config{'perllibs'};
|
||||
my $libpth = $Config{'libpth'};
|
||||
my $libext = $Config{'lib_ext'} || ".lib";
|
||||
|
||||
***************
|
||||
*** 590,596 ****
|
||||
=item *
|
||||
|
||||
If C<$potential_libs> is empty, the return value will be empty.
|
||||
! Otherwise, the libraries specified by C<$Config{libs}> (see Config.pm)
|
||||
will be appended to the list of C<$potential_libs>. The libraries
|
||||
will be searched for in the directories specified in C<$potential_libs>
|
||||
as well as in C<$Config{libpth}>. For each library that is found, a
|
||||
--- 590,596 ----
|
||||
=item *
|
||||
|
||||
If C<$potential_libs> is empty, the return value will be empty.
|
||||
! Otherwise, the libraries specified by C<$Config{perllibs}> (see Config.pm)
|
||||
will be appended to the list of C<$potential_libs>. The libraries
|
||||
will be searched for in the directories specified in C<$potential_libs>
|
||||
as well as in C<$Config{libpth}>. For each library that is found, a
|
||||
diff -rc perl5.004_05.orig/lib/ExtUtils/MM_Unix.pm perl5.004_05/lib/ExtUtils/MM_Unix.pm
|
||||
*** perl5.004_05.orig/lib/ExtUtils/MM_Unix.pm Thu Jan 6 22:05:54 2000
|
||||
--- perl5.004_05/lib/ExtUtils/MM_Unix.pm Sun Nov 12 21:36:25 2000
|
||||
***************
|
||||
*** 2246,2252 ****
|
||||
MAP_STATIC = ",
|
||||
join(" \\\n\t", reverse sort keys %static), "
|
||||
|
||||
! MAP_PRELIBS = $Config::Config{libs} $Config::Config{cryptlib}
|
||||
";
|
||||
|
||||
if (defined $libperl) {
|
||||
--- 2246,2252 ----
|
||||
MAP_STATIC = ",
|
||||
join(" \\\n\t", reverse sort keys %static), "
|
||||
|
||||
! MAP_PRELIBS = $Config::Config{perllibs} $Config::Config{cryptlib}
|
||||
";
|
||||
|
||||
if (defined $libperl) {
|
||||
diff -rc perl5.004_05.orig/myconfig perl5.004_05/myconfig
|
||||
*** perl5.004_05.orig/myconfig Thu Jan 6 22:05:55 2000
|
||||
--- perl5.004_05/myconfig Sun Nov 12 21:43:54 2000
|
||||
***************
|
||||
*** 34,40 ****
|
||||
Linker and Libraries:
|
||||
ld='$ld', ldflags ='$ldflags'
|
||||
libpth=$libpth
|
||||
! libs=$libs
|
||||
libc=$libc, so=$so
|
||||
useshrplib=$useshrplib, libperl=$libperl
|
||||
Dynamic Linking:
|
||||
--- 34,40 ----
|
||||
Linker and Libraries:
|
||||
ld='$ld', ldflags ='$ldflags'
|
||||
libpth=$libpth
|
||||
! libs=$perllibs
|
||||
libc=$libc, so=$so
|
||||
useshrplib=$useshrplib, libperl=$libperl
|
||||
Dynamic Linking:
|
||||
diff -rc perl5.004_05.orig/patchlevel.h perl5.004_05/patchlevel.h
|
||||
*** perl5.004_05.orig/patchlevel.h Thu Jan 6 22:05:48 2000
|
||||
--- perl5.004_05/patchlevel.h Sun Nov 12 21:36:25 2000
|
||||
***************
|
||||
*** 39,44 ****
|
||||
--- 39,45 ----
|
||||
/* The following line and terminating '};' are read by perlbug.PL. Don't alter. */
|
||||
static char *local_patches[] = {
|
||||
NULL
|
||||
+ ,"NODB-1.0 - remove -ldb from core perl binary."
|
||||
,NULL
|
||||
};
|
||||
|
||||
209
perl/DB_File/patches/5.005
Normal file
209
perl/DB_File/patches/5.005
Normal file
@@ -0,0 +1,209 @@
|
||||
diff -rc perl5.005.orig/Configure perl5.005/Configure
|
||||
*** perl5.005.orig/Configure Wed Jul 15 08:05:44 1998
|
||||
--- perl5.005/Configure Sun Nov 12 21:30:40 2000
|
||||
***************
|
||||
*** 234,239 ****
|
||||
--- 234,240 ----
|
||||
nm=''
|
||||
nroff=''
|
||||
perl=''
|
||||
+ perllibs=''
|
||||
pg=''
|
||||
pmake=''
|
||||
pr=''
|
||||
***************
|
||||
*** 11279,11284 ****
|
||||
--- 11280,11293 ----
|
||||
shift
|
||||
extensions="$*"
|
||||
|
||||
+ : Remove libraries needed only for extensions
|
||||
+ : The appropriate ext/Foo/Makefile.PL will add them back in, if
|
||||
+ : necessary.
|
||||
+ set X `echo " $libs " |
|
||||
+ sed -e 's@ -lndbm @ @' -e 's@ -lgdbm @ @' -e 's@ -ldbm @ @' -e 's@ -ldb @ @'`
|
||||
+ shift
|
||||
+ perllibs="$*"
|
||||
+
|
||||
: Remove build directory name from cppstdin so it can be used from
|
||||
: either the present location or the final installed location.
|
||||
echo " "
|
||||
***************
|
||||
*** 11804,11809 ****
|
||||
--- 11813,11819 ----
|
||||
patchlevel='$patchlevel'
|
||||
path_sep='$path_sep'
|
||||
perl='$perl'
|
||||
+ perllibs='$perllibs'
|
||||
perladmin='$perladmin'
|
||||
perlpath='$perlpath'
|
||||
pg='$pg'
|
||||
diff -rc perl5.005.orig/Makefile.SH perl5.005/Makefile.SH
|
||||
*** perl5.005.orig/Makefile.SH Sun Jul 19 08:06:35 1998
|
||||
--- perl5.005/Makefile.SH Sun Nov 12 21:30:40 2000
|
||||
***************
|
||||
*** 150,156 ****
|
||||
ext = \$(dynamic_ext) \$(static_ext) \$(nonxs_ext)
|
||||
DYNALOADER = lib/auto/DynaLoader/DynaLoader\$(LIB_EXT)
|
||||
|
||||
! libs = $libs $cryptlib
|
||||
|
||||
public = perl $suidperl utilities translators
|
||||
|
||||
--- 150,156 ----
|
||||
ext = \$(dynamic_ext) \$(static_ext) \$(nonxs_ext)
|
||||
DYNALOADER = lib/auto/DynaLoader/DynaLoader\$(LIB_EXT)
|
||||
|
||||
! libs = $perllibs $cryptlib
|
||||
|
||||
public = perl $suidperl utilities translators
|
||||
|
||||
diff -rc perl5.005.orig/lib/ExtUtils/Embed.pm perl5.005/lib/ExtUtils/Embed.pm
|
||||
*** perl5.005.orig/lib/ExtUtils/Embed.pm Wed Jul 22 07:45:02 1998
|
||||
--- perl5.005/lib/ExtUtils/Embed.pm Sun Nov 12 21:30:40 2000
|
||||
***************
|
||||
*** 194,200 ****
|
||||
@path = $path ? split(/:/, $path) : @INC;
|
||||
|
||||
push(@potential_libs, @link_args) if scalar @link_args;
|
||||
! push(@potential_libs, $Config{libs}) if defined $std;
|
||||
|
||||
push(@mods, static_ext()) if $std;
|
||||
|
||||
--- 194,200 ----
|
||||
@path = $path ? split(/:/, $path) : @INC;
|
||||
|
||||
push(@potential_libs, @link_args) if scalar @link_args;
|
||||
! push(@potential_libs, $Config{perllibs}) if defined $std;
|
||||
|
||||
push(@mods, static_ext()) if $std;
|
||||
|
||||
diff -rc perl5.005.orig/lib/ExtUtils/Liblist.pm perl5.005/lib/ExtUtils/Liblist.pm
|
||||
*** perl5.005.orig/lib/ExtUtils/Liblist.pm Wed Jul 22 07:09:42 1998
|
||||
--- perl5.005/lib/ExtUtils/Liblist.pm Sun Nov 12 21:30:40 2000
|
||||
***************
|
||||
*** 16,33 ****
|
||||
|
||||
sub _unix_os2_ext {
|
||||
my($self,$potential_libs, $verbose) = @_;
|
||||
! if ($^O =~ 'os2' and $Config{libs}) {
|
||||
# Dynamic libraries are not transitive, so we may need including
|
||||
# the libraries linked against perl.dll again.
|
||||
|
||||
$potential_libs .= " " if $potential_libs;
|
||||
! $potential_libs .= $Config{libs};
|
||||
}
|
||||
return ("", "", "", "") unless $potential_libs;
|
||||
warn "Potential libraries are '$potential_libs':\n" if $verbose;
|
||||
|
||||
my($so) = $Config{'so'};
|
||||
! my($libs) = $Config{'libs'};
|
||||
my $Config_libext = $Config{lib_ext} || ".a";
|
||||
|
||||
|
||||
--- 16,33 ----
|
||||
|
||||
sub _unix_os2_ext {
|
||||
my($self,$potential_libs, $verbose) = @_;
|
||||
! if ($^O =~ 'os2' and $Config{perllibs}) {
|
||||
# Dynamic libraries are not transitive, so we may need including
|
||||
# the libraries linked against perl.dll again.
|
||||
|
||||
$potential_libs .= " " if $potential_libs;
|
||||
! $potential_libs .= $Config{perllibs};
|
||||
}
|
||||
return ("", "", "", "") unless $potential_libs;
|
||||
warn "Potential libraries are '$potential_libs':\n" if $verbose;
|
||||
|
||||
my($so) = $Config{'so'};
|
||||
! my($libs) = $Config{'perllibs'};
|
||||
my $Config_libext = $Config{lib_ext} || ".a";
|
||||
|
||||
|
||||
***************
|
||||
*** 290,296 ****
|
||||
$self->{CCFLAS} || $Config{'ccflags'};
|
||||
@crtls = ( ($dbgqual =~ m-/Debug-i ? $Config{'dbgprefix'} : '')
|
||||
. 'PerlShr/Share' );
|
||||
! push(@crtls, grep { not /\(/ } split /\s+/, $Config{'libs'});
|
||||
push(@crtls, grep { not /\(/ } split /\s+/, $Config{'libc'});
|
||||
# In general, we pass through the basic libraries from %Config unchanged.
|
||||
# The one exception is that if we're building in the Perl source tree, and
|
||||
--- 290,296 ----
|
||||
$self->{CCFLAS} || $Config{'ccflags'};
|
||||
@crtls = ( ($dbgqual =~ m-/Debug-i ? $Config{'dbgprefix'} : '')
|
||||
. 'PerlShr/Share' );
|
||||
! push(@crtls, grep { not /\(/ } split /\s+/, $Config{'perllibs'});
|
||||
push(@crtls, grep { not /\(/ } split /\s+/, $Config{'libc'});
|
||||
# In general, we pass through the basic libraries from %Config unchanged.
|
||||
# The one exception is that if we're building in the Perl source tree, and
|
||||
***************
|
||||
*** 598,604 ****
|
||||
=item *
|
||||
|
||||
If C<$potential_libs> is empty, the return value will be empty.
|
||||
! Otherwise, the libraries specified by C<$Config{libs}> (see Config.pm)
|
||||
will be appended to the list of C<$potential_libs>. The libraries
|
||||
will be searched for in the directories specified in C<$potential_libs>
|
||||
as well as in C<$Config{libpth}>. For each library that is found, a
|
||||
--- 598,604 ----
|
||||
=item *
|
||||
|
||||
If C<$potential_libs> is empty, the return value will be empty.
|
||||
! Otherwise, the libraries specified by C<$Config{perllibs}> (see Config.pm)
|
||||
will be appended to the list of C<$potential_libs>. The libraries
|
||||
will be searched for in the directories specified in C<$potential_libs>
|
||||
as well as in C<$Config{libpth}>. For each library that is found, a
|
||||
diff -rc perl5.005.orig/lib/ExtUtils/MM_Unix.pm perl5.005/lib/ExtUtils/MM_Unix.pm
|
||||
*** perl5.005.orig/lib/ExtUtils/MM_Unix.pm Tue Jul 14 04:39:12 1998
|
||||
--- perl5.005/lib/ExtUtils/MM_Unix.pm Sun Nov 12 21:30:41 2000
|
||||
***************
|
||||
*** 2281,2287 ****
|
||||
MAP_STATIC = ",
|
||||
join(" \\\n\t", reverse sort keys %static), "
|
||||
|
||||
! MAP_PRELIBS = $Config::Config{libs} $Config::Config{cryptlib}
|
||||
";
|
||||
|
||||
if (defined $libperl) {
|
||||
--- 2281,2287 ----
|
||||
MAP_STATIC = ",
|
||||
join(" \\\n\t", reverse sort keys %static), "
|
||||
|
||||
! MAP_PRELIBS = $Config::Config{perllibs} $Config::Config{cryptlib}
|
||||
";
|
||||
|
||||
if (defined $libperl) {
|
||||
diff -rc perl5.005.orig/myconfig perl5.005/myconfig
|
||||
*** perl5.005.orig/myconfig Fri Apr 3 01:20:35 1998
|
||||
--- perl5.005/myconfig Sun Nov 12 21:30:41 2000
|
||||
***************
|
||||
*** 34,40 ****
|
||||
Linker and Libraries:
|
||||
ld='$ld', ldflags ='$ldflags'
|
||||
libpth=$libpth
|
||||
! libs=$libs
|
||||
libc=$libc, so=$so, useshrplib=$useshrplib, libperl=$libperl
|
||||
Dynamic Linking:
|
||||
dlsrc=$dlsrc, dlext=$dlext, d_dlsymun=$d_dlsymun, ccdlflags='$ccdlflags'
|
||||
--- 34,40 ----
|
||||
Linker and Libraries:
|
||||
ld='$ld', ldflags ='$ldflags'
|
||||
libpth=$libpth
|
||||
! libs=$perllibs
|
||||
libc=$libc, so=$so, useshrplib=$useshrplib, libperl=$libperl
|
||||
Dynamic Linking:
|
||||
dlsrc=$dlsrc, dlext=$dlext, d_dlsymun=$d_dlsymun, ccdlflags='$ccdlflags'
|
||||
diff -rc perl5.005.orig/patchlevel.h perl5.005/patchlevel.h
|
||||
*** perl5.005.orig/patchlevel.h Wed Jul 22 19:22:01 1998
|
||||
--- perl5.005/patchlevel.h Sun Nov 12 21:30:41 2000
|
||||
***************
|
||||
*** 39,44 ****
|
||||
--- 39,45 ----
|
||||
*/
|
||||
static char *local_patches[] = {
|
||||
NULL
|
||||
+ ,"NODB-1.0 - remove -ldb from core perl binary."
|
||||
,NULL
|
||||
};
|
||||
|
||||
209
perl/DB_File/patches/5.005_01
Normal file
209
perl/DB_File/patches/5.005_01
Normal file
@@ -0,0 +1,209 @@
|
||||
diff -rc perl5.005_01.orig/Configure perl5.005_01/Configure
|
||||
*** perl5.005_01.orig/Configure Wed Jul 15 08:05:44 1998
|
||||
--- perl5.005_01/Configure Sun Nov 12 20:55:58 2000
|
||||
***************
|
||||
*** 234,239 ****
|
||||
--- 234,240 ----
|
||||
nm=''
|
||||
nroff=''
|
||||
perl=''
|
||||
+ perllibs=''
|
||||
pg=''
|
||||
pmake=''
|
||||
pr=''
|
||||
***************
|
||||
*** 11279,11284 ****
|
||||
--- 11280,11293 ----
|
||||
shift
|
||||
extensions="$*"
|
||||
|
||||
+ : Remove libraries needed only for extensions
|
||||
+ : The appropriate ext/Foo/Makefile.PL will add them back in, if
|
||||
+ : necessary.
|
||||
+ set X `echo " $libs " |
|
||||
+ sed -e 's@ -lndbm @ @' -e 's@ -lgdbm @ @' -e 's@ -ldbm @ @' -e 's@ -ldb @ @'`
|
||||
+ shift
|
||||
+ perllibs="$*"
|
||||
+
|
||||
: Remove build directory name from cppstdin so it can be used from
|
||||
: either the present location or the final installed location.
|
||||
echo " "
|
||||
***************
|
||||
*** 11804,11809 ****
|
||||
--- 11813,11819 ----
|
||||
patchlevel='$patchlevel'
|
||||
path_sep='$path_sep'
|
||||
perl='$perl'
|
||||
+ perllibs='$perllibs'
|
||||
perladmin='$perladmin'
|
||||
perlpath='$perlpath'
|
||||
pg='$pg'
|
||||
diff -rc perl5.005_01.orig/Makefile.SH perl5.005_01/Makefile.SH
|
||||
*** perl5.005_01.orig/Makefile.SH Sun Jul 19 08:06:35 1998
|
||||
--- perl5.005_01/Makefile.SH Sun Nov 12 20:55:58 2000
|
||||
***************
|
||||
*** 150,156 ****
|
||||
ext = \$(dynamic_ext) \$(static_ext) \$(nonxs_ext)
|
||||
DYNALOADER = lib/auto/DynaLoader/DynaLoader\$(LIB_EXT)
|
||||
|
||||
! libs = $libs $cryptlib
|
||||
|
||||
public = perl $suidperl utilities translators
|
||||
|
||||
--- 150,156 ----
|
||||
ext = \$(dynamic_ext) \$(static_ext) \$(nonxs_ext)
|
||||
DYNALOADER = lib/auto/DynaLoader/DynaLoader\$(LIB_EXT)
|
||||
|
||||
! libs = $perllibs $cryptlib
|
||||
|
||||
public = perl $suidperl utilities translators
|
||||
|
||||
diff -rc perl5.005_01.orig/lib/ExtUtils/Embed.pm perl5.005_01/lib/ExtUtils/Embed.pm
|
||||
*** perl5.005_01.orig/lib/ExtUtils/Embed.pm Wed Jul 22 07:45:02 1998
|
||||
--- perl5.005_01/lib/ExtUtils/Embed.pm Sun Nov 12 20:55:58 2000
|
||||
***************
|
||||
*** 194,200 ****
|
||||
@path = $path ? split(/:/, $path) : @INC;
|
||||
|
||||
push(@potential_libs, @link_args) if scalar @link_args;
|
||||
! push(@potential_libs, $Config{libs}) if defined $std;
|
||||
|
||||
push(@mods, static_ext()) if $std;
|
||||
|
||||
--- 194,200 ----
|
||||
@path = $path ? split(/:/, $path) : @INC;
|
||||
|
||||
push(@potential_libs, @link_args) if scalar @link_args;
|
||||
! push(@potential_libs, $Config{perllibs}) if defined $std;
|
||||
|
||||
push(@mods, static_ext()) if $std;
|
||||
|
||||
diff -rc perl5.005_01.orig/lib/ExtUtils/Liblist.pm perl5.005_01/lib/ExtUtils/Liblist.pm
|
||||
*** perl5.005_01.orig/lib/ExtUtils/Liblist.pm Wed Jul 22 07:09:42 1998
|
||||
--- perl5.005_01/lib/ExtUtils/Liblist.pm Sun Nov 12 20:55:58 2000
|
||||
***************
|
||||
*** 16,33 ****
|
||||
|
||||
sub _unix_os2_ext {
|
||||
my($self,$potential_libs, $verbose) = @_;
|
||||
! if ($^O =~ 'os2' and $Config{libs}) {
|
||||
# Dynamic libraries are not transitive, so we may need including
|
||||
# the libraries linked against perl.dll again.
|
||||
|
||||
$potential_libs .= " " if $potential_libs;
|
||||
! $potential_libs .= $Config{libs};
|
||||
}
|
||||
return ("", "", "", "") unless $potential_libs;
|
||||
warn "Potential libraries are '$potential_libs':\n" if $verbose;
|
||||
|
||||
my($so) = $Config{'so'};
|
||||
! my($libs) = $Config{'libs'};
|
||||
my $Config_libext = $Config{lib_ext} || ".a";
|
||||
|
||||
|
||||
--- 16,33 ----
|
||||
|
||||
sub _unix_os2_ext {
|
||||
my($self,$potential_libs, $verbose) = @_;
|
||||
! if ($^O =~ 'os2' and $Config{perllibs}) {
|
||||
# Dynamic libraries are not transitive, so we may need including
|
||||
# the libraries linked against perl.dll again.
|
||||
|
||||
$potential_libs .= " " if $potential_libs;
|
||||
! $potential_libs .= $Config{perllibs};
|
||||
}
|
||||
return ("", "", "", "") unless $potential_libs;
|
||||
warn "Potential libraries are '$potential_libs':\n" if $verbose;
|
||||
|
||||
my($so) = $Config{'so'};
|
||||
! my($libs) = $Config{'perllibs'};
|
||||
my $Config_libext = $Config{lib_ext} || ".a";
|
||||
|
||||
|
||||
***************
|
||||
*** 290,296 ****
|
||||
$self->{CCFLAS} || $Config{'ccflags'};
|
||||
@crtls = ( ($dbgqual =~ m-/Debug-i ? $Config{'dbgprefix'} : '')
|
||||
. 'PerlShr/Share' );
|
||||
! push(@crtls, grep { not /\(/ } split /\s+/, $Config{'libs'});
|
||||
push(@crtls, grep { not /\(/ } split /\s+/, $Config{'libc'});
|
||||
# In general, we pass through the basic libraries from %Config unchanged.
|
||||
# The one exception is that if we're building in the Perl source tree, and
|
||||
--- 290,296 ----
|
||||
$self->{CCFLAS} || $Config{'ccflags'};
|
||||
@crtls = ( ($dbgqual =~ m-/Debug-i ? $Config{'dbgprefix'} : '')
|
||||
. 'PerlShr/Share' );
|
||||
! push(@crtls, grep { not /\(/ } split /\s+/, $Config{'perllibs'});
|
||||
push(@crtls, grep { not /\(/ } split /\s+/, $Config{'libc'});
|
||||
# In general, we pass through the basic libraries from %Config unchanged.
|
||||
# The one exception is that if we're building in the Perl source tree, and
|
||||
***************
|
||||
*** 598,604 ****
|
||||
=item *
|
||||
|
||||
If C<$potential_libs> is empty, the return value will be empty.
|
||||
! Otherwise, the libraries specified by C<$Config{libs}> (see Config.pm)
|
||||
will be appended to the list of C<$potential_libs>. The libraries
|
||||
will be searched for in the directories specified in C<$potential_libs>
|
||||
as well as in C<$Config{libpth}>. For each library that is found, a
|
||||
--- 598,604 ----
|
||||
=item *
|
||||
|
||||
If C<$potential_libs> is empty, the return value will be empty.
|
||||
! Otherwise, the libraries specified by C<$Config{perllibs}> (see Config.pm)
|
||||
will be appended to the list of C<$potential_libs>. The libraries
|
||||
will be searched for in the directories specified in C<$potential_libs>
|
||||
as well as in C<$Config{libpth}>. For each library that is found, a
|
||||
diff -rc perl5.005_01.orig/lib/ExtUtils/MM_Unix.pm perl5.005_01/lib/ExtUtils/MM_Unix.pm
|
||||
*** perl5.005_01.orig/lib/ExtUtils/MM_Unix.pm Tue Jul 14 04:39:12 1998
|
||||
--- perl5.005_01/lib/ExtUtils/MM_Unix.pm Sun Nov 12 20:55:58 2000
|
||||
***************
|
||||
*** 2281,2287 ****
|
||||
MAP_STATIC = ",
|
||||
join(" \\\n\t", reverse sort keys %static), "
|
||||
|
||||
! MAP_PRELIBS = $Config::Config{libs} $Config::Config{cryptlib}
|
||||
";
|
||||
|
||||
if (defined $libperl) {
|
||||
--- 2281,2287 ----
|
||||
MAP_STATIC = ",
|
||||
join(" \\\n\t", reverse sort keys %static), "
|
||||
|
||||
! MAP_PRELIBS = $Config::Config{perllibs} $Config::Config{cryptlib}
|
||||
";
|
||||
|
||||
if (defined $libperl) {
|
||||
diff -rc perl5.005_01.orig/myconfig perl5.005_01/myconfig
|
||||
*** perl5.005_01.orig/myconfig Fri Apr 3 01:20:35 1998
|
||||
--- perl5.005_01/myconfig Sun Nov 12 20:55:58 2000
|
||||
***************
|
||||
*** 34,40 ****
|
||||
Linker and Libraries:
|
||||
ld='$ld', ldflags ='$ldflags'
|
||||
libpth=$libpth
|
||||
! libs=$libs
|
||||
libc=$libc, so=$so, useshrplib=$useshrplib, libperl=$libperl
|
||||
Dynamic Linking:
|
||||
dlsrc=$dlsrc, dlext=$dlext, d_dlsymun=$d_dlsymun, ccdlflags='$ccdlflags'
|
||||
--- 34,40 ----
|
||||
Linker and Libraries:
|
||||
ld='$ld', ldflags ='$ldflags'
|
||||
libpth=$libpth
|
||||
! libs=$perllibs
|
||||
libc=$libc, so=$so, useshrplib=$useshrplib, libperl=$libperl
|
||||
Dynamic Linking:
|
||||
dlsrc=$dlsrc, dlext=$dlext, d_dlsymun=$d_dlsymun, ccdlflags='$ccdlflags'
|
||||
diff -rc perl5.005_01.orig/patchlevel.h perl5.005_01/patchlevel.h
|
||||
*** perl5.005_01.orig/patchlevel.h Mon Jan 3 11:07:45 2000
|
||||
--- perl5.005_01/patchlevel.h Sun Nov 12 20:55:58 2000
|
||||
***************
|
||||
*** 39,44 ****
|
||||
--- 39,45 ----
|
||||
*/
|
||||
static char *local_patches[] = {
|
||||
NULL
|
||||
+ ,"NODB-1.0 - remove -ldb from core perl binary."
|
||||
,NULL
|
||||
};
|
||||
|
||||
264
perl/DB_File/patches/5.005_02
Normal file
264
perl/DB_File/patches/5.005_02
Normal file
@@ -0,0 +1,264 @@
|
||||
diff -rc perl5.005_02.orig/Configure perl5.005_02/Configure
|
||||
*** perl5.005_02.orig/Configure Mon Jan 3 11:12:20 2000
|
||||
--- perl5.005_02/Configure Sun Nov 12 20:50:51 2000
|
||||
***************
|
||||
*** 234,239 ****
|
||||
--- 234,240 ----
|
||||
nm=''
|
||||
nroff=''
|
||||
perl=''
|
||||
+ perllibs=''
|
||||
pg=''
|
||||
pmake=''
|
||||
pr=''
|
||||
***************
|
||||
*** 11334,11339 ****
|
||||
--- 11335,11348 ----
|
||||
shift
|
||||
extensions="$*"
|
||||
|
||||
+ : Remove libraries needed only for extensions
|
||||
+ : The appropriate ext/Foo/Makefile.PL will add them back in, if
|
||||
+ : necessary.
|
||||
+ set X `echo " $libs " |
|
||||
+ sed -e 's@ -lndbm @ @' -e 's@ -lgdbm @ @' -e 's@ -ldbm @ @' -e 's@ -ldb @ @'`
|
||||
+ shift
|
||||
+ perllibs="$*"
|
||||
+
|
||||
: Remove build directory name from cppstdin so it can be used from
|
||||
: either the present location or the final installed location.
|
||||
echo " "
|
||||
***************
|
||||
*** 11859,11864 ****
|
||||
--- 11868,11874 ----
|
||||
patchlevel='$patchlevel'
|
||||
path_sep='$path_sep'
|
||||
perl='$perl'
|
||||
+ perllibs='$perllibs'
|
||||
perladmin='$perladmin'
|
||||
perlpath='$perlpath'
|
||||
pg='$pg'
|
||||
Only in perl5.005_02: Configure.orig
|
||||
diff -rc perl5.005_02.orig/Makefile.SH perl5.005_02/Makefile.SH
|
||||
*** perl5.005_02.orig/Makefile.SH Sun Jul 19 08:06:35 1998
|
||||
--- perl5.005_02/Makefile.SH Sun Nov 12 20:50:51 2000
|
||||
***************
|
||||
*** 150,156 ****
|
||||
ext = \$(dynamic_ext) \$(static_ext) \$(nonxs_ext)
|
||||
DYNALOADER = lib/auto/DynaLoader/DynaLoader\$(LIB_EXT)
|
||||
|
||||
! libs = $libs $cryptlib
|
||||
|
||||
public = perl $suidperl utilities translators
|
||||
|
||||
--- 150,156 ----
|
||||
ext = \$(dynamic_ext) \$(static_ext) \$(nonxs_ext)
|
||||
DYNALOADER = lib/auto/DynaLoader/DynaLoader\$(LIB_EXT)
|
||||
|
||||
! libs = $perllibs $cryptlib
|
||||
|
||||
public = perl $suidperl utilities translators
|
||||
|
||||
Only in perl5.005_02: Makefile.SH.orig
|
||||
diff -rc perl5.005_02.orig/lib/ExtUtils/Embed.pm perl5.005_02/lib/ExtUtils/Embed.pm
|
||||
*** perl5.005_02.orig/lib/ExtUtils/Embed.pm Wed Jul 22 07:45:02 1998
|
||||
--- perl5.005_02/lib/ExtUtils/Embed.pm Sun Nov 12 20:50:51 2000
|
||||
***************
|
||||
*** 194,200 ****
|
||||
@path = $path ? split(/:/, $path) : @INC;
|
||||
|
||||
push(@potential_libs, @link_args) if scalar @link_args;
|
||||
! push(@potential_libs, $Config{libs}) if defined $std;
|
||||
|
||||
push(@mods, static_ext()) if $std;
|
||||
|
||||
--- 194,200 ----
|
||||
@path = $path ? split(/:/, $path) : @INC;
|
||||
|
||||
push(@potential_libs, @link_args) if scalar @link_args;
|
||||
! push(@potential_libs, $Config{perllibs}) if defined $std;
|
||||
|
||||
push(@mods, static_ext()) if $std;
|
||||
|
||||
diff -rc perl5.005_02.orig/lib/ExtUtils/Liblist.pm perl5.005_02/lib/ExtUtils/Liblist.pm
|
||||
*** perl5.005_02.orig/lib/ExtUtils/Liblist.pm Mon Jan 3 11:12:21 2000
|
||||
--- perl5.005_02/lib/ExtUtils/Liblist.pm Sun Nov 12 20:50:51 2000
|
||||
***************
|
||||
*** 16,33 ****
|
||||
|
||||
sub _unix_os2_ext {
|
||||
my($self,$potential_libs, $verbose) = @_;
|
||||
! if ($^O =~ 'os2' and $Config{libs}) {
|
||||
# Dynamic libraries are not transitive, so we may need including
|
||||
# the libraries linked against perl.dll again.
|
||||
|
||||
$potential_libs .= " " if $potential_libs;
|
||||
! $potential_libs .= $Config{libs};
|
||||
}
|
||||
return ("", "", "", "") unless $potential_libs;
|
||||
warn "Potential libraries are '$potential_libs':\n" if $verbose;
|
||||
|
||||
my($so) = $Config{'so'};
|
||||
! my($libs) = $Config{'libs'};
|
||||
my $Config_libext = $Config{lib_ext} || ".a";
|
||||
|
||||
|
||||
--- 16,33 ----
|
||||
|
||||
sub _unix_os2_ext {
|
||||
my($self,$potential_libs, $verbose) = @_;
|
||||
! if ($^O =~ 'os2' and $Config{perllibs}) {
|
||||
# Dynamic libraries are not transitive, so we may need including
|
||||
# the libraries linked against perl.dll again.
|
||||
|
||||
$potential_libs .= " " if $potential_libs;
|
||||
! $potential_libs .= $Config{perllibs};
|
||||
}
|
||||
return ("", "", "", "") unless $potential_libs;
|
||||
warn "Potential libraries are '$potential_libs':\n" if $verbose;
|
||||
|
||||
my($so) = $Config{'so'};
|
||||
! my($libs) = $Config{'perllibs'};
|
||||
my $Config_libext = $Config{lib_ext} || ".a";
|
||||
|
||||
|
||||
***************
|
||||
*** 196,202 ****
|
||||
my $BC = 1 if $cc =~ /^bcc/i;
|
||||
my $GC = 1 if $cc =~ /^gcc/i;
|
||||
my $so = $Config{'so'};
|
||||
! my $libs = $Config{'libs'};
|
||||
my $libpth = $Config{'libpth'};
|
||||
my $libext = $Config{'lib_ext'} || ".lib";
|
||||
|
||||
--- 196,202 ----
|
||||
my $BC = 1 if $cc =~ /^bcc/i;
|
||||
my $GC = 1 if $cc =~ /^gcc/i;
|
||||
my $so = $Config{'so'};
|
||||
! my $libs = $Config{'perllibs'};
|
||||
my $libpth = $Config{'libpth'};
|
||||
my $libext = $Config{'lib_ext'} || ".lib";
|
||||
|
||||
***************
|
||||
*** 333,339 ****
|
||||
$self->{CCFLAS} || $Config{'ccflags'};
|
||||
@crtls = ( ($dbgqual =~ m-/Debug-i ? $Config{'dbgprefix'} : '')
|
||||
. 'PerlShr/Share' );
|
||||
! push(@crtls, grep { not /\(/ } split /\s+/, $Config{'libs'});
|
||||
push(@crtls, grep { not /\(/ } split /\s+/, $Config{'libc'});
|
||||
# In general, we pass through the basic libraries from %Config unchanged.
|
||||
# The one exception is that if we're building in the Perl source tree, and
|
||||
--- 333,339 ----
|
||||
$self->{CCFLAS} || $Config{'ccflags'};
|
||||
@crtls = ( ($dbgqual =~ m-/Debug-i ? $Config{'dbgprefix'} : '')
|
||||
. 'PerlShr/Share' );
|
||||
! push(@crtls, grep { not /\(/ } split /\s+/, $Config{'perllibs'});
|
||||
push(@crtls, grep { not /\(/ } split /\s+/, $Config{'libc'});
|
||||
# In general, we pass through the basic libraries from %Config unchanged.
|
||||
# The one exception is that if we're building in the Perl source tree, and
|
||||
***************
|
||||
*** 623,629 ****
|
||||
=item *
|
||||
|
||||
If C<$potential_libs> is empty, the return value will be empty.
|
||||
! Otherwise, the libraries specified by C<$Config{libs}> (see Config.pm)
|
||||
will be appended to the list of C<$potential_libs>. The libraries
|
||||
will be searched for in the directories specified in C<$potential_libs>
|
||||
as well as in C<$Config{libpth}>. For each library that is found, a
|
||||
--- 623,629 ----
|
||||
=item *
|
||||
|
||||
If C<$potential_libs> is empty, the return value will be empty.
|
||||
! Otherwise, the libraries specified by C<$Config{perllibs}> (see Config.pm)
|
||||
will be appended to the list of C<$potential_libs>. The libraries
|
||||
will be searched for in the directories specified in C<$potential_libs>
|
||||
as well as in C<$Config{libpth}>. For each library that is found, a
|
||||
***************
|
||||
*** 666,672 ****
|
||||
alphanumeric characters are treated as flags. Unknown flags will be ignored.
|
||||
|
||||
An entry that matches C</:nodefault/i> disables the appending of default
|
||||
! libraries found in C<$Config{libs}> (this should be only needed very rarely).
|
||||
|
||||
An entry that matches C</:nosearch/i> disables all searching for
|
||||
the libraries specified after it. Translation of C<-Lfoo> and
|
||||
--- 666,672 ----
|
||||
alphanumeric characters are treated as flags. Unknown flags will be ignored.
|
||||
|
||||
An entry that matches C</:nodefault/i> disables the appending of default
|
||||
! libraries found in C<$Config{perllibs}> (this should be only needed very rarely).
|
||||
|
||||
An entry that matches C</:nosearch/i> disables all searching for
|
||||
the libraries specified after it. Translation of C<-Lfoo> and
|
||||
***************
|
||||
*** 676,682 ****
|
||||
|
||||
An entry that matches C</:search/i> reenables searching for
|
||||
the libraries specified after it. You can put it at the end to
|
||||
! enable searching for default libraries specified by C<$Config{libs}>.
|
||||
|
||||
=item *
|
||||
|
||||
--- 676,682 ----
|
||||
|
||||
An entry that matches C</:search/i> reenables searching for
|
||||
the libraries specified after it. You can put it at the end to
|
||||
! enable searching for default libraries specified by C<$Config{perllibs}>.
|
||||
|
||||
=item *
|
||||
|
||||
Only in perl5.005_02/lib/ExtUtils: Liblist.pm.orig
|
||||
diff -rc perl5.005_02.orig/lib/ExtUtils/MM_Unix.pm perl5.005_02/lib/ExtUtils/MM_Unix.pm
|
||||
*** perl5.005_02.orig/lib/ExtUtils/MM_Unix.pm Tue Jul 14 04:39:12 1998
|
||||
--- perl5.005_02/lib/ExtUtils/MM_Unix.pm Sun Nov 12 20:50:51 2000
|
||||
***************
|
||||
*** 2281,2287 ****
|
||||
MAP_STATIC = ",
|
||||
join(" \\\n\t", reverse sort keys %static), "
|
||||
|
||||
! MAP_PRELIBS = $Config::Config{libs} $Config::Config{cryptlib}
|
||||
";
|
||||
|
||||
if (defined $libperl) {
|
||||
--- 2281,2287 ----
|
||||
MAP_STATIC = ",
|
||||
join(" \\\n\t", reverse sort keys %static), "
|
||||
|
||||
! MAP_PRELIBS = $Config::Config{perllibs} $Config::Config{cryptlib}
|
||||
";
|
||||
|
||||
if (defined $libperl) {
|
||||
Only in perl5.005_02/lib/ExtUtils: MM_Unix.pm.orig
|
||||
diff -rc perl5.005_02.orig/myconfig perl5.005_02/myconfig
|
||||
*** perl5.005_02.orig/myconfig Fri Apr 3 01:20:35 1998
|
||||
--- perl5.005_02/myconfig Sun Nov 12 20:50:51 2000
|
||||
***************
|
||||
*** 34,40 ****
|
||||
Linker and Libraries:
|
||||
ld='$ld', ldflags ='$ldflags'
|
||||
libpth=$libpth
|
||||
! libs=$libs
|
||||
libc=$libc, so=$so, useshrplib=$useshrplib, libperl=$libperl
|
||||
Dynamic Linking:
|
||||
dlsrc=$dlsrc, dlext=$dlext, d_dlsymun=$d_dlsymun, ccdlflags='$ccdlflags'
|
||||
--- 34,40 ----
|
||||
Linker and Libraries:
|
||||
ld='$ld', ldflags ='$ldflags'
|
||||
libpth=$libpth
|
||||
! libs=$perllibs
|
||||
libc=$libc, so=$so, useshrplib=$useshrplib, libperl=$libperl
|
||||
Dynamic Linking:
|
||||
dlsrc=$dlsrc, dlext=$dlext, d_dlsymun=$d_dlsymun, ccdlflags='$ccdlflags'
|
||||
diff -rc perl5.005_02.orig/patchlevel.h perl5.005_02/patchlevel.h
|
||||
*** perl5.005_02.orig/patchlevel.h Mon Jan 3 11:12:19 2000
|
||||
--- perl5.005_02/patchlevel.h Sun Nov 12 20:50:51 2000
|
||||
***************
|
||||
*** 40,45 ****
|
||||
--- 40,46 ----
|
||||
*/
|
||||
static char *local_patches[] = {
|
||||
NULL
|
||||
+ ,"NODB-1.0 - remove -ldb from core perl binary."
|
||||
,NULL
|
||||
};
|
||||
|
||||
250
perl/DB_File/patches/5.005_03
Normal file
250
perl/DB_File/patches/5.005_03
Normal file
@@ -0,0 +1,250 @@
|
||||
diff -rc perl5.005_03.orig/Configure perl5.005_03/Configure
|
||||
*** perl5.005_03.orig/Configure Sun Mar 28 17:12:57 1999
|
||||
--- perl5.005_03/Configure Sun Sep 17 22:19:16 2000
|
||||
***************
|
||||
*** 208,213 ****
|
||||
--- 208,214 ----
|
||||
nm=''
|
||||
nroff=''
|
||||
perl=''
|
||||
+ perllibs=''
|
||||
pg=''
|
||||
pmake=''
|
||||
pr=''
|
||||
***************
|
||||
*** 11642,11647 ****
|
||||
--- 11643,11656 ----
|
||||
shift
|
||||
extensions="$*"
|
||||
|
||||
+ : Remove libraries needed only for extensions
|
||||
+ : The appropriate ext/Foo/Makefile.PL will add them back in, if
|
||||
+ : necessary.
|
||||
+ set X `echo " $libs " |
|
||||
+ sed -e 's@ -lndbm @ @' -e 's@ -lgdbm @ @' -e 's@ -ldbm @ @' -e 's@ -ldb @ @'`
|
||||
+ shift
|
||||
+ perllibs="$*"
|
||||
+
|
||||
: Remove build directory name from cppstdin so it can be used from
|
||||
: either the present location or the final installed location.
|
||||
echo " "
|
||||
***************
|
||||
*** 12183,12188 ****
|
||||
--- 12192,12198 ----
|
||||
patchlevel='$patchlevel'
|
||||
path_sep='$path_sep'
|
||||
perl='$perl'
|
||||
+ perllibs='$perllibs'
|
||||
perladmin='$perladmin'
|
||||
perlpath='$perlpath'
|
||||
pg='$pg'
|
||||
diff -rc perl5.005_03.orig/Makefile.SH perl5.005_03/Makefile.SH
|
||||
*** perl5.005_03.orig/Makefile.SH Thu Mar 4 02:35:25 1999
|
||||
--- perl5.005_03/Makefile.SH Sun Sep 17 22:21:01 2000
|
||||
***************
|
||||
*** 58,67 ****
|
||||
shrpldflags="-H512 -T512 -bhalt:4 -bM:SRE -bE:perl.exp"
|
||||
case "$osvers" in
|
||||
3*)
|
||||
! shrpldflags="$shrpldflags -e _nostart $ldflags $libs $cryptlib"
|
||||
;;
|
||||
*)
|
||||
! shrpldflags="$shrpldflags -b noentry $ldflags $libs $cryptlib"
|
||||
;;
|
||||
esac
|
||||
aixinstdir=`pwd | sed 's/\/UU$//'`
|
||||
--- 58,67 ----
|
||||
shrpldflags="-H512 -T512 -bhalt:4 -bM:SRE -bE:perl.exp"
|
||||
case "$osvers" in
|
||||
3*)
|
||||
! shrpldflags="$shrpldflags -e _nostart $ldflags $perllibs $cryptlib"
|
||||
;;
|
||||
*)
|
||||
! shrpldflags="$shrpldflags -b noentry $ldflags $perllibs $cryptlib"
|
||||
;;
|
||||
esac
|
||||
aixinstdir=`pwd | sed 's/\/UU$//'`
|
||||
***************
|
||||
*** 155,161 ****
|
||||
ext = \$(dynamic_ext) \$(static_ext) \$(nonxs_ext)
|
||||
DYNALOADER = lib/auto/DynaLoader/DynaLoader\$(LIB_EXT)
|
||||
|
||||
! libs = $libs $cryptlib
|
||||
|
||||
public = perl $suidperl utilities translators
|
||||
|
||||
--- 155,161 ----
|
||||
ext = \$(dynamic_ext) \$(static_ext) \$(nonxs_ext)
|
||||
DYNALOADER = lib/auto/DynaLoader/DynaLoader\$(LIB_EXT)
|
||||
|
||||
! libs = $perllibs $cryptlib
|
||||
|
||||
public = perl $suidperl utilities translators
|
||||
|
||||
diff -rc perl5.005_03.orig/lib/ExtUtils/Embed.pm perl5.005_03/lib/ExtUtils/Embed.pm
|
||||
*** perl5.005_03.orig/lib/ExtUtils/Embed.pm Wed Jan 6 02:17:50 1999
|
||||
--- perl5.005_03/lib/ExtUtils/Embed.pm Sun Sep 17 22:19:16 2000
|
||||
***************
|
||||
*** 194,200 ****
|
||||
@path = $path ? split(/:/, $path) : @INC;
|
||||
|
||||
push(@potential_libs, @link_args) if scalar @link_args;
|
||||
! push(@potential_libs, $Config{libs}) if defined $std;
|
||||
|
||||
push(@mods, static_ext()) if $std;
|
||||
|
||||
--- 194,200 ----
|
||||
@path = $path ? split(/:/, $path) : @INC;
|
||||
|
||||
push(@potential_libs, @link_args) if scalar @link_args;
|
||||
! push(@potential_libs, $Config{perllibs}) if defined $std;
|
||||
|
||||
push(@mods, static_ext()) if $std;
|
||||
|
||||
diff -rc perl5.005_03.orig/lib/ExtUtils/Liblist.pm perl5.005_03/lib/ExtUtils/Liblist.pm
|
||||
*** perl5.005_03.orig/lib/ExtUtils/Liblist.pm Wed Jan 6 02:17:47 1999
|
||||
--- perl5.005_03/lib/ExtUtils/Liblist.pm Sun Sep 17 22:19:16 2000
|
||||
***************
|
||||
*** 16,33 ****
|
||||
|
||||
sub _unix_os2_ext {
|
||||
my($self,$potential_libs, $verbose) = @_;
|
||||
! if ($^O =~ 'os2' and $Config{libs}) {
|
||||
# Dynamic libraries are not transitive, so we may need including
|
||||
# the libraries linked against perl.dll again.
|
||||
|
||||
$potential_libs .= " " if $potential_libs;
|
||||
! $potential_libs .= $Config{libs};
|
||||
}
|
||||
return ("", "", "", "") unless $potential_libs;
|
||||
warn "Potential libraries are '$potential_libs':\n" if $verbose;
|
||||
|
||||
my($so) = $Config{'so'};
|
||||
! my($libs) = $Config{'libs'};
|
||||
my $Config_libext = $Config{lib_ext} || ".a";
|
||||
|
||||
|
||||
--- 16,33 ----
|
||||
|
||||
sub _unix_os2_ext {
|
||||
my($self,$potential_libs, $verbose) = @_;
|
||||
! if ($^O =~ 'os2' and $Config{perllibs}) {
|
||||
# Dynamic libraries are not transitive, so we may need including
|
||||
# the libraries linked against perl.dll again.
|
||||
|
||||
$potential_libs .= " " if $potential_libs;
|
||||
! $potential_libs .= $Config{perllibs};
|
||||
}
|
||||
return ("", "", "", "") unless $potential_libs;
|
||||
warn "Potential libraries are '$potential_libs':\n" if $verbose;
|
||||
|
||||
my($so) = $Config{'so'};
|
||||
! my($libs) = $Config{'perllibs'};
|
||||
my $Config_libext = $Config{lib_ext} || ".a";
|
||||
|
||||
|
||||
***************
|
||||
*** 196,202 ****
|
||||
my $BC = 1 if $cc =~ /^bcc/i;
|
||||
my $GC = 1 if $cc =~ /^gcc/i;
|
||||
my $so = $Config{'so'};
|
||||
! my $libs = $Config{'libs'};
|
||||
my $libpth = $Config{'libpth'};
|
||||
my $libext = $Config{'lib_ext'} || ".lib";
|
||||
|
||||
--- 196,202 ----
|
||||
my $BC = 1 if $cc =~ /^bcc/i;
|
||||
my $GC = 1 if $cc =~ /^gcc/i;
|
||||
my $so = $Config{'so'};
|
||||
! my $libs = $Config{'perllibs'};
|
||||
my $libpth = $Config{'libpth'};
|
||||
my $libext = $Config{'lib_ext'} || ".lib";
|
||||
|
||||
***************
|
||||
*** 336,342 ****
|
||||
$self->{CCFLAS} || $Config{'ccflags'};
|
||||
@crtls = ( ($dbgqual =~ m-/Debug-i ? $Config{'dbgprefix'} : '')
|
||||
. 'PerlShr/Share' );
|
||||
! push(@crtls, grep { not /\(/ } split /\s+/, $Config{'libs'});
|
||||
push(@crtls, grep { not /\(/ } split /\s+/, $Config{'libc'});
|
||||
# In general, we pass through the basic libraries from %Config unchanged.
|
||||
# The one exception is that if we're building in the Perl source tree, and
|
||||
--- 336,342 ----
|
||||
$self->{CCFLAS} || $Config{'ccflags'};
|
||||
@crtls = ( ($dbgqual =~ m-/Debug-i ? $Config{'dbgprefix'} : '')
|
||||
. 'PerlShr/Share' );
|
||||
! push(@crtls, grep { not /\(/ } split /\s+/, $Config{'perllibs'});
|
||||
push(@crtls, grep { not /\(/ } split /\s+/, $Config{'libc'});
|
||||
# In general, we pass through the basic libraries from %Config unchanged.
|
||||
# The one exception is that if we're building in the Perl source tree, and
|
||||
***************
|
||||
*** 626,632 ****
|
||||
=item *
|
||||
|
||||
If C<$potential_libs> is empty, the return value will be empty.
|
||||
! Otherwise, the libraries specified by C<$Config{libs}> (see Config.pm)
|
||||
will be appended to the list of C<$potential_libs>. The libraries
|
||||
will be searched for in the directories specified in C<$potential_libs>,
|
||||
C<$Config{libpth}>, and in C<$Config{installarchlib}/CORE>.
|
||||
--- 626,632 ----
|
||||
=item *
|
||||
|
||||
If C<$potential_libs> is empty, the return value will be empty.
|
||||
! Otherwise, the libraries specified by C<$Config{perllibs}> (see Config.pm)
|
||||
will be appended to the list of C<$potential_libs>. The libraries
|
||||
will be searched for in the directories specified in C<$potential_libs>,
|
||||
C<$Config{libpth}>, and in C<$Config{installarchlib}/CORE>.
|
||||
***************
|
||||
*** 670,676 ****
|
||||
alphanumeric characters are treated as flags. Unknown flags will be ignored.
|
||||
|
||||
An entry that matches C</:nodefault/i> disables the appending of default
|
||||
! libraries found in C<$Config{libs}> (this should be only needed very rarely).
|
||||
|
||||
An entry that matches C</:nosearch/i> disables all searching for
|
||||
the libraries specified after it. Translation of C<-Lfoo> and
|
||||
--- 670,676 ----
|
||||
alphanumeric characters are treated as flags. Unknown flags will be ignored.
|
||||
|
||||
An entry that matches C</:nodefault/i> disables the appending of default
|
||||
! libraries found in C<$Config{perllibs}> (this should be only needed very rarely).
|
||||
|
||||
An entry that matches C</:nosearch/i> disables all searching for
|
||||
the libraries specified after it. Translation of C<-Lfoo> and
|
||||
***************
|
||||
*** 680,686 ****
|
||||
|
||||
An entry that matches C</:search/i> reenables searching for
|
||||
the libraries specified after it. You can put it at the end to
|
||||
! enable searching for default libraries specified by C<$Config{libs}>.
|
||||
|
||||
=item *
|
||||
|
||||
--- 680,686 ----
|
||||
|
||||
An entry that matches C</:search/i> reenables searching for
|
||||
the libraries specified after it. You can put it at the end to
|
||||
! enable searching for default libraries specified by C<$Config{perllibs}>.
|
||||
|
||||
=item *
|
||||
|
||||
diff -rc perl5.005_03.orig/lib/ExtUtils/MM_Unix.pm perl5.005_03/lib/ExtUtils/MM_Unix.pm
|
||||
*** perl5.005_03.orig/lib/ExtUtils/MM_Unix.pm Fri Mar 5 00:34:20 1999
|
||||
--- perl5.005_03/lib/ExtUtils/MM_Unix.pm Sun Sep 17 22:19:16 2000
|
||||
***************
|
||||
*** 2284,2290 ****
|
||||
MAP_STATIC = ",
|
||||
join(" \\\n\t", reverse sort keys %static), "
|
||||
|
||||
! MAP_PRELIBS = $Config::Config{libs} $Config::Config{cryptlib}
|
||||
";
|
||||
|
||||
if (defined $libperl) {
|
||||
--- 2284,2290 ----
|
||||
MAP_STATIC = ",
|
||||
join(" \\\n\t", reverse sort keys %static), "
|
||||
|
||||
! MAP_PRELIBS = $Config::Config{perllibs} $Config::Config{cryptlib}
|
||||
";
|
||||
|
||||
if (defined $libperl) {
|
||||
294
perl/DB_File/patches/5.6.0
Normal file
294
perl/DB_File/patches/5.6.0
Normal file
@@ -0,0 +1,294 @@
|
||||
diff -cr perl-5.6.0.orig/Configure perl-5.6.0/Configure
|
||||
*** perl-5.6.0.orig/Configure Wed Mar 22 20:36:37 2000
|
||||
--- perl-5.6.0/Configure Sun Sep 17 23:40:15 2000
|
||||
***************
|
||||
*** 217,222 ****
|
||||
--- 217,223 ----
|
||||
nm=''
|
||||
nroff=''
|
||||
perl=''
|
||||
+ perllibs=''
|
||||
pg=''
|
||||
pmake=''
|
||||
pr=''
|
||||
***************
|
||||
*** 14971,14976 ****
|
||||
--- 14972,14985 ----
|
||||
shift
|
||||
extensions="$*"
|
||||
|
||||
+ : Remove libraries needed only for extensions
|
||||
+ : The appropriate ext/Foo/Makefile.PL will add them back in, if
|
||||
+ : necessary.
|
||||
+ set X `echo " $libs " |
|
||||
+ sed -e 's@ -lndbm @ @' -e 's@ -lgdbm @ @' -e 's@ -ldbm @ @' -e 's@ -ldb @ @'`
|
||||
+ shift
|
||||
+ perllibs="$*"
|
||||
+
|
||||
: Remove build directory name from cppstdin so it can be used from
|
||||
: either the present location or the final installed location.
|
||||
echo " "
|
||||
***************
|
||||
*** 15640,15645 ****
|
||||
--- 15649,15655 ----
|
||||
path_sep='$path_sep'
|
||||
perl5='$perl5'
|
||||
perl='$perl'
|
||||
+ perllibs='$perllibs'
|
||||
perladmin='$perladmin'
|
||||
perlpath='$perlpath'
|
||||
pg='$pg'
|
||||
diff -cr perl-5.6.0.orig/Makefile.SH perl-5.6.0/Makefile.SH
|
||||
*** perl-5.6.0.orig/Makefile.SH Sat Mar 11 16:05:24 2000
|
||||
--- perl-5.6.0/Makefile.SH Sun Sep 17 23:40:15 2000
|
||||
***************
|
||||
*** 70,76 ****
|
||||
*) shrpldflags="$shrpldflags -b noentry"
|
||||
;;
|
||||
esac
|
||||
! shrpldflags="$shrpldflags $ldflags $libs $cryptlib"
|
||||
linklibperl="-L $archlibexp/CORE -L `pwd | sed 's/\/UU$//'` -lperl"
|
||||
;;
|
||||
hpux*)
|
||||
--- 70,76 ----
|
||||
*) shrpldflags="$shrpldflags -b noentry"
|
||||
;;
|
||||
esac
|
||||
! shrpldflags="$shrpldflags $ldflags $perllibs $cryptlib"
|
||||
linklibperl="-L $archlibexp/CORE -L `pwd | sed 's/\/UU$//'` -lperl"
|
||||
;;
|
||||
hpux*)
|
||||
***************
|
||||
*** 176,182 ****
|
||||
ext = \$(dynamic_ext) \$(static_ext) \$(nonxs_ext)
|
||||
DYNALOADER = lib/auto/DynaLoader/DynaLoader\$(LIB_EXT)
|
||||
|
||||
! libs = $libs $cryptlib
|
||||
|
||||
public = perl $suidperl utilities translators
|
||||
|
||||
--- 176,182 ----
|
||||
ext = \$(dynamic_ext) \$(static_ext) \$(nonxs_ext)
|
||||
DYNALOADER = lib/auto/DynaLoader/DynaLoader\$(LIB_EXT)
|
||||
|
||||
! libs = $perllibs $cryptlib
|
||||
|
||||
public = perl $suidperl utilities translators
|
||||
|
||||
***************
|
||||
*** 333,339 ****
|
||||
case "$osname" in
|
||||
aix)
|
||||
$spitshell >>Makefile <<!GROK!THIS!
|
||||
! LIBS = $libs
|
||||
# In AIX we need to change this for building Perl itself from
|
||||
# its earlier definition (which is for building external
|
||||
# extensions *after* Perl has been built and installed)
|
||||
--- 333,339 ----
|
||||
case "$osname" in
|
||||
aix)
|
||||
$spitshell >>Makefile <<!GROK!THIS!
|
||||
! LIBS = $perllibs
|
||||
# In AIX we need to change this for building Perl itself from
|
||||
# its earlier definition (which is for building external
|
||||
# extensions *after* Perl has been built and installed)
|
||||
diff -cr perl-5.6.0.orig/lib/ExtUtils/Embed.pm perl-5.6.0/lib/ExtUtils/Embed.pm
|
||||
*** perl-5.6.0.orig/lib/ExtUtils/Embed.pm Sun Jan 23 12:08:32 2000
|
||||
--- perl-5.6.0/lib/ExtUtils/Embed.pm Sun Sep 17 23:40:15 2000
|
||||
***************
|
||||
*** 193,199 ****
|
||||
@path = $path ? split(/:/, $path) : @INC;
|
||||
|
||||
push(@potential_libs, @link_args) if scalar @link_args;
|
||||
! push(@potential_libs, $Config{libs}) if defined $std;
|
||||
|
||||
push(@mods, static_ext()) if $std;
|
||||
|
||||
--- 193,199 ----
|
||||
@path = $path ? split(/:/, $path) : @INC;
|
||||
|
||||
push(@potential_libs, @link_args) if scalar @link_args;
|
||||
! push(@potential_libs, $Config{perllibs}) if defined $std;
|
||||
|
||||
push(@mods, static_ext()) if $std;
|
||||
|
||||
diff -cr perl-5.6.0.orig/lib/ExtUtils/Liblist.pm perl-5.6.0/lib/ExtUtils/Liblist.pm
|
||||
*** perl-5.6.0.orig/lib/ExtUtils/Liblist.pm Wed Mar 22 16:16:31 2000
|
||||
--- perl-5.6.0/lib/ExtUtils/Liblist.pm Sun Sep 17 23:40:15 2000
|
||||
***************
|
||||
*** 17,34 ****
|
||||
|
||||
sub _unix_os2_ext {
|
||||
my($self,$potential_libs, $verbose) = @_;
|
||||
! if ($^O =~ 'os2' and $Config{libs}) {
|
||||
# Dynamic libraries are not transitive, so we may need including
|
||||
# the libraries linked against perl.dll again.
|
||||
|
||||
$potential_libs .= " " if $potential_libs;
|
||||
! $potential_libs .= $Config{libs};
|
||||
}
|
||||
return ("", "", "", "") unless $potential_libs;
|
||||
warn "Potential libraries are '$potential_libs':\n" if $verbose;
|
||||
|
||||
my($so) = $Config{'so'};
|
||||
! my($libs) = $Config{'libs'};
|
||||
my $Config_libext = $Config{lib_ext} || ".a";
|
||||
|
||||
|
||||
--- 17,34 ----
|
||||
|
||||
sub _unix_os2_ext {
|
||||
my($self,$potential_libs, $verbose) = @_;
|
||||
! if ($^O =~ 'os2' and $Config{perllibs}) {
|
||||
# Dynamic libraries are not transitive, so we may need including
|
||||
# the libraries linked against perl.dll again.
|
||||
|
||||
$potential_libs .= " " if $potential_libs;
|
||||
! $potential_libs .= $Config{perllibs};
|
||||
}
|
||||
return ("", "", "", "") unless $potential_libs;
|
||||
warn "Potential libraries are '$potential_libs':\n" if $verbose;
|
||||
|
||||
my($so) = $Config{'so'};
|
||||
! my($libs) = $Config{'perllibs'};
|
||||
my $Config_libext = $Config{lib_ext} || ".a";
|
||||
|
||||
|
||||
***************
|
||||
*** 198,204 ****
|
||||
my $BC = 1 if $cc =~ /^bcc/i;
|
||||
my $GC = 1 if $cc =~ /^gcc/i;
|
||||
my $so = $Config{'so'};
|
||||
! my $libs = $Config{'libs'};
|
||||
my $libpth = $Config{'libpth'};
|
||||
my $libext = $Config{'lib_ext'} || ".lib";
|
||||
|
||||
--- 198,204 ----
|
||||
my $BC = 1 if $cc =~ /^bcc/i;
|
||||
my $GC = 1 if $cc =~ /^gcc/i;
|
||||
my $so = $Config{'so'};
|
||||
! my $libs = $Config{'perllibs'};
|
||||
my $libpth = $Config{'libpth'};
|
||||
my $libext = $Config{'lib_ext'} || ".lib";
|
||||
|
||||
***************
|
||||
*** 338,344 ****
|
||||
$self->{CCFLAS} || $Config{'ccflags'};
|
||||
@crtls = ( ($dbgqual =~ m-/Debug-i ? $Config{'dbgprefix'} : '')
|
||||
. 'PerlShr/Share' );
|
||||
! push(@crtls, grep { not /\(/ } split /\s+/, $Config{'libs'});
|
||||
push(@crtls, grep { not /\(/ } split /\s+/, $Config{'libc'});
|
||||
# In general, we pass through the basic libraries from %Config unchanged.
|
||||
# The one exception is that if we're building in the Perl source tree, and
|
||||
--- 338,344 ----
|
||||
$self->{CCFLAS} || $Config{'ccflags'};
|
||||
@crtls = ( ($dbgqual =~ m-/Debug-i ? $Config{'dbgprefix'} : '')
|
||||
. 'PerlShr/Share' );
|
||||
! push(@crtls, grep { not /\(/ } split /\s+/, $Config{'perllibs'});
|
||||
push(@crtls, grep { not /\(/ } split /\s+/, $Config{'libc'});
|
||||
# In general, we pass through the basic libraries from %Config unchanged.
|
||||
# The one exception is that if we're building in the Perl source tree, and
|
||||
***************
|
||||
*** 624,630 ****
|
||||
=item *
|
||||
|
||||
If C<$potential_libs> is empty, the return value will be empty.
|
||||
! Otherwise, the libraries specified by C<$Config{libs}> (see Config.pm)
|
||||
will be appended to the list of C<$potential_libs>. The libraries
|
||||
will be searched for in the directories specified in C<$potential_libs>,
|
||||
C<$Config{libpth}>, and in C<$Config{installarchlib}/CORE>.
|
||||
--- 624,630 ----
|
||||
=item *
|
||||
|
||||
If C<$potential_libs> is empty, the return value will be empty.
|
||||
! Otherwise, the libraries specified by C<$Config{perllibs}> (see Config.pm)
|
||||
will be appended to the list of C<$potential_libs>. The libraries
|
||||
will be searched for in the directories specified in C<$potential_libs>,
|
||||
C<$Config{libpth}>, and in C<$Config{installarchlib}/CORE>.
|
||||
***************
|
||||
*** 668,674 ****
|
||||
alphanumeric characters are treated as flags. Unknown flags will be ignored.
|
||||
|
||||
An entry that matches C</:nodefault/i> disables the appending of default
|
||||
! libraries found in C<$Config{libs}> (this should be only needed very rarely).
|
||||
|
||||
An entry that matches C</:nosearch/i> disables all searching for
|
||||
the libraries specified after it. Translation of C<-Lfoo> and
|
||||
--- 668,674 ----
|
||||
alphanumeric characters are treated as flags. Unknown flags will be ignored.
|
||||
|
||||
An entry that matches C</:nodefault/i> disables the appending of default
|
||||
! libraries found in C<$Config{perllibs}> (this should be only needed very rarely).
|
||||
|
||||
An entry that matches C</:nosearch/i> disables all searching for
|
||||
the libraries specified after it. Translation of C<-Lfoo> and
|
||||
***************
|
||||
*** 678,684 ****
|
||||
|
||||
An entry that matches C</:search/i> reenables searching for
|
||||
the libraries specified after it. You can put it at the end to
|
||||
! enable searching for default libraries specified by C<$Config{libs}>.
|
||||
|
||||
=item *
|
||||
|
||||
--- 678,684 ----
|
||||
|
||||
An entry that matches C</:search/i> reenables searching for
|
||||
the libraries specified after it. You can put it at the end to
|
||||
! enable searching for default libraries specified by C<$Config{perllibs}>.
|
||||
|
||||
=item *
|
||||
|
||||
diff -cr perl-5.6.0.orig/lib/ExtUtils/MM_Unix.pm perl-5.6.0/lib/ExtUtils/MM_Unix.pm
|
||||
*** perl-5.6.0.orig/lib/ExtUtils/MM_Unix.pm Thu Mar 2 17:52:52 2000
|
||||
--- perl-5.6.0/lib/ExtUtils/MM_Unix.pm Sun Sep 17 23:40:15 2000
|
||||
***************
|
||||
*** 2450,2456 ****
|
||||
MAP_STATIC = ",
|
||||
join(" \\\n\t", reverse sort keys %static), "
|
||||
|
||||
! MAP_PRELIBS = $Config::Config{libs} $Config::Config{cryptlib}
|
||||
";
|
||||
|
||||
if (defined $libperl) {
|
||||
--- 2450,2456 ----
|
||||
MAP_STATIC = ",
|
||||
join(" \\\n\t", reverse sort keys %static), "
|
||||
|
||||
! MAP_PRELIBS = $Config::Config{perllibs} $Config::Config{cryptlib}
|
||||
";
|
||||
|
||||
if (defined $libperl) {
|
||||
diff -cr perl-5.6.0.orig/myconfig.SH perl-5.6.0/myconfig.SH
|
||||
*** perl-5.6.0.orig/myconfig.SH Sat Feb 26 06:34:49 2000
|
||||
--- perl-5.6.0/myconfig.SH Sun Sep 17 23:41:17 2000
|
||||
***************
|
||||
*** 48,54 ****
|
||||
Linker and Libraries:
|
||||
ld='$ld', ldflags ='$ldflags'
|
||||
libpth=$libpth
|
||||
! libs=$libs
|
||||
libc=$libc, so=$so, useshrplib=$useshrplib, libperl=$libperl
|
||||
Dynamic Linking:
|
||||
dlsrc=$dlsrc, dlext=$dlext, d_dlsymun=$d_dlsymun, ccdlflags='$ccdlflags'
|
||||
--- 48,54 ----
|
||||
Linker and Libraries:
|
||||
ld='$ld', ldflags ='$ldflags'
|
||||
libpth=$libpth
|
||||
! libs=$perllibs
|
||||
libc=$libc, so=$so, useshrplib=$useshrplib, libperl=$libperl
|
||||
Dynamic Linking:
|
||||
dlsrc=$dlsrc, dlext=$dlext, d_dlsymun=$d_dlsymun, ccdlflags='$ccdlflags'
|
||||
diff -cr perl-5.6.0.orig/patchlevel.h perl-5.6.0/patchlevel.h
|
||||
*** perl-5.6.0.orig/patchlevel.h Wed Mar 22 20:23:11 2000
|
||||
--- perl-5.6.0/patchlevel.h Sun Sep 17 23:40:15 2000
|
||||
***************
|
||||
*** 70,75 ****
|
||||
--- 70,76 ----
|
||||
#if !defined(PERL_PATCHLEVEL_H_IMPLICIT) && !defined(LOCAL_PATCH_COUNT)
|
||||
static char *local_patches[] = {
|
||||
NULL
|
||||
+ ,"NODB-1.0 - remove -ldb from core perl binary."
|
||||
,NULL
|
||||
};
|
||||
|
||||
364
perl/DB_File/ppport.h
Normal file
364
perl/DB_File/ppport.h
Normal file
@@ -0,0 +1,364 @@
|
||||
/* This file is Based on output from
|
||||
* Perl/Pollution/Portability Version 2.0000 */
|
||||
|
||||
#ifndef _P_P_PORTABILITY_H_
|
||||
#define _P_P_PORTABILITY_H_
|
||||
|
||||
#ifndef PERL_REVISION
|
||||
# ifndef __PATCHLEVEL_H_INCLUDED__
|
||||
# include "patchlevel.h"
|
||||
# endif
|
||||
# ifndef PERL_REVISION
|
||||
# define PERL_REVISION (5)
|
||||
/* Replace: 1 */
|
||||
# define PERL_VERSION PATCHLEVEL
|
||||
# define PERL_SUBVERSION SUBVERSION
|
||||
/* Replace PERL_PATCHLEVEL with PERL_VERSION */
|
||||
/* Replace: 0 */
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#define PERL_BCDVERSION ((PERL_REVISION * 0x1000000L) + (PERL_VERSION * 0x1000L) + PERL_SUBVERSION)
|
||||
|
||||
#ifndef ERRSV
|
||||
# define ERRSV perl_get_sv("@",FALSE)
|
||||
#endif
|
||||
|
||||
#if (PERL_VERSION < 4) || ((PERL_VERSION == 4) && (PERL_SUBVERSION <= 5))
|
||||
/* Replace: 1 */
|
||||
# define PL_Sv Sv
|
||||
# define PL_compiling compiling
|
||||
# define PL_copline copline
|
||||
# define PL_curcop curcop
|
||||
# define PL_curstash curstash
|
||||
# define PL_defgv defgv
|
||||
# define PL_dirty dirty
|
||||
# define PL_hints hints
|
||||
# define PL_na na
|
||||
# define PL_perldb perldb
|
||||
# define PL_rsfp_filters rsfp_filters
|
||||
# define PL_rsfp rsfp
|
||||
# define PL_stdingv stdingv
|
||||
# define PL_sv_no sv_no
|
||||
# define PL_sv_undef sv_undef
|
||||
# define PL_sv_yes sv_yes
|
||||
/* Replace: 0 */
|
||||
#endif
|
||||
|
||||
#ifndef pTHX
|
||||
# define pTHX
|
||||
# define pTHX_
|
||||
# define aTHX
|
||||
# define aTHX_
|
||||
#endif
|
||||
|
||||
#ifndef PTR2IV
|
||||
# define PTR2IV(d) (IV)(d)
|
||||
#endif
|
||||
|
||||
#ifndef INT2PTR
|
||||
# define INT2PTR(any,d) (any)(d)
|
||||
#endif
|
||||
|
||||
#ifndef dTHR
|
||||
# ifdef WIN32
|
||||
# define dTHR extern int Perl___notused
|
||||
# else
|
||||
# define dTHR extern int errno
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#ifndef boolSV
|
||||
# define boolSV(b) ((b) ? &PL_sv_yes : &PL_sv_no)
|
||||
#endif
|
||||
|
||||
#ifndef gv_stashpvn
|
||||
# define gv_stashpvn(str,len,flags) gv_stashpv(str,flags)
|
||||
#endif
|
||||
|
||||
#ifndef newSVpvn
|
||||
# define newSVpvn(data,len) ((len) ? newSVpv ((data), (len)) : newSVpv ("", 0))
|
||||
#endif
|
||||
|
||||
#ifndef newRV_inc
|
||||
/* Replace: 1 */
|
||||
# define newRV_inc(sv) newRV(sv)
|
||||
/* Replace: 0 */
|
||||
#endif
|
||||
|
||||
/* DEFSV appears first in 5.004_56 */
|
||||
#ifndef DEFSV
|
||||
# define DEFSV GvSV(PL_defgv)
|
||||
#endif
|
||||
|
||||
#ifndef SAVE_DEFSV
|
||||
# define SAVE_DEFSV SAVESPTR(GvSV(PL_defgv))
|
||||
#endif
|
||||
|
||||
#ifndef newRV_noinc
|
||||
# ifdef __GNUC__
|
||||
# define newRV_noinc(sv) \
|
||||
({ \
|
||||
SV *nsv = (SV*)newRV(sv); \
|
||||
SvREFCNT_dec(sv); \
|
||||
nsv; \
|
||||
})
|
||||
# else
|
||||
# if defined(CRIPPLED_CC) || defined(USE_THREADS)
|
||||
static SV * newRV_noinc (SV * sv)
|
||||
{
|
||||
SV *nsv = (SV*)newRV(sv);
|
||||
SvREFCNT_dec(sv);
|
||||
return nsv;
|
||||
}
|
||||
# else
|
||||
# define newRV_noinc(sv) \
|
||||
((PL_Sv=(SV*)newRV(sv), SvREFCNT_dec(sv), (SV*)PL_Sv)
|
||||
# endif
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* Provide: newCONSTSUB */
|
||||
|
||||
/* newCONSTSUB from IO.xs is in the core starting with 5.004_63 */
|
||||
#if (PERL_VERSION < 4) || ((PERL_VERSION == 4) && (PERL_SUBVERSION < 63))
|
||||
|
||||
#if defined(NEED_newCONSTSUB)
|
||||
static
|
||||
#else
|
||||
extern void newCONSTSUB _((HV * stash, char * name, SV *sv));
|
||||
#endif
|
||||
|
||||
#if defined(NEED_newCONSTSUB) || defined(NEED_newCONSTSUB_GLOBAL)
|
||||
void
|
||||
newCONSTSUB(stash,name,sv)
|
||||
HV *stash;
|
||||
char *name;
|
||||
SV *sv;
|
||||
{
|
||||
U32 oldhints = PL_hints;
|
||||
HV *old_cop_stash = PL_curcop->cop_stash;
|
||||
HV *old_curstash = PL_curstash;
|
||||
line_t oldline = PL_curcop->cop_line;
|
||||
PL_curcop->cop_line = PL_copline;
|
||||
|
||||
PL_hints &= ~HINT_BLOCK_SCOPE;
|
||||
if (stash)
|
||||
PL_curstash = PL_curcop->cop_stash = stash;
|
||||
|
||||
newSUB(
|
||||
|
||||
#if (PERL_VERSION < 3) || ((PERL_VERSION == 3) && (PERL_SUBVERSION < 22))
|
||||
/* before 5.003_22 */
|
||||
start_subparse(),
|
||||
#else
|
||||
# if (PERL_VERSION == 3) && (PERL_SUBVERSION == 22)
|
||||
/* 5.003_22 */
|
||||
start_subparse(0),
|
||||
# else
|
||||
/* 5.003_23 onwards */
|
||||
start_subparse(FALSE, 0),
|
||||
# endif
|
||||
#endif
|
||||
|
||||
newSVOP(OP_CONST, 0, newSVpv(name,0)),
|
||||
newSVOP(OP_CONST, 0, &PL_sv_no), /* SvPV(&PL_sv_no) == "" -- GMB */
|
||||
newSTATEOP(0, Nullch, newSVOP(OP_CONST, 0, sv))
|
||||
);
|
||||
|
||||
PL_hints = oldhints;
|
||||
PL_curcop->cop_stash = old_cop_stash;
|
||||
PL_curstash = old_curstash;
|
||||
PL_curcop->cop_line = oldline;
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* newCONSTSUB */
|
||||
|
||||
|
||||
#ifndef START_MY_CXT
|
||||
|
||||
/*
|
||||
* Boilerplate macros for initializing and accessing interpreter-local
|
||||
* data from C. All statics in extensions should be reworked to use
|
||||
* this, if you want to make the extension thread-safe. See ext/re/re.xs
|
||||
* for an example of the use of these macros.
|
||||
*
|
||||
* Code that uses these macros is responsible for the following:
|
||||
* 1. #define MY_CXT_KEY to a unique string, e.g. "DynaLoader_guts"
|
||||
* 2. Declare a typedef named my_cxt_t that is a structure that contains
|
||||
* all the data that needs to be interpreter-local.
|
||||
* 3. Use the START_MY_CXT macro after the declaration of my_cxt_t.
|
||||
* 4. Use the MY_CXT_INIT macro such that it is called exactly once
|
||||
* (typically put in the BOOT: section).
|
||||
* 5. Use the members of the my_cxt_t structure everywhere as
|
||||
* MY_CXT.member.
|
||||
* 6. Use the dMY_CXT macro (a declaration) in all the functions that
|
||||
* access MY_CXT.
|
||||
*/
|
||||
|
||||
#if defined(MULTIPLICITY) || defined(PERL_OBJECT) || \
|
||||
defined(PERL_CAPI) || defined(PERL_IMPLICIT_CONTEXT)
|
||||
|
||||
/* This must appear in all extensions that define a my_cxt_t structure,
|
||||
* right after the definition (i.e. at file scope). The non-threads
|
||||
* case below uses it to declare the data as static. */
|
||||
#define START_MY_CXT
|
||||
|
||||
#if PERL_REVISION == 5 && \
|
||||
(PERL_VERSION < 4 || (PERL_VERSION == 4 && PERL_SUBVERSION < 68 ))
|
||||
/* Fetches the SV that keeps the per-interpreter data. */
|
||||
#define dMY_CXT_SV \
|
||||
SV *my_cxt_sv = perl_get_sv(MY_CXT_KEY, FALSE)
|
||||
#else /* >= perl5.004_68 */
|
||||
#define dMY_CXT_SV \
|
||||
SV *my_cxt_sv = *hv_fetch(PL_modglobal, MY_CXT_KEY, \
|
||||
sizeof(MY_CXT_KEY)-1, TRUE)
|
||||
#endif /* < perl5.004_68 */
|
||||
|
||||
/* This declaration should be used within all functions that use the
|
||||
* interpreter-local data. */
|
||||
#define dMY_CXT \
|
||||
dMY_CXT_SV; \
|
||||
my_cxt_t *my_cxtp = INT2PTR(my_cxt_t*,SvUV(my_cxt_sv))
|
||||
|
||||
/* Creates and zeroes the per-interpreter data.
|
||||
* (We allocate my_cxtp in a Perl SV so that it will be released when
|
||||
* the interpreter goes away.) */
|
||||
#define MY_CXT_INIT \
|
||||
dMY_CXT_SV; \
|
||||
/* newSV() allocates one more than needed */ \
|
||||
my_cxt_t *my_cxtp = (my_cxt_t*)SvPVX(newSV(sizeof(my_cxt_t)-1));\
|
||||
Zero(my_cxtp, 1, my_cxt_t); \
|
||||
sv_setuv(my_cxt_sv, PTR2UV(my_cxtp))
|
||||
|
||||
/* This macro must be used to access members of the my_cxt_t structure.
|
||||
* e.g. MYCXT.some_data */
|
||||
#define MY_CXT (*my_cxtp)
|
||||
|
||||
/* Judicious use of these macros can reduce the number of times dMY_CXT
|
||||
* is used. Use is similar to pTHX, aTHX etc. */
|
||||
#define pMY_CXT my_cxt_t *my_cxtp
|
||||
#define pMY_CXT_ pMY_CXT,
|
||||
#define _pMY_CXT ,pMY_CXT
|
||||
#define aMY_CXT my_cxtp
|
||||
#define aMY_CXT_ aMY_CXT,
|
||||
#define _aMY_CXT ,aMY_CXT
|
||||
|
||||
#else /* single interpreter */
|
||||
|
||||
#ifndef NOOP
|
||||
# define NOOP (void)0
|
||||
#endif
|
||||
|
||||
#ifdef HASATTRIBUTE
|
||||
# define PERL_UNUSED_DECL __attribute__((unused))
|
||||
#else
|
||||
# define PERL_UNUSED_DECL
|
||||
#endif
|
||||
|
||||
#ifndef dNOOP
|
||||
# define dNOOP extern int Perl___notused PERL_UNUSED_DECL
|
||||
#endif
|
||||
|
||||
#define START_MY_CXT static my_cxt_t my_cxt;
|
||||
#define dMY_CXT_SV dNOOP
|
||||
#define dMY_CXT dNOOP
|
||||
#define MY_CXT_INIT NOOP
|
||||
#define MY_CXT my_cxt
|
||||
|
||||
#define pMY_CXT void
|
||||
#define pMY_CXT_
|
||||
#define _pMY_CXT
|
||||
#define aMY_CXT
|
||||
#define aMY_CXT_
|
||||
#define _aMY_CXT
|
||||
|
||||
#endif
|
||||
|
||||
#endif /* START_MY_CXT */
|
||||
|
||||
#ifdef SvPVbyte
|
||||
# if PERL_REVISION == 5 && PERL_VERSION < 7
|
||||
/* SvPVbyte does not work in perl-5.6.1, borrowed version for 5.7.3 */
|
||||
# undef SvPVbyte
|
||||
# define SvPVbyte(sv, lp) \
|
||||
((SvFLAGS(sv) & (SVf_POK|SVf_UTF8)) == (SVf_POK) \
|
||||
? ((lp = SvCUR(sv)), SvPVX(sv)) : my_sv_2pvbyte(aTHX_ sv, &lp))
|
||||
static char *
|
||||
my_sv_2pvbyte(pTHX_ register SV *sv, STRLEN *lp)
|
||||
{
|
||||
sv_utf8_downgrade(sv,0);
|
||||
return SvPV(sv,*lp);
|
||||
}
|
||||
# endif
|
||||
#else
|
||||
# define SvPVbyte SvPV
|
||||
#endif
|
||||
|
||||
#ifndef SvUTF8_off
|
||||
# define SvUTF8_off(s)
|
||||
#endif
|
||||
|
||||
#if 1
|
||||
#ifdef DBM_setFilter
|
||||
#undef DBM_setFilter
|
||||
#undef DBM_ckFilter
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifndef DBM_setFilter
|
||||
|
||||
/*
|
||||
The DBM_setFilter & DBM_ckFilter macros are only used by
|
||||
the *DB*_File modules
|
||||
*/
|
||||
|
||||
#define DBM_setFilter(db_type,code) \
|
||||
{ \
|
||||
if (db_type) \
|
||||
RETVAL = sv_mortalcopy(db_type) ; \
|
||||
ST(0) = RETVAL ; \
|
||||
if (db_type && (code == &PL_sv_undef)) { \
|
||||
SvREFCNT_dec(db_type) ; \
|
||||
db_type = NULL ; \
|
||||
} \
|
||||
else if (code) { \
|
||||
if (db_type) \
|
||||
sv_setsv(db_type, code) ; \
|
||||
else \
|
||||
db_type = newSVsv(code) ; \
|
||||
} \
|
||||
}
|
||||
|
||||
#define DBM_ckFilter(arg,type,name) \
|
||||
if (db->type) { \
|
||||
/*printf("ckFilter %s\n", name);*/ \
|
||||
if (db->filtering) { \
|
||||
croak("recursion detected in %s", name) ; \
|
||||
} \
|
||||
ENTER ; \
|
||||
SAVETMPS ; \
|
||||
SAVEINT(db->filtering) ; \
|
||||
db->filtering = TRUE ; \
|
||||
SAVESPTR(DEFSV) ; \
|
||||
if (name[7] == 's') \
|
||||
arg = newSVsv(arg); \
|
||||
DEFSV = arg ; \
|
||||
SvTEMP_off(arg) ; \
|
||||
PUSHMARK(SP) ; \
|
||||
PUTBACK ; \
|
||||
(void) perl_call_sv(db->type, G_DISCARD); \
|
||||
SPAGAIN ; \
|
||||
PUTBACK ; \
|
||||
FREETMPS ; \
|
||||
LEAVE ; \
|
||||
if (name[7] == 's'){ \
|
||||
arg = sv_2mortal(arg); \
|
||||
} \
|
||||
SvOKp(arg); \
|
||||
}
|
||||
|
||||
#endif /* DBM_setFilter */
|
||||
|
||||
#endif /* _P_P_PORTABILITY_H_ */
|
||||
1664
perl/DB_File/t/db-btree.t
Normal file
1664
perl/DB_File/t/db-btree.t
Normal file
File diff suppressed because it is too large
Load Diff
1232
perl/DB_File/t/db-hash.t
Normal file
1232
perl/DB_File/t/db-hash.t
Normal file
File diff suppressed because it is too large
Load Diff
1603
perl/DB_File/t/db-recno.t
Normal file
1603
perl/DB_File/t/db-recno.t
Normal file
File diff suppressed because it is too large
Load Diff
18
perl/DB_File/t/pod.t
Normal file
18
perl/DB_File/t/pod.t
Normal file
@@ -0,0 +1,18 @@
|
||||
eval " use Test::More " ;
|
||||
|
||||
if ($@)
|
||||
{
|
||||
print "1..0 # Skip: Test::More required for testing POD\n" ;
|
||||
exit 0;
|
||||
}
|
||||
|
||||
eval "use Test::Pod 1.00";
|
||||
|
||||
if ($@)
|
||||
{
|
||||
print "1..0 # Skip: Test::Pod 1.00 required for testing POD\n" ;
|
||||
exit 0;
|
||||
}
|
||||
|
||||
all_pod_files_ok();
|
||||
|
||||
57
perl/DB_File/typemap
Normal file
57
perl/DB_File/typemap
Normal file
@@ -0,0 +1,57 @@
|
||||
# typemap for Perl 5 interface to Berkeley
|
||||
#
|
||||
# written by Paul Marquess <Paul.Marquess@btinternet.com>
|
||||
# last modified 20th June 2004
|
||||
# version 1.809
|
||||
#
|
||||
#################################### DB SECTION
|
||||
#
|
||||
#
|
||||
|
||||
u_int T_U_INT
|
||||
DB_File T_PTROBJ
|
||||
DBT T_dbtdatum
|
||||
DBTKEY T_dbtkeydatum
|
||||
|
||||
INPUT
|
||||
T_dbtkeydatum
|
||||
{
|
||||
SV * my_sv = $arg;
|
||||
DBM_ckFilter(my_sv, filter_store_key, \"filter_store_key\");
|
||||
DBT_clear($var) ;
|
||||
SvGETMAGIC(my_sv) ;
|
||||
if (db->type == DB_RECNO) {
|
||||
if (SvOK(my_sv))
|
||||
Value = GetRecnoKey(aTHX_ db, SvIV(my_sv)) ;
|
||||
else
|
||||
Value = 1 ;
|
||||
$var.data = & Value;
|
||||
$var.size = (int)sizeof(recno_t);
|
||||
}
|
||||
else if (SvOK(my_sv)) {
|
||||
STRLEN len;
|
||||
$var.data = SvPVbyte(my_sv, len);
|
||||
$var.size = (int)len;
|
||||
}
|
||||
}
|
||||
T_dbtdatum
|
||||
{
|
||||
SV * my_sv = $arg;
|
||||
DBM_ckFilter(my_sv, filter_store_value, \"filter_store_value\");
|
||||
DBT_clear($var) ;
|
||||
SvGETMAGIC(my_sv) ;
|
||||
if (SvOK(my_sv)) {
|
||||
STRLEN len;
|
||||
$var.data = SvPVbyte(my_sv, len);
|
||||
$var.size = (int)len;
|
||||
}
|
||||
}
|
||||
|
||||
OUTPUT
|
||||
|
||||
T_dbtkeydatum
|
||||
OutputKey($arg, $var)
|
||||
T_dbtdatum
|
||||
OutputValue($arg, $var)
|
||||
T_PTROBJ
|
||||
sv_setref_pv($arg, dbtype, (void*)$var);
|
||||
83
perl/DB_File/version.c
Normal file
83
perl/DB_File/version.c
Normal file
@@ -0,0 +1,83 @@
|
||||
/*
|
||||
|
||||
version.c -- Perl 5 interface to Berkeley DB
|
||||
|
||||
written by Paul Marquess <Paul.Marquess@btinternet.com>
|
||||
last modified 2nd Jan 2002
|
||||
version 1.802
|
||||
|
||||
All comments/suggestions/problems are welcome
|
||||
|
||||
Copyright (c) 1995-2002 Paul Marquess. All rights reserved.
|
||||
This program is free software; you can redistribute it and/or
|
||||
modify it under the same terms as Perl itself.
|
||||
|
||||
Changes:
|
||||
1.71 - Support for Berkeley DB version 3.
|
||||
Support for Berkeley DB 2/3's backward compatability mode.
|
||||
1.72 - No change.
|
||||
1.73 - Added support for threading
|
||||
1.74 - Added Perl core patch 7801.
|
||||
|
||||
|
||||
*/
|
||||
|
||||
#define PERL_NO_GET_CONTEXT
|
||||
#include "EXTERN.h"
|
||||
#include "perl.h"
|
||||
#include "XSUB.h"
|
||||
|
||||
#include <db.h>
|
||||
|
||||
void
|
||||
#ifdef CAN_PROTOTYPE
|
||||
__getBerkeleyDBInfo(void)
|
||||
#else
|
||||
__getBerkeleyDBInfo()
|
||||
#endif
|
||||
{
|
||||
#ifdef dTHX
|
||||
dTHX;
|
||||
#endif
|
||||
SV * version_sv = perl_get_sv("DB_File::db_version", GV_ADD|GV_ADDMULTI) ;
|
||||
SV * ver_sv = perl_get_sv("DB_File::db_ver", GV_ADD|GV_ADDMULTI) ;
|
||||
SV * compat_sv = perl_get_sv("DB_File::db_185_compat", GV_ADD|GV_ADDMULTI) ;
|
||||
|
||||
#ifdef DB_VERSION_MAJOR
|
||||
int Major, Minor, Patch ;
|
||||
|
||||
(void)db_version(&Major, &Minor, &Patch) ;
|
||||
|
||||
/* Check that the versions of db.h and libdb.a are the same */
|
||||
if (Major != DB_VERSION_MAJOR || Minor != DB_VERSION_MINOR )
|
||||
/* || Patch != DB_VERSION_PATCH) */
|
||||
|
||||
croak("\nDB_File was build with libdb version %d.%d.%d,\nbut you are attempting to run it with libdb version %d.%d.%d\n",
|
||||
DB_VERSION_MAJOR, DB_VERSION_MINOR, DB_VERSION_PATCH,
|
||||
Major, Minor, Patch) ;
|
||||
|
||||
/* check that libdb is recent enough -- we need 2.3.4 or greater */
|
||||
if (Major == 2 && (Minor < 3 || (Minor == 3 && Patch < 4)))
|
||||
croak("DB_File needs Berkeley DB 2.3.4 or greater, you have %d.%d.%d\n",
|
||||
Major, Minor, Patch) ;
|
||||
|
||||
{
|
||||
char buffer[40] ;
|
||||
sprintf(buffer, "%d.%d", Major, Minor) ;
|
||||
sv_setpv(version_sv, buffer) ;
|
||||
sprintf(buffer, "%d.%03d%03d", Major, Minor, Patch) ;
|
||||
sv_setpv(ver_sv, buffer) ;
|
||||
}
|
||||
|
||||
#else /* ! DB_VERSION_MAJOR */
|
||||
sv_setiv(version_sv, 1) ;
|
||||
sv_setiv(ver_sv, 1) ;
|
||||
#endif /* ! DB_VERSION_MAJOR */
|
||||
|
||||
#ifdef COMPAT185
|
||||
sv_setiv(compat_sv, 1) ;
|
||||
#else /* ! COMPAT185 */
|
||||
sv_setiv(compat_sv, 0) ;
|
||||
#endif /* ! COMPAT185 */
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user