]> mj.ucw.cz Git - libucw.git/blob - images/Makefile
xtypes: Small code cleanups.
[libucw.git] / images / Makefile
1 # Makefile for the Image Library (c) 2006 Pavel Charvat <pchar@ucw.cz>
2
3 DIRS+=images
4
5 LIBIMAGES_PROGS=$(o)/images/ucw-image-tool $(o)/images/ucw-color-tool
6 LIBIMAGES_CONFIGS+=images
7 LIBIMAGES_MODS=math config context image scale color io-main
8 LIBIMAGES_INCLUDES=images.h error.h color.h math.h
9 export LIBIMAGES_LIBS=-lm
10
11 ifdef CONFIG_SHERLOCK
12 LIBIMAGES_MODS+=object
13 LIBIMAGES_DEPS=$(LIBSH)
14 else
15 LIBIMAGES_DEPS=$(LIBUCW)
16 endif
17
18 ifdef CONFIG_INSTALL_API
19 $(o)/images/libucw-images.pc: $(addprefix $(o)/images/libucw-images$(LV),.a .so)
20 endif
21
22 ifdef CONFIG_IMAGES_DUP
23 LIBIMAGES_PROGS+=$(o)/images/ucw-image-dup-test
24 LIBIMAGES_MODS+=dup-init dup-cmp
25 LIBIMAGES_INCLUDES+=duplicates.h
26 endif
27 ifdef CONFIG_IMAGES_SIM
28 LIBIMAGES_PROGS+=$(o)/images/ucw-image-sim-test
29 LIBIMAGES_MODS+=sig-cmp
30 endif
31 ifneq ($(CONFIG_IMAGES_DUP)$(CONFIG_IMAGES_SIM),)
32 LIBIMAGES_MODS+=sig-dump sig-init sig-seg sig-txt
33 LIBIMAGES_INCLUDES+=signature.h
34 endif
35
36 ifdef CONFIG_IMAGES_LIBJPEG
37 LIBIMAGES_MODS+=io-libjpeg
38 LIBIMAGES_LIBS+=-ljpeg
39 endif
40
41 ifdef CONFIG_IMAGES_LIBPNG
42 LIBIMAGES_MODS+=io-libpng
43 LIBIMAGES_LIBS+=-lpng
44 endif
45
46 ifdef CONFIG_IMAGES_LIBUNGIF
47 LIBIMAGES_MODS+=io-libungif
48 LIBIMAGES_LIBS+=-lungif
49 else
50 ifdef CONFIG_IMAGES_LIBGIF
51 LIBIMAGES_MODS+=io-libungif
52 LIBIMAGES_LIBS+=-lgif
53 endif
54 endif
55
56 ifdef CONFIG_IMAGES_LIBMAGICK
57 LIBIMAGES_MODS+=io-libmagick
58 MAGICK_LIBS:=$(shell GraphicsMagick-config --libs)
59 MAGICK_CPPFLAGS:=$(shell GraphicsMagick-config --cppflags)
60 LIBIMAGES_LIBS+=$(MAGICK_LIBS) -lpthread
61 $(addprefix $(o)/images/io-libmagick,.o .oo): CFLAGS+=$(MAGICK_CPPFLAGS) -Wno-redundant-decls -Wno-undef
62 endif
63
64 PROGS+=$(LIBIMAGES_PROGS)
65 CONFIGS+=$(LIBIMAGES_CONFIGS)
66
67 $(o)/images/libucw-images$(LV).a: $(addsuffix .o,$(addprefix $(o)/images/,$(LIBIMAGES_MODS)))
68 $(o)/images/libucw-images$(LV).so: $(addsuffix .oo,$(addprefix $(o)/images/,$(LIBIMAGES_MODS))) $(LIBIMAGES_DEPS)
69 $(o)/images/libucw-images$(LV).so: SONAME_SUFFIX=.0
70 $(o)/images/libucw-images$(LV).so: LIBS+=$(LIBIMAGES_LIBS)
71 $(o)/images/libucw-images.pc: $(LIBIMAGES_DEPS)
72
73 $(o)/images/ucw-image-tool: $(o)/images/ucw-image-tool.o $(LIBIMAGES) $(LIBUCW)
74 $(o)/images/ucw-color-tool: $(o)/images/ucw-color-tool.o $(LIBIMAGES) $(LIBUCW)
75 $(o)/images/ucw-image-dup-test: $(o)/images/ucw-image-dup-test.o $(LIBIMAGES) $(LIBUCW)
76 $(o)/images/ucw-image-sim-test: $(o)/images/ucw-image-sim-test.o $(LIBIMAGES) $(LIBUCW)
77
78 TESTS+=$(o)/images/image-test.test
79 $(o)/images/image-test: $(o)/images/image-test.o $(LIBIMAGES) $(LIBUCW)
80 $(o)/images/image-test: LIBS+=-lpthread
81 $(o)/images/image-test.test: $(o)/images/image-test
82
83 TESTS+=$(o)/images/color.test
84 $(o)/images/color-t: $(LIBIMAGES) $(LIBUCW)
85 $(o)/images/color-t: LIBS+=-lm
86 $(o)/images/color.test: $(o)/images/color-t
87
88 API_LIBS+=libucw-images
89 API_INCLUDES+=$(o)/images/.include-stamp
90 $(o)/images/.include-stamp: $(addprefix $(s)/images/,$(LIBIMAGES_INCLUDES))
91 $(o)/images/.include-stamp: IDST=images
92 run/lib/pkgconfig/libucw-images.pc: $(o)/images/libucw-images.pc
93
94 INSTALL_TARGETS+=install-libucw-images-lib
95 install-libucw-images-lib:
96         install -d -m 755 $(DESTDIR)$(INSTALL_LIB_DIR)
97         install -m 644 run/lib/libucw-images$(LV).so.0 $(DESTDIR)$(INSTALL_LIB_DIR)/libucw-images$(LV).so.0.0
98         ln -sf libucw-images$(LV).so.0.0 $(DESTDIR)$(INSTALL_LIB_DIR)/libucw-images$(LV).so.0
99 .PHONY: install-libucw-images-lib
100
101 INSTALL_TARGETS+=install-libucw-images-api
102 install-libucw-images-api:
103         install -d -m 755 $(addprefix $(DESTDIR),$(INSTALL_INCLUDE_DIR)/images $(INSTALL_LIB_DIR) $(INSTALL_PKGCONFIG_DIR))
104         install -m 644 $(addprefix run/include/images/,$(LIBIMAGES_INCLUDES)) $(DESTDIR)$(INSTALL_INCLUDE_DIR)/images
105         install -m 644 run/lib/pkgconfig/libucw-images.pc $(DESTDIR)$(INSTALL_PKGCONFIG_DIR)
106         ln -sf libucw-images$(LV).so.0.0 $(DESTDIR)$(INSTALL_LIB_DIR)/libucw-images$(LV).so
107         install -m 644 run/lib/libucw-images$(LV).a $(DESTDIR)$(INSTALL_LIB_DIR)
108 .PHONY: install-libucw-images-api
109
110 INSTALL_TARGETS+=install-libucw-images-utils
111 install-libucw-images-utils:
112         install -d -m 755 $(DESTDIR)$(INSTALL_BIN_DIR)
113         install -m 755 $(LIBIMAGES_PROGS) $(DESTDIR)$(INSTALL_BIN_DIR)
114 .PHONY: install-libucw-images-utils
115
116 INSTALL_TARGETS+=install-libucw-images-config
117 install-libucw-images-config:
118         install -d -m 755 $(DESTDIR)$(INSTALL_CONFIG_DIR)
119         install -m 644 $(addprefix run/$(CONFIG_DIR)/,$(LIBIMAGES_CONFIGS)) $(DESTDIR)$(INSTALL_CONFIG_DIR)
120 .PHONY: install-libucw-images-config