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
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
|
## Process this file with automake to produce Makefile.in
# Copyright (C) 2000, 2001 by Martin Pool <mbp@samba.org>
# $Id$
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public License
# as published by the Free Software Foundation; either version 2.1 of
# the License, 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
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
# Thus spake the master programmer:
#
# ``When the program is being tested, it
# is too late to make design changes.''
lib_LTLIBRARIES = libhsync.la
libhsync_la_SOURCES = \
base64.c \
buf.c buf.h \
checksum.c checksum.h \
command.c command.h \
delta.c \
emit.c emit.h \
fileutil.c fileutil.h \
hex.c \
hsync.h \
hsyncfile.h \
job.c job.h \
mdfour.c \
mksum.c \
msg.c \
netint.c netint.h \
patch.c \
protocol.h \
prototab.c prototab.h \
readsums.c \
scoop.c \
stream.c stream.h \
sumset.c sumset.h \
trace.c trace.h \
tube.c \
util.c util.h \
version.c \
whole.c whole.h
# TODO: If we ever care enough, build a second library containing only
# the code necessary to be a client, and not stuff for encoding. At
# the moment it doesn't seem worth the additional compilation time to
# do both, and I don't know if anyone will care if they're just shared
# libraries anyhow.
# NB: tests should exit with code 77 if they can't be run but haven't
# failed.
# Generally these tests should be ordered so that more basic tests
# are run first.
# TODO: driver.sh requires bash. Therefore we should either test for
# it and use it rather than $SHELL, or we should rewrite it to work in
# plain Bourne shell. Or perhaps we should use bash enforcing POSIX
# compliance, so that we can detect and avoid such dependencies.
TESTS_ENVIRONMENT = bash $(srcdir)/driver.sh
test_scripts = delta.test mksum.test isprefix.test
man_MANS = man/libhsync.3 man/rdiff.1
# These are extra documents to be included in the source tarball.
extra_docs = README.CVS
# These ones are not tests, but are useful in watching the code run
# through.
try_scripts =
TESTS = $(test_scripts)
noinst_SCRIPTS = \
$(test_scripts) \
driver.sh \
mkprototab.sh \
$(try_scripts)
test_data=
# TODO: Delete the test-*.d directories when cleaning up.
CLEANFILES = tmp-test-*.d/* tmp-try-*.d/*
# Autogenerated by a script
prototab.c: $(srcdir)/mkprototab.sh
sh $(srcdir)/mkprototab.sh >prototab.c
EXTRA_DIST = $(noinst_SCRIPTS) $(test_data) $(extra_docs) $(man_MANS)
include_HEADERS = hsync.h hsyncfile.h
# This is the default for any programs that don't specify a
# preference.
LDADD = libhsync.la $(LIBOBJS)
# Eventually we might want to install some of these into system
# directories, but they're pretty obscure and it's hard to imagine any
# end users wanting to run them. So for the time being they are not
# installed.
bin_PROGRAMS = rdiff
rdiff_SOURCES = rdiff.c isprefix.c isprefix.h
check_PROGRAMS = isprefix.driver
isprefix_driver_SOURCES = isprefix.driver.c \
isprefix.c isprefix.h
isprefix_driver_LDADD = $(LIBOBJS)
.PHONY: check_programs
check_programs: $(check_PROGRAMS)
|