source: trunk/test/Makefile.am @ 3901

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

prefer tests in alphabetical order

  • 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 3901 2020-05-04 03:46:35Z 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/chi2.test \
52  test/cigar.test \
53  test/cigar2.test \
54  test/cigar_iterator.test \
55  test/codon.test test/commandline.test \
56  test/concept.test \
57  test/consensus_inputranker.test \
58  test/copy_k_of_n.test \
59  test/data_lookup_1d.test  \
60  test/data_weight.test test/data_weight_proxy.test \
61  test/deleter.test \
62  test/diagonal_matrix.test \
63  test/distance.test \
64  test/dna.test \
65  test/dna_reverse_complement.test \
66  test/ensemble.test \
67  test/fasta.test \
68  test/feature_selection.test \
69  test/fileutil.test \
70  test/fisher.test \
71  test/gaussian_mixture.test \
72  test/genomic_position.test test/getline_iterator.test \
73  test/getvector.test \
74  test/gff.test test/help.test test/histogram.test \
75  test/igp.test test/index.test test/inputranker.test test/interpolation.test \
76  test/iterator.test test/kendall.test test/kernel_lookup.test \
77  test/kernel_matrix.test \
78  test/kernel_pca.test test/kernel.test \
79  test/knn.test test/kolmogorov_smirnov.test test/large_file.test \
80  test/libbam.test \
81  test/likelihood_ratio_test_binomial.test \
82  test/matrix_lookup.test \
83  test/matrix_lookup_weighted.test test/matrix.test \
84  test/matrix_expression.test \
85  test/matrix_weighted.test test/merge.test \
86  test/merge_iterator.test test/nbc.test \
87  test/ncc.test \
88  test/negative_binomial.test \
89  test/negative_binomial_distribution.test \
90  test/nni.test test/normalization.test \
91  test/non_central_chi_squared_distribution.test \
92  test/ostream_iterator.test \
93  test/pca.test \
94  test/perceptron.test \
95  test/phred.test \
96  test/pileup.test \
97  test/print_what.test \
98  test/priority_queue.test \
99  test/poisson.test \
100  test/queue.test test/queue2.test \
101  test/random_distribution.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.