Makefile 888 B

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. CC = gcc
  2. PREFIX ?= ../../skynet/3rd/lua
  3. LUA_INCLUDE_DIR ?= $(PREFIX)/
  4. LUA_LIB_DIR ?= ../../lib/luaclib/
  5. uname_S := $(shell sh -c 'uname -s 2>/dev/null || echo not')
  6. ifeq ($(uname_S), Darwin)
  7. SHARED = -fPIC
  8. CFLAGS = -O3 -Wall -pedantic -DNDEBUG
  9. CLOG_LDFLAGS = -I$(LUA_INCLUDE_DIR) -bundle -undefined dynamic_lookup
  10. else
  11. SHARED = -fPIC --shared
  12. CFLAGS = -g -O2 -Wall
  13. endif
  14. override CFLAGS += -I$(PREFIX)
  15. # cservice-src
  16. CSER_INCLUDE_DIR = ../../skynet/skynet-src
  17. TARGET = ./webclient.so
  18. all: $(TARGET)
  19. .PHONY: all clean
  20. .c.o:
  21. $(CC) -c $(SHARED) $(CFLAGS) -o $@ $<
  22. $(TARGET): ./webclient.c
  23. ifeq ($(uname_S), Darwin)
  24. $(CC) $(LDFLAGS) $(CLOG_LDFLAGS) -I$(CSER_INCLUDE_DIR) $^ -lcurl -o $@ -std=c99
  25. else
  26. $(CC) $(SHARED) $(CFLAGS) $^ -lcurl -o $@ -std=c99
  27. endif
  28. clean:
  29. rm -rf *.o *.so
  30. install:
  31. cp -rf $(TARGET) $(LUA_LIB_DIR)