Define XTABS to TAB3 on alpha to match Linux 4.16.
[glibc.git] / sysdeps / tile / Makefile
blobdcb8777a54ac186dda1878dfea147bbd0de86e83
1 include $(common-objpfx)cflags-mcmodel-large.mk
3 # Check for gcc to support the command-line switch, and for
4 # binutils to support the hwN_plt() assembly operators and relocations.
5 $(common-objpfx)cflags-mcmodel-large.mk: $(common-objpfx)config.make
6 mcmodel=no; \
7 (echo 'int main() { return getuid(); }' | \
8 $(CC) -o /dev/null -xc - -mcmodel=large -fpic) && mcmodel=yes; \
9 echo "cflags-mcmodel-large = $$mcmodel" > $@
11 ifeq (yes,$(cflags-mcmodel-large))
13 ifeq ($(subdir),csu)
14 # elf-init.c is in libc_nonshared.o (the end of the shared object) but
15 # must reach the _init symbol at the very start of the shared object.
16 CFLAGS-elf-init.c += -mcmodel=large
18 # __gmon_start__ is at the very start of the shared object when linked
19 # with profiling, but calls to libc.so via the PLT at the very end.
20 CFLAGS-gmon-start.c += -mcmodel=large
21 endif
23 else
25 # Don't try to compile assembly code with hwN_plt() directives if the
26 # toolchain doesn't support -mcmodel=large.
27 ifeq ($(subdir),csu)
28 CPPFLAGS-start.S += -DNO_PLT_PCREL
29 CPPFLAGS-crti.S += -DNO_PLT_PCREL
30 endif
31 ifeq ($(subdir),nptl)
32 CPPFLAGS-pt-crti.S += -DNO_PLT_PCREL
33 endif
35 endif
37 # We don't support long doubles as a distinct type. We don't need to set
38 # this variable; it's here mostly for documentational purposes.
40 long-double-fcts = no
42 ifeq ($(subdir),gmon)
43 sysdep_routines += _mcount
44 endif
46 ifeq ($(subdir),elf)
47 # Extra shared linker files to link only into dl-allobjs.so.
48 sysdep-rtld-routines += dl-start __tls_get_addr
49 endif