From a00da15a2579cb1a6c89788bb0ecfc175abc6a32 Mon Sep 17 00:00:00 2001 From: patacongo Date: Tue, 8 Jan 2008 17:06:21 +0000 Subject: [PATCH] Make logic reorganized for non-GNU toolchain git-svn-id: https://nuttx.svn.sourceforge.net/svnroot/nuttx/trunk@528 7fd9a85b-ad96-42d3-883c-3090e2eb8679 --- nuttx/ChangeLog | 1 + nuttx/Documentation/NuttX.html | 1 + nuttx/Documentation/NuttxPortingGuide.html | 1 + nuttx/Makefile | 28 ++++----- nuttx/arch/arm/src/Makefile | 10 ++-- nuttx/arch/c5471/src/Makefile | 9 ++- nuttx/arch/dm320/src/Makefile | 9 ++- nuttx/arch/pjrc-8051/src/Makefile | 17 +++--- nuttx/arch/sim/src/Makefile | 10 ++-- nuttx/arch/z16/src/Makefile | 12 ++-- nuttx/arch/z80/src/Makefile | 15 ++--- nuttx/configs/README.txt | 1 + nuttx/configs/c5471evm/Make.defs | 20 ++++++- nuttx/configs/c5471evm/src/Makefile | 7 +-- nuttx/configs/m68332evb/Make.defs | 20 ++++++- nuttx/configs/m68332evb/src/Makefile | 7 +-- nuttx/configs/mcu123-lpc214x/Make.defs | 20 ++++++- nuttx/configs/mcu123-lpc214x/src/Makefile | 7 +-- nuttx/configs/ntosd-dm320/Make.defs | 20 ++++++- nuttx/configs/ntosd-dm320/src/Makefile | 7 +-- nuttx/configs/pjrc-8051/Make.defs | 19 +++++- nuttx/configs/pjrc-8051/src/Makefile | 7 +-- nuttx/configs/sim/Make.defs | 20 ++++++- nuttx/configs/sim/src/Makefile | 7 +-- nuttx/configs/z16f2800100zcog/Make.defs | 69 ++++++++++++++-------- nuttx/configs/z16f2800100zcog/src/Makefile | 14 ++--- nuttx/configs/z80sim/Make.defs | 19 +++++- nuttx/configs/z80sim/src/Makefile | 7 +-- nuttx/drivers/Makefile | 9 ++- nuttx/examples/mount/Makefile | 9 ++- nuttx/examples/nettest/Makefile | 15 ++--- nuttx/examples/nsh/Makefile | 9 ++- nuttx/examples/null/Makefile | 9 ++- nuttx/examples/ostest/Makefile | 9 ++- nuttx/examples/udp/Makefile | 9 ++- nuttx/examples/uip/Makefile | 9 ++- nuttx/fs/Makefile | 9 ++- nuttx/lib/Makefile | 9 ++- nuttx/mm/Makefile | 18 +++--- nuttx/net/Makefile | 10 ++-- nuttx/netutils/Makefile | 9 ++- nuttx/sched/Makefile | 9 ++- 42 files changed, 320 insertions(+), 206 deletions(-) diff --git a/nuttx/ChangeLog b/nuttx/ChangeLog index 9531eb1ac..8ba9463ed 100644 --- a/nuttx/ChangeLog +++ b/nuttx/ChangeLog @@ -302,4 +302,5 @@ Z16F2800100ZCOG Development Kit. * Add support toolchains that do not support making of dependencies * Fix Cygwin build with spaces in directory names + * Name make system changes to deal with non-GNU toolchains (i.e., Zilog) diff --git a/nuttx/Documentation/NuttX.html b/nuttx/Documentation/NuttX.html index 67137a66e..52ed3cfa9 100644 --- a/nuttx/Documentation/NuttX.html +++ b/nuttx/Documentation/NuttX.html @@ -789,6 +789,7 @@ Other memory: Z16F2800100ZCOG Development Kit. * Add support toolchains that do not support making of dependencies * Fix Cygwin build with spaces in directory names + * Name make system changes to deal with non-GNU toolchains (i.e., Zilog) diff --git a/nuttx/Documentation/NuttxPortingGuide.html b/nuttx/Documentation/NuttxPortingGuide.html index 1d266406a..11c134634 100644 --- a/nuttx/Documentation/NuttxPortingGuide.html +++ b/nuttx/Documentation/NuttxPortingGuide.html @@ -518,6 +518,7 @@

When this makefile fragment runs, it will be passed TOPDIR which diff --git a/nuttx/Makefile b/nuttx/Makefile index 34961b9c6..7ee658c64 100644 --- a/nuttx/Makefile +++ b/nuttx/Makefile @@ -113,7 +113,7 @@ all: $(BIN) # Build the mkconfig tool used to create include/nuttx/config.h tools/mkconfig: - $(MAKE) -C tools -f Makefile.mkconfig TOPDIR="$(TOPDIR)" mkconfig + @$(MAKE) -C tools -f Makefile.mkconfig TOPDIR="$(TOPDIR)" mkconfig # Create the include/nuttx/config.h file include/nuttx/config.h: $(TOPDIR)/.config tools/mkconfig @@ -203,37 +203,37 @@ check_context: fi sched/libsched$(LIBEXT): context - $(MAKE) -C sched TOPDIR="$(TOPDIR)" libsched$(LIBEXT) + @$(MAKE) -C sched TOPDIR="$(TOPDIR)" libsched$(LIBEXT) lib/liblib$(LIBEXT): context - $(MAKE) -C lib TOPDIR="$(TOPDIR)" liblib$(LIBEXT) + @$(MAKE) -C lib TOPDIR="$(TOPDIR)" liblib$(LIBEXT) $(ARCH_SRC)/libarch$(LIBEXT): context - $(MAKE) -C $(ARCH_SRC) TOPDIR="$(TOPDIR)" libarch$(LIBEXT) + @$(MAKE) -C $(ARCH_SRC) TOPDIR="$(TOPDIR)" libarch$(LIBEXT) mm/libmm$(LIBEXT): context - $(MAKE) -C mm TOPDIR="$(TOPDIR)" libmm$(LIBEXT) + @$(MAKE) -C mm TOPDIR="$(TOPDIR)" libmm$(LIBEXT) net/libnet$(LIBEXT): context - $(MAKE) -C net TOPDIR="$(TOPDIR)" libnet$(LIBEXT) + @$(MAKE) -C net TOPDIR="$(TOPDIR)" libnet$(LIBEXT) netutils/libnetutils$(LIBEXT): context - $(MAKE) -C netutils TOPDIR="$(TOPDIR)" libnetutils$(LIBEXT) + @$(MAKE) -C netutils TOPDIR="$(TOPDIR)" libnetutils$(LIBEXT) fs/libfs$(LIBEXT): context - $(MAKE) -C fs TOPDIR="$(TOPDIR)" libfs$(LIBEXT) + @$(MAKE) -C fs TOPDIR="$(TOPDIR)" libfs$(LIBEXT) drivers/libdrivers$(LIBEXT): context - $(MAKE) -C drivers TOPDIR="$(TOPDIR)" libdrivers$(LIBEXT) + @$(MAKE) -C drivers TOPDIR="$(TOPDIR)" libdrivers$(LIBEXT) pcode/libpcode$(LIBEXT): context - $(MAKE) -C pcode TOPDIR="$(TOPDIR)" libpcode$(LIBEXT) + @$(MAKE) -C pcode TOPDIR="$(TOPDIR)" libpcode$(LIBEXT) examples/$(CONFIG_EXAMPLE)/lib$(CONFIG_EXAMPLE)$(LIBEXT): context - $(MAKE) -C examples/$(CONFIG_EXAMPLE) TOPDIR="$(TOPDIR)" lib$(CONFIG_EXAMPLE)$(LIBEXT) + @$(MAKE) -C examples/$(CONFIG_EXAMPLE) TOPDIR="$(TOPDIR)" lib$(CONFIG_EXAMPLE)$(LIBEXT) $(BIN): context depend $(LINKLIBS) - $(MAKE) -C $(ARCH_SRC) TOPDIR="$(TOPDIR)" LINKLIBS="$(LINKLIBS)" $(BIN) + @$(MAKE) -C $(ARCH_SRC) TOPDIR="$(TOPDIR)" LINKLIBS="$(LINKLIBS)" $(BIN) depend: @for dir in $(MAKEDIRS) ; do \ @@ -246,8 +246,8 @@ subdir_clean: $(MAKE) -C $$dir TOPDIR="$(TOPDIR)" clean ; \ fi \ done - $(MAKE) -C tools -f Makefile.mkconfig TOPDIR="$(TOPDIR)" clean - $(MAKE) -C mm -f Makefile.test TOPDIR="$(TOPDIR)" clean + @$(MAKE) -C tools -f Makefile.mkconfig TOPDIR="$(TOPDIR)" clean + @$(MAKE) -C mm -f Makefile.test TOPDIR="$(TOPDIR)" clean clean: subdir_clean rm -f $(BIN) $(BIN).* mm_test *.map *~ diff --git a/nuttx/arch/arm/src/Makefile b/nuttx/arch/arm/src/Makefile index d3347c23c..445577b4a 100644 --- a/nuttx/arch/arm/src/Makefile +++ b/nuttx/arch/arm/src/Makefile @@ -66,22 +66,22 @@ VPATH = chip:common all: $(HEAD_OBJ) libarch$(LIBEXT) $(AOBJS) $(HEAD_AOBJ): %$(OBJEXT): %.S - $(CC) -c $(CFLAGS) -D__ASSEMBLY__ $< -o $@ + $(call ASSEMBLE, $<, $@) $(COBJS): %$(OBJEXT): %.c - $(CC) -c $(CFLAGS) $< -o $@ + $(call COMPILE, $<, $@) libarch$(LIBEXT): $(OBJS) @( for obj in $(OBJS) ; do \ - $(AR) $@ $${obj} || \ - { echo "$(AR) $@ $obj FAILED!" ; exit 1 ; } ; \ + $(call ARCHIVE, $@, $${obj}); \ done ; ) board/libboard$(LIBEXT): $(MAKE) -C board TOPDIR="$(TOPDIR)" libboard$(LIBEXT) nuttx: $(HEAD_AOBJ) board/libboard$(LIBEXT) - $(LD) --entry=__start $(LDFLAGS) $(LDPATHES) -L$(BOARDDIR) -o $(TOPDIR)/$@ $(HEAD_AOBJ) \ + @echo "LD: nuttx" + @$(LD) --entry=__start $(LDFLAGS) $(LDPATHES) -L$(BOARDDIR) -o $(TOPDIR)/$@ $(HEAD_AOBJ) \ --start-group $(LDLIBS) -lboard --end-group $(EXTRA_LIBS) $(LIBGCC) @$(NM) $(TOPDIR)/$@ | \ grep -v '\(compiled\)\|\(\$(OBJEXT)$$\)\|\( [aUw] \)\|\(\.\.ng$$\)\|\(LASH[RL]DI\)' | \ diff --git a/nuttx/arch/c5471/src/Makefile b/nuttx/arch/c5471/src/Makefile index 809032854..c04d9a9a6 100644 --- a/nuttx/arch/c5471/src/Makefile +++ b/nuttx/arch/c5471/src/Makefile @@ -71,15 +71,14 @@ LIBGCC = ${shell $(CC) -print-libgcc-file-name} all: up_head.o libarch$(LIBEXT) $(AOBJS) $(LINKOBJS): %.o: %.S - $(CC) -c $(CFLAGS) -D__ASSEMBLY__ $< -o $@ + $(call ASSEMBLE, $<, $@) $(COBJS): %.o: %.c - $(CC) -c $(CFLAGS) $< -o $@ + $(call COMPILE, $<, $@) libarch$(LIBEXT): $(OBJS) @( for obj in $(OBJS) ; do \ - $(AR) $@ $${obj} || \ - { echo "$(AR) $@ $obj FAILED!" ; exit 1 ; } ; \ + $(call ARCHIVE, $@, $${obj}); \ done ; ) board/libboard$(LIBEXT): @@ -114,7 +113,7 @@ clean: @if [ -e board/Makefile ]; then \ $(MAKE) -C board TOPDIR=$(TOPDIR) clean ; \ fi - rm -f libarch$(LIBEXT) *.o *~ + rm -f libarch$(LIBEXT) *.o *.obj *~ distclean: clean @if [ -e board/Makefile ]; then \ diff --git a/nuttx/arch/dm320/src/Makefile b/nuttx/arch/dm320/src/Makefile index 8c031185a..41b9a90ab 100644 --- a/nuttx/arch/dm320/src/Makefile +++ b/nuttx/arch/dm320/src/Makefile @@ -69,15 +69,14 @@ LIBGCC = ${shell $(CC) -print-libgcc-file-name} all: up_head.o libarch$(LIBEXT) $(AOBJS) $(LINKOBJS): %.o: %.S - $(CC) -c $(CFLAGS) -D__ASSEMBLY__ $< -o $@ + $(call ASSEMBLE, $<, $@) $(COBJS): %.o: %.c - $(CC) -c $(CFLAGS) $< -o $@ + $(call COMPILE, $<, $@) libarch$(LIBEXT): $(OBJS) @( for obj in $(OBJS) ; do \ - $(AR) $@ $${obj} || \ - { echo "$(AR) $@ $obj FAILED!" ; exit 1 ; } ; \ + $(call ARCHIVE, $@, $${obj}); \ done ; ) board/libboard$(LIBEXT): @@ -114,7 +113,7 @@ clean: @if [ -e board/Makefile ]; then \ $(MAKE) -C board TOPDIR=$(TOPDIR) clean ; \ fi - rm -f libarch$(LIBEXT) *.o *~ + rm -f libarch$(LIBEXT) *.o *.obj *~ distclean: clean @if [ -e board/Makefile ]; then \ diff --git a/nuttx/arch/pjrc-8051/src/Makefile b/nuttx/arch/pjrc-8051/src/Makefile index 3cd07406b..5d95b2f78 100644 --- a/nuttx/arch/pjrc-8051/src/Makefile +++ b/nuttx/arch/pjrc-8051/src/Makefile @@ -108,13 +108,13 @@ STACK_BASE = ${shell \ all: up_head$(OBJEXT) libarch$(LIBEXT) $(ASRCS) $(LINKASRCS): %$(ASMEXT): %.S - $(CPP) -P $(CPPFLAGS) -D__ASSEMBLY__ $< -o $@ + $(CPP) -P $(CPPFLAGS) $< -o $@ $(AOBJS) $(LINKOBJS): $(ASRCS) $(LINKASRCS) - $(AS) $(ASFLAGS) $< + $(call ASSEMBLE, $<, $@) $(COBJS) $(TESTOBJS): %$(OBJEXT): %.c - $(CC) -c $(CFLAGS) $< -o $@ + $(call COMPILE, $<, $@) # Create a header file that contains addressing information needed by the code @@ -147,8 +147,7 @@ up_mem.h: pass1.mem libarch$(LIBEXT): up_mem.h $(OBJS) @( for obj in $(OBJS) ; do \ - $(AR) $@ $${obj} || \ - { echo "$(AR) $@ $${obj} FAILED!" ; exit 1 ; } ; \ + $(call ARCHIVE, $@, $${obj}); \ done ; ) # This is a kludge to work around some conflicting symbols in libsdcc.liXqueb @@ -171,19 +170,21 @@ board/libboard$(LIBEXT): # This target builds the final executable pass1.ihx: up_mem.h $(SDCCLIBDIR)/libmysdcc.lib $(LINKOBJS) board/libboard$(LIBEXT) - $(CC) $(LDFLAGS) $(LDPATHES) -L$(BOARDDIR) $(SDCCPATH) $(LINKOBJS) \ + @echo "LD: $@" + @$(CC) $(LDFLAGS) $(LDPATHES) -L$(BOARDDIR) $(SDCCPATH) $(LINKOBJS) \ $(LDLIBS) -llibboard$(LIBEXT) $(SDCCLIBS) -o $@ @rm -f up_mem.h @rm -f up_allocateheap$(OBJEXT) libarch$(LIBEXT) @$(MAKE) TOPDIR=$(TOPDIR) libarch$(LIBEXT) nuttx.ihx: up_mem.h $(SDCCLIBDIR)/libmysdcc.lib $(LINKOBJS) - $(CC) $(LDFLAGS) $(LDPATHES) -L$(BOARDDIR) $(SDCCPATH) $(LINKOBJS) \ + @echo "LD: $@" + @$(CC) $(LDFLAGS) $(LDPATHES) -L$(BOARDDIR) $(SDCCPATH) $(LINKOBJS) \ $(LDLIBS) -llibboard$(LIBEXT) $(SDCCLIBS) -o $@ nuttx$(EXEEXT): pass1.ihx nuttx.ihx @rm -f pass1.* - packihx nuttx.ihx > $(TOPDIR)/nuttx$(EXEEXT) + @packihx nuttx.ihx > $(TOPDIR)/nuttx$(EXEEXT) @cp -f nuttx.map $(TOPDIR)/. # This target builds a test program to verify interrupt context switching. irqtest is diff --git a/nuttx/arch/sim/src/Makefile b/nuttx/arch/sim/src/Makefile index 83da1d411..61e4d85d5 100644 --- a/nuttx/arch/sim/src/Makefile +++ b/nuttx/arch/sim/src/Makefile @@ -73,22 +73,22 @@ LDLIBS = $(patsubst lib%,-l%,$(basename $(notdir $(LINKLIBS)))) all: up_head$(OBJEXT) libarch$(LIBEXT) $(AOBJS): %$(OBJEXT): %.S - $(CC) -c $(CFLAGS) -D__ASSEMBLY__ $< -o $@ + $(call ASSEMBLE, $<, $@) $(COBJS) $(LINKOBJS): %$(OBJEXT): %.c - $(CC) -c $(CFLAGS) $< -o $@ + $(call COMPILE, $<, $@) $(SPECOBJS): %$(OBJEXT): %.c $(CC) -c $(HOSTCFLAGS) $< -o $@ libarch$(LIBEXT): $(OBJS) @( for obj in $(OBJS) ; do \ - $(AR) $@ $${obj} || \ - { echo "$(AR) $@ $obj FAILED!" ; exit 1 ; } ; \ + $(call ARCHIVE, $@, $${obj}); \ done ; ) nuttx$(EXEEXT): $(LINKOBJS) - $(CC) $(LDFLAGS) $(LDPATHES) -o $(TOPDIR)/$@ $(LINKOBJS) \ + @echo "LD: nuttx$(EXEEXT)" + @$(CC) $(LDFLAGS) $(LDPATHES) -o $(TOPDIR)/$@ $(LINKOBJS) \ -Wl,--start-group $(LDLIBS) -Wl,--end-group $(EXTRA_LIBS) @$(NM) $(TOPDIR)/$@ | \ grep -v '\(compiled\)\|\(\.o$$\)\|\( [aUw] \)\|\(\.\.ng$$\)\|\(LASH[RL]DI\)' | \ diff --git a/nuttx/arch/z16/src/Makefile b/nuttx/arch/z16/src/Makefile index 487257dda..b1eee8ebe 100644 --- a/nuttx/arch/z16/src/Makefile +++ b/nuttx/arch/z16/src/Makefile @@ -37,7 +37,10 @@ -include chip/Make.defs ARCH_SRCDIR = $(TOPDIR)/arch/$(CONFIG_ARCH)/src -CFLAGS += -I$(ARCH_SRCDIR)/chip -I$(ARCH_SRCDIR)/common -I$(TOPDIR)/sched +ARCH_SRCDIR = $(TOPDIR)/arch/$(CONFIG_ARCH)/src +USRINCLUDES = -userinc:".;$(TOPDIR)/sched;$(ARCH_SRCDIR)/chip;$(ARCH_SRCDIR)/common" +INCLUDES = $(ARCHSTDINCLUDES) $(USRINCLUDES) +CFLAGS = $(ARCHWARNINGS) $(ARCHOPTIMIZATION) $(ARCHCPUFLAGS) $(INCLUDES) $(ARCHDEFINES) HEAD_AOBJ = $(HEAD_ASRC:.S=$(OBJEXT)) @@ -66,15 +69,14 @@ VPATH = chip:common all: $(HEAD_OBJ) libarch$(LIBEXT) $(AOBJS) $(HEAD_AOBJ): %$(OBJEXT): %.S - $(CC) -c $(CFLAGS) -D__ASSEMBLY__ $< -o $@ + $(call ASSEMBLE, $<, $@) $(COBJS): %$(OBJEXT): %.c - $(CC) -c $(CFLAGS) $< -o $@ + $(call COMPILE, $<, $@) libarch$(LIBEXT): $(OBJS) @( for obj in $(OBJS) ; do \ - $(AR) $@ $${obj} || \ - { echo "$(AR) $@ $obj FAILED!" ; exit 1 ; } ; \ + $(call ARCHIVE, $@, $${obj}); \ done ; ) board/libboard$(LIBEXT): diff --git a/nuttx/arch/z80/src/Makefile b/nuttx/arch/z80/src/Makefile index b224a86d5..2c1f15c99 100644 --- a/nuttx/arch/z80/src/Makefile +++ b/nuttx/arch/z80/src/Makefile @@ -114,10 +114,10 @@ HEAP_BASE = ${shell \ all: $(HEAD_AOBJ) libarch$(LIBEXT) $(AOBJS) $(HEAD_AOBJ): %$(OBJEXT): %$(ASMEXT) - $(AS) $(ASFLAGS) $@ $< + $(call ASSEMBLE, $<, $@) $(COBJS): %$(OBJEXT): %.c - $(CC) -c $(CFLAGS) $< -o $@ + $(call COMPILE, $<, $@) # This is a kludge to work around some conflicting symbols in libsdcc.liXqueb @@ -158,8 +158,7 @@ endif libarch$(LIBEXT): up_mem.h asm_mem.h $(OBJS) @( for obj in $(OBJS) ; do \ - $(AR) $@ $${obj} || \ - { echo "$(AR) $@ $${obj} FAILED!" ; exit 1 ; } ; \ + $(call ARCHIVE, $@, $${obj}); \ done ; ) # This builds the libboard library in the board/ subdirectory @@ -170,6 +169,7 @@ board/libboard$(LIBEXT): # This target builds the final executable pass1.ihx: up_mem.h asm_mem.h $(SDCCLIBDIR)/myz80.lib $(HEAD_AOBJ) board/libboard$(LIBEXT) + @echo "LD: pass1.ihx" @echo "--" >pass1.lnk # Non-interactive @echo "-k $(BOARDDIR)" >>pass1.lnk # Path to board library @echo "-k $(SDCCLIBDIR)" >>pass1.lnk # Path to SDCC z80 library @@ -187,13 +187,14 @@ pass1.ihx: up_mem.h asm_mem.h $(SDCCLIBDIR)/myz80.lib $(HEAD_AOBJ) board/libboar @echo "pass1.ihx" >>pass1.lnk # Path to head object @echo "$(HEAD_AOBJ)" >>pass1.lnk # Path to head object @echo "-e" >>pass1.lnk # End of script - $(LD) -f pass1.lnk + @$(LD) -f pass1.lnk @rm -f up_mem.h asm_mem.h @rm -f up_allocateheap$(OBJEXT) $(HEAD_AOBJ) libarch$(LIBEXT) @$(MAKE) TOPDIR="$(TOPDIR)" libarch$(LIBEXT) @$(MAKE) TOPDIR="$(TOPDIR)" $(HEAD_AOBJ) nuttx.ihx: up_mem.h asm_mem.h $(SDCCLIBDIR)/myz80.lib $(HEAD_AOBJ) board/libboard$(LIBEXT) + @echo "LD: nuttx.ihx" @echo "--" >nuttx.lnk # Non-interactive @echo "-k $(BOARDDIR)" >>nuttx.lnk # Path to board library @echo "-k $(SDCCLIBDIR)" >>nuttx.lnk # Path to SDCC z80 library @@ -211,11 +212,11 @@ nuttx.ihx: up_mem.h asm_mem.h $(SDCCLIBDIR)/myz80.lib $(HEAD_AOBJ) board/libboar @echo "nuttx.ihx" >>nuttx.lnk # Path to head object @echo "$(HEAD_AOBJ)" >>nuttx.lnk # Path to head object @echo "-e" >>nuttx.lnk # End of script - $(LD) -f nuttx.lnk + @$(LD) -f nuttx.lnk nuttx$(EXEEXT): pass1.ihx nuttx.ihx @rm -f pass1.* - packihx nuttx.ihx > $(TOPDIR)/nuttx$(EXEEXT) + @packihx nuttx.ihx > $(TOPDIR)/nuttx$(EXEEXT) @cp -f nuttx.map $(TOPDIR)/. # Build dependencies diff --git a/nuttx/configs/README.txt b/nuttx/configs/README.txt index 8c10ecbce..3bcb62e00 100644 --- a/nuttx/configs/README.txt +++ b/nuttx/configs/README.txt @@ -81,6 +81,7 @@ Make.defs -- This makefile fragment provides architecture and Tools: CC, LD, AR, NM, OBJCOPY, OBJDUMP Tool options: CFLAGS, LDFLAGS + COMPILE, ASSEMBLE, ARCHIVE, and MKDEP macros When this makefile fragment runs, it will be passed TOPDIR which is the path to the root directory of the build. This makefile diff --git a/nuttx/configs/c5471evm/Make.defs b/nuttx/configs/c5471evm/Make.defs index 1dd6117c6..cda4d7208 100644 --- a/nuttx/configs/c5471evm/Make.defs +++ b/nuttx/configs/c5471evm/Make.defs @@ -59,6 +59,7 @@ OBJDUMP = $(CROSSDEV)objdump CFLAGS = $(ARCHWARNINGS) $(ARCHOPTIMIZATION) \ $(ARCHCPUFLAGS) $(ARCHINCLUDES) $(ARCHDEFINES) -pipe +AFLAGS = $(CFLAGS) -D__ASSEMBLY__ OBJEXT = .o LIBEXT = .a @@ -68,11 +69,26 @@ ifeq ("${CONFIG_DEBUG}","y") LDFLAGS += -g endif +define COMPILE + @echo "CC: $1" + @$(CC) -c $(CFLAGS) $1 -o $2 +endef + +define ASSEMBLE + @echo "AS: $1" + @$(CC) -c $(AFLAGS) $1 -o $2 +endef + +define ARCHIVE + echo "AR: $2"; \ + $(AR) $1 $2 || { echo "$(AR) $1 $2 FAILED!" ; exit 1 ; } +endef + +MKDEP = $(TOPDIR)/tools/mkdeps.sh + HOSTCC = gcc HOSTINCLUDES = -I. HOSTCFLAGS = -Wall -wstrict-prototypes -Wshadow -g -pipe HOSTLDFLAGS = -MKDEP = $(TOPDIR)/tools/mkdeps.sh - diff --git a/nuttx/configs/c5471evm/src/Makefile b/nuttx/configs/c5471evm/src/Makefile index 15de1c476..4b0541ae1 100644 --- a/nuttx/configs/c5471evm/src/Makefile +++ b/nuttx/configs/c5471evm/src/Makefile @@ -51,15 +51,14 @@ CFLAGS += -I$(ARCH_SRCDIR)/chip -I$(ARCH_SRCDIR)/common all: libboard$(LIBEXT) $(AOBJS): %$(OBJEXT): %.S - $(CC) -c $(CFLAGS) -D__ASSEMBLY__ $< -o $@ + $(call ASSEMBLE, $<, $@) $(COBJS) $(LINKOBJS): %$(OBJEXT): %.c - $(CC) -c $(CFLAGS) $< -o $@ + $(call COMPILE, $<, $@) libboard$(LIBEXT): $(OBJS) @( for obj in $(OBJS) ; do \ - $(AR) $@ $${obj} || \ - { echo "$(AR) $@ $obj FAILED!" ; exit 1 ; } ; \ + $(call ARCHIVE, $@, $${obj}); \ done ; ) .depend: Makefile $(SRCS) diff --git a/nuttx/configs/m68332evb/Make.defs b/nuttx/configs/m68332evb/Make.defs index 9bb06d349..af4a88011 100644 --- a/nuttx/configs/m68332evb/Make.defs +++ b/nuttx/configs/m68332evb/Make.defs @@ -59,6 +59,7 @@ OBJDUMP = $(CROSSDEV)objdump CFLAGS = $(ARCHWARNINGS) $(ARCHOPTIMIZATION) \ $(ARCHCPUFLAGS) $(ARCHINCLUDES) $(ARCHDEFINES) -pipe +AFLAGS = $(CFLAGS) -D__ASSEMBLY__ OBJEXT = .o LIBEXT = .a @@ -68,9 +69,24 @@ ifeq ("${CONFIG_DEBUG}","y") LDFLAGS += -g endif +define COMPILE + @echo "CC: $1" + @$(CC) -c $(CFLAGS) $1 -o $2 +endef + +define ASSEMBLE + @echo "AS: $1" + @$(CC) -c $(AFLAGS) $1 -o $2 +endef + +define ARCHIVE + echo "AR: $2"; \ + $(AR) $1 $2 || { echo "$(AR) $1 $2 FAILED!" ; exit 1 ; } +endef + +MKDEP = $(TOPDIR)/tools/mkdeps.sh + HOSTCC = gcc HOSTINCLUDES = -I. HOSTCFLAGS = -Wall -wstrict-prototypes -Wshadow -g -pipe HOSTLDFLAGS = - -MKDEP = $(TOPDIR)/tools/mkdeps.sh diff --git a/nuttx/configs/m68332evb/src/Makefile b/nuttx/configs/m68332evb/src/Makefile index a311e5138..a3c568cec 100644 --- a/nuttx/configs/m68332evb/src/Makefile +++ b/nuttx/configs/m68332evb/src/Makefile @@ -48,15 +48,14 @@ OBJS = $(AOBJS) $(COBJS) all: libboard$(LIBEXT) $(AOBJS): %$(OBJEXT): %.S - $(CC) -c $(CFLAGS) -D__ASSEMBLY__ $< -o $@ + $(call ASSEMBLE, $<, $@) $(COBJS) $(LINKOBJS): %$(OBJEXT): %.c - $(CC) -c $(CFLAGS) $< -o $@ + $(call COMPILE, $<, $@) libboard$(LIBEXT): $(OBJS) @( for obj in $(OBJS) ; do \ - $(AR) $@ $${obj} || \ - { echo "$(AR) $@ $obj FAILED!" ; exit 1 ; } ; \ + $(call ARCHIVE, $@, $${obj}); \ done ; ) .depend: Makefile $(SRCS) diff --git a/nuttx/configs/mcu123-lpc214x/Make.defs b/nuttx/configs/mcu123-lpc214x/Make.defs index 5bf5a0d10..356b6e9c7 100644 --- a/nuttx/configs/mcu123-lpc214x/Make.defs +++ b/nuttx/configs/mcu123-lpc214x/Make.defs @@ -59,6 +59,7 @@ OBJDUMP = $(CROSSDEV)objdump CFLAGS = $(ARCHWARNINGS) $(ARCHOPTIMIZATION) \ $(ARCHCPUFLAGS) $(ARCHINCLUDES) $(ARCHDEFINES) -pipe +AFLAGS = $(CFLAGS) -D__ASSEMBLY__ OBJEXT = .o LIBEXT = .a @@ -68,10 +69,25 @@ ifeq ("${CONFIG_DEBUG}","y") LDFLAGS += -g endif +define COMPILE + @echo "CC: $1" + @$(CC) -c $(CFLAGS) $1 -o $2 +endef + +define ASSEMBLE + @echo "AS: $1" + @$(CC) -c $(AFLAGS) $1 -o $2 +endef + +define ARCHIVE + echo "AR: $2"; \ + $(AR) $1 $2 || { echo "$(AR) $1 $2 FAILED!" ; exit 1 ; } +endef + +MKDEP = $(TOPDIR)/tools/mkdeps.sh + HOSTCC = gcc HOSTINCLUDES = -I. HOSTCFLAGS = -Wall -wstrict-prototypes -Wshadow -g -pipe HOSTLDFLAGS = -MKDEP = $(TOPDIR)/tools/mkdeps.sh - diff --git a/nuttx/configs/mcu123-lpc214x/src/Makefile b/nuttx/configs/mcu123-lpc214x/src/Makefile index 9aa2cde4d..93dea86be 100644 --- a/nuttx/configs/mcu123-lpc214x/src/Makefile +++ b/nuttx/configs/mcu123-lpc214x/src/Makefile @@ -51,15 +51,14 @@ CFLAGS += -I $(TOPDIR)/arch/$(CONFIG_ARCH)/src all: libboard$(LIBEXT) $(AOBJS): %$(OBJEXT): %.S - $(CC) -c $(CFLAGS) -D__ASSEMBLY__ $< -o $@ + $(call ASSEMBLE, $<, $@) $(COBJS) $(LINKOBJS): %$(OBJEXT): %.c - $(CC) -c $(CFLAGS) $< -o $@ + $(call COMPILE, $<, $@) libboard$(LIBEXT): $(OBJS) @( for obj in $(OBJS) ; do \ - $(AR) $@ $${obj} || \ - { echo "$(AR) $@ $obj FAILED!" ; exit 1 ; } ; \ + $(call ARCHIVE, $@, $${obj}); \ done ; ) .depend: Makefile $(SRCS) diff --git a/nuttx/configs/ntosd-dm320/Make.defs b/nuttx/configs/ntosd-dm320/Make.defs index 33d6dd851..1be65e7b8 100644 --- a/nuttx/configs/ntosd-dm320/Make.defs +++ b/nuttx/configs/ntosd-dm320/Make.defs @@ -59,6 +59,7 @@ OBJDUMP = $(CROSSDEV)objdump CFLAGS = $(ARCHWARNINGS) $(ARCHOPTIMIZATION) \ $(ARCHCPUFLAGS) $(ARCHINCLUDES) $(ARCHDEFINES) -pipe +AFLAGS = $(CFLAGS) -D__ASSEMBLY__ OBJEXT = .o LIBEXT = .a @@ -68,10 +69,25 @@ ifeq ("${CONFIG_DEBUG}","y") LDFLAGS += -g endif +define COMPILE + @echo "CC: $1" + @$(CC) -c $(CFLAGS) $1 -o $2 +endef + +define ASSEMBLE + @echo "AS: $1" + @$(CC) -c $(AFLAGS) $1 -o $2 +endef + +define ARCHIVE + echo "AR: $2"; \ + $(AR) $1 $2 || { echo "$(AR) $1 $2 FAILED!" ; exit 1 ; } +endef + +MKDEP = $(TOPDIR)/tools/mkdeps.sh + HOSTCC = gcc HOSTINCLUDES = -I. HOSTCFLAGS = -Wall -Wstrict-prototypes -Wshadow -g -pipe HOSTLDFLAGS = -MKDEP = $(TOPDIR)/tools/mkdeps.sh - diff --git a/nuttx/configs/ntosd-dm320/src/Makefile b/nuttx/configs/ntosd-dm320/src/Makefile index dadf99845..de36b3d5c 100644 --- a/nuttx/configs/ntosd-dm320/src/Makefile +++ b/nuttx/configs/ntosd-dm320/src/Makefile @@ -51,15 +51,14 @@ CFLAGS += -I$(ARCH_SRCDIR)/chip -I$(ARCH_SRCDIR)/common all: libboard$(LIBEXT) $(AOBJS): %$(OBJEXT): %.S - $(CC) -c $(CFLAGS) -D__ASSEMBLY__ $< -o $@ + $(call ASSEMBLE, $<, $@) $(COBJS) $(LINKOBJS): %$(OBJEXT): %.c - $(CC) -c $(CFLAGS) $< -o $@ + $(call COMPILE, $<, $@) libboard$(LIBEXT): $(OBJS) @( for obj in $(OBJS) ; do \ - $(AR) $@ $${obj} || \ - { echo "$(AR) $@ $obj FAILED!" ; exit 1 ; } ; \ + $(call ARCHIVE, $@, $${obj}); \ done ; ) .depend: Makefile $(SRCS) diff --git a/nuttx/configs/pjrc-8051/Make.defs b/nuttx/configs/pjrc-8051/Make.defs index 7891d6b73..5c2482e37 100644 --- a/nuttx/configs/pjrc-8051/Make.defs +++ b/nuttx/configs/pjrc-8051/Make.defs @@ -62,11 +62,26 @@ OBJEXT = .rel LIBEXT = .lib EXEEXT = .hex +define COMPILE + @echo "CC: $1" + @$(CC) -c $(CFLAGS) $1 -o $2 +endef + +define ASSEMBLE + @echo "AS: $1" + @$(AS) $(ASFLAGS) $1 +endef + +define ARCHIVE + echo "AR: $2"; \ + $(AR) $1 $2 || { echo "$(AR) $1 $2 FAILED!" ; exit 1 ; } +endef + +MKDEP = $(TOPDIR)/tools/mkdeps.sh + HOSTCC = gcc HOSTINCLUDES = -I. HOSTCFLAGS = -Wall -wstrict-prototypes -Wshadow -g -pipe HOSTLDFLAGS = -MKDEP = $(TOPDIR)/tools/mkdeps.sh - diff --git a/nuttx/configs/pjrc-8051/src/Makefile b/nuttx/configs/pjrc-8051/src/Makefile index 17f5736e9..31066a637 100644 --- a/nuttx/configs/pjrc-8051/src/Makefile +++ b/nuttx/configs/pjrc-8051/src/Makefile @@ -50,15 +50,14 @@ CFLAGS += -I $(TOPDIR)/arch/$(CONFIG_ARCH)/src all: libboard$(LIBEXT) $(AOBJS): %$(OBJEXT): %.S - $(CC) -c $(CFLAGS) -D__ASSEMBLY__ $< -o $@ + $(call ASSEMBLE, $<, $@) $(COBJS) $(LINKOBJS): %$(OBJEXT): %.c - $(CC) -c $(CFLAGS) $< -o $@ + $(call COMPILE, $<, $@) libboard$(LIBEXT): $(OBJS) @( for obj in $(OBJS) ; do \ - $(AR) $@ $${obj} || \ - { echo "$(AR) $@ $obj FAILED!" ; exit 1 ; } ; \ + $(call ARCHIVE, $@, $${obj}); \ done ; ) .depend: Makefile $(SRCS) diff --git a/nuttx/configs/sim/Make.defs b/nuttx/configs/sim/Make.defs index 972f53cbf..528d8cf53 100644 --- a/nuttx/configs/sim/Make.defs +++ b/nuttx/configs/sim/Make.defs @@ -58,6 +58,7 @@ OBJDUMP = $(CROSSDEV)objdump CFLAGS = $(ARCHWARNINGS) $(ARCHOPTIMIZATION) \ $(ARCHCPUFLAGS) $(ARCHINCLUDES) $(ARCHDEFINES) -pipe +AFLAGS = $(CFLAGS) -D__ASSEMBLY__ OBJEXT = .o LIBEXT = .a @@ -67,10 +68,25 @@ ifeq ("${CONFIG_DEBUG}","y") LDFLAGS += -g endif +define COMPILE + @echo "CC: $1" + @$(CC) -c $(CFLAGS) $1 -o $2 +endef + +define ASSEMBLE + @echo "AS: $1" + @$(CC) -c $(AFLAGS) $1 -o $2 +endef + +define ARCHIVE + echo "AR: $2"; \ + $(AR) $1 $2 || { echo "$(AR) $1 $2 FAILED!" ; exit 1 ; } +endef + +MKDEP = $(TOPDIR)/tools/mkdeps.sh + HOSTCC = gcc HOSTINCLUDES = -I. HOSTCFLAGS = $(ARCHWARNINGS) $(ARCHOPTIMIZATION) \ $(ARCHCPUFLAGS) $(HOSTINCLUDES) $(ARCHDEFINES) -pipe HOSTLDFLAGS = - -MKDEP = $(TOPDIR)/tools/mkdeps.sh diff --git a/nuttx/configs/sim/src/Makefile b/nuttx/configs/sim/src/Makefile index cd3e852dc..55f686091 100644 --- a/nuttx/configs/sim/src/Makefile +++ b/nuttx/configs/sim/src/Makefile @@ -48,15 +48,14 @@ OBJS = $(AOBJS) $(COBJS) all: libboard$(LIBEXT) $(AOBJS): %$(OBJEXT): %.S - $(CC) -c $(CFLAGS) -D__ASSEMBLY__ $< -o $@ + $(call ASSEMBLE, $<, $@) $(COBJS) $(LINKOBJS): %$(OBJEXT): %.c - $(CC) -c $(CFLAGS) $< -o $@ + $(call COMPILE, $<, $@) libboard$(LIBEXT): $(OBJS) @( for obj in $(OBJS) ; do \ - $(AR) $@ $${obj} || \ - { echo "$(AR) $@ $obj FAILED!" ; exit 1 ; } ; \ + $(call ARCHIVE, $@, $${obj}); \ done ; ) .depend: Makefile $(SRCS) diff --git a/nuttx/configs/z16f2800100zcog/Make.defs b/nuttx/configs/z16f2800100zcog/Make.defs index d73a05a42..5cf48fa6c 100644 --- a/nuttx/configs/z16f2800100zcog/Make.defs +++ b/nuttx/configs/z16f2800100zcog/Make.defs @@ -47,12 +47,12 @@ else endif ARCHASMCPUFLAGS = -cpu:Z16F2811AL -NOigcase -ARCHASMLIST = -NOlistmac -name -pagelen:56 -pagewidth:80 -quiet +ARCHASMLIST = -NOlistmac -name -pagelen:56 -pagewidth:80 -quiet ARCHASMWARNINGS = -warn -ARCHASMDEFINES = -define:_Z16F2811AL=1 -define:_Z16K_SERIES=1 -define:_Z16F_SERIES=1 +ARCHASMDEFINES = -define:_Z16F2811AL=1 -define:_Z16K_SERIES=1 -define:_Z16F_SERIES=1 \ -define:__ASSEMBLY__ ARCHASMINCLUDES = -include:$(ZDSINCDIR)/std;$(ZDSINCDIR)/zilog -AFLAGS = $(ARCHASMCPUFLAGS) $(ARCHASMINCLUDES) $(ARCHASMLIST) \ - $(ARCHASMWARNINGS) $(ARCHASMOPTIMIZATION) +AFLAGS = $(ARCHASMCPUFLAGS) $(ARCHASMINCLUDES) $(ARCHASMLIST) \ + $(ARCHASMWARN) $(ARCHASMOPTIMIZATION) ifeq ("${CONFIG_DEBUG}","y") ARCHOPTIMIZATION = -debug -NOregvar -reduceopt @@ -61,32 +61,49 @@ else endif ARCHCPUFLAGS = -chartype:S -model:L -NOmodsect -cpu:Z16F2811AL \ - -asmsw:" $(ARCHASMCPUFLAGS) $(ARCHASMINCLUDES) $(ARCHASMWARNINGS) $(ARCHASMOPTIMIZATION)" -ARCHLIST = -NOgenprint -keeplst -NOlist -NOlistinc -NOkeepasm + -asmsw:" $(ARCHASMCPUFLAGS) $(ARCHASMINCLUDES) (ARCHASMWARN) $(ARCHASMOPTIMIZATION)" +ARCHLIST = -NOgenprint -keeplst -NOlist -NOlistinc -NOkeepasm ARCHPICFLAGS = ARCHWARNINGS = -warn -ARCHDEFINES = -define:_Z16F2811AL -define:_Z16K_SERIES \ - -define:_Z16F_SERIES -ARCHINCLUDES = -stdinc:"$(ZDSINCDIR)/std;$(ZDSINCDIR)/zilog" \ - -usrinc:".;$(TOPDIR)/include" -CFLAGS = $(ARCHWARNINGS) $(ARCHOPTIMIZATION) \ - $(ARCHCPUFLAGS) $(ARCHINCLUDES) $(ARCHDEFINES) +ARCHDEFINES = -define:_Z16F2811AL -define:_Z16K_SERIES \ + -define:_Z16F_SERIES -define: +ARCHSTDINCLUDES = -stdinc:"$(TOPDIR)/include;$(ZDSINCDIR)/std;$(ZDSINCDIR)/zilog" +ARCHUSRINCLUDES = -userinc:"." +ARCHINCLUDES = $(ARCHSTDINCLUDES) $(ARCHUSRINCLUDES) +CCFLAGS = $(ARCHWARNINGS) $(ARCHOPTIMIZATION) \ + $(ARCHCPUFLAGS) $(ARCHINCLUDES) $(ARCHDEFINES) +ARFLAGS = -quiet -warn -CROSSDEV = -CC = $(ZDSBINDIR)/zneocc.exe -CPP = $(ZDSBINDIR)/zneoasm.exe -LD = $(ZDSBINDIR)/zneolink.exe -AS = $(ZDSBINDIR)/zneoasm.exe -AR = $(ZDSBINDIR)/czneolib.exe +CROSSDEV = +CC = $(ZDSBINDIR)/zneocc.exe +CPP = $(ZDSBINDIR)/zneoasm.exe +LD = $(ZDSBINDIR)/zneolink.exe +AS = $(ZDSBINDIR)/zneoasm.exe +AR = $(ZDSBINDIR)/zneolib.exe -ASMEXT = .asm -OBJEXT = .obj -LIBEXT = .lib -EXEEXT = .hex +ASMEXT = .asm +OBJEXT = .obj +LIBEXT = .lib +EXEEXT = .hex -HOSTCC = gcc -HOSTINCLUDES = -I. -HOSTCFLAGS = -Wall -wstrict-prototypes -Wshadow -g -pipe -HOSTLDFLAGS = +define COMPILE + @echo "CC: $1" + @$(CC) $(CFLAGS) $1 +endef + +define ASSEMBLE + @echo "AS: $1" + @$(AS) -c $(AFLAGS) $1 +endef + +define ARCHIVE + echo "AR: $2"; \ + $(AR) $(ARFLAGS) $1=-+$2 || { echo "$(AR) $1=-+$2 FAILED!" ; exit 1 ; } +endef MKDEP = $(TOPDIR)/tools/mknulldeps.sh + +HOSTCC = gcc +HOSTINCLUDES = -I. +HOSTCFLAGS = -Wall -wstrict-prototypes -Wshadow -g -pipe +HOSTLDFLAGS = diff --git a/nuttx/configs/z16f2800100zcog/src/Makefile b/nuttx/configs/z16f2800100zcog/src/Makefile index 0091a70b3..c910fb1e2 100644 --- a/nuttx/configs/z16f2800100zcog/src/Makefile +++ b/nuttx/configs/z16f2800100zcog/src/Makefile @@ -35,7 +35,10 @@ -include $(TOPDIR)/Make.defs -CFLAGS += -I$(TOPDIR)/sched +ARCH_SRCDIR = $(TOPDIR)/arch/$(CONFIG_ARCH)/src +USRINCLUDES = -userinc:".;$(TOPDIR)/sched;$(ARCH_SRCDIR)/chip;$(ARCH_SRCDIR)/common" +INCLUDES = $(ARCHSTDINCLUDES) $(USRINCLUDES) +CFLAGS = $(ARCHWARNINGS) $(ARCHOPTIMIZATION) $(ARCHCPUFLAGS) $(INCLUDES) $(ARCHDEFINES) ASRCS = AOBJS = $(ASRCS:.S=$(OBJEXT)) @@ -45,21 +48,18 @@ COBJS = $(CSRCS:.c=$(OBJEXT)) SRCS = $(ASRCS) $(CSRCS) OBJS = $(AOBJS) $(COBJS) -ARCH_SRCDIR = $(TOPDIR)/arch/$(CONFIG_ARCH)/src -CFLAGS += -I$(ARCH_SRCDIR)/chip -I$(ARCH_SRCDIR)/common all: libboard$(LIBEXT) $(AOBJS): %$(OBJEXT): %.S - $(CC) -c $(CFLAGS) -D__ASSEMBLY__ $< -o $@ + $(call ASSEMBLE, $<, $@) $(COBJS) $(LINKOBJS): %$(OBJEXT): %.c - $(CC) -c $(CFLAGS) $< -o $@ + $(call COMPILE, $<, $@) libboard$(LIBEXT): $(OBJS) @( for obj in $(OBJS) ; do \ - $(AR) $@ $${obj} || \ - { echo "$(AR) $@ $obj FAILED!" ; exit 1 ; } ; \ + $(call ARCHIVE, $@, $${obj}); \ done ; ) .depend: Makefile $(SRCS) diff --git a/nuttx/configs/z80sim/Make.defs b/nuttx/configs/z80sim/Make.defs index 0038dce42..2e4c6db47 100644 --- a/nuttx/configs/z80sim/Make.defs +++ b/nuttx/configs/z80sim/Make.defs @@ -67,9 +67,24 @@ OBJEXT = .o LIBEXT = .lib EXEEXT = .hex +define COMPILE + @echo "CC: $1" + @$(CC) -c $(CFLAGS) $1 -o $2 +endef + +define ASSEMBLE + @echo "AS: $1" + @$(AS) $(ASFLAGS) $2 $1 +endef + +define ARCHIVE + echo "AR: $2"; \ + $(AR) $1 $2 || { echo "$(AR) $1 $2 FAILED!" ; exit 1 ; } +endef + +MKDEP = $(TOPDIR)/tools/mkdeps.sh + HOSTCC = gcc HOSTINCLUDES = -I. HOSTCFLAGS = -Wall -wstrict-prototypes -Wshadow -g -pipe HOSTLDFLAGS = - -MKDEP = $(TOPDIR)/tools/mkdeps.sh diff --git a/nuttx/configs/z80sim/src/Makefile b/nuttx/configs/z80sim/src/Makefile index a1b7eab04..fba996597 100644 --- a/nuttx/configs/z80sim/src/Makefile +++ b/nuttx/configs/z80sim/src/Makefile @@ -50,15 +50,14 @@ CFLAGS += -I $(TOPDIR)/arch/$(CONFIG_ARCH)/src all: libboard$(LIBEXT) $(AOBJS): %$(OBJEXT): %$(ASMEXT) - $(CC) -c $(CFLAGS) -D__ASSEMBLY__ $< -o $@ + $(call ASSEMBLE, $<, $@) $(COBJS) $(LINKOBJS): %$(OBJEXT): %.c - $(CC) -c $(CFLAGS) $< -o $@ + $(call COMPILE, $<, $@) libboard$(LIBEXT): $(OBJS) @( for obj in $(OBJS) ; do \ - $(AR) $@ $${obj} || \ - { echo "$(AR) $@ $obj FAILED!" ; exit 1 ; } ; \ + $(call ARCHIVE, $@, $${obj}); \ done ; ) .depend: Makefile $(SRCS) diff --git a/nuttx/drivers/Makefile b/nuttx/drivers/Makefile index b14eae251..cfe0ab02d 100644 --- a/nuttx/drivers/Makefile +++ b/nuttx/drivers/Makefile @@ -59,15 +59,14 @@ VPATH = net all: $(BIN) $(AOBJS): %$(OBJEXT): %.S - $(CC) -c $(CFLAGS) -D__ASSEMBLY__ $< -o $@ + $(call ASSEMBLE, $<, $@) $(COBJS): %$(OBJEXT): %.c - $(CC) -c $(CFLAGS) $< -o $@ + $(call COMPILE, $<, $@) $(BIN): $(OBJS) @( for obj in $(OBJS) ; do \ - $(AR) $@ $${obj} || \ - { echo "$(AR) $@ $obj FAILED!" ; exit 1 ; } ; \ + $(call ARCHIVE, $@, $${obj}); \ done ; ) .depend: Makefile $(SRCS) @@ -81,7 +80,7 @@ endif depend: .depend clean: - rm -f $(BIN) *.o *.rel *.asm *.lst *.sym *.adb *~ + rm -f $(BIN) *.o *.obj *.rel *.asm *.lst *.sym *.adb *~ distclean: clean rm -f Make.dep .depend diff --git a/nuttx/examples/mount/Makefile b/nuttx/examples/mount/Makefile index 7f40b93db..bee957d07 100644 --- a/nuttx/examples/mount/Makefile +++ b/nuttx/examples/mount/Makefile @@ -49,15 +49,14 @@ BIN = lib$(CONFIG_EXAMPLE)$(LIBEXT) all: $(BIN) $(AOBJS): %$(OBJEXT): %.S - $(CC) -c $(CFLAGS) $< -o $@ + $(call ASSEMBLE, $<, $@) $(COBJS): %$(OBJEXT): %.c - $(CC) -c $(CFLAGS) $< -o $@ + $(call COMPILE, $<, $@) $(BIN): $(OBJS) @( for obj in $(OBJS) ; do \ - $(AR) $@ $${obj} || \ - { echo "$(AR) $@ $obj FAILED!" ; exit 1 ; } ; \ + $(call ARCHIVE, $@, $${obj}); \ done ; ) .depend: Makefile $(SRCS) @@ -67,7 +66,7 @@ $(BIN): $(OBJS) depend: .depend clean: - rm -f $(BIN) *.o *.rel *.asm *.lst *.sym *.adb *~ + rm -f $(BIN) *.o *.obj *.rel *.asm *.lst *.sym *.adb *~ distclean: clean rm -f Make.dep .depend diff --git a/nuttx/examples/nettest/Makefile b/nuttx/examples/nettest/Makefile index f71d2ce13..1a917e3be 100644 --- a/nuttx/examples/nettest/Makefile +++ b/nuttx/examples/nettest/Makefile @@ -72,22 +72,23 @@ HOST_BIN = host all: $(TARG_BIN) $(TARG_AOBJS): %$(OBJEXT): %.S - $(CC) -c $(CFLAGS) $< -o $@ + $(call ASSEMBLE, $<, $@) $(TARG_COBJS): %$(OBJEXT): %.c - $(CC) -c $(CFLAGS) $< -o $@ + $(call COMPILE, $<, $@) $(TARG_BIN): $(TARG_OBJS) $(HOST_BIN) @( for obj in $(TARG_OBJS) ; do \ - $(AR) $@ $${obj} || \ - { echo "$(AR) $@ $obj FAILED!" ; exit 1 ; } ; \ + $(call ARCHIVE, $@, $${obj}); \ done ; ) $(HOST_OBJS): %.o: %.c - $(HOSTCC) -c $(HOSTCFLAGS) $< -o $@ + @echo "CC: $<" + @$(HOSTCC) -c $(HOSTCFLAGS) $< -o $@ $(HOST_BIN): $(HOST_OBJS) - $(HOSTCC) $(HOSTLDFLAGS) $(HOST_OBJS) -o $@ + @echo "LD: $@" + @$(HOSTCC) $(HOSTLDFLAGS) $(HOST_OBJS) -o $@ .depend: Makefile $(TARG_SRCS) @$(MKDEP) $(CC) -- $(CFLAGS) -- $(TARG_SRCS) >Make.dep @@ -96,7 +97,7 @@ $(HOST_BIN): $(HOST_OBJS) depend: .depend clean: - rm -f $(TARG_BIN) $(HOST_BIN) *.o *.rel *.asm *.lst *.sym *.adb *~ + rm -f $(TARG_BIN) $(HOST_BIN) *.o *.obj *.rel *.asm *.lst *.sym *.adb *~ distclean: clean rm -f Make.dep .depend diff --git a/nuttx/examples/nsh/Makefile b/nuttx/examples/nsh/Makefile index 56f4859c6..9c1bb7a78 100644 --- a/nuttx/examples/nsh/Makefile +++ b/nuttx/examples/nsh/Makefile @@ -62,15 +62,14 @@ BIN = lib$(CONFIG_EXAMPLE)$(LIBEXT) all: $(BIN) $(AOBJS): %$(OBJEXT): %.S - $(CC) -c $(CFLAGS) $< -o $@ + $(call ASSEMBLE, $<, $@) $(COBJS): %$(OBJEXT): %.c - $(CC) -c $(CFLAGS) $< -o $@ + $(call COMPILE, $<, $@) $(BIN): $(OBJS) @( for obj in $(OBJS) ; do \ - $(AR) $@ $${obj} || \ - { echo "$(AR) $@ $obj FAILED!" ; exit 1 ; } ; \ + $(call ARCHIVE, $@, $${obj}); \ done ; ) .depend: Makefile $(SRCS) @@ -80,7 +79,7 @@ $(BIN): $(OBJS) depend: .depend clean: - rm -f $(BIN) *.o *.rel *.asm *.lst *.sym *.adb *~ + rm -f $(BIN) *.o *.obj *.rel *.asm *.lst *.sym *.adb *~ distclean: clean rm -f Make.dep .depend diff --git a/nuttx/examples/null/Makefile b/nuttx/examples/null/Makefile index 464d0f59d..39542b084 100644 --- a/nuttx/examples/null/Makefile +++ b/nuttx/examples/null/Makefile @@ -49,15 +49,14 @@ BIN = lib$(CONFIG_EXAMPLE)$(LIBEXT) all: $(BIN) $(AOBJS): %$(OBJEXT): %.S - $(CC) -c $(CFLAGS) $< -o $@ + $(call ASSEMBLE, $<, $@) $(COBJS): %$(OBJEXT): %.c - $(CC) -c $(CFLAGS) $< -o $@ + $(call COMPILE, $<, $@) $(BIN): $(OBJS) @( for obj in $(OBJS) ; do \ - $(AR) $@ $${obj} || \ - { echo "$(AR) $@ $obj FAILED!" ; exit 1 ; } ; \ + $(call ARCHIVE, $@, $${obj}); \ done ; ) .depend: Makefile $(SRCS) @@ -67,7 +66,7 @@ $(BIN): $(OBJS) depend: .depend clean: - rm -f $(BIN) *.o *.rel *.asm *.lst *.sym *.adb *~ + rm -f $(BIN) *.o *.obj *.rel *.asm *.lst *.sym *.adb *~ distclean: clean rm -f Make.dep .depend diff --git a/nuttx/examples/ostest/Makefile b/nuttx/examples/ostest/Makefile index 143d33160..f473e08d5 100644 --- a/nuttx/examples/ostest/Makefile +++ b/nuttx/examples/ostest/Makefile @@ -72,15 +72,14 @@ BIN = lib$(CONFIG_EXAMPLE)$(LIBEXT) all: $(BIN) $(AOBJS): %$(OBJEXT): %.S - $(CC) -c $(CFLAGS) $< -o $@ + $(call ASSEMBLE, $<, $@) $(COBJS): %$(OBJEXT): %.c - $(CC) -c $(CFLAGS) $< -o $@ + $(call COMPILE, $<, $@) $(BIN): $(OBJS) @( for obj in $(OBJS) ; do \ - $(AR) $@ $${obj} || \ - { echo "$(AR) $@ $obj FAILED!" ; exit 1 ; } ; \ + $(call ARCHIVE, $@, $${obj}); \ done ; ) .depend: Makefile $(SRCS) @@ -90,7 +89,7 @@ $(BIN): $(OBJS) depend: .depend clean: - rm -f $(BIN) *.o *.rel *.asm *.lst *.sym *.adb *~ + rm -f $(BIN) *.o *.obj *.rel *.asm *.lst *.sym *.adb *~ distclean: clean rm -f Make.dep .depend diff --git a/nuttx/examples/udp/Makefile b/nuttx/examples/udp/Makefile index 04f2005cc..1d3e67590 100644 --- a/nuttx/examples/udp/Makefile +++ b/nuttx/examples/udp/Makefile @@ -72,15 +72,14 @@ HOST_BIN = host all: $(TARG_BIN) $(TARG_AOBJS): %$(OBJEXT): %.S - $(CC) -c $(CFLAGS) $< -o $@ + $(call ASSEMBLE, $<, $@) $(TARG_COBJS): %$(OBJEXT): %.c - $(CC) -c $(CFLAGS) $< -o $@ + $(call COMPILE, $<, $@) $(TARG_BIN): $(TARG_OBJS) $(HOST_BIN) @( for obj in $(TARG_OBJS) ; do \ - $(AR) $@ $${obj} || \ - { echo "$(AR) $@ $obj FAILED!" ; exit 1 ; } ; \ + $(call ARCHIVE, $@, $${obj}); \ done ; ) $(HOST_OBJS): %.o: %.c @@ -96,7 +95,7 @@ $(HOST_BIN): $(HOST_OBJS) depend: .depend clean: - rm -f $(TARG_BIN) $(HOST_BIN) *.o *.rel *.asm *.lst *.sym *.adb *~ + rm -f $(TARG_BIN) $(HOST_BIN) *.o *.obj *.rel *.asm *.lst *.sym *.adb *~ distclean: clean rm -f Make.dep .depend diff --git a/nuttx/examples/uip/Makefile b/nuttx/examples/uip/Makefile index f13cf0bab..0408b9b7c 100644 --- a/nuttx/examples/uip/Makefile +++ b/nuttx/examples/uip/Makefile @@ -49,15 +49,14 @@ BIN = lib$(CONFIG_EXAMPLE)$(LIBEXT) all: $(BIN) $(AOBJS): %$(OBJEXT): %.S - $(CC) -c $(CFLAGS) $< -o $@ + $(call ASSEMBLE, $<, $@) $(COBJS): %$(OBJEXT): %.c - $(CC) -c $(CFLAGS) $< -o $@ + $(call COMPILE, $<, $@) $(BIN): $(OBJS) @( for obj in $(OBJS) ; do \ - $(AR) $@ $${obj} || \ - { echo "$(AR) $@ $obj FAILED!" ; exit 1 ; } ; \ + $(call ARCHIVE, $@, $${obj}); \ done ; ) .depend: Makefile $(SRCS) @@ -67,7 +66,7 @@ $(BIN): $(OBJS) depend: .depend clean: - rm -f $(BIN) *.o *.rel *.asm *.lst *.sym *.adb *~ + rm -f $(BIN) *.o *.obj *.rel *.asm *.lst *.sym *.adb *~ distclean: clean rm -f Make.dep .depend diff --git a/nuttx/fs/Makefile b/nuttx/fs/Makefile index dfa0a4b90..ee7a36150 100644 --- a/nuttx/fs/Makefile +++ b/nuttx/fs/Makefile @@ -72,15 +72,14 @@ BIN = libfs$(LIBEXT) all: $(BIN) $(AOBJS): %$(OBJEXT): %.S - $(CC) -c $(CFLAGS) -D__ASSEMBLY__ $< -o $@ + $(call ASSEMBLE, $<, $@) $(COBJS): %$(OBJEXT): %.c - $(CC) -c $(CFLAGS) $< -o $@ + $(call COMPILE, $<, $@) $(BIN): $(OBJS) @( for obj in $(OBJS) ; do \ - $(AR) $@ $${obj} || \ - { echo "$(AR) $@ $obj FAILED!" ; exit 1 ; } ; \ + $(call ARCHIVE, $@, $${obj}); \ done ; ) .depend: Makefile $(SRCS) @@ -90,7 +89,7 @@ $(BIN): $(OBJS) depend: .depend clean: - rm -f $(BIN) *.o *.rel *.asm *.lst *.sym *.adb *~ + rm -f $(BIN) *.o *.obj *.rel *.asm *.lst *.sym *.adb *~ distclean: clean rm -f Make.dep .depend diff --git a/nuttx/lib/Makefile b/nuttx/lib/Makefile index 0489cf7c3..991666eb7 100644 --- a/nuttx/lib/Makefile +++ b/nuttx/lib/Makefile @@ -92,15 +92,14 @@ BIN = liblib$(LIBEXT) all: $(BIN) $(AOBJS): %$(OBJEXT): %.S - $(CC) -c $(CFLAGS) -D__ASSEMBLY__ $< -o $@ + $(call ASSEMBLE, $<, $@) $(COBJS): %$(OBJEXT): %.c - $(CC) -c $(CFLAGS) $< -o $@ + $(call COMPILE, $<, $@) $(BIN): $(OBJS) @( for obj in $(OBJS) ; do \ - $(AR) $@ $${obj} || \ - { echo "$(AR) $@ $obj FAILED!" ; exit 1 ; } ; \ + $(call ARCHIVE, $@, $${obj}); \ done ; ) .depend: Makefile $(SRCS) @@ -110,7 +109,7 @@ $(BIN): $(OBJS) depend: .depend clean: - rm -f $(BIN) *.o *.rel *.asm *.lst *.sym *.adb *~ + rm -f $(BIN) *.o *.obj *.rel *.asm *.lst *.sym *.adb *~ distclean: clean rm -f Make.dep .depend diff --git a/nuttx/mm/Makefile b/nuttx/mm/Makefile index 3d9961664..e7495b77c 100644 --- a/nuttx/mm/Makefile +++ b/nuttx/mm/Makefile @@ -36,11 +36,11 @@ -include $(TOPDIR)/Make.defs ASRCS = -AOBJS = $(ASRCS:.S=.o) +AOBJS = $(ASRCS:.S=$(OBJEXT)) CSRCS = mm_initialize.c mm_sem.c mm_addfreechunk.c mm_size2ndx.c mm_shrinkchunk.c \ mm_malloc.c mm_zalloc.c mm_calloc.c mm_realloc.c \ mm_memalign.c mm_free.c mm_mallinfo.c -COBJS = $(CSRCS:.c=.o) +COBJS = $(CSRCS:.c=$(OBJEXT)) SRCS = $(ASRCS) $(CSRCS) OBJS = $(AOBJS) $(COBJS) @@ -49,16 +49,15 @@ BIN = libmm$(LIBEXT) all: $(BIN) -$(AOBJS): %.o: %.S - $(CC) -c $(CFLAGS) $< -o $@ +$(AOBJS): %$(OBJEXT): %.S + $(call ASSEMBLE, $<, $@) -$(COBJS): %.o: %.c - $(CC) -c $(CFLAGS) $< -o $@ +$(COBJS): %$(OBJEXT): %.c + $(call COMPILE, $<, $@) $(BIN): $(OBJS) @( for obj in $(OBJS) ; do \ - $(AR) $@ $${obj} || \ - { echo "$(AR) $@ $obj FAILED!" ; exit 1 ; } ; \ + $(call ARCHIVE, $@, $${obj}); \ done ; ) .depend: Makefile $(SRCS) @@ -68,7 +67,8 @@ $(BIN): $(OBJS) depend: .depend clean: - rm -f $(BIN) *.o *.asm *.lst *.sym *.adb *~ + rm -f $(BIN) *.asm *.lst *.sym *.adb *~ .*.swp + if [ ! -z "$(OBJEXT)" ]; then rm -f *$(OBJEXT); fi distclean: clean rm -f Make.dep .depend diff --git a/nuttx/net/Makefile b/nuttx/net/Makefile index 2ffb0826f..5124a64ad 100644 --- a/nuttx/net/Makefile +++ b/nuttx/net/Makefile @@ -34,7 +34,6 @@ ############################################################################ -include $(TOPDIR)/Make.defs -CFLAGS += -I./uip ifeq ($(CONFIG_NET),y) SOCK_ASRCS = @@ -76,15 +75,14 @@ VPATH = uip all: $(BIN) $(AOBJS): %$(OBJEXT): %.S - $(CC) -c $(CFLAGS) -D__ASSEMBLY__ $< -o $@ + $(call ASSEMBLE, $<, $@) $(COBJS): %$(OBJEXT): %.c - $(CC) -c $(CFLAGS) $< -o $@ + $(call COMPILE, $<, $@) $(BIN): $(OBJS) @( for obj in $(OBJS) ; do \ - $(AR) $@ $${obj} || \ - { echo "$(AR) $@ $obj FAILED!" ; exit 1 ; } ; \ + $(call ARCHIVE, $@, $${obj}); \ done ; ) .depend: Makefile $(SRCS) @@ -96,7 +94,7 @@ endif depend: .depend clean: - rm -f $(BIN) *.o *.rel *.asm *.lst *.sym *.adb *~ + rm -f $(BIN) *.o *.obj *.rel *.asm *.lst *.sym *.adb *~ rm -f uip/*~ if [ ! -z "$(OBJEXT)" ]; then rm -f *$(OBJEXT); fi diff --git a/nuttx/netutils/Makefile b/nuttx/netutils/Makefile index 5e298e725..36f03d3b8 100644 --- a/nuttx/netutils/Makefile +++ b/nuttx/netutils/Makefile @@ -68,15 +68,14 @@ VPATH = uiplib:dhcpc:dhcpd:resolv:smtp:telnetd:webclient:webserver all: $(BIN) $(AOBJS): %$(OBJEXT): %.S - $(CC) -c $(CFLAGS) -D__ASSEMBLY__ $< -o $@ + $(call ASSEMBLE, $<, $@) $(COBJS): %$(OBJEXT): %.c - $(CC) -c $(CFLAGS) $< -o $@ + $(call COMPILE, $<, $@) $(BIN): $(OBJS) @( for obj in $(OBJS) ; do \ - $(AR) $@ $${obj} || \ - { echo "$(AR) $@ $obj FAILED!" ; exit 1 ; } ; \ + $(call ARCHIVE, $@, $${obj}); \ done ; ) .depend: Makefile $(SRCS) @@ -91,7 +90,7 @@ endif depend: .depend clean: - @rm -f $(BIN) *.o *.rel *.asm *.lst *.sym *.adb *~ + @rm -f $(BIN) *.o *.obj *.rel *.asm *.lst *.sym *.adb *~ @rm -f uiplib/*~ dhcpc/*~ dhcpd/*~ resolv/*~ smtp/*~ telnetd/*~ webclient/*~ webserver/*~ @if [ ! -z "$(OBJEXT)" ]; then rm -f *$(OBJEXT); fi @$(MAKE) -C dhcpd -f Makefile.host clean diff --git a/nuttx/sched/Makefile b/nuttx/sched/Makefile index 205a83c83..749f1b0a7 100644 --- a/nuttx/sched/Makefile +++ b/nuttx/sched/Makefile @@ -142,15 +142,14 @@ BIN = libsched$(LIBEXT) all: $(BIN) $(AOBJS): %$(OBJEXT): %.S - $(CC) -c $(CFLAGS) -D__ASSEMBLY__ $< -o $@ + $(call ASSEMBLE, $<, $@) $(COBJS): %$(OBJEXT): %.c - $(CC) -c $(CFLAGS) $< -o $@ + $(call COMPILE, $<, $@) $(BIN): $(OBJS) @( for obj in $(OBJS) ; do \ - $(AR) $@ $${obj} || \ - { echo "$(AR) $@ $obj FAILED!" ; exit 1 ; } ; \ + $(call ARCHIVE, $@, $${obj}); \ done ; ) .depend: Makefile $(SRCS) @@ -160,7 +159,7 @@ $(BIN): $(OBJS) depend: .depend clean: - rm -f $(BIN) *.o *.rel *.asm *.lst *.sym *.adb *~ + rm -f $(BIN) *.o *.obj *.rel *.asm *.lst *.sym *.adb *~ if [ ! -z "$(OBJEXT)" ]; then rm -f *$(OBJEXT); fi distclean: clean