Managed Routes now supported, with automatic add/remove
This commit is contained in:
@@ -121,12 +121,15 @@ ifeq ($(STACK_PICO),1)
|
||||
ifeq ($(LIBZT_IPV4)$(LIBZT_IPV6),1)
|
||||
ifeq ($(LIBZT_IPV4),1)
|
||||
CXXFLAGS+=-DLIBZT_IPV4
|
||||
STACK_FLAGS+=-IPV4=1 -IPv4=1
|
||||
endif
|
||||
ifeq ($(LIBZT_IPV6),1)
|
||||
CXXFLAGS+=-DLIBZT_IPV6
|
||||
STACK_FLAGS+=-IPV6=1 -IPv6=1
|
||||
endif
|
||||
else
|
||||
CXXFLAGS+=-DLIBZT_IPV4 -DLIBZT_IPV6
|
||||
STACK_FLAGS+=-IPV6=1 -IPv6=1 -IPV6=1 -IPv6=1
|
||||
endif
|
||||
endif
|
||||
|
||||
@@ -135,12 +138,15 @@ ifeq ($(STACK_LWIP),1)
|
||||
ifeq ($(LIBZT_IPV4)$(LIBZT_IPV6),1)
|
||||
ifeq ($(LIBZT_IPV4),1)
|
||||
CXXFLAGS+=-DLIBZT_IPV4
|
||||
STACK_FLAGS+=IPV4=1 IPv4=1
|
||||
endif
|
||||
ifeq ($(LIBZT_IPV6),1)
|
||||
CXXFLAGS+=-DLIBZT_IPV6
|
||||
STACK_FLAGS+=IPV6=1 IPv6=1
|
||||
endif
|
||||
else
|
||||
CXXFLAGS+=-DLIBZT_IPV4
|
||||
STACK_FLAGS+=IPV4=1 IPv4=1
|
||||
endif
|
||||
endif
|
||||
|
||||
@@ -154,29 +160,14 @@ STACK_DIR:=ext/picotcp
|
||||
STACK_LIB:=$(STACK_DIR)/build/lib/$(STACK_LIB)
|
||||
STACK_DRIVER_FILES:=src/picoTCP.cpp
|
||||
STACK_DRIVER_OBJS+=picoTCP.o
|
||||
STACK_OBJS+= ext/picotcp/build/lib/pico_device.o \
|
||||
ext/picotcp/build/lib/pico_frame.o \
|
||||
ext/picotcp/build/lib/pico_md5.o \
|
||||
ext/picotcp/build/lib/pico_protocol.o \
|
||||
ext/picotcp/build/lib/pico_socket_multicast.o \
|
||||
ext/picotcp/build/lib/pico_socket.o \
|
||||
ext/picotcp/build/lib/pico_stack.o \
|
||||
ext/picotcp/build/lib/pico_tree.o \
|
||||
ext/picotcp/build/modules/*.o
|
||||
INCLUDES+=-Iext/picotcp/include -Iext/picotcp/build/include
|
||||
endif
|
||||
|
||||
ifeq ($(STACK_LWIP),1)
|
||||
STACK_FLAGS+=-DLWIP_PREFIX_BYTEORDER_FUNCS
|
||||
STACK_DRIVER_FLAGS+=-DLWIP_PREFIX_BYTEORDER_FUNCS
|
||||
CXXFLAGS+=-DSTACK_LWIP
|
||||
STACK_DRIVER_FILES:=src/lwIP.cpp
|
||||
STACK_DRIVER_OBJS+=lwIP.o
|
||||
STACK_OBJS+= init.o def.o dns.o inet_chksum.o ip.o mem.o \
|
||||
memp.o netif.o pbuf.o raw.o stats.o sys.o tcp.o \
|
||||
tcp_in.o tcp_out.o timeouts.o udp.o autoip.o \
|
||||
dhcp.o etharp.o icmp.o igmp.o ip4_frag.o ip4.o \
|
||||
ip4_addr.o api_lib.o api_msg.o err.o netbuf.o \
|
||||
netdb.o netifapi.o sockets.o tcpip.o ethernet.o
|
||||
LWIPARCH=$(CONTRIBDIR)/ports/unix
|
||||
LWIPDIR=ext/lwip/src
|
||||
INCLUDES+=-Iext/lwip/src/include/lwip \
|
||||
@@ -193,6 +184,14 @@ endif
|
||||
|
||||
all:
|
||||
|
||||
%.o : %.cpp
|
||||
@mkdir -p $(BUILD) obj
|
||||
$(CXX) $(CXXFLAGS) -c $^ -o obj/$(@F)
|
||||
|
||||
%.o : %.c
|
||||
@mkdir -p $(BUILD) obj
|
||||
$(CC) $(CFLAGS) -c $^ -o obj/$(@F)
|
||||
|
||||
##############################################################################
|
||||
## User-Space Stack ##
|
||||
##############################################################################
|
||||
@@ -201,7 +200,7 @@ picotcp:
|
||||
cd $(STACK_DIR); make lib ARCH=shared IPV4=1 IPV6=1
|
||||
|
||||
lwip:
|
||||
-make -f make-liblwip.mk liblwip.a IPV4=1 IPV6=1
|
||||
-make -f make-liblwip.mk liblwip.a $(STACK_FLAGS)
|
||||
|
||||
##############################################################################
|
||||
## Static Libraries ##
|
||||
@@ -209,22 +208,27 @@ lwip:
|
||||
|
||||
ifeq ($(STACK_PICO),1)
|
||||
static_lib: picotcp $(ZTO_OBJS)
|
||||
@mkdir -p $(BUILD)
|
||||
@mkdir -p $(BUILD) obj
|
||||
$(CXX) $(CXXFLAGS) $(LIBZT_FILES) $(STACK_DRIVER_FILES) -c
|
||||
ar rcs -o $(STATIC_LIB) $(ZTO_OBJS) $(STACK_DRIVER_OBJS) $(STACK_OBJS) $(LIBZT_OBJS) $(STACK_LIB)
|
||||
mv *.o obj
|
||||
mv ext/picotcp/build/lib/*.o obj
|
||||
mv ext/picotcp/build/modules/*.o obj
|
||||
ar rcs -o $(STATIC_LIB) obj/*.o $(STACK_LIB)
|
||||
endif
|
||||
ifeq ($(STACK_LWIP),1)
|
||||
static_lib: lwip $(ZTO_OBJS)
|
||||
@mkdir -p $(BUILD)
|
||||
$(CXX) $(CXXFLAGS) $(STACK_FLAGS) $(STACK_INCLUDES) $(LIBZT_FILES) $(STACK_DRIVER_FILES) -c
|
||||
ar rcs -o $(STATIC_LIB) $(ZTO_OBJS) $(STACK_DRIVER_OBJS) $(STACK_OBJS) $(LIBZT_OBJS) $(STACK_LIB)
|
||||
@mkdir -p $(BUILD) obj
|
||||
$(CXX) $(CXXFLAGS) $(STACK_DRIVER_FLAGS) $(STACK_INCLUDES) $(LIBZT_FILES) $(STACK_DRIVER_FILES) -c
|
||||
mv *.o obj
|
||||
ar rcs -o $(STATIC_LIB) obj/*.o $(STACK_LIB)
|
||||
endif
|
||||
# for layer-2 only (this will omit all userspace network stack code)
|
||||
ifeq ($(NO_STACK),1)
|
||||
static_lib: $(ZTO_OBJS)
|
||||
@mkdir -p $(BUILD)
|
||||
@mkdir -p $(BUILD) obj
|
||||
$(CXX) $(CXXFLAGS) $(LIBZT_FILES) -c
|
||||
ar rcs -o $(STATIC_LIB) $(ZTO_OBJS) $(LIBZT_OBJS)
|
||||
mv *.o obj
|
||||
ar rcs -o $(STATIC_LIB) obj/*.o
|
||||
endif
|
||||
|
||||
##############################################################################
|
||||
|
||||
Reference in New Issue
Block a user