about summary refs log tree commit diff
path: root/pkgs/desktops/lxqt/lxqt-build-tools
diff options
context:
space:
mode:
authorRobin Gloster <mail@glob.in>2019-08-25 18:15:01 +0200
committerGitHub <noreply@github.com>2019-08-25 18:15:01 +0200
commit5292fd51f904b7441cb97aedf4a8db57524af87f (patch)
tree298a60453fcd7027d53f7576fd56b10a006060af /pkgs/desktops/lxqt/lxqt-build-tools
parent6adb914c29f43331d18e4a9d1c3bd35135342f09 (diff)
parente34de045b65ac7b812d980df85204644baeb60c9 (diff)
downloadnixlib-5292fd51f904b7441cb97aedf4a8db57524af87f.tar
nixlib-5292fd51f904b7441cb97aedf4a8db57524af87f.tar.gz
nixlib-5292fd51f904b7441cb97aedf4a8db57524af87f.tar.bz2
nixlib-5292fd51f904b7441cb97aedf4a8db57524af87f.tar.lz
nixlib-5292fd51f904b7441cb97aedf4a8db57524af87f.tar.xz
nixlib-5292fd51f904b7441cb97aedf4a8db57524af87f.tar.zst
nixlib-5292fd51f904b7441cb97aedf4a8db57524af87f.zip
Merge pull request #65482 from worldofpeace/fix-lxqt
lxqt: use qt5's mkDerivation
Diffstat (limited to 'pkgs/desktops/lxqt/lxqt-build-tools')
-rw-r--r--pkgs/desktops/lxqt/lxqt-build-tools/LXQtConfigVars.cmake7
-rw-r--r--pkgs/desktops/lxqt/lxqt-build-tools/default.nix17
-rw-r--r--pkgs/desktops/lxqt/lxqt-build-tools/setup-hook.sh15
3 files changed, 34 insertions, 5 deletions
diff --git a/pkgs/desktops/lxqt/lxqt-build-tools/LXQtConfigVars.cmake b/pkgs/desktops/lxqt/lxqt-build-tools/LXQtConfigVars.cmake
new file mode 100644
index 000000000000..fd7ef927f8b3
--- /dev/null
+++ b/pkgs/desktops/lxqt/lxqt-build-tools/LXQtConfigVars.cmake
@@ -0,0 +1,7 @@
+add_definitions("-DLXQT_RELATIVE_SHARE_DIR=\"${LXQT_RELATIVE_SHARE_DIR}\"")
+add_definitions("-DLXQT_SHARE_DIR=\"${LXQT_SHARE_DIR}\"")
+add_definitions("-DLXQT_RELATIVE_SHARE_TRANSLATIONS_DIR=\"${LXQT_RELATIVE_TRANSLATIONS_DIR}\"")
+add_definitions("-DLXQT_SHARE_TRANSLATIONS_DIR=\"${LXQT_TRANSLATIONS_DIR}\"")
+add_definitions("-DLXQT_GRAPHICS_DIR=\"${LXQT_GRAPHICS_DIR}\"")
+add_definitions("-DLXQT_ETC_XDG_DIR=\"${LXQT_ETC_XDG_DIR}\"")
+add_definitions("-DLXQT_DATA_DIR=\"${LXQT_DATA_DIR}\"")
diff --git a/pkgs/desktops/lxqt/lxqt-build-tools/default.nix b/pkgs/desktops/lxqt/lxqt-build-tools/default.nix
index f55fa579ff45..626c99fcf9c9 100644
--- a/pkgs/desktops/lxqt/lxqt-build-tools/default.nix
+++ b/pkgs/desktops/lxqt/lxqt-build-tools/default.nix
@@ -1,6 +1,6 @@
-{ stdenv, fetchFromGitHub, cmake, pkgconfig, pcre, qtbase, glib }:
+{ lib, mkDerivation, fetchFromGitHub, cmake, pkgconfig, pcre, qtbase, glib }:
 
-stdenv.mkDerivation rec {
+mkDerivation rec {
   pname = "lxqt-build-tools";
   version = "0.6.0";
 
@@ -11,13 +11,20 @@ stdenv.mkDerivation rec {
     sha256 = "0i7m9s4g5rsw28vclc9nh0zcapx85cqfwxkx7rrw7wa12svy7pm2";
   };
 
-  nativeBuildInputs = [ cmake pkgconfig ];
+  nativeBuildInputs = [ cmake pkgconfig setupHook ];
 
   buildInputs = [ qtbase glib pcre ];
 
-  preConfigure = ''cmakeFlags+=" -DLXQT_ETC_XDG_DIR=$out/etc/xdg"'';
+  setupHook = ./setup-hook.sh;
 
-  meta = with stdenv.lib; {
+  # We're dependent on this macro doing add_definitions in most places
+  # But we have the setup-hook to set the values.
+  postInstall = ''
+    rm $out/share/cmake/lxqt-build-tools/modules/LXQtConfigVars.cmake
+    cp ${./LXQtConfigVars.cmake} $out/share/cmake/lxqt-build-tools/modules/LXQtConfigVars.cmake
+  '';
+
+  meta = with lib; {
     description = "Various packaging tools and scripts for LXQt applications";
     homepage = https://github.com/lxqt/lxqt-build-tools;
     license = licenses.lgpl21;
diff --git a/pkgs/desktops/lxqt/lxqt-build-tools/setup-hook.sh b/pkgs/desktops/lxqt/lxqt-build-tools/setup-hook.sh
new file mode 100644
index 000000000000..e40765116e9c
--- /dev/null
+++ b/pkgs/desktops/lxqt/lxqt-build-tools/setup-hook.sh
@@ -0,0 +1,15 @@
+LXQtCMakePostHook() {
+  cmakeFlagsArray+=(
+    -DLXQT_LIBRARY_NAME=lxqt
+    -DLXQT_SHARE_DIR=$out/share/lxqt
+    -DLXQT_TRANSLATIONS_DIR=$out/share/lxqt/translations
+    -DLXQT_GRAPHICS_DIR=$out/share/lxqt/graphics
+    -DLXQT_ETC_XDG_DIR=$out/etc/xdg
+    -DLXQT_DATA_DIR=$out/share
+    -DLXQT_RELATIVE_SHARE_DIR=lxqt
+    -DLXQT_RELATIVE_SHARE_TRANSLATIONS_DIR=lxqt/translations
+  )
+
+}
+
+postHooks+=(LXQtCMakePostHook)