Makefile 2.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. PROG ?= ./meter # Program we are building
  2. PACK ?= ./pack # Packing executable
  3. DELETE = rm -rf # Command to remove files
  4. GZIP ?= gzip # For compressing files in web_root/
  5. OUT ?= -o $(PROG) # Compiler argument for output file
  6. SOURCES = main.c mongoose.c net.c appl.c\
  7. ./libmodbus/src/modbus.c \
  8. ./libmodbus/src/modbus-data.c \
  9. ./libmodbus/src/modbus-rtu.c \
  10. ./libmodbus/src/modbus-tcp.c \
  11. ./paho.mqtt.c-1.3.9/src/Base64.c \
  12. ./paho.mqtt.c-1.3.9/src/Clients.c \
  13. ./paho.mqtt.c-1.3.9/src/Heap.c \
  14. ./paho.mqtt.c-1.3.9/src/LinkedList.c \
  15. ./paho.mqtt.c-1.3.9/src/Log.c \
  16. ./paho.mqtt.c-1.3.9/src/Messages.c \
  17. ./paho.mqtt.c-1.3.9/src/MQTTClient.c \
  18. ./paho.mqtt.c-1.3.9/src/MQTTPacket.c \
  19. ./paho.mqtt.c-1.3.9/src/MQTTPacketOut.c \
  20. ./paho.mqtt.c-1.3.9/src/MQTTPersistence.c \
  21. ./paho.mqtt.c-1.3.9/src/MQTTPersistenceDefault.c \
  22. ./paho.mqtt.c-1.3.9/src/MQTTProperties.c \
  23. ./paho.mqtt.c-1.3.9/src/MQTTProtocolClient.c \
  24. ./paho.mqtt.c-1.3.9/src/MQTTProtocolOut.c \
  25. ./paho.mqtt.c-1.3.9/src/MQTTReasonCodes.c \
  26. ./paho.mqtt.c-1.3.9/src/MQTTTime.c \
  27. ./paho.mqtt.c-1.3.9/src/OsWrapper.c \
  28. ./paho.mqtt.c-1.3.9/src/SHA1.c \
  29. ./paho.mqtt.c-1.3.9/src/Socket.c \
  30. ./paho.mqtt.c-1.3.9/src/SocketBuffer.c \
  31. ./paho.mqtt.c-1.3.9/src/SSLSocket.c \
  32. ./paho.mqtt.c-1.3.9/src/StackTrace.c \
  33. ./paho.mqtt.c-1.3.9/src/Thread.c \
  34. ./paho.mqtt.c-1.3.9/src/Tree.c \
  35. ./paho.mqtt.c-1.3.9/src/utf-8.c \
  36. ./paho.mqtt.c-1.3.9/src/WebSocket.c
  37. CFLAGS = -w -g -I. -I./libmodbus -I./libmodbus/src -I./paho.mqtt.c-1.3.9/src
  38. CFLAGS_EXTRA = -lpthread
  39. NPX ?= npx
  40. # em-500
  41. CC=arm-linux-gnueabihf-gcc
  42. # HTNICE GT6517
  43. #CC=arm-linux-gcc -std=c99
  44. # Mongoose build options. See https://mongoose.ws/documentation/#build-options
  45. CFLAGS_MONGOOSE += -DMG_ENABLE_PACKED_FS=0
  46. ifeq ($(OS),Windows_NT) # Windows settings. Assume MinGW compiler. To use VC: make CC=cl CFLAGS=/MD OUT=/Feprog.exe
  47. PROG = meter.exe # Use .exe suffix for the binary
  48. PACK = pack.exe # Packing executable
  49. CC = gcc # Use MinGW gcc compiler
  50. CFLAGS += -lws2_32 # Link against Winsock library
  51. DELETE = cmd /C del /Q /F /S # Command prompt command to delete files
  52. GZIP = echo # No gzip on Windows
  53. endif
  54. # Default target. Build and run program
  55. all: $(PROG)
  56. # $(RUN) $(PROG) $(ARGS)
  57. # Build program from sources
  58. $(PROG): $(SOURCES)
  59. $(CC) $(SOURCES) $(CFLAGS) $(CFLAGS_MONGOOSE) $(CFLAGS_EXTRA) $(OUT)
  60. # Cleanup. Delete built program and all build artifacts
  61. clean:
  62. $(DELETE) $(PROG) $(PACK) *.o *.obj *.exe *.dSYM mbedtls