#	$FreeBSD: src/tools/tools/ath/Makefile,v 1.3 2003/12/07 21:38:44 sam Exp $
#
# Copyright (c) 2002-2004	Sam Leffler, Errno Consulting
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
# 1. Redistributions of source code must retain the above copyright
#    notice, this list of conditions and the following disclaimer.
# 2. Redistributions in binary form must reproduce the above copyright
#    notice, this list of conditions and the following disclaimer in the
#    documentation and/or other materials provided with the distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``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 THE AUTHOR OR CONTRIBUTORS 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 DAMAGE.
#
DEPTH=	..
MULTICALL=1

ifeq ($(BINDIR),)
BINDIR=         /sbin/
endif

include ${DEPTH}/Makefile.inc

TOOLS := athstats 80211stats athkey athchans athctrl wlanconfig
TOOLS += athdebug 80211debug

SRCS := $(TOOLS:%=%.c)

ifdef MULTICALL
ALL := madwifitools
SRCS += madwifitools.c
CFLAGS += -DMULTICALL
else
ALL := $(TOOLS)
endif

OBJS := $(SRCS:%.c=%.o)

INCS+=	-I. -I${HAL} -I${HAL}/linux -I${ATH_HAL} -I${WLAN} -I${DEPTH} -I../ath
CFLAGS += ${INCS}
LDFLAGS=

all:	${ALL}

madwifitools: $(OBJS)
	${CC} -o $@ ${LDFLAGS} $(OBJS)

%.o: %.c
	${CC} ${CFLAGS} -o $@ -c $< 

%: %.o
	${CC} -o $@ ${LDFLAGS} $<

install: ${ALL} strip
ifdef MULTICALL
	cp madwifitools ${DESTDIR}${BINDIR}
	cd ${DESTDIR}${BINDIR} && for f in $(TOOLS) wlandebug wlanstats; do \
		ln -sf madwifitools $$f; \
	done
else
	cp athstats ${DESTDIR}${BINDIR}
	cp athdebug ${DESTDIR}${BINDIR}
	cp 80211stats ${DESTDIR}${BINDIR}
	cp 80211debug ${DESTDIR}${BINDIR}
	cp wlanconfig ${DESTDIR}${BINDIR}
	-rm ${DESTDIR}${BINDIR}/wlandebug
	-rm ${DESTDIR}${BINDIR}/wlanstats
	cd ${DESTDIR}${BINDIR} && ln -s 80211debug wlandebug
	cd ${DESTDIR}${BINDIR} && ln -s 80211stats wlanstats
endif

strip:
	for f in $(ALL); do \
		$(STRIP) -s --remove-section=.note --remove-section=.comment $$f; \
	done

clean:
	rm -f $(ALL) *.o core a.out
