1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
|
# regress/Makefile[.in] - regression test Makefile
#
# This file is part of adns, which is
# Copyright (C) 1997-2000,2003,2006,2014 Ian Jackson
# Copyright (C) 2014 Mark Wooding
# Copyright (C) 1999-2000,2003,2006 Tony Finch
# Copyright (C) 1991 Massachusetts Institute of Technology
# (See the file INSTALL for full details.)
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3, or (at your option)
# any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software Foundation.
srcdir= @srcdir@
VPATH= @srcdir@
PROGS_SYSDEP= @PROGS_HAVE_TSEARCH@
CLIENTS= adnstest adnshost adnslogres $(PROGS_SYSDEP)
AUTOCHDRS= harness.h hsyscalls.h hredirect.h
AUTOCSRCS= hrecord.c hplayback.c hcommon.c
include ../settings.make
include $(srcdir)/../src/adns.make
DIRCFLAGS= -I../src -I$(srcdir) -I$(srcdir)/../src
HCPPFLAGS= -DADNS_REGRESS_TEST -I.
REDIRLIBOBJS= $(addsuffix _d.o, $(basename $(LIBOBJS)))
HARNLOBJS= hcommon.o $(REDIRLIBOBJS)
TARGETS= $(addsuffix _record, $(CLIENTS)) $(addsuffix _playback, $(CLIENTS))
ADH_OBJS= adh-main_c.o adh-opts_c.o adh-query_c.o
ALL_OBJS= $(HARNLOBJS) dtest.o hrecord.o hplayback.o
.PRECIOUS: $(AUTOCSRCS) $(AUTOCHDRS)
all install uninstall: $(TARGETS)
check: $(TARGETS)
srcdir=$(srcdir) $(srcdir)/checkall
LINK_CMD= $(CC) $(LDFLAGS) $^ $(LDLIBS) -o $@
%_record: %_c.o hrecord.o $(HARNLOBJS)
$(LINK_CMD)
%_playback: %_c.o hplayback.o $(HARNLOBJS)
$(LINK_CMD)
.SECONDARY: $(addsuffix _c.o, $(filter-out adnshost, $(CLIENTS)))
# Without this, make will remove <client>_c.o after building <client>.
# This wastes effort. (Debian bug #4073.)
#
# Also, it exposes us to a bug (in make 3.81, at least) which can
# cause make to run the rule for building <client> without building
# <client>_c.o! (Debian #756123.)
#
# See also Savannah #29620, http://savannah.gnu.org/bugs/index.php?29620
adnshost_%: $(ADH_OBJS) h%.o $(HARNLOBJS)
$(LINK_CMD)
%_d.o: $(srcdir)/../src/%.c hredirect.h
$(CC) $(CFLAGS) $(HCPPFLAGS) -c -g -o $@ $<
%_c.o: $(srcdir)/../client/%.c hredirect.h
$(CC) $(CFLAGS) $(HCPPFLAGS) -I $(srcdir)/../src -c -g -o $@ $<
$(ALL_OBJS): $(srcdir)/../src/adns.h $(srcdir)/../src/internal.h
$(ALL_OBJS): harness.h hsyscalls.h
$(ADH_OBJS): $(srcdir)/../client/adnshost.h
%:: %.m4 hmacros.i4 hsyscalls.i4
$(M4) -P -I$(srcdir) $< >$@-a.new
sed -e 's/hm_comma/,/g; s/hm_squote/'\''/g; /^[ ]*$$/d' <$@-a.new >$@-b.new
@mv -f $@-b.new $(srcdir)/$@; rm -f $@-a.new
|