chiark / gitweb /
Initial draft of test harness arrangements, from chiark. cvs rdiff
[adns.git] / src / Makefile
index 2c72323bc1403edeb2fa3744f356ee2c5dbd4dbd..e4964aff07ab51f64c64adec678f0598137ce01a 100644 (file)
@@ -1,10 +1,47 @@
-CC=gcc $(WARNS) $(WERROR) $(OPTIMISE) $(DEBUG)
+#  This file is part of adns, which is Copyright (C) 1997, 1998 Ian Jackson
+#  
+#  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)
+#  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,
+#  Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 
+
+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
 
+HCPPFLAGS= \
+ -Dsocket=Hsocket -Dfcntl=Hfcntl -Dgettimeofday=Hgettimeofday \
+ -Dsendto=Hsendto -Drecvfrom=Hrecvfrom -Dselect=Hselect -Dconnect=Hconnect \
+ -Dread=Hread -Dwrite=Hwrite -Dclose=Hclose
+
+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 harness.o
+
 all:           dtest
 
-dtest:         dtest.o event.o query.o setup.o submit.o
+harness:       harness.o $(HARNLOBJS)
+
+dtest:         dtest.o $(LIBOBJS)
+
+%_d.o:         %.c
+               $(CC) $(HCPPFLAGS) -c -g -o $@ $<
+
+clean:
+               rm -f dtest *.o
+
+$(HARNLOBJS):  adns.h internal.h
+$(LIBOBJS):    adns.h internal.h
+dtest.o:       adns.h