diff --git a/databases/p5-DBD-InterBase/Makefile b/databases/p5-DBD-InterBase/Makefile index c55447f4edf1..fca59c3ae158 100644 --- a/databases/p5-DBD-InterBase/Makefile +++ b/databases/p5-DBD-InterBase/Makefile @@ -1,22 +1,30 @@ PORTNAME= DBD-InterBase PORTVERSION= 0.48 -PORTREVISION= 5 +PORTREVISION= 6 CATEGORIES= databases perl5 MASTER_SITES= CPAN PKGNAMEPREFIX= p5- MAINTAINER= yuri@rivera.ru COMMENT= DBI driver for InterBase/Firebird/Yaffil RDBMS server WWW= https://metacpan.org/release/DBD-InterBase +LICENSE= NONE + BUILD_DEPENDS= ${RUN_DEPENDS} RUN_DEPENDS= p5-DBI>=0:databases/p5-DBI USES= perl5 firebird USE_PERL5= patch configure +.include + +.if ${OPSYS} == FreeBSD && ( ${OSVERSION} >= 1400079 || ( ${OSVERSION} >= 1302505 && ${OSVERSION} < 1400000 )) +CFLAGS+= -Wno-error=int-conversion +.endif + post-patch: @${PERL} -pi -e 's,%%IB_BASE%%,${LOCALBASE},g' \ ${WRKSRC}/Makefile.PL .include diff --git a/databases/p5-DBD-InterBase/files/patch-Makefile.PL b/databases/p5-DBD-InterBase/files/patch-Makefile.PL index 16ffa097669d..e1f0348d9d2b 100644 --- a/databases/p5-DBD-InterBase/files/patch-Makefile.PL +++ b/databases/p5-DBD-InterBase/files/patch-Makefile.PL @@ -1,85 +1,86 @@ ---- Makefile.PL.orig Sat Nov 22 06:12:11 2003 -+++ Makefile.PL Mon Dec 8 20:01:27 2003 -@@ -28,7 +28,7 @@ +--- Makefile.PL.orig 2008-01-08 05:28:47 UTC ++++ Makefile.PL +@@ -29,7 +29,7 @@ use Test::More 0.4; use DBI::DBD; # DBD creation tools my $ib_dir_prefix; - +=rem # init stuff my $IB_Bin_path = ''; my $isql_name; -@@ -82,7 +82,12 @@ +@@ -83,7 +83,12 @@ else @ib_bin_dirs = (qw(/usr/interbase/bin /opt/interbase/bin /opt/firebird/bin /usr/bin /usr/local/bin)); @ib_inc_dirs = (qw(/usr/interbase/include /opt/interbase/include /opt/firebird/include /usr/include)); } - +=cut -+my $IB_BASE='%%IB_BASE%%'; ++my $IB_BASE='/usr/local'; +my $IB_Bin_path = $IB_BASE.'/bin'; +my $isql_name = 'isql'; +my $ib_lib_dir = $IB_BASE.'/lib'; +my $ib_inc = $IB_BASE.'/include'; sub locate_dbi_arch_dir { my $dbidir = dbd_dbi_dir(); my @try = map { "$_/auto/DBI" } @INC; -@@ -91,7 +96,7 @@ +@@ -92,7 +97,7 @@ sub locate_dbi_arch_dir { Carp::carp( "Multiple copies of Driver.xst found in: @xst") if @xst > 1; return $xst[0]; } - +=rem ################################################################################ # sub test_files - checks if at least one of the files in the list exists # Paramters: -@@ -296,13 +301,13 @@ +@@ -305,13 +310,13 @@ sub create_test_db # prompt for InterBase bin directory $IB_Bin_path = dir_choice("InterBase/Firebird bin directory", [@ib_bin_dirs], [qw(gfix gfix.exe)]); - +=cut unless(-x $IB_Bin_path) { carp "I cannot find your InterBase/Firebird installation.\nDBD::InterBase cannot build or run without InterBase.\n"; exit 1; } - +=rem # get InterBase version my $IBVERSION; my $GFIX_PATH = $IB_Bin_path . "/" . test_files($IB_Bin_path, [qw(gfix gfix.exe)]); -@@ -312,7 +317,7 @@ +@@ -321,8 +326,8 @@ my $is_final = $IBVERSION =~ /\.6\d+$/ ? 1 : 0; # prompt for IB include dir my $ib_inc = dir_choice("InterBase/Firebird include directory", [@ib_inc_dirs], [qw(gds.h ibase.h)]); -- +=cut +- # we use a hash for the MakeMaker parameters my %MakeParams = ( -@@ -323,14 +328,14 @@ - 'CCFLAGS' => '', + 'NAME' => 'DBD::InterBase', +@@ -332,14 +337,14 @@ my %MakeParams = ( + 'CCFLAGS' => '-Wall -fno-strict-aliasing', 'INC' => qq(-I"$ib_inc" -I"${\locate_dbi_arch_dir()}"), 'OBJECT' => "InterBase.o dbdimp.o", - 'LIBS' => [''], + 'LIBS' => "-L$ib_lib_dir -lgds", 'OPTIMIZE' => $Config::Config{'optimize'}, 'XSPROTOARG' => '-noprototypes', 'dist' => {COMPRESS=>'gzip -9f', SUFFIX=>'gz'}, 'clean' => {FILES => "*.xsi *.old t/*.old *~ t/*~ trace.txt t/trace.txt lib/DBD/InterBase/*~ lib/DBD/InterBase/*.old lib/Bundle/DBD/*~ lib/Bundle/DBD/*.old"}, 'realclean' => {FILES => "t/test.conf"}, ); - +=rem # the OS specific build environment setup my $os = $Config::Config{'osname'}; if ($os eq 'MSWin32') -@@ -530,7 +535,7 @@ +@@ -545,7 +550,7 @@ else # create the test config file make_test_conf(); - +=cut # and last but not least write the makefile WriteMakefile(%MakeParams); diff --git a/databases/p5-DBD-InterBase/files/patch-dbdimp.c b/databases/p5-DBD-InterBase/files/patch-dbdimp.c index 6011ade07ef1..b37feb4ef19a 100644 --- a/databases/p5-DBD-InterBase/files/patch-dbdimp.c +++ b/databases/p5-DBD-InterBase/files/patch-dbdimp.c @@ -1,31 +1,31 @@ ---- dbdimp.c.orig 2008-01-08 09:02:45.000000000 +0300 -+++ dbdimp.c 2014-01-27 13:58:49.202445490 +0400 -@@ -113,7 +113,7 @@ +--- dbdimp.c.orig 2008-01-08 06:02:45 UTC ++++ dbdimp.c +@@ -113,7 +113,7 @@ void do_error(SV *h, int rc, char *what) if (DBIc_TRACE_LEVEL(imp_xxh) >= 2) PerlIO_printf(DBIc_LOGPIO(imp_xxh), "%s error %d recorded: %s\n", - what, rc, SvPV(errstr,na)); + what, rc, SvPV(errstr,PL_na)); } #define CALC_AVAILABLE(buff) sizeof(buff) - strlen(buff) - 1 -@@ -693,7 +693,7 @@ +@@ -693,7 +693,7 @@ SV *dbd_db_FETCH_attrib(SV *dbh, imp_dbh_t *imp_dbh, S return Nullsv; else { - if ((result == &sv_yes) || (result == &sv_no)) + if ((result == &PL_sv_yes) || (result == &PL_sv_no)) return result; else return sv_2mortal(result); -@@ -1991,8 +1991,8 @@ +@@ -1991,8 +1991,8 @@ int dbd_discon_all(SV *drh, imp_drh_t *imp_drh) DBIh_EVENT2(drh, ERROR_event, DBIc_ERR(imp_drh), DBIc_ERRSTR(imp_drh)); return FALSE; } - if (perl_destruct_level) - perl_destruct_level = 0; + if (PL_perl_destruct_level) + PL_perl_destruct_level = 0; return FALSE; } - +