5 COMPILERFLAGS = -O3 -Wall -ffast-math -std=c99 -fPIC
7 SRCS = ./libjp3dvm/bio.c ./libjp3dvm/cio.c ./libjp3dvm/dwt.c \
8 ./libjp3dvm/event.c ./libjp3dvm/jp3d.c ./libjp3dvm/jp3d_lib.c \
9 ./libjp3dvm/volume.c ./libjp3dvm/mct.c ./libjp3dvm/mqc.c \
10 ./libjp3dvm/openjpeg.c ./libjp3dvm/pi.c ./libjp3dvm/raw.c \
11 ./libjp3dvm/t1.c ./libjp3dvm/t1_3d.c ./libjp3dvm/t2.c \
12 ./libjp3dvm/tcd.c ./libjp3dvm/tgt.c
14 INCLS = ./libjp3dvm/t1_3d.h ./libjp3dvm/bio.h ./libjp3dvm/cio.h \
15 ./libjp3dvm/dwt.h ./libjp3dvm/event.h ./libjp3dvm/fix.h \
16 ./libjp3dvm/int.h ./libjp3dvm/jp3d.h ./libjp3dvm/jp3d_lib.h \
17 ./libjp3dvm/volume.h ./libjp3dvm/mct.h ./libjp3dvm/mqc.h \
18 ./libjp3dvm/openjpeg3d.h ./libjp3dvm/pi.h ./libjp3dvm/raw.h \
19 ./libjp3dvm/t1.h ./libjp3dvm/t2.h ./libjp3dvm/tcd.h \
20 ./libjp3dvm/tgt.h ./libjp3dvm/opj_includes.h
22 INCLUDE = -I.. -Ilibjp3dvm
24 INSTALL_LIBDIR = $(prefix)/lib
25 headerdir = openjpeg3d-$(JP3D_MAJOR).$(JP3D_MINOR)
26 INSTALL_INCLUDE = $(prefix)/include/$(headerdir)
28 # Converts cr/lf to just lf
33 MODULES = $(SRCS:.c=.o)
34 CFLAGS = $(COMPILERFLAGS) $(INCLUDE)
36 LIBNAME = lib$(TARGET)
37 STATICLIB = $(LIBNAME).a
39 ifeq ($(ENABLE_SHARED),yes)
40 SHAREDLIB = $(LIBNAME).so.$(JP3D_MAJOR).$(JP3D_MINOR).$(JP3D_BUILD)
46 make -C codec -f Makefile.nix all
48 install -m 644 $(STATICLIB) ../bin
49 ifeq ($(ENABLE_SHARED),yes)
50 install -m 755 $(SHAREDLIB) ../bin
52 ln -sf $(SHAREDLIB) $(LIBNAME).so.$(JP3D_MAJOR).$(JP3D_MINOR))
54 ln -sf $(LIBNAME).so.$(JP3D_MAJOR).$(JP3D_MINOR) $(LIBNAME).so)
58 @$(DOS2UNIX) $(SRCS) $(INCLS)
60 Jp3dVM: $(STATICLIB) $(SHAREDLIB)
63 $(CC) $(CFLAGS) -c $< -o $@
65 $(STATICLIB): $(MODULES)
68 ifeq ($(ENABLE_SHARED),yes)
69 $(SHAREDLIB): $(MODULES)
70 $(CC) -s -shared -Wl,-soname,$(LIBNAME) -o $@ $(MODULES) $(LIBRARIES)
74 install -d '$(DESTDIR)$(INSTALL_LIBDIR)'
75 install -m 644 -o root -g root $(STATICLIB) '$(DESTDIR)$(INSTALL_LIBDIR)'
76 (cd $(DESTDIR)$(INSTALL_LIBDIR) && ranlib $(STATICLIB))
77 ifeq ($(ENABLE_SHARED),yes)
78 install -m 755 -o root -g root $(SHAREDLIB) '$(DESTDIR)$(INSTALL_LIBDIR)'
79 (cd $(DESTDIR)$(INSTALL_LIBDIR) && \
80 ln -sf $(SHAREDLIB) $(LIBNAME).so.$(JP3D_MAJOR).$(JP3D_MINOR) )
81 (cd $(DESTDIR)$(INSTALL_LIBDIR) && \
82 ln -sf $(LIBNAME).so.$(JP3D_MAJOR).$(JP3D_MINOR) $(LIBNAME).so )
85 install -d $(DESTDIR)$(INSTALL_INCLUDE)
86 rm -f $(DESTDIR)$(INSTALL_INCLUDE)/openjpeg3d.h
87 install -m 644 -o root -g root libjp3dvm/openjpeg3d.h \
88 $(DESTDIR)$(INSTALL_INCLUDE)/openjpeg3d.h
89 (cd $(DESTDIR)$(prefix)/include && \
90 ln -sf $(headerdir)/openjpeg3d.h openjpeg3d.h)
91 make -C codec -f Makefile.nix install
94 rm -f $(DESTDIR)$(INSTALL_LIBDIR)/$(STATICLIB)
95 ifeq ($(ENABLE_SHARED),yes)
96 (cd $(DESTDIR)$(INSTALL_LIBDIR) && \
97 rm -f $(LIBNAME).so $(LIBNAME).so.$(JP3D_MAJOR).$(JP3D_MINOR) $(SHAREDLIB))
100 rm -f $(DESTDIR)$(prefix)/include/openjpeg3d.h
101 rm -rf $(DESTDIR)$(INSTALL_INCLUDE)
102 make -C codec -f Makefile.nix uninstall
104 rm -f core u2dtmp* $(MODULES) $(STATICLIB) $(SHAREDLIB)
105 make -C codec -f Makefile.nix clean