public inbox for libstdc++-cvs@sourceware.org
help / color / mirror / Atom feed
* [gcc r12-6741] libstdc++: Fix libbacktrace build files
@ 2022-01-19 14:58 Jonathan Wakely
  0 siblings, 0 replies; only message in thread
From: Jonathan Wakely @ 2022-01-19 14:58 UTC (permalink / raw)
  To: gcc-cvs, libstdc++-cvs

https://gcc.gnu.org/g:6a26ad67367a889a9fb6d0cc30e1e608e794d298

commit r12-6741-g6a26ad67367a889a9fb6d0cc30e1e608e794d298
Author: Jonathan Wakely <jwakely@redhat.com>
Date:   Wed Jan 19 14:20:52 2022 +0000

    libstdc++: Fix libbacktrace build files
    
    This makes it possible to combine --enable-libstdcxx-debug with
    --enable-libstdcxx-backtrace, by adding a rule to src/Makefile to copy
    the backtrace-supported.h header into the src/debug/libbacktrace
    directory.
    
    Add libbacktrace path to testsuite flags so the tests can link without
    having the library installed.
    
    Also fix some warnings when running automake for the libbacktrace
    makefile.
    
    Use a per-library CPPFLAGS variable to fix:
    
    src/libbacktrace/Makefile.am:38: warning: AM_CPPFLAGS multiply defined in condition TRUE ...
    fragment.am:43: ... 'AM_CPPFLAGS' previously defined here
    src/libbacktrace/Makefile.am:32:   'fragment.am' included from here
    
    Create symlinks to the libbacktrace sources to fix:
    
    src/libbacktrace/Makefile.am:55: warning: source file '../../../libbacktrace/atomic.c' is in a subdirectory,
    src/libbacktrace/Makefile.am:55: but option 'subdir-objects' is disabled
    
    libstdc++-v3/ChangeLog:
    
            * scripts/testsuite_flags.in: Add src/libbacktrace/.libs to
            linker search paths.
            * src/Makefile.am: Fix src/debug/libbacktrace build.
            * src/Makefile.in: Regenerate.
            * src/libbacktrace/Makefile.am: Use per-library CPPFLAGS
            variable. Use symlinks for the source files.
            * src/libbacktrace/Makefile.in: Regenerate.

Diff:
---
 libstdc++-v3/scripts/testsuite_flags.in   |   3 +-
 libstdc++-v3/src/Makefile.am              |  12 ++-
 libstdc++-v3/src/Makefile.in              |   9 ++-
 libstdc++-v3/src/libbacktrace/Makefile.am |  56 ++++++++-----
 libstdc++-v3/src/libbacktrace/Makefile.in | 128 +++++++++++++++++-------------
 5 files changed, 132 insertions(+), 76 deletions(-)

diff --git a/libstdc++-v3/scripts/testsuite_flags.in b/libstdc++-v3/scripts/testsuite_flags.in
index cf7f0f7411e..40dd3d3465e 100755
--- a/libstdc++-v3/scripts/testsuite_flags.in
+++ b/libstdc++-v3/scripts/testsuite_flags.in
@@ -78,7 +78,8 @@ case ${query} in
       ;;
     --cxxldflags)
       SECTIONLDFLAGS="@SECTION_LDFLAGS@ @LIBICONV@
-                      -L${BUILD_DIR}/src/filesystem/.libs"
+                      -L${BUILD_DIR}/src/filesystem/.libs
+                      -L${BUILD_DIR}/src/libbacktrace/.libs"
       echo ${SECTIONLDFLAGS}
       ;;
     *)
diff --git a/libstdc++-v3/src/Makefile.am b/libstdc++-v3/src/Makefile.am
index 71a0da2cd93..18f57632c3d 100644
--- a/libstdc++-v3/src/Makefile.am
+++ b/libstdc++-v3/src/Makefile.am
@@ -30,8 +30,10 @@ endif
 
 if ENABLE_BACKTRACE
 backtrace_dir = libbacktrace
+backtrace_supported_h = $(backtrace_dir)/backtrace-supported.h
 else
 backtrace_dir =
+backtrace_supported_h =
 endif
 
 ## Keep this list sync'd with acinclude.m4:GLIBCXX_CONFIGURE.
@@ -402,7 +404,15 @@ stamp-debug: Makefile $(foreach dir,$(SUBDIRS),$(dir)/Makefile)
 	fi; \
 	echo `date` > stamp-debug;
 
-build-debug: stamp-debug
+if ENABLE_BACKTRACE
+${debugdir}/$(backtrace_supported_h): $(backtrace_supported_h) stamp-debug
+	cp $< $@
+debug_backtrace_supported_h = ${debugdir}/$(backtrace_supported_h)
+else
+debug_backtrace_supported_h =
+endif
+
+build-debug: stamp-debug $(debug_backtrace_supported_h)
 	  (cd ${debugdir}; \
 	  mv Makefile Makefile.tmp; \
 	  sed -e 's,all-local: all-once,all-local:,' \
diff --git a/libstdc++-v3/src/Makefile.in b/libstdc++-v3/src/Makefile.in
index 429f3d17967..eeafb892386 100644
--- a/libstdc++-v3/src/Makefile.in
+++ b/libstdc++-v3/src/Makefile.in
@@ -482,6 +482,8 @@ AM_CPPFLAGS = $(GLIBCXX_INCLUDES) $(CPPFLAGS)
 @ENABLE_FILESYSTEM_TS_TRUE@filesystem_dir = filesystem
 @ENABLE_BACKTRACE_FALSE@backtrace_dir = 
 @ENABLE_BACKTRACE_TRUE@backtrace_dir = libbacktrace
+@ENABLE_BACKTRACE_FALSE@backtrace_supported_h = 
+@ENABLE_BACKTRACE_TRUE@backtrace_supported_h = $(backtrace_dir)/backtrace-supported.h
 SUBDIRS = c++98 c++11 c++17 c++20 $(filesystem_dir) $(backtrace_dir)
 @VTV_CYGMIN_FALSE@toolexeclib_LTLIBRARIES = libstdc++.la
 
@@ -668,6 +670,8 @@ CXXLINK = \
 # Build a debug variant.
 # Take care to fix all possibly-relative paths.
 debugdir = ${glibcxx_builddir}/src/debug
+@ENABLE_BACKTRACE_FALSE@debug_backtrace_supported_h = 
+@ENABLE_BACKTRACE_TRUE@debug_backtrace_supported_h = ${debugdir}/$(backtrace_supported_h)
 all: all-recursive
 
 .SUFFIXES:
@@ -1125,7 +1129,10 @@ stamp-debug: Makefile $(foreach dir,$(SUBDIRS),$(dir)/Makefile)
 	fi; \
 	echo `date` > stamp-debug;
 
-build-debug: stamp-debug
+@ENABLE_BACKTRACE_TRUE@${debugdir}/$(backtrace_supported_h): $(backtrace_supported_h) stamp-debug
+@ENABLE_BACKTRACE_TRUE@	cp $< $@
+
+build-debug: stamp-debug $(debug_backtrace_supported_h)
 	  (cd ${debugdir}; \
 	  mv Makefile Makefile.tmp; \
 	  sed -e 's,all-local: all-once,all-local:,' \
diff --git a/libstdc++-v3/src/libbacktrace/Makefile.am b/libstdc++-v3/src/libbacktrace/Makefile.am
index 3a3195167b2..0f1143507f3 100644
--- a/libstdc++-v3/src/libbacktrace/Makefile.am
+++ b/libstdc++-v3/src/libbacktrace/Makefile.am
@@ -35,9 +35,12 @@ toolexeclib_LTLIBRARIES = libstdc++_libbacktrace.la
 
 ACLOCAL_AMFLAGS = -I ../.. -I ../../config
 
-AM_CPPFLAGS = -I $(top_srcdir)/../include -I $(top_srcdir)/../libgcc \
+# This will be used instead of the common AM_CPPFLAGS from fragment.am
+libstdc___libbacktrace_la_CPPFLAGS = \
+	-I $(top_srcdir)/../include -I $(top_srcdir)/../libgcc \
 	-I ../../../libgcc -I .. -I $(top_srcdir) \
 	-I $(top_srcdir)/../libbacktrace \
+	-I $(top_srcdir)/../libiberty \
 	-include $(top_srcdir)/src/libbacktrace/backtrace-rename.h \
 	$(BACKTRACE_CPPFLAGS)
 
@@ -50,42 +53,55 @@ AM_CFLAGS += $(EXTRA_CFLAGS)
 AM_CXXFLAGS = $(CXX_WARN_FLAGS) -fno-rtti -fno-exceptions
 AM_CXXFLAGS += $(EXTRA_CXXFLAGS)
 
+obj_prefix = std_stacktrace
+
+# Each FILE.c in SOURCES will be compiled to SHORTNAME-FILE.o
+libstdc___libbacktrace_la_SHORTNAME = $(obj_prefix)
+
 libstdc___libbacktrace_la_SOURCES = \
-	../../../libbacktrace/backtrace.h \
-	../../../libbacktrace/atomic.c \
-	../../../libbacktrace/dwarf.c \
-	../../../libbacktrace/fileline.c \
-	../../../libbacktrace/internal.h \
-	../../../libbacktrace/posix.c \
-	../../../libbacktrace/sort.c \
-	../../../libbacktrace/simple.c \
-	../../../libbacktrace/state.c \
-	../../../libiberty/cp-demangle.c
+	atomic.c \
+	dwarf.c \
+	fileline.c \
+	posix.c \
+	sort.c \
+	simple.c \
+	state.c \
+	cp-demangle.c
 
 FORMAT_FILES = \
-	../../../libbacktrace/elf.c \
-	../../../libbacktrace/unknown.c
+	elf.c \
+	unknown.c
 
 VIEW_FILES = \
-	../../../libbacktrace/read.c \
-	../../../libbacktrace/mmapio.c
+	read.c \
+	mmapio.c
 
 ALLOC_FILES = \
-	../../../libbacktrace/alloc.c \
-	../../../libbacktrace/mmap.c
+	alloc.c \
+	mmap.c
 
 EXTRA_libstdc___libbacktrace_la_SOURCES = \
 	$(FORMAT_FILES) \
 	$(VIEW_FILES) \
 	$(ALLOC_FILES)
 
+# These three files are chosen by configure and added to the link.
+# We need the SHORTNAME- prefix so that they use the custom CPPFLAGS above.
 libstdc___libbacktrace_la_LIBADD = \
-	$(FORMAT_FILE) \
-	$(VIEW_FILE) \
-	$(ALLOC_FILE)
+	$(obj_prefix)-$(FORMAT_FILE) \
+	$(obj_prefix)-$(VIEW_FILE) \
+	$(obj_prefix)-$(ALLOC_FILE)
 
 libstdc___libbacktrace_la_DEPENDENCIES = $(libstdc___libbacktrace_la_LIBADD)
 
+# Use symlinks for the sources
+
+%.c: ../../../libbacktrace/%.c
+	$(LN_S) $< $@
+
+cp-demangle.c: ../../../libiberty/cp-demangle.c
+	$(LN_S) $< $@
+
 LTCOMPILE = \
 	$(LIBTOOL) --tag CC --tag disable-shared \
 	$(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
diff --git a/libstdc++-v3/src/libbacktrace/Makefile.in b/libstdc++-v3/src/libbacktrace/Makefile.in
index 35e5effc70d..7545894d59a 100644
--- a/libstdc++-v3/src/libbacktrace/Makefile.in
+++ b/libstdc++-v3/src/libbacktrace/Makefile.in
@@ -180,9 +180,11 @@ am__uninstall_files_from_dir = { \
   }
 am__installdirs = "$(DESTDIR)$(toolexeclibdir)"
 LTLIBRARIES = $(toolexeclib_LTLIBRARIES)
-am__DEPENDENCIES_1 =
-am_libstdc___libbacktrace_la_OBJECTS = atomic.lo dwarf.lo fileline.lo \
-	posix.lo sort.lo simple.lo state.lo cp-demangle.lo
+am_libstdc___libbacktrace_la_OBJECTS = $(obj_prefix)-atomic.lo \
+	$(obj_prefix)-dwarf.lo $(obj_prefix)-fileline.lo \
+	$(obj_prefix)-posix.lo $(obj_prefix)-sort.lo \
+	$(obj_prefix)-simple.lo $(obj_prefix)-state.lo \
+	$(obj_prefix)-cp-demangle.lo
 libstdc___libbacktrace_la_OBJECTS =  \
 	$(am_libstdc___libbacktrace_la_OBJECTS)
 AM_V_lt = $(am__v_lt_@AM_V@)
@@ -479,52 +481,64 @@ CONFIG_CXXFLAGS = \
 WARN_CXXFLAGS = \
 	$(WARN_FLAGS) $(WERROR_FLAG) -fdiagnostics-show-location=once 
 
-AM_CPPFLAGS = -I $(top_srcdir)/../include -I $(top_srcdir)/../libgcc \
+
+# -I/-D flags to pass when compiling.
+AM_CPPFLAGS = $(GLIBCXX_INCLUDES) $(CPPFLAGS)
+toolexeclib_LTLIBRARIES = libstdc++_libbacktrace.la
+ACLOCAL_AMFLAGS = -I ../.. -I ../../config
+
+# This will be used instead of the common AM_CPPFLAGS from fragment.am
+libstdc___libbacktrace_la_CPPFLAGS = \
+	-I $(top_srcdir)/../include -I $(top_srcdir)/../libgcc \
 	-I ../../../libgcc -I .. -I $(top_srcdir) \
 	-I $(top_srcdir)/../libbacktrace \
+	-I $(top_srcdir)/../libiberty \
 	-include $(top_srcdir)/src/libbacktrace/backtrace-rename.h \
 	$(BACKTRACE_CPPFLAGS)
 
-toolexeclib_LTLIBRARIES = libstdc++_libbacktrace.la
-ACLOCAL_AMFLAGS = -I ../.. -I ../../config
 C_WARN_FLAGS = $(WARN_FLAGS) -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -Wno-unused-but-set-variable
 CXX_WARN_FLAGS = $(WARN_FLAGS) -Wno-unused-parameter
 AM_CFLAGS = $(C_WARN_FLAGS) $(EXTRA_CFLAGS)
 AM_CXXFLAGS = $(CXX_WARN_FLAGS) -fno-rtti -fno-exceptions \
 	$(EXTRA_CXXFLAGS)
+obj_prefix = std_stacktrace
+
+# Each FILE.c in SOURCES will be compiled to SHORTNAME-FILE.o
+libstdc___libbacktrace_la_SHORTNAME = $(obj_prefix)
 libstdc___libbacktrace_la_SOURCES = \
-	../../../libbacktrace/backtrace.h \
-	../../../libbacktrace/atomic.c \
-	../../../libbacktrace/dwarf.c \
-	../../../libbacktrace/fileline.c \
-	../../../libbacktrace/internal.h \
-	../../../libbacktrace/posix.c \
-	../../../libbacktrace/sort.c \
-	../../../libbacktrace/simple.c \
-	../../../libbacktrace/state.c \
-	../../../libiberty/cp-demangle.c
+	atomic.c \
+	dwarf.c \
+	fileline.c \
+	posix.c \
+	sort.c \
+	simple.c \
+	state.c \
+	cp-demangle.c
 
 FORMAT_FILES = \
-	../../../libbacktrace/elf.c \
-	../../../libbacktrace/unknown.c
+	elf.c \
+	unknown.c
 
 VIEW_FILES = \
-	../../../libbacktrace/read.c \
-	../../../libbacktrace/mmapio.c
+	read.c \
+	mmapio.c
 
 ALLOC_FILES = \
-	../../../libbacktrace/alloc.c \
-	../../../libbacktrace/mmap.c
+	alloc.c \
+	mmap.c
 
 EXTRA_libstdc___libbacktrace_la_SOURCES = \
 	$(FORMAT_FILES) \
 	$(VIEW_FILES) \
 	$(ALLOC_FILES)
 
+
+# These three files are chosen by configure and added to the link.
+# We need the SHORTNAME- prefix so that they use the custom CPPFLAGS above.
 libstdc___libbacktrace_la_LIBADD = \
-	$(FORMAT_FILE) \
-	$(VIEW_FILE) \
-	$(ALLOC_FILE)
+	$(obj_prefix)-$(FORMAT_FILE) \
+	$(obj_prefix)-$(VIEW_FILE) \
+	$(obj_prefix)-$(ALLOC_FILE)
 
 libstdc___libbacktrace_la_DEPENDENCIES = $(libstdc___libbacktrace_la_LIBADD)
 LTCOMPILE = \
@@ -630,47 +644,47 @@ distclean-compile:
 .c.lo:
 	$(AM_V_CC)$(LTCOMPILE) -c -o $@ $<
 
-atomic.lo: ../../../libbacktrace/atomic.c
-	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o atomic.lo `test -f '../../../libbacktrace/atomic.c' || echo '$(srcdir)/'`../../../libbacktrace/atomic.c
+$(obj_prefix)-atomic.lo: atomic.c
+	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libstdc___libbacktrace_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o $(obj_prefix)-atomic.lo `test -f 'atomic.c' || echo '$(srcdir)/'`atomic.c
 
-dwarf.lo: ../../../libbacktrace/dwarf.c
-	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o dwarf.lo `test -f '../../../libbacktrace/dwarf.c' || echo '$(srcdir)/'`../../../libbacktrace/dwarf.c
+$(obj_prefix)-dwarf.lo: dwarf.c
+	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libstdc___libbacktrace_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o $(obj_prefix)-dwarf.lo `test -f 'dwarf.c' || echo '$(srcdir)/'`dwarf.c
 
-fileline.lo: ../../../libbacktrace/fileline.c
-	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o fileline.lo `test -f '../../../libbacktrace/fileline.c' || echo '$(srcdir)/'`../../../libbacktrace/fileline.c
+$(obj_prefix)-fileline.lo: fileline.c
+	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libstdc___libbacktrace_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o $(obj_prefix)-fileline.lo `test -f 'fileline.c' || echo '$(srcdir)/'`fileline.c
 
-posix.lo: ../../../libbacktrace/posix.c
-	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o posix.lo `test -f '../../../libbacktrace/posix.c' || echo '$(srcdir)/'`../../../libbacktrace/posix.c
+$(obj_prefix)-posix.lo: posix.c
+	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libstdc___libbacktrace_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o $(obj_prefix)-posix.lo `test -f 'posix.c' || echo '$(srcdir)/'`posix.c
 
-sort.lo: ../../../libbacktrace/sort.c
-	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sort.lo `test -f '../../../libbacktrace/sort.c' || echo '$(srcdir)/'`../../../libbacktrace/sort.c
+$(obj_prefix)-sort.lo: sort.c
+	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libstdc___libbacktrace_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o $(obj_prefix)-sort.lo `test -f 'sort.c' || echo '$(srcdir)/'`sort.c
 
-simple.lo: ../../../libbacktrace/simple.c
-	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o simple.lo `test -f '../../../libbacktrace/simple.c' || echo '$(srcdir)/'`../../../libbacktrace/simple.c
+$(obj_prefix)-simple.lo: simple.c
+	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libstdc___libbacktrace_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o $(obj_prefix)-simple.lo `test -f 'simple.c' || echo '$(srcdir)/'`simple.c
 
-state.lo: ../../../libbacktrace/state.c
-	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o state.lo `test -f '../../../libbacktrace/state.c' || echo '$(srcdir)/'`../../../libbacktrace/state.c
+$(obj_prefix)-state.lo: state.c
+	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libstdc___libbacktrace_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o $(obj_prefix)-state.lo `test -f 'state.c' || echo '$(srcdir)/'`state.c
 
-cp-demangle.lo: ../../../libiberty/cp-demangle.c
-	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o cp-demangle.lo `test -f '../../../libiberty/cp-demangle.c' || echo '$(srcdir)/'`../../../libiberty/cp-demangle.c
+$(obj_prefix)-cp-demangle.lo: cp-demangle.c
+	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libstdc___libbacktrace_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o $(obj_prefix)-cp-demangle.lo `test -f 'cp-demangle.c' || echo '$(srcdir)/'`cp-demangle.c
 
-elf.lo: ../../../libbacktrace/elf.c
-	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o elf.lo `test -f '../../../libbacktrace/elf.c' || echo '$(srcdir)/'`../../../libbacktrace/elf.c
+$(obj_prefix)-elf.lo: elf.c
+	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libstdc___libbacktrace_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o $(obj_prefix)-elf.lo `test -f 'elf.c' || echo '$(srcdir)/'`elf.c
 
-unknown.lo: ../../../libbacktrace/unknown.c
-	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unknown.lo `test -f '../../../libbacktrace/unknown.c' || echo '$(srcdir)/'`../../../libbacktrace/unknown.c
+$(obj_prefix)-unknown.lo: unknown.c
+	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libstdc___libbacktrace_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o $(obj_prefix)-unknown.lo `test -f 'unknown.c' || echo '$(srcdir)/'`unknown.c
 
-read.lo: ../../../libbacktrace/read.c
-	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o read.lo `test -f '../../../libbacktrace/read.c' || echo '$(srcdir)/'`../../../libbacktrace/read.c
+$(obj_prefix)-read.lo: read.c
+	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libstdc___libbacktrace_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o $(obj_prefix)-read.lo `test -f 'read.c' || echo '$(srcdir)/'`read.c
 
-mmapio.lo: ../../../libbacktrace/mmapio.c
-	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o mmapio.lo `test -f '../../../libbacktrace/mmapio.c' || echo '$(srcdir)/'`../../../libbacktrace/mmapio.c
+$(obj_prefix)-mmapio.lo: mmapio.c
+	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libstdc___libbacktrace_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o $(obj_prefix)-mmapio.lo `test -f 'mmapio.c' || echo '$(srcdir)/'`mmapio.c
 
-alloc.lo: ../../../libbacktrace/alloc.c
-	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o alloc.lo `test -f '../../../libbacktrace/alloc.c' || echo '$(srcdir)/'`../../../libbacktrace/alloc.c
+$(obj_prefix)-alloc.lo: alloc.c
+	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libstdc___libbacktrace_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o $(obj_prefix)-alloc.lo `test -f 'alloc.c' || echo '$(srcdir)/'`alloc.c
 
-mmap.lo: ../../../libbacktrace/mmap.c
-	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o mmap.lo `test -f '../../../libbacktrace/mmap.c' || echo '$(srcdir)/'`../../../libbacktrace/mmap.c
+$(obj_prefix)-mmap.lo: mmap.c
+	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libstdc___libbacktrace_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o $(obj_prefix)-mmap.lo `test -f 'mmap.c' || echo '$(srcdir)/'`mmap.c
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -855,6 +869,14 @@ uninstall-am: uninstall-toolexeclibLTLIBRARIES
 .PRECIOUS: Makefile
 
 
+# Use symlinks for the sources
+
+%.c: ../../../libbacktrace/%.c
+	$(LN_S) $< $@
+
+cp-demangle.c: ../../../libiberty/cp-demangle.c
+	$(LN_S) $< $@
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2022-01-19 14:58 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-01-19 14:58 [gcc r12-6741] libstdc++: Fix libbacktrace build files Jonathan Wakely

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).