git: 6ed1bd442abd - main - lang/rizin-cutter: Reverse engineering platform powered by Rizin

From: Gleb Popov <arrowd_at_FreeBSD.org>
Date: Sat, 30 Mar 2024 18:27:49 UTC
The branch main has been updated by arrowd:

URL: https://cgit.FreeBSD.org/ports/commit/?id=6ed1bd442abdc56a68b1eeebbb0b0a73ebb4bd08

commit 6ed1bd442abdc56a68b1eeebbb0b0a73ebb4bd08
Author:     Er2 <er2@dismail.de>
AuthorDate: 2024-03-30 18:23:59 +0000
Commit:     Gleb Popov <arrowd@FreeBSD.org>
CommitDate: 2024-03-30 18:26:24 +0000

    lang/rizin-cutter: Reverse engineering platform powered by Rizin
---
 lang/Makefile                                      |   1 +
 lang/rizin-cutter/Makefile                         |  28 +++
 lang/rizin-cutter/distinfo                         |   5 +
 .../files/patch-src_common_UpdateWorker.h          |  16 ++
 .../files/patch-src_dialogs_AboutDialog.ui         |  22 +++
 .../files/patch-src_dialogs_WelcomeDialog.ui       |  12 ++
 lang/rizin-cutter/pkg-descr                        |   3 +
 lang/rizin-cutter/pkg-plist                        | 191 +++++++++++++++++++++
 8 files changed, 278 insertions(+)

diff --git a/lang/Makefile b/lang/Makefile
index a9d2dd3a661e..ddf8407b98e1 100644
--- a/lang/Makefile
+++ b/lang/Makefile
@@ -320,6 +320,7 @@
     SUBDIR += rexx-wrapper
     SUBDIR += rhino
     SUBDIR += rizin
+    SUBDIR += rizin-cutter
     SUBDIR += ruby30
     SUBDIR += ruby31
     SUBDIR += ruby32
diff --git a/lang/rizin-cutter/Makefile b/lang/rizin-cutter/Makefile
new file mode 100644
index 000000000000..9b12aae344b8
--- /dev/null
+++ b/lang/rizin-cutter/Makefile
@@ -0,0 +1,28 @@
+PORTNAME=	cutter
+PORTVERSION=	2.3.4
+DISTVERSIONPREFIX=v
+CATEGORIES=	lang devel
+PKGNAMEPREFIX=	rizin-
+
+MAINTAINER=	arrowd@FreeBSD.org
+COMMENT=	Free and Open Source Reverse Engineering Platform
+WWW=		https://cutter.re/
+
+LICENSE=	GPLv3
+LICENSE_FILE=	${WRKSRC}/COPYING
+
+BUILD_DEPENDS=	${PYTHON_PKGNAMEPREFIX}pyaml>=23.5.9:textproc/py-pyaml@${PY_FLAVOR}
+LIB_DEPENDS=	librz_core.so:lang/rizin \
+		libgvc.so:graphics/graphviz
+
+USES=		cmake desktop-file-utils pkgconfig python:env qt:6
+
+USE_GITHUB=	yes
+GH_ACCOUNT=	rizinorg
+GH_TUPLE=	rizinorg:cutter-translations:8358f17:translations/src/translations
+
+USE_QT=		5compat base svg tools
+
+CMAKE_ARGS=	-DCUTTER_USE_BUNDLED_RIZIN=OFF -DCUTTER_QT6=ON
+
+.include <bsd.port.mk>
diff --git a/lang/rizin-cutter/distinfo b/lang/rizin-cutter/distinfo
new file mode 100644
index 000000000000..74804177dd31
--- /dev/null
+++ b/lang/rizin-cutter/distinfo
@@ -0,0 +1,5 @@
+TIMESTAMP = 1711647661
+SHA256 (rizinorg-cutter-v2.3.4_GH0.tar.gz) = 5dc07d6a4903ccdb6c031310a85377793edf24dc0b8990e70a8f5c94af06a2a2
+SIZE (rizinorg-cutter-v2.3.4_GH0.tar.gz) = 2699925
+SHA256 (rizinorg-cutter-translations-8358f17_GH0.tar.gz) = 31aecb9d85a4fa324f0c98e436bba5339341e526b4b18ae3def4a2befa9991fd
+SIZE (rizinorg-cutter-translations-8358f17_GH0.tar.gz) = 1106205
diff --git a/lang/rizin-cutter/files/patch-src_common_UpdateWorker.h b/lang/rizin-cutter/files/patch-src_common_UpdateWorker.h
new file mode 100644
index 000000000000..76574ec535bc
--- /dev/null
+++ b/lang/rizin-cutter/files/patch-src_common_UpdateWorker.h
@@ -0,0 +1,16 @@
+--- src/common/UpdateWorker.h.orig	2024-03-28 17:50:45 UTC
++++ src/common/UpdateWorker.h
+@@ -3,11 +3,8 @@
+ 
+ #include <QtGlobal>
+ 
+-#if (QT_VERSION >= QT_VERSION_CHECK(5, 6, 0))
+-#    define CUTTER_UPDATE_WORKER_AVAILABLE 1
+-#else
+-#    define CUTTER_UPDATE_WORKER_AVAILABLE 0
+-#endif
++// FreeBSD: Forcively disable update worker
++#define CUTTER_UPDATE_WORKER_AVAILABLE 0
+ 
+ #if CUTTER_UPDATE_WORKER_AVAILABLE
+ #    include <QDir>
diff --git a/lang/rizin-cutter/files/patch-src_dialogs_AboutDialog.ui b/lang/rizin-cutter/files/patch-src_dialogs_AboutDialog.ui
new file mode 100644
index 000000000000..13e86c0ac79a
--- /dev/null
+++ b/lang/rizin-cutter/files/patch-src_dialogs_AboutDialog.ui
@@ -0,0 +1,22 @@
+--- src/dialogs/AboutDialog.ui.orig	2024-03-28 18:01:11 UTC
++++ src/dialogs/AboutDialog.ui
+@@ -53,6 +53,9 @@
+        <property name="text">
+         <string>Check for updates on start</string>
+        </property>
++       <property name="disabled">
++        <bool>true</bool>
++       </property>
+       </widget>
+      </item>
+      <item row="3" column="1">
+@@ -65,6 +68,9 @@
+        </property>
+        <property name="text">
+         <string>Check for updates</string>
++       </property>
++       <property name="disabled">
++        <bool>true</bool>
+        </property>
+       </widget>
+      </item>
diff --git a/lang/rizin-cutter/files/patch-src_dialogs_WelcomeDialog.ui b/lang/rizin-cutter/files/patch-src_dialogs_WelcomeDialog.ui
new file mode 100644
index 000000000000..eded23e29d0d
--- /dev/null
+++ b/lang/rizin-cutter/files/patch-src_dialogs_WelcomeDialog.ui
@@ -0,0 +1,12 @@
+--- src/dialogs/WelcomeDialog.ui.orig	2024-03-28 18:05:38 UTC
++++ src/dialogs/WelcomeDialog.ui
+@@ -228,6 +228,9 @@
+            <property name="text">
+             <string>Check for updates on start</string>
+            </property>
++           <property name="disabled">
++            <bool>true</bool>
++           </property>
+           </widget>
+          </item>
+         </layout>
diff --git a/lang/rizin-cutter/pkg-descr b/lang/rizin-cutter/pkg-descr
new file mode 100644
index 000000000000..2a886eaa112e
--- /dev/null
+++ b/lang/rizin-cutter/pkg-descr
@@ -0,0 +1,3 @@
+Cutter is a free and open-source reverse engineering platform powered by Rizin.
+It aims at being an advanced and customizable reverse engineering platform while
+keeping the user experience in mind.
diff --git a/lang/rizin-cutter/pkg-plist b/lang/rizin-cutter/pkg-plist
new file mode 100644
index 000000000000..0d9ecf92b13b
--- /dev/null
+++ b/lang/rizin-cutter/pkg-plist
@@ -0,0 +1,191 @@
+bin/cutter
+include/cutter/CutterApplication.h
+include/cutter/common/AddressableItemModel.h
+include/cutter/common/AnalysisTask.h
+include/cutter/common/AsyncTask.h
+include/cutter/common/BasicBlockHighlighter.h
+include/cutter/common/BasicInstructionHighlighter.h
+include/cutter/common/BinaryTrees.h
+include/cutter/common/BugReporting.h
+include/cutter/common/CachedFontMetrics.h
+include/cutter/common/ColorThemeWorker.h
+include/cutter/common/Colors.h
+include/cutter/common/CommandTask.h
+include/cutter/common/Configuration.h
+include/cutter/common/CutterLayout.h
+include/cutter/common/CutterSeekable.h
+include/cutter/common/Decompiler.h
+include/cutter/common/DecompilerHighlighter.h
+include/cutter/common/DirectionalComboBox.h
+include/cutter/common/FunctionsTask.h
+include/cutter/common/Helpers.h
+include/cutter/common/HighDpiPixmap.h
+include/cutter/common/Highlighter.h
+include/cutter/common/IOModesController.h
+include/cutter/common/InitialOptions.h
+include/cutter/common/Json.h
+include/cutter/common/JsonModel.h
+include/cutter/common/LinkedListPool.h
+include/cutter/common/MdHighlighter.h
+include/cutter/common/ProgressIndicator.h
+include/cutter/common/RefreshDeferrer.h
+include/cutter/common/ResourcePaths.h
+include/cutter/common/RichTextPainter.h
+include/cutter/common/RizinTask.h
+include/cutter/common/RunScriptTask.h
+include/cutter/common/SelectionHighlight.h
+include/cutter/common/SettingsUpgrade.h
+include/cutter/common/StringsTask.h
+include/cutter/common/SvgIconEngine.h
+include/cutter/common/SyntaxHighlighter.h
+include/cutter/common/TempConfig.h
+include/cutter/common/UpdateWorker.h
+include/cutter/core/Basefind.h
+include/cutter/core/Cutter.h
+include/cutter/core/CutterCommon.h
+include/cutter/core/CutterDescriptions.h
+include/cutter/core/CutterJson.h
+include/cutter/core/MainWindow.h
+include/cutter/core/RizinCpp.h
+include/cutter/dialogs/AboutDialog.h
+include/cutter/dialogs/ArenaInfoDialog.h
+include/cutter/dialogs/AsyncTaskDialog.h
+include/cutter/dialogs/AttachProcDialog.h
+include/cutter/dialogs/BreakpointsDialog.h
+include/cutter/dialogs/CommentsDialog.h
+include/cutter/dialogs/EditFunctionDialog.h
+include/cutter/dialogs/EditInstructionDialog.h
+include/cutter/dialogs/EditMethodDialog.h
+include/cutter/dialogs/EditStringDialog.h
+include/cutter/dialogs/EditVariablesDialog.h
+include/cutter/dialogs/FlagDialog.h
+include/cutter/dialogs/GlibcHeapBinsDialog.h
+include/cutter/dialogs/GlibcHeapInfoDialog.h
+include/cutter/dialogs/GlobalVariableDialog.h
+include/cutter/dialogs/HexdumpRangeDialog.h
+include/cutter/dialogs/InitialOptionsDialog.h
+include/cutter/dialogs/LayoutManager.h
+include/cutter/dialogs/MapFileDialog.h
+include/cutter/dialogs/MultitypeFileSaveDialog.h
+include/cutter/dialogs/NativeDebugDialog.h
+include/cutter/dialogs/NewFileDialog.h
+include/cutter/dialogs/RemoteDebugDialog.h
+include/cutter/dialogs/RizinPluginsDialog.h
+include/cutter/dialogs/RizinTaskDialog.h
+include/cutter/dialogs/SetToDataDialog.h
+include/cutter/dialogs/TypesInteractionDialog.h
+include/cutter/dialogs/VersionInfoDialog.h
+include/cutter/dialogs/WelcomeDialog.h
+include/cutter/dialogs/WriteCommandsDialogs.h
+include/cutter/dialogs/XrefsDialog.h
+include/cutter/dialogs/preferences/AnalysisOptionsWidget.h
+include/cutter/dialogs/preferences/AppearanceOptionsWidget.h
+include/cutter/dialogs/preferences/AsmOptionsWidget.h
+include/cutter/dialogs/preferences/ColorThemeEditDialog.h
+include/cutter/dialogs/preferences/DebugOptionsWidget.h
+include/cutter/dialogs/preferences/GraphOptionsWidget.h
+include/cutter/dialogs/preferences/InitializationFileEditor.h
+include/cutter/dialogs/preferences/PluginsOptionsWidget.h
+include/cutter/dialogs/preferences/PreferenceCategory.h
+include/cutter/dialogs/preferences/PreferencesDialog.h
+include/cutter/menus/AddressableItemContextMenu.h
+include/cutter/menus/DecompilerContextMenu.h
+include/cutter/menus/DisassemblyContextMenu.h
+include/cutter/menus/FlirtContextMenu.h
+include/cutter/plugins/CutterPlugin.h
+include/cutter/plugins/PluginManager.h
+include/cutter/tools/basefind/BaseFindDialog.h
+include/cutter/tools/basefind/BaseFindResultsDialog.h
+include/cutter/tools/basefind/BaseFindSearchDialog.h
+include/cutter/widgets/AddressableDockWidget.h
+include/cutter/widgets/AddressableItemList.h
+include/cutter/widgets/BacktraceWidget.h
+include/cutter/widgets/BoolToggleDelegate.h
+include/cutter/widgets/BreakpointWidget.h
+include/cutter/widgets/CallGraph.h
+include/cutter/widgets/ClassesWidget.h
+include/cutter/widgets/ColorPicker.h
+include/cutter/widgets/ColorThemeComboBox.h
+include/cutter/widgets/ColorThemeListView.h
+include/cutter/widgets/ComboQuickFilterView.h
+include/cutter/widgets/CommentsWidget.h
+include/cutter/widgets/ConsoleWidget.h
+include/cutter/widgets/CutterDockWidget.h
+include/cutter/widgets/CutterGraphView.h
+include/cutter/widgets/CutterTreeView.h
+include/cutter/widgets/CutterTreeWidget.h
+include/cutter/widgets/Dashboard.h
+include/cutter/widgets/DebugActions.h
+include/cutter/widgets/DecompilerWidget.h
+include/cutter/widgets/DisassemblerGraphView.h
+include/cutter/widgets/DisassemblyWidget.h
+include/cutter/widgets/EntrypointWidget.h
+include/cutter/widgets/ExportsWidget.h
+include/cutter/widgets/FlagsWidget.h
+include/cutter/widgets/FlirtWidget.h
+include/cutter/widgets/FunctionsWidget.h
+include/cutter/widgets/GlibcHeapWidget.h
+include/cutter/widgets/GraphGridLayout.h
+include/cutter/widgets/GraphHorizontalAdapter.h
+include/cutter/widgets/GraphLayout.h
+include/cutter/widgets/GraphView.h
+include/cutter/widgets/GraphWidget.h
+include/cutter/widgets/GraphvizLayout.h
+include/cutter/widgets/HeadersWidget.h
+include/cutter/widgets/HeapBinsGraphView.h
+include/cutter/widgets/HeapDockWidget.h
+include/cutter/widgets/HexWidget.h
+include/cutter/widgets/HexdumpWidget.h
+include/cutter/widgets/ImportsWidget.h
+include/cutter/widgets/ListDockWidget.h
+include/cutter/widgets/MemoryDockWidget.h
+include/cutter/widgets/MemoryMapWidget.h
+include/cutter/widgets/Omnibar.h
+include/cutter/widgets/OverviewView.h
+include/cutter/widgets/OverviewWidget.h
+include/cutter/widgets/ProcessesWidget.h
+include/cutter/widgets/QuickFilterView.h
+include/cutter/widgets/RegisterRefsWidget.h
+include/cutter/widgets/RegistersWidget.h
+include/cutter/widgets/RelocsWidget.h
+include/cutter/widgets/ResourcesWidget.h
+include/cutter/widgets/RizinGraphWidget.h
+include/cutter/widgets/SdbWidget.h
+include/cutter/widgets/SearchWidget.h
+include/cutter/widgets/SectionsWidget.h
+include/cutter/widgets/SegmentsWidget.h
+include/cutter/widgets/SimpleTextGraphView.h
+include/cutter/widgets/StackWidget.h
+include/cutter/widgets/StringsWidget.h
+include/cutter/widgets/SymbolsWidget.h
+include/cutter/widgets/ThreadsWidget.h
+include/cutter/widgets/TypesWidget.h
+include/cutter/widgets/VTablesWidget.h
+include/cutter/widgets/VisualNavbar.h
+lib/cmake/Cutter/CutterConfig.cmake
+lib/cmake/Cutter/CutterConfigVersion.cmake
+lib/cmake/Cutter/CutterTargets-%%CMAKE_BUILD_TYPE%%.cmake
+lib/cmake/Cutter/CutterTargets.cmake
+share/applications/re.rizin.cutter.desktop
+share/icons/hicolor/scalable/apps/cutter.svg
+share/rizin/cutter/translations/cutter_ar.qm
+share/rizin/cutter/translations/cutter_bn.qm
+share/rizin/cutter/translations/cutter_ca.qm
+share/rizin/cutter/translations/cutter_de.qm
+share/rizin/cutter/translations/cutter_es.qm
+share/rizin/cutter/translations/cutter_fa.qm
+share/rizin/cutter/translations/cutter_fr.qm
+share/rizin/cutter/translations/cutter_he.qm
+share/rizin/cutter/translations/cutter_hi.qm
+share/rizin/cutter/translations/cutter_it.qm
+share/rizin/cutter/translations/cutter_ja.qm
+share/rizin/cutter/translations/cutter_ko.qm
+share/rizin/cutter/translations/cutter_nl.qm
+share/rizin/cutter/translations/cutter_pt.qm
+share/rizin/cutter/translations/cutter_ro.qm
+share/rizin/cutter/translations/cutter_ru.qm
+share/rizin/cutter/translations/cutter_tr.qm
+share/rizin/cutter/translations/cutter_uk.qm
+share/rizin/cutter/translations/cutter_ur.qm
+share/rizin/cutter/translations/cutter_vi.qm
+share/rizin/cutter/translations/cutter_zh.qm