From db06c4f3df09648581343b8832ea4419d80080ca Mon Sep 17 00:00:00 2001 From: Anderson Torres Date: Fri, 3 May 2024 13:04:15 -0300 Subject: [PATCH] SDL_gfx: refactor - strictDeps - add lib.teams.sdl.members --- pkgs/by-name/sd/SDL_gfx/package.nix | 66 +++++++++++++++++------------ 1 file changed, 39 insertions(+), 27 deletions(-) diff --git a/pkgs/by-name/sd/SDL_gfx/package.nix b/pkgs/by-name/sd/SDL_gfx/package.nix index bccc11f43d41..558e1943a14b 100644 --- a/pkgs/by-name/sd/SDL_gfx/package.nix +++ b/pkgs/by-name/sd/SDL_gfx/package.nix @@ -1,46 +1,58 @@ -{ lib, stdenv, fetchurl, SDL }: +{ + lib, + SDL, + fetchurl, + stdenv, + # Boolean flags + enableSdltest ? (!stdenv.isDarwin), +}: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "SDL_gfx"; version = "2.0.27"; src = fetchurl { - url = "https://www.ferzkopp.net/Software/SDL_gfx-2.0/${pname}-${version}.tar.gz"; - sha256 = "sha256-37FaxfjOeklS3BLSrtl0dRjF5rM1wOMWNtI/k8Yw9Bk="; + url = "https://www.ferzkopp.net/Software/SDL_gfx-2.0/SDL_gfx-${finalAttrs.version}.tar.gz"; + hash = "sha256-37FaxfjOeklS3BLSrtl0dRjF5rM1wOMWNtI/k8Yw9Bk="; }; + nativeBuildInputs = [ SDL ]; + + buildInputs = [ SDL ]; + # SDL_gfx.pc refers to sdl.pc and some SDL_gfx headers import SDL.h propagatedBuildInputs = [ SDL ]; - buildInputs = [ SDL ] ; - configureFlags = [ "--disable-mmx" ] - ++ lib.optional stdenv.isDarwin "--disable-sdltest"; + configureFlags = [ + (lib.enableFeature false "mmx") + (lib.enableFeature enableSdltest "sdltest") + ]; - meta = with lib; { + strictDeps = true; + + meta = { + homepage = "https://sourceforge.net/projects/sdlgfx/"; description = "SDL graphics drawing primitives and support functions"; - longDescription = '' - The SDL_gfx library evolved out of the SDL_gfxPrimitives code - which provided basic drawing routines such as lines, circles or - polygons and SDL_rotozoom which implemented a interpolating - rotozoomer for SDL surfaces. + The SDL_gfx library evolved out of the SDL_gfxPrimitives code which + provided basic drawing routines such as lines, circles or polygons and + SDL_rotozoom which implemented a interpolating rotozoomer for SDL + surfaces. The current components of the SDL_gfx library are: - * Graphic Primitives (SDL_gfxPrimitves.h) - * Rotozoomer (SDL_rotozoom.h) - * Framerate control (SDL_framerate.h) - * MMX image filters (SDL_imageFilter.h) - * Custom Blit functions (SDL_gfxBlitFunc.h) + - Graphic Primitives (SDL_gfxPrimitves.h) + - Rotozoomer (SDL_rotozoom.h) + - Framerate control (SDL_framerate.h) + - MMX image filters (SDL_imageFilter.h) + - Custom Blit functions (SDL_gfxBlitFunc.h) - The library is backwards compatible to the above mentioned - code. Its is written in plain C and can be used in C++ code. + The library is backwards compatible to the above mentioned code. Its is + written in plain C and can be used in C++ code. ''; - - homepage = "https://sourceforge.net/projects/sdlgfx/"; - license = licenses.zlib; - - maintainers = with maintainers; [ ]; - platforms = platforms.unix; + license = lib.licenses.zlib; + maintainers = lib.teams.sdl.members + ++ (with lib.maintainers; [ ]); + inherit (SDL.meta) platforms; }; -} +})