handheld-daemon-ui: 3.2.3 -> 3.3.0 (#361609)
[NixPkgs.git] / pkgs / development / tools / tora / default.nix
blob512d5adc0a7ff5069ac12840efe125267fed9bb9
1 { mkDerivation, lib, fetchFromGitHub, cmake, extra-cmake-modules, makeWrapper
2 , boost, doxygen, openssl, libmysqlclient, postgresql, graphviz, loki
3 , qscintilla, qtbase, qttools }:
5 mkDerivation {
6   pname = "tora";
7   version = "3.2.176";
9   src = fetchFromGitHub {
10     owner  = "tora-tool";
11     repo   = "tora";
12     rev    = "39bf2837779bf458fc72a9f0e49271152e57829f";
13     sha256 = "0fr9b542i8r6shgnz33lc3cz333fnxgmac033yxfrdjfglzk0j2k";
14   };
16   nativeBuildInputs = [ cmake extra-cmake-modules makeWrapper qttools ];
18   buildInputs = [
19     boost doxygen graphviz loki libmysqlclient openssl postgresql qscintilla qtbase
20   ];
22   preConfigure = ''
23     substituteInPlace src/widgets/toglobalsetting.cpp \
24       --replace 'defaultGvHome = "/usr/bin"' 'defaultGvHome = "${lib.getBin graphviz}/bin"'
25     substituteInPlace extlibs/libermodel/dotgraph.cpp \
26       --replace /usr/bin/dot ${lib.getBin graphviz}/bin/dot
27   '';
29   cmakeFlags = [
30     "-DWANT_INTERNAL_LOKI=0"
31     "-DWANT_INTERNAL_QSCINTILLA=0"
32     # cmake/modules/FindQScintilla.cmake looks in qtbase and for the wrong library name
33     "-DQSCINTILLA_INCLUDE_DIR=${qscintilla}/include"
34     "-DQSCINTILLA_LIBRARY=${qscintilla}/lib/libqscintilla2.so"
35     "-DENABLE_DB2=0"
36     "-DENABLE_ORACLE=0"
37     "-DENABLE_TERADATA=0"
38     "-DQT5_BUILD=1"
39     "-Wno-dev"
40   ];
42   # these libraries are only searched for at runtime so we need to force-link them
43   NIX_LDFLAGS = "-lgvc -lmysqlclient -lecpg -lssl -L${libmysqlclient}/lib/mariadb";
45   qtWrapperArgs = [
46     ''--prefix PATH : ${lib.getBin graphviz}/bin''
47   ];
49   meta = with lib; {
50     description = "Tora SQL tool";
51     mainProgram = "tora";
52     maintainers = with maintainers; [ peterhoeg ];
53     platforms = platforms.linux;
54     license = licenses.asl20;
55   };