source: trunk/test/Makefile.am @ 3900

Last change on this file since 3900 was 3900, checked in by Peter, 3 years ago

closes #944; add configure check whether class is availabale in boost and exclude typedef if not. Lift out test for that typedef to separate test so it can be skipped (without skipping all sister tests) when boost is old.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 13.5 KB
Line 
1## $Id: Makefile.am 3900 2020-05-03 08:29:25Z peter $
2
3# Copyright (C) 2003 Daniel Dalevi, Jari Häkkinen
4# Copyright (C) 2004 Jari Häkkinen, Peter Johansson, Cecilia Ritz
5# Copyright (C) 2005 Jari Häkkinen, Peter Johansson
6# Copyright (C) 2006, 2007, 2008 Jari Häkkinen, Peter Johansson, Markus Ringnér
7# Copyright (C) 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019 Peter Johansson
8#
9# This file is part of the yat library, http://dev.thep.lu.se/yat
10#
11# The yat library is free software; you can redistribute it
12# and/or modify it under the terms of the GNU General Public License as
13# published by the Free Software Foundation; either version 3 of the
14# License, or (at your option) any later version.
15#
16# The yat library is distributed in the hope that it will be useful,
17# but WITHOUT ANY WARRANTY; without even the implied warranty of
18# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
19# General Public License for more details.
20#
21# You should have received a copy of the GNU General Public License
22# along with yat. If not, see <http://www.gnu.org/licenses/>.
23
24## we use suffix .cc for all source
25AM_DEFAULT_SOURCE_EXT = .cc
26
27noinst_HEADERS = test/Suite.h
28
29check_LTLIBRARIES = test/libyattest.la
30
31check_SCRIPTS = test/defs.sh
32
33EXTRA_DIST += test/init.sh
34
35EXTRA_PROGRAMS = test/alignment.test \
36  test/alignment2.test \
37  test/averager.test \
38  test/averager1.test \
39  test/averager3.test \
40  test/averager4.test \
41  test/bam.test \
42  test/bam_pair.test \
43  test/bam_pair_analyse.test \
44  test/bam_iterator.test \
45  test/bam_read_filter.test \
46  test/bam_region_iterator.test \
47  test/bam_header.test \
48  test/bam_header2.test \
49  test/bam_pair_iterator.test \
50  test/bam_pair_iterator2.test \
51  test/random_distribution.test \
52  test/chi2.test \
53  test/cigar.test \
54  test/cigar2.test \
55  test/cigar_iterator.test \
56  test/codon.test test/commandline.test \
57  test/concept.test \
58  test/consensus_inputranker.test \
59  test/copy_k_of_n.test \
60  test/data_lookup_1d.test  \
61  test/data_weight.test test/data_weight_proxy.test \
62  test/deleter.test \
63  test/diagonal_matrix.test \
64  test/distance.test \
65  test/dna.test \
66  test/dna_reverse_complement.test \
67  test/ensemble.test \
68  test/fasta.test \
69  test/feature_selection.test \
70  test/fileutil.test \
71  test/fisher.test \
72  test/gaussian_mixture.test \
73  test/genomic_position.test test/getline_iterator.test \
74  test/getvector.test \
75  test/gff.test test/help.test test/histogram.test \
76  test/igp.test test/index.test test/inputranker.test test/interpolation.test \
77  test/iterator.test test/kendall.test test/kernel_lookup.test \
78  test/kernel_matrix.test \
79  test/kernel_pca.test test/kernel.test \
80  test/knn.test test/kolmogorov_smirnov.test test/large_file.test \
81  test/libbam.test \
82  test/likelihood_ratio_test_binomial.test \
83  test/matrix_lookup.test \
84  test/matrix_lookup_weighted.test test/matrix.test \
85  test/matrix_expression.test \
86  test/matrix_weighted.test test/merge.test \
87  test/merge_iterator.test test/nbc.test \
88  test/ncc.test \
89  test/negative_binomial.test \
90  test/negative_binomial_distribution.test \
91  test/nni.test test/normalization.test \
92  test/non_central_chi_squared_distribution.test \
93  test/ostream_iterator.test \
94  test/pca.test \
95  test/perceptron.test \
96  test/phred.test \
97  test/pileup.test \
98  test/print_what.test \
99  test/priority_queue.test \
100  test/poisson.test \
101  test/queue.test test/queue2.test \
102  test/range.test test/regression.test test/rnd.test \
103  test/rng-mt.test \
104  test/roc.test \
105  test/score.test \
106  test/scheduler.test \
107  test/scheduler2.test \
108  test/scheduler3.test \
109  test/scheduler4.test \
110  test/scheduler5.test \
111  test/scheduler6.test \
112  test/scheduler7.test \
113  test/segment.test test/smart_ptr.test \
114  test/smith_waterman.test \
115  test/smoother.test test/spearman.test \
116  test/split.test test/statistics.test test/stream_redirect.test \
117  test/subset_generator.test test/svd.test test/svm.test \
118  test/svm_multi_class.test test/target.test \
119  test/ttest.test test/tukey.test \
120  test/utility.test test/vector.test test/version.test \
121  test/weighted_iterator_archetype.test \
122  test/vcf.test \
123  test/vcf_compare.test \
124  test/vcf_file.test \
125  test/vcf_file2.test \
126  test/vcf_header.test \
127  test/vector_expression.test \
128  test/view.test
129
130CLEANFILES += $(EXTRA_PROGRAMS)
131
132# tests not passing through yet
133XFAIL_TESTS =
134
135DISTRIBUTED_TESTS = \
136test/cmd_test.sh \
137test/doxygen_test.sh \
138test/help_test.sh \
139test/yat_config_test.sh \
140test/yat_config_cblas_test.sh \
141test/yat_cpp_add_flag_test.sh \
142test/yat_cxx_add_flag_test.sh \
143test/yat_header_assert_test.sh \
144test/yat_ld_add_flag_test.sh \
145test/yat_have_svn_wc_test.sh \
146test/yat_lt_compile_ifelse_test.sh \
147test/yat_lt_link_ifelse_test.sh \
148test/yat_lt_link_la_ifelse_test.sh \
149test/yat_msg_error_test.sh \
150test/yat_msg_error_test2.sh \
151test/yat_m4_with_bam_test.sh \
152test/yat_m4_test.sh \
153test/yat_m4_test2.sh \
154test/yat_pc_test.sh \
155test/yat_prog_move_if_change_test.sh \
156test/yat_revision_header_test.sh \
157test/yat_svn_release_year_test.sh \
158test/yat_svn_revision_test.sh \
159test/yat_use_libtool_tag_test.sh
160
161TESTS = $(DISTRIBUTED_TESTS) $(EXTRA_PROGRAMS)
162EXTRA_DIST += $(DISTRIBUTED_TESTS)
163
164TEST_EXTENSIONS = .sh .test
165
166LDADD = yat/libyat.la test/libyattest.la $(YAT_LIBS)
167
168#test_large_file_test_LDADD = test/libyattest.la
169
170test_libyattest_la_LIBADD = yat/libyat.la
171test_libyattest_la_SOURCES = test/Suite.cc
172
173lazycheck:; $(MAKE) $(AM_MAKEFLAGS) check RECHECK_LOGS=
174
175shell_test_deps = $(srcdir)/test/init.sh test/defs.sh
176
177# dependencies for lazycheck
178test/bam.log: test/data/foo.sorted.bam
179test/bam_header.log: test/data/foo.sorted.bam
180test/bam_header2.log: test/data/foo.sorted.bam
181test/bam_iterator.log: test/data/foo.sorted.bam
182test/bam_pair_analyse.log: test/data/foo.sorted.bam
183test/bam_pair_iterator.log: test/data/foo.sorted.bam
184test/bam_read_filter.log: test/data/foo.sorted.bam
185test/bam_region_iterator.log: test/data/foo.sorted.bam
186test/cmd_test.log: test/help.test $(shell_test_deps)
187test/help_test.log: test/help.test $(shell_test_deps)
188test/pileup.log: test/data/foo.sorted.bam
189test/static_test.log: $(srcdir)/m4/yat.m4 $(shell_test_deps)
190
191test/vcf_file.log: $(srcdir)/test/data/foo.vcf
192test/vcf_file2.log: test/data/foo.vcf.gz
193
194test/yat_config_test.log: build_support/yat-config \
195  build_support/for_installation/yat-config $(shell_test_deps)
196test/yat_config_cblas_test.log: build_support/yat-config $(shell_test_deps)
197test/yat_cpp_add_flag_test.log: $(srcdir)/m4/yat_add_flag.m4 \
198  $(srcdir)/m4/ax_append_flag.m4 \
199  $(srcdir)/m4/ax_check_preproc_flag.m4 \
200  $(shell_test_deps)
201test/yat_cxx_add_flag_test.log: $(top_srcdir)/m4/yat_add_flag.m4 \
202  $(top_srcdir)/m4/ax_append_compile_flags.m4 \
203  $(top_srcdir)/m4/ax_append_flag.m4 \
204  $(top_srcdir)/m4/ax_check_compile_flag.m4 \
205  $(top_srcdir)/m4/ax_require_defined.m4 \
206  $(shell_test_deps)
207test/yat_have_svn_wc_test.log: $(srcdir)/m4/yat_am_macros.m4 $(shell_test_deps)
208test/yat_ld_add_flag_test.log: $(top_srcdir)/m4/yat_add_flag.m4 \
209  $(top_srcdir)/m4/ax_append_flag.m4 \
210  $(top_srcdir)/m4/ax_append_link_flags.m4 \
211  $(top_srcdir)/m4/ax_check_link_flag.m4 \
212  $(top_srcdir)/m4/ax_require_defined.m4 \
213  $(shell_test_deps)
214test/yat_lt_compile_ifelse_test.log: $(shell_test_deps) \
215  $(top_srcdir)/m4/yat_lt_link_ifelse.m4
216test/yat_lt_link_ifelse_test.log: $(top_srcdir)/m4/yat_lt_link_ifelse.m4 \
217  $(top_srcdir)/m4/yat.m4 $(shell_test_deps) \
218  $(top_builddir)/build_support/yat-config
219test/yat_lt_link_la_ifelse_test.log: $(shell_test_deps) \
220  test/lib/libmy-shared.la \
221  $(top_srcdir)/m4/yat_lt_link_ifelse.m4 \
222  $(top_srcdir)/m4/yat_common.m4
223test/yat_m4_test.log:$(top_srcdir)/m4/yat.m4 $(shell_test_deps) \
224  $(top_builddir)/build_support/yat-config
225test/yat_m4_test2.log:$(top_srcdir)/m4/yat.m4 $(shell_test_deps)
226test/yat_msg_error_test.log:$(srcdir)/m4/yat_msg_error.m4 $(shell_test_deps)
227test/yat_msg_error_test2.log:$(srcdir)/m4/yat_msg_error.m4 $(shell_test_deps)
228test/yat_pc_test.log: $(shell_test_deps) build_support/yat.pc
229test/yat_prog_move_if_change_test.log: $(top_srcdir)/m4/yat_am_macros.m4 \
230  $(top_srcdir)/m4/ax_ac_append_to_file.m4 \
231  $(top_srcdir)/m4/ax_ac_print_to_file.m4 \
232  $(top_srcdir)/m4/ax_file_escapes.m4 \
233  $(shell_test_deps)
234test/yat_revision_header_test.log: $(top_srcdir)/m4/yat_am_macros.m4 \
235  $(shell_test_deps) \
236  $(top_srcdir)/m4/ax_ac_append_to_file.m4 \
237  $(top_srcdir)/m4/ax_ac_print_to_file.m4 \
238  $(top_srcdir)/m4/ax_file_escapes.m4
239test/yat_svn_release_year_test.log: $(top_srcdir)/m4/yat_am_macros.m4 \
240  $(shell_test_deps) \
241  $(top_srcdir)/m4/ax_ac_append_to_file.m4 \
242  $(top_srcdir)/m4/ax_ac_print_to_file.m4 \
243  $(top_srcdir)/m4/ax_file_escapes.m4
244test/yat_svn_revision_test.log: $(top_srcdir)/m4/yat_am_macros.m4 \
245  $(shell_test_deps) \
246  $(top_srcdir)/m4/ax_ac_append_to_file.m4 \
247  $(top_srcdir)/m4/ax_ac_print_to_file.m4 \
248  $(top_srcdir)/m4/ax_file_escapes.m4
249test/yat_use_libtool_tag_test.log: $(shell_test_deps) \
250  $(top_srcdir)/m4/yat_lt_link_ifelse.m4
251
252if DX_ENABLE_HTML
253test/doxygen_test.log: doc/$(DX_HTML_OUTPUT)/index.html
254endif
255
256# yat-hello is an example of a tiny package that uses yat
257dist_noinst_DATA = $(srcdir)/test/yat-hello-1.0.tar.gz
258
259# Directory yat-hello contains what a developer would check out
260# from a VCS, i.e., no files generated by autotools.
261yat_hello_sources  =
262yat_hello_sources += $(srcdir)/test/yat-hello/configure.ac
263yat_hello_sources += $(srcdir)/test/yat-hello/Makefile.am
264yat_hello_sources += $(srcdir)/test/yat-hello/hello.cc
265
266EXTRA_DIST += $(yat_hello_sources)
267
268yat_hello_tmp_files =
269yat_hello_tmp_files += Makefile.in
270yat_hello_tmp_files += autom4te.cache
271yat_hello_tmp_files += aclocal.m4
272yat_hello_tmp_files += build-aux
273yat_hello_tmp_files += configure
274yat_hello_tmp_files += config.h.in
275yat_hello_tmp_files += m4
276
277
278yat_hello_deps = $(yat_hello_sources)
279yat_hello_deps += $(top_srcdir)/m4/yat.m4
280## We depend on version.m4 so tarball is updated at every release (at least)
281yat_hello_deps += $(top_srcdir)/m4/version.m4
282
283$(srcdir)/test/yat-hello-1.0.tar.gz: $(yat_hello_deps)
284  $(AM_V_GEN)$(MKDIR_P) $(srcdir)/test/yat-hello/m4 \
285  && cd $(srcdir)/test/yat-hello \
286  && cp $(abs_top_srcdir)/m4/yat.m4 m4/ \
287  && autoreconf -if $(yat_dev_null) \
288  && ./configure --without-yat $(yat_dev_null) \
289  && $(MAKE) $(AM_MAKEFLAGS) dist $(yat_dev_null) \
290  && $(MAKE) $(AM_MAKEFLAGS) distclean $(yat_dev_null) \
291  && mv yat-hello-1.0.tar.gz .. \
292  && rm -rf $(yat_hello_tmp_files)
293
294INSTALL_CHECK_TARGETS += yat-hello-check
295
296yat-hello-check: $(srcdir)/test/yat-hello-1.0.tar.gz
297  GZIP=$(GZIP_ENV) gzip -dc $(srcdir)/test/yat-hello-1.0.tar.gz | $(am__untar)\
298  && cd yat-hello-1.0 \
299  && ./configure --with-yat=$(bindir) \
300  && $(MAKE) $(AM_MAKEFLAGS) all \
301  && ./hello \
302  && test x"`./hello`" = x"$(VERSION)" \
303  && cd .. \
304  && rm -rf yat-hello-1.0
305
306
307## test data
308EXTRA_DIST += \
309test/data/foo.sam \
310test/data/foo.vcf \
311test/data/isoform.peaks \
312test/data/knni_matrix.data \
313test/data/knni_result.data \
314test/data/knni_weight.data \
315test/data/nm_alpha_linear_matlab.txt \
316test/data/nm_data_centralized.txt \
317test/data/nm_kernel.txt \
318test/data/nm_kernel2.txt \
319test/data/nm_kernel_gaussian.txt \
320test/data/nm_target_bin.txt \
321test/data/normalization_test.data \
322test/data/rank_data.txt \
323test/data/rank_target.txt \
324test/data/regression_gauss.data \
325test/data/small.gff2 \
326test/data/small.gff3 \
327test/data/sorlie_centroid_classes.txt \
328test/data/sorlie_centroid_data.txt  \
329test/data/sorlie_centroid_predictions.txt \
330test/data/sorlie_centroids.txt \
331test/data/vector1.data  \
332test/data/vector2.data \
333test/data/vector3.data \
334test/data/vector4.data \
335test/data/vector5.data \
336test/data/vector6.data  \
337test/data/vector7.data \
338test/data/wenni_result.data \
339test/data/wenni_weight.data
340
341CLEANFILES += test/data/.dirstamp
342CLEANFILES += test/data/foo.sorted.bam
343CLEANFILES += test/data/foo.sorted.bam.bai
344CLEANFILES += test/data/foo.fasta
345CLEANFILES += test/data/foo.fasta.fai
346CLEANFILES += test/data/foo.vcf.gz
347
348check_DATA  = test/data/foo.sorted.bam
349check_DATA += test/data/foo.sorted.bam.bai
350check_DATA += test/data/foo.fasta
351check_DATA += test/data/foo.fasta.fai
352check_DATA += test/data/foo.vcf.gz
353
354test/data/.dirstamp:
355  @$(MKDIR_P) test/data
356  @: > $@
357
358if HAVE_SAMTOOLS_EXECUTABLE
359# depend on config.h to ensure rule is triggered when
360# HAVE_SAMTOOLS_EXECUTABLE has changed and possible (empty) dummy bam
361# file is replaced with a proper one.
362test/data/foo.sorted.bam: test/data/.dirstamp test/data/foo.sam config.h
363  $(AM_V_GEN)
364  $(AM_V_at)$(SAMTOOLS) sort -T foo -o $@ $(srcdir)/test/data/foo.sam
365
366test/data/foo.sorted.bam.bai: test/data/foo.sorted.bam
367  $(AM_V_GEN)
368  $(AM_V_at)$(SAMTOOLS) index test/data/foo.sorted.bam
369
370else
371test/data/foo.sorted.bam: test/data/.dirstamp
372  $(AM_V_at): > $@
373
374test/data/foo.sorted.bam.bai: test/data/.dirstamp
375  $(AM_V_at): > $@
376endif
377
378if HAVE_SAMTOOLS_FASTA_EXECUTABLE
379test/data/foo.fasta: test/data/foo.sorted.bam
380  $(AM_V_GEN)
381  $(AM_V_at)$(SAMTOOLS) fasta test/data/foo.sorted.bam > $@
382
383test/data/foo.fasta.fai: test/data/foo.fasta
384  $(AM_V_GEN)
385  $(AM_V_at)$(SAMTOOLS) faidx test/data/foo.fasta
386
387else
388test/data/foo.fasta: test/data/.dirstamp
389  $(AM_V_at): > $@
390
391test/data/foo.fasta.fai: test/data/.dirstamp
392  $(AM_V_at): > $@
393endif
394
395if HAVE_BCFTOOLS_EXECUTABLE
396test/data/foo.vcf.gz: test/data/.dirstamp test/data/foo.vcf
397  $(AM_V_GEN)
398  $(AM_V_at)$(BCFTOOLS) view $(srcdir)/test/data/foo.vcf -O z > $@
399else
400test/data/foo.vcf.gz: test/data/.dirstamp
401  $(AM_V_at): > $@
402endif
403
404test/lib/.dirstamp:
405  @$(MKDIR_P) test/lib
406  @: > $@
407
408check_DATA += test/lib/libmy-static.a
409EXTRA_DIST += test/gen_libmy_static.sh
410
411test/lib/libmy-static.a: test/lib/.dirstamp test/gen_libmy_static.sh \
412test/defs.sh
413  $(AM_V_GEN)
414  $(AM_V_at)$(SHELL) $(srcdir)/test/gen_libmy_static.sh $(yat_dev_null)
415
416check_DATA += test/lib/libmy-shared.la
417EXTRA_DIST += test/gen_libmy_shared.sh
418
419test/lib/libmy-shared.la: test/lib/.dirstamp test/gen_libmy_shared.sh \
420test/defs.sh
421  $(AM_V_GEN)
422  $(AM_V_at)$(SHELL) $(srcdir)/test/gen_libmy_shared.sh $(yat_dev_null)
Note: See TracBrowser for help on using the repository browser.