diff --git a/ChangeLog b/ChangeLog
index 9531eb1ac87..8ba9463ed9d 100644
--- a/ChangeLog
+++ b/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/Documentation/NuttX.html b/Documentation/NuttX.html
index 67137a66ed4..52ed3cfa994 100644
--- a/Documentation/NuttX.html
+++ b/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/Documentation/NuttxPortingGuide.html b/Documentation/NuttxPortingGuide.html
index 1d266406ac0..11c134634f9 100644
--- a/Documentation/NuttxPortingGuide.html
+++ b/Documentation/NuttxPortingGuide.html
@@ -518,6 +518,7 @@
- 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
diff --git a/Makefile b/Makefile
index 34961b9c603..7ee658c642e 100644
--- a/Makefile
+++ b/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/arch/arm/src/Makefile b/arch/arm/src/Makefile
index d3347c23c7d..445577b4afa 100644
--- a/arch/arm/src/Makefile
+++ b/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/arch/c5471/src/Makefile b/arch/c5471/src/Makefile
index 8090328545a..c04d9a9a681 100644
--- a/arch/c5471/src/Makefile
+++ b/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/arch/dm320/src/Makefile b/arch/dm320/src/Makefile
index 8c031185a43..41b9a90ab28 100644
--- a/arch/dm320/src/Makefile
+++ b/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/arch/pjrc-8051/src/Makefile b/arch/pjrc-8051/src/Makefile
index 3cd07406bba..5d95b2f78df 100644
--- a/arch/pjrc-8051/src/Makefile
+++ b/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/arch/sim/src/Makefile b/arch/sim/src/Makefile
index 83da1d411c1..61e4d85d58e 100644
--- a/arch/sim/src/Makefile
+++ b/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/arch/z16/src/Makefile b/arch/z16/src/Makefile
index 487257dda19..b1eee8ebea8 100644
--- a/arch/z16/src/Makefile
+++ b/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/arch/z80/src/Makefile b/arch/z80/src/Makefile
index b224a86d577..2c1f15c99be 100644
--- a/arch/z80/src/Makefile
+++ b/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/configs/README.txt b/configs/README.txt
index 8c10ecbce75..3bcb62e00ae 100644
--- a/configs/README.txt
+++ b/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/configs/c5471evm/Make.defs b/configs/c5471evm/Make.defs
index 1dd6117c69b..cda4d72082c 100644
--- a/configs/c5471evm/Make.defs
+++ b/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/configs/c5471evm/src/Makefile b/configs/c5471evm/src/Makefile
index 15de1c47697..4b0541ae16c 100644
--- a/configs/c5471evm/src/Makefile
+++ b/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/configs/m68332evb/Make.defs b/configs/m68332evb/Make.defs
index 9bb06d34906..af4a880119b 100644
--- a/configs/m68332evb/Make.defs
+++ b/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/configs/m68332evb/src/Makefile b/configs/m68332evb/src/Makefile
index a311e5138c3..a3c568cec69 100644
--- a/configs/m68332evb/src/Makefile
+++ b/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/configs/mcu123-lpc214x/Make.defs b/configs/mcu123-lpc214x/Make.defs
index 5bf5a0d1048..356b6e9c70d 100644
--- a/configs/mcu123-lpc214x/Make.defs
+++ b/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/configs/mcu123-lpc214x/src/Makefile b/configs/mcu123-lpc214x/src/Makefile
index 9aa2cde4da6..93dea86be8f 100644
--- a/configs/mcu123-lpc214x/src/Makefile
+++ b/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/configs/ntosd-dm320/Make.defs b/configs/ntosd-dm320/Make.defs
index 33d6dd85124..1be65e7b82a 100644
--- a/configs/ntosd-dm320/Make.defs
+++ b/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/configs/ntosd-dm320/src/Makefile b/configs/ntosd-dm320/src/Makefile
index dadf99845ba..de36b3d5cba 100644
--- a/configs/ntosd-dm320/src/Makefile
+++ b/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/configs/pjrc-8051/Make.defs b/configs/pjrc-8051/Make.defs
index 7891d6b73de..5c2482e37e7 100644
--- a/configs/pjrc-8051/Make.defs
+++ b/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/configs/pjrc-8051/src/Makefile b/configs/pjrc-8051/src/Makefile
index 17f5736e9e1..31066a6372f 100644
--- a/configs/pjrc-8051/src/Makefile
+++ b/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/configs/sim/Make.defs b/configs/sim/Make.defs
index 972f53cbf1a..528d8cf53e3 100644
--- a/configs/sim/Make.defs
+++ b/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/configs/sim/src/Makefile b/configs/sim/src/Makefile
index cd3e852dc99..55f6860917d 100644
--- a/configs/sim/src/Makefile
+++ b/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/configs/z16f2800100zcog/Make.defs b/configs/z16f2800100zcog/Make.defs
index d73a05a422d..5cf48fa6c77 100644
--- a/configs/z16f2800100zcog/Make.defs
+++ b/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/configs/z16f2800100zcog/src/Makefile b/configs/z16f2800100zcog/src/Makefile
index 0091a70b319..c910fb1e282 100644
--- a/configs/z16f2800100zcog/src/Makefile
+++ b/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/configs/z80sim/Make.defs b/configs/z80sim/Make.defs
index 0038dce4278..2e4c6db47b9 100644
--- a/configs/z80sim/Make.defs
+++ b/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/configs/z80sim/src/Makefile b/configs/z80sim/src/Makefile
index a1b7eab04f2..fba996597c8 100644
--- a/configs/z80sim/src/Makefile
+++ b/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/drivers/Makefile b/drivers/Makefile
index b14eae2513a..cfe0ab02d6a 100644
--- a/drivers/Makefile
+++ b/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/examples/mount/Makefile b/examples/mount/Makefile
index 7f40b93dbd4..bee957d072f 100644
--- a/examples/mount/Makefile
+++ b/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/examples/nettest/Makefile b/examples/nettest/Makefile
index f71d2ce1350..1a917e3bebe 100644
--- a/examples/nettest/Makefile
+++ b/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/examples/nsh/Makefile b/examples/nsh/Makefile
index 56f4859c63c..9c1bb7a7801 100644
--- a/examples/nsh/Makefile
+++ b/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/examples/null/Makefile b/examples/null/Makefile
index 464d0f59db5..39542b084d6 100644
--- a/examples/null/Makefile
+++ b/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/examples/ostest/Makefile b/examples/ostest/Makefile
index 143d331608e..f473e08d58b 100644
--- a/examples/ostest/Makefile
+++ b/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/examples/udp/Makefile b/examples/udp/Makefile
index 04f2005cc24..1d3e675909f 100644
--- a/examples/udp/Makefile
+++ b/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/examples/uip/Makefile b/examples/uip/Makefile
index f13cf0bab8c..0408b9b7cd6 100644
--- a/examples/uip/Makefile
+++ b/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/fs/Makefile b/fs/Makefile
index dfa0a4b9029..ee7a36150b5 100644
--- a/fs/Makefile
+++ b/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/lib/Makefile b/lib/Makefile
index 0489cf7c379..991666eb7eb 100644
--- a/lib/Makefile
+++ b/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/mm/Makefile b/mm/Makefile
index 3d996166485..e7495b77c78 100644
--- a/mm/Makefile
+++ b/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/net/Makefile b/net/Makefile
index 2ffb0826f37..5124a64ad54 100644
--- a/net/Makefile
+++ b/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/netutils/Makefile b/netutils/Makefile
index 5e298e72564..36f03d3b830 100644
--- a/netutils/Makefile
+++ b/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/sched/Makefile b/sched/Makefile
index 205a83c8390..749f1b0a713 100644
--- a/sched/Makefile
+++ b/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