Files
OrionOS/wm/Makefile
T
2026-07-23 12:14:34 -04:00

31 lines
815 B
Makefile

CC = gcc
# pkg-config gives correct flags on both Linux and macOS/Homebrew.
# Fallback covers systems where pkg-config isn't available.
PKG_XFT_C := $(shell pkg-config --cflags xft x11 2>/dev/null)
PKG_XFT_L := $(shell pkg-config --libs xft x11 2>/dev/null)
ifeq ($(PKG_XFT_C),)
# macOS Homebrew fallback
PKG_XFT_C := -I/opt/homebrew/include
PKG_XFT_L := -L/opt/homebrew/lib -lXft -lfontconfig
endif
CFLAGS = -Wall -Wextra -O2 -Iinclude $(PKG_XFT_C)
LDFLAGS = $(PKG_XFT_L)
SRC = src/wm.c src/client.c src/events.c src/draw.c src/color.c src/menu.c
OBJ = $(SRC:.c=.o)
BIN = skywm
.PHONY: all clean install
all: $(BIN)
$(BIN): $(OBJ)
$(CC) $(CFLAGS) -o $@ $^ $(LDFLAGS)
%.o: %.c
$(CC) $(CFLAGS) -c -o $@ $<
install: $(BIN)
install -Dm755 $(BIN) /usr/local/bin/$(BIN)
clean:
rm -f $(OBJ) $(BIN)