Fix memory handling in strxfrm_l [BZ #16009]
[glibc.git] / sysdeps / powerpc / powerpc32 / Makefile
blobcf620c8269e1acac5805cb8bafaa7f9deb7a26d3
1 # Powerpc32 specific build options.
3 # Some Powerpc32 variants assume soft-fp is the default even though there is
4 # an fp variant so provide -mhard-float if --with-fp is explicitly passed.
6 ifeq ($(with-fp),yes)
7 +cflags += -mhard-float
8 ASFLAGS += -mhard-float
9 sysdep-LDFLAGS += -mhard-float
10 endif
12 ifeq ($(subdir),gmon)
13 sysdep_routines += ppc-mcount compat-ppc-mcount
14 static-only-routines += ppc-mcount
15 shared-only-routines += compat-ppc-mcount
16 endif
18 ifeq ($(subdir),misc)
19 sysdep_routines += gprsave0 gprrest0 gprsave1 gprrest1
20 endif
22 # On PPC, -fpic works until the GOT contains 32768 bytes, and possibly
23 # more depending on how clever the linker is. Each GOT entry takes 4 bytes,
24 # so that's at least 8192 entries. Since libc only uses about 2000 entries,
25 # we want to use -fpic, because this generates fewer relocs.
26 ifeq (yes,$(build-shared))
27 pic-ccflag = -fpic
28 endif
30 ifeq ($(subdir),csu)
31 # There is no benefit to using sdata for these objects, and the user
32 # of the library should be able to control what goes into sdata.
33 CFLAGS-init.o = -G0
34 CFLAGS-gmon-start.o = -G0
36 ifeq (yes,$(build-shared))
37 # Compatibility
38 ifeq (yes,$(have-protected))
39 CPPFLAGS-libgcc-compat.S = -DHAVE_DOT_HIDDEN
40 endif
41 sysdep_routines += libgcc-compat
42 shared-only-routines += libgcc-compat
43 endif
44 endif
46 ifeq ($(subdir),elf)
47 # extra shared linker files to link only into dl-allobjs.so
48 sysdep-rtld-routines += dl-start
49 endif