From 5325503f653f8cf473a23fb970cc1af2fef56fd3 Mon Sep 17 00:00:00 2001 From: Colin Date: Wed, 5 Apr 2023 03:07:35 +0000 Subject: [PATCH] sparrow3d: init at unstable-2020-10-06 Co-authored-by: Anderson Torres --- .../libraries/sparrow3d/default.nix | 98 +++++++++++++++++++ .../libraries/sparrow3d/sparrow3d.pc.in | 16 +++ pkgs/top-level/all-packages.nix | 2 + 3 files changed, 116 insertions(+) create mode 100644 pkgs/development/libraries/sparrow3d/default.nix create mode 100644 pkgs/development/libraries/sparrow3d/sparrow3d.pc.in diff --git a/pkgs/development/libraries/sparrow3d/default.nix b/pkgs/development/libraries/sparrow3d/default.nix new file mode 100644 index 00000000000..a502b6249a1 --- /dev/null +++ b/pkgs/development/libraries/sparrow3d/default.nix @@ -0,0 +1,98 @@ +{ lib +, stdenv +, copyPkgconfigItems +, fetchFromGitHub +, makePkgconfigItem +, pkg-config +, SDL +, SDL_image +, SDL_mixer +, SDL_net +, SDL_ttf +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "sparrow3d"; + version = "unstable-2020-10-06"; + + outputs = [ "out" "dev" ]; + + src = fetchFromGitHub { + owner = "theZiz"; + repo = "sparrow3d"; + rev = "2033349d7adeba34bda2c442e1fec22377471134"; + hash = "sha256-28j5nbTYBrMN8BQ6XrTlO1D8Viw+RiT3MAl99BAbhR4="; + }; + + pkgconfigItems = [ + (makePkgconfigItem rec { + name = "sparrow3d"; + inherit (finalAttrs) version; + inherit (finalAttrs.meta) description; + + cflags = [ "-isystem${variables.includedir}" ]; + libs = [ + "-L${variables.libdir}" + "-lsparrow3d" + "-lsparrowNet" + "-lsparrowSound" + ]; + variables = rec { + prefix = "@dev@"; + exec_prefix = "@out@"; + includedir = "${prefix}/include"; + libdir = "${exec_prefix}/lib"; + }; + }) + ]; + + nativeBuildInputs = [ + copyPkgconfigItems + pkg-config + ]; + + propagatedBuildInputs = [ + SDL.dev + SDL_image + SDL_ttf + SDL_mixer + SDL_net + ]; + + postConfigure = '' + NIX_CFLAGS_COMPILE=$(pkg-config --cflags SDL_image SDL_ttf SDL_mixer SDL_net) + ''; + + buildFlags = [ "dynamic" ]; + + installPhase = '' + runHook preInstall + + mkdir -p $out/lib + cp libsparrow{3d,Net,Sound}.so $out/lib + + mkdir -p $dev/include + cp sparrow*.h $dev/include + + runHook postInstall + ''; + + doCheck = true; + + checkPhase = '' + runHook preCheck + + make all_no_static + ./testfile.sh + + runHook postCheck + ''; + + meta = { + homepage = "https://github.com/theZiz/sparrow3d"; + description = "A software renderer for different open handhelds like the gp2x, wiz, caanoo and pandora"; + license = lib.licenses.lgpl21; + maintainers = with lib.maintainers; [ colinsane ]; + platforms = lib.platforms.linux; + }; +}) diff --git a/pkgs/development/libraries/sparrow3d/sparrow3d.pc.in b/pkgs/development/libraries/sparrow3d/sparrow3d.pc.in new file mode 100644 index 00000000000..ac87c4ff278 --- /dev/null +++ b/pkgs/development/libraries/sparrow3d/sparrow3d.pc.in @@ -0,0 +1,16 @@ +prefix=@out@ +includedir=${prefix}/include +libdir=${prefix}/lib + +Name: sparrow3d +Description: a software renderer for different open handhelds like the gp2x, wiz, caanoo and pandora +URL: https://github.com/theZiz/sparrow3d +Version: @version@ +Requires: \ + sdl \ + SDL_image \ + SDL_ttf \ + SDL_mixer \ + SDL_net +Cflags: -isystem${includedir} +Libs: -L${libdir} -lsparrow3d -lsparrowNet -lsparrowSound diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 0d37283eaf1..ee6203895c7 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -23686,6 +23686,8 @@ with pkgs; spaceship-prompt = callPackage ../shells/zsh/spaceship-prompt { }; + sparrow3d = callPackage ../development/libraries/sparrow3d {}; + spdk = callPackage ../development/libraries/spdk { }; speechd = callPackage ../development/libraries/speechd { };