Moved UI from C to Vala
Multiple changes coming with that Massive cleanup
This commit is contained in:
25
Makefile
25
Makefile
@@ -1,24 +1,39 @@
|
||||
NAME=ginput
|
||||
CC=gcc
|
||||
CFLAGS=$(shell pkg-config --cflags gtk4 libadwaita-1 libusb-1.0) -O3 -Wall -I src
|
||||
LDFLAGS=$(shell pkg-config --libs gtk4 libadwaita-1 libusb-1.0)
|
||||
BUILD_DIR=build
|
||||
|
||||
CC=gcc
|
||||
VALAC=valac
|
||||
VALA_FLAGS=--pkg libadwaita-1 --gresources ui/ginput.gresource.xml
|
||||
CFLAGS=$(shell pkg-config --cflags gtk4 libadwaita-1 libusb-1.0 glib-2.0) -O3 -Wall -I src -I $(BUILD_DIR)/vala
|
||||
LDFLAGS=$(shell pkg-config --libs gtk4 libadwaita-1 libusb-1.0 glib-2.0) -lm
|
||||
|
||||
UI := $(shell find ui/ -name '*.ui')
|
||||
C_FILES := $(shell find src/ -name '*.c')
|
||||
VALA_FILES := $(shell find src/ -name '*.vala')
|
||||
VAPI_FILES := $(shell find src/ -name '*.vapi')
|
||||
VALA_OBJECTS := $(VALA_FILES)
|
||||
VALA_OBJECTS := $(patsubst %.vala,%.c,$(VALA_OBJECTS))
|
||||
VALA_OBJECTS := $(VALA_OBJECTS:%=$(BUILD_DIR)/vala/%)
|
||||
|
||||
all: resources $(BUILD_DIR)/$(NAME) $(BUILD_DIR)/drivers
|
||||
|
||||
# Top-level targets
|
||||
resources: $(BUILD_DIR)/glib-2.0/schemas/gschemas.compiled
|
||||
|
||||
$(BUILD_DIR)/$(NAME): $(BUILD_DIR)/resource.c $(C_FILES) | $(BUILD_DIR)
|
||||
$(VALA_OBJECTS): $(VALA_FILES) $(VAPI_FILES) | $(BUILD_DIR)/vala
|
||||
rm -rf $(BUILD_DIR)/vala
|
||||
$(VALAC) -d $(BUILD_DIR)/vala $(VALA_FLAGS) --header=$(BUILD_DIR)/vala/vala.h -C $^ $(VALA_PKG)
|
||||
|
||||
$(BUILD_DIR)/$(NAME): $(BUILD_DIR)/resource.c $(C_FILES) $(VALA_OBJECTS) | $(BUILD_DIR)
|
||||
$(CC) $(CFLAGS) -o $@ $^ $(LDFLAGS)
|
||||
|
||||
# Build directory
|
||||
$(BUILD_DIR):
|
||||
mkdir -p $(BUILD_DIR)
|
||||
|
||||
$(BUILD_DIR)/vala: | $(BUILD_DIR)
|
||||
mkdir -p $(BUILD_DIR)/vala
|
||||
|
||||
# Resources
|
||||
$(BUILD_DIR)/resource.c: ui/ginput.gresource.xml ui/style.css $(UI)
|
||||
cp ui/style.css $(BUILD_DIR)/
|
||||
@@ -44,7 +59,7 @@ clean:
|
||||
run: all
|
||||
XDG_DATA_DIRS=./$(BUILD_DIR) ./$(BUILD_DIR)/$(NAME)
|
||||
|
||||
$(BUILD_DIR)/$(NAME).dbg: $(BUILD_DIR)/resource.c $(C_FILES) | $(BUILD_DIR)
|
||||
$(BUILD_DIR)/$(NAME).dbg: $(BUILD_DIR)/resource.c $(C_FILES) $(VALA_OBJECTS) | $(BUILD_DIR)
|
||||
$(CC) $(CFLAGS) -g -o $@ $^ $(LDFLAGS)
|
||||
|
||||
debug: $(BUILD_DIR)/$(NAME).dbg $(BUILD_DIR)/drivers resources
|
||||
|
Reference in New Issue
Block a user