aboutsummaryrefslogtreecommitdiff
path: root/gcc/config/rs6000/t-darwin
blob: 11cdcb3dc7cb873dd3042de6fd4e86c837cece1d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
# Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006,
# 2007 Free Software Foundation, Inc.
#
# This file is part of GCC.
#
# GCC is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3, or (at your option)
# any later version.
#
# GCC is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with GCC; see the file COPYING3.  If not see
# <http://www.gnu.org/licenses/>.

LIB2FUNCS_EXTRA = $(srcdir)/config/rs6000/darwin-tramp.asm \
	$(srcdir)/config/rs6000/ppc64-fp.c \
	$(srcdir)/config/darwin-64.c \
	$(srcdir)/config/rs6000/darwin-ldouble.c \
	$(srcdir)/config/rs6000/darwin-world.asm

LIB2FUNCS_STATIC_EXTRA = \
	$(srcdir)/config/rs6000/darwin-fpsave.asm  \
	$(srcdir)/config/rs6000/darwin-vecsave.asm

DARWIN_EXTRA_CRT_BUILD_CFLAGS = -mlongcall -mmacosx-version-min=10.4

# The .asm files above are designed to run on all processors,
# even though they use AltiVec instructions.  -Wa is used because
# -force_cpusubtype_ALL doesn't work with -dynamiclib.
#
# -pipe because there's an assembler bug, 4077127, which causes
# it to not properly process the first # directive, causing temporary
# file names to appear in stabs, causing the bootstrap to fail.  Using -pipe
# works around this by not having any temporary file names.
TARGET_LIBGCC2_CFLAGS = -Wa,-force_cpusubtype_ALL -pipe -mmacosx-version-min=10.4

# Export the _xlq* symbols from darwin-ldouble.c.
SHLIB_MAPFILES += $(srcdir)/config/rs6000/libgcc-ppc64.ver

LIB2ADDEH += $(srcdir)/config/rs6000/darwin-fallback.c

darwin-fpsave.o:	$(srcdir)/config/rs6000/darwin-asm.h
darwin-tramp.o:		$(srcdir)/config/rs6000/darwin-asm.h

# Explain how to build crt2.o
$(T)crt2$(objext): $(srcdir)/config/darwin-crt2.c $(GCC_PASSES) \
	$(TCONFIG_H) stmp-int-hdrs tsystem.h
	$(GCC_FOR_TARGET) $(GCC_CFLAGS) $(INCLUDES) $(MULTILIB_CFLAGS) \
	  $(DARWIN_EXTRA_CRT_BUILD_CFLAGS) \
	  -c $(srcdir)/config/darwin-crt2.c -o $(T)crt2$(objext)