summaryrefslogtreecommitdiff
path: root/makefile
diff options
context:
space:
mode:
Diffstat (limited to 'makefile')
-rw-r--r--makefile31
1 files changed, 18 insertions, 13 deletions
diff --git a/makefile b/makefile
index abd3e2b..6c294d3 100644
--- a/makefile
+++ b/makefile
@@ -1,19 +1,24 @@
+.PHONY: clean
+CXX := g++
CXXFLAGS := -g `pkg-config --cflags x11`
-LDFLAGS := `pkg-config --libs x11`
+LINKFLAGS := `pkg-config --libs x11`
+OBJS_DIR := .
+OUT_DIR := .
+SOURCE_DIR := .
+EXEC := main
+SOURCE_FILES := $(wildcard $(SOURCE_DIR)/*.cpp)
+SOURCE_HEADERS := $(wildcard $(SOURCE_DIR)/*.h)
+OBJS := $(subst $(SOURCE_DIR),$(OBJS_DIR), $(patsubst %.cpp,%.o,$(SOURCE_FILES)))
-all: YATwm
+$(EXEC): $(OBJS)
+ $(CXX) $(OBJS) $(CXXFLAGS) $(LINKFLAGS) -o $(OUT_DIR)/$(EXEC)
-HEADERS = \
- config.h \
- structs.h \
- util.h
-SOURCES = \
- main.cpp
-OBJECTS = $(SOURCES:.cpp=.o)
+$(OBJS_DIR)/%.o : $(SOURCE_DIR)/%.cpp
+ $(CXX) $(CXXFLAGS) -c $< -o $@
-YATwm: $(HEADERS) $(OBJECTS)
- $(CXX) -o $@ $(OBJECTS) $(LDFLAGS)
+#Files to be compiled
+$(OBJS_DIR)/main.o: $(SOURCE_FILES) $(SOURCE_HEADERS)
-.PHONY: clean
clean:
- rm -f YATwm $(OBJECTS)
+ rm $(OBJS_DIR)/*.o
+ rm $(OUT_DIR)/$(EXEC)