125 lines
2.8 KiB
Makefile
125 lines
2.8 KiB
Makefile
#
|
|
#
|
|
DESTDIR =
|
|
VPATH = @srcdir@ @srcdir@/..
|
|
srcdir = @srcdir@
|
|
objdir = .
|
|
srcroot = $(srcdir)/../..
|
|
objroot = $(objdir)/../..
|
|
mkinstalldirs = $(SHELL) $(srcroot)/mkinstalldirs
|
|
|
|
prefix = @prefix@
|
|
exec_prefix = @exec_prefix@
|
|
|
|
host_alias = @host_alias@
|
|
target_alias = @target_alias@
|
|
|
|
bindir = @bindir@
|
|
libdir = @libdir@
|
|
tooldir = $(exec_prefix)/$(target_alias)
|
|
|
|
objtype = @objtype@
|
|
|
|
INSTALL = @INSTALL@
|
|
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
|
INSTALL_DATA = @INSTALL_DATA@
|
|
|
|
# Multilib support variables.
|
|
# TOP is used instead of MULTI{BUILD,SRC}TOP.
|
|
MULTIDIRS =
|
|
MULTISUBDIR =
|
|
MULTIDO = true
|
|
MULTICLEAN = true
|
|
|
|
SHELL = /bin/sh
|
|
|
|
CC = @CC@
|
|
|
|
AS = @AS@
|
|
AR = @AR@
|
|
LD = @LD@
|
|
RANLIB = @RANLIB@
|
|
|
|
OBJDUMP = `if [ -f ${objroot}/../binutils/objdump ] ; \
|
|
then echo ${objroot}/../binutils/objdump ; \
|
|
else t='$(program_transform_name)'; echo objdump | sed -e $$t ; fi`
|
|
OBJCOPY = `if [ -f ${objroot}/../binutils/objcopy ] ; \
|
|
then echo ${objroot}/../binutils/objcopy ; \
|
|
else t='$(program_transform_name)'; echo objcopy | sed -e $$t ; fi`
|
|
|
|
CRT0 = gcrt0.o crt0.o
|
|
CRT0_INSTALL = install-crt0
|
|
|
|
NSIM_BSP = libnsim.a
|
|
NSIM_OBJS = \
|
|
libcfunc.o \
|
|
nsim-syscalls.o \
|
|
sbrk.o \
|
|
mcount.o
|
|
NSIM_INSTALL = install-nsim
|
|
NSIM_SCRIPTS = nsim.specs
|
|
|
|
NANO_SCRIPTS = nano.specs
|
|
NANO_INSTALL = install-nano
|
|
|
|
CFLAGS = -g
|
|
|
|
# Host specific makefile fragment comes in here.
|
|
@host_makefile_frag@
|
|
|
|
all: $(CRT0) $(NSIM_BSP)
|
|
|
|
$(NSIM_BSP): $(NSIM_OBJS)
|
|
$(AR) $(ARFLAGS) $@ $?
|
|
$(RANLIB) $@
|
|
|
|
libcfunc.o: libcfunc.c
|
|
nsim-syscalls.o: nsim-syscalls.c
|
|
sbrk.o: sbrk.c
|
|
mcount.o: mcount.c
|
|
gcrt0.o: gcrt0.S crt0.S
|
|
crt0.o: crt0.S
|
|
|
|
clean mostlyclean:
|
|
rm -f *.o *.a
|
|
|
|
distclean maintainer-clean realclean: clean
|
|
rm -f Makefile config.status config.log config.cache *~
|
|
|
|
.PHONY: install info install-info clean-info doc dvi
|
|
install: $(CRT0_INSTALL) $(NSIM_INSTALL) $(NANO_INSTALL)
|
|
|
|
# multilibdir may not exist yet - libgcc for ARC depends on libc, hence
|
|
# newlib/libgloss is built before libgcc. And in parallel build libgloss maybe
|
|
# built and installed before newlib, therefore libgloss has to create target
|
|
# directory.
|
|
|
|
$(CRT0_INSTALL):
|
|
$(mkinstalldirs) $(DESTDIR)${tooldir}/lib${MULTISUBDIR}
|
|
for c in $(CRT0); do \
|
|
b=`basename $$c`; \
|
|
${INSTALL_DATA} $$c $(DESTDIR)${tooldir}/lib${MULTISUBDIR}/$$b ;\
|
|
done
|
|
|
|
$(NSIM_INSTALL):
|
|
$(mkinstalldirs) $(DESTDIR)${tooldir}/lib${MULTISUBDIR}
|
|
$(INSTALL_DATA) $(NSIM_BSP) $(DESTDIR)$(tooldir)/lib$(MULTISUBDIR)/$(NSIM_BSP)
|
|
for x in $(NSIM_SCRIPTS); do \
|
|
$(INSTALL_DATA) $(srcdir)/$$x $(DESTDIR)$(tooldir)/lib$(MULTISUBDIR)/$$x; done
|
|
|
|
$(NANO_INSTALL):
|
|
$(mkinstalldirs) $(DESTDIR)${tooldir}/lib${MULTISUBDIR}
|
|
for x in $(NANO_SCRIPTS); do \
|
|
$(INSTALL_DATA) $(srcdir)/$$x $(DESTDIR)$(tooldir)/lib$(MULTISUBDIR)/$$x; done
|
|
|
|
doc:
|
|
info:
|
|
dvi:
|
|
install-info:
|
|
clean-info:
|
|
|
|
Makefile: Makefile.in config.status @host_makefile_frag_path@
|
|
$(SHELL) config.status
|
|
|
|
config.status: configure
|
|
$(SHELL) config.status --recheck
|