1# 2# knock 3# 4# Copyright (c) 2004 by Judd Vinet <jvinet@zeroflux.org> 5# 6# This program is free software; you can redistribute it and/or modify 7# it under the terms of the GNU General Public License as published by 8# the Free Software Foundation; either version 2 of the License, or 9# (at your option) any later version. 10# 11# This program is distributed in the hope that it will be useful, 12# but WITHOUT ANY WARRANTY; without even the implied warranty of 13# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14# GNU General Public License for more details. 15# 16# You should have received a copy of the GNU General Public License 17# along with this program; if not, write to the Free Software 18# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, 19# USA. 20# 21 22DESTDIR = 23prefix = @prefix@ 24exec_prefix = @prefix@ 25 26VERSION = 0.5 27 28BINDIR = @bindir@ 29SBINDIR = @sbindir@ 30MANDIR = @mandir@ 31 32INSTALL = @INSTALL@ 33INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) 34INSTALL_DATA = @INSTALL_DATA@ 35INSTALL_SCRIPT = @INSTALL_SCRIPT@ 36 37TOPDIR = @srcdir@ 38SRCDIR = $(TOPDIR)/src/ 39OBJDIR = $(TOPDIR)/src/ 40MANSRC = $(TOPDIR)/doc/ 41 42CXX = @CC@ 43CXXFLAGS += @CFLAGS@ -g -Wall -pedantic -fno-exceptions \ 44 -D_GNU_SOURCE -I. 45LDFLAGS += @LDFLAGS@ 46 47SRCS = $(SRCDIR)knockd.c \ 48 $(SRCDIR)knock.c \ 49 $(SRCDIR)list.c 50 51all: knockd knock 52 53knockd: $(OBJDIR)knockd.o $(OBJDIR)list.o 54 $(CXX) $(OBJDIR)knockd.o $(OBJDIR)list.o -o $@ $(LDFLAGS) -lpcap 55 56knock: $(OBJDIR)knock.o 57 $(CXX) $(OBJDIR)knock.o -o $@ $(LDFLAGS) 58 59.c.o: $(SRCS) 60 $(CXX) $(CXXFLAGS) -o $@ -c $< 61 62man: $(MANSRC)knockd.1 $(MANSRC)knock.1 63 64%.1: %.1.in 65 sed -e "s/#VERSION#/$(VERSION)/" $< > $@ 66 67dist: distclean 68 (cd ..; tar czvf knock-$(VERSION).tar.gz knock-$(VERSION)) 69 70install: all 71 $(INSTALL) -D -m0755 knockd $(DESTDIR)$(SBINDIR)/knockd 72 $(INSTALL) -D -m0755 knock $(DESTDIR)$(BINDIR)/knock 73 $(INSTALL) -D -m0644 $(MANSRC)knockd.1 $(DESTDIR)$(MANDIR)/man1/knockd.1 74 $(INSTALL) -D -m0644 $(MANSRC)knock.1 $(DESTDIR)$(MANDIR)/man1/knock.1 75 $(INSTALL) -D -m0644 knockd.conf $(DESTDIR)/etc/knockd.conf 76 77clean: 78 rm -f *~ $(OBJDIR)*.o $(MANSRC)*.1 79 80distclean: clean 81 rm -f knockd knock 82 rm -f Makefile 83 rm -f config.h config.status config.log 84 85# End of file 86