This repository has been archived on 2026-08-16. You can view files and clone it, but cannot push or open issues or pull requests.
ollie-kde/Makefile

33 lines
846 B
Makefile

# kde-ollie top-level Makefile
# Build order: libollie.so (Go) → ollie-kde daemon (C++/CMake)
BUILD_DIR := build-cmake
LIB_DIR := build
.PHONY: all lib daemon clean run
all: daemon
# Step 1: Build libollie.so from Go
lib: $(LIB_DIR)/libollie.so
$(LIB_DIR)/libollie.so: lib/capi.go lib/go.mod
cd lib && go build -buildmode=c-shared -o ../$(LIB_DIR)/libollie.so
# Step 2: Build the C++ daemon against libollie.so
daemon: lib
cmake -B $(BUILD_DIR) -S .
cmake --build $(BUILD_DIR)
# Run the daemon (useful for testing)
run: daemon
LD_LIBRARY_PATH=$(LIB_DIR):$$LD_LIBRARY_PATH ./$(BUILD_DIR)/ollie-kde
clean:
rm -rf $(BUILD_DIR)
rm -f $(LIB_DIR)/libollie.so $(LIB_DIR)/libollie.h
install: daemon
install -Dm755 $(BUILD_DIR)/ollie-kde $(DESTDIR)/usr/bin/ollie-kde
install -Dm644 $(LIB_DIR)/libollie.so $(DESTDIR)/usr/lib/libollie.so