Fix too-often retry bug after 4xx with more hosts than hosts_max_retry.
[exim.git] / src / scripts / MakeLinks
CommitLineData
61ec970d 1#!/bin/sh
16ff981e 2# $Cambridge: exim/src/scripts/MakeLinks,v 1.8 2006/10/16 15:44:36 ph10 Exp $
61ec970d
PH
3
4# Script to build links for all the exim source files from the system-
5# specific build directory. It should be run from within that directory.
6
7test ! -d ../src && \
8 echo "*** $0 should be run in a system-specific subdirectory." && \
9 exit 1
10test -r version.c && \
11 echo "*** It appears that $0 has already been run." && \
12 exit 1
13if [ -r pcre/Makefile ] ; then
14 echo "*** It appears that $0 was previously interrupted."
15 echo "*** You need to remove the build directory, and then run 'make' again."
16 exit 1
17fi
18
19
20# Initialize the file holding the compile number
21
22echo "0" > cnumber.h
23
24echo ""
25echo ">>> Creating links to source files..."
26
27
28# The PCRE regular expression library sources have to be linked
29# independently in their own sub-directory, since their .o files
30# are built using their own Makefile in the sub-directory.
31mkdir pcre
32cd pcre
33ln -s ../../src/pcre/Makefile Makefile
34ln -s ../../src/pcre/config.h config.h
35ln -s ../../src/pcre/dftables.c dftables.c
8ac170f3 36ln -s ../../src/pcre/pcre_internal.h pcre_internal.h
61ec970d 37ln -s ../../src/pcre/pcre.h pcre.h
8ac170f3
PH
38ln -s ../../src/pcre/pcre_maketables.c pcre_maketables.c
39ln -s ../../src/pcre/pcre_config.c pcre_config.c
40ln -s ../../src/pcre/pcre_get.c pcre_get.c
41ln -s ../../src/pcre/pcre_globals.c pcre_globals.c
42ln -s ../../src/pcre/pcre_compile.c pcre_compile.c
43ln -s ../../src/pcre/pcre_exec.c pcre_exec.c
44ln -s ../../src/pcre/pcre_fullinfo.c pcre_fullinfo.c
61ec970d 45ln -s ../../src/pcre/pcretest.c pcretest.c
8ac170f3
PH
46ln -s ../../src/pcre/pcre_printint.c pcre_printint.c
47ln -s ../../src/pcre/pcre_study.c pcre_study.c
48ln -s ../../src/pcre/pcre_tables.c pcre_tables.c
49ln -s ../../src/pcre/pcre_try_flipped.c pcre_try_flipped.c
50ln -s ../../src/pcre/pcre_version.c pcre_version.c
51ln -s ../../src/pcre/ucp.h ucp.h
61ec970d
PH
52cd ..
53
54# Likewise for the lookups
55mkdir lookups
56cd lookups
57ln -s ../../src/lookups/README README
58ln -s ../../src/lookups/Makefile Makefile
59ln -s ../../src/lookups/cdb.h cdb.h
60ln -s ../../src/lookups/cdb.c cdb.c
61ln -s ../../src/lookups/dbmdb.h dbmdb.h
62ln -s ../../src/lookups/dbmdb.c dbmdb.c
63ln -s ../../src/lookups/dnsdb.h dnsdb.h
64ln -s ../../src/lookups/dnsdb.c dnsdb.c
65ln -s ../../src/lookups/dsearch.h dsearch.h
66ln -s ../../src/lookups/dsearch.c dsearch.c
67ln -s ../../src/lookups/ibase.h ibase.h
68ln -s ../../src/lookups/ibase.c ibase.c
69ln -s ../../src/lookups/ldap.h ldap.h
70ln -s ../../src/lookups/ldap.c ldap.c
71ln -s ../../src/lookups/lsearch.h lsearch.h
72ln -s ../../src/lookups/lsearch.c lsearch.c
73ln -s ../../src/lookups/mysql.h mysql.h
74ln -s ../../src/lookups/mysql.c mysql.c
75ln -s ../../src/lookups/nis.h nis.h
76ln -s ../../src/lookups/nis.c nis.c
77ln -s ../../src/lookups/nisplus.h nisplus.h
78ln -s ../../src/lookups/nisplus.c nisplus.c
79ln -s ../../src/lookups/oracle.h oracle.h
80ln -s ../../src/lookups/oracle.c oracle.c
81ln -s ../../src/lookups/passwd.h passwd.h
82ln -s ../../src/lookups/passwd.c passwd.c
83ln -s ../../src/lookups/pgsql.h pgsql.h
84ln -s ../../src/lookups/pgsql.c pgsql.c
92f1b170
TK
85ln -s ../../src/lookups/spf.h spf.h
86ln -s ../../src/lookups/spf.c spf.c
13b685f9
PH
87ln -s ../../src/lookups/sqlite.h sqlite.h
88ln -s ../../src/lookups/sqlite.c sqlite.c
61ec970d
PH
89ln -s ../../src/lookups/testdb.h testdb.h
90ln -s ../../src/lookups/testdb.c testdb.c
91ln -s ../../src/lookups/whoson.h whoson.h
92ln -s ../../src/lookups/whoson.c whoson.c
93
94ln -s ../../src/lookups/lf_functions.h lf_functions.h
95ln -s ../../src/lookups/lf_check_file.c lf_check_file.c
96ln -s ../../src/lookups/lf_quote.c lf_quote.c
97
98cd ..
99
100# Likewise for the code for the routers
101mkdir routers
102cd routers
103ln -s ../../src/routers/README README
104ln -s ../../src/routers/Makefile Makefile
105ln -s ../../src/routers/accept.h accept.h
106ln -s ../../src/routers/accept.c accept.c
107ln -s ../../src/routers/dnslookup.h dnslookup.h
108ln -s ../../src/routers/dnslookup.c dnslookup.c
109ln -s ../../src/routers/ipliteral.h ipliteral.h
110ln -s ../../src/routers/ipliteral.c ipliteral.c
111ln -s ../../src/routers/iplookup.h iplookup.h
112ln -s ../../src/routers/iplookup.c iplookup.c
113ln -s ../../src/routers/manualroute.h manualroute.h
114ln -s ../../src/routers/manualroute.c manualroute.c
115ln -s ../../src/routers/queryprogram.h queryprogram.h
116ln -s ../../src/routers/queryprogram.c queryprogram.c
117ln -s ../../src/routers/redirect.h redirect.h
118ln -s ../../src/routers/redirect.c redirect.c
119
120ln -s ../../src/routers/rf_functions.h rf_functions.h
121ln -s ../../src/routers/rf_change_domain.c rf_change_domain.c
122ln -s ../../src/routers/rf_expand_data.c rf_expand_data.c
123ln -s ../../src/routers/rf_get_errors_address.c rf_get_errors_address.c
124ln -s ../../src/routers/rf_get_munge_headers.c rf_get_munge_headers.c
125ln -s ../../src/routers/rf_get_transport.c rf_get_transport.c
126ln -s ../../src/routers/rf_get_ugid.c rf_get_ugid.c
127ln -s ../../src/routers/rf_queue_add.c rf_queue_add.c
128ln -s ../../src/routers/rf_lookup_hostlist.c rf_lookup_hostlist.c
129ln -s ../../src/routers/rf_self_action.c rf_self_action.c
130ln -s ../../src/routers/rf_set_ugid.c rf_set_ugid.c
131
132cd ..
133
134# Likewise for the code for the transports
135mkdir transports
136cd transports
137ln -s ../../src/transports/README README
138ln -s ../../src/transports/Makefile Makefile
139ln -s ../../src/transports/appendfile.h appendfile.h
140ln -s ../../src/transports/appendfile.c appendfile.c
141ln -s ../../src/transports/autoreply.h autoreply.h
142ln -s ../../src/transports/autoreply.c autoreply.c
143ln -s ../../src/transports/lmtp.h lmtp.h
144ln -s ../../src/transports/lmtp.c lmtp.c
145ln -s ../../src/transports/pipe.h pipe.h
146ln -s ../../src/transports/pipe.c pipe.c
147ln -s ../../src/transports/smtp.h smtp.h
148ln -s ../../src/transports/smtp.c smtp.c
149
150ln -s ../../src/transports/tf_maildir.c tf_maildir.c
151ln -s ../../src/transports/tf_maildir.h tf_maildir.h
152
153cd ..
154
155# Likewise for the code for the authorization functions
156mkdir auths
157cd auths
158ln -s ../../src/auths/README README
159ln -s ../../src/auths/Makefile Makefile
160ln -s ../../src/auths/b64encode.c b64encode.c
161ln -s ../../src/auths/b64decode.c b64decode.c
162ln -s ../../src/auths/call_pam.c call_pam.c
163ln -s ../../src/auths/call_pwcheck.c call_pwcheck.c
164ln -s ../../src/auths/call_radius.c call_radius.c
16ff981e 165ln -s ../../src/auths/check_serv_cond.c check_serv_cond.c
61ec970d
PH
166ln -s ../../src/auths/cyrus_sasl.c cyrus_sasl.c
167ln -s ../../src/auths/cyrus_sasl.h cyrus_sasl.h
168ln -s ../../src/auths/get_data.c get_data.c
169ln -s ../../src/auths/get_no64_data.c get_no64_data.c
170ln -s ../../src/auths/md5.c md5.c
171ln -s ../../src/auths/xtextencode.c xtextencode.c
172ln -s ../../src/auths/xtextdecode.c xtextdecode.c
173ln -s ../../src/auths/cram_md5.c cram_md5.c
174ln -s ../../src/auths/cram_md5.h cram_md5.h
175ln -s ../../src/auths/plaintext.c plaintext.c
176ln -s ../../src/auths/plaintext.h plaintext.h
177ln -s ../../src/auths/pwcheck.c pwcheck.c
178ln -s ../../src/auths/pwcheck.h pwcheck.h
179ln -s ../../src/auths/auth-spa.c auth-spa.c
180ln -s ../../src/auths/auth-spa.h auth-spa.h
14aa5a05
PH
181ln -s ../../src/auths/dovecot.c dovecot.c
182ln -s ../../src/auths/dovecot.h dovecot.h
61ec970d
PH
183ln -s ../../src/auths/sha1.c sha1.c
184ln -s ../../src/auths/spa.c spa.c
185ln -s ../../src/auths/spa.h spa.h
186cd ..
187
188# The basic source files for Exim and utilities. NB local_scan.h gets linked,
189# but local_scan.c does not, because its location is taken from the build-time
190# configuration. Likewise for the os.c file, which gets build dynamically.
191
192ln -s ../src/dbfunctions.h dbfunctions.h
193ln -s ../src/dbstuff.h dbstuff.h
194ln -s ../src/exim.h exim.h
195ln -s ../src/functions.h functions.h
196ln -s ../src/globals.h globals.h
197ln -s ../src/local_scan.h local_scan.h
198ln -s ../src/macros.h macros.h
199ln -s ../src/mytypes.h mytypes.h
200ln -s ../src/osfunctions.h osfunctions.h
201ln -s ../src/store.h store.h
202ln -s ../src/structs.h structs.h
203
204ln -s ../src/acl.c acl.c
205ln -s ../src/buildconfig.c buildconfig.c
206ln -s ../src/child.c child.c
207ln -s ../src/crypt16.c crypt16.c
208ln -s ../src/daemon.c daemon.c
209ln -s ../src/dbfn.c dbfn.c
210ln -s ../src/debug.c debug.c
211ln -s ../src/deliver.c deliver.c
212ln -s ../src/directory.c directory.c
213ln -s ../src/dns.c dns.c
214ln -s ../src/drtables.c drtables.c
215ln -s ../src/dummies.c dummies.c
216ln -s ../src/enq.c enq.c
217ln -s ../src/exim.c exim.c
218ln -s ../src/exim_dbmbuild.c exim_dbmbuild.c
219ln -s ../src/exim_dbutil.c exim_dbutil.c
220ln -s ../src/exim_lock.c exim_lock.c
221ln -s ../src/expand.c expand.c
222ln -s ../src/filter.c filter.c
223ln -s ../src/filtertest.c filtertest.c
224ln -s ../src/globals.c globals.c
225ln -s ../src/header.c header.c
226ln -s ../src/host.c host.c
227ln -s ../src/ip.c ip.c
228ln -s ../src/log.c log.c
229ln -s ../src/lss.c lss.c
230ln -s ../src/match.c match.c
231ln -s ../src/moan.c moan.c
232ln -s ../src/parse.c parse.c
233ln -s ../src/perl.c perl.c
234ln -s ../src/queue.c queue.c
235ln -s ../src/rda.c rda.c
236ln -s ../src/readconf.c readconf.c
237ln -s ../src/receive.c receive.c
238ln -s ../src/retry.c retry.c
239ln -s ../src/rewrite.c rewrite.c
240ln -s ../src/rfc2047.c rfc2047.c
241ln -s ../src/route.c route.c
242ln -s ../src/search.c search.c
243ln -s ../src/sieve.c sieve.c
244ln -s ../src/smtp_in.c smtp_in.c
245ln -s ../src/smtp_out.c smtp_out.c
246ln -s ../src/spool_in.c spool_in.c
247ln -s ../src/spool_out.c spool_out.c
248ln -s ../src/store.c store.c
249ln -s ../src/string.c string.c
250ln -s ../src/tls.c tls.c
251ln -s ../src/tls-gnu.c tls-gnu.c
252ln -s ../src/tls-openssl.c tls-openssl.c
253ln -s ../src/tod.c tod.c
254ln -s ../src/transport.c transport.c
255ln -s ../src/tree.c tree.c
256ln -s ../src/verify.c verify.c
257ln -s ../src/version.c version.c
258
8523533c
TK
259# WITH_CONTENT_SCAN
260ln -s ../src/spam.c spam.c
261ln -s ../src/spam.h spam.h
262ln -s ../src/spool_mbox.c spool_mbox.c
263ln -s ../src/regex.c regex.c
264ln -s ../src/mime.c mime.c
265ln -s ../src/mime.h mime.h
266ln -s ../src/malware.c malware.c
267
268# WITH_OLD_DEMIME
269ln -s ../src/demime.c demime.c
270ln -s ../src/demime.h demime.h
271
272# EXPERIMENTAL_*
273ln -s ../src/bmi_spam.c bmi_spam.c
274ln -s ../src/bmi_spam.h bmi_spam.h
275ln -s ../src/spf.c spf.c
276ln -s ../src/spf.h spf.h
277ln -s ../src/srs.c srs.c
278ln -s ../src/srs.h srs.h
fb2274d4
TK
279ln -s ../src/dk.c dk.c
280ln -s ../src/dk.h dk.h
8523533c 281
61ec970d 282# End of MakeLinks