diff --git a/Makefile b/Makefile index d2011e9..8493333 100644 --- a/Makefile +++ b/Makefile @@ -1,25 +1,53 @@ +WIZCHIP=W5500 +ENABLE_DHCP=yes +ENABLE_DNS=yes +ENABLE_HTTPSERVER=yes +ENABLE_MQTT=yes +ENABLE_SNTP=yes + +# ===================================================================== + CC=arm-none-eabi-gcc AR=arm-none-eabi-ar -CFLAGS=-iquote Ethernet -iquote Application -iquote Internet -Wall +CFLAGS=-iquote Ethernet -Wall -D_WIZCHIP_=$(WIZCHIP) OBJDIR=build VPATH=Ethernet:Ethernet/W5500 -VPATH+=Internet/DHCP -VPATH+=Internet/DNS -VPATH+=Internet/MQTT:Internet/MQTT/MQTTPacket/src -VPATH+=Internet/httpServer -VPATH+=Internet/SNTP +ifeq ($(ENABLE_DHCP),yes) + VPATH+=Internet/DHCP +endif +ifeq ($(ENABLE_DNS),yes) + VPATH+=Internet/DNS +endif +ifeq ($(ENABLE_MQTT),yes) + VPATH+=Internet/MQTT:Internet/MQTT/MQTTPacket/src +endif +ifeq ($(ENABLE_HTTPSERVER),yes) + VPATH+=Internet/httpServer +endif +ifeq ($(ENABLE_SNTP),yes) + VPATH+=Internet/SNTP +endif -OBJS=$(addprefix $(OBJDIR)/,wizchip_conf.o socket.o w5500.o \ - dhcp.o \ - dns.o \ - httpParser.o httpServer.o httpUtil.o \ - sntp.o \ - MQTTConnectClient.o MQTTConnectServer.o MQTTDeserializePublish.o MQTTFormat.o MQTTPacket.o MQTTSerializePublish.o MQTTSubscribeClient.o MQTTSubscribeServer.o \ - MQTTUnsubscribeClient.o MQTTUnsubscribeServer.o \ - mqtt_interface.o MQTTClient.o \ -) +OBJS=$(addprefix $(OBJDIR)/,wizchip_conf.o socket.o w5500.o) +ifeq ($(ENABLE_DHCP),yes) + OBJS+=$(addprefix $(OBJDIR)/,dhcp.o) +endif +ifeq ($(ENABLE_DNS),yes) + OBJS+=$(addprefix $(OBJDIR)/,dns.o) +endif +ifeq ($(ENABLE_HTTPSERVER),yes) + OBJS+=$(addprefix $(OBJDIR)/,httpParser.o httpServer.o httpUtil.o) +endif +ifeq ($(ENABLE_SNTP),yes) + OBJS+=$(addprefix $(OBJDIR)/,sntp.o) +endif +ifeq ($(ENABLE_MQTT),yes) + OBJS+=$(addprefix $(OBJDIR)/,MQTTConnectClient.o MQTTConnectServer.o MQTTDeserializePublish.o \ + MQTTFormat.o MQTTPacket.o MQTTSerializePublish.o MQTTSubscribeClient.o MQTTSubscribeServer.o \ + MQTTUnsubscribeClient.o MQTTUnsubscribeServer.o mqtt_interface.o MQTTClient.o) +endif