1 # Makefile for the Image Library (c) 2006 Pavel Charvat <pchar@ucw.cz>
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
12 LIBIMAGES_MODS+=object
13 LIBIMAGES_DEPS=$(LIBSH)
15 LIBIMAGES_DEPS=$(LIBUCW)
18 ifdef CONFIG_STATIC_PIC
19 LIBIMAGES_DEPS+=$(o)/images/libucw-images$(LV)-pic.a
21 ifdef CONFIG_INSTALL_API
22 $(o)/images/libucw-images.pc: $(addprefix $(o)/images/libucw-images$(LV),.a -pic.a .so)
25 ifdef CONFIG_IMAGES_DUP
26 LIBIMAGES_PROGS+=$(o)/images/ucw-image-dup-test
27 LIBIMAGES_MODS+=dup-init dup-cmp
28 LIBIMAGES_INCLUDES+=duplicates.h
30 ifdef CONFIG_IMAGES_SIM
31 LIBIMAGES_PROGS+=$(o)/images/ucw-image-sim-test
32 LIBIMAGES_MODS+=sig-cmp
34 ifneq ($(CONFIG_IMAGES_DUP)$(CONFIG_IMAGES_SIM),)
35 LIBIMAGES_MODS+=sig-dump sig-init sig-seg sig-txt
36 LIBIMAGES_INCLUDES+=signature.h
39 ifdef CONFIG_IMAGES_LIBJPEG
40 LIBIMAGES_MODS+=io-libjpeg
41 LIBIMAGES_LIBS+=-ljpeg
44 ifdef CONFIG_IMAGES_LIBPNG
45 LIBIMAGES_MODS+=io-libpng
49 ifdef CONFIG_IMAGES_LIBUNGIF
50 LIBIMAGES_MODS+=io-libungif
51 LIBIMAGES_LIBS+=-lungif
53 ifdef CONFIG_IMAGES_LIBGIF
54 LIBIMAGES_MODS+=io-libungif
59 ifdef CONFIG_IMAGES_LIBMAGICK
60 LIBIMAGES_MODS+=io-libmagick
61 MAGICK_LIBS:=$(shell GraphicsMagick-config --libs)
62 MAGICK_CPPFLAGS:=$(shell GraphicsMagick-config --cppflags)
63 LIBIMAGES_LIBS+=$(MAGICK_LIBS)
64 $(o)/images/io-libmagick.o: CFLAGS+=$(MAGICK_CPPFLAGS)
67 PROGS+=$(LIBIMAGES_PROGS)
68 CONFIGS+=$(LIBIMAGES_CONFIGS)
70 $(o)/images/libucw-images$(LV).a: $(addsuffix .o,$(addprefix $(o)/images/,$(LIBIMAGES_MODS)))
71 $(o)/images/libucw-images$(LV)-pic.a: $(addsuffix .oo,$(addprefix $(o)/images/,$(LIBIMAGES_MODS)))
72 $(o)/images/libucw-images$(LV).so: $(addsuffix .oo,$(addprefix $(o)/images/,$(LIBIMAGES_MODS)))
73 $(o)/images/libucw-images$(LV).so: SONAME_SUFFIX=.$(UCW_ABI_MAJOR)
74 $(o)/images/libucw-images.pc: $(LIBIMAGES_DEPS)
76 $(o)/images/ucw-image-tool: $(o)/images/ucw-image-tool.o $(LIBIMAGES)
77 $(o)/images/ucw-color-tool: $(o)/images/ucw-color-tool.o $(LIBIMAGES)
78 $(o)/images/ucw-image-dup-test: $(o)/images/ucw-image-dup-test.o $(LIBIMAGES)
79 $(o)/images/ucw-image-sim-test: $(o)/images/ucw-image-sim-test.o $(LIBIMAGES)
81 TESTS+=$(o)/images/image-test.test
82 $(o)/images/image-test: $(o)/images/image-test.o $(LIBIMAGES)
83 $(o)/images/image-test.test: $(o)/images/image-test
85 TESTS+=$(o)/images/color.test
86 $(o)/images/color-t: $(LIBIMAGES)
87 $(o)/images/color.test: $(o)/images/color-t
89 API_LIBS+=libucw-images
90 API_INCLUDES+=$(o)/images/.include-stamp
91 $(o)/images/.include-stamp: $(addprefix $(s)/images/,$(LIBIMAGES_INCLUDES))
92 $(o)/images/.include-stamp: IDST=images
93 run/lib/pkgconfig/libucw-images.pc: $(o)/images/libucw-images.pc
95 INSTALL_TARGETS+=install-libucw-images-lib
96 install-libucw-images-lib:
97 install -d -m 755 $(DESTDIR)$(INSTALL_LIB_DIR)
98 install -m 644 run/lib/libucw-images$(LV).so.$(UCW_ABI_MAJOR) $(DESTDIR)$(INSTALL_LIB_DIR)/libucw-images$(LV).so.$(UCW_ABI_VERSION)
99 .PHONY: install-libucw-images-lib
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.$(UCW_ABI_VERSION) $(DESTDIR)$(INSTALL_LIB_DIR)/libucw-images$(LV).so
107 install -m 644 run/lib/libucw-images$(LV).a $(DESTDIR)$(INSTALL_LIB_DIR)
108 install -m 644 run/lib/libucw-images$(LV)-pic.a $(DESTDIR)$(INSTALL_LIB_DIR)
109 .PHONY: install-libucw-images-api
111 INSTALL_TARGETS+=install-libucw-images-utils
112 install-libucw-images-utils:
113 install -d -m 755 $(DESTDIR)$(INSTALL_BIN_DIR)
114 install -m 755 $(LIBIMAGES_PROGS) $(DESTDIR)$(INSTALL_BIN_DIR)
115 .PHONY: install-libucw-images-utils
117 INSTALL_TARGETS+=install-libucw-images-config
118 install-libucw-images-config:
119 install -d -m 755 $(DESTDIR)$(INSTALL_CONFIG_DIR)
120 install -m 644 $(addprefix run/$(CONFIG_DIR)/,$(LIBIMAGES_CONFIGS)) $(DESTDIR)$(INSTALL_CONFIG_DIR)
121 .PHONY: install-libucw-images-config