Makefile.Win32
上传用户:shbosideng
上传日期:2013-05-04
资源大小:1555k
文件大小:7k
源码类别:

SNMP编程

开发平台:

C/C++

  1. # GNU Makefile for Win32 rateup.exe target * 04-Sep-2005
  2. # for use with MingW32 gcc or Metrowerks CodeWarrior compiler
  3. # use with: make -f Makefile.Win32 [all|clean|dist]
  4. TARGET = rateup
  5. DESCR = MRTG Rateup Command Utility $(RATEUP_VERSION_STR)
  6. COPYR = Distributed under the GNU General Public License
  7. WWWURL = http://www.mrtg.org/
  8. # If you want to link with an icon you can specify here...
  9. LNKICON = images/favicon.ico
  10. # Edit the path below to point to your install destination (for 'install' option.)
  11. ifndef INSTDIR
  12. INSTDIR = c:/mrtg/run
  13. endif
  14. # All library code is statically linked to avoid problems with other lib NLMs. 
  15. # Base for the lib sources
  16. ifndef LIBBASE
  17. LIBBASE = ..
  18. endif
  19. # All library code is statically linked to avoid problems with other lib DLLs. 
  20. # Edit the path below to point to your libgd sources or set environment var.
  21. ifndef LIBGD
  22. LIBGD = $(LIBBASE)/gd-2.0.15
  23. endif
  24. # Edit the path below to point to your libpng sources or set environment var.
  25. ifndef LIBPNG
  26. LIBPNG = $(LIBBASE)/libpng-1.2.8
  27. endif
  28. # Edit the path below to point to your zlib sources or set environment var.
  29. ifndef ZLIBSDK
  30. ZLIBSDK = $(LIBBASE)/zlib-1.2.3
  31. endif
  32. # The following line defines your compiler.
  33. ifdef METROWERKS
  34. CC = mwcc
  35. else
  36. CC = gcc
  37. endif
  38. # RM = rm -f
  39. CP = cp -fav
  40. # MV = mv -f
  41. ZIP = zip -qzR9
  42. ARCHIVE = rateup-$(RATEUP_VERSION_STR)-w32.zip
  43. # must be equal to DEBUG or NDEBUG
  44. DB = NDEBUG
  45. # DB = DEBUG
  46. # Optimization: -O<n> or debugging: -g
  47. ifeq ($(DB),NDEBUG)
  48. OPT = -O2
  49. OBJDIR = release
  50. else
  51. OPT = -g
  52. OBJDIR = debug
  53. endif
  54. # Include the version info retrieved from source.
  55. -include $(OBJDIR)/version.inc
  56. # Global flags for all compilers
  57. CFLAGS = $(OPT) -D$(DB) -DHAVE_LIBPNG
  58. ifeq ($(CC),mwcc)
  59. LD = mwld
  60. CFLAGS += -nostdinc -gccinc -msgstyle gcc -inline off -opt nointrinsics -inst mmx -proc 586
  61. CFLAGS += -relax_pointers
  62. #CFLAGS += -w on,nounused,nounusedexpr
  63. #CFLAGS += -ansi strict
  64. CFLAGS += -ir "$(METROWERKS)/MSL" -ir "$(METROWERKS)/Win32-x86 Support"
  65. LD = mwld
  66. RC = mwwinrc
  67. LDFLAGS = -nostdlib
  68. LIBPATH += -lr "$(METROWERKS)/MSL" -lr "$(METROWERKS)/Win32-x86 Support"
  69. LDLIBS += -lkernel32.lib -luser32.lib
  70. LDLIBS += -lMSL_Runtime_x86.lib -lMSL_C_x86.lib -lMSL_Extras_x86.lib
  71. LIBFILES= $(LDLIBS)
  72. RCFLAGS =
  73. else
  74. LD = gcc
  75. RC = windres
  76. LDFLAGS = -s
  77. RCFLAGS = -I rc -O coff -i
  78. CFLAGS += -Wall -Wno-format -Wno-unused # -pedantic
  79. endif
  80. LDLIBS =
  81. ifndef COPYR
  82. COPYR = Copyright (c) 2005 The Open Source Community.
  83. endif
  84. ifndef DESCR
  85. DESCR = $(TARGET) Command Extension
  86. endif
  87. DESCR += - $(CC) build
  88. INCLUDES += -I$(LIBGD) -I$(LIBPNG) -I$(ZLIBSDK)
  89. CFLAGS += $(INCLUDES)
  90. vpath %.c src $(LIBGD) $(LIBPNG) $(ZLIBSDK)
  91. GDOBJS = 
  92. $(OBJDIR)/gd.o 
  93. $(OBJDIR)/gd_io.o 
  94. $(OBJDIR)/gd_io_dp.o 
  95. $(OBJDIR)/gd_io_file.o 
  96. $(OBJDIR)/gd_io_ss.o 
  97. $(OBJDIR)/gd_png.o 
  98. $(OBJDIR)/gd_ss.o 
  99. $(OBJDIR)/gdcache.o 
  100. $(OBJDIR)/gdfonts.o 
  101. $(OBJDIR)/gdhelpers.o 
  102. $(OBJDIR)/gdtables.o 
  103. $(OBJDIR)/png.o 
  104. $(OBJDIR)/pngerror.o 
  105. $(OBJDIR)/pnggccrd.o 
  106. $(OBJDIR)/pngget.o 
  107. $(OBJDIR)/pngmem.o 
  108. $(OBJDIR)/pngpread.o 
  109. $(OBJDIR)/pngread.o 
  110. $(OBJDIR)/pngrio.o 
  111. $(OBJDIR)/pngrtran.o 
  112. $(OBJDIR)/pngrutil.o 
  113. $(OBJDIR)/pngset.o 
  114. $(OBJDIR)/pngtrans.o 
  115. $(OBJDIR)/pngvcrd.o 
  116. $(OBJDIR)/pngwio.o 
  117. $(OBJDIR)/pngwrite.o 
  118. $(OBJDIR)/pngwtran.o 
  119. $(OBJDIR)/pngwutil.o 
  120. $(EOLIST)
  121. ZLIBOBJS = 
  122. $(OBJDIR)/adler32.o 
  123. $(OBJDIR)/compress.o 
  124. $(OBJDIR)/crc32.o 
  125. $(OBJDIR)/deflate.o 
  126. $(OBJDIR)/inflate.o 
  127. $(OBJDIR)/inffast.o 
  128. $(OBJDIR)/inftrees.o 
  129. $(OBJDIR)/trees.o 
  130. $(OBJDIR)/zutil.o 
  131. $(EOLIST)
  132. ifeq "$(wildcard $(ZLIBSDK)/infblock.c)" "$(ZLIBSDK)/infblock.c"
  133. ZLIBOBJS += 
  134. $(OBJDIR)/infblock.o 
  135. $(OBJDIR)/infcodes.o 
  136. $(OBJDIR)/infutil.o 
  137. $(EOLIST)
  138. endif
  139. OBJS = $(GDOBJS) $(ZLIBOBJS) $(OBJDIR)/$(TARGET).o
  140. ifndef NO_OWN_STRFTIME
  141. OBJS += $(OBJDIR)/strftime.o
  142. DEFS = -Dstrftime=strftime_
  143. endif
  144. all: $(OBJDIR) $(OBJDIR)/$(TARGET).exe
  145. dist: all $(OBJDIR)/readme.txt
  146. -$(RM) $(OBJDIR)/*.o $(OBJDIR)/$(TARGET).map $(OBJDIR)/$(TARGET).ncv
  147. -$(RM) $(OBJDIR)/$(TARGET).def $(OBJDIR)/$(TARGET).res $(OBJDIR)/$(TARGET).rc
  148. -$(RM) $(OBJDIR)/version.inc
  149. @-$(CP) -a COPYRIGHT $(OBJDIR)
  150. @echo Creating $(ARCHIVE)
  151. @$(ZIP) $(ARCHIVE) $(OBJDIR)/* < $(OBJDIR)/readme.txt
  152. install: all
  153. @[ -d $(INSTDIR) ] || mkdir $(INSTDIR)
  154. @$(CP) $(TARGET).exe $(INSTDIR)
  155. clean:
  156. -$(RM) -r $(OBJDIR)
  157. cleandist: clean
  158. -$(RM) $(ARCHIVE)
  159. $(OBJDIR):
  160. @mkdir $(OBJDIR)
  161. $(OBJDIR)/version.inc: $(TARGET).c $(OBJDIR)
  162. @echo Creating $@
  163. @awk -f get_ver.awk $< > $@
  164. $(OBJDIR)/$(TARGET).o: $(TARGET).c
  165. @echo Compiling $<
  166. @$(CC) $(CFLAGS) $(DEFS) -c $< -o $@
  167. $(OBJDIR)/%.o: %.c
  168. @echo Compiling $<
  169. @$(CC) $(CFLAGS) -c $< -o $@
  170. $(OBJDIR)/$(TARGET).exe: $(OBJS) $(OBJDIR)/$(TARGET).res
  171. @echo Linking $@
  172. @-$(RM) $@
  173. @$(LD) $(LDFLAGS) $^ -o $@ $(LIBPATH) $(LIBFILES)
  174. $(OBJDIR)/%.res: $(OBJDIR)/%.rc
  175. @echo Creating $@
  176. @$(RC) $(RCFLAGS) $< -o $@
  177. $(OBJDIR)/%.rc: Makefile.Win32 $(OBJDIR)/version.inc 
  178. @echo 1 VERSIONINFO > $@
  179. @echo  FILEVERSION $(RATEUP_VERSION),0 >> $@
  180. @echo  PRODUCTVERSION $(RATEUP_VERSION),0 >> $@
  181. @echo  FILEFLAGSMASK 0x3fL >> $@
  182. @echo  FILEOS 0x40004L >> $@
  183. @echo  FILEFLAGS 0x0L >> $@
  184. @echo  FILETYPE 0x1L >> $@
  185. @echo  FILESUBTYPE 0x0L >> $@
  186. @echo BEGIN >> $@
  187. @echo   BLOCK "StringFileInfo" >> $@
  188. @echo   BEGIN >> $@
  189. @echo     BLOCK "040904E4" >> $@
  190. @echo     BEGIN >> $@
  191. @echo       VALUE "LegalCopyright","$(COPYR)" >> $@
  192. # @echo       VALUE "CompanyName","$(COMPANY)" >> $@
  193. @echo       VALUE "ProductName","$(TARGET).exe" >> $@
  194. @echo       VALUE "ProductVersion","$(RATEUP_VERSION_STR)" >> $@
  195. @echo       VALUE "License","Released under GPL." >> $@
  196. @echo       VALUE "FileDescription","$(DESCR)" >> $@
  197. @echo       VALUE "FileVersion","$(RATEUP_VERSION_STR)" >> $@
  198. @echo       VALUE "InternalName","$(TARGET)" >> $@
  199. @echo       VALUE "OriginalFilename","$(TARGET).exe" >> $@
  200. ifdef WWWURL
  201. @echo       VALUE "WWW","$(WWWURL)" >> $@
  202. endif
  203. @echo     END >> $@
  204. @echo   END >> $@
  205. @echo   BLOCK "VarFileInfo" >> $@
  206. @echo   BEGIN >> $@
  207. @echo     VALUE "Translation", 0x409, 1252 >> $@
  208. @echo   END >> $@
  209. @echo END >> $@
  210. ifdef LNKICON
  211. @echo 10 ICON DISCARDABLE "$(LNKICON)" >> $@
  212. endif
  213. $(OBJDIR)/readme.txt: Makefile.Win32
  214. @echo Creating $@
  215. @echo $(DL)This is a binary distribution for Win32 platform.$(DL) > $@
  216. @echo $(DL)MRTG rateup version $(RATEUP_VERSION_STR)$(DL) >> $@
  217. @echo $(DL)Please download the complete MRTG package for$(DL) >> $@
  218. @echo $(DL)any further documentation:$(DL) >> $@
  219. @echo $(DL)http://www.mrtg.org/$(DL) >> $@