uboot: (firmwareOdroidC2/C4) don't invoke patch tool, use patches = [] instead
https://github.com/NixOS/nixpkgs/blob/master/pkgs/stdenv/generic/setup.sh#L948 this can do it nicely. Signed-off-by: Anton Arapov <anton@deadbeef.mx>
This commit is contained in:
commit
56de2bcd43
30691 changed files with 3076956 additions and 0 deletions
|
|
@ -0,0 +1,25 @@
|
|||
From 378623b0e39b12bb04d3a3a1e08e64b31bd7d99d Mon Sep 17 00:00:00 2001
|
||||
From: Florian Klink <flokli@flokli.de>
|
||||
Date: Fri, 27 Nov 2020 10:22:20 +0100
|
||||
Subject: [PATCH] add placeholder for @nm@
|
||||
|
||||
---
|
||||
egl/meson.build | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/egl/meson.build b/egl/meson.build
|
||||
index dee9b1d..e477546 100644
|
||||
--- a/egl/meson.build
|
||||
+++ b/egl/meson.build
|
||||
@@ -11,7 +11,7 @@ wayland_egl = library(
|
||||
|
||||
executable('wayland-egl-abi-check', 'wayland-egl-abi-check.c')
|
||||
|
||||
-nm_path = find_program('nm').path()
|
||||
+nm_path = find_program('@nm@').path()
|
||||
|
||||
test(
|
||||
'wayland-egl symbols check',
|
||||
--
|
||||
2.29.2
|
||||
|
||||
125
pkgs/development/libraries/wayland/default.nix
Normal file
125
pkgs/development/libraries/wayland/default.nix
Normal file
|
|
@ -0,0 +1,125 @@
|
|||
{ lib
|
||||
, stdenv
|
||||
, fetchurl
|
||||
, fetchpatch
|
||||
, substituteAll
|
||||
, meson
|
||||
, pkg-config
|
||||
, ninja
|
||||
, wayland-scanner
|
||||
, expat
|
||||
, libxml2
|
||||
, withLibraries ? stdenv.isLinux
|
||||
, libffi
|
||||
, withDocumentation ? withLibraries && stdenv.hostPlatform == stdenv.buildPlatform
|
||||
, graphviz-nox
|
||||
, doxygen
|
||||
, libxslt
|
||||
, xmlto
|
||||
, python3
|
||||
, docbook_xsl
|
||||
, docbook_xml_dtd_45
|
||||
, docbook_xml_dtd_42
|
||||
}:
|
||||
|
||||
# Documentation is only built when building libraries.
|
||||
assert withDocumentation -> withLibraries;
|
||||
|
||||
let
|
||||
isCross = stdenv.buildPlatform != stdenv.hostPlatform;
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "wayland";
|
||||
version = "1.20.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://wayland.freedesktop.org/releases/${pname}-${version}.tar.xz";
|
||||
sha256 = "09c7rpbwavjg4y16mrfa57gk5ix6rnzpvlnv1wp7fnbh9hak985q";
|
||||
};
|
||||
|
||||
patches = [
|
||||
(substituteAll {
|
||||
src = ./0001-add-placeholder-for-nm.patch;
|
||||
nm = "${stdenv.cc.targetPrefix}nm";
|
||||
})
|
||||
];
|
||||
|
||||
postPatch = lib.optionalString withDocumentation ''
|
||||
patchShebangs doc/doxygen/gen-doxygen.py
|
||||
'' + lib.optionalString stdenv.hostPlatform.isStatic ''
|
||||
# delete line containing os-wrappers-test, disables
|
||||
# the building of os-wrappers-test
|
||||
sed -i '/os-wrappers-test/d' tests/meson.build
|
||||
'';
|
||||
|
||||
outputs = [ "out" "bin" "dev" ] ++ lib.optionals withDocumentation [ "doc" "man" ];
|
||||
separateDebugInfo = true;
|
||||
|
||||
mesonFlags = [
|
||||
"-Dlibraries=${lib.boolToString withLibraries}"
|
||||
"-Ddocumentation=${lib.boolToString withDocumentation}"
|
||||
];
|
||||
|
||||
depsBuildBuild = [
|
||||
pkg-config
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
meson
|
||||
pkg-config
|
||||
ninja
|
||||
] ++ lib.optionals isCross [
|
||||
wayland-scanner
|
||||
] ++ lib.optionals withDocumentation [
|
||||
(graphviz-nox.override { pango = null; }) # To avoid an infinite recursion
|
||||
doxygen
|
||||
libxslt
|
||||
xmlto
|
||||
python3
|
||||
docbook_xml_dtd_45
|
||||
docbook_xsl
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
expat
|
||||
libxml2
|
||||
] ++ lib.optionals withLibraries [
|
||||
libffi
|
||||
] ++ lib.optionals withDocumentation [
|
||||
docbook_xsl
|
||||
docbook_xml_dtd_45
|
||||
docbook_xml_dtd_42
|
||||
];
|
||||
|
||||
postFixup = ''
|
||||
# The pkg-config file is required for cross-compilation:
|
||||
mkdir -p $bin/lib/pkgconfig/
|
||||
cat <<EOF > $bin/lib/pkgconfig/wayland-scanner.pc
|
||||
wayland_scanner=$bin/bin/wayland-scanner
|
||||
|
||||
Name: Wayland Scanner
|
||||
Description: Wayland scanner
|
||||
Version: ${version}
|
||||
EOF
|
||||
'';
|
||||
|
||||
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
|
||||
clients as well as a library implementation of the protocol.
|
||||
The wayland protocol is essentially only about input handling and buffer
|
||||
management, but also handles drag and drop, selections, window management
|
||||
and other interactions that must go through the compositor (but not
|
||||
rendering).
|
||||
'';
|
||||
homepage = "https://wayland.freedesktop.org/";
|
||||
license = licenses.mit; # Expat version
|
||||
platforms = if withLibraries then platforms.linux else platforms.unix;
|
||||
maintainers = with maintainers; [ primeos codyopel qyliss ];
|
||||
# big sur doesn't support gcc stdenv and wayland doesn't build with clang
|
||||
broken = stdenv.isDarwin;
|
||||
};
|
||||
|
||||
passthru.version = version;
|
||||
}
|
||||
44
pkgs/development/libraries/wayland/protocols.nix
Normal file
44
pkgs/development/libraries/wayland/protocols.nix
Normal file
|
|
@ -0,0 +1,44 @@
|
|||
{ lib, stdenv, fetchurl
|
||||
, pkg-config
|
||||
, meson, ninja, wayland-scanner
|
||||
, python3, wayland
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "wayland-protocols";
|
||||
version = "1.25";
|
||||
|
||||
doCheck = stdenv.hostPlatform == stdenv.buildPlatform;
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://wayland.freedesktop.org/releases/${pname}-${version}.tar.xz";
|
||||
sha256 = "0q0laxdvf8p8b7ks2cbpqf6q0rwrjycqrp8pf8rxm86hk5qhzzzi";
|
||||
};
|
||||
|
||||
postPatch = lib.optionalString doCheck ''
|
||||
patchShebangs tests/
|
||||
'';
|
||||
|
||||
depsBuildBuild = [ pkg-config ];
|
||||
nativeBuildInputs = [ meson ninja wayland-scanner ];
|
||||
checkInputs = [ python3 wayland ];
|
||||
|
||||
mesonFlags = [ "-Dtests=${lib.boolToString doCheck}" ];
|
||||
|
||||
meta = {
|
||||
description = "Wayland protocol extensions";
|
||||
longDescription = ''
|
||||
wayland-protocols contains Wayland protocols that add functionality not
|
||||
available in the Wayland core protocol. Such protocols either add
|
||||
completely new functionality, or extend the functionality of some other
|
||||
protocol either in Wayland core, or some other protocol in
|
||||
wayland-protocols.
|
||||
'';
|
||||
homepage = "https://gitlab.freedesktop.org/wayland/wayland-protocols";
|
||||
license = lib.licenses.mit; # Expat version
|
||||
platforms = lib.platforms.linux;
|
||||
maintainers = with lib.maintainers; [ primeos ];
|
||||
};
|
||||
|
||||
passthru.version = version;
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue