X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2FMakefile.Win32;h=c9230d4f650d2dfa7946ff0d00cee41ffdd88f26;hb=ac8aef29ed721afd91ecb11360a1e6acb52db42a;hp=eccfee09d4b47d9f6e10599db1ba94fb4aa32b87;hpb=22ecdee73cbb51ac7c3301ce39749f819ea72d0e;p=rrdtool.git diff --git a/src/Makefile.Win32 b/src/Makefile.Win32 index eccfee0..c9230d4 100644 --- a/src/Makefile.Win32 +++ b/src/Makefile.Win32 @@ -1,51 +1,62 @@ -# Gnu Makefile for Win32 target * 20-Aug-2005 +# Gnu Makefile for Win32 target * 11-Jul-2006 # for use with MingW32 gcc or Metrowerks CodeWarrior compiler -# use with: make -f Makefile.Win32 [all|clean|dist] +# use with: make -f Makefile.Win32 [all|clean|dist|distclean] -SOURCE = rrd_tool -#SOURCE = rrd_cgi -TARGET = $(subst _,,$(SOURCE)) -#DESCR = Round Robin Database Tool $(RRD_VERSION_STR) DESCR = Round Robin Database Tool -COPYR = Copyright (c) 1997-2005 by Tobias Oetiker +COPYR = Copyright (c) 1997-2006 by Tobias Oetiker #WWWURL = http://ee-staff.ethz.ch/~oetiker/webtools/rrdtool/ WWWURL = http://www.rrdtool.org/ +ICON = ../favicon.ico -# Edit the path below to point to your install destination. -# INSTDIR = /mnt/sys/mrtg/rrd -INSTDIR = c:/mrtg/rrd +# Set the default font used in graphs. +ifndef RRD_DEFAULT_FONT +#RRD_DEFAULT_FONT = "arial.ttf" +#RRD_DEFAULT_FONT = "DejaVuSansMono-Roman.ttf" +RRD_DEFAULT_FONT = "VeraMono.ttf" +endif + +# Vertical label angle: 90.0 (default) or 270.0 +RRDGRAPH_YLEGEND_ANGLE = 90.0 + +# Set to one if you want to have piecharts. +WITH_PIECHART = 1 + +# Set the extension used for rrdcgi. +ifndef CGIEXT +CGIEXT = exe +endif # Base for the lib sources ifndef LIBBASE -LIBBASE = d:/projects/cw -endif -# All library code is statically linked to avoid problems with other lib NLMs. -# Edit the path below to point to your libgd sources or set environment var. -ifndef LIBGD -LIBGD = $(LIBBASE)/gd-2.0.15 +LIBBASE = ../.. endif +# All library code is statically linked to avoid problems with other lib DLLs. # Edit the path below to point to your libpng sources or set environment var. ifndef LIBPNG -LIBPNG = $(LIBBASE)/libpng-1.2.8 +LIBPNG = $(LIBBASE)/libpng-1.2.10 endif # Edit the path below to point to your freetype sources or set environment var. ifndef LIBFT2 -#LIBFT2 = $(LIBBASE)/freetype-2.1.9 -LIBFT2 = $(LIBBASE)/../mingw32/freetype-2.1.9 +#LIBFT2 = $(LIBBASE)/freetype-2.1.10 +LIBFT2 = $(LIBBASE)/../mingw32/freetype-2.1.10 endif # Edit the path below to point to your freetype sources or set environment var. ifndef LIBART -LIBART = $(LIBBASE)/libart_lgpl-2.3.3 +LIBART = $(LIBBASE)/libart_lgpl-2.3.17 endif # Edit the path below to point to your zlib sources or set environment var. ifndef ZLIBSDK ZLIBSDK = $(LIBBASE)/zlib-1.2.3 endif -# Edit the path below to point to your zlib sources or set environment var. -ifndef LIBCGI -#LIBCGI = $(LIBBASE)/cgilib-0.4 -LIBCGI = d:/rrdtool-1.0.50/cgilib-0.4 + +# Edit the path below to point to your distribution folder. +ifndef DISTDIR +DISTDIR = rrdtool-$(RRD_VERSION_STR)-w32 endif +ARCHIVE = $(DISTDIR).zip + +# whatever... +NO_NULL_REALLOC = 1 # The following line defines your compiler. ifdef METROWERKS @@ -54,7 +65,9 @@ else CC = gcc endif # RM = rm -f -CP = cp -fv +CP = cp -afv + +ZIP = zip -qzR9 # must be equal to DEBUG or NDEBUG DB = NDEBUG @@ -76,43 +89,42 @@ CFLAGS = $(OPT) -D$(DB) -DHAVE_CONFIG_H ifeq ($(CC),mwcc) LD = mwld -CFLAGS += -gccinc -msgstyle gcc -inline off -opt nointrinsics -inst mmx -proc 586 -#CFLAGS += -w on,nounused,nounusedexpr -#CFLAGS += -ansi strict -CFLAGS += -ir "$(METROWERKS)/MSL" -ir "$(METROWERKS)/Win32-x86 Support" -LD = mwld RC = mwwinrc LDFLAGS = -nostdlib +AR = $(LD) +ARFLAGS = -type library -w nocmdline $(OBJS) -o +LIBEXT = lib LIBPATH += -lr "$(METROWERKS)/MSL" -lr "$(METROWERKS)/Win32-x86 Support" LDLIBS += -lkernel32.lib -luser32.lib LDLIBS += -lMSL_Runtime_x86.lib -lMSL_C_x86.lib -lMSL_Extras_x86.lib -LIBEXT = lib RCFLAGS = +CFLAGS += -nostdinc -gccinc -msgstyle gcc -inline off -opt nointrinsics -proc 586 +CFLAGS += -ir "$(METROWERKS)/MSL" -ir "$(METROWERKS)/Win32-x86 Support" +CFLAGS += -w on,nounused,nounusedexpr # -ansi strict else LD = gcc RC = windres LDFLAGS = -s +AR = ar +ARFLAGS = -cq LIBEXT = a RCFLAGS = -I rc -O coff -i -CFLAGS += -Wall -Wno-format -Wno-unused # -pedantic +CFLAGS += -fno-strict-aliasing -Wall -Wno-unused # -pedantic endif ifndef COPYR - COPYR = Copyright (c) 2005 The Open Source Community. + COPYR = Copyright (c) 2006 The Open Source Community. endif ifndef DESCR - DESCR = $(TARGET) Command Extension + DESCR = $(notdir $(@:.rc=)) Command Extension endif DESCR += - $(CC) build -INCLUDES += -I. -I$(LIBGD) -I$(LIBPNG) -I$(LIBFT2)/include -I$(LIBART) -I$(ZLIBSDK) -ifeq ($(SOURCE),rrd_cgi) -INCLUDES += -I$(LIBCGI) -endif +INCLUDES += -I. -I$(LIBPNG) -I$(LIBFT2)/include -I$(LIBART) -I$(ZLIBSDK) CFLAGS += $(INCLUDES) -vpath %.c . $(LIBGD) $(LIBPNG) $(LIBART)/libart_lgpl $(ZLIBSDK) $(LIBCGI) +vpath %.c . $(LIBPNG) $(LIBART)/libart_lgpl $(ZLIBSDK) RRDLIBOBJS = \ $(OBJDIR)/rrd_afm.o \ @@ -139,7 +151,7 @@ RRDLIBOBJS = \ $(OBJDIR)/rrd_update.o \ $(OBJDIR)/rrd_version.o \ $(OBJDIR)/rrd_xport.o \ - $(OBJDIR)/rrd_not_thread_safe.o \ + $(OBJDIR)/rrd_thread_safe_nt.o \ $(EOLIST) XLIBOBJS = \ @@ -152,20 +164,6 @@ XLIBOBJS = \ $(OBJDIR)/strftime.o \ $(EOLIST) -GD2LIBOBJS = \ - $(OBJDIR)/gd.o \ - $(OBJDIR)/gd_io.o \ - $(OBJDIR)/gd_io_dp.o \ - $(OBJDIR)/gd_io_file.o \ - $(OBJDIR)/gd_io_ss.o \ - $(OBJDIR)/gd_png.o \ - $(OBJDIR)/gd_ss.o \ - $(OBJDIR)/gdcache.o \ - $(OBJDIR)/gdfonts.o \ - $(OBJDIR)/gdhelpers.o \ - $(OBJDIR)/gdtables.o \ - $(EOLIST) - PNGLIBOBJS = \ $(OBJDIR)/png.o \ $(OBJDIR)/pngerror.o \ @@ -212,33 +210,47 @@ endif ARTLIBOBJS = \ $(patsubst $(LIBART)/libart_lgpl/%.c,$(OBJDIR)/%.o,$(wildcard $(LIBART)/libart_lgpl/art_*.c)) -OBJS = $(RRDLIBOBJS) $(XLIBOBJS) $(GD2LIBOBJS) $(PNGLIBOBJS) $(ARTLIBOBJS) $(ZLIBOBJS) -ifeq ($(SOURCE),rrd_cgi) -OBJS += $(OBJDIR)/cgi.o -endif -OBJS += $(OBJDIR)/$(SOURCE).o +OBJS := $(RRDLIBOBJS) $(XLIBOBJS) $(PNGLIBOBJS) $(ARTLIBOBJS) $(ZLIBOBJS) +OBJCGI := $(OBJS) $(OBJDIR)/rrd_cgi.o +OBJTOOL := $(OBJS) $(OBJDIR)/rrd_tool.o -LDLIBS = $(LIBFT2)/objs/freetype.$(LIBEXT) +LDLIBS += $(LIBFT2)/objs/freetype.$(LIBEXT) -all: $(OBJDIR) config.h $(OBJDIR)/$(TARGET).exe +all: rrdtool rrdcgi -dist: all - -$(RM) $(OBJDIR)/*.o $(OBJDIR)/$(TARGET).map $(OBJDIR)/$(TARGET).ncv - -$(RM) $(OBJDIR)/$(TARGET).def $(OBJDIR)/$(TARGET).res +rrdtool: $(OBJDIR) config.h $(OBJDIR)/rrdtool.exe +rrdcgi: $(OBJDIR) config.h $(OBJDIR)/rrdcgi.$(CGIEXT) +librrd: $(OBJDIR) config.h $(OBJDIR)/librrd.$(LIBEXT) -install: all - @[ -d $(INSTDIR) ] || mkdir $(INSTDIR) - @$(CP) $(TARGET).exe $(INSTDIR) +dist: all $(DISTDIR) $(DISTDIR)/readme.txt +# @-$(CP) $(OBJDIR)/librrd.$(LIBEXT) $(DISTDIR) + @-$(CP) $(OBJDIR)/rrdcgi.$(CGIEXT) $(DISTDIR) + @-$(CP) $(OBJDIR)/rrdtool.exe $(DISTDIR) + @-$(CP) $(RRD_DEFAULT_FONT) $(DISTDIR) + @-$(CP) ../CHANGES $(DISTDIR) + @-$(CP) ../COPYING $(DISTDIR) + @-$(CP) ../COPYRIGHT $(DISTDIR) + @-$(CP) ../NEWS $(DISTDIR) + @-$(CP) ../README $(DISTDIR) + @echo Creating $(ARCHIVE) + @$(ZIP) $(ARCHIVE) $(DISTDIR)/* < $(DISTDIR)/readme.txt clean: -$(RM) -r $(OBJDIR) -$(RM) config.h +distclean: clean + -$(RM) -r $(DISTDIR) + -$(RM) $(ARCHIVE) + $(OBJDIR): - @mkdir $(OBJDIR) + @mkdir $@ + +$(DISTDIR): + @mkdir $@ -$(OBJDIR)/version.inc: ../configure $(OBJDIR) get_ver.awk +$(OBJDIR)/version.inc: ../configure.ac $(OBJDIR) get_ver.awk @echo Creating $@ @awk -f get_ver.awk $< > $@ @@ -246,11 +258,21 @@ $(OBJDIR)/%.o: %.c @echo Compiling $< @$(CC) $(CFLAGS) -c $< -o $@ -$(OBJDIR)/$(TARGET).exe: $(OBJS) $(OBJDIR)/$(TARGET).res +$(OBJDIR)/rrdcgi.$(CGIEXT): $(OBJCGI) $(OBJDIR)/rrdcgi.res @echo Linking $@ @-$(RM) $@ @$(LD) $(LDFLAGS) $^ -o $@ $(LIBPATH) $(LDLIBS) +$(OBJDIR)/rrdtool.exe: $(OBJTOOL) $(OBJDIR)/rrdtool.res + @echo Linking $@ + @-$(RM) $@ + @$(LD) $(LDFLAGS) $^ -o $@ $(LIBPATH) $(LDLIBS) + +$(OBJDIR)/librrd.$(LIBEXT): $(OBJS) + @echo Creating $@ + @-$(RM) $@ + @$(AR) $(ARFLAGS) $@ $^ + $(OBJDIR)/%.res: $(OBJDIR)/%.rc @echo Creating $@ @$(RC) $(RCFLAGS) $< -o $@ @@ -270,17 +292,17 @@ $(OBJDIR)/%.rc: Makefile.Win32 $(OBJDIR)/version.inc @echo BLOCK "040904E4" >> $@ @echo BEGIN >> $@ @echo VALUE "LegalCopyright","$(COPYR)\0" >> $@ -# @echo VALUE "CompanyName","$(COMPANY)\0" >> $@ - @echo VALUE "ProductName","$(TARGET).exe\0" >> $@ +ifdef COMPANY + @echo VALUE "CompanyName","$(COMPANY)\0" >> $@ +endif + @echo VALUE "ProductName","$(notdir $(@:.rc=.exe))\0" >> $@ @echo VALUE "ProductVersion","$(RRD_VERSION_STR)\0" >> $@ @echo VALUE "License","Released under GPL.\0" >> $@ @echo VALUE "FileDescription","$(DESCR)\0" >> $@ @echo VALUE "FileVersion","$(RRD_VERSION_STR)\0" >> $@ - @echo VALUE "InternalName","$(TARGET)\0" >> $@ - @echo VALUE "OriginalFilename","$(TARGET).exe\0" >> $@ -ifdef WWWURL + @echo VALUE "InternalName","$(notdir $(@:.rc=))\0" >> $@ + @echo VALUE "OriginalFilename","$(notdir $(@:.rc=.exe))\0" >> $@ @echo VALUE "WWW","$(WWWURL)\0" >> $@ -endif @echo END >> $@ @echo END >> $@ @echo BLOCK "VarFileInfo" >> $@ @@ -332,19 +354,36 @@ config.h: Makefile.Win32 $(OBJDIR)/version.inc @echo $(DL)#define HAVE_STRLCAT 1$(DL) >> $@ @echo $(DL)#define HAVE_STRLCPY 1$(DL) >> $@ @echo $(DL)#define HAVE_STRSTR 1$(DL) >> $@ - @echo $(DL)#define HAVE_SYS_PARAM_H 1$(DL) >> $@ +# @echo $(DL)#define HAVE_SYS_PARAM_H 1$(DL) >> $@ @echo $(DL)#define HAVE_SYS_SELECT_H 1$(DL) >> $@ @echo $(DL)#define HAVE_SYS_STAT_H 1$(DL) >> $@ @echo $(DL)#define HAVE_SYS_TIME_H 1$(DL) >> $@ @echo $(DL)#define HAVE_TERMIOS_H 1$(DL) >> $@ @echo $(DL)#define HAVE_TIME_H 1$(DL) >> $@ @echo $(DL)#define HAVE_UNAME 1$(DL) >> $@ -# @echo $(DL)#define HAVE_UNISTD_H 1$(DL) >> $@ @echo $(DL)#define STDC_HEADERS 1$(DL) >> $@ @echo $(DL)#define TIME_WITH_SYS_TIME 1$(DL) >> $@ @echo $(DL)#define HAVE_ZLIB_H 1$(DL) >> $@ @echo $(DL)#define HAVE_LIBZ 1$(DL) >> $@ +ifdef NO_NULL_REALLOC + @echo $(DL)#define NO_NULL_REALLOC 1$(DL) >> $@ + @echo $(DL)#define rrd_realloc(a,b) ( (a) == NULL ? malloc( (b) ) : realloc( (a) , (b) ))$(DL) >> $@ +else @echo $(DL)#define rrd_realloc(a,b) realloc((a), (b))$(DL) >> $@ - @echo $(DL)#define RRDGRAPH_YLEGEND_ANGLE 90.0$(DL) >> $@ +endif + @echo $(DL)#define RRDGRAPH_YLEGEND_ANGLE $(RRDGRAPH_YLEGEND_ANGLE)$(DL) >> $@ + @echo $(DL)#define RRD_DEFAULT_FONT $(RRD_DEFAULT_FONT)$(DL) >> $@ + @echo $(DL)#define strftime strftime_$(DL) >> $@ +ifdef WITH_PIECHART + @echo $(DL)#define WITH_PIECHART 1$(DL) >> $@ +endif + +$(DISTDIR)/readme.txt: Makefile.Win32 + @echo Creating $@ + @echo $(DL)This is a binary distribution for Win32 platform.$(DL) > $@ + @echo $(DL)RRDTool version $(RRD_VERSION_STR)$(DL) >> $@ + @echo $(DL)Please download the complete RRDTool package for$(DL) >> $@ + @echo $(DL)any further documentation:$(DL) >> $@ + @echo $(DL)$(WWWURL)$(DL) >> $@