# Project    : ipv6calc
# File       : Makefile[.in]
# Version    : $Id: Makefile.in,v 1.37 2005/09/15 09:21:34 peter Exp $
# Copyright  : 2001-2005 by Peter Bieringer <pb (at) bieringer.de>
#
# Information:
#  Makefile for ipv6calc project
#

# Compiler and Linker Options
COPTS = -O2 -Wall -g

CFLAGS	= $(COPTS) -Igetopt/

CC	= gcc

GETOBJS	= getopt/getopt.o getopt/getopt1.o md5/md5.o

all:		md5-make getopt-make ipv6calc ipv6logconv ipv6logstats

.c.o:
		$(CC) $(CFLAGS) -c $<


ipv6logconv:	getopt-make lib-make ipv6logconv-make

ipv6logstats:	getopt-make lib-make ipv6logstats-make

ipv6calc:	getopt-make lib-make ipv6calc-make ipv6calcweb-make

distclean:
		make clean
		rm -f config.cache config.status config.log
		for dir in ipv6logconv ipv6logstats ipv6calcweb ipv6calc man lib md5 getopt databases/ieee-oui databases/ipv4-assignment databases/ipv6-assignment; do \
			ocwd=`pwd`; \
			cd $$dir; \
			make $@ ; \
			cd $$ocwd ; \
		done

autoclean:
		make distclean
		rm -f Makefile
		rm -f version.h
		rm -f contrib/ipv6calc.spec
		rm config.h
		for dir in ipv6logconv ipv6logstats ipv6calcweb ipv6calc man lib md5 getopt; do \
			ocwd=`pwd`; \
			cd $$dir; \
			make $@ ; \
			cd $$ocwd ; \
		done

clean:
		for dir in ipv6logconv ipv6logstats ipv6calcweb ipv6calc man lib md5 getopt; do \
			ocwd=`pwd`; \
			cd $$dir; \
			make $@ ; \
			cd $$ocwd ; \
		done

install:
		make test
		make installonly

installonly:
		for dir in ipv6logconv ipv6logstats ipv6calcweb ipv6calc man lib md5 getopt; do \
			ocwd=`pwd`; \
			cd $$dir; \
			make install; \
			cd $$ocwd ; \
		done

getopt-make:
		cd getopt && make

md5-make:
		cd md5 && make

lib-make:	md5-make db-ieee-oui-make db-ieee-iab-make db-ipv4-assignment-make db-ipv6-assignment-make
		cd lib && make

ipv6logconv-make: lib-make
		cd ipv6logconv && make

ipv6logstats-make: lib-make
		cd ipv6logstats && make

ipv6calc-make:	lib-make
		cd ipv6calc && make

ipv6calcweb-make:
		cd ipv6calcweb && make

db-ieee-oui-make:
		cd databases/ieee-oui && make

db-ieee-iab-make:
		cd databases/ieee-iab && make

db-ipv4-assignment-make:
		cd databases/ipv4-assignment && make

db-ipv6-assignment-make:
		cd databases/ipv6-assignment && make

update:
		for dir in databases/ieee-oui databases/ieee-iab databases/ipv4-assignment databases/ipv6-assignment; do \
			ocwd=`pwd`; \
			cd $$dir; \
			make $@ ; \
			cd $$ocwd ; \
		done

static:		ipv6logconv-make ipv6logstats-make ipv6calc-make	
		for dir in ipv6logconv ipv6logstats ipv6calc; do \
			ocwd=`pwd`; \
			cd $$dir; \
			make $@ ; \
			cd $$ocwd ; \
		done

test:
		for dir in ipv6logconv ipv6logstats ipv6calcweb ipv6calc man lib; do \
			ocwd=`pwd`; \
			cd $$dir; \
			make $@ ; \
			cd $$ocwd ; \
		done
