fixed missing argument in main CMakeLists.txt
[openjpeg.git] / jpwl / Makefile.nix
1 #jpwl Makefile
2 include ../config.nix
3
4 TARGET  = openjpeg_JPWL
5 COMPILERFLAGS = -Wall -ffast-math -std=c99 -fPIC
6 USERLIBS = -lm
7
8 JPWL_SRCS = ./crc.c ./jpwl.c ./jpwl_lib.c ./rs.c
9
10 SRCS = ../libopenjpeg/bio.c ../libopenjpeg/cio.c ../libopenjpeg/dwt.c \
11   ../libopenjpeg/event.c ../libopenjpeg/image.c ../libopenjpeg/j2k.c \
12   ../libopenjpeg/j2k_lib.c ../libopenjpeg/jp2.c ../libopenjpeg/jpt.c \
13   ../libopenjpeg/mct.c ../libopenjpeg/mqc.c ../libopenjpeg/openjpeg.c \
14   ../libopenjpeg/pi.c ../libopenjpeg/raw.c ../libopenjpeg/t1.c \
15   ../libopenjpeg/t2.c ../libopenjpeg/tcd.c ../libopenjpeg/tgt.c \
16   ../libopenjpeg/opj_convert.c $(JPWL_SRCS)
17
18 INCLS = ../libopenjpeg/bio.h ../libopenjpeg/cio.h ../libopenjpeg/dwt.h \
19   ../libopenjpeg/event.h ../libopenjpeg/fix.h ../libopenjpeg/image.h \
20   ../libopenjpeg/int.h ../libopenjpeg/j2k.h ../libopenjpeg/j2k_lib.h \
21   ../libopenjpeg/jp2.h ../libopenjpeg/jpt.h ../libopenjpeg/mct.h \
22   ../libopenjpeg/mqc.h ../libopenjpeg/openjpeg.h ../libopenjpeg/pi.h \
23   ../libopenjpeg/raw.h ../libopenjpeg/t1.h ../libopenjpeg/t2.h \
24   ../libopenjpeg/tcd.h ../libopenjpeg/tgt.h ../libopenjpeg/opj_malloc.h \
25   ../libopenjpeg/opj_convert.h ../libopenjpeg/opj_includes.h
26
27 INCLUDE = -I.. -I. -I../libopenjpeg
28
29 AR = ar
30
31 INSTALL_LIBDIR = $(prefix)/lib
32 INSTALL_BIN = $(prefix)/bin
33
34 # Converts cr/lf to just lf
35 DOS2UNIX = dos2unix
36
37
38 LIBRARIES = -lstdc++
39
40 ifeq ($(WITH_TIFF),yes)
41 INCLUDE += $(TIFF_INCLUDE)
42 USERLIBS += $(TIFF_LIB)
43 endif
44
45 ifeq ($(WITH_PNG),yes)
46 INCLUDE += $(PNG_INCLUDE)
47 USERLIBS += $(PNG_LIB)
48 endif
49
50 ifeq ($(WITH_LCMS2),yes)
51 INCLUDE += $(LCMS2_INCLUDE)
52 USERLIBS += $(LCMS2_LIB)
53 endif
54
55 ifeq ($(WITH_LCMS1),yes)
56 INCLUDE += $(LCMS1_INCLUDE)
57 USERLIBS += $(LCMS1_LIB)
58 endif
59
60 LIBRARIES += $(USERLIBS)
61
62 MODULES = $(SRCS:.c=.o)
63
64 CFLAGS = $(COMPILERFLAGS) $(INCLUDE) -DUSE_JPWL
65
66 LIBNAME = lib$(TARGET)
67 STATICLIB = $(LIBNAME).a
68
69 ifeq ($(ENABLE_SHARED),yes)
70 SHAREDLIB = $(LIBNAME).so.$(MAJOR).$(MINOR).$(BUILD)
71 endif
72
73 default: all
74
75 all: OpenJPEG_JPWL JPWL_image_to_j2k JPWL_j2k_to_image
76         install -d ../bin
77         install -m 644 $(STATICLIB) ../bin
78 ifeq ($(ENABLE_SHARED),yes)
79         install -m 755 $(SHAREDLIB) ../bin
80         (cd ../bin && ln -sf $(SHAREDLIB) $(LIBNAME).so.$(MAJOR).$(MINOR))
81         (cd ../bin && ln -sf $(LIBNAME).so.$(MAJOR).$(MINOR) $(LIBNAME).so)
82 endif
83         install JPWL_image_to_j2k JPWL_j2k_to_image ../bin
84
85 dos2unix:
86         @$(DOS2UNIX) $(SRCS) $(INCLS)
87
88 OpenJPEG_JPWL: $(STATICLIB) $(SHAREDLIB)
89
90 JPWL_codec: JPWL_j2k_to_image JPWL_image_to_j2k $(STATICLIB)
91
92 .c.o:
93         $(CC) $(CFLAGS) -c $< -o $@
94
95 $(STATICLIB): $(MODULES)
96         $(AR) r $@ $(MODULES)
97
98 ifeq ($(ENABLE_SHARED),yes)
99 $(SHAREDLIB): $(MODULES)
100         $(CC) -s -shared -Wl,-soname,$(LIBNAME) -o $@ $(MODULES) $(LIBRARIES)
101 endif
102
103 JPWL_j2k_to_image: ../codec/j2k_to_image.c
104         $(CC) $(CFLAGS) ../codec/compat/getopt.c ../codec/index.c \
105         ../codec/convert.c ../codec/j2k_to_image.c \
106         -o JPWL_j2k_to_image ./libopenjpeg_JPWL.a $(USERLIBS)
107
108 JPWL_image_to_j2k: ../codec/image_to_j2k.c
109         $(CC) $(CFLAGS) ../codec/compat/getopt.c ../codec/index.c \
110         ../codec/convert.c ../codec/image_to_j2k.c \
111         -o JPWL_image_to_j2k ./libopenjpeg_JPWL.a $(USERLIBS)
112
113 install: OpenJPEG_JPWL
114         install -d $(DESTDIR)$(INSTALL_LIBDIR)
115         install -m 644 -o root -g root $(STATICLIB) $(DESTDIR)$(INSTALL_LIBDIR)
116         (cd $(DESTDIR)$(INSTALL_LIBDIR) && ranlib $(STATICLIB))
117 ifeq ($(ENABLE_SHARED),yes)
118         install -m 755 -o root -g root $(SHAREDLIB) $(DESTDIR)$(INSTALL_LIBDIR)
119         (cd $(DESTDIR)$(INSTALL_LIBDIR) && \
120         ln -sf $(SHAREDLIB) $(LIBNAME).so.$(MAJOR).$(MINOR) )
121         (cd $(DESTDIR)$(INSTALL_LIBDIR) && \
122         ln -sf $(LIBNAME).so.$(MAJOR).$(MINOR) $(LIBNAME).so )
123 endif
124         $(LDCONFIG)
125         install -d $(DESTDIR)$(INSTALL_BIN)
126         install -m 755 -o root -g root JPWL_j2k_to_image $(DESTDIR)$(INSTALL_BIN)
127         install -m 755 -o root -g root JPWL_image_to_j2k $(DESTDIR)$(INSTALL_BIN)
128         
129 cleanlib:
130         rm -f core u2dtmp* $(MODULES) $(STATICLIB) $(SHAREDLIB)
131
132 cleancodec:
133         rm -f JPWL_j2k_to_image JPWL_image_to_j2k JPWL_j2k_to_image.o \
134         JPWL_image_to_j2k.o
135
136 clean: cleanlib cleancodec
137
138 uninstall:
139         rm -f $(DESTDIR)$(INSTALL_LIBDIR)/$(STATICLIB)
140 ifeq ($(ENABLE_SHARED),yes)
141         (cd $(DESTDIR)$(INSTALL_LIBDIR) && \
142         rm -f $(LIBNAME).so $(LIBNAME).so.$(MAJOR).$(MINOR) $(SHAREDLIB))
143 endif
144         $(LDCONFIG)
145         rm -f $(DESTDIR)$(INSTALL_BIN)/JPWL_j2k_to_image
146         rm -f $(DESTDIR)$(INSTALL_BIN)/JPWL_image_to_j2k