# $Id: Makefile.in,v 1.18 2000/11/17 07:36:37 ishisone Exp $
# Makefile for mDNS Proxy Server
#
# Copyright (c) 2000 Japan Network Information Center.  All rights reserved.
#  
# By using this file, you agree to the terms and conditions set forth bellow.
# 
# 			LICENSE TERMS AND CONDITIONS 
# 
# The following License Terms and Conditions apply, unless a different
# license is obtained from Japan Network Information Center ("JPNIC"),
# a Japanese association, Fuundo Bldg., 1-2 Kanda Ogawamachi, Chiyoda-ku,
# Tokyo, Japan.
# 
# 1. Use, Modification and Redistribution (including distribution of any
#    modified or derived work) in source and/or binary forms is permitted
#    under this License Terms and Conditions.
# 
# 2. Redistribution of source code must retain the copyright notices as they
#    appear in each source code file, this License Terms and Conditions.
# 
# 3. Redistribution in binary form must reproduce the Copyright Notice,
#    this License Terms and Conditions, in the documentation and/or other
#    materials provided with the distribution.  For the purposes of binary
#    distribution the "Copyright Notice" refers to the following language:
#    "Copyright (c) Japan Network Information Center.  All rights reserved."
# 
# 4. Neither the name of JPNIC may be used to endorse or promote products
#    derived from this Software without specific prior written approval of
#    JPNIC.
# 
# 5. Disclaimer/Limitation of Liability: THIS SOFTWARE IS PROVIDED BY JPNIC
#    "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
#    LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
#    PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL JPNIC BE LIABLE
#    FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
#    CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
#    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
#    BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
#    WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
#    OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
#    ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
# 
# 6. Indemnification by Licensee
#    Any person or entities using and/or redistributing this Software under
#    this License Terms and Conditions shall defend indemnify and hold
#    harmless JPNIC from and against any and all judgements damages,
#    expenses, settlement liabilities, cost and other liabilities of any
#    kind as a result of use and redistribution of this Software or any
#    claim, suite, action, litigation or proceeding by any third party
#    arising out of or relates to this License Terms and Conditions.
# 
# 7. Governing Law, Jurisdiction and Venue
#    This License Terms and Conditions shall be governed by and and
#    construed in accordance with the law of Japan. Any person or entities
#    using and/or redistributing this Software under this License Terms and
#    Conditions hereby agrees and consent to the personal and exclusive
#    jurisdiction and venue of Tokyo District Court of Japan.

top_builddir = ..

srcdir  = @srcdir@
VPATH   = @srcdir@

prefix  = @prefix@
exec_prefix = @exec_prefix@

SBINDIR = @sbindir@
ETCDIR  = @sysconfdir@
CONFIG_PATH = $(ETCDIR)
MANDIR = @mandir@

CC      = @CC@
PURIFY  = purify
INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@
SHELL   = @SHELL@
LIBTOOL = @LIBTOOL@

OPTS    =
INCS    = -I$(srcdir)/../include -I../include
DEFS    = -DUNIX -DCONFIG_PATH="\"$(CONFIG_PATH)/\""
CFLAGS  = $(OPTS) $(INCS) $(DEFS) @CFLAGS@
LDFLAGS = $(OPTS) @LDFLAGS@

LIBS    = ../lib/libmdn.la
SYSLIBS = @LIBS@ @ICONVLIB@

#
# Files to build mDNS Proxy
#

SRCS = unxmain.c server.c message.c logging.c proxycnf.c translate.c
OBJS = unxmain.o server.o message.o logging.o proxycnf.o translate.o

#
# Target to build
#

TARGETS = dnsproxy dnsproxy.8

all : $(TARGETS)

dnsproxy : $(OBJS) $(LIBS)
	$(LIBTOOL) --mode=link $(CC) $(LDFLAGS) -o $@ \
		$(OBJS) $(LIBS) $(SYSLIBS)

dnsproxy.purify : $(OBJS) $(LIBS)
	$(LIBTOOL) --mode=link $(PURIFY) $(CC) $(LDFLAGS) -o $@ \
		$(OBJS) $(LIBS) $(SYSLIBS)

#
# Installation
#

install: install-program install-config install-man

install-program: dnsproxy
	[ -d $(SBINDIR) ] || mkdir $(SBINDIR)
	$(LIBTOOL) --mode=install $(INSTALL_PROGRAM) dnsproxy $(SBINDIR)

# Do not overwrite existing configuration file.
install-config:
	[ -d $(ETCDIR) ] || mkdir $(ETCDIR)
	@if [ -f $(ETCDIR)/dnsproxy.conf ]; then \
	    echo '** dnsproxy.conf already exists in the install directory.'; \
	    echo '** install as dnsproxy.conf.sample.'; \
	    $(INSTALL_DATA) $(srcdir)/dnsproxy.conf.sample $(ETCDIR)/; \
	else \
	    echo installing sample configuration file.; \
	    $(INSTALL_DATA) $(srcdir)/dnsproxy.conf.sample \
		$(ETCDIR)/dnsproxy.conf; fi

install-man: dnsproxy.8
	[ -d $(MANDIR) ] || mkdir $(MANDIR)
	[ -d $(MANDIR)/man8 ] || mkdir $(MANDIR)/man8
	$(INSTALL_DATA) dnsproxy.8 $(MANDIR)/man8

dnsproxy.8: dnsproxy.8.in
	sed 's%@ETCDIR@%$(ETCDIR)%' < $(srcdir)/dnsproxy.8.in > $@

clean:
	rm -f $(TARGETS) *.o core *.core *~

#
# Dependecnies
#

unxmain.o  : unxmain.c dnsproxy.h

server.o   : server.c dnsproxy.h

message.o  : message.c dnsproxy.h

logging.o  : logging.c dnsproxy.h

proxycnf.o   : proxycnf.c dnsproxy.h proxycnf.h
