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