# Don't edit Makefile!  Use conf-* for configuration.

SHELL=/bin/sh

default: it

clean:
	rm -f alloc.a alloc.o alloc_re.o buffer.a buffer.o buffer_0.o buffer_1.o \
	buffer_2.o buffer_get.o buffer_put.o buffer_read.o buffer_write.o byte.a \
	byte_chr.o byte_copy.o byte_cr.o byte_diff.o byte_zero.o caldate_mjd.o \
	caldate_scan.o case_diffb.o choose compile dns.a dns_dfd.o dns_domain.o \
	dns_packet.o dns_random.o dns_rcip.o dns_resolve.o dns_transmit.o \
	dns_txt.o env.a env.o error.o error_str.o fmt_ulong.o getln.o getln2.o \
	getopt.a iopause.h iopause.o ip4_scan.o it leaps2zic leaps2zic.o \
	leapsecs leapsecs.o leapsinstall leapsunpack leapsunpack.o load makelib \
	ndelay_on.o open.a open_read.o openreadclose.o readclose.o scan_ulong.o \
	select.h sgetopt.o socket_bind.o socket_conn.o socket_tcp.o socket_udp.o \
	str_len.o str_start.o stralloc_arts.o stralloc_catb.o stralloc_cats.o \
	stralloc_eady.o stralloc_opyb.o stralloc_opys.o stralloc_pend.o \
	strerr_die.o strerr_sys.o subgetopt.o sysdeps systype tai.a tai_pack.o \
	taia_add.o taia_approx.o taia_frac.o taia_less.o taia_now.o taia_pack.o \
	taia_sub.o taia_uint.o uint16_pack.o uint16_unpack.o uint32_unpack.o \
	unix.a

alloc.a: makelib alloc.o alloc_re.o getln.o getln2.o stralloc_arts.o \
stralloc_catb.o stralloc_cats.o stralloc_eady.o stralloc_opyb.o \
stralloc_opys.o stralloc_pend.o
	./makelib alloc.a alloc.o alloc_re.o getln.o getln2.o stralloc_arts.o \
	stralloc_catb.o stralloc_cats.o stralloc_eady.o stralloc_opyb.o \
	stralloc_opys.o stralloc_pend.o

alloc.o: compile alloc.c alloc.h error.h
	./compile alloc.c

alloc_re.o: compile alloc_re.c alloc.h byte.h
	./compile alloc_re.c

buffer.a: makelib buffer.o buffer_0.o buffer_1.o buffer_2.o buffer_get.o \
buffer_put.o strerr_die.o strerr_sys.o
	./makelib buffer.a buffer.o buffer_0.o buffer_1.o buffer_2.o \
	buffer_get.o buffer_put.o strerr_die.o strerr_sys.o

buffer.o: compile buffer.c buffer.h
	./compile buffer.c

buffer_0.o: compile buffer_0.c buffer.h
	./compile buffer_0.c

buffer_1.o: compile buffer_1.c buffer.h
	./compile buffer_1.c

buffer_2.o: compile buffer_2.c buffer.h
	./compile buffer_2.c

buffer_get.o: compile buffer_get.c buffer.h byte.h error.h
	./compile buffer_get.c

buffer_put.o: compile buffer_put.c buffer.h str.h byte.h error.h
	./compile buffer_put.c

buffer_read.o: compile buffer_read.c buffer.h
	./compile buffer_read.c

buffer_write.o: compile buffer_write.c buffer.h
	./compile buffer_write.c

byte.a: makelib byte_chr.o byte_copy.o byte_cr.o byte_diff.o byte_zero.o \
case_diffb.o fmt_ulong.o ip4_scan.o scan_ulong.o str_len.o str_start.o \
uint16_pack.o uint16_unpack.o uint32_unpack.o
	./makelib byte.a byte_chr.o byte_copy.o byte_cr.o byte_diff.o \
	byte_zero.o case_diffb.o fmt_ulong.o ip4_scan.o scan_ulong.o str_len.o \
	str_start.o uint16_pack.o uint16_unpack.o uint32_unpack.o

byte_chr.o: compile byte_chr.c byte.h
	./compile byte_chr.c

byte_copy.o: compile byte_copy.c byte.h
	./compile byte_copy.c

byte_cr.o: compile byte_cr.c byte.h
	./compile byte_cr.c

byte_diff.o: compile byte_diff.c byte.h
	./compile byte_diff.c

byte_zero.o: compile byte_zero.c byte.h
	./compile byte_zero.c

caldate_mjd.o: compile caldate_mjd.c caldate.h
	./compile caldate_mjd.c

caldate_scan.o: compile caldate_scan.c caldate.h
	./compile caldate_scan.c

case_diffb.o: compile case_diffb.c case.h
	./compile case_diffb.c

choose: warn-auto.sh choose.sh
	rm -f choose
	cat warn-auto.sh choose.sh \
	> choose
	chmod 755 choose

compile: conf-cc print-cc.sh systype warn-auto.sh
	rm -f compile
	sh print-cc.sh > compile
	chmod 755 compile

dns.a: makelib dns_dfd.o dns_domain.o dns_packet.o dns_random.o \
dns_rcip.o dns_resolve.o dns_transmit.o dns_txt.o iopause.o
	./makelib dns.a dns_dfd.o dns_domain.o dns_packet.o dns_random.o \
	dns_rcip.o dns_resolve.o dns_transmit.o dns_txt.o iopause.o

dns_dfd.o: compile dns_dfd.c error.h alloc.h byte.h dns.h stralloc.h \
iopause.h taia.h gen_alloc.h taia.h tai.h tai.h
	./compile dns_dfd.c

dns_domain.o: compile dns_domain.c error.h alloc.h case.h byte.h dns.h \
stralloc.h iopause.h taia.h gen_alloc.h taia.h tai.h tai.h
	./compile dns_domain.c

dns_packet.o: compile dns_packet.c error.h dns.h stralloc.h iopause.h \
taia.h gen_alloc.h taia.h tai.h tai.h
	./compile dns_packet.c

dns_random.o: compile dns_random.c dns.h taia.h uint32.h stralloc.h \
iopause.h taia.h tai.h gen_alloc.h taia.h tai.h tai.h
	./compile dns_random.c

dns_rcip.o: compile dns_rcip.c taia.h openreadclose.h byte.h ip4.h env.h \
dns.h tai.h stralloc.h stralloc.h iopause.h taia.h gen_alloc.h \
gen_alloc.h taia.h tai.h tai.h
	./compile dns_rcip.c

dns_resolve.o: compile dns_resolve.c iopause.h taia.h byte.h dns.h taia.h \
tai.h stralloc.h iopause.h taia.h tai.h gen_alloc.h taia.h tai.h tai.h
	./compile dns_resolve.c

dns_transmit.o: compile dns_transmit.c socket.h alloc.h error.h byte.h \
uint16.h dns.h uint16.h stralloc.h iopause.h taia.h gen_alloc.h taia.h \
tai.h tai.h
	./compile dns_transmit.c

dns_txt.o: compile dns_txt.c stralloc.h uint16.h byte.h dns.h gen_alloc.h \
stralloc.h iopause.h taia.h gen_alloc.h taia.h tai.h tai.h
	./compile dns_txt.c

env.a: makelib env.o
	./makelib env.a env.o

env.o: compile env.c str.h env.h
	./compile env.c

error.o: compile error.c error.h
	./compile error.c

error_str.o: compile error_str.c error.h
	./compile error_str.c

fmt_ulong.o: compile fmt_ulong.c fmt.h
	./compile fmt_ulong.c

getln.o: compile getln.c byte.h getln.h buffer.h stralloc.h gen_alloc.h
	./compile getln.c

getln2.o: compile getln2.c byte.h getln.h buffer.h stralloc.h gen_alloc.h
	./compile getln2.c

getopt.a: makelib sgetopt.o subgetopt.o
	./makelib getopt.a sgetopt.o subgetopt.o

iopause.h: choose compile load trypoll.c iopause.h1 iopause.h2
	./choose clr trypoll iopause.h1 iopause.h2 >iopause.h

iopause.o: compile iopause.c taia.h select.h iopause.h tai.h taia.h tai.h
	./compile iopause.c

ip4_scan.o: compile ip4_scan.c scan.h ip4.h
	./compile ip4_scan.c

it: leaps2zic leapsecs leapsinstall leapsunpack sysdeps

leaps2zic: load leaps2zic.o alloc.a buffer.a byte.a open.a tai.a unix.a
	./load leaps2zic alloc.a buffer.a byte.a open.a tai.a unix.a 

leaps2zic.o: compile leaps2zic.c buffer.h byte.h exit.h fmt.h getln.h \
open.h scan.h stralloc.h strerr.h buffer.h stralloc.h gen_alloc.h \
gen_alloc.h
	./compile leaps2zic.c

leapsecs: load leapsecs.o alloc.a buffer.a byte.a tai.a unix.a
	./load leapsecs alloc.a buffer.a byte.a tai.a unix.a 

leapsecs.o: compile leapsecs.c buffer.h caldate.h error.h getln.h \
leapsecs.h stralloc.h strerr.h tai.h buffer.h stralloc.h gen_alloc.h \
gen_alloc.h
	./compile leapsecs.c

leapsinstall: warn-auto.sh leapsinstall.sh
	rm -f leapsinstall
	cat warn-auto.sh leapsinstall.sh \
	> leapsinstall
	chmod 755 leapsinstall

leapsunpack: load leapsunpack.o dns.a alloc.a buffer.a env.a byte.a \
getopt.a open.a tai.a unix.a
	./load leapsunpack dns.a alloc.a buffer.a env.a byte.a getopt.a open.a \
	tai.a unix.a 

leapsunpack.o: compile leapsunpack.c buffer.h dns.h exit.h fmt.h \
sgetopt.h stralloc.h strerr.h stralloc.h iopause.h taia.h subgetopt.h \
gen_alloc.h gen_alloc.h taia.h tai.h tai.h
	./compile leapsunpack.c

load: conf-ld print-ld.sh systype warn-auto.sh
	rm -f load
	sh print-ld.sh > load
	chmod 755 load

makelib: print-ar.sh systype warn-auto.sh
	rm -f makelib
	sh print-ar.sh > makelib
	chmod 755 makelib

ndelay_on.o: compile ndelay_on.c ndelay.h
	./compile ndelay_on.c

open.a: makelib open_read.o openreadclose.o readclose.o
	./makelib open.a open_read.o openreadclose.o readclose.o

open_read.o: compile open_read.c open.h
	./compile open_read.c

openreadclose.o: compile openreadclose.c error.h open.h readclose.h \
openreadclose.h stralloc.h stralloc.h gen_alloc.h gen_alloc.h
	./compile openreadclose.c

readclose.o: compile readclose.c error.h readclose.h stralloc.h \
gen_alloc.h
	./compile readclose.c

scan_ulong.o: compile scan_ulong.c scan.h
	./compile scan_ulong.c

select.h: choose compile trysysel.c select.h1 select.h2
	./choose c trysysel select.h1 select.h2 > select.h

sgetopt.o: compile sgetopt.c buffer.h sgetopt.h subgetopt.h subgetopt.h
	./compile sgetopt.c

socket_bind.o: compile socket_bind.c byte.h socket.h uint16.h
	./compile socket_bind.c

socket_conn.o: compile socket_conn.c byte.h socket.h uint16.h
	./compile socket_conn.c

socket_tcp.o: compile socket_tcp.c ndelay.h socket.h uint16.h
	./compile socket_tcp.c

socket_udp.o: compile socket_udp.c ndelay.h socket.h uint16.h
	./compile socket_udp.c

str_len.o: compile str_len.c str.h
	./compile str_len.c

str_start.o: compile str_start.c str.h
	./compile str_start.c

stralloc_arts.o: compile stralloc_arts.c byte.h str.h stralloc.h \
gen_alloc.h
	./compile stralloc_arts.c

stralloc_catb.o: compile stralloc_catb.c stralloc.h byte.h gen_alloc.h
	./compile stralloc_catb.c

stralloc_cats.o: compile stralloc_cats.c byte.h str.h stralloc.h \
gen_alloc.h
	./compile stralloc_cats.c

stralloc_eady.o: compile stralloc_eady.c alloc.h stralloc.h \
gen_allocdefs.h gen_alloc.h
	./compile stralloc_eady.c

stralloc_opyb.o: compile stralloc_opyb.c stralloc.h byte.h gen_alloc.h
	./compile stralloc_opyb.c

stralloc_opys.o: compile stralloc_opys.c byte.h str.h stralloc.h \
gen_alloc.h
	./compile stralloc_opys.c

stralloc_pend.o: compile stralloc_pend.c alloc.h stralloc.h \
gen_allocdefs.h gen_alloc.h
	./compile stralloc_pend.c

strerr_die.o: compile strerr_die.c buffer.h strerr.h
	./compile strerr_die.c

strerr_sys.o: compile strerr_sys.c error.h strerr.h
	./compile strerr_sys.c

subgetopt.o: compile subgetopt.c subgetopt.h
	./compile subgetopt.c

sysdeps: systype compile load iopause.h select.h
	rm -f sysdeps
	cat systype compile load >> sysdeps
	grep sysdep iopause.h >> sysdeps
	grep sysdep select.h >> sysdeps

systype: find-systype.sh trycpp.c x86cpuid.c
	sh find-systype.sh > systype

tai.a: makelib caldate_mjd.o caldate_scan.o tai_pack.o taia_add.o \
taia_approx.o taia_frac.o taia_less.o taia_now.o taia_pack.o taia_sub.o \
taia_uint.o
	./makelib tai.a caldate_mjd.o caldate_scan.o tai_pack.o taia_add.o \
	taia_approx.o taia_frac.o taia_less.o taia_now.o taia_pack.o taia_sub.o \
	taia_uint.o

tai_pack.o: compile tai_pack.c tai.h
	./compile tai_pack.c

taia_add.o: compile taia_add.c taia.h tai.h
	./compile taia_add.c

taia_approx.o: compile taia_approx.c taia.h tai.h
	./compile taia_approx.c

taia_frac.o: compile taia_frac.c taia.h tai.h
	./compile taia_frac.c

taia_less.o: compile taia_less.c taia.h tai.h
	./compile taia_less.c

taia_now.o: compile taia_now.c taia.h tai.h
	./compile taia_now.c

taia_pack.o: compile taia_pack.c taia.h tai.h
	./compile taia_pack.c

taia_sub.o: compile taia_sub.c taia.h tai.h
	./compile taia_sub.c

taia_uint.o: compile taia_uint.c taia.h tai.h
	./compile taia_uint.c

uint16_pack.o: compile uint16_pack.c uint16.h
	./compile uint16_pack.c

uint16_unpack.o: compile uint16_unpack.c uint16.h
	./compile uint16_unpack.c

uint32_unpack.o: compile uint32_unpack.c uint32.h
	./compile uint32_unpack.c

unix.a: makelib env.o error.o error_str.o buffer_read.o buffer_write.o \
socket_bind.o socket_conn.o socket_tcp.o socket_udp.o ndelay_on.o
	./makelib unix.a env.o error.o error_str.o buffer_read.o buffer_write.o \
	socket_bind.o socket_conn.o socket_tcp.o socket_udp.o ndelay_on.o
