about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/libraries/soil
diff options
context:
space:
mode:
authorAlyssa Ross <hi@alyssa.is>2021-01-15 10:30:44 +0000
committerAlyssa Ross <hi@alyssa.is>2021-01-15 10:30:44 +0000
commite0794be8a0d11e90461e5a9c85012a36b93ec976 (patch)
treeefd9cbc55ea3322867bf601c4d536758a3dd5fcc /nixpkgs/pkgs/development/libraries/soil
parent3538874082ded7647b1ccec0343c7c1e882cfef3 (diff)
parent1a57d96edd156958b12782e8c8b6a374142a7248 (diff)
downloadnixlib-e0794be8a0d11e90461e5a9c85012a36b93ec976.tar
nixlib-e0794be8a0d11e90461e5a9c85012a36b93ec976.tar.gz
nixlib-e0794be8a0d11e90461e5a9c85012a36b93ec976.tar.bz2
nixlib-e0794be8a0d11e90461e5a9c85012a36b93ec976.tar.lz
nixlib-e0794be8a0d11e90461e5a9c85012a36b93ec976.tar.xz
nixlib-e0794be8a0d11e90461e5a9c85012a36b93ec976.tar.zst
nixlib-e0794be8a0d11e90461e5a9c85012a36b93ec976.zip
Merge commit '1a57d96edd156958b12782e8c8b6a374142a7248'
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/soil')
-rw-r--r--nixpkgs/pkgs/development/libraries/soil/default.nix45
1 files changed, 31 insertions, 14 deletions
diff --git a/nixpkgs/pkgs/development/libraries/soil/default.nix b/nixpkgs/pkgs/development/libraries/soil/default.nix
index cf0896170c17..dcec1c897b3b 100644
--- a/nixpkgs/pkgs/development/libraries/soil/default.nix
+++ b/nixpkgs/pkgs/development/libraries/soil/default.nix
@@ -1,28 +1,45 @@
-{ stdenv, fetchurl, unzip, mesa, libX11, libGL }:
+{ stdenv, lib
+, Carbon
+, fetchzip
+, libGL
+, libX11
+}:
 
 stdenv.mkDerivation {
   name = "soil";
 
-  src = fetchurl {
-    url    = "http://www.lonesock.net/files/soil.zip";
-    sha256 = "00gpwp9dldzhsdhksjvmbhsd2ialraqbv6v6dpikdmpncj6mnc52";
+  src = fetchzip {
+    url = "https://web.archive.org/web/20200104042737id_/http://www.lonesock.net/files/soil.zip";
+    sha256 = "1c05nwbnfdgwaz8ywn7kg2xrcvrcbpdyhcfkkiiwk69zvil0pbgd";
   };
 
-  buildInputs = [ unzip mesa libGL libX11 ];
+  buildInputs = if stdenv.hostPlatform.isDarwin then [
+    Carbon
+  ] else [
+    libGL
+    libX11
+  ];
 
-  sourceRoot = "Simple OpenGL Image Library/projects/makefile";
-  preBuild   = "mkdir obj";
-  preInstall = "mkdir -p $out/lib $out/include";
-  makeFlags  = [ "LOCAL=$(out)" ];
+  buildPhase = ''
+    cd src
+    $CC $NIX_CFLAGS_COMPILE -c *.c
+    $AR rcs libSOIL.a *.o
+  '';
+  installPhase = ''
+    mkdir -p $out/lib $out/include/SOIL
+    cp libSOIL.a $out/lib/
+    cp SOIL.h $out/include/SOIL/
+  '';
 
-  meta = {
-    description     = "Simple OpenGL Image Library";
+  meta = with lib; {
+    description = "Simple OpenGL Image Library";
     longDescription = ''
       SOIL is a tiny C library used primarily for uploading textures
       into OpenGL.
     '';
-    homepage  = "https://www.lonesock.net/soil.html";
-    license   = stdenv.lib.licenses.publicDomain;
-    platforms = stdenv.lib.platforms.linux;
+    homepage = "https://www.lonesock.net/soil.html";
+    license = licenses.publicDomain;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ r-burns ];
   };
 }