STYLE: Add a lot of comments for the CMake build system
[openjpeg.git] / Makefile.osx
1 # Mac OSX makefile for OpenJPEG
2
3 VER_MAJOR = 1
4 VER_MINOR = 0.0
5
6 SRCS = ./libopenjpeg/bio.c ./libopenjpeg/cio.c ./libopenjpeg/dwt.c ./libopenjpeg/event.c ./libopenjpeg/fix.c ./libopenjpeg/image.c ./libopenjpeg/int.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
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
8 INCLUDE = -Ilibopenjpeg
9
10 # General configuration variables:
11 CC = gcc
12 LIBTOOL = libtool
13
14 INSTALLDIR = /usr/lib
15
16 COMPILERFLAGS = -O3
17 LIBRARIES = -lc -lgcc -lstdc++
18
19 MODULES = $(SRCS:.c=.o)
20 CFLAGS = $(COMPILERFLAGS) $(INCLUDE)
21
22 TARGET  = openjpeg
23 STATICLIB = lib$(TARGET).a
24 SHAREDLIB = lib$(TARGET)-$(VER_MAJOR).$(VER_MINOR).dylib
25 LIBNAME = lib$(TARGET).dylib.$(VER_MAJOR)
26
27
28
29 default: all
30
31 all: dist
32
33 dist: OpenJPEG
34         mkdir dist
35         cp *.a dist/
36         cp *.dylib dist/
37         cp libopenjpeg/openjpeg.h dist/
38
39 OpenJPEG: $(STATICLIB) $(SHAREDLIB)
40
41 .c.o:
42         $(CC) $(CFLAGS) -c $< -o $@
43
44 $(STATICLIB): $(MODULES)
45         $(LIBTOOL) -o $@ $(MODULES)
46
47 $(SHAREDLIB): $(MODULES)
48         $(LIBTOOL) -dynamic $(LIBRARIES) -o $@ $(MODULES)
49
50 install:
51         install -m 644 -o root -g wheel $(STATICLIB) $(INSTALLDIR)
52         install -m 755 -o root -g wheel $(SHAREDLIB) $(INSTALLDIR)
53         ln -sf $(SHAREDLIB) $(INSTALLDIR)/$(LIBNAME)
54         ranlib $(INSTALLDIR)/$(STATICLIB)
55
56 clean:
57         rm -rf core dist/ u2dtmp* $(MODULES) $(STATICLIB) $(SHAREDLIB) $(LIBNAME)
58