about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/libraries/unixODBCDrivers
diff options
context:
space:
mode:
authorAlyssa Ross <hi@alyssa.is>2019-01-07 02:18:36 +0000
committerAlyssa Ross <hi@alyssa.is>2019-01-07 02:18:47 +0000
commit36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2 (patch)
treeb3faaf573407b32aa645237a4d16b82778a39a92 /nixpkgs/pkgs/development/libraries/unixODBCDrivers
parent4e31070265257dc67d120c27e0f75c2344fdfa9a (diff)
parentabf060725d7614bd3b9f96764262dfbc2f9c2199 (diff)
downloadnixlib-36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2.tar
nixlib-36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2.tar.gz
nixlib-36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2.tar.bz2
nixlib-36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2.tar.lz
nixlib-36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2.tar.xz
nixlib-36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2.tar.zst
nixlib-36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2.zip
Add 'nixpkgs/' from commit 'abf060725d7614bd3b9f96764262dfbc2f9c2199'
git-subtree-dir: nixpkgs
git-subtree-mainline: 4e31070265257dc67d120c27e0f75c2344fdfa9a
git-subtree-split: abf060725d7614bd3b9f96764262dfbc2f9c2199
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/unixODBCDrivers')
-rw-r--r--nixpkgs/pkgs/development/libraries/unixODBCDrivers/default.nix163
1 files changed, 163 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/libraries/unixODBCDrivers/default.nix b/nixpkgs/pkgs/development/libraries/unixODBCDrivers/default.nix
new file mode 100644
index 000000000000..7d4c6c7a2994
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/unixODBCDrivers/default.nix
@@ -0,0 +1,163 @@
+{ fetchurl, stdenv, unixODBC, cmake, postgresql, mysql55, mariadb, sqlite, zlib, libxml2, dpkg, lib, openssl, kerberos, curl, libuuid, autoPatchelfHook }:
+
+# I haven't done any parameter tweaking.. So the defaults provided here might be bad
+
+{
+  psql = stdenv.mkDerivation rec {
+    name = "psqlodbc-${version}";
+    version = "10.01.0000";
+
+    src = fetchurl {
+      url = "http://ftp.postgresql.org/pub/odbc/versions/src/${name}.tar.gz";
+      sha256 = "1cyams7157f3gry86x64xrplqi2vyqrq3rqka59gv4lb4rpl7jl7";
+    };
+
+    buildInputs = [ unixODBC postgresql ];
+
+    passthru = {
+      fancyName = "PostgreSQL";
+      driver = "lib/psqlodbcw.so";
+    };
+
+    meta = with stdenv.lib; {
+      description = "Official PostgreSQL ODBC Driver";
+      homepage =  https://odbc.postgresql.org/;
+      license = licenses.lgpl2;
+      platforms = platforms.linux;
+    };
+  };
+
+  mariadb = stdenv.mkDerivation rec {
+    name = "mariadb-connector-odbc-${version}";
+    version = "2.0.10";
+
+    src = fetchurl {
+      url = "https://downloads.mariadb.org/interstitial/connector-odbc-${version}/src/${name}-ga-src.tar.gz";
+      sha256 = "0b6ximy0dg0xhqbrm1l7pn8hjapgpmddi67kh54h6i9cq9hqfdvz";
+    };
+
+    nativeBuildInputs = [ cmake ];
+    buildInputs = [ unixODBC mariadb.connector-c ];
+
+    cmakeFlags = [
+      "-DMARIADB_INCLUDE_DIR=${mariadb.connector-c}/include/mariadb"
+    ];
+
+    passthru = {
+      fancyName = "MariaDB";
+      driver = "lib/libmaodbc.so";
+    };
+
+    meta = with stdenv.lib; {
+      description = "MariaDB ODBC database driver";
+      homepage =  https://downloads.mariadb.org/connector-odbc/;
+      license = licenses.gpl2;
+      platforms = platforms.linux;
+    };
+  };
+
+  mysql = stdenv.mkDerivation rec {
+    name = "mysql-connector-odbc-${version}";
+    majorVersion = "5.3";
+    version = "${majorVersion}.6";
+
+    src = fetchurl {
+      url = "https://dev.mysql.com/get/Downloads/Connector-ODBC/${majorVersion}/${name}-src.tar.gz";
+      sha256 = "1smi4z49i4zm7cmykjkwlxxzqvn7myngsw5bc35z6gqxmi8c55xr";
+    };
+
+    nativeBuildInputs = [ cmake ];
+    buildInputs = [ unixODBC mysql55 ];
+
+    cmakeFlags = [ "-DWITH_UNIXODBC=1" ];
+
+    passthru = {
+      fancyName = "MySQL";
+      driver = "lib/libmyodbc3-3.51.12.so";
+    };
+
+    meta = with stdenv.lib; {
+      description = "MariaDB ODBC database driver";
+      homepage = https://dev.mysql.com/downloads/connector/odbc/;
+      license = licenses.gpl2;
+      platforms = platforms.linux;
+      broken = true;
+    };
+  };
+
+  sqlite = stdenv.mkDerivation rec {
+    name = "sqlite-connector-odbc-${version}";
+    version = "0.9993";
+ 
+    src = fetchurl {
+      url = "http://www.ch-werner.de/sqliteodbc/sqliteodbc-${version}.tar.gz";
+      sha256 = "0dgsj28sc7f7aprmdd0n5a1rmcx6pv7170c8dfjl0x1qsjxim6hs";
+    };
+ 
+    buildInputs = [ unixODBC sqlite zlib libxml2 ];
+ 
+    configureFlags = [ "--with-odbc=${unixODBC}" ];
+ 
+    installTargets = [ "install-3" ];
+
+    # move libraries to $out/lib where they're expected to be
+    postInstall = ''
+      mkdir -p "$out/lib"
+      mv "$out"/*.* "$out/lib"
+    '';
+ 
+    passthru = {
+      fancyName = "SQLite";
+      driver = "lib/libsqlite3odbc.so";
+    };
+
+    meta = with stdenv.lib; {
+      description = "ODBC driver for SQLite";
+      homepage = http://www.ch-werner.de/sqliteodbc;
+      license = licenses.bsd2;
+      platforms = platforms.linux;
+      maintainers = with maintainers; [ vlstill ];
+    };
+  };
+
+  msodbcsql17 = stdenv.mkDerivation rec {
+    name = "msodbcsql17-${version}";
+    version = "${versionMajor}.${versionMinor}.${versionAdditional}-1";
+
+    versionMajor = "17";
+    versionMinor = "2";
+    versionAdditional = "0.1";
+
+    src = fetchurl {
+      url = "https://packages.microsoft.com/debian/9/prod/pool/main/m/msodbcsql17/msodbcsql${versionMajor}_${version}_amd64.deb";
+      sha256 = "1966ymbbk0jsacqwzi3dmhxv2n8hfgnpjsx3hr3n7s9d88chgpx5";
+    };
+
+    nativeBuildInputs = [ autoPatchelfHook ];
+    buildInputs = [ unixODBC dpkg openssl kerberos curl libuuid stdenv.cc.cc ];
+
+    unpackPhase = "dpkg -x $src ./";
+    buildPhase = "";
+
+    installPhase = ''
+      mkdir -p $out
+      mkdir -p $out/lib
+      ln -s ${lib.getLib openssl}/lib/libssl.so.1.0.0 $out/lib/libssl.so.1.0.2
+      ln -s ${lib.getLib openssl}/lib/libcrypto.so.1.0.0 $out/lib/libcrypto.so.1.0.2
+      cp -r opt/microsoft/msodbcsql${versionMajor}/lib64 opt/microsoft/msodbcsql${versionMajor}/share $out/
+    '';
+
+    passthru = {
+      fancyName = "ODBC Driver 17 for SQL Server";
+      driver = "lib/libmsodbcsql-${versionMajor}.${versionMinor}.so.${versionAdditional}";
+    };
+
+    meta = with stdenv.lib; {
+      description = "ODBC Driver 17 for SQL Server";
+      homepage = https://docs.microsoft.com/en-us/sql/connect/odbc/linux-mac/installing-the-microsoft-odbc-driver-for-sql-server?view=sql-server-2017;
+      license = licenses.unfree;
+      platforms = platforms.linux;
+      maintainers = with maintainers; [ spencerjanssen ];
+    };
+  };
+}