Makefile (1557B)
1 BIN:=http-server 2 3 CPP?=g++ 4 CC?=gcc 5 6 LIBS:= 7 SRC:= 8 9 SRC+=src/http-server.c 10 SRC+=example.c 11 12 override CFLAGS?=-Wall -s -O2 13 14 ifeq ($(OS),Windows_NT) 15 # CFLAGS += -D WIN32 16 # override CPPFLAGS+=-I external/libs/Microsoft.Web.WebView2.1.0.1150.38/build/native/include 17 ifeq ($(PROCESSOR_ARCHITEW6432),AMD64) 18 # CFLAGS += -D AMD64 19 else 20 ifeq ($(PROCESSOR_ARCHITECTURE),AMD64) 21 # CFLAGS += -D AMD64 22 endif 23 ifeq ($(PROCESSOR_ARCHITECTURE),x86) 24 # CFLAGS += -D IA32 25 endif 26 endif 27 else 28 UNAME_S := $(shell uname -s) 29 ifeq ($(UNAME_S),Linux) 30 # CFLAGS += -D LINUX 31 # override CFLAGS+=$(shell pkg-config --cflags --libs gtk+-3.0 webkit2gtk-4.0 glib-2.0) 32 # override CFLAGS+=-D _GNU_SOURCE 33 endif 34 ifeq ($(UNAME_S),Darwin) 35 # CFLAGS += -D OSX 36 override CFLAGS+=-I /usr/local/include/libepoll-shim/ 37 override CFLAGS+=-L /usr/local/lib -lepoll-shim 38 # override CFLAGS+=-D _BSD_SOURCE 39 endif 40 UNAME_P := $(shell uname -p) 41 ifeq ($(UNAME_P),x86_64) 42 # CFLAGS += -D AMD64 43 endif 44 ifneq ($(filter %86,$(UNAME_P)),) 45 # CFLAGS += -D IA32 46 endif 47 ifneq ($(filter arm%,$(UNAME_P)),) 48 # CFLAGS += -D ARM 49 endif 50 # TODO: flags for riscv 51 endif 52 53 INCLUDES:= 54 INCLUDES+=-I src 55 56 include lib/.dep/config.mk 57 58 OBJ:=$(SRC:.c=.o) 59 OBJ:=$(OBJ:.cc=.o) 60 61 override CFLAGS+=$(INCLUDES) 62 63 LDFLAGS?=-s 64 LDFLAGS+=$(CFLAGS) 65 66 default: $(BIN) 67 68 .PHONY: clean 69 clean: 70 rm -rf $(OBJ) 71 72 $(BIN): $(OBJ) 73 $(CC) $(LDFLAGS) $(OBJ) -o $@