This commit is contained in:
2026-01-02 20:53:07 +11:00
parent 04b64e10d1
commit 2f172cb1ae
3 changed files with 157 additions and 5 deletions

View File

@@ -1,6 +1,6 @@
CC = gcc
CFLAGS = -Wall -Wextra -Isrc/include -Iinclude
LDFLAGS =
LDFLAGS = -ldl -rdynamic
# Install paths
PREFIX ?= /usr/local
@@ -17,7 +17,7 @@ OBJ_DIR = $(BUILD_DIR)/obj
# Output names
EXECUTABLE = $(BIN_DIR)/ground
SHARED_LIB = $(LIB_DIR)/libgroundvm.so
HEADER = $(INC_DIR)/groundvm.h
HEADERS = $(INC_DIR)/groundvm.h $(INC_DIR)/groundext.h
# Source files
LIB_SOURCES = $(filter-out $(SRC_DIR)/main.c, $(wildcard $(SRC_DIR)/*.c))
@@ -37,7 +37,7 @@ executable: $(EXECUTABLE)
# Build shared library
.PHONY: library
library: $(SHARED_LIB) $(HEADER)
library: $(SHARED_LIB) $(HEADERS)
# Build both
.PHONY: both
@@ -52,7 +52,7 @@ $(SHARED_LIB): $(LIB_OBJECTS) | $(LIB_DIR)
$(CC) -shared $(LIB_OBJECTS) -o $@ $(LDFLAGS)
# Copy header for library distribution
$(HEADER): include/groundvm.h | $(INC_DIR)
$(INC_DIR)/%.h: include/%.h | $(INC_DIR)
cp $< $@
# Compile object files for executable
@@ -80,7 +80,7 @@ install: both
mkdir -p $(DESTDIR)$(PREFIX)/include
cp $(EXECUTABLE) $(DESTDIR)$(PREFIX)/bin/
cp $(SHARED_LIB) $(DESTDIR)$(PREFIX)/lib/
cp $(HEADER) $(DESTDIR)$(PREFIX)/include/
cp $(HEADERS) $(DESTDIR)$(PREFIX)/include/
ldconfig
# Debug: print variables