nixpkgs-suyu/pkgs/development/libraries/libcaca/default.nix
Artturin f9fdf2d402 treewide: move NIX_CFLAGS_COMPILE to the env attrset
with structuredAttrs lists will be bash arrays which cannot be exported
which will be a issue with some patches and some wrappers like cc-wrapper

this makes it clearer that NIX_CFLAGS_COMPILE must be a string as lists
in env cause a eval failure
2023-02-22 21:23:04 +02:00

74 lines
1.8 KiB
Nix
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{ lib
, stdenv
, fetchFromGitHub
, autoreconfHook
, imlib2
, xorg
, ncurses
, pkg-config
, zlib
, x11Support ? !stdenv.isDarwin
}:
stdenv.mkDerivation rec {
pname = "libcaca";
version = "0.99.beta20";
src = fetchFromGitHub {
owner = "cacalabs";
repo = pname;
rev = "v${version}";
hash = "sha256-N0Lfi0d4kjxirEbIjdeearYWvStkKMyV6lgeyNKXcVw=";
};
nativeBuildInputs = [
autoreconfHook
pkg-config
];
buildInputs = [
ncurses
zlib
(imlib2.override { inherit x11Support; })
] ++ lib.optionals x11Support [
xorg.libX11
xorg.libXext
];
outputs = [ "bin" "dev" "out" "man" ];
configureFlags = [
(if x11Support then "--enable-x11" else "--disable-x11")
];
env.NIX_CFLAGS_COMPILE = lib.optionalString (!x11Support) "-DX_DISPLAY_MISSING";
postInstall = ''
mkdir -p $dev/bin
mv $bin/bin/caca-config $dev/bin/caca-config
'';
meta = with lib; {
homepage = "http://caca.zoy.org/wiki/libcaca";
description = "A graphics library that outputs text instead of pixels";
longDescription = ''
libcaca is a graphics library that outputs text instead of pixels, so that
it can work on older video cards or text terminals. It is not unlike the
famous AAlib library, with the following improvements:
- Unicode support
- 2048 available colours (some devices can only handle 16)
- dithering of colour images
- advanced text canvas operations (blitting, rotations)
Libcaca works in a text terminal (and should thus work on all Unix systems
including Mac OS X) using the S-Lang or ncurses libraries. It also works
natively on DOS and Windows.
Libcaca was written by Sam Hocevar and Jean-Yves Lamoureux.
'';
license = licenses.wtfpl;
maintainers = with maintainers; [ AndersonTorres ];
platforms = platforms.unix;
};
}