summaryrefslogtreecommitdiff
path: root/nuttx/arch
diff options
context:
space:
mode:
Diffstat (limited to 'nuttx/arch')
-rw-r--r--nuttx/arch/8051/src/Makefile100
-rw-r--r--nuttx/arch/arm/src/Makefile9
-rw-r--r--nuttx/arch/avr/src/Makefile71
-rw-r--r--nuttx/arch/hc/src/Makefile55
-rw-r--r--nuttx/arch/mips/src/Makefile57
-rw-r--r--nuttx/arch/rgmp/src/Makefile5
-rw-r--r--nuttx/arch/sh/src/Makefile43
-rw-r--r--nuttx/arch/sim/src/Makefile17
-rw-r--r--nuttx/arch/x86/src/Makefile63
-rw-r--r--nuttx/arch/z16/src/Makefile44
-rw-r--r--nuttx/arch/z80/src/Makefile.sdcc34
11 files changed, 255 insertions, 243 deletions
diff --git a/nuttx/arch/8051/src/Makefile b/nuttx/arch/8051/src/Makefile
index 83c796119..54a3ce79b 100644
--- a/nuttx/arch/8051/src/Makefile
+++ b/nuttx/arch/8051/src/Makefile
@@ -35,51 +35,51 @@
-include $(TOPDIR)/Make.defs
-CFLAGS += -I$(TOPDIR)/sched
-ASFLAGS = -x -j -g -l -s -p
-CPPFLAGS = $(ARCHINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES) -D__ASSEMBLY__
-
-SSRCS =
-ASRCS = $(SSRCS:.S=$(ASMEXT))
-AOBJS = $(ASRCS:$(ASMEXT)=$(OBJEXT))
-CSRCS = up_initialize.c up_idle.c up_interruptcontext.c \
- up_initialstate.c up_unblocktask.c up_blocktask.c \
- up_releasepending.c up_reprioritizertr.c \
- up_exit.c up_assert.c up_allocateheap.c \
- up_irq.c up_savecontext.c up_restorecontext.c \
- up_timerisr.c up_putc.c up_debug.c up_delay.c
-COBJS = $(CSRCS:.c=$(OBJEXT))
-SRCS = $(SSRCS) $(CSRCS)
-OBJS = $(AOBJS) $(COBJS)
-
-SDCCLIBDIR = /usr/local/share/sdcc/lib/large-stack-auto
-SDCCPATH = -L$(SDCCLIBDIR)
-SDCCLIBS = -llibfloat.lib -llibint.lib -lliblong.lib -llibmysdcc.lib -lmcs51.lib
-
-LINKSSRCS = up_head.S
-LINKASRCS = $(LINKSSRCS:.S=$(ASMEXT))
-LINKOBJS = $(LINKASRCS:$(ASMEXT)=$(OBJEXT))
-LINKLIBS =
-LDPATHES = $(addprefix -L$(TOPDIR)/,$(dir $(LINKLIBS)))
-LDLIBS = $(addprefix -l,$(notdir $(LINKLIBS)))
-
-TESTSRCS = up_irqtest.c
-TESTOBJS = $(TESTSRCS:.c=$(OBJEXT))
-TESTLINKOBJS = up_head$(OBJEXT)
-TESTEXTRAOBJS = up_savecontext$(OBJEXT) up_restorecontext$(OBJEXT)
-
-BOARDDIR = $(TOPDIR)/arch/$(CONFIG_ARCH)/src/board
-
-IRAM_SIZE = 0x100
-DEF_STACK_BASE = 0x24
-LDFLAGS += --model-large --nostdlib \
- --data-loc $(DEF_STACK_BASE) --iram-size $(IRAM_SIZE) \
- --code-loc 0x2100 --code-size 0x5f40 \
- --xram-loc $(IRAM_SIZE) --xram-size 0x1f00
-
-DEPSRCS = $(SRCS) $(LINKSSRCS)
-
-HEAP1_BASE = ${shell \
+CFLAGS += -I$(TOPDIR)/sched
+ASFLAGS = -x -j -g -l -s -p
+CPPFLAGS = $(ARCHINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES) -D__ASSEMBLY__
+
+SSRCS =
+ASRCS = $(SSRCS:.S=$(ASMEXT))
+AOBJS = $(ASRCS:$(ASMEXT)=$(OBJEXT))
+CSRCS = up_initialize.c up_idle.c up_interruptcontext.c \
+ up_initialstate.c up_unblocktask.c up_blocktask.c \
+ up_releasepending.c up_reprioritizertr.c \
+ up_exit.c up_assert.c up_allocateheap.c \
+ up_irq.c up_savecontext.c up_restorecontext.c \
+ up_timerisr.c up_putc.c up_debug.c up_delay.c
+COBJS = $(CSRCS:.c=$(OBJEXT))
+SRCS = $(SSRCS) $(CSRCS)
+OBJS = $(AOBJS) $(COBJS)
+
+SDCCLIBDIR = /usr/local/share/sdcc/lib/large-stack-auto
+SDCCPATH = -L$(SDCCLIBDIR)
+SDCCLIBS = -llibfloat.lib -llibint.lib -lliblong.lib -llibmysdcc.lib -lmcs51.lib
+
+LINKSSRCS = up_head.S
+LINKASRCS = $(LINKSSRCS:.S=$(ASMEXT))
+LINKOBJS = $(LINKASRCS:$(ASMEXT)=$(OBJEXT))
+LINKLIBS ?=
+LDPATHS = -L"$(TOPDIR)/lib"
+LDLIBS = $(patsubst %.a,%,$(patsubst lib%,-l%,$(LINKLIBS)))
+
+TESTSRCS = up_irqtest.c
+TESTOBJS = $(TESTSRCS:.c=$(OBJEXT))
+TESTLINKOBJS = up_head$(OBJEXT)
+TESTEXTRAOBJS = up_savecontext$(OBJEXT) up_restorecontext$(OBJEXT)
+
+BOARDDIR = $(TOPDIR)/arch/$(CONFIG_ARCH)/src/board
+
+IRAM_SIZE = 0x100
+DEF_STACK_BASE = 0x24
+LDFLAGS += --model-large --nostdlib \
+ --data-loc $(DEF_STACK_BASE) --iram-size $(IRAM_SIZE) \
+ --code-loc 0x2100 --code-size 0x5f40 \
+ --xram-loc $(IRAM_SIZE) --xram-size 0x1f00
+
+DEPSRCS = $(SRCS) $(LINKSSRCS)
+
+HEAP1_BASE = ${shell \
if [ -e pass1.mem ]; then \
cat pass1.mem | grep "EXTERNAL RAM" | \
sed -e "s/[ ][ ]*/ /g" | cut -d' ' -f5 ; \
@@ -87,8 +87,8 @@ HEAP1_BASE = ${shell \
echo $(IRAM_SIZE) ; \
fi \
}
-DEF_HEAP2_BASE = 0x6000
-HEAP2_BASE = ${shell \
+DEF_HEAP2_BASE = 0x6000
+HEAP2_BASE = ${shell \
if [ -e pass1.mem ]; then \
cat pass1.mem | grep "ROM/EPROM/FLASH" | \
sed -e "s/[ ][ ]*/ /g" | cut -d' ' -f4 ; \
@@ -96,7 +96,7 @@ HEAP2_BASE = ${shell \
echo $(DEF_HEAP2_BASE) ; \
fi \
}
-STACK_BASE = ${shell \
+STACK_BASE = ${shell \
if [ -e pass1.mem ]; then \
cat pass1.mem | grep "Stack starts" | \
cut -d' ' -f4 ; \
@@ -173,7 +173,7 @@ board/libboard$(LIBEXT):
pass1.hex: up_mem.h $(SDCCLIBDIR)/libmysdcc.lib $(LINKOBJS) board/libboard$(LIBEXT)
@echo "LD: $@"
- @$(CC) $(LDFLAGS) $(LDPATHES) -L$(BOARDDIR) $(SDCCPATH) $(LINKOBJS) \
+ @$(CC) $(LDFLAGS) $(LDPATHS) -L$(BOARDDIR) $(SDCCPATH) $(LINKOBJS) \
$(LDLIBS) -llibboard$(LIBEXT) $(SDCCLIBS) -o $@
@rm -f up_mem.h
@rm -f up_allocateheap$(OBJEXT) libarch$(LIBEXT)
@@ -181,7 +181,7 @@ pass1.hex: up_mem.h $(SDCCLIBDIR)/libmysdcc.lib $(LINKOBJS) board/libboard$(LIBE
nuttx.hex: up_mem.h $(SDCCLIBDIR)/libmysdcc.lib $(LINKOBJS)
@echo "LD: $@"
- @$(CC) $(LDFLAGS) $(LDPATHES) -L$(BOARDDIR) $(SDCCPATH) $(LINKOBJS) \
+ @$(CC) $(LDFLAGS) $(LDPATHS) -L$(BOARDDIR) $(SDCCPATH) $(LINKOBJS) \
$(LDLIBS) -llibboard$(LIBEXT) $(SDCCLIBS) -o $@
nuttx$(EXEEXT): pass1.hex nuttx.hex
diff --git a/nuttx/arch/arm/src/Makefile b/nuttx/arch/arm/src/Makefile
index f356f4d02..49fabb708 100644
--- a/nuttx/arch/arm/src/Makefile
+++ b/nuttx/arch/arm/src/Makefile
@@ -74,16 +74,17 @@ LDFLAGS += $(ARCHSCRIPT)
EXTRA_LIBS ?=
EXTRA_LIBPATHS ?=
+LINKLIBS ?=
-LINKLIBS =
ifeq ($(WINTOOL),y)
- LIBPATHS = ${shell for path in $(LINKLIBS); do dir=`dirname $(TOPDIR)/$$path`;echo "-L\"`cygpath -w $$dir`\"";done}
+ LIBPATHS += -L"${shell cygpath -w "$(TOPDIR)/lib"}"
LIBPATHS += -L"${shell cygpath -w $(BOARDDIR)}"
else
- LIBPATHS = $(addprefix -L$(TOPDIR)/,$(dir $(LINKLIBS)))
+ LIBPATHS += -L"(TOPDIR)/lib"
LIBPATHS += -L"$(BOARDDIR)"
endif
-LDLIBS = $(patsubst lib%,-l%,$(basename $(notdir $(LINKLIBS))))
+
+LDLIBS = $(patsubst %.a,%,$(patsubst lib%,-l%,$(LINKLIBS)))
BOARDDIR = $(TOPDIR)/arch/$(CONFIG_ARCH)/src/board
diff --git a/nuttx/arch/avr/src/Makefile b/nuttx/arch/avr/src/Makefile
index bbfc4dd4f..160ae6317 100644
--- a/nuttx/arch/avr/src/Makefile
+++ b/nuttx/arch/avr/src/Makefile
@@ -37,61 +37,62 @@
-include $(TOPDIR)/Make.defs
-include chip/Make.defs
-ARCH_SRCDIR = $(TOPDIR)/arch/$(CONFIG_ARCH)/src
+ARCH_SRCDIR = $(TOPDIR)/arch/$(CONFIG_ARCH)/src
ifeq ($(CONFIG_ARCH_AVR32),y)
-ARCH_SUBDIR = avr32
+ARCH_SUBDIR = avr32
else ifeq ($(CONFIG_ARCH_AVR),y)
-ARCH_SUBDIR = avr
+ARCH_SUBDIR = avr
endif
ifeq ($(WINTOOL),y)
- NUTTX = "${shell cygpath -w $(TOPDIR)/nuttx}"
- INCLUDES += -I "${shell cygpath -w $(ARCH_SRCDIR)/chip}"
- INCLUDES += -I "${shell cygpath -w $(ARCH_SRCDIR)/common}"
- INCLUDES += -I "${shell cygpath -w $(ARCH_SRCDIR)/$(ARCH_SUBDIR)}"
- INCLUDES += -I "${shell cygpath -w $(TOPDIR)/sched}"
+ NUTTX = "${shell cygpath -w $(TOPDIR)/nuttx}"
+ INCLUDES += -I "${shell cygpath -w $(ARCH_SRCDIR)/chip}"
+ INCLUDES += -I "${shell cygpath -w $(ARCH_SRCDIR)/common}"
+ INCLUDES += -I "${shell cygpath -w $(ARCH_SRCDIR)/$(ARCH_SUBDIR)}"
+ INCLUDES += -I "${shell cygpath -w $(TOPDIR)/sched}"
else
- NUTTX = "$(TOPDIR)/nuttx"
- INCLUDES += -I "$(ARCH_SRCDIR)/chip"
- INCLUDES += -I "$(ARCH_SRCDIR)/common"
- INCLUDES += -I "$(ARCH_SRCDIR)/$(ARCH_SUBDIR)"
- INCLUDES += -I "$(TOPDIR)/sched"
+ NUTTX = "$(TOPDIR)/nuttx"
+ INCLUDES += -I "$(ARCH_SRCDIR)/chip"
+ INCLUDES += -I "$(ARCH_SRCDIR)/common"
+ INCLUDES += -I "$(ARCH_SRCDIR)/$(ARCH_SUBDIR)"
+ INCLUDES += -I "$(TOPDIR)/sched"
endif
-CPPFLAGS += $(INCLUDES)
-CFLAGS += $(INCLUDES)
-CXXFLAGS += $(INCLUDES)
-AFLAGS += $(INCLUDES)
+CPPFLAGS += $(INCLUDES)
+CFLAGS += $(INCLUDES)
+CXXFLAGS += $(INCLUDES)
+AFLAGS += $(INCLUDES)
-HEAD_OBJ = $(HEAD_ASRC:.S=$(OBJEXT))
+HEAD_OBJ = $(HEAD_ASRC:.S=$(OBJEXT))
-ASRCS = $(CHIP_ASRCS) $(CMN_ASRCS)
-AOBJS = $(ASRCS:.S=$(OBJEXT))
+ASRCS = $(CHIP_ASRCS) $(CMN_ASRCS)
+AOBJS = $(ASRCS:.S=$(OBJEXT))
-CSRCS = $(CHIP_CSRCS) $(CMN_CSRCS)
-COBJS = $(CSRCS:.c=$(OBJEXT))
+CSRCS = $(CHIP_CSRCS) $(CMN_CSRCS)
+COBJS = $(CSRCS:.c=$(OBJEXT))
-SRCS = $(ASRCS) $(CSRCS)
-OBJS = $(AOBJS) $(COBJS)
+SRCS = $(ASRCS) $(CSRCS)
+OBJS = $(AOBJS) $(COBJS)
-LDFLAGS += $(ARCHSCRIPT)
-EXTRA_LIBS ?=
+LDFLAGS += $(ARCHSCRIPT)
+EXTRA_LIBS ?=
+LINKLIBS ?=
-LINKLIBS =
ifeq ($(WINTOOL),y)
- LIBPATHS = ${shell for path in $(LINKLIBS); do dir=`dirname $(TOPDIR)/$$path`;echo "-L\"`cygpath -w $$dir`\"";done}
- LIBPATHS += -L"${shell cygpath -w $(BOARDDIR)}"
+ LIBPATHS += -L"${shell cygpath -w "$(TOPDIR)/lib"}"
+ LIBPATHS += -L"${shell cygpath -w $(BOARDDIR)}"
else
- LIBPATHS = $(addprefix -L$(TOPDIR)/,$(dir $(LINKLIBS)))
- LIBPATHS += -L"$(BOARDDIR)"
+ LIBPATHS += -L"(TOPDIR)/lib"
+ LIBPATHS += -L"$(BOARDDIR)"
endif
-LDLIBS = $(patsubst lib%,-l%,$(basename $(notdir $(LINKLIBS))))
-BOARDDIR = $(TOPDIR)/arch/$(CONFIG_ARCH)/src/board
+LDLIBS = $(patsubst %.a,%,$(patsubst lib%,-l%,$(LINKLIBS)))
-LIBGCC = "${shell $(CC) $(ARCHCPUFLAGS) -print-libgcc-file-name}"
+BOARDDIR = $(TOPDIR)/arch/$(CONFIG_ARCH)/src/board
-VPATH = chip:common:$(ARCH_SUBDIR)
+LIBGCC = "${shell $(CC) $(ARCHCPUFLAGS) -print-libgcc-file-name}"
+
+VPATH = chip:common:$(ARCH_SUBDIR)
all: $(HEAD_OBJ) libarch$(LIBEXT)
diff --git a/nuttx/arch/hc/src/Makefile b/nuttx/arch/hc/src/Makefile
index ff19ce6fe..b2058466c 100644
--- a/nuttx/arch/hc/src/Makefile
+++ b/nuttx/arch/hc/src/Makefile
@@ -36,55 +36,56 @@
-include $(TOPDIR)/Make.defs
-include chip/Make.defs
-ARCH_SRCDIR = $(TOPDIR)/arch/$(CONFIG_ARCH)/src
+ARCH_SRCDIR = $(TOPDIR)/arch/$(CONFIG_ARCH)/src
ifeq ($(CONFIG_ARCH_HC12),y)
-ARCH_SUBDIR = hc12
+ARCH_SUBDIR = hc12
endif
ifeq ($(CONFIG_ARCH_HCS12),y)
-ARCH_SUBDIR = hcs12
+ARCH_SUBDIR = hcs12
endif
ifeq ($(WINTOOL),y)
- NUTTX = "${shell cygpath -w $(TOPDIR)/nuttx}"
- CFLAGS += -I "${shell cygpath -w $(ARCH_SRCDIR)/chip}" \
- -I "${shell cygpath -w $(ARCH_SRCDIR)/common}" \
+ NUTTX = "${shell cygpath -w $(TOPDIR)/nuttx}"
+ CFLAGS += -I "${shell cygpath -w $(ARCH_SRCDIR)/chip}" \
+ -I "${shell cygpath -w $(ARCH_SRCDIR)/common}" \
-I "${shell cygpath -w $(ARCH_SRCDIR)/$(ARCH_SUBDIR)}" \
-I "${shell cygpath -w $(TOPDIR)/sched}"
else
- NUTTX = $(TOPDIR)/nuttx
- CFLAGS += -I$(ARCH_SRCDIR)/chip -I$(ARCH_SRCDIR)/common \
- -I$(ARCH_SRCDIR)/$(ARCH_SUBDIR) -I$(TOPDIR)/sched
+ NUTTX = $(TOPDIR)/nuttx
+ CFLAGS += -I$(ARCH_SRCDIR)/chip -I$(ARCH_SRCDIR)/common \
+ -I$(ARCH_SRCDIR)/$(ARCH_SUBDIR) -I$(TOPDIR)/sched
endif
-HEAD_OBJ = $(HEAD_ASRC:.S=$(OBJEXT))
+HEAD_OBJ = $(HEAD_ASRC:.S=$(OBJEXT))
-ASRCS = $(CHIP_ASRCS) $(CMN_ASRCS)
-AOBJS = $(ASRCS:.S=$(OBJEXT))
+ASRCS = $(CHIP_ASRCS) $(CMN_ASRCS)
+AOBJS = $(ASRCS:.S=$(OBJEXT))
-CSRCS = $(CHIP_CSRCS) $(CMN_CSRCS)
-COBJS = $(CSRCS:.c=$(OBJEXT))
+CSRCS = $(CHIP_CSRCS) $(CMN_CSRCS)
+COBJS = $(CSRCS:.c=$(OBJEXT))
-SRCS = $(ASRCS) $(CSRCS)
-OBJS = $(AOBJS) $(COBJS)
+SRCS = $(ASRCS) $(CSRCS)
+OBJS = $(AOBJS) $(COBJS)
-LDFLAGS += $(ARCHSCRIPT)
-EXTRA_LIBS ?=
+LDFLAGS += $(ARCHSCRIPT)
+EXTRA_LIBS ?=
+LINKLIBS ?=
-LINKLIBS =
ifeq ($(WINTOOL),y)
- LIBPATHS = ${shell for path in $(LINKLIBS); do dir=`dirname $(TOPDIR)/$$path`;echo "-L\"`cygpath -w $$dir`\"";done}
- LIBPATHS += -L"${shell cygpath -w $(BOARDDIR)}"
+ LIBPATHS += -L"${shell cygpath -w "$(TOPDIR)/lib"}"
+ LIBPATHS += -L"${shell cygpath -w $(BOARDDIR)}"
else
- LIBPATHS = $(addprefix -L$(TOPDIR)/,$(dir $(LINKLIBS)))
- LIBPATHS += -L"$(BOARDDIR)"
+ LIBPATHS += -L"(TOPDIR)/lib"
+ LIBPATHS += -L"$(BOARDDIR)"
endif
-LDLIBS = $(patsubst lib%,-l%,$(basename $(notdir $(LINKLIBS))))
-BOARDDIR = $(TOPDIR)/arch/$(CONFIG_ARCH)/src/board
+LDLIBS = $(patsubst %.a,%,$(patsubst lib%,-l%,$(LINKLIBS)))
-LIBGCC = "${shell $(CC) $(ARCHCPUFLAGS) -print-libgcc-file-name}"
+BOARDDIR = $(TOPDIR)/arch/$(CONFIG_ARCH)/src/board
-VPATH = chip:common:$(ARCH_SUBDIR)
+LIBGCC = "${shell $(CC) $(ARCHCPUFLAGS) -print-libgcc-file-name}"
+
+VPATH = chip:common:$(ARCH_SUBDIR)
all: $(HEAD_OBJ) libarch$(LIBEXT)
.PHONY: board/libboard$(LIBEXT)
diff --git a/nuttx/arch/mips/src/Makefile b/nuttx/arch/mips/src/Makefile
index 8769f35ec..c9019febd 100644
--- a/nuttx/arch/mips/src/Makefile
+++ b/nuttx/arch/mips/src/Makefile
@@ -36,52 +36,53 @@
-include $(TOPDIR)/Make.defs
-include chip/Make.defs
-ARCH_SRCDIR = $(TOPDIR)/arch/$(CONFIG_ARCH)/src
+ARCH_SRCDIR = $(TOPDIR)/arch/$(CONFIG_ARCH)/src
ifeq ($(CONFIG_ARCH_MIPS),y)
-ARCH_SUBDIR = mips32
+ARCH_SUBDIR = mips32
endif
ifeq ($(WINTOOL),y)
- NUTTX = "${shell cygpath -w $(TOPDIR)/nuttx}"
- CFLAGS += -I "${shell cygpath -w $(ARCH_SRCDIR)/chip}" \
- -I "${shell cygpath -w $(ARCH_SRCDIR)/common}" \
- -I "${shell cygpath -w $(ARCH_SRCDIR)/$(ARCH_SUBDIR)}" \
- -I "${shell cygpath -w $(TOPDIR)/sched}"
+ NUTTX = "${shell cygpath -w $(TOPDIR)/nuttx}"
+ CFLAGS += -I "${shell cygpath -w $(ARCH_SRCDIR)/chip}" \
+ -I "${shell cygpath -w $(ARCH_SRCDIR)/common}" \
+ -I "${shell cygpath -w $(ARCH_SRCDIR)/$(ARCH_SUBDIR)}" \
+ -I "${shell cygpath -w $(TOPDIR)/sched}"
else
- NUTTX = $(TOPDIR)/nuttx
- CFLAGS += -I$(ARCH_SRCDIR)/chip -I$(ARCH_SRCDIR)/common \
- -I$(ARCH_SRCDIR)/$(ARCH_SUBDIR) -I$(TOPDIR)/sched
+ NUTTX = $(TOPDIR)/nuttx
+ CFLAGS += -I$(ARCH_SRCDIR)/chip -I$(ARCH_SRCDIR)/common \
+ -I$(ARCH_SRCDIR)/$(ARCH_SUBDIR) -I$(TOPDIR)/sched
endif
-HEAD_OBJ = $(HEAD_ASRC:.S=$(OBJEXT))
+HEAD_OBJ = $(HEAD_ASRC:.S=$(OBJEXT))
-ASRCS = $(CHIP_ASRCS) $(CMN_ASRCS)
-AOBJS = $(ASRCS:.S=$(OBJEXT))
+ASRCS = $(CHIP_ASRCS) $(CMN_ASRCS)
+AOBJS = $(ASRCS:.S=$(OBJEXT))
-CSRCS = $(CHIP_CSRCS) $(CMN_CSRCS)
-COBJS = $(CSRCS:.c=$(OBJEXT))
+CSRCS = $(CHIP_CSRCS) $(CMN_CSRCS)
+COBJS = $(CSRCS:.c=$(OBJEXT))
-SRCS = $(ASRCS) $(CSRCS)
-OBJS = $(AOBJS) $(COBJS)
+SRCS = $(ASRCS) $(CSRCS)
+OBJS = $(AOBJS) $(COBJS)
-LDFLAGS += $(ARCHSCRIPT)
-EXTRA_LIBS ?=
+LDFLAGS += $(ARCHSCRIPT)
+EXTRA_LIBS ?=
+LINKLIBS ?=
-LINKLIBS =
ifeq ($(WINTOOL),y)
- LIBPATHS = ${shell for path in $(LINKLIBS); do dir=`dirname $(TOPDIR)/$$path`;echo "-L\"`cygpath -w $$dir`\"";done}
- LIBPATHS += -L"${shell cygpath -w $(BOARDDIR)}"
+ LIBPATHS += -L"${shell cygpath -w "$(TOPDIR)/lib"}"
+ LIBPATHS += -L"${shell cygpath -w $(BOARDDIR)}"
else
- LIBPATHS = $(addprefix -L$(TOPDIR)/,$(dir $(LINKLIBS)))
- LIBPATHS += -L"$(BOARDDIR)"
+ LIBPATHS += -L"(TOPDIR)/lib"
+ LIBPATHS += -L"$(BOARDDIR)"
endif
-LDLIBS = $(patsubst lib%,-l%,$(basename $(notdir $(LINKLIBS))))
-BOARDDIR = $(TOPDIR)/arch/$(CONFIG_ARCH)/src/board
+LDLIBS = $(patsubst %.a,%,$(patsubst lib%,-l%,$(LINKLIBS)))
-LIBGCC = "${shell $(CC) $(ARCHCPUFLAGS) -print-libgcc-file-name}"
+BOARDDIR = $(TOPDIR)/arch/$(CONFIG_ARCH)/src/board
-VPATH = chip:common:$(ARCH_SUBDIR)
+LIBGCC = "${shell $(CC) $(ARCHCPUFLAGS) -print-libgcc-file-name}"
+
+VPATH = chip:common:$(ARCH_SUBDIR)
all: $(HEAD_OBJ) libarch$(LIBEXT)
diff --git a/nuttx/arch/rgmp/src/Makefile b/nuttx/arch/rgmp/src/Makefile
index 80ad78b37..3989ab102 100644
--- a/nuttx/arch/rgmp/src/Makefile
+++ b/nuttx/arch/rgmp/src/Makefile
@@ -53,9 +53,8 @@ LINKSRCS = rgmp.c bridge.c
LINKOBJS = $(LINKSRCS:.c=$(OBJEXT))
LDFLAGS += -T$(RGMPLKSCPT)
-LDPATHS = $(addprefix -L$(TOPDIR)/,$(dir $(LINKLIBS)))
-LDLIBS = $(patsubst lib%,-l%,$(basename $(notdir $(LINKLIBS))))
-LDPATHS += -L$(RGMPLIBDIR)
+LDLIBS = $(patsubst %.a,%,$(patsubst lib%,-l%,$(LINKLIBS)))
+LDPATHS += -L"$(TOPDIR)/lib -L$(RGMPLIBDIR)
LDLIBS += -lrgmp $(shell $(CC) -print-libgcc-file-name)
all: libarch$(LIBEXT)
diff --git a/nuttx/arch/sh/src/Makefile b/nuttx/arch/sh/src/Makefile
index 300898396..2cb22728e 100644
--- a/nuttx/arch/sh/src/Makefile
+++ b/nuttx/arch/sh/src/Makefile
@@ -36,32 +36,39 @@
-include $(TOPDIR)/Make.defs
-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
+CFLAGS += -I$(ARCH_SRCDIR)/chip -I$(ARCH_SRCDIR)/common -I$(TOPDIR)/sched
-HEAD_OBJ = $(HEAD_ASRC:.S=$(OBJEXT))
+HEAD_OBJ = $(HEAD_ASRC:.S=$(OBJEXT))
-ASRCS = $(CHIP_ASRCS) $(CMN_ASRCS)
-AOBJS = $(ASRCS:.S=$(OBJEXT))
+ASRCS = $(CHIP_ASRCS) $(CMN_ASRCS)
+AOBJS = $(ASRCS:.S=$(OBJEXT))
-CSRCS = $(CHIP_CSRCS) $(CMN_CSRCS)
-COBJS = $(CSRCS:.c=$(OBJEXT))
+CSRCS = $(CHIP_CSRCS) $(CMN_CSRCS)
+COBJS = $(CSRCS:.c=$(OBJEXT))
-SRCS = $(ASRCS) $(CSRCS)
-OBJS = $(AOBJS) $(COBJS)
+SRCS = $(ASRCS) $(CSRCS)
+OBJS = $(AOBJS) $(COBJS)
-LDFLAGS += $(ARCHSCRIPT)
-EXTRA_LIBS ?=
+LDFLAGS += $(ARCHSCRIPT)
+EXTRA_LIBS ?=
+LINKLIBS ?=
-LINKLIBS =
-LDPATHES = $(addprefix -L$(TOPDIR)/,$(dir $(LINKLIBS)))
-LDLIBS = $(patsubst lib%,-l%,$(basename $(notdir $(LINKLIBS))))
+ifeq ($(WINTOOL),y)
+ LIBPATHS += -L"${shell cygpath -w "$(TOPDIR)/lib"}"
+ LIBPATHS += -L"${shell cygpath -w $(BOARDDIR)}"
+else
+ LIBPATHS += -L"(TOPDIR)/lib"
+ LIBPATHS += -L"$(BOARDDIR)"
+endif
-BOARDDIR = $(TOPDIR)/arch/$(CONFIG_ARCH)/src/board
+LDLIBS = $(patsubst %.a,%,$(patsubst lib%,-l%,$(LINKLIBS)))
-LIBGCC = ${shell $(CC) $(ARCHCPUFLAGS) -print-libgcc-file-name}
+BOARDDIR = $(TOPDIR)/arch/$(CONFIG_ARCH)/src/board
-VPATH = chip:common
+LIBGCC = ${shell $(CC) $(ARCHCPUFLAGS) -print-libgcc-file-name}
+
+VPATH = chip:common
all: $(HEAD_OBJ) libarch$(LIBEXT)
@@ -83,7 +90,7 @@ board/libboard$(LIBEXT):
nuttx: $(HEAD_OBJ) board/libboard$(LIBEXT)
@echo "LD: nuttx"
- @$(LD) --entry=__start $(LDFLAGS) $(LDPATHES) -L$(BOARDDIR) -o $(TOPDIR)/$@ $(HEAD_OBJ) \
+ @$(LD) --entry=__start $(LDFLAGS) $(LDPATHS) -L$(BOARDDIR) -o $(TOPDIR)/$@ $(HEAD_OBJ) \
--start-group $(LDLIBS) -lboard $(EXTRA_LIBS) $(LIBGCC) --end-group
@$(NM) $(TOPDIR)/$@ | \
grep -v '\(compiled\)\|\(\$(OBJEXT)$$\)\|\( [aUw] \)\|\(\.\.ng$$\)\|\(LASH[RL]DI\)' | \
diff --git a/nuttx/arch/sim/src/Makefile b/nuttx/arch/sim/src/Makefile
index 1e4d08736..3719465b3 100644
--- a/nuttx/arch/sim/src/Makefile
+++ b/nuttx/arch/sim/src/Makefile
@@ -40,11 +40,11 @@ CFLAGS += -I$(TOPDIR)/sched
ASRCS = up_setjmp.S
AOBJS = $(ASRCS:.S=$(OBJEXT))
CSRCS = up_initialize.c up_idle.c up_interruptcontext.c \
- up_initialstate.c up_createstack.c up_usestack.c \
- up_releasestack.c up_unblocktask.c up_blocktask.c \
- up_releasepending.c up_reprioritizertr.c \
- up_exit.c up_schedulesigaction.c up_allocateheap.c \
- up_devconsole.c
+ up_initialstate.c up_createstack.c up_usestack.c \
+ up_releasestack.c up_unblocktask.c up_blocktask.c \
+ up_releasepending.c up_reprioritizertr.c \
+ up_exit.c up_schedulesigaction.c up_allocateheap.c \
+ up_devconsole.c
HOSTSRCS = up_stdio.c up_hostusleep.c
ifeq ($(CONFIG_NX_LCDDRIVER),y)
@@ -126,9 +126,10 @@ endif
# Determine which NuttX libraries will need to be linked in
# Most are provided by LINKLIBS on the MAKE command line
-LINKLIBS =
-LDPATHS = $(addprefix -L$(TOPDIR)/,$(dir $(LINKLIBS)))
-LDLIBS = $(patsubst lib%,-l%,$(basename $(notdir $(LINKLIBS))))
+LINKLIBS ?=
+LIBPATHS += -L"(TOPDIR)/lib"
+LIBPATHS += -L"$(BOARDDIR)"
+LDLIBS = $(patsubst %.a,%,$(patsubst lib%,-l%,$(LINKLIBS)))
# Add the board-specific library and directory
diff --git a/nuttx/arch/x86/src/Makefile b/nuttx/arch/x86/src/Makefile
index 7225f31cf..b4aa02fb1 100644
--- a/nuttx/arch/x86/src/Makefile
+++ b/nuttx/arch/x86/src/Makefile
@@ -36,60 +36,61 @@
-include $(TOPDIR)/Make.defs
-include chip/Make.defs
-ARCH_SRCDIR = $(TOPDIR)/arch/$(CONFIG_ARCH)/src
+ARCH_SRCDIR = $(TOPDIR)/arch/$(CONFIG_ARCH)/src
ifeq ($(CONFIG_ARCH_I486),y)
-ARCH_SUBDIR = i486
+ARCH_SUBDIR = i486
endif
ifeq ($(WINTOOL),y)
- NUTTX = "${shell cygpath -w $(TOPDIR)/nuttx}"
- CFLAGS += -I "${shell cygpath -w $(ARCH_SRCDIR)/chip}" \
- -I "${shell cygpath -w $(ARCH_SRCDIR)/common}" \
- -I "${shell cygpath -w $(ARCH_SRCDIR)/$(ARCH_SUBDIR)}" \
- -I "${shell cygpath -w $(TOPDIR)/sched}"
+ NUTTX = "${shell cygpath -w $(TOPDIR)/nuttx}"
+ CFLAGS += -I "${shell cygpath -w $(ARCH_SRCDIR)/chip}" \
+ -I "${shell cygpath -w $(ARCH_SRCDIR)/common}" \
+ -I "${shell cygpath -w $(ARCH_SRCDIR)/$(ARCH_SUBDIR)}" \
+ -I "${shell cygpath -w $(TOPDIR)/sched}"
else
- NUTTX = $(TOPDIR)/nuttx
- CFLAGS += -I$(ARCH_SRCDIR)/chip -I$(ARCH_SRCDIR)/common \
- -I$(ARCH_SRCDIR)/$(ARCH_SUBDIR) -I$(TOPDIR)/sched
+ NUTTX = $(TOPDIR)/nuttx
+ CFLAGS += -I$(ARCH_SRCDIR)/chip -I$(ARCH_SRCDIR)/common \
+ -I$(ARCH_SRCDIR)/$(ARCH_SUBDIR) -I$(TOPDIR)/sched
endif
-HEAD_OBJ = $(HEAD_ASRC:.S=$(OBJEXT))
+HEAD_OBJ = $(HEAD_ASRC:.S=$(OBJEXT))
-ASRCS = $(CHIP_ASRCS) $(CMN_ASRCS)
-AOBJS = $(ASRCS:.S=$(OBJEXT))
+ASRCS = $(CHIP_ASRCS) $(CMN_ASRCS)
+AOBJS = $(ASRCS:.S=$(OBJEXT))
-CSRCS = $(CHIP_CSRCS) $(CMN_CSRCS)
-COBJS = $(CSRCS:.c=$(OBJEXT))
+CSRCS = $(CHIP_CSRCS) $(CMN_CSRCS)
+COBJS = $(CSRCS:.c=$(OBJEXT))
-SRCS = $(ASRCS) $(CSRCS)
-OBJS = $(AOBJS) $(COBJS)
+SRCS = $(ASRCS) $(CSRCS)
+OBJS = $(AOBJS) $(COBJS)
-LDFLAGS += $(ARCHSCRIPT)
-EXTRA_LIBS ?=
+LDFLAGS += $(ARCHSCRIPT)
+EXTRA_LIBS ?=
+LINKLIBS ?=
-LINKLIBS =
ifeq ($(WINTOOL),y)
- LIBPATHS = ${shell for path in $(LINKLIBS); do dir=`dirname $(TOPDIR)/$$path`;echo "-L\"`cygpath -w $$dir`\"";done}
- LIBPATHS += -L"${shell cygpath -w $(BOARDDIR)}"
+ LIBPATHS += -L"${shell cygpath -w "$(TOPDIR)/lib"}"
+ LIBPATHS += -L"${shell cygpath -w $(BOARDDIR)}"
else
- LIBPATHS = $(addprefix -L$(TOPDIR)/,$(dir $(LINKLIBS)))
- LIBPATHS += -L"$(BOARDDIR)"
+ LIBPATHS += -L"(TOPDIR)/lib"
+ LIBPATHS += -L"$(BOARDDIR)"
endif
-LDLIBS = $(patsubst lib%,-l%,$(basename $(notdir $(LINKLIBS))))
-BOARDDIR = $(TOPDIR)/arch/$(CONFIG_ARCH)/src/board
+LDLIBS = $(patsubst %.a,%,$(patsubst lib%,-l%,$(LINKLIBS)))
-LIBGCC = "${shell $(CC) $(ARCHCPUFLAGS) -print-libgcc-file-name}"
+BOARDDIR = $(TOPDIR)/arch/$(CONFIG_ARCH)/src/board
+
+LIBGCC = "${shell $(CC) $(ARCHCPUFLAGS) -print-libgcc-file-name}"
ifeq ($(HOSTOS),FreeBSD)
- HOST_ARCH = ${shell uname -m 2>/dev/null || echo "Other"}
+ HOST_ARCH = ${shell uname -m 2>/dev/null || echo "Other"}
ifeq ($(HOST_ARCH),amd64)
- LDFLAGS += -melf_i386
- LIBGCC = "/usr/lib32/libgcc.a"
+ LDFLAGS += -melf_i386
+ LIBGCC = "/usr/lib32/libgcc.a"
endif
endif
-VPATH = chip:common:$(ARCH_SUBDIR)
+VPATH = chip:common:$(ARCH_SUBDIR)
all: $(HEAD_OBJ) libarch$(LIBEXT)
diff --git a/nuttx/arch/z16/src/Makefile b/nuttx/arch/z16/src/Makefile
index 088aeebd2..3da8c2d67 100644
--- a/nuttx/arch/z16/src/Makefile
+++ b/nuttx/arch/z16/src/Makefile
@@ -36,38 +36,38 @@
-include $(TOPDIR)/Make.defs
-include chip/Make.defs
-COMPILER = ${shell basename $(CC)}
-ARCHSRCDIR = $(TOPDIR)/arch/$(CONFIG_ARCH)/src
+COMPILER = ${shell basename $(CC)}
+ARCHSRCDIR = $(TOPDIR)/arch/$(CONFIG_ARCH)/src
ifeq ($(COMPILER),zneocc.exe)
-WARCHSRCDIR := ${shell cygpath -w $(ARCHSRCDIR)}
-USRINCLUDES = -usrinc:'.;$(WTOPDIR)\sched;$(WARCHSRCDIR);$(WARCHSRCDIR)\common'
+WARCHSRCDIR := ${shell cygpath -w $(ARCHSRCDIR)}
+USRINCLUDES = -usrinc:'.;$(WTOPDIR)\sched;$(WARCHSRCDIR);$(WARCHSRCDIR)\common'
else
-WARCHSRCDIR = $(ARCHSRCDIR)
-USRINCLUDES = -I$(TOPDIR)/sched -I$(ARCHSRCDIR) -I$(ARCHSRCDIR)/common
+WARCHSRCDIR = $(ARCHSRCDIR)
+USRINCLUDES = -I$(TOPDIR)/sched -I$(ARCHSRCDIR) -I$(ARCHSRCDIR)/common
endif
-INCLUDES = $(ARCHSTDINCLUDES) $(USRINCLUDES)
-CFLAGS = $(ARCHWARNINGS) $(ARCHOPTIMIZATION) $(ARCHCPUFLAGS) $(INCLUDES) $(ARCHDEFINES) $(EXTRADEFINES)
-CPPFLAGS += -I$(ARCHSRCDIR)
+INCLUDES = $(ARCHSTDINCLUDES) $(USRINCLUDES)
+CFLAGS = $(ARCHWARNINGS) $(ARCHOPTIMIZATION) $(ARCHCPUFLAGS) $(INCLUDES) $(ARCHDEFINES) $(EXTRADEFINES)
+CPPFLAGS += -I$(ARCHSRCDIR)
ifeq ($(COMPILER),zneocc.exe)
-LDFLAGS += @"${shell cygpath -w $(ARCHSRCDIR)/nuttx.linkcmd}"
+LDFLAGS += @"${shell cygpath -w $(ARCHSRCDIR)/nuttx.linkcmd}"
endif
-HEAD_ASRC = $(HEAD_SSRC:.S=$(ASMEXT))
-HEAD_OBJ = $(HEAD_SSRC:.S=$(OBJEXT))
+HEAD_ASRC = $(HEAD_SSRC:.S=$(ASMEXT))
+HEAD_OBJ = $(HEAD_SSRC:.S=$(OBJEXT))
-SSRCS = $(CHIP_SSRCS) $(CMN_SSRCS)
-ASRCS = $(SSRCS:.S=$(ASMEXT))
-AOBJS = $(SSRCS:.S=$(OBJEXT))
+SSRCS = $(CHIP_SSRCS) $(CMN_SSRCS)
+ASRCS = $(SSRCS:.S=$(ASMEXT))
+AOBJS = $(SSRCS:.S=$(OBJEXT))
-CSRCS = $(CHIP_CSRCS) $(CMN_CSRCS)
-COBJS = $(CSRCS:.c=$(OBJEXT))
+CSRCS = $(CHIP_CSRCS) $(CMN_CSRCS)
+COBJS = $(CSRCS:.c=$(OBJEXT))
-DEPSRCS = $(SSRCS) $(CSRCS)
-OBJS = $(AOBJS) $(COBJS)
+DEPSRCS = $(SSRCS) $(CSRCS)
+OBJS = $(AOBJS) $(COBJS)
-BOARDDIR = $(TOPDIR)/arch/$(CONFIG_ARCH)/src/board
+BOARDDIR = $(TOPDIR)/arch/$(CONFIG_ARCH)/src/board
-VPATH = chip:common
+VPATH = chip:common
all: $(HEAD_OBJ) libarch$(LIBEXT)
@@ -103,7 +103,7 @@ nuttx.linkcmd: $(LINKCMDTEMPLATE)
@echo "\"${shell cygpath -w $(TOPDIR)/nuttx}\"= \\" >>nuttx.linkcmd
@echo " \"${shell cygpath -w $(ARCHSRCDIR)/$(HEAD_OBJ)}\", \\" >>nuttx.linkcmd
@( for lib in $(LINKLIBS); do \
- echo " \"`cygpath -w $(TOPDIR)/$${lib}`\", \\" >>nuttx.linkcmd; \
+ echo " \"`cygpath -w $(TOPDIR)/lib/$${lib}`\", \\" >>nuttx.linkcmd; \
done ; )
@echo " \"${shell cygpath -w $(ARCHSRCDIR)/board/libboard$(LIBEXT)}\", \\" >>nuttx.linkcmd
@echo " \"${shell cygpath -w $(ZDSSTDLIBDIR)/chelpld$(LIBEXT)}\", \\" >>nuttx.linkcmd
diff --git a/nuttx/arch/z80/src/Makefile.sdcc b/nuttx/arch/z80/src/Makefile.sdcc
index 522c8d6f9..32169d442 100644
--- a/nuttx/arch/z80/src/Makefile.sdcc
+++ b/nuttx/arch/z80/src/Makefile.sdcc
@@ -37,49 +37,49 @@
# Tools
# CFLAGS, CPPFLAGS, ASFLAGS, LDFLAGS are set in $(TOPDIR)/Make.defs
-CFLAGS += -I$(ARCH_SRCDIR)/chip -I$(ARCH_SRCDIR)/common -I$(TOPDIR)/sched
-CPPFLAGS += -D__ASSEMBLY__
+CFLAGS += -I$(ARCH_SRCDIR)/chip -I$(ARCH_SRCDIR)/common -I$(TOPDIR)/sched
+CPPFLAGS += -D__ASSEMBLY__
############################################################################
# Files and directories
# There should be one head source (.asm file)
-HEAD_OBJ = $(HEAD_ASRC:$(ASMEXT)=$(OBJEXT))
+HEAD_OBJ = $(HEAD_ASRC:$(ASMEXT)=$(OBJEXT))
# Assembly sources and objects
-ASRCS = $(CHIP_ASRCS) $(CMN_ASRCS)
-AOBJS = $(ASRCS:$(ASMEXT)=$(OBJEXT))
+ASRCS = $(CHIP_ASRCS) $(CMN_ASRCS)
+AOBJS = $(ASRCS:$(ASMEXT)=$(OBJEXT))
# C sources and objects
-CSRCS = $(CHIP_CSRCS) $(CMN_CSRCS)
-COBJS = $(CSRCS:.c=$(OBJEXT))
+CSRCS = $(CHIP_CSRCS) $(CMN_CSRCS)
+COBJS = $(CSRCS:.c=$(OBJEXT))
# All sources and objcts
-SRCS = $(ASRCS) $(CSRCS)
-OBJS = $(AOBJS) $(COBJS)
+SRCS = $(ASRCS) $(CSRCS)
+OBJS = $(AOBJS) $(COBJS)
# Sources that can have dependencies (no .asm files)
-DEPSRCS = $(CSRCS)
+DEPSRCS = $(CSRCS)
# Directories
-ARCH_SRCDIR = $(TOPDIR)/arch/$(CONFIG_ARCH)/src
-BOARDDIR = $(TOPDIR)/arch/$(CONFIG_ARCH)/src/board
+ARCH_SRCDIR = $(TOPDIR)/arch/$(CONFIG_ARCH)/src
+BOARDDIR = $(TOPDIR)/arch/$(CONFIG_ARCH)/src/board
-VPATH = chip:common:board
+VPATH = chip:common:board
# Libraries
-LIBGCC = ${shell $(CC) $(ARCHCPUFLAGS) -print-libgcc-file-name}
+LIBGCC = ${shell $(CC) $(ARCHCPUFLAGS) -print-libgcc-file-name}
# Supports dynamic sizing of HEAP.
#
-HEAP_BASE = ${shell ./mkhpbase.sh}
+HEAP_BASE = ${shell ./mkhpbase.sh}
############################################################################
# Targets
@@ -152,7 +152,7 @@ pass1.hex: up_mem.h asm_mem.h $(SDCCLIBDIR)/myz80.lib $(HEAD_OBJ) board/libboard
@echo "-k $(SDCCLIBDIR)" >>pass1.lnk # Path to SDCC z80 library
@echo "-l libboard$(LIBEXT)" >>pass1.lnk # Name of board library
@for LIB in $(LINKLIBS); do \
- echo "-l $(TOPDIR)/$$LIB" >> pass1.lnk ;\
+ echo "-l $(TOPDIR)/lib/$$LIB" >> pass1.lnk ;\
done
@echo "-l myz80.lib" >>pass1.lnk # Name of SDCC z80 library
ifneq ($(CONFIG_LINKER_START_AREA),)
@@ -185,7 +185,7 @@ nuttx.hex: up_mem.h asm_mem.h $(SDCCLIBDIR)/myz80.lib $(HEAD_OBJ) board/libboard
@echo "-k $(SDCCLIBDIR)" >>nuttx.lnk # Path to SDCC z80 library
@echo "-l libboard$(LIBEXT)" >>nuttx.lnk # Name of board library
@for LIB in $(LINKLIBS); do \
- echo "-l $(TOPDIR)/$$LIB" >> nuttx.lnk ;\
+ echo "-l $(TOPDIR)/lib/$$LIB" >> nuttx.lnk ;\
done
@echo "-l myz80.lib" >>nuttx.lnk # Name of SDCC z80 library
ifneq ($(CONFIG_LINKER_START_AREA),)