1# Copyright (C) 2000-2021 Free Software Foundation, Inc. 2# This file is part of the GNU C Library. 3 4# The GNU C Library is free software; you can redistribute it and/or 5# modify it under the terms of the GNU Lesser General Public 6# License as published by the Free Software Foundation; either 7# version 2.1 of the License, or (at your option) any later version. 8 9# The GNU C Library is distributed in the hope that it will be useful, 10# but WITHOUT ANY WARRANTY; without even the implied warranty of 11# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 12# Lesser General Public License for more details. 13 14# You should have received a copy of the GNU Lesser General Public 15# License along with the GNU C Library. If not, see 16# <https://www.gnu.org/licenses/>. 17 18# We used to need this since the build process uses ld -r. Now we use 19# ld -r --unique=.text* which does more or less the same thing, but better. 20# CFLAGS-.os += -ffunction-sections 21LDFLAGS-c_pic.os += -Wl,--unique=.text* 22 23ifeq ($(subdir),elf) 24CFLAGS-rtld.c += -mdisable-fpregs 25sysdep-dl-routines += dl-symaddr dl-fptr 26# dl-fptr.c needs a complete rewrite to fix ISO C aliasing violations. 27CFLAGS-dl-fptr.c = -Wno-error 28endif 29 30ifeq ($(subdir),csu) 31ifeq (yes,$(build-shared)) 32# Compatibility 33ifeq (yes,$(have-protected)) 34CPPFLAGS-libgcc-compat.c = -DHAVE_DOT_HIDDEN 35endif 36sysdep_routines += libgcc-compat 37shared-only-routines += libgcc-compat 38endif 39endif 40 41# We implement a 64-bit `long double'. The standard says we can do this. 42# This means our `long double' and `double' are identical. 43long-double-fcts = no 44