1# For native build cd_idt8, cd_create_profile and a tiny version of libcolord.so
2# only. By reducing the library to what's necessary, we avoid dependencies on
3# naitve udev and libgudev
4
5CFLAGS+=$(shell pkg-config-native --cflags gio-2.0)
6CFLAGS+=$(shell pkg-config-native --cflags lcms2)
7CFLAGS+=-std=c99 -I./lib -I./lib/colord -I$(DESTDIR) -DCD_COMPILATION
8
9LDFLAGS+=$(shell pkg-config-native --libs gio-2.0)
10LDFLAGS+=$(shell pkg-config-native --libs lcms2)
11LDFLAGS+=-lm
12
13all: cd_idt8 cd_create_profile
14
15LIBSOURCES = \
16	lib/colord/cd-it8.c \
17	lib/colord/cd-color.c \
18	lib/colord/cd-spectrum.c \
19	lib/colord/cd-math.c \
20	lib/colord/cd-interp-akima.c \
21	lib/colord/cd-context-lcms.c \
22	lib/colord/cd-interp.c \
23	lib/colord/cd-interp-linear.c \
24	lib/colord/cd-it8-utils.c \
25	lib/colord/cd-enum.c \
26    lib/colord/cd-icc.c \
27    lib/colord/cd-icc-utils.c \
28    lib/colord/cd-dom.c
29
30libcolord.so: $(LIBSOURCES)
31	$(CC) $(CFLAGS) -L$(DESTDIR) -fPIC -shared -Wl,-soname,$@ $^ -o $(DESTDIR)/$@ $(LDFLAGS)
32
33cd_idt8.o: client/cd-it8.c
34	$(CC) $(CFLAGS) -c $^ -o $(DESTDIR)/$@
35
36cd_idt8: libcolord.so cd_idt8.o
37	$(CC) $(DESTDIR)/cd_idt8.o -o $(DESTDIR)/$@ -L$(DESTDIR) -lcolord $(LDFLAGS)
38
39cd_create_profile.o: client/cd-create-profile.c
40	$(CC) $(CFLAGS) -c $^ -o $(DESTDIR)/$@
41
42cd_create_profile: libcolord.so cd_create_profile.o
43	$(CC) $(DESTDIR)/cd_create_profile.o -o $(DESTDIR)/$@ -L$(DESTDIR) -lcolord $(LDFLAGS)
44
45.PHONY: clean
46
47clean:
48	rm -f $(DESTDIR)/libcolord.so $(DESTDIR)/*.o $(DESTDIR)/cd_idt8 $(DESTDIR)/cd_create_profile
49