|
|
|
@ -1,17 +1,32 @@ |
|
|
|
|
{ lib, stdenv, fetchurl, fetchpatch, meson, pkgconfig, ninja |
|
|
|
|
, libffi, libxml2, wayland |
|
|
|
|
{ lib |
|
|
|
|
, stdenv |
|
|
|
|
, fetchurl |
|
|
|
|
, fetchpatch |
|
|
|
|
, meson |
|
|
|
|
, pkgconfig |
|
|
|
|
, substituteAll |
|
|
|
|
, ninja |
|
|
|
|
, libffi |
|
|
|
|
, libxml2 |
|
|
|
|
, wayland |
|
|
|
|
, expat ? null # Build wayland-scanner (currently cannot be disabled as of 1.7.0) |
|
|
|
|
, withDocumentation ? stdenv.hostPlatform == stdenv.buildPlatform |
|
|
|
|
, graphviz-nox, doxygen, libxslt, xmlto, python3 |
|
|
|
|
, docbook_xsl, docbook_xml_dtd_45, docbook_xml_dtd_42 |
|
|
|
|
, graphviz-nox |
|
|
|
|
, doxygen |
|
|
|
|
, libxslt |
|
|
|
|
, xmlto |
|
|
|
|
, python3 |
|
|
|
|
, docbook_xsl |
|
|
|
|
, docbook_xml_dtd_45 |
|
|
|
|
, docbook_xml_dtd_42 |
|
|
|
|
}: |
|
|
|
|
|
|
|
|
|
# Require the optional to be enabled until upstream fixes or removes the configure flag |
|
|
|
|
assert expat != null; |
|
|
|
|
|
|
|
|
|
let |
|
|
|
|
isCross = stdenv.buildPlatform != stdenv.hostPlatform; |
|
|
|
|
in stdenv.mkDerivation rec { |
|
|
|
|
in |
|
|
|
|
stdenv.mkDerivation rec { |
|
|
|
|
pname = "wayland"; |
|
|
|
|
version = "1.18.0"; |
|
|
|
|
|
|
|
|
@ -26,6 +41,10 @@ in stdenv.mkDerivation rec { |
|
|
|
|
url = "https://gitlab.freedesktop.org/wayland/wayland/-/commit/e53e0edf0f892670f3e8c5dd527b3bb22335d32d.patch"; |
|
|
|
|
sha256 = "15sbhi86m9k72lsj56p7zr20ph2b0y4svl639snsbafn2ir1zdb2"; |
|
|
|
|
}) |
|
|
|
|
(substituteAll { |
|
|
|
|
src = ./0001-add-placeholder-for-nm.patch; |
|
|
|
|
nm = "${stdenv.cc.targetPrefix}nm"; |
|
|
|
|
}) |
|
|
|
|
]; |
|
|
|
|
|
|
|
|
|
outputs = [ "out" ] ++ lib.optionals withDocumentation [ "doc" "man" ]; |
|
|
|
@ -35,9 +54,6 @@ in stdenv.mkDerivation rec { |
|
|
|
|
|
|
|
|
|
postPatch = lib.optionalString withDocumentation '' |
|
|
|
|
patchShebangs doc/doxygen/gen-doxygen.py |
|
|
|
|
substituteInPlace egl/meson.build --replace \ |
|
|
|
|
"find_program('nm').path()" \ |
|
|
|
|
"find_program('${stdenv.cc.targetPrefix}nm').path()" |
|
|
|
|
''; |
|
|
|
|
|
|
|
|
|
depsBuildBuild = [ |
|
|
|
@ -45,17 +61,28 @@ in stdenv.mkDerivation rec { |
|
|
|
|
]; |
|
|
|
|
|
|
|
|
|
nativeBuildInputs = [ |
|
|
|
|
meson pkgconfig ninja |
|
|
|
|
meson |
|
|
|
|
pkgconfig |
|
|
|
|
ninja |
|
|
|
|
] ++ lib.optionals isCross [ |
|
|
|
|
wayland # For wayland-scanner during the build |
|
|
|
|
] ++ lib.optionals withDocumentation [ |
|
|
|
|
(graphviz-nox.override { pango = null; }) # To avoid an infinite recursion |
|
|
|
|
doxygen libxslt xmlto python3 docbook_xml_dtd_45 |
|
|
|
|
doxygen |
|
|
|
|
libxslt |
|
|
|
|
xmlto |
|
|
|
|
python3 |
|
|
|
|
docbook_xml_dtd_45 |
|
|
|
|
]; |
|
|
|
|
|
|
|
|
|
buildInputs = [ libffi expat libxml2 |
|
|
|
|
buildInputs = [ |
|
|
|
|
libffi |
|
|
|
|
expat |
|
|
|
|
libxml2 |
|
|
|
|
] ++ lib.optionals withDocumentation [ |
|
|
|
|
docbook_xsl docbook_xml_dtd_45 docbook_xml_dtd_42 |
|
|
|
|
docbook_xsl |
|
|
|
|
docbook_xml_dtd_45 |
|
|
|
|
docbook_xml_dtd_42 |
|
|
|
|
]; |
|
|
|
|
|
|
|
|
|
meta = { |
|
|
|
@ -68,9 +95,9 @@ in stdenv.mkDerivation rec { |
|
|
|
|
and other interactions that must go through the compositor (but not |
|
|
|
|
rendering). |
|
|
|
|
''; |
|
|
|
|
homepage = "https://wayland.freedesktop.org/"; |
|
|
|
|
license = lib.licenses.mit; # Expat version |
|
|
|
|
platforms = lib.platforms.linux; |
|
|
|
|
homepage = "https://wayland.freedesktop.org/"; |
|
|
|
|
license = lib.licenses.mit; # Expat version |
|
|
|
|
platforms = lib.platforms.linux; |
|
|
|
|
maintainers = with lib.maintainers; [ primeos codyopel ]; |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|