about summary refs log tree commit diff
diff options
context:
space:
mode:
authorWill Dietz <w@wdtz.org>2018-02-13 11:03:07 -0600
committerWill Dietz <w@wdtz.org>2018-02-13 11:06:56 -0600
commit7f3527d33f19150dff5cfc9d6dbef51532a78da2 (patch)
tree9815c9fe9dee50a24f0deeb6cf8ac74cb3bc5ca2
parent82dfab87fa7bd338efc459c7c65a4d20cac8f029 (diff)
downloadnixlib-7f3527d33f19150dff5cfc9d6dbef51532a78da2.tar
nixlib-7f3527d33f19150dff5cfc9d6dbef51532a78da2.tar.gz
nixlib-7f3527d33f19150dff5cfc9d6dbef51532a78da2.tar.bz2
nixlib-7f3527d33f19150dff5cfc9d6dbef51532a78da2.tar.lz
nixlib-7f3527d33f19150dff5cfc9d6dbef51532a78da2.tar.xz
nixlib-7f3527d33f19150dff5cfc9d6dbef51532a78da2.tar.zst
nixlib-7f3527d33f19150dff5cfc9d6dbef51532a78da2.zip
libexecinfo: fetch patches, add meta, maintain
-rw-r--r--pkgs/development/libraries/libexecinfo/10-execinfo.patch64
-rw-r--r--pkgs/development/libraries/libexecinfo/20-define-gnu-source.patch24
-rw-r--r--pkgs/development/libraries/libexecinfo/30-linux-makefile.patch44
-rw-r--r--pkgs/development/libraries/libexecinfo/default.nix27
4 files changed, 23 insertions, 136 deletions
diff --git a/pkgs/development/libraries/libexecinfo/10-execinfo.patch b/pkgs/development/libraries/libexecinfo/10-execinfo.patch
deleted file mode 100644
index 03b5af0ca201..000000000000
--- a/pkgs/development/libraries/libexecinfo/10-execinfo.patch
+++ /dev/null
@@ -1,64 +0,0 @@
---- execinfo.c.orig
-+++ execinfo.c
-@@ -69,7 +69,8 @@
- char **
- backtrace_symbols(void *const *buffer, int size)
- {
--    int i, clen, alen, offset;
-+    size_t clen, alen;
-+    int i, offset;
-     char **rval;
-     char *cp;
-     Dl_info info;
-@@ -78,7 +79,6 @@
-     rval = malloc(clen);
-     if (rval == NULL)
-         return NULL;
--    (char **)cp = &(rval[size]);
-     for (i = 0; i < size; i++) {
-         if (dladdr(buffer[i], &info) != 0) {
-             if (info.dli_sname == NULL)
-@@ -92,14 +92,14 @@
-                    2 +                      /* " <" */
-                    strlen(info.dli_sname) + /* "function" */
-                    1 +                      /* "+" */
--                   D10(offset) +            /* "offset */
-+                   10 +                     /* "offset */
-                    5 +                      /* "> at " */
-                    strlen(info.dli_fname) + /* "filename" */
-                    1;                       /* "\0" */
-             rval = realloc_safe(rval, clen + alen);
-             if (rval == NULL)
-                 return NULL;
--            snprintf(cp, alen, "%p <%s+%d> at %s",
-+            snprintf((char *) rval + clen, alen, "%p <%s+%d> at %s",
-               buffer[i], info.dli_sname, offset, info.dli_fname);
-         } else {
-             alen = 2 +                      /* "0x" */
-@@ -108,12 +108,15 @@
-             rval = realloc_safe(rval, clen + alen);
-             if (rval == NULL)
-                 return NULL;
--            snprintf(cp, alen, "%p", buffer[i]);
-+            snprintf((char *) rval + clen, alen, "%p", buffer[i]);
-         }
--        rval[i] = cp;
--        cp += alen;
-+        rval[i] = (char *) clen;
-+        clen += alen;
-     }
- 
-+    for (i = 0; i < size; i++)
-+        rval[i] += (long) rval;
-+
-     return rval;
- }
- 
-@@ -155,6 +158,6 @@
-                 return;
-             snprintf(buf, len, "%p\n", buffer[i]);
-         }
--        write(fd, buf, len - 1);
-+        write(fd, buf, strlen(buf));
-     }
- }
diff --git a/pkgs/development/libraries/libexecinfo/20-define-gnu-source.patch b/pkgs/development/libraries/libexecinfo/20-define-gnu-source.patch
deleted file mode 100644
index 0ba1fc1f7e62..000000000000
--- a/pkgs/development/libraries/libexecinfo/20-define-gnu-source.patch
+++ /dev/null
@@ -1,24 +0,0 @@
---- execinfo.c.orig
-+++ execinfo.c
-@@ -26,6 +26,7 @@
-  * $Id: execinfo.c,v 1.3 2004/07/19 05:21:09 sobomax Exp $
-  */
- 
-+#define _GNU_SOURCE
- #include <sys/types.h>
- #include <sys/uio.h>
- #include <dlfcn.h>
---- stacktraverse.c.orig
-+++ stacktraverse.c
-@@ -1,3 +1,4 @@
-+#define _GNU_SOURCE
- #include <stddef.h>
- 
- #include "stacktraverse.h"
---- test.c.orig
-+++ test.c
-@@ -1,3 +1,4 @@
-+#define _GNU_SOURCE
- #include <stdio.h>
- #include <stdlib.h>
- 
diff --git a/pkgs/development/libraries/libexecinfo/30-linux-makefile.patch b/pkgs/development/libraries/libexecinfo/30-linux-makefile.patch
deleted file mode 100644
index 3bc89279547f..000000000000
--- a/pkgs/development/libraries/libexecinfo/30-linux-makefile.patch
+++ /dev/null
@@ -1,44 +0,0 @@
---- Makefile.orig
-+++ Makefile
-@@ -23,24 +23,25 @@
- # SUCH DAMAGE.
- #
- # $Id: Makefile,v 1.3 2004/07/19 05:19:55 sobomax Exp $
-+#
-+# Linux Makefile by Matt Smith <mcs@darkregion.net>, 2011/01/04
- 
--LIB=	execinfo
-+CC=cc
-+AR=ar
-+EXECINFO_CFLAGS=$(CFLAGS) -O2 -pipe -fno-strict-aliasing -std=gnu99 -fstack-protector -c
-+EXECINFO_LDFLAGS=$(LDFLAGS)
- 
--SRCS=	stacktraverse.c stacktraverse.h execinfo.c execinfo.h
-+all: static dynamic
- 
--INCS=	execinfo.h
-+static:
-+	$(CC) $(EXECINFO_CFLAGS) $(EXECINFO_LDFLAGS) stacktraverse.c
-+	$(CC) $(EXECINFO_CFLAGS) $(EXECINFO_LDFLAGS) execinfo.c
-+	$(AR) rcs libexecinfo.a stacktraverse.o execinfo.o
- 
--SHLIB_MAJOR=	1
--SHLIB_MINOR=	0
-+dynamic:
-+	$(CC) -fpic -DPIC $(EXECINFO_CFLAGS) $(EXECINFO_LDFLAGS) stacktraverse.c -o stacktraverse.So
-+	$(CC) -fpic -DPIC $(EXECINFO_CFLAGS) $(EXECINFO_LDFLAGS) execinfo.c -o execinfo.So
-+	$(CC) -shared -Wl,-soname,libexecinfo.so.1 -o libexecinfo.so.1 stacktraverse.So execinfo.So
- 
--NOPROFILE=	yes
--
--DPADD=		${LIBM}
--LDADD=		-lm
--
--#WARNS?=	4
--
--#stacktraverse.c: gen.py
--#	./gen.py > stacktraverse.c
--
--.include <bsd.lib.mk>
-+clean:
-+	rm -rf *.o *.So *.a *.so
diff --git a/pkgs/development/libraries/libexecinfo/default.nix b/pkgs/development/libraries/libexecinfo/default.nix
index 15c4cb2661f3..14d5f7f45dfd 100644
--- a/pkgs/development/libraries/libexecinfo/default.nix
+++ b/pkgs/development/libraries/libexecinfo/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl }:
+{ stdenv, fetchurl, fetchpatch }:
 
 stdenv.mkDerivation rec {
   name = "libexecinfo-${version}";
@@ -10,9 +10,21 @@ stdenv.mkDerivation rec {
   };
 
   patches = [
-    ./10-execinfo.patch
-    ./20-define-gnu-source.patch
-    ./30-linux-makefile.patch
+    (fetchpatch {
+      name = "10-execinfo.patch";
+      url = https://git.alpinelinux.org/cgit/aports/plain/main/libexecinfo/10-execinfo.patch?id=730cdcef6901750f4029d4c3b8639ce02ee3ead1;
+      sha256 = "0lnphrad4vspyljnvmm62dyxj98vgp3wabj4w3vfzfph7j8piw7g";
+    })
+    (fetchpatch {
+      name = "20-define-gnu-source.patch";
+      url = https://git.alpinelinux.org/cgit/aports/plain/main/libexecinfo/20-define-gnu-source.patch?id=730cdcef6901750f4029d4c3b8639ce02ee3ead1;
+      sha256 = "1mp8mc639b0h2s69m5z6s2h3q3n1zl298j9j0plzj7f979j76302";
+    })
+    (fetchpatch {
+      name = "30-linux-makefile.patch";
+      url = https://git.alpinelinux.org/cgit/aports/plain/main/libexecinfo/30-linux-makefile.patch?id=730cdcef6901750f4029d4c3b8639ce02ee3ead1;
+      sha256 = "1jwjz22z5cjy5h2bfghn62yl9ar8jiqhdvbwrcfavv17ihbhwcaf";
+    })
   ];
 
   patchFlags = "-p0";
@@ -22,4 +34,11 @@ stdenv.mkDerivation rec {
     install -Dm755 libexecinfo.{a,so.1} -t $out/lib
     ln -s $out/lib/libexecinfo.so{.1,}
   '';
+
+  meta = with stdenv.lib; {
+    description = "Library for inspecting program's backtrace";
+    license = licenses.bsd2;
+    homepage = https://www.freshports.org/devel/libexecinfo;
+    maintainers = with maintainers; [ dtzWill ];
+  };
 }