RANLIB_FOR_TARGET = ` \
  if [ -f $(objdir)/../binutils/ranlib ] ; then \
    echo $(objdir)/../binutils/ranlib ; \
  else \
    if [ "$(host)" = "$(target)" ] ; then \
      echo ranlib; \
    else \
       if [ -f $(bindir)/$(target_noncanonical)-ranlib ] ; then \
	  echo $(bindir)/$(target_noncanonical)-ranlib ; \
       else \
          t='$(program_transform_cross_name)'; echo ranlib | sed -e $$t ; \
       fi; \
    fi; \
  fi`

T_CPPFLAGS = -DUSE_GAS

LIB1ASMSRC = m68hc11/larith.asm
LIB1ASMFUNCS = _mulsi3 \
	_mulqi3 _ashlsi3 _ashrsi3 _lshrsi3 \
	_divmodhi4 _mulhi3 _mulhi32 \
	_memcpy _memset _negsi2 _one_cmplsi2 \
	_regs_min _regs_frame _regs_d1_2 \
	_regs_d3_4 _regs_d5_6 _regs_d7_8 _regs_d9_16 _regs_d17_32 \
	_premain __exit _abort _cleanup \
	_adddi3 _subdi3 _notdi2 _rotlhi3 _rotrhi3 \
	_ashrhi3 _lshrhi3 _lshlhi3 _ashrqi3 _lshlqi3 _map_data _init_bss \
	_ctor _dtor _far_tramp _call_far _return_far

TARGET_LIBGCC2_CFLAGS = -DUSE_GAS -DIN_GCC -Dinhibit_libc

# C implementation of 32-bit div/mod.
LIB2FUNCS_EXTRA = $(srcdir)/config/udivmodsi4.c \
	$(srcdir)/config/divmod.c $(srcdir)/config/udivmod.c

# Don't compile with -g1 this reduces the size of some sections (.eh_frame).
LIBGCC2_DEBUG_CFLAGS =-g
LIBGCC2_CFLAGS = -Os -mrelax $(LIBGCC2_INCLUDES) $(TARGET_LIBGCC2_CFLAGS) $(LIBGCC2_DEBUG_CFLAGS) $(GTHREAD_FLAGS) -DIN_LIBGCC2

MULTILIB_OPTIONS  = m68hc11/m68hc12 mshort fshort-double
MULTILIB_DIRNAMES =
MULTILIB_MATCHES  = m68hc11=m6811 m68hc12=m6812 m68hc12=m68hcs12
MULTILIB_EXCEPTIONS = -mnoshort -mno68hc11

LIBGCC = stmp-multilib
INSTALL_LIBGCC = install-multilib

# 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
	echo '#define SMALL_MACHINE' >> dp-bit.c
	echo '#define CMPtype HItype' >> dp-bit.c
	echo '#ifdef __LITTLE_ENDIAN__' >> dp-bit.c
	echo '#define FLOAT_BIT_ORDER_MISMATCH' >>dp-bit.c
	echo '#endif' 		>> dp-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
	echo '#define CMPtype HItype' >> fp-bit.c
	echo '#define SMALL_MACHINE' >> fp-bit.c
	echo '#ifdef __LITTLE_ENDIAN__' >> fp-bit.c
	echo '#define FLOAT_BIT_ORDER_MISMATCH' >>fp-bit.c
	echo '#endif' 		>> fp-bit.c
	cat $(srcdir)/config/fp-bit.c >> fp-bit.c

CRT0_S = $(srcdir)/config/m68hc11/m68hc11-crt0.S
MCRT0_S= $(srcdir)/config/m68hc11/m68hc11-crt0.S

CRT0STUFF_T_CFLAGS =

# Assemble startup files.
$(T)crt1.o: $(CRT0_S) $(GCC_PASSES)
	$(GCC_FOR_TARGET) $(MULTILIB_CFLAGS) -c -o $(T)crt1.o -x assembler-with-cpp $(CRT0_S)

EXTRA_MULTILIB_PARTS = crt1.o
