Skip to content

Commit

Permalink
Added debug info to all tools
Browse files Browse the repository at this point in the history
All tools for debug info uses `-O0 -g3 -fvar-tracking-assignments`
GLibC building process uses -Og instead of -O0 otherwise it will
not compile
  • Loading branch information
luismgsilva authored and claziss committed Jun 22, 2023
1 parent ab2a627 commit 6403d07
Show file tree
Hide file tree
Showing 2 changed files with 66 additions and 25 deletions.
78 changes: 59 additions & 19 deletions Makefile.in
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,8 @@ SHELL := /bin/sh
AWK := @GAWK@
SED := @GSED@
PATH := $(INSTALL_DIR)/bin:$(PATH)
DEBUG_INFO := @debug_info@
DEBUG_INFO_GLIBC := @debug_info_glibc@

# Check to see if we need wrapper scripts for awk/sed (which point to
# gawk/gsed on platforms where these aren't the default), otherwise
Expand Down Expand Up @@ -232,7 +234,12 @@ stamps/build-binutils-linux: $(BINUTILS_SRCDIR) stamps/check-write-permission
--disable-nls \
$(BINUTILS_TARGET_FLAGS) \
--disable-sim \
CFLAGS="-g3"
CFLAGS="$(CFLAGS) $(DEBUG_INFO)" \
CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET) $(DEBUG_INFO)" \
CFLAGS_FOR_BUILD="$(CFLAGS_FOR_BUILD) $(DEBUG_INFO)" \
CXXFLAGS="$(CXXFLAGS) $(DEBUG_INFO)" \
CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET) $(DEBUG_INFO)" \
CXXFLAGS_FOR_BUILD="$(CXXFLAGS_FOR_BUILD) $(DEBUG_INFO)"
$(MAKE) -C $(notdir $@)
$(MAKE) -C $(notdir $@) install
mkdir -p $(dir $@) && touch $@
Expand Down Expand Up @@ -260,9 +267,6 @@ stamps/build-glibc-linux: $(GLIBC_SRCDIR) stamps/build-gcc-linux-stage1
cd $(notdir $@) && \
CC="$(GLIBC_CC_FOR_TARGET) $($@_CFLAGS)" \
CXX="$(GLIBC_CXX_FOR_TARGET) $($@_CFLAGS)" \
CFLAGS="$(CFLAGS_FOR_TARGET) @debug_flag@ -O2 $($@_CFLAGS)" \
CXXFLAGS="$(CXXFLAGS_FOR_TARGET) @debug_flag@ -O2 $($@_CFLAGS)" \
ASFLAGS="$(ASFLAGS_FOR_TARGET) $($@_CFLAGS)" \
$</configure \
--host=${LINUX_TUPLE} \
--prefix=/usr \
Expand All @@ -273,7 +277,13 @@ stamps/build-glibc-linux: $(GLIBC_SRCDIR) stamps/build-gcc-linux-stage1
$(MULTILIB_FLAGS) \
$(GLIBC_TARGET_FLAGS) \
$($@_LIBDIROPTS) \
CFLAGS="-O2 @debug_flag3@"
ASFLAGS="$(ASFLAGS_FOR_TARGET) $($@_CFLAGS)" \
CFLAGS="$(CFLAGS) -O2 $(DEBUG_INFO_GLIBC) $($@_CFLAGS) " \
CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET) $(DEBUG_INFO_GLIBC)" \
CFLAGS_FOR_BUILD="$(CFLAGS_FOR_BUILD) $(DEBUG_INFO_GLIBC)" \
CXXFLAGS="$(CXXFLAGS) -O2 $(DEBUG_INFO_GLIBC) $($@_CFLAGS)" \
CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET) $(DEBUG_INFO_GLIBC)" \
CXXFLAGS_FOR_BUILD="$(CXXFLAGS_FOR_BUILD) $(DEBUG_INFO_GLIBC)"
$(MAKE) -C $(notdir $@)
+flock $(SYSROOT)/.lock $(MAKE) -C $(notdir $@) install install_root=$(SYSROOT)
mkdir -p $(dir $@) && touch $@
Expand Down Expand Up @@ -307,10 +317,14 @@ stamps/build-gcc-linux-stage1: $(GCC_SRCDIR) stamps/build-binutils-linux \
@with_fpu@ \
$(GCC_CHECKING_FLAGS) \
$(MULTILIB_FLAGS) \
--with-gnu-as \
--with-gnu-ld \
CFLAGS="$(CFLAGS)" \
CFLAGS_FOR_TARGET="-O2 $(CFLAGS_FOR_TARGET)" \
CFLAGS_FOR_BUILD="$(CFLAGS_FOR_BUILD)" \
CXXFLAGS="$(CXXFLAGS)" \
CXXFLAGS_FOR_TARGET="-O2 $(CXXFLAGS_FOR_TARGET)" \
--with-gnu-as \
--with-gnu-ld
CXXFLAGS_FOR_BUILD="$(CXXFLAGS_FOR_BUILD)"
$(MAKE) -C $(notdir $@) inhibit-libc=true all-gcc
$(MAKE) -C $(notdir $@) inhibit-libc=true install-gcc
$(MAKE) -C $(notdir $@) inhibit-libc=true all-target-libgcc
Expand Down Expand Up @@ -340,10 +354,14 @@ stamps/build-gcc-linux-stage2: $(GCC_SRCDIR) stamps/build-glibc-linux \
@with_fpu@ \
$(GCC_CHECKING_FLAGS) \
$(MULTILIB_FLAGS) \
CFLAGS_FOR_TARGET="-O2 $(CFLAGS_FOR_TARGET)" \
CXXFLAGS_FOR_TARGET="-O2 $(CXXFLAGS_FOR_TARGET)" \
--with-gnu-as \
--with-gnu-ld
--with-gnu-ld \
CFLAGS="$(CFLAGS) $(DEBUG_INFO)" \
CFLAGS_FOR_TARGET="-O2 $(CFLAGS_FOR_TARGET) $(DEBUG_INFO)" \
CFLAGS_FOR_BUILD="$(CFLAGS_FOR_BUILD) $(DEBUG_INFO)" \
CXXFLAGS="$(CXXFLAGS) $(DEBUG_INFO)" \
CXXFLAGS_FOR_TARGET="-O2 $(CXXFLAGS_FOR_TARGET) $(DEBUG_INFO)" \
CXXFLAGS_FOR_BUILD="$(CXXFLAGS_FOR_BUILD) $(DEBUG_INFO)"
$(MAKE) -C $(notdir $@)
$(MAKE) -C $(notdir $@) install
cp -a $(INSTALL_DIR)/$(LINUX_TUPLE)/lib* $(SYSROOT)
Expand All @@ -356,8 +374,12 @@ stamps/build-gdbserver-linux: $(BINUTILS_SRCDIR) stamps/build-gcc-linux-stage2
--host=$(LINUX_TUPLE) \
--prefix=/usr \
--disable-gdb \
CFLAGS_FOR_TARGET="-O2 $(CFLAGS_FOR_TARGET)" \
CXXFLAGS_FOR_TARGET="-O2 $(CXXFLAGS_FOR_TARGET)"
CFLAGS="$(CFLAGS) $(DEBUG_INFO)" \
CFLAGS_FOR_TARGET="-O2 $(CFLAGS_FOR_TARGET) $(DEBUG_INFO)" \
CFLAGS_FOR_BUILD="$(CFLAGS_FOR_BUILD) $(DEBUG_INFO)" \
CXXFLAGS="$(CXXFLAGS) $(DEBUG_INFO)" \
CXXFLAGS_FOR_TARGET="-O2 $(CXXFLAGS_FOR_TARGET) $(DEBUG_INFO)" \
CXXFLAGS_FOR_BUILD="$(CXXFLAGS_FOR_BUILD) $(DEBUG_INFO)"
$(MAKE) -C $(notdir $@) all-gdbserver
$(MAKE) -C $(notdir $@) install-gdbserver DESTDIR=$(SYSROOT)
mkdir -p $(dir $@) && touch $@
Expand Down Expand Up @@ -389,8 +411,13 @@ stamps/build-binutils-newlib: $(BINUTILS_SRCDIR)
--disable-python \
@multilib_flags@ \
@werror_flag@ \
CFLAGS_FOR_TARGET="-O2 $(CFLAGS_FOR_TARGET)" \
CXXFLAGS_FOR_TARGET="-O2 $(CXXFLAGS_FOR_TARGET)"
CFLAGS="$(CFLAGS) $(DEBUG_INFO)" \
CFLAGS_FOR_TARGET="-O2 $(CFLAGS_FOR_TARGET) $(DEBUG_INFO)" \
CFLAGS_FOR_BUILD="$(CFLAGS_FOR_BUILD) $(DEBUG_INFO)" \
CXXFLAGS="$(CXXFLAGS) $(DEBUG_INFO)" \
CXXFLAGS_FOR_TARGET="-O2 $(CXXFLAGS_FOR_TARGET) $(DEBUG_INFO)" \
CXXFLAGS_FOR_BUILD="$(CXXFLAGS_FOR_BUILD) $(DEBUG_INFO)"

$(MAKE) -C $(notdir $@)
$(MAKE) -C $(notdir $@) install
mkdir -p $(dir $@) && touch $@
Expand Down Expand Up @@ -420,8 +447,12 @@ stamps/build-gcc-newlib-stage1: $(GCC_SRCDIR) stamps/build-binutils-newlib
@with_fpu@ \
--with-gnu-as \
--with-gnu-ld \
CFLAGS="$(CFLAGS)" \
CFLAGS_FOR_TARGET="-O2 $(CFLAGS_FOR_TARGET)" \
CXXFLAGS_FOR_TARGET="-O2 $(CXXFLAGS_FOR_TARGET)"
CFLAGS_FOR_BUILD="$(CFLAGS_FOR_BUILD)" \
CXXFLAGS="$(CXXFLAGS)" \
CXXFLAGS_FOR_TARGET="-O2 $(CXXFLAGS_FOR_TARGET)" \
CXXFLAGS_FOR_BUILD="$(CXXFLAGS_FOR_BUILD)"
$(MAKE) -C $(notdir $@) all-gcc
$(MAKE) -C $(notdir $@) install-gcc
mkdir -p $(dir $@) && touch $@
Expand All @@ -435,8 +466,13 @@ stamps/build-newlib: $(NEWLIB_SRCDIR) stamps/build-gcc-newlib-stage1
@configure_host@ \
@multilib_flags@ \
--prefix=$(INSTALL_DIR) \
CFLAGS_FOR_TARGET="-O2 $(CFLAGS_FOR_TARGET)" \
CXXFLAGS_FOR_TARGET="-O2 $(CXXFLAGS_FOR_TARGET)"
CFLAGS="$(CFLAGS) $(DEBUG_INFO)" \
CFLAGS_FOR_TARGET="-O2 $(CFLAGS_FOR_TARGET) $(DEBUG_INFO)" \
CFLAGS_FOR_BUILD="$(CFLAGS_FOR_BUILD) $(DEBUG_INFO)" \
CXXFLAGS="$(CXXFLAGS) $(DEBUG_INFO)" \
CXXFLAGS_FOR_TARGET="-O2 $(CXXFLAGS_FOR_TARGET) $(DEBUG_INFO)" \
CXXFLAGS_FOR_BUILD="$(CXXFLAGS_FOR_BUILD) $(DEBUG_INFO)"

$(MAKE) -C $(notdir $@)
$(MAKE) -C $(notdir $@) install
mkdir -p $(dir $@) && touch $@
Expand Down Expand Up @@ -467,8 +503,12 @@ stamps/build-gcc-newlib-stage2: $(GCC_SRCDIR) stamps/build-newlib
@with_fpu@ \
--with-gnu-as \
--with-gnu-ld \
CFLAGS_FOR_TARGET="-O2 $(CFLAGS_FOR_TARGET)" \
CXXFLAGS_FOR_TARGET="-O2 $(CXXFLAGS_FOR_TARGET)"
CFLAGS="$(CFLAGS) $(DEBUG_INFO)" \
CFLAGS_FOR_TARGET="-O2 $(CFLAGS_FOR_TARGET) $(DEBUG_INFO)" \
CFLAGS_FOR_BUILD="$(CFLAGS_FOR_BUILD) $(DEBUG_INFO)" \
CXXFLAGS="$(CXXFLAGS) $(DEBUG_INFO)" \
CXXFLAGS_FOR_TARGET="-O2 $(CXXFLAGS_FOR_TARGET) $(DEBUG_INFO)" \
CXXFLAGS_FOR_BUILD="$(CXXFLAGS_FOR_BUILD) $(DEBUG_INFO)"
$(MAKE) -C $(notdir $@)
$(MAKE) -C $(notdir $@) install
mkdir -p $(dir $@) && touch $@
Expand Down
13 changes: 7 additions & 6 deletions configure.ac
Original file line number Diff line number Diff line change
Expand Up @@ -84,15 +84,16 @@ AS_IF([test "x$enable_werror" != xno],
[AC_SUBST(werror_flag, --enable-werror)],
[AC_SUBST(werror_flag, --disable-werror)])

AC_ARG_ENABLE(debug,
[AS_HELP_STRING([--enable-debug],
[enable building with debug info @<:@--disable-debug@:>@])],
AC_ARG_ENABLE(debug_info,
[AS_HELP_STRING([--enable-debug-info],
[disable building with debug info @<:@--disable-debug@:>@])],
[],
[enable_debug=yes]
[enable_debug_info=yes]
)

AS_IF([test "x$enable_debug" != xno],
[AC_SUBST(debug_flag, -g) AC_SUBST(debug_flag3, -g3)])
AS_IF([test "x$enable_debug_info" != xno],
[AC_SUBST(debug_info_glibc, "-Og -g3 -fvar-tracking-assignments")
AC_SUBST(debug_info, "-O0 -g3 -fvar-tracking-assignments")])

AC_ARG_WITH(cpu,
[AS_HELP_STRING([--with-cpu=CPU],
Expand Down

0 comments on commit 6403d07

Please sign in to comment.