src/3rdparty/libpng/scripts/makefile.elf
changeset 30 5dc02b23752f
parent 0 1918ee327afb
equal deleted inserted replaced
29:b72c6db6890b 30:5dc02b23752f
     1 # makefile for libpng.a and libpng12.so on Linux ELF with gcc
     1 # makefile for libpng.a and libpng14.so on Linux ELF with gcc
     2 # Copyright (C) 1998, 1999, 2002, 2006, 2008 Greg Roelofs
     2 # Copyright (C) 1998, 1999, 2002, 2006, 2008 Greg Roelofs
     3 # and Glenn Randers-Pehrson
     3 # and Glenn Randers-Pehrson
     4 # Copyright (C) 1996, 1997 Andreas Dilger
     4 # Copyright (C) 1996, 1997 Andreas Dilger
     5 
     5 #
     6 # This code is released under the libpng license.
     6 # This code is released under the libpng license.
     7 # For conditions of distribution and use, see the disclaimer
     7 # For conditions of distribution and use, see the disclaimer
     8 # and license in png.h
     8 # and license in png.h
     9 
     9 
    10 # Modified for Debian by Junichi Uekawa and Josselin Mouette
    10 # Modified for Debian by Junichi Uekawa and Josselin Mouette
    11 # Major modifications are:
    11 # Major modifications are:
    12 #    * link libpng explicitly with libz and libm
    12 #    * link libpng explicitly with libz and libm
    13 #    * $(OLDSO).3 is a symlink rather than a different library
    13 #    * $(OLDSO).14 is a symlink rather than a different library
    14 #    * versioned symbols
    14 #    * versioned symbols
    15 
    15 
    16 # Library name:
    16 # Library name:
    17 LIBNAME = libpng12
    17 LIBNAME = libpng14
    18 PNGMAJ = 0
    18 PNGMAJ = 14
    19 PNGMIN = 1.2.40
    19 PNGMIN = 1.4.0
    20 PNGVER = $(PNGMAJ).$(PNGMIN)
    20 PNGVER = $(PNGMAJ).$(PNGMIN)
    21 
    21 
    22 # Shared library names:
    22 # Shared library names:
    23 LIBSO=$(LIBNAME).so
    23 LIBSO=$(LIBNAME).so
    24 LIBSOMAJ=$(LIBNAME).so.$(PNGMAJ)
    24 LIBSOMAJ=$(LIBNAME).so.$(PNGMAJ)
    25 LIBSOVER=$(LIBNAME).so.$(PNGVER)
    25 LIBSOVER=$(LIBNAME).so.$(PNGVER)
    26 OLDSO=libpng.so
    26 OLDSO=libpng.so
    27 OLDSOMAJ=libpng.so.3
    27 OLDSOMAJ=libpng.so.14
    28 OLDSOVER=libpng.so.3.$(PNGMIN)
    28 OLDSOVER=libpng.so.14.$(PNGMIN)
    29 
    29 
    30 # Utilities:
    30 # Utilities:
    31 AR_RC=ar rc
    31 AR_RC=ar rc
    32 CC=gcc
    32 CC=gcc
    33 MKDIR_P=mkdir -p
    33 MKDIR_P=mkdir -p
    34 LN_SF=ln -sf
    34 LN_SF=ln -sf
    35 RANLIB=ranlib
    35 RANLIB=ranlib
    36 RM_F=/bin/rm -f
    36 RM_F=/bin/rm -f
    37 
    37 
    38 # where "make install" puts libpng12.a, libpng12.so*,
    38 # where "make install" puts libpng14.a, libpng14.so*,
    39 # libpng12/png.h and libpng12/pngconf.h
    39 # libpng14/png.h and libpng14/pngconf.h
    40 # Prefix must be a full pathname.
    40 # Prefix must be a full pathname.
    41 prefix=/usr/local
    41 prefix=/usr/local
    42 exec_prefix=$(prefix)
    42 exec_prefix=$(prefix)
    43 
    43 
    44 # Where the zlib library and include files are located.
    44 # Where the zlib library and include files are located.
    58 # for pgcc version 2.95.1, -O3 is buggy; don't use it.
    58 # for pgcc version 2.95.1, -O3 is buggy; don't use it.
    59 
    59 
    60 CFLAGS=-W -Wall -D_REENTRANT -O2 \
    60 CFLAGS=-W -Wall -D_REENTRANT -O2 \
    61 	$(ALIGN) # $(WARNMORE) -g -DPNG_DEBUG=5
    61 	$(ALIGN) # $(WARNMORE) -g -DPNG_DEBUG=5
    62 
    62 
    63 LDFLAGS=-L. -lpng12
    63 LDFLAGS=-L. -lpng14
    64 LDFLAGS_A=libpng.a -lz -lm
    64 LDFLAGS_A=libpng.a -lz -lm
    65 LIBADDFLAGS=-lz -lm
    65 LIBADDFLAGS=-lz -lm
    66 
    66 
    67 
    67 
    68 INCPATH=$(prefix)/include
    68 INCPATH=$(prefix)/include
   105 libpng.pc:
   105 libpng.pc:
   106 	cat scripts/libpng.pc.in | sed -e s!@prefix@!$(prefix)! \
   106 	cat scripts/libpng.pc.in | sed -e s!@prefix@!$(prefix)! \
   107 	-e s!@exec_prefix@!$(exec_prefix)! \
   107 	-e s!@exec_prefix@!$(exec_prefix)! \
   108 	-e s!@libdir@!$(LIBPATH)! \
   108 	-e s!@libdir@!$(LIBPATH)! \
   109 	-e s!@includedir@!$(INCPATH)! \
   109 	-e s!@includedir@!$(INCPATH)! \
   110 	-e s!-lpng12!-lpng12\ -lz\ -lm! > libpng.pc
   110 	-e s!-lpng14!-lpng14\ -lz\ -lm! > libpng.pc
   111 
   111 
   112 libpng.syms: png.h pngconf.h
   112 libpng.syms: png.h pngconf.h
   113 	$(CC) $(CFLAGS) -E -DPNG_BUILDSYMS -DPNG_INTERNAL png.h |\
   113 	$(CC) $(CFLAGS) -E -DPNG_BUILDSYMS -DPNG_INTERNAL png.h |\
   114 	awk -F '[\t [\\]();]' -v PNGMAJ=$(PNGMAJ) 'BEGIN{printf("PNG12_%s {global:\n",PNGMAJ)}\
   114 	awk -F '[\t [\\]();]' -v PNGMAJ=$(PNGMAJ) 'BEGIN{printf("PNG14_%s {global:\n",PNGMAJ)}\
   115 	{ for (i=1;i+2<=NF;++i)\
   115 	{ for (i=1;i+2<=NF;++i)\
   116 		if ($$(i)=="PNG_FUNCTION_EXPORT" && $$(i+2)=="END")\
   116 		if ($$(i)=="PNG_FUNCTION_EXPORT" && $$(i+2)=="END")\
   117 			print $$(i+1) ";";\
   117 			print $$(i+1) ";";\
   118 	for (i=1;i+1<=NF;++i)\
   118 	for (i=1;i+1<=NF;++i)\
   119 		if ($$(i)=="PNG_DATA_EXPORT")\
   119 		if ($$(i)=="PNG_DATA_EXPORT")\
   126 	( cat scripts/libpng-config-head.in; \
   126 	( cat scripts/libpng-config-head.in; \
   127 	echo prefix=\"$(prefix)\"; \
   127 	echo prefix=\"$(prefix)\"; \
   128 	echo I_opts=\"-I$(INCPATH)/$(LIBNAME)\"; \
   128 	echo I_opts=\"-I$(INCPATH)/$(LIBNAME)\"; \
   129 	echo L_opts=\"\"; \
   129 	echo L_opts=\"\"; \
   130 	echo R_opts=\"\"; \
   130 	echo R_opts=\"\"; \
   131 	echo libs=\"-lpng12\"; \
   131 	echo libs=\"-lpng14\"; \
   132 	echo all_libs=\"-lpng12 $(LIBADDFLAGS)\"; \
   132 	echo all_libs=\"-lpng14 $(LIBADDFLAGS)\"; \
   133 	cat scripts/libpng-config-body.in ) > libpng-config
   133 	cat scripts/libpng-config-body.in ) > libpng-config
   134 	chmod +x libpng-config
   134 	chmod +x libpng-config
   135 
   135 
   136 $(LIBSO): $(LIBSOMAJ)
   136 $(LIBSO): $(LIBSOMAJ)
   137 	$(LN_SF) $(LIBSOMAJ) $(LIBSO)
   137 	$(LN_SF) $(LIBSOMAJ) $(LIBSO)
   258 writelock:
   258 writelock:
   259 	chmod a-w *.[ch35] $(DOCS) scripts/*
   259 	chmod a-w *.[ch35] $(DOCS) scripts/*
   260 
   260 
   261 # DO NOT DELETE THIS LINE -- make depend depends on it.
   261 # DO NOT DELETE THIS LINE -- make depend depends on it.
   262 
   262 
   263 png.o png.pic.o: png.h pngconf.h
   263 png.o png.pic.o: png.h pngconf.h pngpriv.h
   264 pngerror.o pngerror.pic.o: png.h pngconf.h
   264 pngerror.o pngerror.pic.o: png.h pngconf.h pngpriv.h
   265 pngrio.o pngrio.pic.o: png.h pngconf.h
   265 pngrio.o pngrio.pic.o: png.h pngconf.h pngpriv.h
   266 pngwio.o pngwio.pic.o: png.h pngconf.h
   266 pngwio.o pngwio.pic.o: png.h pngconf.h pngpriv.h
   267 pngmem.o pngmem.pic.o: png.h pngconf.h
   267 pngmem.o pngmem.pic.o: png.h pngconf.h pngpriv.h
   268 pngset.o pngset.pic.o: png.h pngconf.h
   268 pngset.o pngset.pic.o: png.h pngconf.h pngpriv.h
   269 pngget.o pngget.pic.o: png.h pngconf.h
   269 pngget.o pngget.pic.o: png.h pngconf.h pngpriv.h
   270 pngread.o pngread.pic.o: png.h pngconf.h
   270 pngread.o pngread.pic.o: png.h pngconf.h pngpriv.h
   271 pngrtran.o pngrtran.pic.o: png.h pngconf.h
   271 pngrtran.o pngrtran.pic.o: png.h pngconf.h pngpriv.h
   272 pngrutil.o pngrutil.pic.o: png.h pngconf.h
   272 pngrutil.o pngrutil.pic.o: png.h pngconf.h pngpriv.h
   273 pngtrans.o pngtrans.pic.o: png.h pngconf.h
   273 pngtrans.o pngtrans.pic.o: png.h pngconf.h pngpriv.h
   274 pngwrite.o pngwrite.pic.o: png.h pngconf.h
   274 pngwrite.o pngwrite.pic.o: png.h pngconf.h pngpriv.h
   275 pngwtran.o pngwtran.pic.o: png.h pngconf.h
   275 pngwtran.o pngwtran.pic.o: png.h pngconf.h pngpriv.h
   276 pngwutil.o pngwutil.pic.o: png.h pngconf.h
   276 pngwutil.o pngwutil.pic.o: png.h pngconf.h pngpriv.h
   277 pngpread.o pngpread.pic.o: png.h pngconf.h
   277 pngpread.o pngpread.pic.o: png.h pngconf.h pngpriv.h
   278 
   278 
   279 pngtest.o: png.h pngconf.h
   279 pngtest.o: png.h pngconf.h