summaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authorTyler Murphy <tylerm@tylerm.dev>2023-04-17 22:49:49 -0400
committerTyler Murphy <tylerm@tylerm.dev>2023-04-17 22:49:49 -0400
commit7d650d5d9bcba940ae312657d51e366e7401fd6b (patch)
treed7283c146aaa625920cf85582a2e4099df86759d /Makefile
downloadwig-7d650d5d9bcba940ae312657d51e366e7401fd6b.tar.gz
wig-7d650d5d9bcba940ae312657d51e366e7401fd6b.tar.bz2
wig-7d650d5d9bcba940ae312657d51e366e7401fd6b.zip
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile42
1 files changed, 42 insertions, 0 deletions
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..a767001
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,42 @@
+CC = gcc
+
+INCFLAGS = -Isrc
+
+CCFLAGS = -std=gnu99 -Wall -Wextra -pedantic -O2
+CCFLAGS += $(INCFLAGS)
+
+LDFLAGS += $(INCFLAGS)
+
+BIN = bin
+APP = $(BIN)/app
+SRC = $(shell find src -name "*.c")
+OBJ = $(SRC:%.c=$(BIN)/%.o)
+
+.PHONY: dirs run clean build install uninstall
+
+EOF: clean build
+
+dirs:
+ mkdir -p ./$(BIN)
+ mkdir -p ./$(BIN)/src
+ mkdir -p ./$(BIN)/src/packet
+ mkdir -p ./$(BIN)/src/client
+
+run: build
+ $(APP)
+
+build: dirs ${OBJ}
+ ${CC} -o $(APP) $(filter %.o,$^) $(LDFLAGS)
+
+$(BIN)/%.o: %.c
+ $(CC) -o $@ -c $< $(CCFLAGS)
+
+clean:
+ rm -rf $(APP)
+ rm -rf $(BIN)
+
+install:
+ cp $(APP) /usr/local/bin/wig
+
+uninstall:
+ rm /usr/local/bin/wig