35 lines
627 B
Makefile
35 lines
627 B
Makefile
CC = cc
|
|
CFLAGS = -O2 -fPIE
|
|
|
|
TARGET = kvm
|
|
LIBS = -ludev -lX11 -lXrandr -lXext -lXfixes -lXft
|
|
INCLUDES = -I/usr/include/freetype2
|
|
|
|
SRC_DIR = src
|
|
BUILD_DIR = build
|
|
|
|
SRC = $(wildcard $(SRC_DIR)/*.c)
|
|
OBJ = $(SRC:$(SRC_DIR)/%.c=$(BUILD_DIR)/%.o)
|
|
|
|
PREFIX = /usr/local
|
|
BINDIR = $(PREFIX)/bin
|
|
|
|
all: $(TARGET)
|
|
|
|
$(TARGET): $(OBJ)
|
|
$(CC) $(OBJ) -o $@ $(LIBS)
|
|
|
|
$(BUILD_DIR)/%.o: $(SRC_DIR)/%.c
|
|
@mkdir -p $(BUILD_DIR)
|
|
$(CC) $(CFLAGS) $(INCLUDES) -c $< -o $@
|
|
|
|
install: $(TARGET)
|
|
install -Dm755 $(TARGET) $(BINDIR)/$(TARGET)
|
|
|
|
uninstall:
|
|
rm -f $(BINDIR)/$(TARGET)
|
|
|
|
clean:
|
|
rm -rf $(BUILD_DIR) $(TARGET)
|
|
|
|
.PHONY: all install uninstall clean
|