Files
Gravity/Makefile
2026-08-04 11:30:30 +10:00

36 lines
635 B
Makefile

SRC=src
OBJ=obj
CC=gcc
CFLAGS=-Wall -Wextra -fPIC -O3# -fsanitize=address -g
TARGET=libgravity.so
TEST_TARGET=testapp
SRCS=$(shell find $(SRC) -name '*.c')
OBJS=$(patsubst $(SRC)/%.c,$(OBJ)/%.o,$(SRCS))
$(TARGET): $(OBJS)
$(CC) -shared $(OBJS) -o $(TARGET)
$(OBJ)/%.o: $(SRC)/%.c
@mkdir -p $(dir $@)
$(CC) $(CFLAGS) -c $< -o $@
$(TEST_TARGET): test.c $(TARGET)
$(CC) $(CFLAGS) test.c -lgravity -L. -o $(TEST_TARGET)
test: $(TEST_TARGET)
setup:
mkdir -p $(OBJ)
clean:
find $(OBJ) -name '*.o' -delete
rm $(TARGET)
rm $(TEST_TARGET)
install: $(TARGET)
sudo cp $(TARGET) /usr/local/lib/
.PHONY: setup clean test install