Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 28 Apr 2026 08:13:30 +0000
From:      Yuri Victorovich <yuri@FreeBSD.org>
To:        ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org
Subject:   git: d31576dbca6f - main - editors/notepadnext: update 0.=?utf-8?Q?12 =E2=86=92 0?=.14
Message-ID:  <69f06c2a.3b29b.1a6f897c@gitrepo.freebsd.org>

index | next in thread | raw e-mail

The branch main has been updated by yuri:

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

commit d31576dbca6f402a837904bdbd301ab9c76220d8
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2026-04-28 08:12:21 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2026-04-28 08:13:28 +0000

    editors/notepadnext: update 0.12 → 0.14
---
 editors/notepadnext/Makefile                       | 22 +++++++---
 editors/notepadnext/distinfo                       |  6 +--
 .../files/patch-src_NotepadNext_ScintillaNext.cpp  | 11 -----
 .../files/patch-src_QSimpleUpdater_CMakeLists.txt  | 36 +++++++++++++++
 .../notepadnext/files/patch-src_ScintillaNext.cpp  | 11 +++++
 .../files/patch-src_ads_src_CMakeLists.txt         | 35 +++++++++++++++
 .../patch-src_editorconfig-core-qt_CMakeLists.txt  | 28 ++++++++++++
 .../files/patch-thirdparty_CMakeLists.txt          | 51 ++++++++++++++++++++++
 8 files changed, 179 insertions(+), 21 deletions(-)

diff --git a/editors/notepadnext/Makefile b/editors/notepadnext/Makefile
index 9085bd4395cf..40238ca41300 100644
--- a/editors/notepadnext/Makefile
+++ b/editors/notepadnext/Makefile
@@ -1,6 +1,6 @@
 PORTNAME=	notepadnext
 DISTVERSIONPREFIX=	v
-DISTVERSION=	0.12
+DISTVERSION=	0.14
 CATEGORIES=	editors
 
 MAINTAINER=	yuri@FreeBSD.org
@@ -10,10 +10,12 @@ WWW=		https://github.com/dail8859/NotepadNext
 LICENSE=	GPLv3
 LICENSE_FILE=	${WRKSRC}/LICENSE
 
-LIB_DEPENDS=	libuchardet.so:textproc/uchardet
+LIB_DEPENDS=	libuchardet.so:textproc/uchardet \
+		libxkbcommon.so:x11/libxkbcommon
 
-USES=		desktop-file-utils gl qmake qt:5 xorg
-USE_QT=		core gui network printsupport widgets buildtools:build linguisttools:build
+USES=		cmake desktop-file-utils gl localbase:ldflags qt:6 xorg
+USE_GL=		gl opengl
+USE_QT=		base 5compat tools:build
 USE_GL=		gl
 USE_XORG=	xcb
 
@@ -27,9 +29,9 @@ GH_TUPLE=	alex-spataru:QSimpleUpdater:3cc832c:alex_spataru_QSimpleUpdater/src/QS
 		githubuser0xFFFF:Qt-Advanced-Docking-System:df1fa27:githubuser0xFFFF_Qt_Advanced_Docking_System/src/ads \
 		itay-grudev:SingleApplication:8c48163:itay_grudev_SingleApplication/src/singleapplication
 
-QMAKE_SOURCE_PATH=	${WRKSRC}/src/NotepadNext.pro
-
-CXXFLAGS+=	-I${LOCALBASE}/include/uchardet
+CXXFLAGS+=	-I${LOCALBASE}/include/uchardet \
+		-I${WRKSRC}/src/ads/src \
+		-I${WRKSRC}/src/editorconfig-core-qt
 LDFLAGS+=	-luchardet
 
 PLIST_FILES=	bin/NotepadNext \
@@ -37,4 +39,10 @@ PLIST_FILES=	bin/NotepadNext \
 		share/icons/hicolor/scalable/apps/NotepadNext.svg \
 		share/icons/hicolor/scalable/mimetypes/NotepadNext.svg
 
+post-extract: # fix wrong handling of IPC keys in singleapplication.cpp
+	@${REINPLACE_CMD} \
+		-e "s/QSharedMemory( QNativeIpcKey( d->blockServerName ) );/QSharedMemory( QNativeIpcKey( d->blockServerName, QNativeIpcKey::legacyDefaultTypeForOs() ) );/" \
+		${WRKSRC}/src/singleapplication/singleapplication.cpp
+
+
 .include <bsd.port.mk>
diff --git a/editors/notepadnext/distinfo b/editors/notepadnext/distinfo
index ca9f80127319..caafccbcd13c 100644
--- a/editors/notepadnext/distinfo
+++ b/editors/notepadnext/distinfo
@@ -1,6 +1,6 @@
-TIMESTAMP = 1750132747
-SHA256 (dail8859-NotepadNext-v0.12_GH0.tar.gz) = 938d16c642b30755d304f92f7560a81ad8b4fe7b8d5688c13392fc88dec2768b
-SIZE (dail8859-NotepadNext-v0.12_GH0.tar.gz) = 5367028
+TIMESTAMP = 1777356322
+SHA256 (dail8859-NotepadNext-v0.14_GH0.tar.gz) = daa6e760f0b722479a18216f257efb84557264756ff7055a729544f36f12b32e
+SIZE (dail8859-NotepadNext-v0.14_GH0.tar.gz) = 6147766
 SHA256 (alex-spataru-QSimpleUpdater-3cc832c_GH0.tar.gz) = bb54b7ba983b6f6a70220706bdb03a601e2bc59b08a0cd9d07c8a78a4dd29471
 SIZE (alex-spataru-QSimpleUpdater-3cc832c_GH0.tar.gz) = 302346
 SHA256 (editorconfig-editorconfig-core-qt-52820d59769fcba6d0ed94f685406c0383fe1a30_GH0.tar.gz) = c28d5fded91231985f2b08729dd3f9ad5adbe6d117fbd9b00ab4c5314a761f6a
diff --git a/editors/notepadnext/files/patch-src_NotepadNext_ScintillaNext.cpp b/editors/notepadnext/files/patch-src_NotepadNext_ScintillaNext.cpp
deleted file mode 100644
index cc17f4d44a2e..000000000000
--- a/editors/notepadnext/files/patch-src_NotepadNext_ScintillaNext.cpp
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/NotepadNext/ScintillaNext.cpp.orig	2022-05-26 23:25:10 UTC
-+++ src/NotepadNext/ScintillaNext.cpp
-@@ -20,7 +20,7 @@
- #include "ScintillaNext.h"
- #include "ScintillaCommenter.h"
- 
--#include "uchardet.h"
-+#include <uchardet.h>
- #include <cinttypes>
- 
- #include <QDir>
diff --git a/editors/notepadnext/files/patch-src_QSimpleUpdater_CMakeLists.txt b/editors/notepadnext/files/patch-src_QSimpleUpdater_CMakeLists.txt
new file mode 100644
index 000000000000..2cb7c224c898
--- /dev/null
+++ b/editors/notepadnext/files/patch-src_QSimpleUpdater_CMakeLists.txt
@@ -0,0 +1,36 @@
+-- Use Qt6 explicitly instead of auto-detecting between Qt5 and Qt6.
+-- Both Qt5 and Qt6 are installed in the ports build environment, and the
+-- original find_package(QT NAMES Qt6 Qt5 ...) call incorrectly picks Qt5.
+--- src/QSimpleUpdater/CMakeLists.txt.orig	2026-04-28 07:04:55 UTC
++++ src/QSimpleUpdater/CMakeLists.txt
+@@ -9,11 +9,11 @@ set(CMAKE_AUTOMOC ON)
+ set(CMAKE_AUTORCC ON)
+ set(CMAKE_AUTOMOC ON)
+ 
+-find_package(QT NAMES Qt6 Qt5 REQUIRED COMPONENTS Widgets Network)
+-find_package(Qt${QT_VERSION_MAJOR} CONFIG REQUIRED COMPONENTS Widgets Network)
++find_package(Qt6 REQUIRED COMPONENTS Widgets Network)
++find_package(Qt6 CONFIG REQUIRED COMPONENTS Widgets Network)
+ 
+ if(QSIMPLE_UPDATER_BUILD_TESTS)
+-    find_package(Qt${QT_VERSION_MAJOR} CONFIG REQUIRED COMPONENTS Test)
++    find_package(Qt6 CONFIG REQUIRED COMPONENTS Test)
+ endif()
+ 
+ add_library(QSimpleUpdater STATIC
+@@ -30,7 +30,7 @@ target_include_directories(QSimpleUpdater PUBLIC inclu
+     src/Updater.h
+ )
+ target_include_directories(QSimpleUpdater PUBLIC include)
+-target_link_libraries(QSimpleUpdater PUBLIC Qt${QT_VERSION_MAJOR}::Core Qt${QT_VERSION_MAJOR}::Widgets PRIVATE Qt${QT_VERSION_MAJOR}::Network)
++target_link_libraries(QSimpleUpdater PUBLIC Qt6::Core Qt6::Widgets PRIVATE Qt6::Network)
+ 
+ add_subdirectory(tutorial)
+ 
+@@ -44,5 +44,5 @@ if(QSIMPLE_UPDATER_BUILD_TESTS)
+         tests/Test_Downloader.h
+     )
+     add_test(NAME ApiTest COMMAND ApiTest)
+-    target_link_libraries(UnitTests PRIVATE Qt${QT_VERSION_MAJOR}::Test QSimpleUpdater)
++    target_link_libraries(UnitTests PRIVATE Qt6::Test QSimpleUpdater)
+ endif()
diff --git a/editors/notepadnext/files/patch-src_ScintillaNext.cpp b/editors/notepadnext/files/patch-src_ScintillaNext.cpp
new file mode 100644
index 000000000000..71d012f19582
--- /dev/null
+++ b/editors/notepadnext/files/patch-src_ScintillaNext.cpp
@@ -0,0 +1,11 @@
+--- src/ScintillaNext.cpp.orig	2026-04-27 22:33:55 UTC
++++ src/ScintillaNext.cpp
+@@ -22,7 +22,7 @@
+ #include "ScintillaCommenter.h"
+ 
+ #include "ByteArrayUtils.h"
+-#include "uchardet.h"
++#include <uchardet.h>
+ #include <cinttypes>
+ 
+ #include <QDir>
diff --git a/editors/notepadnext/files/patch-src_ads_src_CMakeLists.txt b/editors/notepadnext/files/patch-src_ads_src_CMakeLists.txt
new file mode 100644
index 000000000000..8b2c7660bd64
--- /dev/null
+++ b/editors/notepadnext/files/patch-src_ads_src_CMakeLists.txt
@@ -0,0 +1,35 @@
+-- Use Qt6 explicitly instead of auto-detecting between Qt5 and Qt6.
+-- Both Qt5 and Qt6 are installed in the ports build environment, and the
+-- original version detection code incorrectly picks Qt5. Set QT_VERSION_MAJOR=6
+-- explicitly since find_package(Qt6) does not set this variable (unlike
+-- find_package(QT)). Use Qt6::GuiPrivate target for private header access,
+-- replacing the Qt5-style Qt${QT_VERSION_MAJOR}Gui_PRIVATE_INCLUDE_DIRS variable.
+--- src/ads/src/CMakeLists.txt.orig	2025-03-17 09:38:10 UTC
++++ src/ads/src/CMakeLists.txt
+@@ -1,15 +1,10 @@ include(GNUInstallDirs)
+ cmake_minimum_required(VERSION 3.16)
+ project(QtAdvancedDockingSystem LANGUAGES CXX VERSION ${VERSION_SHORT})
+ include(GNUInstallDirs)
+-if (${QT_VERSION_MAJOR})
+-  message(STATUS "Forced to use Qt version ${QT_VERSION_MAJOR}")
+-  find_package(QT NAMES Qt${QT_VERSION_MAJOR} COMPONENTS Core REQUIRED)
+-else()
+-  find_package(QT NAMES Qt6 Qt5 COMPONENTS Core REQUIRED)
+-endif()
+-find_package(Qt${QT_VERSION_MAJOR} COMPONENTS Core Gui Widgets REQUIRED)
++find_package(Qt6 COMPONENTS Core Gui Widgets REQUIRED)
++set(QT_VERSION_MAJOR 6)
+ if (UNIX AND NOT APPLE)
+-    include_directories(${Qt${QT_VERSION_MAJOR}Gui_PRIVATE_INCLUDE_DIRS})
++    find_package(Qt6 COMPONENTS GuiPrivate REQUIRED)
+ endif()
+ set(CMAKE_INCLUDE_CURRENT_DIR ON)
+ if(BUILD_STATIC)
+@@ -86,6 +81,7 @@ if (UNIX AND NOT APPLE)
+                                                Qt${QT_VERSION_MAJOR}::Gui 
+                                                Qt${QT_VERSION_MAJOR}::Widgets)
+ if (UNIX AND NOT APPLE)
++  target_link_libraries(${library_name} PUBLIC Qt6::GuiPrivate)
+   if (${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD")
+       find_package(X11 REQUIRED)
+       target_link_libraries(${library_name} PUBLIC X11::xcb)
diff --git a/editors/notepadnext/files/patch-src_editorconfig-core-qt_CMakeLists.txt b/editors/notepadnext/files/patch-src_editorconfig-core-qt_CMakeLists.txt
new file mode 100644
index 000000000000..74d8825198a7
--- /dev/null
+++ b/editors/notepadnext/files/patch-src_editorconfig-core-qt_CMakeLists.txt
@@ -0,0 +1,28 @@
+-- Replace the tests-only CMakeLists.txt with one that builds the editorconfig-core-qt static library.
+-- The original file only set up tests, not the library target that NotepadNext links against.
+--- src/editorconfig-core-qt/CMakeLists.txt.orig	2022-04-09 13:00:34 UTC
++++ src/editorconfig-core-qt/CMakeLists.txt
+@@ -1,13 +1,13 @@
+-# This file is used for testing only
++cmake_minimum_required(VERSION 3.16)
++project(editorconfig-core-qt LANGUAGES CXX)
+ 
+-# To perform the test, run `cmake .` at the root of the project tree followed
+-# by ctest .
++find_package(Qt6 COMPONENTS Core REQUIRED)
+ 
+-cmake_minimum_required(VERSION 2.6)
++set(CMAKE_AUTOMOC ON)
+ 
+-# Do not check any compiler
+-project(editorconfig-core-qt NONE)
+-
+-enable_testing()
+-set(EDITORCONFIG_CMD ${CMAKE_BINARY_DIR}/editorconfig-app.exe)
+-add_subdirectory(tests)
++add_library(editorconfig-core-qt STATIC
++    EditorConfig.cpp
++    EditorConfig.h
++)
++target_include_directories(editorconfig-core-qt PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
++target_link_libraries(editorconfig-core-qt PUBLIC Qt6::Core)
diff --git a/editors/notepadnext/files/patch-thirdparty_CMakeLists.txt b/editors/notepadnext/files/patch-thirdparty_CMakeLists.txt
new file mode 100644
index 000000000000..e6b176b49b05
--- /dev/null
+++ b/editors/notepadnext/files/patch-thirdparty_CMakeLists.txt
@@ -0,0 +1,51 @@
+-- Replace CPM (CMake Package Manager) dependency fetching with direct
+-- add_subdirectory calls using submodule sources already provided via
+-- GH_TUPLE in the port Makefile.  CPM requires internet access at build
+-- time which is not permitted in the ports sandbox.
+-- Also set QT_DEFAULT_MAJOR_VERSION=6 and ADS_VERSION to avoid git-based
+-- version detection (which fails outside a git repository).
+--- thirdparty/CMakeLists.txt.orig	2026-04-27 22:33:55 UTC
++++ thirdparty/CMakeLists.txt
+@@ -1,34 +1,12 @@
+-include(${CMAKE_SOURCE_DIR}/cmake/CPM.cmake)
+-
+-CPMAddPackage(
+-    NAME ads
+-    GITHUB_REPOSITORY githubuser0xFFFF/Qt-Advanced-Docking-System
+-    GIT_TAG 34b68d6eab1556cf851d24e033909332771f3dfe
+-    OPTIONS
+-        "BUILD_STATIC ON"
+-        "BUILD_EXAMPLES OFF"
+-)
+-
+-CPMAddPackage(
+-    NAME QSimpleUpdater
+-    GITHUB_REPOSITORY alex-spataru/QSimpleUpdater
+-    GIT_TAG 8e7017f7fbdc2b4b1a26ed1eef9ebcba6a50639c
+-    OPTIONS
+-        "QSIMPLE_UPDATER_BUILD_TESTS OFF"
+-)
+-
+ set(QAPPLICATION_CLASS QApplication CACHE STRING "Inheritance class for SingleApplication" FORCE)
+-CPMAddPackage(
+-    NAME SingleApplication
+-    GITHUB_REPOSITORY itay-grudev/SingleApplication
+-    GIT_TAG 494772e98cef0aa88124f154feb575cc60b08b38
+-)
+-
+-CPMAddPackage(
+-    NAME editorconfig_core_qt
+-    GITHUB_REPOSITORY editorconfig/editorconfig-core-qt
+-    GIT_TAG ab62f0554abf2bbe4d45427b36a8b2f81ca7b4ab
+-)
++set(QT_DEFAULT_MAJOR_VERSION 6 CACHE STRING "Qt version to use" FORCE)
++set(ADS_VERSION 4.4.1)
++set(BUILD_STATIC ON)
++set(BUILD_EXAMPLES OFF)
++add_subdirectory(${CMAKE_SOURCE_DIR}/src/ads ${CMAKE_BINARY_DIR}/src/ads EXCLUDE_FROM_ALL)
++add_subdirectory(${CMAKE_SOURCE_DIR}/src/singleapplication ${CMAKE_BINARY_DIR}/src/singleapplication)
++add_subdirectory(${CMAKE_SOURCE_DIR}/src/QSimpleUpdater ${CMAKE_BINARY_DIR}/src/QSimpleUpdater)
++add_subdirectory(${CMAKE_SOURCE_DIR}/src/editorconfig-core-qt ${CMAKE_BINARY_DIR}/src/editorconfig-core-qt)
+ 
+ add_subdirectory(lua)
+ add_subdirectory(scintilla)


home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?69f06c2a.3b29b.1a6f897c>