mirror of
git://sourceware.org/git/newlib-cygwin.git
synced 2025-01-19 12:59:21 +08:00
754f8def0d
For about half the ports, we don't need a subdir configure script. They're using the config/default.m[ht] rules, and they aren't doing any unique configure tests, so they exist just to pass top-level settings down to create the arch Makefile. We can just as easily do that from the top-level Mkaefile directly and skip configure. Most of the remaining configure scripts could be migrated up to the top-level too, but that would require care in each subdir. So let's be lazy and put that off to another day.
177 lines
4.1 KiB
Makefile
177 lines
4.1 KiB
Makefile
# Copyright (c) 2008-2014 Red Hat, Inc. All rights reserved.
|
|
#
|
|
# This copyrighted material is made available to anyone wishing to use, modify,
|
|
# copy, or redistribute it subject to the terms and conditions of the BSD
|
|
# License. This program is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY expressed or implied, including the implied warranties
|
|
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. A copy of this license
|
|
# is available at http://www.opensource.org/licenses. Any Red Hat trademarks that
|
|
# are incorporated in the source code or documentation are not subject to the BSD
|
|
# License and may only be used or replicated with the express permission of
|
|
# Red Hat, Inc.
|
|
|
|
# Makefile for libgloss/msp430.
|
|
|
|
DESTDIR =
|
|
VPATH = @srcdir@
|
|
srcdir = @srcdir@
|
|
objdir = .
|
|
srcroot = $(srcdir)/../..
|
|
objroot = $(objdir)/../..
|
|
|
|
prefix = @prefix@
|
|
exec_prefix = @exec_prefix@
|
|
|
|
host_alias = @host_alias@
|
|
target_alias = @target_alias@
|
|
|
|
bindir = @bindir@
|
|
libdir = @libdir@
|
|
tooldir = $(exec_prefix)/$(target_alias)
|
|
|
|
# Multilib support variables.
|
|
# TOP is used instead of MULTI{BUILD,SRC}TOP.
|
|
MULTIDIRS =
|
|
MULTISUBDIR =
|
|
MULTIDO = true
|
|
MULTICLEAN = true
|
|
|
|
INSTALL = @INSTALL@
|
|
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
|
INSTALL_DATA = @INSTALL_DATA@
|
|
|
|
SHELL = /bin/sh
|
|
|
|
CC = @CC@
|
|
|
|
AS = @AS@
|
|
AR = @AR@
|
|
LD = @LD@
|
|
RANLIB = @RANLIB@
|
|
AR_FLAGS = rc
|
|
|
|
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`
|
|
|
|
SCRIPTS = $(srcdir)/msp430-sim.ld
|
|
SCRIPTS += $(srcdir)/msp430xl-sim.ld
|
|
SCRIPTS += $(srcdir)/intr_vectors.ld
|
|
|
|
CRT = gcrt0.o crt0.o
|
|
SIM_BSP = libsim.a
|
|
LIB_NOSYS = libnosys.a
|
|
LIB_CRT = libcrt.a
|
|
|
|
SIM_OBJS = syscalls.o \
|
|
cio.o \
|
|
write.o \
|
|
unlink.o \
|
|
sbrk.o
|
|
|
|
NOSYS_OBJS = ciosyscalls.o \
|
|
cio.o \
|
|
write.o \
|
|
unlink.o \
|
|
sbrk.o
|
|
|
|
# Each crt_*.o is built from crt0.S using -DL*. crt0.o is built from
|
|
# crt0.s with -DL0 via the default rule below.
|
|
CRT_OBJS = \
|
|
crt_bss.o \
|
|
crt_high_bss.o \
|
|
crt_movedata.o \
|
|
crt_move_highdata.o \
|
|
crt_main.o \
|
|
crt_callexit.o \
|
|
crt_run_init_array.o \
|
|
crt_run_preinit_array.o \
|
|
crt_run_fini_array.o \
|
|
crt_run_array.o \
|
|
crt_init.o
|
|
|
|
#### Host specific Makefile fragment comes in here.
|
|
@host_makefile_frag@
|
|
|
|
|
|
all: $(CRT) $(SIM_BSP) $(LIB_NOSYS) $(LIB_CRT) copy_scripts_to_objdir
|
|
|
|
crt_%.o : crt0.S
|
|
$(CC) -DL$* -Wa,-gdwarf2 -Wa,-I$(srcdir) $(CFLAGS_FOR_TARGET) $(INCLUDES) $(CFLAGS) -c $< -o $@
|
|
|
|
# Override .S.o rule to pass assembler debugging flags
|
|
.S.o:
|
|
$(CC) -DL0 -Wa,-gdwarf2 -Wa,-I$(srcdir) $(CFLAGS_FOR_TARGET) $(INCLUDES) $(CFLAGS) -c $<
|
|
|
|
$(SIM_BSP): $(SIM_OBJS)
|
|
$(AR) $(ARFLAGS) $@ $?
|
|
$(RANLIB) $@
|
|
|
|
$(LIB_NOSYS): $(NOSYS_OBJS)
|
|
$(AR) $(ARFLAGS) $@ $?
|
|
$(RANLIB) $@
|
|
|
|
$(LIB_CRT): $(CRT_OBJS)
|
|
$(AR) $(ARFLAGS) $@ $?
|
|
$(RANLIB) $@
|
|
|
|
copy_scripts_to_objdir: $(SCRIPTS)
|
|
cp $(SCRIPTS) $(objdir)
|
|
|
|
# Dependencies
|
|
|
|
SDEPS = $(srcdir)/cio.h
|
|
|
|
abort.o : $(SDEPS)
|
|
argv.o : $(SDEPS)
|
|
argvlen.o : $(SDEPS)
|
|
chdir.o : $(SDEPS)
|
|
chmod.o : $(SDEPS)
|
|
close.o : $(SDEPS)
|
|
exit.o : $(SDEPS)
|
|
fstat.o : $(SDEPS)
|
|
getpid.o : $(SDEPS)
|
|
gettimeofday.o : $(SDEPS)
|
|
gcrt0.o: gcrt0.S crt0.S
|
|
kill.o : $(SDEPS)
|
|
link.o : $(SDEPS)
|
|
lseek.o : $(SDEPS)
|
|
mcount.o : $(SDEPS)
|
|
open.o : $(SDEPS)
|
|
read.o : $(SDEPS)
|
|
sigprocmask.o : $(SDEPS)
|
|
sleep.o : $(SDEPS)
|
|
stat.o : $(SDEPS)
|
|
time.o : $(SDEPS)
|
|
times.o : $(SDEPS)
|
|
unlink.o : $(SDEPS)
|
|
utime.o : $(SDEPS)
|
|
write.o : $(SDEPS)
|
|
|
|
install: $(CRT) $(SIM_BSP) $(LIB_NOSYS) $(LIB_CRT) $(SCRIPTS)
|
|
mkdir -p $(DESTDIR)$(tooldir)/lib${MULTISUBDIR}
|
|
for c in $(CRT) $(SIM_BSP) $(LIB_NOSYS) $(LIB_CRT); do \
|
|
$(INSTALL_DATA) $$c $(DESTDIR)$(tooldir)/lib${MULTISUBDIR}/$$c ;\
|
|
done
|
|
for c in $(SCRIPTS); do \
|
|
b=`basename $$c`; \
|
|
$(INSTALL_DATA) $$c $(DESTDIR)$(tooldir)/lib${MULTISUBDIR}/$$b ;\
|
|
done
|
|
|
|
clean mostlyclean:
|
|
rm -f *.o *.a
|
|
|
|
distclean maintainer-clean realclean: clean
|
|
rm -f Makefile
|
|
|
|
.PHONY: info dvi doc install-info clean-info
|
|
info doc dvi:
|
|
install-info:
|
|
clean-info:
|
|
|
|
Makefile: Makefile.in ../config.status
|
|
cd .. && $(SHELL) config.status
|