"-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)

Reply via email to