libotf: fix cross-compilation by applying a patch from debian

patch makes it so that pkg-config is used to find the avaibility of the
freetype library instead of the freetype-config binary
This commit is contained in:
Artturin 2021-10-21 01:55:35 +03:00
parent b2ecf6ed9e
commit be3d12d4e5

View File

@ -1,21 +1,46 @@
{ lib, stdenv, fetchurl, libXaw, freetype }:
{ lib, stdenv, fetchurl, fetchpatch, pkg-config, autoreconfHook, libXaw, freetype }:
stdenv.mkDerivation rec {
name = "libotf-0.9.16";
pname = "libotf";
version = "0.9.16";
src = fetchurl {
url = "https://download.savannah.gnu.org/releases/m17n/${name}.tar.gz";
url = "https://download.savannah.gnu.org/releases/m17n/${pname}-${version}.tar.gz";
sha256 = "0sq6g3xaxw388akws6qrllp3kp2sxgk2dv4j79k6mm52rnihrnv8";
};
outputs = [ "out" "dev" ];
patches = [
# https://salsa.debian.org/debian/libotf/-/tree/master/debian/patches
# Fix cross-compilation
(fetchpatch {
url = "https://salsa.debian.org/debian/libotf/-/raw/1be04cedf887720eb8f5efb3594dc2cefd96b1f1/debian/patches/0002-use-pkg-config-not-freetype-config.patch";
sha256 = "sha256-VV9iGoNWIEie6UiLLTJBD+zxpvj0acgqkcBeAN1V6Kc=";
})
# these 2 are required by the above patch
(fetchpatch {
url = "https://salsa.debian.org/debian/libotf/-/raw/1be04cedf887720eb8f5efb3594dc2cefd96b1f1/debian/patches/0001-do-not-add-flags-for-required-packages-to-pc-file.patch";
sha256 = "sha256-3kzqNPAHNVJQ1F4fyifq3AqLdChWli/k7wOq+ha+iDs=";
})
(fetchpatch {
url = "https://salsa.debian.org/debian/libotf/-/raw/1be04cedf887720eb8f5efb3594dc2cefd96b1f1/debian/patches/0001-libotf-config-modify-to-support-multi-arch.patch";
sha256 = "sha256-SUlI87h+MtYWWtrAegzAnSds8JhxZwTJltDcj/se/Qc=";
})
];
strictDeps = true;
nativeBuildInputs = [ pkg-config autoreconfHook ];
buildInputs = [ libXaw freetype ];
outputs = [ "out" "dev" ];
postInstall =
''
mkdir -p $dev/bin
mv $out/bin/libotf-config $dev/bin/
substituteInPlace $dev/bin/libotf-config \
--replace "pkg-config" "${pkg-config}/bin/pkg-config"
'';
meta = {