# things that the GNU standards document suggests all makefiles # should have. SHELL=/bin/sh VER=2.17.7 .SUFFIXES: .SUFFIXES: .c .o .pl .pm .pod .man .1 .txt prefix = @prefix@ exec_prefix = @exec_prefix@ bindir = @bindir@ libdir = @libdir@ mandir = @mandir@ datadir = @datadir@ top_srcdir = @top_srcdir@ # Where is perl 5 on this machine PERL = @PERL@ CC = @CC@ CFLAGS = @CFLAGS@ @DEFS@ CPPFLAGS = @CPPFLAGS@ LDFLAGS = @LDFLAGS@ GDFORM_EXT = @GDFORM_EXT@ SET_LD_RUN_PATH = @SET_LD_RUN_PATH@ LIBS = @LIBS@ INSTALL = @INSTALL@ MKINSTALLDIRS = $(SHELL) $(top_srcdir)/mkinstalldirs all: bin/rateup subst bin/rateup: bin/rateup.o $(SET_LD_RUN_PATH) $(CC) bin/rateup.o -o bin/rateup $(LDFLAGS) $(LIBS) bin/rateup.o: $(top_srcdir)/src/rateup.c $(CC) $(CPPFLAGS) $(CFLAGS) -c $(top_srcdir)/src/rateup.c -o bin/rateup.o subst: $(PERL) -0777 -p -i~ -e "s'^#!\s*/\S*perl'#! $(PERL)'" $(top_srcdir)/bin/cfgmaker $(top_srcdir)/bin/indexmaker $(top_srcdir)/bin/mrtg $(PERL) -0777 -p -i~ -e 's@GRAPHFMT="...";@GRAPHFMT="$(GDFORM_EXT)";@' $(top_srcdir)/bin/mrtg $(top_srcdir)/bin/indexmaker clean: -rm -f bin/rateup -rm -f config.cache -rm -f bin/rateup.o install: all $(MKINSTALLDIRS) $(DESTDIR)$(bindir) for x in $(top_srcdir)/bin/mrtg $(top_srcdir)/bin/cfgmaker $(top_srcdir)/bin/indexmaker $(top_srcdir)/bin/mrtg-traffic-sum; do \ $(INSTALL) -m 755 $$x $(DESTDIR)$(bindir); done for x in bin/rateup; do \ $(INSTALL) -m 755 $$x $(DESTDIR)$(bindir); done $(MKINSTALLDIRS) $(DESTDIR)$(libdir)/mrtg2/Pod for x in $(top_srcdir)/lib/mrtg2/*.pm; do \ $(INSTALL) -m 644 $$x $(DESTDIR)$(libdir)/mrtg2; done for x in $(top_srcdir)/lib/mrtg2/Pod/*.pm; do \ $(INSTALL) -m 644 $$x $(DESTDIR)$(libdir)/mrtg2/Pod; done $(MKINSTALLDIRS) $(DESTDIR)$(datadir)/mrtg2/icons for x in $(top_srcdir)/images/*.gif $(top_srcdir)/images/*.png; do \ $(INSTALL) -m 644 $$x $(DESTDIR)$(datadir)/mrtg2/icons; done $(MKINSTALLDIRS) $(DESTDIR)$(datadir)/doc/mrtg2 (cd $(top_srcdir); for x in COPYING COPYRIGHT README CHANGES THANKS doc/*; do \ $(INSTALL) -m 644 $$x $(DESTDIR)$(datadir)/doc/mrtg2; done) $(MKINSTALLDIRS) $(DESTDIR)$(mandir)/man1 for x in $(top_srcdir)/doc/*.1; do \ $(INSTALL) -m 644 $$x $(DESTDIR)$(mandir)/man1; done ########### Distribution Tools ### ### Things you might NOT want to play with ... ### ARCHIVE = mrtg-$(VER) DIRNAME = mrtg-$(VER) POD = doc/mrtg-faq.pod doc/mrtg-logfile.pod doc/mrtg-nt-guide.pod doc/mrtg-nw-guide.pod \ doc/mrtg-unix-guide.pod \ doc/mrtg-forum.pod doc/mrtg-mibhelp.pod doc/mrtg-reference.pod doc/mrtg-webserver.pod \ doc/mrtg-rrd.pod doc/mrtg-squid.pod doc/mrtg.pod doc/mrtg-contrib.pod \ doc/cfgmaker.pod doc/indexmaker.pod doc/mrtglib.pod doc/mrtg-ipv6.pod doc/mrtg-traffic-sum.pod MAN = $(POD:.pod=.1) TXT = $(POD:.pod=.txt) getpod: -rm $(MAN) $(TXT) -for x in cfgmaker indexmaker mrtg-mailer mrtg-traffic-sum; do \ rm doc/$$x.pod; ln -s ../bin/$$x doc/$$x.pod; done -rm doc/mrtglib.pod;ln -s ../lib/mrtg2/MRTG_lib.pm doc/mrtglib.pod .pod.1: pod2man --release=$(VER) --center=mrtg $< > $@ .1.txt: @NROFF@ -man -Tascii $< > $@ man: $(MAN) txt: $(TXT) versync: $(PERL) -i -p -e 's|VERSION\s*=\s*"\d+\.\d+\.\d+([a-z0-9]+)?"|VERSION = "$(VER)"|gi; s|mrtg-\d+\.\d+\.\d+([a-z0-9]+)?|mrtg-$(VER)|gi; s|MRTG\s\d+\.\d+\.\d+([a-z0-9]+)?|MRTG $(VER)|gi' bin/mrtg bin/cfgmaker bin/indexmaker lib/mrtg2/*.pm src/*.c `find doc/ -name \*.pod -type f` cd translate && $(PERL) mergelocale.pl skeleton.pm0 *.pmd && cp locales_mrtg.pm ../lib/mrtg2 doc: getpod versync man txt rateupexe: i386-mingw32msvc-gcc -Wall -Wno-format -Wpointer-arith -Wcast-align -Wmissing-declarations -Wnested-externs -O3 -mwindows -Ilibs-i386-mingw32msvc/zlib -Ilibs-i386-mingw32msvc/libpng -Ilibs-i386-mingw32msvc/gd -c src/strftime.c -o src/strftime.o i386-mingw32msvc-gcc -Wall -Wno-format -Wpointer-arith -Wcast-align -Wmissing-declarations -Wnested-externs -O3 -mwindows -Ilibs-i386-mingw32msvc/zlib -Ilibs-i386-mingw32msvc/libpng -Ilibs-i386-mingw32msvc/gd -c src/rateup.c -o src/rateup.o -Dstrftime=strftime_ i386-mingw32msvc-gcc -Llibs-i386-mingw32msvc/zlib -Llibs-i386-mingw32msvc/libpng -Llibs-i386-mingw32msvc/gd src/rateup.o src/strftime.o -o bin/rateup.exe -lgd -lpng -lz i386-mingw32msvc-strip bin/rateup.exe tar: doc rateupexe autoconf gchmod -R u=rwX,go=rX . (cd .. ; ln -s src $(DIRNAME)) (cd .. ; sed -e "s/^/$(DIRNAME)\//" $(DIRNAME)/MANIFEST | tar -czv --files-from=- -f $(DIRNAME)/$(ARCHIVE).tar.gz --exclude='*~' --exclude="*.rej" --exclude="*.orig" --exclude=".svn") $(PERL) -0777 -pi -e 's@GRAPHFMT="...";@GRAPHFMT="png";@' bin/mrtg bin/indexmaker # build rateup for windows ... (cd .. ; touch $(DIRNAME)/contrib/a~;sed -e "s/^/$(DIRNAME)\//" $(DIRNAME)/MANIFEST | xargs zip -r $(DIRNAME)/$(ARCHIVE).zip; zip $(DIRNAME)/$(ARCHIVE).zip $(DIRNAME)/bin/rateup.exe $(DIRNAME)/bin/rateup.nlm $(DIRNAME)/bin/rateup.nlm; zip -d $(DIRNAME)/$(ARCHIVE).zip '*~' '*.svn*') -rm ../$(DIRNAME) dist: tar git commit -m 'released version $(VER)' -a git tag v$(VER) git push --tags md5sum $(ARCHIVE).tar.gz >$(ARCHIVE).tar.gz.md5 gpg -s $(ARCHIVE).tar.gz.md5 chmod 644 $(ARCHIVE).tar.gz.md5* scp CHANGES $(ARCHIVE).* oposs@freddie:public_html/mrtg/pub/ ssh oposs@freddie "cd public_html/mrtg/pub; rm mrtg.tar.gz;ln -s $(ARCHIVE).tar.gz mrtg.tar.gz" betadist: tar mv $(ARCHIVE).* ${HOME}/public_html/webtools/mrtg/pub/beta cp CHANGES ${HOME}/public_html/webtools/mrtg/pub/beta