git: 2cde3efd9099 - main - devel/py-lief: New Port
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 01 Sep 2023 17:16:29 UTC
The branch main has been updated by bofh:
URL: https://cgit.FreeBSD.org/ports/commit/?id=2cde3efd909901be11505bac4617e88ad1d7a34b
commit 2cde3efd909901be11505bac4617e88ad1d7a34b
Author: Neal Nelson <ports@nicandneal.net>
AuthorDate: 2023-09-01 16:27:03 +0000
Commit: Muhammad Moinur Rahman <bofh@FreeBSD.org>
CommitDate: 2023-09-01 17:16:15 +0000
devel/py-lief: New Port
The purpose of this project is to provide a cross platform library which
can parse, modify and abstract ELF, PE and MachO formats.
Main features:
- Parsing: LIEF can parse ELF, PE, MachO, OAT, DEX, VDEX, ART and
provides a user-friendly API to access to format internals.
- Modify: LIEF enables to modify some parts of these formats
- Abstract: Three formats have common features like sections, symbols,
entry point... LIEF factors them.
- API: LIEF can be used in C, C++ and Python
WWW: https://github.com/lief-project/lief
PR: 257041
---
devel/Makefile | 1 +
devel/py-lief/Makefile | 26 ++++++++++++++++++++++++++
devel/py-lief/distinfo | 3 +++
devel/py-lief/pkg-descr | 11 +++++++++++
devel/py-lief/pkg-plist | 4 ++++
5 files changed, 45 insertions(+)
diff --git a/devel/Makefile b/devel/Makefile
index b97c13c8680e..902fb8062c75 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -4926,6 +4926,7 @@
SUBDIR += py-libversion
SUBDIR += py-libvirt
SUBDIR += py-libzfs
+ SUBDIR += py-lief
SUBDIR += py-line-profiler
SUBDIR += py-linear-tsv
SUBDIR += py-linecache2
diff --git a/devel/py-lief/Makefile b/devel/py-lief/Makefile
new file mode 100644
index 000000000000..db3d6618072e
--- /dev/null
+++ b/devel/py-lief/Makefile
@@ -0,0 +1,26 @@
+PORTNAME= lief
+DISTVERSION= 0.11.5
+CATEGORIES= devel python
+MASTER_SITES= CHEESESHOP
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER= ports@nicandneal.net
+COMMENT= Library to instrument executable formats
+WWW= https://github.com/lief-project/lief
+
+LICENSE= APACHE20
+
+# Note: cmake is needed to build, but distutils is used directly.
+# If USES= cmake is set, the build will not work.
+BUILD_DEPENDS= cmake:devel/cmake
+
+USES= python zip
+USE_PYTHON= concurrent distutils
+
+PY_VER= ${PYTHON_VER:S/.//}
+PLIST_SUB= PY_VER=${PY_VER}
+
+post-install:
+ @${STRIP_CMD} ${STAGEDIR}${PYTHON_SITELIBDIR}/lief.cpython-${PY_VER}.so
+
+.include <bsd.port.mk>
diff --git a/devel/py-lief/distinfo b/devel/py-lief/distinfo
new file mode 100644
index 000000000000..77399f747f6f
--- /dev/null
+++ b/devel/py-lief/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1626076347
+SHA256 (lief-0.11.5.zip) = 932ba495388fb52b4ba056a0b00abe0bda3567ad3ebc6d726be1e87b8be08b3f
+SIZE (lief-0.11.5.zip) = 15699277
diff --git a/devel/py-lief/pkg-descr b/devel/py-lief/pkg-descr
new file mode 100644
index 000000000000..256a1a34b084
--- /dev/null
+++ b/devel/py-lief/pkg-descr
@@ -0,0 +1,11 @@
+The purpose of this project is to provide a cross platform library which can
+parse, modify and abstract ELF, PE and MachO formats.
+
+Main features:
+
+- Parsing: LIEF can parse ELF, PE, MachO, OAT, DEX, VDEX, ART and provides a
+ user-friendly API to access to format internals.
+- Modify: LIEF enables to modify some parts of these formats
+- Abstract: Three formats have common features like sections, symbols, entry
+ point... LIEF factors them.
+- API: LIEF can be used in C, C++ and Python
diff --git a/devel/py-lief/pkg-plist b/devel/py-lief/pkg-plist
new file mode 100644
index 000000000000..ed8f1e24a237
--- /dev/null
+++ b/devel/py-lief/pkg-plist
@@ -0,0 +1,4 @@
+bin/elf_reader.py
+bin/macho_reader.py
+bin/pe_reader.py
+%%PYTHON_SITELIBDIR%%/lief.cpython-%%PY_VER%%.so