blob: 5c765c7971456c9e7020960005e1d89ba6af1a32 [file] [log] [blame]
openvcdiff311c7142008-08-26 19:29:25 +00001## Process this file with automake to produce Makefile.in
2
3# Make sure that when we re-make ./configure, we get the macros we need
openvcdiff@gmail.com732fff22010-08-04 18:00:00 +00004ACLOCAL_AMFLAGS = -I m4 \
5 -I gflags/m4
openvcdiff311c7142008-08-26 19:29:25 +00006
openvcdiff@gmail.com732fff22010-08-04 18:00:00 +00007# This is so we can #include <google/vcencoder.h> or <gtest/gtest.h>
8AM_CPPFLAGS = -I$(top_srcdir)/src \
openvcdiff@gmail.com438f2a52012-04-03 18:11:15 +00009 -I$(top_srcdir)/src/zlib \
openvcdiff@gmail.com732fff22010-08-04 18:00:00 +000010 -I$(top_srcdir)/gflags/src \
11 -I$(top_srcdir)/gtest \
12 -I$(top_srcdir)/gtest/include
openvcdiff311c7142008-08-26 19:29:25 +000013
14# For a non-optimized (debug) build, change "-DNDEBUG" to "-DDEBUG".
openvcdiffd1845782009-03-20 21:56:15 +000015AM_CXXFLAGS = -DNDEBUG -DNO_THREADS
openvcdiff311c7142008-08-26 19:29:25 +000016
17# Enable verbose gcc warnings. We use the older option name "-W" to be
18# compatible with gcc v3.3 and earlier. That option should be changed to
19# "-Wextra" when we can be sure that early gcc versions will not be used.
20if GCC
21AM_CXXFLAGS += -Wall -Wwrite-strings -Woverloaded-virtual -W
22endif
23
openvcdiffd1845782009-03-20 21:56:15 +000024AM_LDFLAGS = -no-undefined $(LIBSTDCXX_LA_LINKER_FLAG)
openvcdiff311c7142008-08-26 19:29:25 +000025
26googleincludedir = $(includedir)/google
27## The .h files you want to install (that is, .h files that people
28## who install this package can include in their own applications.)
29googleinclude_HEADERS = src/google/vcdecoder.h src/google/vcencoder.h \
openvcdiff@gmail.com732fff22010-08-04 18:00:00 +000030 src/google/format_extension_flags.h \
openvcdiff311c7142008-08-26 19:29:25 +000031 src/google/output_string.h
32
33docdir = $(prefix)/share/doc/$(PACKAGE)-$(VERSION)
openvcdiff@gmail.com732fff22010-08-04 18:00:00 +000034dist_doc_DATA = AUTHORS COPYING ChangeLog INSTALL NEWS README THANKS
openvcdiff311c7142008-08-26 19:29:25 +000035
36# The manual pages that should be installed
37dist_man1_MANS = man/vcdiff.1
38
openvcdiff28db8072008-10-10 23:29:11 +000039## The libraries (.so's) you want to build and install
openvcdiff311c7142008-08-26 19:29:25 +000040lib_LTLIBRARIES =
41
openvcdiff28db8072008-10-10 23:29:11 +000042## Binaries to be built and installed; these are added in the RULES section
openvcdiff311c7142008-08-26 19:29:25 +000043bin_PROGRAMS =
44
openvcdiff28db8072008-10-10 23:29:11 +000045## Binary and script unit tests you want to run when people type 'make check'.
46## Tests are added one by one to these lists in the RULES sections.
47check_PROGRAMS =
openvcdiff311c7142008-08-26 19:29:25 +000048check_SCRIPTS =
openvcdiff28db8072008-10-10 23:29:11 +000049
50## Other binaries, scripts, and libraries that are built but not automatically
51## installed.
52noinst_PROGRAMS =
openvcdiff311c7142008-08-26 19:29:25 +000053noinst_SCRIPTS =
openvcdiff28db8072008-10-10 23:29:11 +000054noinst_LTLIBRARIES =
openvcdiff311c7142008-08-26 19:29:25 +000055
56## vvvv RULES TO MAKE THE LIBRARIES, BINARIES, AND UNITTESTS
57
58# google-gflags: Used for command-line client
59# Please refer to http://code.google.com/p/google-gflags/ for details
60noinst_LTLIBRARIES += libgflags.la
openvcdiff@gmail.com732fff22010-08-04 18:00:00 +000061libgflags_la_SOURCES = gflags/src/gflags/gflags.h \
62 gflags/src/gflags/gflags_completions.h \
63 gflags/src/mutex.h \
64 gflags/src/gflags.cc \
65 gflags/src/gflags_completions.cc \
66 gflags/src/gflags_reporting.cc
openvcdiff311c7142008-08-26 19:29:25 +000067
68# gtest (Google Test): Used for unit tests only
69# Please refer to http://code.google.com/p/googletest/ for details
openvcdiff311c7142008-08-26 19:29:25 +000070noinst_LTLIBRARIES += libgtest_main.la
openvcdiff@gmail.com732fff22010-08-04 18:00:00 +000071libgtest_main_la_SOURCES = gtest/include/gtest/gtest.h \
72 gtest/include/gtest/gtest-death-test.h \
73 gtest/include/gtest/gtest-message.h \
74 gtest/include/gtest/gtest-param-test.h \
75 gtest/include/gtest/gtest_pred_impl.h \
76 gtest/include/gtest/gtest_prod.h \
77 gtest/include/gtest/gtest-spi.h \
78 gtest/include/gtest/gtest-test-part.h \
79 gtest/include/gtest/gtest-typed-test.h \
80 gtest/include/gtest/internal/gtest-death-test-internal.h \
81 gtest/include/gtest/internal/gtest-filepath.h \
82 gtest/include/gtest/internal/gtest-internal.h \
83 gtest/include/gtest/internal/gtest-linked_ptr.h \
84 gtest/include/gtest/internal/gtest-param-util.h \
85 gtest/include/gtest/internal/gtest-param-util-generated.h \
86 gtest/include/gtest/internal/gtest-port.h \
87 gtest/include/gtest/internal/gtest-string.h \
88 gtest/include/gtest/internal/gtest-tuple.h \
89 gtest/include/gtest/internal/gtest-type-util.h \
90 gtest/src/gtest-internal-inl.h \
91 gtest/src/gtest.cc \
92 gtest/src/gtest-death-test.cc \
93 gtest/src/gtest-filepath.cc \
94 gtest/src/gtest-port.cc \
95 gtest/src/gtest-test-part.cc \
96 gtest/src/gtest-typed-test.cc \
97 gtest/src/gtest_main.cc \
98 src/testing.h
openvcdiff311c7142008-08-26 19:29:25 +000099
openvcdiffbaf44ea2009-04-09 19:20:49 +0000100noinst_LTLIBRARIES += libvcdecoder_test_common.la
101libvcdecoder_test_common_la_SOURCES = src/vcdecoder_test.h \
102 src/vcdecoder_test.cc
103libvcdecoder_test_common_la_LIBADD = libvcddec.la libgtest_main.la
104
openvcdiff311c7142008-08-26 19:29:25 +0000105# libvcdcom: The open-vcdiff *common* library
106lib_LTLIBRARIES += libvcdcom.la
openvcdiff@gmail.com732fff22010-08-04 18:00:00 +0000107libvcdcom_la_SOURCES = src/google/format_extension_flags.h \
108 src/google/output_string.h \
openvcdiff311c7142008-08-26 19:29:25 +0000109 src/addrcache.h \
110 src/checksum.h \
111 src/codetable.h \
112 src/logging.h \
113 src/varint_bigendian.h \
114 src/vcdiff_defs.h \
openvcdiff@gmail.com438f2a52012-04-03 18:11:15 +0000115 src/zlib/zlib.h \
116 src/zlib/zconf.h \
117 src/zlib/adler32.c \
openvcdiff311c7142008-08-26 19:29:25 +0000118 src/addrcache.cc \
119 src/codetable.cc \
120 src/logging.cc \
121 src/varint_bigendian.cc
122
123# libvcddec: The open-vcdiff *decoder* library
124lib_LTLIBRARIES += libvcddec.la
125libvcddec_la_SOURCES = src/google/vcdecoder.h \
126 src/decodetable.h \
127 src/headerparser.h \
128 src/decodetable.cc \
129 src/headerparser.cc \
130 src/vcdecoder.cc
131libvcddec_la_LIBADD = libvcdcom.la
132
133# libvcdenc: The open-vcdiff *encoder* library
134lib_LTLIBRARIES += libvcdenc.la
135libvcdenc_la_SOURCES = src/google/vcencoder.h \
136 src/blockhash.h \
openvcdiffd1845782009-03-20 21:56:15 +0000137 src/codetablewriter_interface.h \
openvcdiff311c7142008-08-26 19:29:25 +0000138 src/compile_assert.h \
139 src/encodetable.h \
140 src/instruction_map.h \
openvcdiff@gmail.com732fff22010-08-04 18:00:00 +0000141 src/jsonwriter.h \
openvcdiff311c7142008-08-26 19:29:25 +0000142 src/rolling_hash.h \
143 src/vcdiffengine.h \
144 src/blockhash.cc \
145 src/encodetable.cc \
146 src/instruction_map.cc \
openvcdiff@gmail.com732fff22010-08-04 18:00:00 +0000147 src/jsonwriter.cc \
openvcdiff311c7142008-08-26 19:29:25 +0000148 src/vcdiffengine.cc \
149 src/vcencoder.cc
150libvcdenc_la_LIBADD = libvcdcom.la
151
152bin_PROGRAMS += vcdiff
153vcdiff_SOURCES = src/vcdiff_main.cc
154vcdiff_LDADD = libvcddec.la libvcdenc.la libgflags.la
155
openvcdiff28db8072008-10-10 23:29:11 +0000156check_PROGRAMS += addrcache_test
openvcdiff311c7142008-08-26 19:29:25 +0000157addrcache_test_SOURCES = src/addrcache_test.cc
158addrcache_test_LDADD = libvcdcom.la libgtest_main.la
159
openvcdiff28db8072008-10-10 23:29:11 +0000160check_PROGRAMS += blockhash_test
openvcdiff311c7142008-08-26 19:29:25 +0000161blockhash_test_SOURCES = src/blockhash_test.cc
162blockhash_test_LDADD = libvcdenc.la libgtest_main.la
163
openvcdiff28db8072008-10-10 23:29:11 +0000164check_PROGRAMS += codetable_test
openvcdiff311c7142008-08-26 19:29:25 +0000165codetable_test_SOURCES = src/codetable_test.cc
166codetable_test_LDADD = libvcdcom.la libgtest_main.la
167
openvcdiff28db8072008-10-10 23:29:11 +0000168check_PROGRAMS += decodetable_test
openvcdiff311c7142008-08-26 19:29:25 +0000169decodetable_test_SOURCES = src/decodetable_test.cc
openvcdiff@gmail.com732fff22010-08-04 18:00:00 +0000170decodetable_test_LDADD = libvcddec.la libvcdcom.la libgtest_main.la
openvcdiff311c7142008-08-26 19:29:25 +0000171
openvcdiff28db8072008-10-10 23:29:11 +0000172check_PROGRAMS += encodetable_test
openvcdiff311c7142008-08-26 19:29:25 +0000173encodetable_test_SOURCES = src/encodetable_test.cc
openvcdiff@gmail.com732fff22010-08-04 18:00:00 +0000174encodetable_test_LDADD = libvcdenc.la libvcdcom.la libgtest_main.la
openvcdiff311c7142008-08-26 19:29:25 +0000175
openvcdiff28db8072008-10-10 23:29:11 +0000176check_PROGRAMS += headerparser_test
openvcdiff311c7142008-08-26 19:29:25 +0000177headerparser_test_SOURCES = src/headerparser_test.cc
openvcdiff@gmail.com732fff22010-08-04 18:00:00 +0000178headerparser_test_LDADD = libvcddec.la libvcdcom.la libgtest_main.la
openvcdiff311c7142008-08-26 19:29:25 +0000179
openvcdiff28db8072008-10-10 23:29:11 +0000180check_PROGRAMS += instruction_map_test
openvcdiff311c7142008-08-26 19:29:25 +0000181instruction_map_test_SOURCES = src/instruction_map_test.cc
openvcdiff@gmail.com732fff22010-08-04 18:00:00 +0000182instruction_map_test_LDADD = libvcdenc.la libvcdcom.la libgtest_main.la
openvcdiff311c7142008-08-26 19:29:25 +0000183
openvcdiff28db8072008-10-10 23:29:11 +0000184check_PROGRAMS += output_string_test
185output_string_test_SOURCES = src/output_string_crope.h \
186 src/output_string_test.cc
openvcdiff311c7142008-08-26 19:29:25 +0000187output_string_test_LDADD = libgtest_main.la
188
openvcdiff28db8072008-10-10 23:29:11 +0000189check_PROGRAMS += rolling_hash_test
openvcdiff311c7142008-08-26 19:29:25 +0000190rolling_hash_test_SOURCES = src/rolling_hash_test.cc
191rolling_hash_test_LDADD = libvcdcom.la libgtest_main.la
192
openvcdiff28db8072008-10-10 23:29:11 +0000193check_PROGRAMS += varint_bigendian_test
openvcdiff311c7142008-08-26 19:29:25 +0000194varint_bigendian_test_SOURCES = src/varint_bigendian_test.cc
195varint_bigendian_test_LDADD = libvcdcom.la libgtest_main.la
196
openvcdiffbaf44ea2009-04-09 19:20:49 +0000197check_PROGRAMS += vcdecoder1_test
198vcdecoder1_test_SOURCES = src/vcdecoder1_test.cc
199vcdecoder1_test_LDADD = libvcdecoder_test_common.la
200
201check_PROGRAMS += vcdecoder2_test
202vcdecoder2_test_SOURCES = src/vcdecoder2_test.cc
203vcdecoder2_test_LDADD = libvcdecoder_test_common.la
204
205check_PROGRAMS += vcdecoder3_test
206vcdecoder3_test_SOURCES = src/vcdecoder3_test.cc
207vcdecoder3_test_LDADD = libvcdecoder_test_common.la
208
209check_PROGRAMS += vcdecoder4_test
210vcdecoder4_test_SOURCES = src/vcdecoder4_test.cc
211vcdecoder4_test_LDADD = libvcdecoder_test_common.la
212
213check_PROGRAMS += vcdecoder5_test
214vcdecoder5_test_SOURCES = src/vcdecoder5_test.cc
215vcdecoder5_test_LDADD = libvcdecoder_test_common.la
openvcdiff311c7142008-08-26 19:29:25 +0000216
openvcdiff28db8072008-10-10 23:29:11 +0000217check_PROGRAMS += vcdiffengine_test
openvcdiff311c7142008-08-26 19:29:25 +0000218vcdiffengine_test_SOURCES = src/vcdiffengine_test.cc
openvcdiff@gmail.com732fff22010-08-04 18:00:00 +0000219vcdiffengine_test_LDADD = libvcdenc.la libvcdcom.la libgtest_main.la
openvcdiff311c7142008-08-26 19:29:25 +0000220
openvcdiff28db8072008-10-10 23:29:11 +0000221check_PROGRAMS += vcencoder_test
openvcdiff311c7142008-08-26 19:29:25 +0000222vcencoder_test_SOURCES = src/vcencoder_test.cc
openvcdiff@gmail.com732fff22010-08-04 18:00:00 +0000223vcencoder_test_LDADD = libvcddec.la libvcdenc.la libvcdcom.la libgtest_main.la
224
225check_PROGRAMS += jsonwriter_test
226jsonwriter_test_SOURCES = src/jsonwriter_test.cc
227jsonwriter_test_LDADD = libvcdenc.la libvcdcom.la libgtest_main.la
openvcdiff311c7142008-08-26 19:29:25 +0000228
openvcdiff28db8072008-10-10 23:29:11 +0000229check_SCRIPTS += src/vcdiff_test.sh
230dist_noinst_DATA = testdata/configure.ac.v0.1 \
231 testdata/configure.ac.v0.2 \
232 testdata/allocates_4gb.vcdiff
233
openvcdiff311c7142008-08-26 19:29:25 +0000234## ^^^^ END OF RULES TO MAKE THE LIBRARIES, BINARIES, AND UNITTESTS
235
openvcdiff28db8072008-10-10 23:29:11 +0000236TESTS = $(check_PROGRAMS) $(check_SCRIPTS)
237## TESTS_ENVIRONMENT sets environment variables for when you run unit tests,
238## but it only seems to take effect for *binary* unit tests (argh!)
239TESTS_ENVIRONMENT = SRCDIR="$(top_srcdir)"
openvcdiff311c7142008-08-26 19:29:25 +0000240
241rpm: dist-gzip packages/rpm.sh packages/rpm/rpm.spec
242 @cd packages && ./rpm.sh ${PACKAGE} ${VERSION}
243
244deb: dist-gzip packages/deb.sh packages/deb/*
245 @cd packages && ./deb.sh ${PACKAGE} ${VERSION}
246
247libtool: $(LIBTOOL_DEPS)
248 $(SHELL) ./config.status --recheck
249
openvcdiff28db8072008-10-10 23:29:11 +0000250EXTRA_DIST = $(check_SCRIPTS) \
251 autogen.sh \
openvcdiff@gmail.com732fff22010-08-04 18:00:00 +0000252 gflags/src/windows/config.h \
253 gflags/src/windows/gflags/gflags.h \
254 gflags/src/windows/gflags/gflags_completions.h \
255 gflags/src/windows/port.h \
256 gflags/src/windows/port.cc \
openvcdiff28db8072008-10-10 23:29:11 +0000257 packages/rpm.sh \
258 packages/rpm/rpm.spec \
259 packages/deb.sh \
260 packages/deb \
openvcdiffd1845782009-03-20 21:56:15 +0000261 src/solaris/libstdc++.la \
openvcdiff83bbde02008-10-23 23:43:46 +0000262 testdata/empty_file.txt \
openvcdiff28db8072008-10-10 23:29:11 +0000263 vsprojects/config.h \
264 vsprojects/stdint.h \
openvcdiff83bbde02008-10-23 23:43:46 +0000265 vsprojects/vcdiff_test.bat \
openvcdiff28db8072008-10-10 23:29:11 +0000266 vsprojects/open-vcdiff.sln \
267 vsprojects/addrcache_test/addrcache_test.vcproj \
268 vsprojects/blockhash_test/blockhash_test.vcproj \
269 vsprojects/codetable_test/codetable_test.vcproj \
270 vsprojects/decodetable_test/decodetable_test.vcproj \
271 vsprojects/encodetable_test/encodetable_test.vcproj \
272 vsprojects/gtest/gtest.vcproj \
273 vsprojects/headerparser_test/headerparser_test.vcproj \
274 vsprojects/instruction_map_test/instruction_map_test.vcproj \
openvcdiff@gmail.com732fff22010-08-04 18:00:00 +0000275 vsprojects/jsonwriter_test/jsonwriter_test.vcproj \
openvcdiff28db8072008-10-10 23:29:11 +0000276 vsprojects/output_string_test/output_string_test.vcproj \
277 vsprojects/rolling_hash_test/rolling_hash_test.vcproj \
278 vsprojects/varint_bigendian_test/varint_bigendian_test.vcproj \
279 vsprojects/vcdcom/vcdcom.vcproj \
280 vsprojects/vcddec/vcddec.vcproj \
openvcdiff@gmail.com732fff22010-08-04 18:00:00 +0000281 vsprojects/vcdecoder_test_common/vcdecoder_test_common.vcproj \
openvcdiffbaf44ea2009-04-09 19:20:49 +0000282 vsprojects/vcdecoder1_test/vcdecoder1_test.vcproj \
283 vsprojects/vcdecoder2_test/vcdecoder2_test.vcproj \
284 vsprojects/vcdecoder3_test/vcdecoder3_test.vcproj \
285 vsprojects/vcdecoder4_test/vcdecoder4_test.vcproj \
286 vsprojects/vcdecoder5_test/vcdecoder5_test.vcproj \
openvcdiff28db8072008-10-10 23:29:11 +0000287 vsprojects/vcdenc/vcdenc.vcproj \
288 vsprojects/vcdiff/vcdiff.vcproj \
289 vsprojects/vcdiffengine_test/vcdiffengine_test.vcproj \
openvcdiff83bbde02008-10-23 23:43:46 +0000290 vsprojects/vcdiff_test/vcdiff_test.vcproj \
openvcdiff28db8072008-10-10 23:29:11 +0000291 vsprojects/vcencoder_test/vcencoder_test.vcproj