<!-- | |
Licensed to the Apache Software Foundation (ASF) under one or more | |
contributor license agreements. See the NOTICE file distributed with | |
this work for additional information regarding copyright ownership. | |
The ASF licenses this file to You under the Apache License, Version 2.0 | |
(the "License"); you may not use this file except in compliance with | |
the License. You may obtain a copy of the License at | |
http://www.apache.org/licenses/LICENSE-2.0 | |
Unless required by applicable law or agreed to in writing, software | |
distributed under the License is distributed on an "AS IS" BASIS, | |
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
See the License for the specific language governing permissions and | |
limitations under the License. | |
--> | |
<target name="find-esmtp-src" | |
depends="init"> | |
<condition property="esmtp.dir" value="${with-libesmtp}"> | |
<available file="${with-libesmtp}" /> | |
</condition> | |
<condition property="esmtp.src.dir" value="${esmtp.dir}"> | |
<available file="${esmtp.dir}/${esmtp.sample.c}" /> | |
</condition> | |
<condition property="esmtp.src.dir" value="../libesmtp"> | |
<available file="../libesmtp/${esmtp.sample.c}" /> | |
</condition> | |
</target> | |
<target name="find-esmtp-lib" | |
depends="find-esmtp-src" | |
if="has-libesmtp" | |
unless="force-ant"> | |
<condition property="esmtp.lib.file" | |
value="${esmtp.dir}/lib${esmtp.lib.name}.la"> | |
<available file="${esmtp.dir}/lib${esmtp.lib.name}.la" /> | |
</condition> | |
<condition property="esmtp.lib.file" | |
value="${esmtp.dir}/lib${esmtp.lib.name}.dylib"> | |
<available file="${esmtp.dir}/lib${esmtp.lib.name}.dylib" /> | |
</condition> | |
<condition property="esmtp.lib.file" | |
value="${esmtp.dir}/lib${esmtp.lib.name}.so"> | |
<available file="${esmtp.dir}/lib${esmtp.lib.name}.so" /> | |
</condition> | |
<condition property="esmtp.lib.file" | |
value="${esmtp.dir}/lib${esmtp.lib.name}.a"> | |
<available file="${esmtp.dir}/lib${esmtp.lib.name}.a" /> | |
</condition> | |
<condition property="esmtp.lib.file" | |
value="${esmtp.dir}/${esmtp.lib.name}.lib"> | |
<available file="${esmtp.dir}/${esmtp.lib.name}.lib" /> | |
</condition> | |
<condition property="esmtp.lib.file.dir" | |
value="${esmtp.dir}"> | |
<isset property="esmtp.lib.file" /> | |
</condition> | |
<condition property="esmtp.lib.file" | |
value="${esmtp.dir}/.libs/lib${esmtp.lib.name}.la"> | |
<available file="${esmtp.dir}/.libs/lib${esmtp.lib.name}.la" /> | |
</condition> | |
<condition property="esmtp.lib.file" | |
value="${esmtp.dir}/.libs/lib${esmtp.lib.name}.dylib"> | |
<available file="${esmtp.dir}/.libs/lib${esmtp.lib.name}.dylib" /> | |
</condition> | |
<condition property="esmtp.lib.file" | |
value="${esmtp.dir}/.libs/lib${esmtp.lib.name}.so"> | |
<available file="${esmtp.dir}/.libs/lib${esmtp.lib.name}.so" /> | |
</condition> | |
<condition property="esmtp.lib.file" | |
value="${esmtp.dir}/.libs/lib${esmtp.lib.name}.a"> | |
<available file="${esmtp.dir}/.libs/lib${esmtp.lib.name}.a" /> | |
</condition> | |
<condition property="esmtp.lib.file" | |
value="${esmtp.dir}/.libs/${esmtp.lib.name}.lib"> | |
<available file="${esmtp.dir}/.libs/${esmtp.lib.name}.lib" /> | |
</condition> | |
<condition property="esmtp.lib.file.dir" value="${esmtp.dir}/.libs"> | |
<isset property="esmtp.lib.file" /> | |
</condition> | |
<!-- Start looking at candidates in /usr --> | |
<condition property="esmtp.lib.file" | |
value="/usr/lib/lib${esmtp.lib.name}.la"> | |
<available file="/usr/lib/lib${esmtp.lib.name}.la" /> | |
</condition> | |
<condition property="esmtp.lib.file" | |
value="/usr/lib/lib${esmtp.lib.name}.dylib"> | |
<available file="/usr/lib/lib${esmtp.lib.name}.dylib" /> | |
</condition> | |
<condition property="esmtp.lib.file" | |
value="/usr/lib/lib${esmtp.lib.name}.so"> | |
<available file="/usr/lib/lib${esmtp.lib.name}.so" /> | |
</condition> | |
<condition property="esmtp.lib.file" | |
value="/usr/lib/lib${esmtp.lib.name}.a"> | |
<available file="/usr/lib/lib${esmtp.lib.name}.a" /> | |
</condition> | |
<condition property="esmtp.dir" value="/usr"> | |
<isset property="esmtp.lib.file" /> | |
</condition> | |
<condition property="esmtp.lib.file.dir" value="/usr/lib"> | |
<isset property="esmtp.lib.file" /> | |
</condition> | |
<!-- Start looking at candidates in /usr/local --> | |
<condition property="esmtp.lib.file" | |
value="/usr/local/lib/lib${esmtp.lib.name}.la"> | |
<available file="/usr/local/lib/lib${esmtp.lib.name}.la" /> | |
</condition> | |
<condition property="esmtp.lib.file" | |
value="/usr/local/lib/lib${esmtp.lib.name}.dylib"> | |
<available file="/usr/local/lib/lib${esmtp.lib.name}.dylib" /> | |
</condition> | |
<condition property="esmtp.lib.file" | |
value="/usr/local/lib/lib${esmtp.lib.name}.so"> | |
<available file="/usr/local/lib/lib${esmtp.lib.name}.so" /> | |
</condition> | |
<condition property="esmtp.lib.file" | |
value="/usr/local/lib/lib${esmtp.lib.name}.a"> | |
<available file="/usr/local/lib/lib${esmtp.lib.name}.a" /> | |
</condition> | |
<condition property="esmtp.dir" value="/usr/local"> | |
<isset property="esmtp.lib.file" /> | |
</condition> | |
<condition property="esmtp.lib.file.dir" value="/usr/local/lib"> | |
<isset property="esmtp.lib.file" /> | |
</condition> | |
<property name="relative-esmtp" | |
location="../libesmtp" | |
/> | |
<condition property="esmtp.dir" value="${relative-esmtp}"> | |
<available file="${relative-esmtp}" /> | |
</condition> | |
<condition property="esmtp.lib.file" | |
value="${esmtp.dir}/lib${esmtp.lib.name}.la"> | |
<available file="${esmtp.dir}/lib${esmtp.lib.name}.la" /> | |
</condition> | |
<condition property="esmtp.lib.file" | |
value="${esmtp.dir}/lib${esmtp.lib.name}.dylib"> | |
<available file="${esmtp.dir}/lib${esmtp.lib.name}.dylib" /> | |
</condition> | |
<condition property="esmtp.lib.file" | |
value="${esmtp.dir}/lib${esmtp.lib.name}.so"> | |
<available file="${esmtp.dir}/lib${esmtp.lib.name}.so" /> | |
</condition> | |
<condition property="esmtp.lib.file" | |
value="${esmtp.dir}/lib${esmtp.lib.name}.a"> | |
<available file="${esmtp.dir}/lib${esmtp.lib.name}.a" /> | |
</condition> | |
<condition property="esmtp.lib.file" | |
value="${esmtp.dir}/${esmtp.lib.name}.lib"> | |
<available file="${esmtp.dir}/${esmtp.lib.name}.lib" /> | |
</condition> | |
<condition property="esmtp.lib.file.dir" value="${esmtp.dir}"> | |
<isset property="esmtp.lib.file" /> | |
</condition> | |
<condition property="esmtp.lib.file" | |
value="${esmtp.dir}/.libs/lib${esmtp.lib.name}.la"> | |
<available file="${esmtp.dir}/.libs/lib${esmtp.lib.name}.la" /> | |
</condition> | |
<condition property="esmtp.lib.file" | |
value="${esmtp.dir}/.libs/lib${esmtp.lib.name}.dylib"> | |
<available file="${esmtp.dir}/.libs/lib${esmtp.lib.name}.dylib" /> | |
</condition> | |
<condition property="esmtp.lib.file" | |
value="${esmtp.dir}/.libs/lib${esmtp.lib.name}.so"> | |
<available file="${esmtp.dir}/.libs/lib${esmtp.lib.name}.so" /> | |
</condition> | |
<condition property="esmtp.lib.file" | |
value="${esmtp.dir}/.libs/lib${esmtp.lib.name}.a"> | |
<available file="${esmtp.dir}/.libs/lib${esmtp.lib.name}.a" /> | |
</condition> | |
<condition property="esmtp.lib.file.dir" value="${esmtp.dir}/.libs"> | |
<isset property="esmtp.lib.file" /> | |
</condition> | |
<fail unless="esmtp.dir">Unable to locate esmtp base directory.</fail> | |
<!-- Static debug libraries in APR's VC6 projects typical location (ignored unless debug build) --> | |
<condition property="esmtp.lib.file" | |
value="${esmtp.dir}/LibD/${esmtp.lib.name}.lib"> | |
<and> | |
<isset property="is-debug" /> | |
<available file="${esmtp.dir}/LibD/${esmtp.lib.name}.lib" /> | |
</and> | |
</condition> | |
<condition property="esmtp.lib.file.dir" | |
value="${esmtp.dir}/LibD"> | |
<isset property="esmtp.lib.file" /> | |
</condition> | |
<!-- Shared debug libraries in APR's VC6 projects typical location (ignored unless debug build) --> | |
<condition property="esmtp.lib.file" | |
value="${esmtp.dir}/Debug/lib${esmtp.lib.name}.lib"> | |
<and> | |
<isset property="is-debug" /> | |
<available file="${esmtp.dir}/Debug/lib${esmtp.lib.name}.lib" /> | |
</and> | |
</condition> | |
<condition property="esmtp.lib.file.dir" | |
value="${esmtp.dir}/Debug"> | |
<isset property="esmtp.lib.file" /> | |
</condition> | |
<!-- Static release libraries in APR's VC6 projects typical location (ignored unless debug build) --> | |
<condition property="esmtp.lib.file" | |
value="${esmtp.dir}/LibR/${esmtp.lib.name}.lib"> | |
<available file="${esmtp.dir}/LibR/${esmtp.lib.name}.lib" /> | |
</condition> | |
<condition property="esmtp.lib.file.dir" | |
value="${esmtp.dir}/LibR"> | |
<isset property="esmtp.lib.file" /> | |
</condition> | |
<!-- Shared release libraries in APR's VC6 projects typical location --> | |
<condition property="esmtp.lib.file" | |
value="${esmtp.dir}/Release/lib${esmtp.lib.name}.lib"> | |
<available file="${esmtp.dir}/Release/lib${esmtp.lib.name}.lib" /> | |
</condition> | |
<condition property="esmtp.lib.file.dir" | |
value="${esmtp.dir}/Release"> | |
<isset property="esmtp.lib.file" /> | |
</condition> | |
<condition property="esmtp.lib.dir" | |
value="${esmtp.lib.file.dir}"> | |
<and> | |
<isset property="esmtp.lib.file.dir" /> | |
<not> | |
<or> | |
<!-- default search path --> | |
<equals arg1="${esmtp.lib.file.dir}" arg2="/usr" /> | |
</or> | |
</not> | |
</and> | |
</condition> | |
<condition property="esmtp.lib.suffix" | |
value="d"> | |
<or> | |
<contains string="${esmtp.lib.file}" | |
substring="/lib${esmtp.lib.name}d." | |
/> | |
<contains string="${esmtp.lib.file}" | |
substring="/${esmtp.lib.name}d." | |
/> | |
</or> | |
</condition> | |
<condition property="esmtp.lib.suffix" | |
value="D"> | |
<or> | |
<contains string="${esmtp.lib.file}" | |
substring="/lib${esmtp.lib.name}D." | |
/> | |
<contains string="${esmtp.lib.file}" | |
substring="/${esmtp.lib.name}D." | |
/> | |
</or> | |
</condition> | |
<condition property="esmtp.lib.suffix" | |
value=""> | |
<isset property="esmtp.lib.file" /> | |
</condition> | |
<condition property="esmtp.lib.prefix" | |
value="lib"> | |
<or> | |
<contains string="[${esmtp.lib.file}]" | |
substring="/lib${esmtp.lib.name}.lib]" | |
/> | |
</or> | |
</condition> | |
<condition property="esmtp.lib.prefix" | |
value=""> | |
<isset property="esmtp.lib.file" /> | |
</condition> | |
<condition property="esmtp.lib.type" | |
value="shared"> | |
<or> | |
<contains string="${esmtp.lib.file}]" | |
substring=".dylib]" | |
casesensitive="no" | |
/> | |
<contains string="${esmtp.lib.file}]" | |
substring=".so]" | |
casesensitive="no" | |
/> | |
<contains string="${esmtp.lib.file}]" | |
substring=".la]" | |
casesensitive="no" | |
/> | |
<and> | |
<!-- | |
If we have just a .lib, guess based on file size. Import libs should be much | |
smaller. | |
--> | |
<contains string="${esmtp.lib.file}]" | |
substring=".lib]" | |
casesensitive="no" | |
/> | |
<isfileselected file="${esmtp.lib.file}"> | |
<size value="250000" when="less" /> | |
</isfileselected> | |
</and> | |
</or> | |
</condition> | |
<condition property="esmtp.lib.type" | |
value="static"> | |
<isset property="esmtp.lib.file" /> | |
</condition> | |
</target> | |
<target name="find-esmtp" | |
depends="find-esmtp-lib"> | |
<!-- | |
Use character ref to prevent directory name from being changed on global search and | |
replacements. | |
--> | |
<condition property="esmtp.include.dir" | |
value="${esmtp.dir}/include"> | |
<available file="${esmtp.dir}/include/${esmtp.sample.h}" /> | |
</condition> | |
<condition property="esmtp.include.dir" | |
value="${esmtp.dir}"> | |
<available file="${esmtp.dir}/${esmtp.sample.h}" /> | |
</condition> | |
<condition property="esmtp.include.dir" | |
value="${esmtp.dir}/../usr/include"> | |
<available file="${esmtp.dir}/../usr/include/${esmtp.sample.h}" /> | |
</condition> | |
<condition property="esmtp.include.dir" | |
value="${esmtp.src.dir}/include"> | |
<available file="${esmtp.src.dir}/include/${esmtp.sample.h}" /> | |
</condition> | |
<condition property="esmtp.include.dir" | |
value="${esmtp.src.dir}"> | |
<available file="${esmtp.src.dir}/include/${esmtp.sample.h}" /> | |
</condition> | |
<condition property="esmtp.dir" | |
value="${esmtp.src.dir}"> | |
<isset property="esmtp.src.dir" /> | |
</condition> | |
<echo>esmtp-find: | |
esmtp.dir=${esmtp.dir} | |
esmtp.include.dir=${esmtp.include.dir} | |
esmtp.src.dir=${esmtp.src.dir} | |
esmtp.lib.file=${esmtp.lib.file} | |
esmtp.lib.file.dir=${esmtp.lib.file.dir} | |
esmtp.lib.dir=${esmtp.lib.dir} | |
esmtp.lib.prefix=${esmtp.lib.prefix} | |
esmtp.lib.suffix=${esmtp.lib.suffix} | |
esmtp.lib.type=${esmtp.lib.type} | |
</echo> | |
</target> |