home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / pdflb302.zip / pdf / lpng.1-0-8 / scripts / makefile.solaris < prev    next >
Makefile  |  2000-07-24  |  4KB  |  121 lines

  1. # makefile for libpng on Solaris 2.x with gcc
  2. # Contributed by William L. Sebok, based on makefile.linux
  3. # Copyright (C) 1998 Greg Roelofs
  4. # Copyright (C) 1996, 1997 Andreas Dilger
  5. # For conditions of distribution and use, see copyright notice in png.h
  6.  
  7. CC=gcc
  8.  
  9. # Where make install puts libpng.a, libpng.so*, and png.h
  10. prefix=/usr/local
  11.  
  12. # Where the zlib library and include files are located
  13. # Changing these to ../zlib poses a security risk.  If you want
  14. # to have zlib in an adjacent directory, specify the full path instead of "..".
  15. #ZLIBLIB=../zlib
  16. #ZLIBINC=../zlib
  17.  
  18. ZLIBLIB=/usr/local/lib
  19. ZLIBINC=/usr/local/include
  20.  
  21. WARNMORE=-Wwrite-strings -Wpointer-arith -Wshadow \
  22.     -Wmissing-declarations -Wtraditional -Wcast-align \
  23.     -Wstrict-prototypes -Wmissing-prototypes #-Wconversion
  24. CFLAGS=-I$(ZLIBINC) -Wall -O3 \
  25.     # $(WARNMORE) -g -DPNG_DEBUG=5
  26. LDFLAGS=-L. -R. -L$(ZLIBLIB) -R$(ZLIBLIB) -lpng -lz -lm
  27.  
  28. #RANLIB=ranlib
  29. RANLIB=echo
  30.  
  31. # read libpng.txt or png.h to see why PNGMAJ is 2.  You should not
  32. # have to change it.
  33. PNGMAJ = 2
  34. PNGMIN = 1.0.8
  35. PNGVER = $(PNGMAJ).$(PNGMIN)
  36.  
  37. INCPATH=$(prefix)/include
  38. LIBPATH=$(prefix)/lib
  39.  
  40. OBJS = png.o pngset.o pngget.o pngrutil.o pngtrans.o pngwutil.o \
  41.     pngread.o pngrio.o pngwio.o pngwrite.o pngrtran.o \
  42.     pngwtran.o pngmem.o pngerror.o pngpread.o
  43.  
  44. OBJSDLL = $(OBJS:.o=.pic.o)
  45.  
  46. .SUFFIXES:      .c .o .pic.o
  47.  
  48. .c.pic.o:
  49.     $(CC) -c $(CFLAGS) -fPIC -o $@ $*.c
  50.  
  51. all: libpng.a libpng.so pngtest
  52.  
  53. libpng.a: $(OBJS)
  54.     ar rc $@ $(OBJS)
  55.     $(RANLIB) $@
  56.  
  57. libpng.so: libpng.so.$(PNGMAJ)
  58.     ln -f -s libpng.so.$(PNGMAJ) libpng.so
  59.  
  60. libpng.so.$(PNGMAJ): libpng.so.$(PNGVER)
  61.     ln -f -s libpng.so.$(PNGVER) libpng.so.$(PNGMAJ)
  62.  
  63. libpng.so.$(PNGVER): $(OBJSDLL)
  64.     @case "`type ld`" in *ucb*) \
  65.     echo; \
  66.     echo '## WARNING:'; \
  67.     echo '## The commands "CC" and "LD" must NOT refer to /usr/ucb/cc'; \
  68.     echo '## and /usr/ucb/ld.  If they do, you need to adjust your PATH'; \
  69.     echo '## environment variable to put /usr/ccs/bin ahead of /usr/ucb.'; \
  70.     echo '## The environment variable LD_LIBRARY_PATH should not be set'; \
  71.     echo '## at all.  If it is, things are likely to break because of'; \
  72.     echo '## the libucb dependency that is created.'; \
  73.     echo; \
  74.     ;; \
  75.     esac
  76.     $(LD) -G -L$(ZLIBLIB) -R$(ZLIBLIB) -h libpng.so.$(PNGMAJ) \
  77.      -o libpng.so.$(PNGVER) $(OBJSDLL) -lz
  78.  
  79. pngtest: pngtest.o libpng.so
  80.     $(CC) -o pngtest $(CFLAGS) pngtest.o $(LDFLAGS)
  81.  
  82. test: pngtest
  83.     ./pngtest
  84.  
  85. install: libpng.a libpng.so.$(PNGVER)
  86.     -@mkdir $(INCPATH) $(LIBPATH)
  87.     cp png.h pngconf.h $(INCPATH)
  88.     chmod 644 $(INCPATH)/png.h $(INCPATH)/pngconf.h
  89.     cp libpng.a libpng.so.$(PNGVER) $(LIBPATH)
  90.     chmod 755 $(LIBPATH)/libpng.so.$(PNGVER)
  91.     -@/bin/rm -f $(LIBPATH)/libpng.so.$(PNGMAJ) $(LIBPATH)/libpng.so
  92.     (cd $(LIBPATH); ln -f -s libpng.so.$(PNGVER) libpng.so.$(PNGMAJ); \
  93.      ln -f -s libpng.so.$(PNGMAJ) libpng.so)
  94.  
  95. clean:
  96.     /bin/rm -f *.o libpng.a libpng.so* pngtest pngout.png
  97.  
  98. DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO
  99. writelock:
  100.     chmod a-w *.[ch35] $(DOCS) scripts/*
  101.  
  102. # DO NOT DELETE THIS LINE -- make depend depends on it.
  103.  
  104. png.o png.pic.o: png.h pngconf.h
  105. pngerror.o pngerror.pic.o: png.h pngconf.h
  106. pngrio.o pngrio.pic.o: png.h pngconf.h
  107. pngwio.o pngwio.pic.o: png.h pngconf.h
  108. pngmem.o pngmem.pic.o: png.h pngconf.h
  109. pngset.o pngset.pic.o: png.h pngconf.h
  110. pngget.o pngget.pic.o: png.h pngconf.h
  111. pngread.o pngread.pic.o: png.h pngconf.h
  112. pngrtran.o pngrtran.pic.o: png.h pngconf.h
  113. pngrutil.o pngrutil.pic.o: png.h pngconf.h
  114. pngtrans.o pngtrans.pic.o: png.h pngconf.h
  115. pngwrite.o pngwrite.pic.o: png.h pngconf.h
  116. pngwtran.o pngwtran.pic.o: png.h pngconf.h
  117. pngwutil.o pngwutil.pic.o: png.h pngconf.h
  118. pngpread.o pngpread.pic.o: png.h pngconf.h
  119.  
  120. pngtest.o: png.h pngconf.h
  121.