# Path to Z-Stack SDK ZSTACK_DIR = ./include # Include path for the Z-Stack SDK # INCLUDE_DIRS = -I$(ZSTACK_DIR)/Components/hal/CC2530 \ # -I$(ZSTACK_DIR)/Components/zigbee INCLUDE_DIRS = -I$(ZSTACK_DIR) # Compiler settings CC = msp430-elf-gcc # MSP430 compiler # CFLAGS (C Compiler flags) CFLAGS = $(INCLUDE_DIRS) -Wall -O2 # Enable all warnings, Optimize for size LDFLAGS = LIBS = -lZStack -lhal # ZStack for Zigbee communication, lhal for Hardware Abstraction Layer library SRCS = main.c zigbee_comm.c sensors/bme280.c sensors/wind_vane.c sensors/rain_gauge.c sensors/anemometer.c include/hal_timer.c HEADERS = main.h zigbee_comm.h sensors/bme280.h sensors/wind_vane.h sensors/rain_gauge.h sensors/anemometer.h config.h include/hal_types.h include/hal_defs.h include/hal_timer.h include/ZComDef.h include/OSAL.h include/i2c.h OBJS = $(SRCS:.c=.o) # create a list of object files from the source files all: main.elf main.elf: $(OBJS) $(CC) $(LDFLAGS) $(OBJS) $(LIBS) -o $@ %.o: %.c $(HEADERS) $(CC) $(CFLAGS) -c $< -o $@ clean: rm -f main.elf $(OBJS) # Optionally add a rule to flash your device (if applicable) # flash: main.elf # ./flash_tool main.elf # This is just a placeholder if needed