about summary refs log tree commit diff
diff options
context:
space:
mode:
authorJanik <80165193+Janik-Haag@users.noreply.github.com>2024-02-05 12:42:44 +0100
committerGitHub <noreply@github.com>2024-02-05 12:42:44 +0100
commit522f476e56a918005dad0730c2c767f8b280cde5 (patch)
treefcbd22b758e5f6991978398aedc603eb4625b2a3
parent62046f5787ddb2e317c3c129a7e50f90efff1498 (diff)
parentf24dc6400176c841e4b0748a1825d57e49be19ac (diff)
downloadnixlib-522f476e56a918005dad0730c2c767f8b280cde5.tar
nixlib-522f476e56a918005dad0730c2c767f8b280cde5.tar.gz
nixlib-522f476e56a918005dad0730c2c767f8b280cde5.tar.bz2
nixlib-522f476e56a918005dad0730c2c767f8b280cde5.tar.lz
nixlib-522f476e56a918005dad0730c2c767f8b280cde5.tar.xz
nixlib-522f476e56a918005dad0730c2c767f8b280cde5.tar.zst
nixlib-522f476e56a918005dad0730c2c767f8b280cde5.zip
Merge pull request #276618 from remexre/fix-linenoise-pkgconfig
linenoise: 1.0.10 -> 1.0-34-g93b2db9
-rw-r--r--maintainers/maintainer-list.nix6
-rwxr-xr-xpkgs/development/libraries/linenoise/create-pkg-config-file.sh13
-rw-r--r--pkgs/development/libraries/linenoise/default.nix39
-rw-r--r--pkgs/development/libraries/linenoise/linenoise.pc.in10
4 files changed, 45 insertions, 23 deletions
diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix
index f6933978eca4..3d9b794efc8f 100644
--- a/maintainers/maintainer-list.nix
+++ b/maintainers/maintainer-list.nix
@@ -15896,6 +15896,12 @@
     githubId = 801525;
     name = "rembo10";
   };
+  remexre = {
+    email = "nathan+nixpkgs@remexre.com";
+    github = "remexre";
+    githubId = 4196789;
+    name = "Nathan Ringo";
+  };
   renatoGarcia = {
     email = "fgarcia.renato@gmail.com";
     github = "renatoGarcia";
diff --git a/pkgs/development/libraries/linenoise/create-pkg-config-file.sh b/pkgs/development/libraries/linenoise/create-pkg-config-file.sh
deleted file mode 100755
index e3c38f05ab4c..000000000000
--- a/pkgs/development/libraries/linenoise/create-pkg-config-file.sh
+++ /dev/null
@@ -1,13 +0,0 @@
-cat <<EOF > linenoise.pc
-prefix=$out
-exec_prefix=\${prefix}
-libdir=\${exec_prefix}/lib
-includedir=\${prefix}/include
-
-Name: linenoise
-Description: A minimal, zero-config, BSD licensed, readline replacement.
-Requires:
-Version: 1.0.10
-Cflags: -I\${includedir}/ \${prefix}/src/linenoise.c
-
-EOF
diff --git a/pkgs/development/libraries/linenoise/default.nix b/pkgs/development/libraries/linenoise/default.nix
index e337e32b2353..a934ec19d7c1 100644
--- a/pkgs/development/libraries/linenoise/default.nix
+++ b/pkgs/development/libraries/linenoise/default.nix
@@ -1,29 +1,48 @@
-{ lib, stdenv, fetchFromGitHub }:
+{ lib
+, stdenv
+, fetchFromGitHub
+, validatePkgConfig
+}:
 
 stdenv.mkDerivation {
   pname = "linenoise";
-  version = "1.0.10";  # Its version 1.0 plus 10 commits
+  version = "1.0-34-g93b2db9";
 
   src = fetchFromGitHub {
     owner = "antirez";
     repo = "linenoise";
-    rev = "c894b9e59f02203dbe4e2be657572cf88c4230c3";
-    sha256 = "0wasql7ph5g473zxhc2z47z3pjp42q0dsn4gpijwzbxawid71b4w";
+    rev = "1.0-34-g93b2db9";
+    hash = "sha256-GsrYg16gpjHkkmpCU3yGzqNS/buZl+JoWALLvwzmT4A=";
   };
 
-  buildPhase = ./create-pkg-config-file.sh;
+  nativeBuildInputs = [ validatePkgConfig ];
+
+  buildPhase = ''
+    runHook preBuild
+
+    $CC -c -o linenoise.o linenoise.c
+    $CC -shared -o liblinenoise.so linenoise.o
+    $AR rcs liblinenoise.a linenoise.o
+
+    runHook postBuild
+  '';
 
   installPhase = ''
-    mkdir -p $out/{lib/pkgconfig,src,include}
-    cp linenoise.c $out/src/
-    cp linenoise.h $out/include/
-    cp linenoise.pc $out/lib/pkgconfig/
+    runHook preInstall
+
+    install -d $out/lib/pkgconfig $out/include
+    install -m644 linenoise.h     $out/include/
+    install -m644 liblinenoise.a  $out/lib/
+    install -m644 liblinenoise.so $out/lib/
+    substituteAll ${./linenoise.pc.in} $out/lib/pkgconfig/linenoise.pc
+
+    runHook postInstall
   '';
 
   meta = {
     homepage = "https://github.com/antirez/linenoise";
     description = "A minimal, zero-config, BSD licensed, readline replacement";
-    maintainers = with lib.maintainers; [ fstamour ];
+    maintainers = with lib.maintainers; [ fstamour remexre ];
     platforms = lib.platforms.unix;
     license = lib.licenses.bsd2;
   };
diff --git a/pkgs/development/libraries/linenoise/linenoise.pc.in b/pkgs/development/libraries/linenoise/linenoise.pc.in
new file mode 100644
index 000000000000..feb917dab0d9
--- /dev/null
+++ b/pkgs/development/libraries/linenoise/linenoise.pc.in
@@ -0,0 +1,10 @@
+prefix=@out@
+exec_prefix=${prefix}
+libdir=${exec_prefix}/lib
+includedir=${prefix}/include
+
+Name: linenoise
+Description: A minimal, zero-config, BSD licensed, readline replacement.
+Version: @version@
+Libs: -L${libdir} -llinenoise
+Cflags: -I${includedir}