summaryrefslogtreecommitdiff
path: root/apps/examples/bridge/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'apps/examples/bridge/Makefile')
-rw-r--r--apps/examples/bridge/Makefile90
1 files changed, 59 insertions, 31 deletions
diff --git a/apps/examples/bridge/Makefile b/apps/examples/bridge/Makefile
index 62521e46c..c9fd5200c 100644
--- a/apps/examples/bridge/Makefile
+++ b/apps/examples/bridge/Makefile
@@ -40,43 +40,54 @@ include $(APPDIR)/Make.defs
# Discover built-in application info
-APPNAME = bridge
-PRIORITY = SCHED_PRIORITY_DEFAULT
-STACKSIZE = 2048
+TARG_APPNAME = bridge
+TARG_PRIORITY = SCHED_PRIORITY_DEFAULT
+TARG_STACKSIZE = 2048
-ASRCS =
-CSRCS =
+TARG_ASRCS =
+TARG_CSRCS =
MAINSRC = bridge_main.c
-AOBJS = $(ASRCS:.S=$(OBJEXT))
-COBJS = $(CSRCS:.c=$(OBJEXT))
-MAINOBJ = $(MAINSRC:.c=$(OBJEXT))
+TARG_AOBJS = $(TARG_ASRCS:.S=$(OBJEXT))
+TARG_COBJS = $(TARG_CSRCS:.c=$(OBJEXT))
+TARG_MAINOBJ = $(MAINSRC:.c=$(OBJEXT))
-SRCS = $(ASRCS) $(CSRCS) $(MAINSRC)
-OBJS = $(AOBJS) $(COBJS)
+TARG_SRCS = $(TARG_ASRCS) $(TARG_CSRCS) $(MAINSRC)
+TARG_OBJS = $(TARG_AOBJS) $(TARG_COBJS)
ifneq ($(CONFIG_BUILD_KERNEL),y)
- OBJS += $(MAINOBJ)
+ TARG_OBJS += $(TARG_MAINOBJ)
endif
+HOST_SRCS1 = host_net1.c
+HOST_SRCS2 = host_net2.c
+HOST_SRCS = $(HOST_SRCS1) $(HOST_SRCS2)
+
+HOST_OBJS1 = $(HOST_SRCS1:.c=.o)
+HOST_OBJS2 = $(HOST_SRCS2:.c=.o)
+HOST_OBJS = $(HOST_OBJS1) $(HOST_OBJS2)
+
+HOST_BIN1 = host1
+HOST_BIN2 = host2
+
ifeq ($(CONFIG_WINDOWS_NATIVE),y)
- BIN = ..\..\libapps$(LIBEXT)
+ TARG_BIN = ..\..\libapps$(LIBEXT)
else
ifeq ($(WINTOOL),y)
- BIN = ..\\..\\libapps$(LIBEXT)
+ TARG_BIN = ..\\..\\libapps$(LIBEXT)
else
- BIN = ../../libapps$(LIBEXT)
+ TARG_BIN = ../../libapps$(LIBEXT)
endif
endif
ifeq ($(WINTOOL),y)
- INSTALL_DIR = "${shell cygpath -w $(BIN_DIR)}"
+ TARG_INSTALL_DIR = "${shell cygpath -w $(BIN_DIR)}"
else
- INSTALL_DIR = $(BIN_DIR)
+ TARG_INSTALL_DIR = $(BIN_DIR)
endif
CONFIG_EXAMPLE_BRIDGE_PROGNAME ?= bridge$(EXEEXT)
-PROGNAME = $(CONFIG_EXAMPLE_BRIDGE_PROGNAME)
+TARG_PROGNAME = $(CONFIG_EXAMPLE_BRIDGE_PROGNAME)
ROOTDEPPATH = --dep-path .
@@ -87,23 +98,37 @@ VPATH =
all: .built
.PHONY: clean depend distclean
-$(AOBJS): %$(OBJEXT): %.S
+$(TARG_AOBJS): %$(OBJEXT): %.S
$(call ASSEMBLE, $<, $@)
-$(COBJS) $(MAINOBJ): %$(OBJEXT): %.c
+$(TARG_COBJS) $(TARG_MAINOBJ): %$(OBJEXT): %.c
$(call COMPILE, $<, $@)
-.built: $(OBJS)
- $(call ARCHIVE, $(BIN), $(OBJS))
+$(HOST_OBJS): %.o: %.c
+ $(HOSTCC) -c $(HOSTCFLAGS) $< -o $@
+
+$(TARG_BIN): $(TARG_OBJS)
+ $(call ARCHIVE, $(TARG_BIN), $(TARG_OBJS))
+
+bridge_config.h: $(TOPDIR)/include/nuttx/config.h
+ cp $(TOPDIR)/include/nuttx/config.h bridge_config.h
+
+$(HOST_BIN1): bridge_config.h $(HOST_OBJS1)
+ $(HOSTCC) $(HOSTLDFLAGS) $(HOST_OBJS1) -o $@
+
+$(HOST_BIN2): bridge_config.h $(HOST_OBJS2)
+ $(HOSTCC) $(HOSTLDFLAGS) $(HOST_OBJS2) -o $@
+
+.built: $(TARG_BIN) $(HOST_BIN1) $(HOST_BIN2)
@touch .built
ifeq ($(CONFIG_BUILD_KERNEL),y)
-$(BIN_DIR)$(DELIM)$(PROGNAME): $(OBJS) $(MAINOBJ)
- @echo "LD: $(PROGNAME)"
- $(Q) $(LD) $(LDELFFLAGS) $(LDLIBPATH) -o $(INSTALL_DIR)$(DELIM)$(PROGNAME) $(ARCHCRT0OBJ) $(MAINOBJ) $(LDLIBS)
- $(Q) $(NM) -u $(INSTALL_DIR)$(DELIM)$(PROGNAME)
+$(BIN_DIR)$(DELIM)$(TARG_PROGNAME): $(TARG_OBJS) $(TARG_MAINOBJ)
+ @echo "LD: $(TARG_PROGNAME)"
+ $(Q) $(LD) $(LDELFFLAGS) $(LDLIBPATH) -o $(TARG_INSTALL_DIR)$(DELIM)$(TARG_PROGNAME) $(ARCHCRT0OBJ) $(TARG_MAINOBJ) $(LDLIBS)
+ $(Q) $(NM) -u $(TARG_INSTALL_DIR)$(DELIM)$(TARG_PROGNAME)
-install: $(BIN_DIR)$(DELIM)$(PROGNAME)
+install: $(BIN_DIR)$(DELIM)$(TARG_PROGNAME)
else
install:
@@ -111,26 +136,29 @@ install:
endif
ifeq ($(CONFIG_NSH_BUILTIN_APPS),y)
-$(BUILTIN_REGISTRY)$(DELIM)$(APPNAME)_main.bdat: $(DEPCONFIG) Makefile
- $(call REGISTER,$(APPNAME),$(PRIORITY),$(STACKSIZE),$(APPNAME)_main)
+$(BUILTIN_REGISTRY)$(DELIM)$(TARG_APPNAME)_main.bdat: $(DEPCONFIG) Makefile
+ $(call REGISTER,$(TARG_APPNAME),$(TARG_PRIORITY),$(TARG_STACKSIZE),$(TARG_APPNAME)_main)
-context: $(BUILTIN_REGISTRY)$(DELIM)$(APPNAME)_main.bdat
+context: $(BUILTIN_REGISTRY)$(DELIM)$(TARG_APPNAME)_main.bdat
else
context:
endif
-.depend: Makefile $(SRCS)
- @$(MKDEP) $(ROOTDEPPATH) "$(CC)" -- $(CFLAGS) -- $(SRCS) >Make.dep
+.depend: Makefile $(TARG_SRCS)
+ @$(MKDEP) $(ROOTDEPPATH) "$(CC)" -- $(CFLAGS) -- $(TARG_SRCS) >Make.dep
@touch $@
depend: .depend
clean:
$(call DELFILE, .built)
+ $(call DELFILE, $(HOST_BIN1))
+ $(call DELFILE, $(HOST_BIN2))
$(call CLEAN)
distclean: clean
$(call DELFILE, Make.dep)
$(call DELFILE, .depend)
+ $(call DELFILE, bridge_config.h)
-include Make.dep