1{
2 buildPecl,
3 lib,
4 oracle-instantclient,
5 php,
6}:
7
8let
9 versionData =
10 if (lib.versionOlder php.version "8.1") then
11 {
12 version = "3.0.1";
13 sha256 = "108ds92620dih5768z19hi0jxfa7wfg5hdvyyvpapir87c0ap914";
14 }
15 else if (lib.versionOlder php.version "8.2") then
16 {
17 version = "3.2.1";
18 sha256 = "sha256-zyF703DzRZDBhlNFFt/dknmZ7layqhgjG1/ZDN+PEsg=";
19 }
20 else
21 {
22 version = "3.4.0";
23 sha256 = "sha256-YPXDijyQxGHZbWHFEpx4xTq3hCJU3ANVIi5t0OqMEag=";
24 };
25in
26buildPecl {
27 pname = "oci8";
28
29 inherit (versionData) version sha256;
30
31 buildInputs = [ oracle-instantclient ];
32 configureFlags = [ "--with-oci8=shared,instantclient,${oracle-instantclient.lib}/lib" ];
33
34 postPatch = ''
35 sed -i -e 's|OCISDKMANINC=`.*$|OCISDKMANINC="${oracle-instantclient.dev}/include"|' config.m4
36 '';
37
38 meta = with lib; {
39 description = "Extension for Oracle Database";
40 license = licenses.php301;
41 homepage = "https://pecl.php.net/package/oci8";
42 teams = [ teams.php ];
43 };
44}