git: 96352a6a134b - main - sysutils/triton: Update 0.8.1 -> 0.9

From: Yuri Victorovich <yuri_at_FreeBSD.org>
Date: Mon, 21 Mar 2022 03:38:23 UTC
The branch main has been updated by yuri:

URL: https://cgit.FreeBSD.org/ports/commit/?id=96352a6a134b7d96b431707436fcb75bddf43a8c

commit 96352a6a134b7d96b431707436fcb75bddf43a8c
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2022-03-21 03:37:26 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2022-03-21 03:38:20 +0000

    sysutils/triton: Update 0.8.1 -> 0.9
    
    Reported by:    portscout
---
 sysutils/triton/Makefile                           | 21 ++++++++---
 sysutils/triton/distinfo                           |  6 ++--
 .../files/patch-src_libtriton_CMakeLists.txt       | 42 ----------------------
 ...atch-src_libtriton_includes_triton_syscalls.hpp | 11 ------
 .../files/patch-src_scripts_extract__syscall.py    | 11 ------
 sysutils/triton/pkg-plist                          | 30 +++++++++-------
 6 files changed, 37 insertions(+), 84 deletions(-)

diff --git a/sysutils/triton/Makefile b/sysutils/triton/Makefile
index 9b723f2510d7..1f313c37cc72 100644
--- a/sysutils/triton/Makefile
+++ b/sysutils/triton/Makefile
@@ -1,6 +1,6 @@
 PORTNAME=	triton
 DISTVERSIONPREFIX=	v
-DISTVERSION=	0.8.1
+DISTVERSION=	0.9
 CATEGORIES=	sysutils
 
 MAINTAINER=	yuri@FreeBSD.org
@@ -13,13 +13,24 @@ BUILD_DEPENDS=	boost-libs>0:devel/boost-libs
 LIB_DEPENDS=	libcapstone.so:devel/capstone4 \
 		libz3.so:math/z3
 
-USES=		cmake compiler:c++11-lang python:build shebangfix
-SHEBANG_FILES=	src/scripts/extract_syscall.py
+USES=		cmake compiler:c++14-lang shebangfix
+USE_LDCONFIG=	yes
+
+SHEBANG_GLOB=	*.py
+
 USE_GITHUB=	yes
 GH_ACCOUNT=	JonathanSalwan
 GH_PROJECT=	Triton
-USE_LDCONFIG=	yes
 
-CMAKE_OFF=	PYTHON_BINDINGS
+OPTIONS_DEFINE=		PYTHON
+OPTIONS_DEFAULT=	PYTHON
+OPTIONS_SUB=		yes
+
+PYTHON_USES=		python
+PYTHON_USES_OFF=	python:build
+PYTHON_CMAKE_BOOL=	PYTHON_BINDINGS
+
+post-install-PYTHON-on:
+	@${STRIP_CMD} ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}/triton.so
 
 .include <bsd.port.mk>
diff --git a/sysutils/triton/distinfo b/sysutils/triton/distinfo
index 4586c8b30a59..27835509ef88 100644
--- a/sysutils/triton/distinfo
+++ b/sysutils/triton/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1588118219
-SHA256 (JonathanSalwan-Triton-v0.8.1_GH0.tar.gz) = 1e4499376787c5c922a940f6061a628bc18e171ee27d6560582a70f9147a30ba
-SIZE (JonathanSalwan-Triton-v0.8.1_GH0.tar.gz) = 10391210
+TIMESTAMP = 1647827649
+SHA256 (JonathanSalwan-Triton-v0.9_GH0.tar.gz) = fea82146a6952c8cf6335e5c2ee68581729611e7b4aa853b09e5a5459bc643f7
+SIZE (JonathanSalwan-Triton-v0.9_GH0.tar.gz) = 19433967
diff --git a/sysutils/triton/files/patch-src_libtriton_CMakeLists.txt b/sysutils/triton/files/patch-src_libtriton_CMakeLists.txt
deleted file mode 100644
index 234d228ae14f..000000000000
--- a/sysutils/triton/files/patch-src_libtriton_CMakeLists.txt
+++ /dev/null
@@ -1,42 +0,0 @@
---- src/libtriton/CMakeLists.txt.orig	2019-09-30 08:16:44 UTC
-+++ src/libtriton/CMakeLists.txt
-@@ -50,7 +50,7 @@ if(CMAKE_COMPILER_IS_GNUCXX OR ${CMAKE_CXX_COMPILER_ID
- endif()
- 
- # 32-bits
--if(${CMAKE_SYSTEM_NAME} MATCHES "Linux" OR ${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
-+if(${CMAKE_SYSTEM_NAME} MATCHES "Linux" OR ${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD" OR ${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
-     if(${ARCHITECTURE} STREQUAL "i386")
-         set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -m32")
-     endif()
-@@ -150,9 +150,9 @@ endif()
- 
- # Triton have to generate a syscalls table from the kernel source
- # This following code tries to find the unistd_64.h or unistd_32.h header depending on the architecture.
--if(${CMAKE_SYSTEM_NAME} MATCHES "Linux")
--    FILE(GLOB_RECURSE syscalls32_table_files /usr/include/*unistd_32.h)
--    FILE(GLOB_RECURSE syscalls64_table_files /usr/include/*unistd_64.h)
-+if(${CMAKE_SYSTEM_NAME} MATCHES "Linux" OR ${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD")
-+    FILE(GLOB_RECURSE syscalls32_table_files /usr/include/unistd.h)
-+    FILE(GLOB_RECURSE syscalls64_table_files /usr/include/unistd.h)
- endif()
- 
- macro(find_osx_syscall path)
-@@ -197,7 +197,7 @@ macro(gen_syscall bits)
- endmacro()
- 
- # Note: Windows ?!
--if(${CMAKE_SYSTEM_NAME} MATCHES "Linux" OR ${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
-+if(${CMAKE_SYSTEM_NAME} MATCHES "Linux" OR ${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD" OR ${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
-     gen_syscall(64)
- else()
-     add_custom_target(gen-syscall64
-@@ -206,7 +206,7 @@ else()
- endif()
- 
- # Syscall 32 is only available for linux users
--if(${CMAKE_SYSTEM_NAME} MATCHES "Linux")
-+if(${CMAKE_SYSTEM_NAME} MATCHES "Linux" OR ${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD")
-     gen_syscall(32)
- else()
-     add_custom_target(gen-syscall32
diff --git a/sysutils/triton/files/patch-src_libtriton_includes_triton_syscalls.hpp b/sysutils/triton/files/patch-src_libtriton_includes_triton_syscalls.hpp
deleted file mode 100644
index 7b9e26acb672..000000000000
--- a/sysutils/triton/files/patch-src_libtriton_includes_triton_syscalls.hpp
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/libtriton/includes/triton/syscalls.hpp.orig	2020-02-22 23:40:16 UTC
-+++ src/libtriton/includes/triton/syscalls.hpp
-@@ -10,7 +10,7 @@
- 
- #if defined(__unix__) || defined(__APPLE__)
- 
--#ifdef __APPLE__
-+#if defined(__APPLE__) || defined(__FreeBSD__)
-   #include <sys/syscall.h>
- #elif defined(__ANDROID___)
-   #if defined(__aarch64__)
diff --git a/sysutils/triton/files/patch-src_scripts_extract__syscall.py b/sysutils/triton/files/patch-src_scripts_extract__syscall.py
deleted file mode 100644
index 273535b703a4..000000000000
--- a/sysutils/triton/files/patch-src_scripts_extract__syscall.py
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/scripts/extract_syscall.py.orig	2020-02-23 00:00:42 UTC
-+++ src/scripts/extract_syscall.py
-@@ -41,6 +41,8 @@ if __name__ == "__main__":
- 
-     if platform.system() == 'Linux':
-         regex = re.compile(r"#define\s+(__NR_)(\w+)\s+(\d+)")
-+    elif platform.system() == 'FreeBSD':
-+        regex = re.compile(r"#define\s+(__NR_)(\w+)\s+(\d+)")
-     elif platform.system() == 'Darwin':
-         regex = re.compile(r"#define\s+(SYS_)(\w+)\s+(\d+)")
-     else:
diff --git a/sysutils/triton/pkg-plist b/sysutils/triton/pkg-plist
index a917780ddeac..48e7d23df0b5 100644
--- a/sysutils/triton/pkg-plist
+++ b/sysutils/triton/pkg-plist
@@ -18,11 +18,11 @@ include/triton/astRepresentation.hpp
 include/triton/astRepresentationInterface.hpp
 include/triton/astSmtRepresentation.hpp
 include/triton/bitsVector.hpp
+include/triton/bitwuzlaSolver.hpp
 include/triton/callbacks.hpp
 include/triton/callbacksEnums.hpp
 include/triton/comparableFunctor.hpp
 include/triton/config.hpp
-include/triton/config.hpp.in
 include/triton/coreUtils.hpp
 include/triton/cpuInterface.hpp
 include/triton/cpuSize.hpp
@@ -32,17 +32,18 @@ include/triton/externalLibs.hpp
 include/triton/immediate.hpp
 include/triton/instruction.hpp
 include/triton/irBuilder.hpp
+include/triton/liftingEngine.hpp
+include/triton/liftingToLLVM.hpp
+include/triton/liftingToPython.hpp
+include/triton/liftingToSMT.hpp
+include/triton/llvmToTriton.hpp
 include/triton/memoryAccess.hpp
 include/triton/modes.hpp
 include/triton/modesEnums.hpp
 include/triton/operandWrapper.hpp
+include/triton/oracleEntry.hpp
 include/triton/pathConstraint.hpp
 include/triton/pathManager.hpp
-include/triton/py3c_compat.h
-include/triton/pythonBindings.hpp
-include/triton/pythonObjects.hpp
-include/triton/pythonUtils.hpp
-include/triton/pythonXFunctions.hpp
 include/triton/register.hpp
 include/triton/semanticsInterface.hpp
 include/triton/shortcutRegister.hpp
@@ -55,19 +56,24 @@ include/triton/symbolicEnums.hpp
 include/triton/symbolicExpression.hpp
 include/triton/symbolicSimplification.hpp
 include/triton/symbolicVariable.hpp
-include/triton/syscalls.hpp
-include/triton/syscalls.hpp.orig
+include/triton/synthesisResult.hpp
+include/triton/synthesizer.hpp
 include/triton/taintEngine.hpp
-include/triton/tritonToZ3Ast.hpp
+include/triton/tritonToBitwuzla.hpp
+include/triton/tritonToLLVM.hpp
+include/triton/tritonToZ3.hpp
 include/triton/tritonTypes.hpp
-include/triton/unix.hpp
 include/triton/version.hpp
-include/triton/version.hpp.in
 include/triton/x86.spec
 include/triton/x8664Cpu.hpp
 include/triton/x86Cpu.hpp
 include/triton/x86Semantics.hpp
 include/triton/x86Specifications.hpp
 include/triton/z3Solver.hpp
-include/triton/z3ToTritonAst.hpp
+include/triton/z3ToTriton.hpp
+lib/cmake/triton/tritonConfig.cmake
+lib/cmake/triton/tritonConfigVersion.cmake
+lib/cmake/triton/tritonTargets-%%CMAKE_BUILD_TYPE%%.cmake
+lib/cmake/triton/tritonTargets.cmake
 lib/libtriton.so
+%%PYTHON%%%%PYTHON_SITELIBDIR%%/triton.so