Fixed a bug which prevented JPWL from working on multi-tiled images; added some more...
[openjpeg.git] / jpwl / Makefile
1 # Linux makefile for OpenJPEG + JPWL\r
2 \r
3 VER_MAJOR = 2\r
4 VER_MINOR = 1.2.0\r
5 \r
6 JPWL_SRCS = ./crc.c ./jpwl.c ./jpwl_lib.c ./rs.c\r
7 SRCS = ../libopenjpeg/bio.c ../libopenjpeg/cio.c ../libopenjpeg/dwt.c ../libopenjpeg/event.c ../libopenjpeg/image.c ../libopenjpeg/j2k.c ../libopenjpeg/j2k_lib.c ../libopenjpeg/jp2.c ../libopenjpeg/jpt.c ../libopenjpeg/mct.c ../libopenjpeg/mqc.c ../libopenjpeg/openjpeg.c ../libopenjpeg/pi.c ../libopenjpeg/raw.c ../libopenjpeg/t1.c ../libopenjpeg/t2.c ../libopenjpeg/tcd.c ../libopenjpeg/tgt.c $(JPWL_SRCS)\r
8 INCLS = ../libopenjpeg/bio.h ../libopenjpeg/cio.h ../libopenjpeg/dwt.h ../libopenjpeg/event.h ../libopenjpeg/fix.h ../libopenjpeg/image.h ../libopenjpeg/int.h ../libopenjpeg/j2k.h ../libopenjpeg/j2k_lib.h ../libopenjpeg/jp2.h ../libopenjpeg/jpt.h ../libopenjpeg/mct.h ../libopenjpeg/mqc.h ../libopenjpeg/openjpeg.h ../libopenjpeg/pi.h ../libopenjpeg/raw.h ../libopenjpeg/t1.h ../libopenjpeg/t2.h ../libopenjpeg/tcd.h ../libopenjpeg/tgt.h ../libopenjpeg/opj_malloc.h ../libopenjpeg/opj_includes.h\r
9 INCLUDE = -Ilibopenjpeg_JPWL\r
10 \r
11 # General configuration variables:\r
12 CC = gcc\r
13 AR = ar\r
14 \r
15 PREFIX = /usr\r
16 INSTALL_LIBDIR = $(PREFIX)/lib\r
17 INSTALL_INCLUDE = $(PREFIX)/include\r
18 \r
19 # Converts cr/lf to just lf\r
20 DOS2UNIX = dos2unix\r
21 \r
22 COMPILERFLAGS = -O3 -fPIC\r
23 LIBRARIES = -lstdc++\r
24 \r
25 MODULES = $(SRCS:.c=.o)\r
26 CFLAGS = $(COMPILERFLAGS) $(INCLUDE) -DUSE_JPWL\r
27 \r
28 TARGET  = openjpeg_JPWL\r
29 STATICLIB = lib$(TARGET).a\r
30 SHAREDLIB = lib$(TARGET)-$(VER_MAJOR).$(VER_MINOR).so\r
31 LIBNAME = lib$(TARGET).so.$(VER_MAJOR)\r
32 \r
33 \r
34 \r
35 default: all\r
36 \r
37 all: OpenJPEG_JPWL JPWL_image_to_j2k JPWL_j2k_to_image\r
38 \r
39 dist: OpenJPEG_JPWL\r
40         install -d dist\r
41         install -m 644 $(STATICLIB) dist\r
42         install -m 755 $(SHAREDLIB) dist\r
43         ln -sf $(SHAREDLIB) dist/$(LIBNAME)\r
44         install libopenjpeg/openjpeg.h dist\r
45 \r
46 dos2unix:\r
47         @$(DOS2UNIX) $(SRCS) $(INCLS)\r
48 \r
49 OpenJPEG_JPWL: $(STATICLIB) $(SHAREDLIB)\r
50 \r
51 JPWL_codec: JPWL_j2k_to_image JPWL_image_to_j2k $(STATICLIB)\r
52 \r
53 .c.o:\r
54         $(CC) $(CFLAGS) -c $< -o $@\r
55 \r
56 $(STATICLIB): $(MODULES)\r
57         $(AR) r $@ $(MODULES)\r
58 \r
59 $(SHAREDLIB): $(MODULES)\r
60         $(CC) -s -shared -Wl,-soname,$(LIBNAME) -o $@ $(MODULES) $(LIBRARIES)\r
61 \r
62 JPWL_j2k_to_image: ../codec/j2k_to_image.c\r
63         gcc $(CFLAGS) ../codec/convert.c ../codec/j2k_to_image.c -o JPWL_j2k_to_image -I ../libopenjpeg/ -L . -lopenjpeg_JPWL -lm -ltiff\r
64 \r
65 JPWL_image_to_j2k: ../codec/image_to_j2k.c\r
66         gcc $(CFLAGS) ../codec/convert.c ../codec/image_to_j2k.c -o JPWL_image_to_j2k -I ../libopenjpeg/ -L . -lopenjpeg_JPWL -lm -ltiff\r
67 \r
68 install: OpenJPEG\r
69         install -d '$(DESTDIR)$(INSTALL_LIBDIR)' '$(DESTDIR)$(INSTALL_INCLUDE)'\r
70         install -m 644 -o root -g root $(STATICLIB) '$(DESTDIR)$(INSTALL_LIBDIR)'\r
71         ranlib '$(DESTDIR)$(INSTALL_LIBDIR)/$(STATICLIB)'\r
72         install -m 755 -o root -g root $(SHAREDLIB) '$(DESTDIR)$(INSTALL_LIBDIR)'\r
73         ln -sf $(SHAREDLIB) '$(DESTDIR)$(INSTALL_LIBDIR)/$(LIBNAME)'\r
74         install -m 644 -o root -g root libopenjpeg/openjpeg.h '$(DESTDIR)$(INSTALL_INCLUDE)'\r
75         -ldconfig\r
76 \r
77 cleanlib:\r
78         rm -rf core dist/ u2dtmp* $(MODULES) $(STATICLIB) $(SHAREDLIB) $(LIBNAME)\r
79 \r
80 cleancodec:\r
81         rm -f JPWL_j2k_to_image JPWL_image_to_j2k JPWL_j2k_to_image.o JPWL_image_to_j2k.o\r
82 \r
83 clean: cleanlib cleancodec