Makefile
资源名称:ilib [点击查看]
上传用户:changbiao
上传日期:2007-01-13
资源大小:141k
文件大小:7k
源码类别:

图片显示

开发平台:

C/C++

  1. # Ilib toplevel Makefile
  2. #
  3. # See README for build/install information.
  4. #
  5. # See COPYING for license information.
  6. # Ilib Home Page:
  7. # http://www.radix.net/~cknudsen/Ilib/
  8. #
  9. # Set the following and then run "make all"
  10. # You can get GIFLIB at:
  11. # http://prtr-13.ucsc.edu/~badger/software/libungif.shtml
  12. # You can get libpng (as well as zlib)  at:
  13. # ftp://ftp.uu.net/graphics/png/src/
  14. # Get libjpeg at:
  15. # ftp://ftp.uu.net/graphics/jpeg/
  16. #
  17. # ###############
  18. #   BUILD CONFIG
  19. # ###############
  20. #   Build .a static library if yes
  21. STATIC = yes
  22. #   Build .so shared library if yes
  23. DYNAMIC = yes
  24. #   Lib path may need correction depending upon platform
  25. LIBS = -L/usr/local/lib -lgif -lpng -ljpeg 
  26. #   -DHAVE_GIFLIB  if using -lgif above
  27. #   -DHAVE_PNGLIB  if using -lpng above
  28. #   -DHAVE_JPEGLIB if using -ljpeg above
  29. #   -DHAVE_TCL     if using -ltcl{vv}
  30. #   -DHAVE_TK      if usint -ltk{xx}
  31. DEFINES = -DHAVE_GIFLIB -DHAVE_PNGLIB -DHAVE_JPEGLIB
  32. #   Include path may need modification depending upon platform
  33. #   (Use only absolute paths here)
  34. INCLUDES = -I/usr/local/include -I/usr/local/include/giflib
  35. #  INSTALL CONFIG
  36. #   Compress Manpages if defined, use commnd after install
  37. COMPRESS = gzip -9v
  38. #   Install Locations
  39. PREFIX = /usr/local
  40. BINDIR = ${PREFIX}/bin
  41. LIBDIR = ${PREFIX}/lib
  42. MANDIR = ${PREFIX}/man
  43. DOCDIR = ${PREFIX}/share/Ilib
  44. DATDIR = ${PREFIX}/share/Ilib
  45. FNTDIR = ${DATDIR}/bdf
  46. #   Install Commands (e.g. "install" for BSD install)
  47. INSTALL         = install
  48. INSTALL_PROGRAM = ${INSTALL} -s -o bin  -g bin -m 00751
  49. INSTALL_DOC     = ${INSTALL} -o bin -g bin -m 00644
  50. INSTALL_DATA    = ${INSTALL} -o bin -g bin -m 00644
  51. INSTALL_FONT    = ${INSTALL} -o bin -g bin -m 00644
  52. INSTALL_SCRIPT  = ${INSTALL} -o bin -g bin -m 00755
  53. #   If we've installed with DYNAMIC above, we want
  54. #   to merge in the newly installed shared library
  55. #   with ldconfig
  56. #   If we want X to also use the installed fonts, we
  57. #   may wish to:       xset fn+ ${FNTDIR}
  58. #   We may wish to gzip them first and do a mkfontdir
  59. POST_INSTALL = echo
  60. #POST_INSTALL = ldconfig -m ${LIBDIR}
  61. # Definitions for your compiler and make (do you have system defined CFLAGS?)
  62. CC = cc
  63. CFLAGS = -g -Wall $(DEFINES) $(INCLUDES)
  64. RANLIB = ranlib
  65. ######################################################################
  66. MAJVERSION = 1
  67. MINVERSION = 1
  68. PATCHLEVEL = 7
  69. VERSION = ${MAJVERSION}.${MINVERSION}.${PATCHLEVEL}
  70. SOVERSION = ${MAJVERSION}.${MINVERSION}
  71. ######################################################################
  72. # No need to edit anything beyond here
  73. DIST = Ilib-${VERSION}
  74. SUBDIRS = include lib clients examples fonts
  75. all: build
  76. build:
  77. @echo "Building all"; 
  78. for i in ${SUBDIRS}; 
  79. do 
  80.   echo "===> Entering $$i for build"; 
  81.   ( cd $$i; make "MAKEFLAGS=${MAKEFLAGS}" "CC=${CC}" 
  82. "CFLAGS=${CFLAGS}" "RANLIB=${RANLIB}" 
  83. "LIBS=${LIBS}" "STATIC=${STATIC}" "DYNAMIC=${DYNAMIC}" 
  84. "VERSION=${VERSION}" "SOVERSION=${SOVERSION}" ) 
  85. done;
  86. install:
  87. @echo "Installing all"; 
  88. for i in ${SUBDIRS}; 
  89. do 
  90.   echo "===> Entering $$i for install"; 
  91.           ( cd $$i; make "MAKEFLAGS=${MAKEFLAGS}" "DEFINES=${DEFINES}" 
  92. "BINDIR=${BINDIR}" "LIBDIR=${LIBDIR}" "MANDIR=${MANDIR}" 
  93. "DOCDIR=${DOCDIR}" "DATDIR=${DATDIR}" "FNTDIR=${FONTDIR}" 
  94. "VERSION=${VERSION}" "INSTALL_PROGRAM=${INSTALL_PROGRAM}" 
  95. "INSTALL_DOC=${INSTALL_DOC}" "INSTALL_DATA=${INSTALL_DATA}" 
  96. "SOVERSION=${SOVERSION}" "INSTALL_FONT=${INSTALL_FONT}" 
  97. "INSTALL_SCRIPT=${INSTALL_SCRIPT}" install ) 
  98. done;
  99. @if [ ".${POST_INSTALL}" != "." ]; then 
  100.    echo "Post Install Processing"; 
  101.    ${POST_INSTALL}; 
  102. fi
  103. clean:
  104. @echo "Cleaning..."; 
  105. rm -f *core *.tar *.zip *.tar.gz *.Z filelist.txt filelist2.txt
  106. for i in $(SUBDIRS); 
  107. do 
  108.   echo "==> Cleaning in $$i"; 
  109.   ( cd $$i; make "SOVERSION=${SOVERSION}" clean ) 
  110. done
  111. makefiles:
  112. @echo "Updating makefiles in `pwd`"; 
  113. temp="/tmp/ilib-options.dat"; 
  114. echo "Saving options in $$temp"; 
  115. echo "# -- Do not edit these parameters here." > $$temp; 
  116. echo "# -- Edit the toplevel makefile and then 'make makefiles'" >> $$temp; 
  117. echo "CC              = $(CC)" >> $$temp; 
  118. echo "CFLAGS          = $(CFLAGS)" >> $$temp; 
  119. echo "RANLIB          = $(RANLIB)" >> $$temp; 
  120. echo "STATIC          = $(STATIC)" >> $$temp; 
  121. echo "DYNAMIC         = $(DYNAMIC)" >> $$temp; 
  122. echo "LIBS            = $(LIBS)" >> $$temp; 
  123. echo "MAJVERSION      = $(MAJVERSION)" >> $$temp; 
  124. echo "MINVERSION      = $(MINVERSION)" >> $$temp; 
  125. echo "PATCHLEVEL      = $(PATCHLEVEL)" >> $$temp; 
  126. echo "VERSION         = $(VERSION)" >> $$temp; 
  127. echo "SOVERSION       = $(SOVERSION)" >> $$temp; 
  128. echo "# Install locations" >> $$temp; 
  129. echo "PREFIX          = $(PREFIX)" >> $$temp; 
  130. echo "BINDIR          = $(BINDIR)" >> $$temp; 
  131. echo "LIBDIR          = $(LIBDIR)" >> $$temp; 
  132. echo "MANDIR          = $(MANDIR)" >> $$temp; 
  133. echo "DOCDIR          = $(DOCDIR)" >> $$temp; 
  134. echo "DATDIR          = $(DATDIR)" >> $$temp; 
  135. echo "FNTDIR          = $(FNTDIR)" >> $$temp; 
  136. echo "# Install commands" >> $$temp; 
  137. echo "INSTALL         = $(INSTALL)" >> $$temp; 
  138. echo "INSTALL_PROGRAM = $(INSTALL_PROGRAM)" >> $$temp; 
  139. echo "INSTALL_DOC     = $(INSTALL_DOC)" >> $$temp; 
  140. echo "INSTALL_DATA    = $(INSTALL_DATA)" >> $$temp; 
  141. echo "INSTALL_FONT    = $(INSTALL_FONT)" >> $$temp; 
  142. echo "INSTALL_SCRIPT  = $(INSTALL_SCRIPT)" >> $$temp; 
  143. for i in $(SUBDIRS); 
  144. do 
  145.   ( cd $$i; make "SITE_DEF_FILE=$$temp" makefiles ) 
  146. done
  147. makefile:
  148. mindist:
  149. @make clean; 
  150. rm -f filelist.txt filelist2.txt $(DIST).tar.gz $(DIST).zip $(DIST).Z; 
  151. find $(DIST)/* -type f ! -name "*,v" -print | grep -v bak | grep -v filelist | grep -v '/.' > filelist.txt; 
  152. grep -v fonts filelist.txt > filelist2.txt; 
  153. grep "fonts/helvR24.bdf" filelist.txt >> filelist2.txt; 
  154. grep "fonts/helvB18.bdf" filelist.txt >> filelist2.txt; 
  155. grep "fonts/helvR08.bdf" filelist.txt >> filelist2.txt; 
  156. grep "fonts/courR10.bdf" filelist.txt >> filelist2.txt; 
  157. echo "Building minimum tar file"; 
  158. tar cvf $(DIST).tar `cat filelist2.txt`; 
  159. echo "Compressing (gzip)"; 
  160. gzip -c < $(DIST).tar > $(DIST)-min.tar.gz ; 
  161. echo "Zipping"; 
  162. zip $(DIST)-min.zip `cat filelist2.txt`; 
  163. rm -f $(DIST).tar filelist.txt filelist2.txt
  164. dist:
  165. @make clean; 
  166. rm -f filelist.txt filelist2.txt $(DIST).tar.gz $(DIST).zip $(DIST).Z; 
  167. echo "Build full distribution"; 
  168. find $(DIST)/* -type f ! -name "*,v" -print | grep -v bak | grep -v '/.' > filelist.txt; 
  169. echo "Building full tar file"; 
  170. tar cvf $(DIST).tar `cat filelist.txt`; 
  171. grep -v fonts filelist.txt > filelist2.txt; 
  172. grep "fonts/helvR24.bdf" filelist.txt >> filelist2.txt; 
  173. grep "fonts/helvB18.bdf" filelist.txt >> filelist2.txt; 
  174. grep "fonts/helvR08.bdf" filelist.txt >> filelist2.txt; 
  175. grep "fonts/courR10.bdf" filelist.txt >> filelist2.txt; 
  176. echo "Compressing (gzip)"; 
  177. gzip -c < $(DIST).tar > $(DIST)-full.tar.gz ; 
  178. echo "Zipping"; 
  179. zip $(DIST)-full.zip `cat filelist.txt`; 
  180. rm -f $(DIST).tar; 
  181. echo "Building minimum tar file"; 
  182. tar cvf $(DIST).tar `cat filelist2.txt`; 
  183. echo "Compressing (gzip)"; 
  184. gzip -c < $(DIST).tar > $(DIST)-min.tar.gz ; 
  185. echo "Zipping"; 
  186. zip $(DIST)-min.zip `cat filelist2.txt`; 
  187. rm -f $(DIST).tar; 
  188. grep fonts filelist.txt > filelist2.txt; 
  189. echo "Building fonts tar file"; 
  190. tar cvf $(DIST).tar `cat filelist2.txt`; 
  191. echo "Compressing (gzip)"; 
  192. gzip -c < $(DIST).tar > $(DIST)-fonts.tar.gz ; 
  193. echo "Zipping"; 
  194. zip $(DIST)-fonts.zip `cat filelist2.txt`; 
  195. rm -f $(DIST).tar filelist.txt filelist2.txt