initial release of jp3d library and codec
[openjpeg.git] / Makefile
1 # Linux makefile for OpenJPEG\r
2 \r
3 VER_MAJOR = 1\r
4 VER_MINOR = 0.0\r
5 \r
6 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\r
7 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_includes.h\r
8 INCLUDE = -Ilibopenjpeg\r
9 \r
10 # General configuration variables:\r
11 CC = gcc\r
12 AR = ar\r
13 \r
14 INSTALLDIR = /usr/lib\r
15 \r
16 # Converts cr/lf to just lf\r
17 DOS2UNIX = dos2unix\r
18 \r
19 COMPILERFLAGS = -O3\r
20 LIBRARIES = -lstdc++\r
21 \r
22 MODULES = $(SRCS:.c=.o)\r
23 CFLAGS = $(COMPILERFLAGS) $(INCLUDE)\r
24 \r
25 TARGET  = openjpeg\r
26 STATICLIB = lib$(TARGET).a\r
27 SHAREDLIB = lib$(TARGET)-$(VER_MAJOR).$(VER_MINOR).so\r
28 LIBNAME = lib$(TARGET).so.$(VER_MAJOR)\r
29 \r
30 \r
31 \r
32 default: all\r
33 \r
34 all: dist\r
35 \r
36 dist: OpenJPEG\r
37         mkdir dist\r
38         cp *.a dist/\r
39         cp *.so dist/\r
40         cp libopenjpeg/openjpeg.h dist/\r
41 \r
42 dos2unix:\r
43         @$(DOS2UNIX) $(SRCS) $(INCLS)\r
44 \r
45 OpenJPEG: $(STATICLIB) $(SHAREDLIB)\r
46 \r
47 .c.o:\r
48         $(CC) $(CFLAGS) -c $< -o $@\r
49 \r
50 $(STATICLIB): $(MODULES)\r
51         $(AR) r $@ $(MODULES)\r
52 \r
53 $(SHAREDLIB): $(MODULES)\r
54         $(CC) -s -shared -Wl,-soname,$(LIBNAME) -o $@ $(MODULES) $(LIBRARIES)\r
55 \r
56 install:\r
57         install -m 644 -o root -g root $(STATICLIB) $(INSTALLDIR)\r
58         install -m 755 -o root -g root $(SHAREDLIB) $(INSTALLDIR)\r
59         ln -sf $(SHAREDLIB) $(INSTALLDIR)/$(LIBNAME)\r
60         ldconfig\r
61 \r
62 clean:\r
63         rm -rf core dist/ u2dtmp* $(MODULES) $(STATICLIB) $(SHAREDLIB) $(LIBNAME)\r
64 \r
65 osx:\r
66         make -f Makefile.osx\r
67 \r
68 osxinstall:\r
69         make -f Makefile.osx install\r
70 \r
71 osxclean:\r
72         make -f Makefile.osx clean\r