# Makefile.in
-# Copyright (C) 2005-2015 Free Software Foundation, Inc.
+# Copyright (C) 2005-2016 Free Software Foundation, Inc.
#
# This file is part of GCC.
#
# Options to use when compiling crtbegin/end.
CRTSTUFF_CFLAGS = -O2 $(GCC_CFLAGS) $(INCLUDES) $(MULTILIB_CFLAGS) -g0 \
- -finhibit-size-directive -fno-inline -fno-exceptions \
+ $(NO_PIE_CFLAGS) -finhibit-size-directive -fno-inline -fno-exceptions \
-fno-zero-initialized-in-bss -fno-toplevel-reorder -fno-tree-vectorize \
-fbuilding-libgcc -fno-stack-protector $(FORCE_EXPLICIT_EH_REGISTRY) \
$(INHIBIT_LIBC_CFLAGS)
ifneq ($(LIBUNWIND),)
all: libunwind.a
-libgcc_s$(SHLIB_EXT): libunwind$(SHLIB_EXT)
endif
ifeq ($(enable_shared),yes)
all: libgcc_eh.a libgcc_s$(SHLIB_EXT)
ifneq ($(LIBUNWIND),)
all: libunwind$(SHLIB_EXT)
+libgcc_s$(SHLIB_EXT): libunwind$(SHLIB_EXT)
endif
-endif
-
-ifeq ($(enable_shared),yes)
# Map-file generation.
ifneq ($(SHLIB_MKMAP),)
$(crt_compile) $(CRTSTUFF_T_CFLAGS) -c $< -DCRT_BEGIN -DCRTSTUFFT_O
# crtoffloadbegin and crtoffloadend contain symbols, that mark the begin and
-# the end of tables with addresses, required for offloading.
+# the end of tables with addresses, required for offloading. crtoffloadtable
+# contains the array with addresses of those symbols.
crtoffloadbegin$(objext): $(srcdir)/offloadstuff.c
$(crt_compile) $(CRTSTUFF_T_CFLAGS) -c $< -DCRT_BEGIN
crtoffloadend$(objext): $(srcdir)/offloadstuff.c
$(crt_compile) $(CRTSTUFF_T_CFLAGS) -c $< -DCRT_END
+
+crtoffloadtable$(objext): $(srcdir)/offloadstuff.c
+ $(crt_compile) $(CRTSTUFF_T_CFLAGS) -c $< -DCRT_TABLE
endif
ifeq ($(enable_vtable_verify),yes)
# These are used in vtable verification; see comments in source files for
# more details.
+
+# Override -finhibit-size-directive to avoid mismatch between libgcc and libvtv
+# compilations.
+VTV_CFLAGS = $(CRTSTUFF_T_CFLAGS_S) -fno-inhibit-size-directive
+
vtv_start$(objext): $(srcdir)/vtv_start.c
- $(crt_compile) $(CRTSTUFF_T_CFLAGS_S) -c $(srcdir)/vtv_start.c
+ $(crt_compile) $(VTV_CFLAGS) -c $(srcdir)/vtv_start.c
vtv_end$(objext): $(srcdir)/vtv_end.c
- $(crt_compile) $(CRTSTUFF_T_CFLAGS_S) -c $(srcdir)/vtv_end.c
+ $(crt_compile) $(VTV_CFLAGS) -c $(srcdir)/vtv_end.c
vtv_start_preinit$(objext): $(srcdir)/vtv_start_preinit.c
- $(crt_compile) $(CRTSTUFF_T_CFLAGS_S) -c $(srcdir)/vtv_start_preinit.c
+ $(crt_compile) $(VTV_CFLAGS) -c $(srcdir)/vtv_start_preinit.c
vtv_end_preinit$(objext): $(srcdir)/vtv_end_preinit.c
- $(crt_compile) $(CRTSTUFF_T_CFLAGS_S) -c $(srcdir)/vtv_end_preinit.c
+ $(crt_compile) $(VTV_CFLAGS) -c $(srcdir)/vtv_end_preinit.c
endif
ifeq ($(CUSTOM_CRTIN),)