Unverified Commit 7f8869ee authored by Vladimír Čunát's avatar Vladimír Čunát
Browse files

perl-DBD-SQLite: 1.50 -> 1.54

- This fixes tests after sqlite update, also tested via nixStable
  and via building some other perl reverse dependencies.
- The patch was conflicting due to upstream changes,
  but those changes allowed us to minimize the patch.
- meta from nix-generate-from-cpan
/cc #30927.

(cherry picked from commit 56186917)
parent cfd1693b
Loading
Loading
Loading
Loading
+11 −8
Original line number Diff line number Diff line
{ stdenv, fetchurl, buildPerlPackage, DBI, sqlite }:

buildPerlPackage rec {
  name = "DBD-SQLite-1.50";
  name = "DBD-SQLite-${version}";
  version = "1.54";

  src = fetchurl {
    url = "mirror://cpan/authors/id/I/IS/ISHIGAKI/${name}.tar.gz";
    sha256 = "1qcw2nzla03ywrl6mx1qklvbc8n5bn4gxqbjnvadfkwlffmi7i9s";
    sha256 = "3929a6dbd8d71630f0cb57f85dcef9588cd7ac4c9fa12db79df77b9d3a4d7269";
  };

  propagatedBuildInputs = [ DBI ];

  makeMakerFlags = "SQLITE_LOCATION=${sqlite.dev}";
  buildInputs = [ sqlite ];

  patches = [
    # Support building against our own sqlite.
    ./external-sqlite.patch
  ];

  sqlite_dev = sqlite.dev;
  sqlite_out = sqlite.out;
  postPatch = "substituteAllInPlace Makefile.PL; cat Makefile.PL";
  SQLITE_INC = sqlite.dev + "/include";
  SQLITE_LIB = sqlite.out + "/lib";

  preBuild =
    ''
@@ -39,5 +38,9 @@ buildPerlPackage rec {
  # (e.g. "database is locked(5) at dbdimp.c line 402 at t/07busy.t").
  #doCheck = false;

  meta.platforms = stdenv.lib.platforms.unix;
  meta = with stdenv.lib; {
    description = "Self Contained SQLite RDBMS in a DBI Driver";
    license = with licenses; [ artistic1 gpl1Plus ];
    platforms = platforms.unix;
  };
}
+7 −29
Original line number Diff line number Diff line
diff --git a/Makefile.PL b/Makefile.PL
index 606b28d..0cea060 100644
--- a/Makefile.PL
+++ b/Makefile.PL
@@ -128,24 +128,10 @@ SCOPE: {
 # the system SQLite. We expect that anyone sophisticated enough to use
--- a/Makefile.PL	2016-04-21 15:44:34.000000000 +0200
+++ b/Makefile.PL	2017-10-31 11:04:28.389959946 +0100
@@ -129,7 +129,7 @@
 # a system sqlite is also sophisticated enough to have a patching system
 # that can change the if ( 0 ) to if ( 1 )
-my ($sqlite_local, $sqlite_base, $sqlite_lib, $sqlite_inc);
 my ($sqlite_local, $sqlite_base, $sqlite_lib, $sqlite_inc);
-if ( 0 ) {
-	require File::Spec;
-	if ( $sqlite_base = (grep(/SQLITE_LOCATION=.*/, @ARGV))[0] ) {
-		$sqlite_base =~ /=(.*)/;
-		$sqlite_base = $1;
-		$sqlite_lib = File::Spec->catdir( $sqlite_base, 'lib'     );
-		$sqlite_inc = File::Spec->catdir( $sqlite_base, 'include' );
-	}
-	if ( $sqlite_local = (grep(/USE_LOCAL_SQLITE=.*/, @ARGV))[0] ) {
-		$sqlite_local =~ /=(.*)/;
-		$sqlite_local = "$1" ? 1 : 0;
-		if ( $sqlite_local ) {
-			# Keep these from making into CFLAGS/LDFLAGS
-			undef $sqlite_lib;
-			undef $sqlite_inc;
-		}
-	}
+my ($sqlite_local, $sqlite_lib, $sqlite_inc);
+if ( 1 ) {
+		$sqlite_lib = '@sqlite_out@/lib';
+		$sqlite_inc = '@sqlite_dev@/include';
 
 	# Now check for a compatible sqlite3
 	unless ( $sqlite_local ) {
 	require File::Spec;
 	if ( $sqlite_base = (grep(/SQLITE_LOCATION=.*/, @ARGV))[0] ) {
 		$sqlite_base =~ /=(.*)/;