On 4/12/18 10:56 pm, Dave Reisner wrote:
On Tue, Dec 04, 2018 at 05:14:50PM +1000, Allan McRae wrote:
On 4/12/18 12:36 am, Dave Reisner wrote:
This lets developers run a local build with optimizations but also the added debug logging that comes with PACMAN_DEBUG being defined. ---
So, we only test for "debug" to enable anything. What options starting with debug would be used here?
meson understands --buildtype=debug and --buildtype=debugoptimized when you configure the build. Before this patch, only the former buildtype is accepted in order to trigger these extra flags. After, both buildtypes are.
Also, all those warning flags in this test are set with --enable-warning flags in autotools based builds. Strangely, all the options from --enable-debug are not set here...
I chose not to add a -Ddebug=true flag to the meson build and instead key off of the buildtype. With this patch, I'm essentially suggesting that developers who want a suitable debugging build should just build as --buildtype=(debug|debugoptimized). That gives you the extra warning flags and extra timestamp logging just the same as --enable-debug and --enable-warning-flags gave you with autotools.
Do you feel there's reason to separate these concerns?
I think we separated these due to compiler updates making lots of warnings. Then we could have debug builds without erroring on new warning until they were fixed. However... meson debug does not add -Werror, so separating them is not really needed. Happy with the patch as is. As an aside, looking at the configure.ac: if test "x$debug" = "xyes" ; then AC_MSG_RESULT(yes) AC_DEFINE([PACMAN_DEBUG], , [Enable debug code]) # Check for -fstack-protector availability GCC_STACK_PROTECT_LIB GCC_STACK_PROTECT_CC GCC_FORTIFY_SOURCE_CC WARNING_CFLAGS="-g -Wall -Werror" else AC_MSG_RESULT(no) WARNING_CFLAGS="-Wall" fi Is -Wall default in meson builds? Should we enforce stack protection stuff in our debug builds (for those of us not building with default Arch makepkg flags)? Allan