diff options
author | Alyssa Ross <hi@alyssa.is> | 2021-02-17 05:17:07 +0000 |
---|---|---|
committer | Michael Weiss <dev.primeos@gmail.com> | 2021-04-02 19:06:27 +0200 |
commit | 4d8adb49d5299a62c9168971036ac1417ac44fcb (patch) | |
tree | 716f1701e4330d284fb1fced557dfc564c87d2c5 /pkgs/development/libraries/wayland | |
parent | 6f73a8570ca0cb6d567e8eaebc59293f12bb7483 (diff) |
wayland: fix build on non-Linux
The Wayland libraries themselves only build on Linux, but other platforms need wayland-scanner for cross-compiling to Linux. So for them, disable the libraries so only wayland-scanner is built.
Diffstat (limited to 'pkgs/development/libraries/wayland')
-rw-r--r-- | pkgs/development/libraries/wayland/default.nix | 22 |
1 files changed, 15 insertions, 7 deletions
diff --git a/pkgs/development/libraries/wayland/default.nix b/pkgs/development/libraries/wayland/default.nix index fb7d1972c0241..49a0356723c1f 100644 --- a/pkgs/development/libraries/wayland/default.nix +++ b/pkgs/development/libraries/wayland/default.nix @@ -10,7 +10,8 @@ , libxml2 , wayland , expat ? null # Build wayland-scanner (currently cannot be disabled as of 1.7.0) -, withDocumentation ? stdenv.hostPlatform == stdenv.buildPlatform +, withLibraries ? stdenv.isLinux +, withDocumentation ? withLibraries && stdenv.hostPlatform == stdenv.buildPlatform , graphviz-nox , doxygen , libxslt @@ -21,6 +22,9 @@ , docbook_xml_dtd_42 }: +# Documentation is only built when building libraries. +assert withDocumentation -> withLibraries; + # Require the optional to be enabled until upstream fixes or removes the configure flag assert expat != null; let @@ -45,7 +49,10 @@ stdenv.mkDerivation rec { outputs = [ "out" ] ++ lib.optionals withDocumentation [ "doc" "man" ]; separateDebugInfo = true; - mesonFlags = [ "-Ddocumentation=${lib.boolToString withDocumentation}" ]; + mesonFlags = [ + "-Dlibraries=${lib.boolToString withLibraries}" + "-Ddocumentation=${lib.boolToString withDocumentation}" + ]; postPatch = lib.optionalString withDocumentation '' patchShebangs doc/doxygen/gen-doxygen.py @@ -71,16 +78,17 @@ stdenv.mkDerivation rec { ]; buildInputs = [ - libffi expat libxml2 + ] ++ lib.optionals withLibraries [ + libffi ] ++ lib.optionals withDocumentation [ docbook_xsl docbook_xml_dtd_45 docbook_xml_dtd_42 ]; - meta = { + meta = with lib; { description = "Core Wayland window system code and protocol"; longDescription = '' Wayland is a project to define a protocol for a compositor to talk to its @@ -91,9 +99,9 @@ stdenv.mkDerivation rec { rendering). ''; homepage = "https://wayland.freedesktop.org/"; - license = lib.licenses.mit; # Expat version - platforms = lib.platforms.linux; - maintainers = with lib.maintainers; [ primeos codyopel ]; + license = licenses.mit; # Expat version + platforms = if withLibraries then platforms.linux else platforms.unix; + maintainers = with maintainers; [ primeos codyopel ]; }; passthru.version = version; |