-# This file is part of adns, which is Copyright (C) 1997, 1998 Ian Jackson
+# src/Makefile[.in] - library main Makefile
+#
+# This file is part of adns, which is
+# Copyright (C) 1997-2000,2003,2006,2014-2016 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 2, or (at your option)
+# 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,
# 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,
-# Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+# along with this program; if not, write to the Free Software Foundation.
-CC=gcc $(WARNS) $(WERROR) $(OPTIMISE) $(DEBUG) $(XCFLAGS)
-DEBUG=-g
-OPTIMISE=-O2
-WARNS= -Wall -Wmissing-prototypes -Wwrite-strings -Wstrict-prototypes \
- -Wcast-qual -Wpointer-arith
-WERROR=-Werror
+srcdir= @srcdir@
+VPATH= @srcdir@
-HCPPFLAGS:= $(foreach F, \
- gettimeofday select \
- socket fcntl connect close \
- sendto recvfrom read write \
-, -D$F=H$F)
+TARGETS= libadns.a
+include ../settings.make
+include $(srcdir)/adns.make
-LIBOBJS= types.o event.o query.o reply.o general.o setup.o transmit.o parse.o
-HARNLOBJS= $(addsuffix _d.o, $(basename $(LIBOBJS)))
-ALLOBJS= $(LIBOBJS) $(HARNLOBJS) dtest.o hrecord.o hplayback.o hcommon.o
+DIRCFLAGS= -I. -I$(srcdir)
-all: dtest hrecord
-# hplayback
+install:
+ mkdir -p $(libdir) $(includedir)
+ set -xe; for f in $(TARGETS); \
+ do $(INSTALL_DATA) $$f $(libdir)/$$f; done
+ $(INSTALL_DATA) $(srcdir)/../src/adns.h $(includedir)/adns.h
-hrecord: dtest.o hrecord.o hcommon.o $(HARNLOBJS)
+uninstall:
+ for f in $(TARGETS); do rm -f $(libdir)/$$f; done
+ rm -f $(includedir)/adns.h
-dtest: dtest.o $(LIBOBJS)
+ALLOBJS= $(LIBOBJS)
-%_d.o: %.c
- $(CC) $(HCPPFLAGS) -c -g -o $@ $<
+libadns.a: $(LIBOBJS)
+ rm -f $@
+ $(AR) cqv $@.new $(LIBOBJS)
+ $(RANLIB) $@.new
+ mv -f $@.new $@
-%:: %.m4 hmacros.i4 hsyscalls.i4
- m4 -P $< >$@-a.new
- sed -e 's/hm_comma/,/g; s/hm_squote/'\''/g; /^[ ]*$$/d' <$@-a.new >$@-b.new
- @mv -f $@-b.new $@; rm -f $@-a.new
-
-clean:
- rm -f dtest *.o harness.h hrecord.c hcommon.c
-
-hrecord.o hcommon.o: adns.h internal.h harness.h
-$(HARNLOBJS): adns.h internal.h
-$(LIBOBJS): adns.h internal.h
-dtest.o: adns.h
+$(LIBOBJS): adns.h internal.h config.h