src/3rdparty/libmng/makefiles/makefile.linux
changeset 0 1918ee327afb
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/3rdparty/libmng/makefiles/makefile.linux	Mon Jan 11 14:00:40 2010 +0000
@@ -0,0 +1,180 @@
+#
+# For conditions of distribution and use, see copyright notice in libmng.h
+#
+# makefile for libmng - THE MNG library
+# this makefile is suitable for Linux ELF with gcc
+#
+# (this file is heavily copied from makefile.linux in the libpng package)
+
+# compiler
+CC=gcc
+
+# default build options (this forces shared library compatibility!!)
+#OPTIONS = -DMNG_BUILD_SO
+OPTIONS = -DMNG_BUILD_SO -DMNG_FULL_CMS
+
+# where "make install" puts libmng.a,libmng.so*,libmng.h,libmng_conf.h,libmng_types.h
+prefix=/usr/local
+
+# Where the zlib library and include files are located
+#ZLIBLIB=../zlib
+#ZLIBINC=../zlib
+ZLIBLIB=/usr/local/lib
+ZLIBINC=/usr/local/include
+
+# Where the jpeg library and include files are located
+#JPEGLIB=../jpgsrc
+#JPEGINC=../jpgsrc
+JPEGLIB=/usr/local/lib
+JPEGINC=/usr/local/include
+
+# Where the lcms library and include files are located
+#LCMSLIB=../lcms/lib
+#LCMSINC=../lcms/source
+LCMSLIB=/usr/local/lib
+LCMSINC=/usr/local/include
+
+ALIGN=
+# for i386:
+#ALIGN=-malign-loops=2 -malign-functions=2
+
+WARNMORE=-Wwrite-strings -Wpointer-arith -Wshadow \
+	-Wmissing-declarations -Wtraditional -Wcast-align \
+	-Wstrict-prototypes -Wmissing-prototypes #-Wconversion
+
+# for pgcc version 2.95.1, -O3 is buggy; don't use it.
+
+CFLAGS=-I$(ZLIBINC) -I$(JPEGINC) -I$(LCMSINC) -Wall -O3 -funroll-loops \
+	$(OPTIONS) $(ALIGN) # $(WARNMORE) -g
+LDFLAGS=-L. -Wl,-rpath,. \
+	-L$(ZLIBLIB) -Wl,-rpath,$(ZLIBLIB) \
+	-L$(JPEGLIB) -Wl,-rpath,$(JPEGLIB) \
+	-L$(LCMSLIB) -Wl,-rpath,$(LCMSLIB) \
+	-lmng -lz -ljpeg -llcms -lm
+
+RANLIB=ranlib
+#RANLIB=echo
+
+# current version numbers
+MNGMAJ = 1
+MNGMIN = 1.0.9
+MNGVER = $(MNGMAJ).$(MNGMIN)
+
+INCPATH=$(prefix)/include
+LIBPATH=$(prefix)/lib
+
+OBJS = \
+	libmng_callback_xs.o \
+	libmng_chunk_io.o \
+	libmng_chunk_descr.o \
+	libmng_chunk_prc.o \
+	libmng_chunk_xs.o \
+	libmng_cms.o \
+	libmng_display.o \
+	libmng_dither.o \
+	libmng_error.o \
+	libmng_filter.o \
+	libmng_hlapi.o \
+	libmng_jpeg.o \
+	libmng_object_prc.o \
+	libmng_pixels.o \
+	libmng_prop_xs.o \
+	libmng_read.o \
+	libmng_trace.o \
+	libmng_write.o \
+	libmng_zlib.o
+
+OBJSDLL = $(OBJS:.0=.pic.o)
+
+.SUFFIXES:      .c .o .pic.o
+
+.c.pic.o:
+	$(CC) -c $(CFLAGS) -fPIC -o $@ $*.c
+
+all: libmng.a libmng.so
+
+libmng.a: $(OBJS)
+	ar rc $@ $(OBJS)
+	$(RANLIB) $@
+
+libmng.so: libmng.so.$(MNGMAJ)
+	ln -sf libmng.so.$(MNGMAJ) libmng.so
+
+libmng.so.$(MNGMAJ): libmng.so.$(MNGVER)
+	ln -sf libmng.so.$(MNGVER) libmng.so.$(MNGMAJ)
+
+libmng.so.$(MNGVER): $(OBJSDLL)
+#	$(CC) -shared -Wl,-soname,libmng.so.$(MNGMAJ) -o libmng.so.$(MNGVER) \
+#	$(OBJSDLL) -L$(ZLIBLIB) -L$(JPEGLIB) -L$(LCMSLIB) -lz -lm -lc
+	$(CC) -shared -Wl,-soname,libmng.so.$(MNGMAJ) -o libmng.so.$(MNGVER) \
+	$(OBJSDLL) -L$(ZLIBLIB) -L$(JPEGLIB) -ljpeg -L$(LCMSLIB) -llcms \
+    -lz -lm -lc
+
+install: libmng.a libmng.so.$(MNGVER)
+	-@mkdir $(INCPATH) $(LIBPATH)
+	cp libmng.h libmng_conf.h libmng_types.h $(INCPATH)
+	chmod 644 $(INCPATH)/libmng.h $(INCPATH)/libmng_conf.h $(INCPATH)/libmng_types.h
+	cp libmng.a libmng.so.$(MNGVER) $(LIBPATH)
+	chmod 755 $(LIBPATH)/libmng.so.$(MNGVER)
+	-@/bin/rm -f $(LIBPATH)/libmng.so.$(MNGMAJ) $(LIBPATH)/libmng.so
+	(cd $(LIBPATH); ln -sf libmng.so.$(MNGVER) libmng.so.$(MNGMAJ); \
+	 ln -sf libmng.so.$(MNGMAJ) libmng.so)
+
+clean:
+	/bin/rm -f *.o libmng.a libmng.so*
+
+# DO NOT DELETE THIS LINE -- make depend depends on it.
+
+libmng_hlapi.o libmng_hlapi.pic.o: libmng_hlapi.c libmng.h libmng_conf.h libmng_types.h \
+	libmng_data.h libmng_objects.h libmng_object_prc.h \
+	libmng_chunks.h libmng_memory.h libmng_error.h libmng_trace.h libmng_read.h \
+        libmng_write.h libmng_display.h libmng_zlib.h libmng_cms.h libmng_zlib.h
+libmng_callback_xs.o libmng_callback_xs.pic.o: libmng_callback_xs.c libmng.h \
+        libmng_conf.h libmng_types.h libmng_data.h libmng_error.h libmng_trace.h
+libmng_prop_xs.o libmng_prop_xs.pic.o: libmng_prop_xs.c libmng.h libmng_conf.h \
+        libmng_types.h libmng_data.h libmng_error.h libmng_trace.h libmng_cms.h
+libmng_chunk_xs.o libmng_chunk_xs.pic.o: libmng_chunk_xs.c libmng.h libmng_conf.h \
+        libmng_types.h libmng_data.h libmng_chunks.h libmng_chunk_prc.h \
+        libmng_error.h libmng_trace.h
+libmng_read.o libmng_read.pic.o: libmng_read.c libmng.h libmng_conf.h libmng_types.h \
+	libmng_data.h libmng_objects.h libmng_object_prc.h \
+	libmng_chunks.h libmng_chunk_prc.h libmng_chunk_io.h libmng_memory.h \
+        libmng_error.h libmng_trace.h libmng_read.h libmng_display.h
+libmng_write.o libmng_write.pic.o: libmng_write.c libmng.h libmng_conf.h libmng_types.h \
+	libmng_data.h libmng_error.h libmng_trace.h libmng_write.h
+libmng_display.o libmng_display.pic.o: libmng_display.c libmng.h libmng_conf.h \
+        libmng_types.h libmng_data.h libmng_objects.h libmng_object_prc.h libmng_memory.h \
+	libmng_error.h libmng_trace.h libmng_zlib.h libmng_cms.h libmng_pixels.h \
+        libmng_display.h
+libmng_object_prc.o libmng_object_prc.pic.o: libmng_object_prc.c libmng.h libmng_conf.h \
+        libmng_types.h libmng_data.h libmng_objects.h libmng_object_prc.h libmng_memory.h \
+        libmng_error.h libmng_trace.h libmng_display.h libmng_pixels.h
+libmng_chunk_descr.o libmng_chunk_descr.pic.o: libmng_chunk_descr.c libmng.h libmng_conf.h \
+        libmng_types.h libmng_data.h libmng_chunks.h libmng_chunk_descr.h libmng_memory.h \
+        libmng_chunk_prc.h libmng_error.h libmng_trace.h
+libmng_chunk_prc.o libmng_chunk_prc.pic.o: libmng_chunk_prc.c libmng.h libmng_conf.h \
+        libmng_types.h libmng_data.h libmng_chunks.h libmng_chunk_prc.h libmng_memory.h \
+        libmng_error.h libmng_trace.h
+libmng_chunk_io.o libmng_chunk_io.pic.o: libmng_chunk_io.c libmng.h libmng_conf.h \
+        libmng_types.h libmng_data.h libmng_objects.h libmng_object_prc.h \
+        libmng_chunks.h libmng_chunk_io.h libmng_chunk_prc.h libmng_memory.h libmng_error.h \
+        libmng_trace.h libmng_display.h libmng_zlib.h libmng_pixels.h
+libmng_error.o libmng_error.pic.o: libmng_error.c libmng.h libmng_conf.h libmng_types.h \
+	libmng_data.h libmng_error.h libmng_trace.h
+libmng_trace.o libmng_trace.pic.o: libmng_trace.c libmng.h libmng_conf.h libmng_types.h \
+	libmng_data.h libmng_error.h libmng_trace.h
+libmng_pixels.o libmng_pixels.pic.o: libmng_pixels.c libmng.h libmng_conf.h libmng_types.h \
+	libmng_data.h libmng_objects.h libmng_memory.h libmng_error.h libmng_trace.h \
+        libmng_cms.h libmng_filter.h libmng_pixels.h
+libmng_filter.o libmng_filter.pic.o: libmng_filter.c libmng.h libmng_conf.h libmng_types.h \
+	libmng_data.h libmng_error.h libmng_trace.h libmng_filter.h
+libmng_dither.o libmng_dither.pic.o: libmng_dither.c libmng.h libmng_conf.h libmng_types.h \
+	libmng_data.h libmng_error.h libmng_trace.h libmng_dither.h
+libmng_zlib.o libmng_zlib.pic.o: libmng_zlib.c libmng.h libmng_conf.h libmng_types.h \
+	libmng_data.h libmng_memory.h libmng_error.h libmng_trace.h libmng_pixels.h \
+        libmng_filter.h libmng_zlib.h
+libmng_jpeg.o libmng_jpeg.pic.o: libmng_jpeg.c libmng.h libmng_conf.h libmng_types.h \
+	libmng_data.h libmng_memory.h libmng_error.h libmng_trace.h libmng_pixels.h libmng_jpeg.h
+libmng_cms.o libmng_cms.pic.o: libmng_cms.c libmng.h libmng_conf.h libmng_types.h \
+	libmng_data.h libmng_objects.h libmng_error.h libmng_trace.h libmng_cms.h
+