The attached patches are to advance the version of mysql workbench to 6.2.4, which fixes the currently failing build against master nixpkgs.
There are also new expressions for some added dependencies (mysqlc++ connector library and vsqlite a c++ wrapper library for sqlite). Also there is a patch to fix the build of gdal when the with-python option is given.
>From e37cad832949fbdf07e7c02f1cadc6992dba0162 Mon Sep 17 00:00:00 2001 From: Karn Kallio <[email protected]> Date: Wed, 31 Dec 2014 20:54:26 -0430 Subject: [PATCH 1/4] Add MySQL Connector C++, a mysql server client library. --- .../libraries/libmysqlconnectorcpp/default.nix | 26 ++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 28 insertions(+) create mode 100644 pkgs/development/libraries/libmysqlconnectorcpp/default.nix diff --git a/pkgs/development/libraries/libmysqlconnectorcpp/default.nix b/pkgs/development/libraries/libmysqlconnectorcpp/default.nix new file mode 100644 index 0000000..fb26262 --- /dev/null +++ b/pkgs/development/libraries/libmysqlconnectorcpp/default.nix @@ -0,0 +1,26 @@ +{ stdenv, fetchurl, cmake, boost, mysql }: + +stdenv.mkDerivation rec { + name = "libmysqlconnectorcpp-${version}"; + version = "1.1.5"; + + src = fetchurl { + url = "http://cdn.mysql.com/Downloads/Connector-C++/mysql-connector-c++-${version}.tar.gz"; + sha256 = "1s6cn6g94hmrkq3jq4gzldh46i2im8q6n16pm86nxm99v8k6fsgk"; + }; + + buildInputs = [ cmake boost mysql ]; + + cmakeFlags = [ "-DMYSQL_LIB_DIR=${mysql}/lib/mysql" ]; + + preConfigure = '' + sed -i '[email protected]@''${CMAKE_CURRENT_BINARY_DIR}/config.h@' cppconn/CMakeLists.txt + ''; + + meta = { + homepage = http://dev.mysql.com/downloads/connector/cpp/; + description = "C++ library for connecting to mysql servers."; + license = stdenv.lib.licenses.gpl2; + platforms = stdenv.lib.platforms.unix; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index aef3dc3..732db09 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -5962,6 +5962,8 @@ let libmsgpack = callPackage ../development/libraries/libmsgpack { }; + libmysqlconnectorcpp = callPackage ../development/libraries/libmysqlconnectorcpp { }; + libnatspec = callPackage ../development/libraries/libnatspec { }; libndp = callPackage ../development/libraries/libndp { }; -- 2.1.4
>From d1ac2ef8baa35e96b5cbb84f5029b75f287b7462 Mon Sep 17 00:00:00 2001 From: Karn Kallio <[email protected]> Date: Wed, 31 Dec 2014 21:06:35 -0430 Subject: [PATCH 2/4] Add vsqlite, a C++ wrapper library for sqlite. --- pkgs/development/libraries/vsqlite/default.nix | 20 ++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 22 insertions(+) create mode 100644 pkgs/development/libraries/vsqlite/default.nix diff --git a/pkgs/development/libraries/vsqlite/default.nix b/pkgs/development/libraries/vsqlite/default.nix new file mode 100644 index 0000000..43a8f7d --- /dev/null +++ b/pkgs/development/libraries/vsqlite/default.nix @@ -0,0 +1,20 @@ +{ stdenv, fetchurl, boost, sqlite }: + +stdenv.mkDerivation rec { + name = "vsqlite-${version}"; + version = "0.3.13"; + + src = fetchurl { + url = "http://evilissimo.fedorapeople.org/releases/vsqlite--/0.3.13/vsqlite++-${version}.tar.gz"; + sha256 = "17fkj0d2jh0xkjpcayhs1xvbnh1d69f026i7vs1zqnbiwbkpz237"; + }; + + buildInputs = [ boost sqlite ]; + + meta = { + homepage = http://vsqlite.virtuosic-bytes.com/; + description = "C++ wrapper library for sqlite."; + license = stdenv.lib.licenses.bsd3; + platforms = stdenv.lib.platforms.unix; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 732db09..910a44d 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -7106,6 +7106,8 @@ let vrpn = callPackage ../development/libraries/vrpn { }; + vsqlite = callPackage ../development/libraries/vsqlite { }; + vtk = callPackage ../development/libraries/vtk { }; vtkWithQt4 = vtk.override { qtLib = qt4; }; -- 2.1.4
>From 88e7f959d2f351c5a66615621f360d8dda419eee Mon Sep 17 00:00:00 2001 From: Karn Kallio <[email protected]> Date: Thu, 1 Jan 2015 22:13:01 -0430 Subject: [PATCH 3/4] gdal : Fix build when --with-python given. --- pkgs/development/libraries/gdal/default.nix | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/pkgs/development/libraries/gdal/default.nix b/pkgs/development/libraries/gdal/default.nix index 76c896d..798a538 100644 --- a/pkgs/development/libraries/gdal/default.nix +++ b/pkgs/development/libraries/gdal/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl, composableDerivation, unzip, libjpeg, libtiff, zlib -, postgresql, mysql, libgeotiff, python, pythonPackages, proj}: +, postgresql, mysql, libgeotiff, python, pythonPackages, proj, libpng}: composableDerivation.composableDerivation {} (fixed: rec { version = "1.11.1"; @@ -10,10 +10,16 @@ composableDerivation.composableDerivation {} (fixed: rec { sha256 = "0h1kib2pzv4nbppdnxv6vhngvk9ic531y8rzcwb8bg6am125jszl"; }; - buildInputs = [ unzip libjpeg libtiff python pythonPackages.numpy proj]; + buildInputs = [ unzip libjpeg libtiff libpng python pythonPackages.numpy proj ]; - # don't use optimization for gcc >= 4.3. That's said to be causeing segfaults - preConfigure = "export CFLAGS=-O0; export CXXFLAGS=-O0"; + preConfigure = '' + # don't use optimization for gcc >= 4.3. That's said to be causeing segfaults + export CFLAGS=-O0; export CXXFLAGS=-O0 + + sed -i '8 i\ + PYTHON := CXX="gcc" ; CC="gcc" $(PYTHON)' swig/python/GNUmakefile + sed -i '71s@1@0@' swig/python/GNUmakefile + ''; configureFlags = [ "--with-jpeg=${libjpeg}" @@ -23,10 +29,16 @@ composableDerivation.composableDerivation {} (fixed: rec { "--with-pg=${postgresql}/bin/pg_config" "--with-mysql=${mysql}/bin/mysql_config" "--with-geotiff=${libgeotiff}" + "--with-png=${libpng}" # for mysql workbench "--with-python" # optional "--with-static-proj4=${proj}" # optional ]; + preInstall = '' + ensureDir $(toPythonPath $out) + export PYTHONPATH=$(toPythonPath $out):$PYTHONPATH + ''; + meta = { description = "Translator library for raster geospatial data formats"; homepage = http://www.gdal.org/; -- 2.1.4
>From a97c9722dd5822d0b53588a662e862013e091ac6 Mon Sep 17 00:00:00 2001 From: Karn Kallio <[email protected]> Date: Sun, 4 Jan 2015 12:40:43 -0430 Subject: [PATCH 4/4] mysql workbench: advance to version 6.2.4, also fixing the build. --- pkgs/applications/misc/mysql-workbench/default.nix | 47 ++++++++++++++-------- pkgs/top-level/all-packages.nix | 1 - 2 files changed, 31 insertions(+), 17 deletions(-) diff --git a/pkgs/applications/misc/mysql-workbench/default.nix b/pkgs/applications/misc/mysql-workbench/default.nix index 93450d1..e20358b 100644 --- a/pkgs/applications/misc/mysql-workbench/default.nix +++ b/pkgs/applications/misc/mysql-workbench/default.nix @@ -1,31 +1,46 @@ -{ stdenv, fetchurl, makeWrapper, autoconf, automake, boost, file, gettext -, glib, glibc, libgnome_keyring, gnome_keyring, gtk, gtkmm, intltool -, libctemplate, libglade -, libiodbc -, libgnome, libsigcxx, libtool, libuuid, libxml2, libzip, lua, mesa, mysql -, pango, paramiko, pcre, pexpect, pkgconfig, pycrypto, python, sqlite +{ stdenv, fetchurl, cmake, pkgconfig, autoconf, automake, libtool, makeWrapper +, glib, glibc, gtk, gtkmm, libgnome_keyring, gnome_keyring, gdal, libiodbc +, mysql, libmysqlconnectorcpp, libxml2, tinyxml, vsqlite +, libzip, libuuid, jre, libctemplate, swig, python, boost +, cairo, pcre, libgnome, lua, libpthreadstubs, libXdmcp, libxshmfence +, fontconfig, pango, glibmm, libsigcxx, pangomm, paramiko, pexpect }: stdenv.mkDerivation rec { pname = "mysql-workbench"; - version = "5.2.47"; + version = "6.2.4"; name = "${pname}-${version}"; src = fetchurl { - url = "http://mirror.cogentco.com/pub/mysql/MySQLGUITools/mysql-workbench-gpl-${version}-src.tar.gz"; - sha256 = "1343fn3msdxqfpxw0kgm0mdx5r7g9ra1cpc8p2xhl7kz2pmqp4p6"; + url = "http://cdn.mysql.com/Downloads/MySQLGUITools/mysql-workbench-community-${version}-src.tar.gz"; + sha256 = "1amgs55gnx5p4jclbp69pdnbnh9s57yv3dk3iazf7z95fxdpgq5k"; }; - buildInputs = [ autoconf automake boost file gettext glib glibc libgnome_keyring gtk gtkmm intltool - libctemplate libglade libgnome libiodbc libsigcxx libtool libuuid libxml2 libzip lua makeWrapper mesa - mysql paramiko pcre pexpect pkgconfig pycrypto python sqlite ]; + antlrJar = fetchurl { + url = http://www.antlr3.org/download/antlr-3.4-complete.jar; + sha256 = "1xqbam8vf04q5fasb0m2n1pn5dbp2yw763sj492ncq04c5mqcglx"; + }; + + buildInputs = [ cmake pkgconfig glib glibc gtk gtkmm libgnome_keyring gnome_keyring gdal libiodbc + mysql libmysqlconnectorcpp libxml2 tinyxml vsqlite libzip libuuid jre libctemplate swig python + cairo pcre libgnome lua autoconf automake libpthreadstubs libXdmcp libxshmfence libtool boost + fontconfig pango glibmm libsigcxx pangomm makeWrapper paramiko pexpect ]; preConfigure = '' - substituteInPlace $(pwd)/frontend/linux/workbench/mysql-workbench.in --replace "catchsegv" "${glibc}/bin/catchsegv" - ''; + substituteInPlace build/cmake/Modules/FindMySQL.cmake --replace "/usr/" "${mysql}/" + substituteInPlace build/cmake/Modules/FindMySQLCppConn.cmake --replace "/usr/" "${mysql}/" + substituteInPlace build/cmake/Modules/FindCTemplate.cmake --replace "/usr/" "${libctemplate}/" + substituteInPlace library/mysql.parser/grammar/build-parser --replace /bin/bash /bin/sh + substituteInPlace tools/get_wb_version.sh --replace /bin/bash /bin/sh + sed -i '9i\ + LINUX_RES_JAR_PATH=${antlrJar}' library/mysql.parser/grammar/build-parser + + sed -i '/#include/s@gdal/@@' backend/wbpublic/grt/spatial_handler.h + sed -i '/#include/s@gdal/@@' backend/wbpublic/grtui/geom_draw_box.h + sed -i '/\(#\|%\)include/s@cairo/@@' library/forms/swig/cairo.i + sed -i '/ReloadIfChanged();/s@.*@ctemplate::Template::ReloadAllIfChanged();@' backend/wbpublic/sqlide/recordset_text_storage.cpp - postConfigure = '' - autoreconf -fi + export CMAKE_PREFIX_PATH="$CMAKE_PREFIX_PATH:${gtk}/lib/gtk-2.0:${glib}/lib/glib-2.0:${gtkmm}/lib/gdkmm-2.4:${gtkmm}/lib/gtkmm-2.4:${glibmm}/lib/glibmm-2.4:${libsigcxx}/lib/sigc++-2.0:${pangomm}/lib/pangomm-1.4:${glibmm}/lib/giomm-2.4:${gdal}" ''; postInstall = '' diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 910a44d..92e892a 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -12712,7 +12712,6 @@ let lkproof = callPackage ../tools/typesetting/tex/lkproof { }; mysqlWorkbench = newScope gnome ../applications/misc/mysql-workbench { - lua = lua5_1; inherit (pythonPackages) pexpect paramiko; }; -- 2.1.4
_______________________________________________ nix-dev mailing list [email protected] http://lists.science.uu.nl/mailman/listinfo/nix-dev
