1noinst_LTLIBRARIES = libsmtp.la 2 3AM_CPPFLAGS = \ 4 -I$(top_srcdir)/src/lib \ 5 -I$(top_srcdir)/src/lib-test \ 6 -I$(top_srcdir)/src/lib-settings \ 7 -I$(top_srcdir)/src/lib-master \ 8 -I$(top_srcdir)/src/lib-sasl \ 9 -I$(top_srcdir)/src/lib-ssl-iostream \ 10 -I$(top_srcdir)/src/lib-dns \ 11 -I$(top_srcdir)/src/lib-program-client \ 12 -I$(top_srcdir)/src/lib-mail \ 13 -DTEST_BIN_DIR=\"$(abs_srcdir)/test-bin\" 14 15smtp_server_cmds = \ 16 smtp-server-cmd-helo.c \ 17 smtp-server-cmd-starttls.c \ 18 smtp-server-cmd-auth.c \ 19 smtp-server-cmd-mail.c \ 20 smtp-server-cmd-rcpt.c \ 21 smtp-server-cmd-data.c \ 22 smtp-server-cmd-rset.c \ 23 smtp-server-cmd-noop.c \ 24 smtp-server-cmd-quit.c \ 25 smtp-server-cmd-vrfy.c \ 26 smtp-server-cmd-xclient.c 27 28libsmtp_la_SOURCES = \ 29 smtp-parser.c \ 30 smtp-syntax.c \ 31 smtp-address.c \ 32 smtp-common.c \ 33 smtp-params.c \ 34 smtp-reply.c \ 35 smtp-reply-parser.c \ 36 smtp-command-parser.c \ 37 smtp-client-command.c \ 38 smtp-client-transaction.c \ 39 smtp-client-connection.c \ 40 smtp-client.c \ 41 $(smtp_server_cmds) \ 42 smtp-server-reply.c \ 43 smtp-server-command.c \ 44 smtp-server-recipient.c \ 45 smtp-server-transaction.c \ 46 smtp-server-connection.c \ 47 smtp-server.c \ 48 smtp-submit-settings.c \ 49 smtp-submit.c 50 51headers = \ 52 smtp-parser.h \ 53 smtp-syntax.h \ 54 smtp-address.h \ 55 smtp-common.h \ 56 smtp-params.h \ 57 smtp-reply.h \ 58 smtp-reply-parser.h \ 59 smtp-command.h \ 60 smtp-command-parser.h \ 61 smtp-client-command.h \ 62 smtp-client-transaction.h \ 63 smtp-client-connection.h \ 64 smtp-client-private.h \ 65 smtp-client.h \ 66 smtp-server-private.h \ 67 smtp-server.h \ 68 smtp-submit-settings.h \ 69 smtp-submit.h 70 71pkginc_libdir=$(pkgincludedir) 72pkginc_lib_HEADERS = $(headers) 73 74test_programs = \ 75 test-smtp-syntax \ 76 test-smtp-address \ 77 test-smtp-params \ 78 test-smtp-reply \ 79 test-smtp-command-parser \ 80 test-smtp-payload \ 81 test-smtp-submit \ 82 test-smtp-client-errors \ 83 test-smtp-server-errors 84 85test_nocheck_programs = 86 87fuzz_programs = 88 89if USE_FUZZER 90fuzz_programs += \ 91 fuzz-smtp-server 92endif 93 94noinst_PROGRAMS = $(fuzz_programs) $(test_programs) $(test_nocheck_programs) 95 96EXTRA_DIST = \ 97 test-bin/sendmail-exit-1.sh \ 98 test-bin/sendmail-success.sh 99 100test_libs = \ 101 $(noinst_LTLIBRARIES) \ 102 ../lib-program-client/libprogram_client.la \ 103 ../lib-dns/libdns.la \ 104 ../lib-mail/libmail.la \ 105 ../lib-charset/libcharset.la \ 106 ../lib-master/libmaster.la \ 107 ../lib-auth/libauth.la \ 108 ../lib-ssl-iostream/libssl_iostream.la \ 109 ../lib-settings/libsettings.la \ 110 ../lib-sasl/libsasl.la \ 111 ../lib-test/libtest.la \ 112 ../lib/liblib.la \ 113 $(MODULE_LIBS) 114 115test_deps = \ 116 $(noinst_LTLIBRARIES) \ 117 ../lib-program-client/libprogram_client.la \ 118 ../lib-dns/libdns.la \ 119 ../lib-mail/libmail.la \ 120 ../lib-charset/libcharset.la \ 121 ../lib-master/libmaster.la \ 122 ../lib-auth/libauth.la \ 123 ../lib-ssl-iostream/libssl_iostream.la \ 124 ../lib-settings/libsettings.la \ 125 ../lib-sasl/libsasl.la \ 126 ../lib-test/libtest.la \ 127 ../lib/liblib.la 128 129test_libs_ssl= 130if BUILD_OPENSSL 131test_libs_ssl += ../lib-ssl-iostream/libssl_iostream_openssl.la 132endif 133 134test_smtp_syntax_SOURCES = test-smtp-syntax.c 135test_smtp_syntax_LDADD = $(test_libs) 136test_smtp_syntax_DEPENDENCIES = $(test_deps) 137 138test_smtp_address_SOURCES = test-smtp-address.c 139test_smtp_address_LDFLAGS = -export-dynamic 140test_smtp_address_LDADD = $(test_libs) 141test_smtp_address_DEPENDENCIES = $(test_deps) 142 143test_smtp_params_SOURCES = test-smtp-params.c 144test_smtp_params_LDFLAGS = -export-dynamic 145test_smtp_params_LDADD = $(test_libs) 146test_smtp_params_DEPENDENCIES = $(test_deps) 147 148test_smtp_reply_SOURCES = test-smtp-reply.c 149test_smtp_reply_LDFLAGS = -export-dynamic 150test_smtp_reply_LDADD = $(test_libs) 151test_smtp_reply_DEPENDENCIES = $(test_deps) 152 153test_smtp_command_parser_SOURCES = test-smtp-command-parser.c 154test_smtp_command_parser_LDFLAGS = -export-dynamic 155test_smtp_command_parser_LDADD = $(test_libs) 156test_smtp_command_parser_DEPENDENCIES = $(test_deps) 157 158test_smtp_payload_SOURCES = test-smtp-payload.c 159test_smtp_payload_LDFLAGS = -export-dynamic 160test_smtp_payload_LDADD = $(test_libs) $(test_libs_ssl) 161test_smtp_payload_DEPENDENCIES = $(test_deps) 162 163test_smtp_submit_SOURCES = test-smtp-submit.c 164test_smtp_submit_LDFLAGS = -export-dynamic 165test_smtp_submit_LDADD = $(test_libs) 166test_smtp_submit_DEPENDENCIES = $(test_deps) 167 168test_smtp_client_errors_SOURCES = test-smtp-client-errors.c 169test_smtp_client_errors_LDFLAGS = -export-dynamic 170test_smtp_client_errors_LDADD = $(test_libs) $(test_libs_ssl) 171test_smtp_client_errors_DEPENDENCIES = $(test_deps) 172 173test_smtp_server_errors_SOURCES = test-smtp-server-errors.c 174test_smtp_server_errors_LDFLAGS = -export-dynamic 175test_smtp_server_errors_LDADD = $(test_libs) 176test_smtp_server_errors_DEPENDENCIES = $(test_deps) 177 178nodist_EXTRA_fuzz_smtp_server_SOURCES = force-cxx-linking.cxx 179fuzz_smtp_server_CPPFLAGS = $(FUZZER_CPPFLAGS) 180fuzz_smtp_server_LDFLAGS = $(FUZZER_LDFLAGS) 181fuzz_smtp_server_SOURCES = fuzz-smtp-server.c 182fuzz_smtp_server_LDADD = $(test_libs) 183fuzz_smtp_server_DEPENDENCIES = $(test_deps) 184 185check-local: 186 for bin in $(test_programs); do \ 187 if test "$$bin" = "test-smtp-submit"; then \ 188 if ! env NOCHILDREN=yes $(RUN_TEST) ./$$bin; then exit 1; fi; \ 189 else \ 190 if ! $(RUN_TEST) ./$$bin; then exit 1; fi; \ 191 fi \ 192 done 193