# We want fine grained libraries, so use the new code to build the
# floating point emulation libraries.
FPBIT = fp-bit.c
DPBIT = dp-bit.c

dp-bit.c: $(srcdir)/config/fp-bit.c
	cat $(srcdir)/config/fp-bit.c > dp-bit.c

fp-bit.c: $(srcdir)/config/fp-bit.c
	echo '#define FLOAT' > fp-bit.c
	cat $(srcdir)/config/fp-bit.c >> fp-bit.c

# Build the libraries for pthread and all of the 
# different processor models

MULTILIB_OPTIONS	= pthread \
			  mcpu=common/mcpu=power/mcpu=powerpc/maix64

MULTILIB_DIRNAMES	= pthread \
			  common power powerpc ppc64

MULTILIB_MATCHES	= mcpu?power=mcpu?power \
			  mcpu?power=mcpu?power2 \
			  mcpu?powerpc=mcpu?power3 \
			  mcpu?powerpc=mcpu?power4 \
			  mcpu?powerpc=mcpu?powerpc \
			  mcpu?power=mcpu?rios1 \
			  mcpu?power=mcpu?rios2 \
			  mcpu?power=mcpu?rsc \
			  mcpu?power=mcpu?rsc1 \
			  mcpu?powerpc=mcpu?rs64a \
			  mcpu?powerpc=mcpu?601 \
			  mcpu?powerpc=mcpu?602 \
			  mcpu?powerpc=mcpu?603 \
			  mcpu?powerpc=mcpu?603e \
			  mcpu?powerpc=mcpu?604 \
			  mcpu?powerpc=mcpu?604e \
			  mcpu?powerpc=mcpu?620 \
			  mcpu?powerpc=mcpu?630

LIBGCC = stmp-multilib
INSTALL_LIBGCC = install-multilib

# Build a shared libgcc library.
SHLIB_EXT = .a
SHLIB_LINK = $(GCC_FOR_TARGET) $(LIBGCC2_CFLAGS) -shared -nodefaultlibs \
	-Wl,-bE:@shlib_map_file@ -o @multilib_dir@/shr.o \
	@multilib_flags@ @shlib_objs@ -lc \
	`case @multilib_dir@ in \
	*pthread*) echo -L/usr/lib/threads -lpthreads -lc_r /usr/lib/libc.a ;; \
	*) echo -lc ;; esac` ; \
	rm -f @multilib_dir@/tmp-@shlib_base_name@.a ; \
	$(AR_CREATE_FOR_TARGET) @multilib_dir@/tmp-@shlib_base_name@.a \
	@multilib_dir@/shr.o ; \
	mv @multilib_dir@/tmp-@shlib_base_name@.a \
	   @multilib_dir@/@shlib_base_name@.a ; \
	rm -f @multilib_dir@/shr.o
# $(slibdir) double quoted to protect it from expansion while building
# libgcc.mk.  We want this delayed until actual install time.
SHLIB_INSTALL = \
	$$(mkinstalldirs) $$(DESTDIR)$$(slibdir)@shlib_slibdir_qual@; \
	$(INSTALL_DATA) @multilib_dir@/@shlib_base_name@.a \
		$$(DESTDIR)$$(slibdir)@shlib_slibdir_qual@/
SHLIB_LIBS = -lc `case @multilib_dir@ in *pthread*) echo -lpthread ;; esac`
SHLIB_MKMAP = $(srcdir)/mkmap-flat.awk
SHLIB_MAPFILES = $(srcdir)/libgcc-std.ver $(srcdir)/config/rs6000/libgcc-ppc64.ver
SHLIB_NM_FLAGS = -Bpg -X32_64

# GCC 128-bit long double support routines.
LIB2FUNCS_EXTRA =  $(srcdir)/config/rs6000/ppc64-fp.c \
	$(srcdir)/config/rs6000/darwin-ldouble.c
TARGET_LIBGCC2_CFLAGS = -mlong-double-128

# Either 32-bit and 64-bit objects in archives.
AR_FLAGS_FOR_TARGET = -X32_64

