Package: blhc
Version: 0.13+git20230913.fb2c46d-1
Severity: normal

This bug appears to be a revival of #994422.  It appears the that regex 
exception added there needs to be slightly tweaked
to apply to all affected scenarios.

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=994422

It affects Privacy Browser as well as other packages like Falkon and possibly 
anything built with CMake.

https://qa.debian.org/bls/packages/p/privacybrowser.html

https://tracker.debian.org/media/packages/f/falkon/changelog-23.08.2-1

An example build log demonstrating the problem:

https://buildd.debian.org/status/fetch.php?pkg=privacybrowser&arch=amd64&ver=0.5-1&stamp=1697132593&raw=0

blhc complains about missing -D_FORTIFY_SOURCE=2 for the following line:

/usr/bin/c++ -std=gnu++11 -dM -E -c 
/usr/share/cmake-3.27/Modules/CMakeCXXCompilerABI.cpp -DKCOREADDONS_LIB
-DQT_CONCURRENT_LIB -DQT_CORE_LIB -DQT_DBUS_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB 
-DQT_NO_DEBUG -DQT_POSITIONING_LIB
-DQT_PRINTSUPPORT_LIB -DQT_QMLMODELS_LIB -DQT_QML_LIB -DQT_QUICK_LIB 
-DQT_SQL_LIB -DQT_WEBCHANNEL_LIB
-DQT_WEBENGINECORE_LIB -DQT_WEBENGINEWIDGETS_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB 
-D_GNU_SOURCE -D_LARGEFILE64_SOURCE
-I/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/src -I/<<PKGBUILDDIR>>/src 
-I/usr/include/x86_64-linux-gnu/qt5
-I/usr/include/x86_64-linux-gnu/qt5/QtCore 
-I/usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++
-I/usr/include/x86_64-linux-gnu/qt5/QtGui 
-I/usr/include/x86_64-linux-gnu/qt5/QtSql
-I/usr/include/x86_64-linux-gnu/qt5/QtPrintSupport 
-I/usr/include/x86_64-linux-gnu/qt5/QtWidgets
-I/usr/include/x86_64-linux-gnu/qt5/QtWebEngineCore 
-I/usr/include/x86_64-linux-gnu/qt5/QtQuick
-I/usr/include/x86_64-linux-gnu/qt5/QtQmlModels 
-I/usr/include/x86_64-linux-gnu/qt5/QtQml
-I/usr/include/x86_64-linux-gnu/qt5/QtNetwork 
-I/usr/include/x86_64-linux-gnu/qt5/QtWebChannel
-I/usr/include/x86_64-linux-gnu/qt5/QtPositioning 
-I/usr/include/x86_64-linux-gnu/qt5/QtWebEngineWidgets
-I/usr/include/KF5/KCompletion -I/usr/include/KF5 
-I/usr/include/KF5/KConfigWidgets -I/usr/include/KF5/KWidgetsAddons
-I/usr/include/KF5/KConfig -I/usr/include/KF5/KConfigGui 
-I/usr/include/x86_64-linux-gnu/qt5/QtXml
-I/usr/include/KF5/KConfigCore -I/usr/include/KF5/KCoreAddons 
-I/usr/include/KF5/KCodecs -I/usr/include/KF5/KAuthWidgets
-I/usr/include/KF5/KAuthCore -I/usr/include/KF5/KAuth -I/usr/include/KF5/KCrash 
-I/usr/include/KF5/KDBusAddons
-I/usr/include/x86_64-linux-gnu/qt5/QtDBus -I/usr/include/KF5/KDocTools 
-I/usr/include/KF5/KI18n -I/usr/include/KF5/KNotifications
-I/usr/include/KF5/KIOCore -I/usr/include/KF5/KIO -I/usr/include/KF5/KService 
-I/usr/include/x86_64-linux-gnu/qt5/QtConcurrent
-I/usr/include/KF5/KIOWidgets -I/usr/include/KF5/KIOGui 
-I/usr/include/KF5/KWindowSystem -I/usr/include/KF5/KJobWidgets
-I/usr/include/KF5/Solid -I/usr/include/KF5/KXmlGui -I/usr/include 
-I/usr/include/c++/13 -I/usr/include/x86_64-linux-gnu/c++/13
-I/usr/include/c++/13/backward -I/usr/lib/gcc/x86_64-linux-gnu/13/include 
-I/usr/local/include -I/usr/include/x86_64-linux-gnu

The -D_FORTIFY_SOURCE=2 flag is specified later in the build where it is 
actually needed.  For example:

cd /<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/src && /usr/bin/c++ -DKCOREADDONS_LIB 
-DQT_CONCURRENT_LIB -DQT_CORE_LIB -DQT_DBUS_LIB
-DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_NO_DEBUG -DQT_POSITIONING_LIB 
-DQT_PRINTSUPPORT_LIB -DQT_QMLMODELS_LIB -DQT_QML_LIB
-DQT_QUICK_LIB -DQT_SQL_LIB -DQT_WEBCHANNEL_LIB -DQT_WEBENGINECORE_LIB 
-DQT_WEBENGINEWIDGETS_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB
-D_GNU_SOURCE -D_LARGEFILE64_SOURCE -I/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/src 
-I/<<PKGBUILDDIR>>/src
-I/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/src/privacybrowser_autogen/include 
-isystem /usr/include/x86_64-linux-gnu/qt5
-isystem /usr/include/x86_64-linux-gnu/qt5/QtCore -isystem 
/usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++
-isystem /usr/include/x86_64-linux-gnu/qt5/QtGui -isystem 
/usr/include/x86_64-linux-gnu/qt5/QtSql
-isystem /usr/include/x86_64-linux-gnu/qt5/QtPrintSupport -isystem 
/usr/include/x86_64-linux-gnu/qt5/QtWidgets
-isystem /usr/include/x86_64-linux-gnu/qt5/QtWebEngineCore -isystem 
/usr/include/x86_64-linux-gnu/qt5/QtQuick
-isystem /usr/include/x86_64-linux-gnu/qt5/QtQmlModels -isystem 
/usr/include/x86_64-linux-gnu/qt5/QtQml
-isystem /usr/include/x86_64-linux-gnu/qt5/QtNetwork -isystem 
/usr/include/x86_64-linux-gnu/qt5/QtWebChannel
-isystem /usr/include/x86_64-linux-gnu/qt5/QtPositioning -isystem 
/usr/include/x86_64-linux-gnu/qt5/QtWebEngineWidgets
-isystem /usr/include/KF5/KCompletion -isystem /usr/include/KF5 -isystem 
/usr/include/KF5/KConfigWidgets
-isystem /usr/include/KF5/KWidgetsAddons -isystem /usr/include/KF5/KConfig 
-isystem /usr/include/KF5/KConfigGui
-isystem /usr/include/x86_64-linux-gnu/qt5/QtXml -isystem 
/usr/include/KF5/KConfigCore -isystem /usr/include/KF5/KCoreAddons
-isystem /usr/include/KF5/KCodecs -isystem /usr/include/KF5/KAuthWidgets 
-isystem /usr/include/KF5/KAuthCore
-isystem /usr/include/KF5/KAuth -isystem /usr/include/KF5/KCrash -isystem 
/usr/include/KF5/KDBusAddons
-isystem /usr/include/x86_64-linux-gnu/qt5/QtDBus -isystem 
/usr/include/KF5/KDocTools -isystem /usr/include/KF5/KI18n
-isystem /usr/include/KF5/KNotifications -isystem /usr/include/KF5/KIOCore 
-isystem /usr/include/KF5/KIO
-isystem /usr/include/KF5/KService -isystem 
/usr/include/x86_64-linux-gnu/qt5/QtConcurrent -isystem 
/usr/include/KF5/KIOWidgets
-isystem /usr/include/KF5/KIOGui -isystem /usr/include/KF5/KWindowSystem 
-isystem /usr/include/KF5/KJobWidgets
-isystem /usr/include/KF5/Solid -isystem /usr/include/KF5/KXmlGui -g -O2 
-ffile-prefix-map=/<<PKGBUILDDIR>>=.
-fstack-protector-strong -fstack-clash-protection -Wformat 
-Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2
-fno-operator-names -fno-exceptions -Wall -Wextra -Wcast-align 
-Wchar-subscripts -Wformat-security -Wno-long-long -Wpointer-arith
-Wundef -Wnon-virtual-dtor -Woverloaded-virtual -Werror=return-type 
-Werror=init-self -Wvla -Wdate-time -Wsuggest-override
-Wlogical-op -std=gnu++11 -fPIE -fvisibility=hidden -fvisibility-inlines-hidden 
-fPIC -MD -MT
src/CMakeFiles/privacybrowser.dir/main.cpp.o -MF 
CMakeFiles/privacybrowser.dir/main.cpp.o.d -o 
CMakeFiles/privacybrowser.dir/main.cpp.o
-c /<<PKGBUILDDIR>>/src/main.cpp

Reply via email to