CC = gcc

PREFIX ?= ../../skynet/3rd/lua
LUA_INCLUDE_DIR ?= $(PREFIX)/
LUA_LIB_DIR ?=     ../../lib/luaclib/

uname_S := $(shell sh -c 'uname -s 2>/dev/null || echo not')
ifeq ($(uname_S), Darwin)
	SHARED = -fPIC
	CFLAGS = -O3 -Wall -pedantic -DNDEBUG 
	CLOG_LDFLAGS = -I$(LUA_INCLUDE_DIR) -bundle -undefined dynamic_lookup
else
	SHARED = -fPIC --shared
	CFLAGS = -g -O2 -Wall 	
endif

override CFLAGS += -I$(PREFIX)

# cservice-src
CSER_INCLUDE_DIR = ../../skynet/skynet-src
TARGET = ./webclient.so

all: $(TARGET)

.PHONY: all clean

.c.o:
	$(CC) -c $(SHARED) $(CFLAGS) -o $@ $<

$(TARGET): ./webclient.c

ifeq ($(uname_S), Darwin)
	$(CC) $(LDFLAGS) $(CLOG_LDFLAGS) -I$(CSER_INCLUDE_DIR) $^ -lcurl -o $@ -std=c99
else
	$(CC) $(SHARED) $(CFLAGS) $^ -lcurl -o $@ -std=c99
endif

clean:
	rm -rf *.o *.so

install:
	cp -rf $(TARGET) $(LUA_LIB_DIR)
