From 03b2194deabf1470c2b2e6e6b381ba2811c739e6 Mon Sep 17 00:00:00 2001 From: Haru Date: Sat, 7 Dec 2019 00:08:10 +0100 Subject: Fix Makefile-based compilation on platforms that use libbacktrace with a different executable format than elf --- 3rdparty/libbacktrace/Makefile.in | 5 ++--- configure | 14 +++++++------- configure.ac | 14 +++++++------- src/char/Makefile.in | 2 +- src/common/Makefile.in | 2 +- src/login/Makefile.in | 2 +- src/map/Makefile.in | 2 +- src/test/Makefile.in | 2 +- 8 files changed, 21 insertions(+), 22 deletions(-) diff --git a/3rdparty/libbacktrace/Makefile.in b/3rdparty/libbacktrace/Makefile.in index 741c6b076..3be3bc86a 100644 --- a/3rdparty/libbacktrace/Makefile.in +++ b/3rdparty/libbacktrace/Makefile.in @@ -29,13 +29,12 @@ LIBBACKTRACE_OBJ = atomic.o \ backtrace.o \ simple.o \ nounwind.o \ - elf.o \ - pecoff.o \ unknown.o \ read.o \ mmapio.o \ alloc.o \ - mmap.o + mmap.o \ + @LIBBACKTRACE_FORMAT_FILE@ LIBBACKTRACE_H = backtrace.h internal.h diff --git a/configure b/configure index e2e528056..5816580ad 100755 --- a/configure +++ b/configure @@ -638,7 +638,7 @@ ALLOC_FILE VIEW_FILE BACKTRACE_SUPPORTS_DATA BACKTRACE_SUPPORTED -FORMAT_FILE +LIBBACKTRACE_FORMAT_FILE BACKTRACE_SUPPORTS_THREADS BACKTRACE_FILE AWK @@ -8824,22 +8824,22 @@ fi $as_echo "$libbacktrace_cv_sys_filetype" >&6; } # Match the file type to decide what files to compile. -FORMAT_FILE= +LIBBACKTRACE_FORMAT_FILE= backtrace_supports_data=yes case "$libbacktrace_cv_sys_filetype" in -elf*) FORMAT_FILE="elf.lo" ;; -pecoff) FORMAT_FILE="pecoff.lo" +elf*) LIBBACKTRACE_FORMAT_FILE="elf.o" ;; +pecoff) LIBBACKTRACE_FORMAT_FILE="pecoff.o" backtrace_supports_data=no ;; -xcoff*) FORMAT_FILE="xcoff.lo" +xcoff*) LIBBACKTRACE_FORMAT_FILE="xcoff.o" backtrace_supports_data=no ;; -macho*) FORMAT_FILE="macho.lo" +macho*) LIBBACKTRACE_FORMAT_FILE="macho.o" backtrace_supports_data=no ;; *) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: could not determine output file type" >&5 $as_echo "$as_me: WARNING: could not determine output file type" >&2;} - FORMAT_FILE="unknown.lo" + LIBBACKTRACE_FORMAT_FILE="unknown.o" backtrace_supported=no ;; esac diff --git a/configure.ac b/configure.ac index 746ecb589..e85e4463a 100644 --- a/configure.ac +++ b/configure.ac @@ -1503,25 +1503,25 @@ AC_COMPILE_IFELSE( libbacktrace_cv_sys_filetype=$filetype]) # Match the file type to decide what files to compile. -FORMAT_FILE= +LIBBACKTRACE_FORMAT_FILE= backtrace_supports_data=yes case "$libbacktrace_cv_sys_filetype" in -elf*) FORMAT_FILE="elf.lo" ;; -pecoff) FORMAT_FILE="pecoff.lo" +elf*) LIBBACKTRACE_FORMAT_FILE="elf.o" ;; +pecoff) LIBBACKTRACE_FORMAT_FILE="pecoff.o" backtrace_supports_data=no ;; -xcoff*) FORMAT_FILE="xcoff.lo" +xcoff*) LIBBACKTRACE_FORMAT_FILE="xcoff.o" backtrace_supports_data=no ;; -macho*) FORMAT_FILE="macho.lo" +macho*) LIBBACKTRACE_FORMAT_FILE="macho.o" backtrace_supports_data=no ;; *) AC_MSG_WARN([could not determine output file type]) - FORMAT_FILE="unknown.lo" + LIBBACKTRACE_FORMAT_FILE="unknown.o" backtrace_supported=no ;; esac -AC_SUBST(FORMAT_FILE) +AC_SUBST(LIBBACKTRACE_FORMAT_FILE) # ELF defines. elfsize= diff --git a/src/char/Makefile.in b/src/char/Makefile.in index 34fc0fcba..dc687d589 100644 --- a/src/char/Makefile.in +++ b/src/char/Makefile.in @@ -38,7 +38,7 @@ LIBCONFIG_H = $(addprefix $(LIBCONFIG_D)/, libconfig.h grammar.h parsectx.h \ LIBBACKTRACE_D = $(THIRDPARTY_D)/libbacktrace LIBBACKTRACE_OBJ = $(addprefix $(LIBBACKTRACE_D)/, atomic.o backtrace.o \ - dwarf.o elf.o fileline.o mmapio.o mmap.o posix.o print.o \ + dwarf.o @LIBBACKTRACE_FORMAT_FILE@ fileline.o mmapio.o mmap.o posix.o print.o \ simple.o sort.o state.o) LIBBACKTRACE_H = $(addprefix $(LIBBACKTRACE_D)/, backtrace.h \ backtrace-supported.h config.h filenames.h internal.h) diff --git a/src/common/Makefile.in b/src/common/Makefile.in index 82b651589..97ba34775 100644 --- a/src/common/Makefile.in +++ b/src/common/Makefile.in @@ -35,7 +35,7 @@ LIBCONFIG_H = $(addprefix $(LIBCONFIG_D)/, libconfig.h grammar.h parsectx.h \ LIBBACKTRACE_D = $(THIRDPARTY_D)/libbacktrace LIBBACKTRACE_OBJ = $(addprefix $(LIBBACKTRACE_D)/, atomic.o backtrace.o \ - dwarf.o elf.o fileline.o mmapio.o mmap.o posix.o print.o \ + dwarf.o @LIBBACKTRACE_FORMAT_FILE@ fileline.o mmapio.o mmap.o posix.o print.o \ simple.o sort.o state.o) LIBBACKTRACE_H = $(addprefix $(LIBBACKTRACE_D)/, backtrace.h \ backtrace-supported.h config.h filenames.h internal.h) diff --git a/src/login/Makefile.in b/src/login/Makefile.in index 08a5566fa..4f180070c 100644 --- a/src/login/Makefile.in +++ b/src/login/Makefile.in @@ -38,7 +38,7 @@ LIBCONFIG_H = $(addprefix $(LIBCONFIG_D)/, libconfig.h grammar.h parsectx.h \ LIBBACKTRACE_D = $(THIRDPARTY_D)/libbacktrace LIBBACKTRACE_OBJ = $(addprefix $(LIBBACKTRACE_D)/, atomic.o backtrace.o \ - dwarf.o elf.o fileline.o mmapio.o mmap.o posix.o print.o \ + dwarf.o @LIBBACKTRACE_FORMAT_FILE@ fileline.o mmapio.o mmap.o posix.o print.o \ simple.o sort.o state.o) LIBBACKTRACE_H = $(addprefix $(LIBBACKTRACE_D)/, backtrace.h \ backtrace-supported.h config.h filenames.h internal.h) diff --git a/src/map/Makefile.in b/src/map/Makefile.in index 2082f7b1b..2b050e99c 100644 --- a/src/map/Makefile.in +++ b/src/map/Makefile.in @@ -38,7 +38,7 @@ LIBCONFIG_H = $(addprefix $(LIBCONFIG_D)/, libconfig.h grammar.h parsectx.h \ LIBBACKTRACE_D = $(THIRDPARTY_D)/libbacktrace LIBBACKTRACE_OBJ = $(addprefix $(LIBBACKTRACE_D)/, atomic.o backtrace.o \ - dwarf.o elf.o fileline.o mmapio.o mmap.o posix.o print.o \ + dwarf.o @LIBBACKTRACE_FORMAT_FILE@ fileline.o mmapio.o mmap.o posix.o print.o \ simple.o sort.o state.o) LIBBACKTRACE_H = $(addprefix $(LIBBACKTRACE_D)/, backtrace.h \ backtrace-supported.h config.h filenames.h internal.h) diff --git a/src/test/Makefile.in b/src/test/Makefile.in index 948852fdf..967d7dcfc 100644 --- a/src/test/Makefile.in +++ b/src/test/Makefile.in @@ -38,7 +38,7 @@ LIBCONFIG_H = $(addprefix $(LIBCONFIG_D)/, libconfig.h grammar.h parsectx.h \ LIBBACKTRACE_D = $(THIRDPARTY_D)/libbacktrace LIBBACKTRACE_OBJ = $(addprefix $(LIBBACKTRACE_D)/, atomic.o backtrace.o \ - dwarf.o elf.o fileline.o mmapio.o mmap.o posix.o print.o \ + dwarf.o @LIBBACKTRACE_FORMAT_FILE@ fileline.o mmapio.o mmap.o posix.o print.o \ simple.o sort.o state.o) LIBBACKTRACE_H = $(addprefix $(LIBBACKTRACE_D)/, backtrace.h \ backtrace-supported.h config.h filenames.h internal.h) -- cgit v1.2.3-60-g2f50