diff options
Diffstat (limited to 'nixpkgs/pkgs/development/tools/tora/default.nix')
-rw-r--r-- | nixpkgs/pkgs/development/tools/tora/default.nix | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/tools/tora/default.nix b/nixpkgs/pkgs/development/tools/tora/default.nix new file mode 100644 index 000000000000..5b46b975cf7f --- /dev/null +++ b/nixpkgs/pkgs/development/tools/tora/default.nix @@ -0,0 +1,67 @@ +{ mkDerivation, lib, fetchFromGitHub, cmake, extra-cmake-modules, makeWrapper +, boost, doxygen, openssl, mysql, postgresql, graphviz, loki, qscintilla, qtbase }: + +let + qscintillaLib = (qscintilla.override { withQt5 = true; }); + +in mkDerivation rec { + name = "tora-${version}"; + version = "3.1"; + + src = fetchFromGitHub { + owner = "tora-tool"; + repo = "tora"; + rev = "v${version}"; + sha256 = "0wninl10bcgiljf6wnhn2rv8kmzryw78x5qvbw8s2zfjlnxjsbn7"; + }; + + nativeBuildInputs = [ cmake extra-cmake-modules makeWrapper ]; + buildInputs = [ + boost doxygen graphviz loki mysql.connector-c openssl postgresql qscintillaLib qtbase + ]; + + preConfigure = '' + sed -i \ + 's|defaultGvHome = "/usr/bin"|defaultGvHome = "${lib.getBin graphviz}/bin"|' \ + src/widgets/toglobalsetting.cpp + + sed -i \ + 's|/usr/bin/dot|${lib.getBin graphviz}/bin/dot|' \ + extlibs/libermodel/dotgraph.cpp + ''; + + cmakeFlags = [ + "-DWANT_INTERNAL_LOKI=0" + "-DWANT_INTERNAL_QSCINTILLA=0" + # cmake/modules/FindQScintilla.cmake looks in qtbase and for the wrong library name + "-DQSCINTILLA_INCLUDE_DIR=${qscintillaLib}/include" + "-DQSCINTILLA_LIBRARY=${qscintillaLib}/lib/libqscintilla2.so" + "-DENABLE_DB2=0" + "-DENABLE_ORACLE=0" + "-DENABLE_TERADATA=0" + "-DQT5_BUILD=1" + "-Wno-dev" + ]; + + # these libraries are only searched for at runtime so we need to force-link them + NIX_LDFLAGS = [ + "-lgvc" + "-lmysqlclient" + "-lecpg" + "-lssl" + ]; + + NIX_CFLAGS_COMPILE = [ "-L${mysql.connector-c}/lib/mysql" "-I${mysql.connector-c}/include/mysql" ]; + + postFixup = '' + wrapProgram $out/bin/tora \ + --prefix PATH : ${lib.getBin graphviz}/bin + ''; + + meta = with lib; { + description = "Tora SQL tool"; + maintainers = with maintainers; [ peterhoeg ]; + platforms = platforms.linux; + license = licenses.asl20; + }; +} |