libelfin: init at unstable-2018-08-25
Needed by osquery to monitor which binaries are using e.g. hardening features: https://github.com/facebook/osquery/pull/4708
This commit is contained in:
parent
e73f42be1c
commit
d98d4b35ae
@ -0,0 +1,72 @@
|
||||
From 77a34d31695e02bc3d06b68c7ca3ff9c3cb67844 Mon Sep 17 00:00:00 2001
|
||||
From: Maximilian Bosch <maximilian@mbosch.me>
|
||||
Date: Sun, 26 May 2019 19:46:27 +0200
|
||||
Subject: [PATCH] Don't detect package version with Git
|
||||
|
||||
This will build in a Nix-based build environment. Instead we ismply
|
||||
replace `@version@` using `substituteAll`.
|
||||
---
|
||||
dwarf/Makefile | 19 +++++++++----------
|
||||
elf/Makefile | 15 +++++++--------
|
||||
2 files changed, 16 insertions(+), 18 deletions(-)
|
||||
|
||||
diff --git a/dwarf/Makefile b/dwarf/Makefile
|
||||
index 71456bd..f871227 100644
|
||||
--- a/dwarf/Makefile
|
||||
+++ b/dwarf/Makefile
|
||||
@@ -43,16 +43,15 @@ CLEAN += libdwarf++.so
|
||||
# Create pkg-config for local library and headers. This will be
|
||||
# transformed in to the correct global pkg-config by install.
|
||||
libdwarf++.pc: always
|
||||
- @(VER=$$(git describe --match 'v*' | sed -e s/^v//); \
|
||||
- echo "libdir=$$PWD"; \
|
||||
- echo "includedir=$$PWD"; \
|
||||
- echo ""; \
|
||||
- echo "Name: libdwarf++"; \
|
||||
- echo "Description: C++11 DWARF library"; \
|
||||
- echo "Version: $$VER"; \
|
||||
- echo "Requires: libelf++ = $$VER"; \
|
||||
- echo "Libs: -L\$${libdir} -ldwarf++"; \
|
||||
- echo "Cflags: -I\$${includedir}") > $@
|
||||
+ @(echo "libdir=$$PWD"; \
|
||||
+ echo "includedir=$$PWD"; \
|
||||
+ echo ""; \
|
||||
+ echo "Name: libdwarf++"; \
|
||||
+ echo "Description: C++11 DWARF library"; \
|
||||
+ echo "Version: @version@"; \
|
||||
+ echo "Requires: libelf++ = @version@"; \
|
||||
+ echo "Libs: -L\$${libdir} -ldwarf++"; \
|
||||
+ echo "Cflags: -I\$${includedir}") > $@
|
||||
CLEAN += libdwarf++.pc
|
||||
|
||||
.PHONY: always
|
||||
diff --git a/elf/Makefile b/elf/Makefile
|
||||
index 9c7c224..50630a7 100644
|
||||
--- a/elf/Makefile
|
||||
+++ b/elf/Makefile
|
||||
@@ -42,15 +42,14 @@ CLEAN += libelf++.so
|
||||
# Create pkg-config for local library and headers. This will be
|
||||
# transformed in to the correct global pkg-config by install.
|
||||
libelf++.pc: always
|
||||
- @(VER=$$(git describe --match 'v*' | sed -e s/^v//); \
|
||||
- echo "libdir=$$PWD"; \
|
||||
+ @(echo "libdir=$$PWD"; \
|
||||
echo "includedir=$$PWD"; \
|
||||
- echo ""; \
|
||||
- echo "Name: libelf++"; \
|
||||
- echo "Description: C++11 ELF library"; \
|
||||
- echo "Version: $$VER"; \
|
||||
- echo "Libs: -L\$${libdir} -lelf++"; \
|
||||
- echo "Cflags: -I\$${includedir}") > $@
|
||||
+ echo ""; \
|
||||
+ echo "Name: libelf++"; \
|
||||
+ echo "Description: C++11 ELF library"; \
|
||||
+ echo "Version: @version@"; \
|
||||
+ echo "Libs: -L\$${libdir} -lelf++"; \
|
||||
+ echo "Cflags: -I\$${includedir}") > $@
|
||||
CLEAN += libelf++.pc
|
||||
|
||||
.PHONY: always
|
||||
--
|
||||
2.19.2
|
||||
|
32
pkgs/development/libraries/libelfin/default.nix
Normal file
32
pkgs/development/libraries/libelfin/default.nix
Normal file
@ -0,0 +1,32 @@
|
||||
{ stdenv, fetchFromGitHub, python3, substituteAll }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "libelfin";
|
||||
version = "unstable-2018-08-25";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "aclements";
|
||||
repo = pname;
|
||||
rev = "ac45a094fadba77ad840063fb7aab82571546be0";
|
||||
sha256 = "143x680c6hsy51kngs04ypg4ql3lp498llcwj4lh1v0qp5qvjhyz";
|
||||
};
|
||||
|
||||
patches = [
|
||||
(substituteAll {
|
||||
src = ./0001-Don-t-detect-package-version-with-Git.patch;
|
||||
inherit version;
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ python3 ];
|
||||
|
||||
makeFlags = [ "PREFIX=${placeholder "out"}" ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://github.com/aclements/libelfin/;
|
||||
license = licenses.mit;
|
||||
description = "C++11 ELF/DWARF parser";
|
||||
maintainers = with maintainers; [ ma27 ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
@ -11326,6 +11326,8 @@ in
|
||||
then callPackage ../development/libraries/libelf-freebsd { }
|
||||
else callPackage ../development/libraries/libelf { };
|
||||
|
||||
libelfin = callPackage ../development/libraries/libelfin { };
|
||||
|
||||
libetpan = callPackage ../development/libraries/libetpan { };
|
||||
|
||||
libexecinfo = callPackage ../development/libraries/libexecinfo { };
|
||||
|
Loading…
Reference in New Issue
Block a user