2 # Licensed to the Apache Software Foundation (ASF) under one
3 # or more contributor license agreements. See the NOTICE file
4 # distributed with this work for additional information
5 # regarding copyright ownership. The ASF licenses this file
6 # to you under the Apache License, Version 2.0 (the
7 # "License"); you may not use this file except in compliance
8 # with the License. You may obtain a copy of the License at
10 # http://www.apache.org/licenses/LICENSE-2.0
12 # Unless required by applicable law or agreed to in writing,
13 # software distributed under the License is distributed on an
14 # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 # KIND, either express or implied. See the License for the
16 # specific language governing permissions and limitations
20 AUTOMAKE_OPTIONS = serial-tests
22 # Thrift compiler rules
24 debug_proto_gen = $(addprefix gen-d/, DebugProtoTest_types.d)
26 $(debug_proto_gen): $(top_srcdir)/test/DebugProtoTest.thrift
27 $(THRIFT) --gen d -nowarn $<
29 stress_test_gen = $(addprefix gen-d/thrift/test/stress/, Service.d \
32 $(stress_test_gen): $(top_srcdir)/test/StressTest.thrift
35 thrift_test_gen = $(addprefix gen-d/thrift/test/, SecondService.d \
36 ThriftTest.d ThriftTest_constants.d ThriftTest_types.d)
38 $(thrift_test_gen): $(top_srcdir)/test/ThriftTest.thrift
42 # The actual test targets.
43 # There just must be some way to reassign a variable without warnings in
45 targets__ = async_test client_pool_test serialization_benchmark \
46 stress_test_server thrift_test_client thrift_test_server transport_test
47 ran_tests__ = client_pool_test \
49 async_test_runner.sh \
52 libevent_dependent_targets = async_test_client client_pool_test \
53 stress_test_server thrift_test_server
54 libevent_dependent_ran_tests = client_pool_test async_test_runner.sh thrift_test_runner.sh
56 openssl_dependent_targets = async_test thrift_test_client thrift_test_server
57 openssl_dependent_ran_tests = async_test_runner.sh thrift_test_runner.sh
62 d_test_flags += $(DMD_LIBEVENT_FLAGS) ../$(D_EVENT_LIB_NAME)
63 targets_ = $(targets__)
64 ran_tests_ = $(ran_tests__)
66 targets_ = $(filter-out $(libevent_dependent_targets), $(targets__))
67 ran_tests_ = $(filter-out $(libevent_dependent_ran_tests), $(ran_tests__))
71 d_test_flags += $(DMD_OPENSSL_FLAGS) ../$(D_SSL_LIB_NAME)
73 ran_tests = $(ran_tests_)
75 targets = $(filter-out $(openssl_dependent_targets), $(targets_))
76 ran_tests = $(filter-out $(openssl_dependent_ran_tests), $(ran_tests_))
79 d_test_flags += -w -wi -O -release -inline -I$(top_srcdir)/lib/d/src -Igen-d \
80 $(top_builddir)/lib/d/$(D_LIB_NAME)
83 async_test client_pool_test transport_test: %: %.d
84 $(DMD) $(d_test_flags) -of$@ $^
86 serialization_benchmark: %: %.d $(debug_proto_gen)
87 $(DMD) $(d_test_flags) -of$@ $^
89 stress_test_server: %: %.d test_utils.d $(stress_test_gen)
90 $(DMD) $(d_test_flags) -of$@ $^
92 thrift_test_client: %: %.d thrift_test_common.d $(thrift_test_gen)
93 $(DMD) $(d_test_flags) -of$@ $^
95 thrift_test_server: %: %.d thrift_test_common.d test_utils.d $(thrift_test_gen)
96 $(DMD) $(d_test_flags) -of$@ $^
99 check-local: $(targets)
102 $(RM) -rf gen-d $(targets) $(addsuffix .o, $(targets))
105 # Tests ran as part of make check.
107 async_test_runner.sh: async_test
108 thrift_test_runner.sh: thrift_test_client thrift_test_server