Index | Thread | Search

From:
Rafael Sadowski <rafael@sizeofvoid.org>
Subject:
Remove undefined_flag in Qt6
To:
ports@openbsd.org
Date:
Sat, 2 Aug 2025 21:37:26 +0200

Download raw body.

Thread
  • Rafael Sadowski:

    Remove undefined_flag in Qt6

"-Wl,-undefined,error" and "-Wl,--no-undefined" are set by default
in all Qt6 ports that use QtFlagHandlingHelpers.cmake which should
be all. This diff remove the both flags. Idea stolen by FreeBSD.

I think a full bulk is necessary.

Rafael

Index: Makefile.inc
===================================================================
RCS file: /cvs/ports/x11/qt6/Makefile.inc,v
diff -u -p -r1.13 Makefile.inc
--- Makefile.inc	6 Jun 2025 05:12:03 -0000	1.13
+++ Makefile.inc	2 Aug 2025 19:31:52 -0000
@@ -37,7 +37,7 @@ EXTRACT_SUFX ?=		.tar.xz
 MODULES :=		devel/cmake x11/qt6 ${MODULES}
 
 CXXFLAGS +=		-I${LOCALBASE}/include
-MODCMAKE_LDFLAGS +=	-L${LOCALBASE}/lib -lc
+MODCMAKE_LDFLAGS +=	-L${LOCALBASE}/lib
 
 CONFIGURE_ARGS +=	-DQT_GENERATE_SBOM=OFF
 
Index: qtbase/Makefile
===================================================================
RCS file: /cvs/ports/x11/qt6/qtbase/Makefile,v
diff -u -p -r1.43 Makefile
--- qtbase/Makefile	6 Jun 2025 05:12:03 -0000	1.43
+++ qtbase/Makefile	2 Aug 2025 19:31:52 -0000
@@ -4,7 +4,7 @@ COMMENT-main =		C++ general-purpose tool
 COMMENT-global =	global Qt6 documentation internals
 COMMENT-mysql =		MySQL plugin for Qt6
 COMMENT-psql =		PostgresSQL plugin for Qt6
-REVISION-main =		1
+REVISION-main =		2
 
 PKGSPEC-main =		qt6-qtbase-${QT6_PKGSPEC}
 
Index: qtbase/patches/patch-cmake_QtFlagHandlingHelpers_cmake
===================================================================
RCS file: qtbase/patches/patch-cmake_QtFlagHandlingHelpers_cmake
diff -N qtbase/patches/patch-cmake_QtFlagHandlingHelpers_cmake
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ qtbase/patches/patch-cmake_QtFlagHandlingHelpers_cmake	2 Aug 2025 19:31:52 -0000
@@ -0,0 +1,14 @@
+Index: cmake/QtFlagHandlingHelpers.cmake
+--- cmake/QtFlagHandlingHelpers.cmake.orig
++++ cmake/QtFlagHandlingHelpers.cmake
+@@ -177,6 +177,10 @@ function(qt_internal_add_link_flags_no_undefined targe
+             set(no_undefined_flag "-Wl,--no-undefined")
+         endif()
+ 
++        if (CMAKE_SYSTEM_NAME MATCHES "FreeBSD" OR CMAKE_SYSTEM_NAME MATCHES "OpenBSD")
++            set(no_undefined_flag "")
++        endif()
++
+         set(CMAKE_REQUIRED_LINK_OPTIONS ${previous_CMAKE_REQUIRED_LINK_OPTIONS})
+ 
+         if (NOT HAVE_DASH_UNDEFINED_SYMBOLS AND NOT HAVE_DASH_DASH_NO_UNDEFINED)