| CC ?= gcc |
| PKGCONFIG = $(shell which pkg-config) |
| CFLAGS = $(shell $(PKGCONFIG) --cflags gtk4) |
| LIBS = $(shell $(PKGCONFIG) --libs gtk4) |
| GLIB_COMPILE_RESOURCES = $(shell $(PKGCONFIG) --variable=glib_compile_resources gio-2.0) |
| |
| SRC = exampleapp.c exampleappwin.c main.c |
| BUILT_SRC = resources.c |
| |
| OBJS = $(BUILT_SRC:.c=.o) $(SRC:.c=.o) |
| |
| all: exampleapp |
| |
| resources.c: exampleapp.gresource.xml window.ui |
| $(GLIB_COMPILE_RESOURCES) exampleapp.gresource.xml --target=$@ --sourcedir=. --generate-source |
| |
| %.o: %.c |
| $(CC) -c -o $(@F) $(CFLAGS) $< |
| |
| exampleapp: $(OBJS) |
| $(CC) -o $(@F) $(OBJS) $(LIBS) |
| |
| clean: |
| rm -f $(BUILT_SRC) |
| rm -f $(OBJS) |
| rm -f exampleapp |