Makefile 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. # Makefile for PCA9685 LED Controller
  2. CC = gcc
  3. CFLAGS = -Wall -O2 -g
  4. LDFLAGS = -lm
  5. TARGETS = led_dual_color test_pca9685
  6. PCA9685_SRC = pca9685.c
  7. PCA9685_HDR = pca9685.h
  8. .PHONY: all clean install
  9. all: $(TARGETS)
  10. led_dual_color: led_dual_color.c $(PCA9685_SRC) $(PCA9685_HDR)
  11. $(CC) $(CFLAGS) -o $@ led_dual_color.c $(PCA9685_SRC) $(LDFLAGS)
  12. test_pca9685: test_pca9685.c $(PCA9685_SRC) $(PCA9685_HDR)
  13. $(CC) $(CFLAGS) -o $@ test_pca9685.c $(PCA9685_SRC) $(LDFLAGS)
  14. clean:
  15. rm -f $(TARGETS) *.o
  16. install: led_dual_color
  17. cp led_dual_color /usr/local/bin/
  18. chmod 755 /usr/local/bin/led_dual_color
  19. test: led_dual_color
  20. sudo ./led_dual_color /dev/i2c-0 0x40
  21. help:
  22. @echo "Usage:"
  23. @echo " make - Build all programs"
  24. @echo " make led_dual_color - Build dual color LED controller"
  25. @echo " make test - Run with sudo"
  26. @echo " make clean - Remove built files"
  27. @echo ""
  28. @echo "Running:"
  29. @echo " sudo ./led_dual_color [i2c_device] [address]"
  30. @echo " Example: sudo ./led_dual_color /dev/i2c-0 0x40"