This is an automated email from the ASF dual-hosted git repository. tschoening pushed a commit to branch ghpr_14_replace-ant-build-with-cmake in repository https://gitbox.apache.org/repos/asf/logging-log4cxx.git
commit e64b7cf0fbdd2f799cd83a7361d4ceefb75eff84 Author: Stephen Webb <[email protected]> AuthorDate: Fri Jan 31 14:09:59 2020 +1100 Use cmake from maven to build and only use ant for site deployment and release --- build.xml | 1726 +-------------------------------------- pom.xml | 170 +++- src/ant/apr-build.xml | 851 ------------------- src/ant/apr-util-build.xml | 722 ---------------- src/ant/common.xml | 43 - src/ant/esmtp-build.xml | 207 ----- src/ant/find-apr-util.xml | 369 --------- src/ant/find-apr.xml | 370 --------- src/ant/find-libesmtp.xml | 363 -------- src/assembly/source.xml | 43 +- src/site/apt/building/cmake.apt | 75 ++ src/site/apt/building/vcpkg.apt | 41 + src/site/site.xml | 11 +- 13 files changed, 270 insertions(+), 4721 deletions(-) diff --git a/build.xml b/build.xml index f0ffe82..d4d292a 100644 --- a/build.xml +++ b/build.xml @@ -17,50 +17,6 @@ --> <!DOCTYPE project [ -<!ENTITY libsets ' - <libset libs="${apr-util.lib.prefix}${apr-util.lib.name}${apr-util.lib.suffix}" - dir="${apr-util.lib.dir}" - if="apr-util.lib.dir" - /> - <libset libs="${apr-util.lib.prefix}${apr-util.lib.name}${apr-util.lib.suffix}" - unless="apr-util.lib.dir" - /> - <libset libs="${apr.lib.prefix}${apr.lib.name}${apr.lib.suffix}" - dir="${apr.lib.dir}" - if="apr.lib.dir" - /> - <libset libs="${apr.lib.prefix}${apr.lib.name}${apr.lib.suffix}" - unless="apr.lib.dir" - /> - <libset libs="esmtp" - dir="${esmtp.lib.dir}" - if="esmtp.lib.dir" - /> - <libset libs="esmtp" - if="has-libesmtp" - unless="esmtp.lib.dir" - /> - <libset libs="${odbc.lib}" - if="odbc.lib" - /> - <libset libs="${apr-util.dependencies}" - if="apr-util.dependencies" - unless="apr-util-includes-dependencies" - /> - <libset libs="pthread" - if="is-unix" - /> - - <syslibset libs="advapi32 mswsock shell32 ws2_32" - if="is-windows" - /> - <syslibset libs="stdc++" - if="is-gcc" - /> - <syslibset libs="cw32mt" - if="is-bcc" - /> -'> <!ENTITY license ' Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with @@ -78,21 +34,14 @@ limitations under the License. '> <!ENTITY common SYSTEM 'src/ant/common.xml'> -<!ENTITY find-apr SYSTEM 'src/ant/find-apr.xml'> -<!ENTITY find-apr-util SYSTEM 'src/ant/find-apr-util.xml'> -<!ENTITY find-libesmtp SYSTEM 'src/ant/find-libesmtp.xml'> ]> <!-- - This file builds log4cxx using Apache Ant (http://ant.apache.org) - and the C++ compilation tasks from http://ant-contrib.sourceforge.net. + This file releases log4cxx using Apache Ant (http://ant.apache.org) --> -<project name="log4cxx" default="check"> +<project name="log4cxx" default="usage"> &common; - &find-apr; - &find-apr-util; - &find-libesmtp; <property name="base.dir" location="." @@ -149,27 +98,6 @@ <property name="lib.prefix" value="" /> - <property name="enable-char" - value="1" - /> - <property name="enable-wchar_t" - value="1" - /> - <property name="enable-unichar" - value="0" - /> - <property name="enable-cfstring" - value="0" - /> - <property name="with-charset" - value="auto" - /> - <property name="with-SMTP" - value="no" - /> - <property name="with-ODBC" - value="auto" - /> <propertyregex property="version.major" input="${project.version}" @@ -206,106 +134,20 @@ /> <target name="usage" - description="Describes usage of the build script"> + description="Describes usage of the release script"> <echo> - Ant build file for log4cxx + Ant file for releasing log4cxx Common invocations: - > ant - - will attempt to locate APR and APR-util in /usr, /usr/local/apr and .. - - Builds and tests log4cxx. - - > ant -Dwith-apr=APRPATH -Dwith-apr-util=APUPATH - - Builds and tests log4cxx using APR and APR-Util at specified location - > ant -p Displays available targets - - > ant build-projects-vc6 - - Builds Microsoft Visual Studio 6 projects. - -vc7, -vc8, -vc9 and -xcode for Visual Studio .NET, 2005, 2008 and Apple Xcode 2 and later. - respectively. - - Command line options: - - -Ddebug=[true|false] - -Doptimize=[speed|size|none] - -Dversion=n.n.n - -Dlib.type=[shared|static] (Library type to create, default=shared) - -Denable-char=[0, 1] (expose char* API, default=1) - -Denable-wchar_t=[0, 1] (expose wchar_t* API, default=1) - -Denable-unichar=[0, 1] (expose UniChar API, default=0) - -Denable-cfstring[0, 1] (expose CFString API, default=0) - -Dwith-charset=[auto|utf-8|iso-8859-1|usascii|ebcdic] (default=auto) - -Dwith-logchar=[utf-8|wchar_t|unichar] (default=utf-8 on Unix, wchar_t on Windows) - -Dwith-apr=APRPATH - -Dwith-apr-util=PATH - -Dwith-SMTP=[libesmtp, no] (default no) - -Dwith-ODBC=[auto, unixODBC, iODBC, Microsoft, no] (default=auto resulting in no on Unix, Microsoft on Windows) </echo> </target> <target name="init" depends="common-init"> - <property name="log4cxx.lib.dir" - value="${executable.dir}" - /> - <mkdir dir="${log4cxx.lib.dir}" /> - - <condition property="with-logchar" - value="wchar_t"> - <isset property="is-windows" /> - </condition> - <property name="with-logchar" - value="utf-8" - /> - - <condition property="has-libesmtp" - value="1"> - <equals arg1="${with-SMTP}" - arg2="libesmtp" - /> - </condition> - - <condition property="odbc.lib" - value="iodbc"> - <equals arg1="${with-ODBC}" - arg2="iODBC" - /> - </condition> - - <condition property="odbc.lib" - value="unixodbc"> - <equals arg1="${with-ODBC}" - arg2="unixODBC" - /> - </condition> - - <condition property="odbc.lib" - value="odbc32"> - <and> - <not> - <equals arg1="${with-ODBC}" - arg2="no" - /> - </not> - <isset property="is-windows" /> - </and> - </condition> - - <condition property="has-ODBC" - value="1"> - <isset property="odbc.lib" /> - </condition> - <property name="has-ODBC" - value="0" - /> <condition property="force-ant" value="1"> @@ -316,494 +158,6 @@ <echo>force-ant: ${force-ant}</echo> </target> - <target name="clean" - depends="init" - description="Removes built files"> - <delete dir="${target.dir}" /> - <delete> - <fileset dir="${include.dir}/log4cxx" - includes="**/log4cxx.h" - /> - </delete> - </target> - - <target name="unix-configure" - if="is-unix"> - <copy tofile="${include.dir}/log4cxx/log4cxx.tmp" - file="${include.dir}/log4cxx/log4cxx.h.in" - overwrite="true" - /> - <copy tofile="${include.dir}/log4cxx/private/log4cxx_private.tmp" - file="${include.dir}/log4cxx/private/log4cxx_private.h.in" - overwrite="true" - /> - </target> - - <target name="win-configure" - if="is-windows"> - <copy tofile="${include.dir}/log4cxx/log4cxx.tmp" - file="${include.dir}/log4cxx/log4cxx.hw" - overwrite="true" - /> - <copy tofile="${include.dir}/log4cxx/private/log4cxx_private.tmp" - file="${include.dir}/log4cxx/private/log4cxx_private.hw" - overwrite="true" - /> - </target> - - <target name="configure" - depends="init, unix-configure, win-configure"> - <echo message="Configuring with-logchar=${with-logchar}" /> - <echo message="Configuring with-charset=${with-charset}" /> - <echo message="Configuring with-SMTP=${with-SMTP}" /> - <echo message="Configuring with-ODBC=${with-ODBC}" /> - <echo message="Configuring enable-char=${enable-char}" /> - <echo message="Configuring enable-wchar_t=${enable-wchar_t}" /> - <echo message="Configuring enable-unichar=${enable-unichar}" /> - <echo message="Configuring enable-cfstring=${enable-cfstring}" /> - - <condition property="logchar_is_utf8" - value="1"> - <equals arg1="${with-logchar}" - arg2="utf-8" - /> - </condition> - <property name="logchar_is_utf8" - value="0" - /> - - <condition property="logchar_is_unichar" - value="1"> - <equals arg1="${with-logchar}" - arg2="unichar" - /> - </condition> - <property name="logchar_is_unichar" - value="0" - /> - - <condition property="logchar_is_wchar" - value="1"> - <equals arg1="${with-logchar}" - arg2="wchar_t" - /> - </condition> - <property name="logchar_is_wchar" - value="0" - /> - - <replaceregexp file="${include.dir}/log4cxx/log4cxx.tmp" - match="@LOGCHAR_IS_UNICHAR@" - replace="${logchar_is_unichar}" - /> - - <replaceregexp file="${include.dir}/log4cxx/log4cxx.tmp" - match="@LOGCHAR_IS_UTF8@" - replace="${logchar_is_utf8}" - /> - - <replaceregexp file="${include.dir}/log4cxx/log4cxx.tmp" - match="@LOGCHAR_IS_WCHAR@" - replace="${logchar_is_wchar}" - /> - - <condition property="charset_is_utf8" - value="1"> - <equals arg1="${with-charset}" - arg2="utf-8" - /> - </condition> - <property name="charset_is_utf8" - value="0" - /> - - <condition property="charset_is_iso-8859-1" - value="1"> - <equals arg1="${with-charset}" - arg2="iso-8859-1" - /> - </condition> - <property name="charset_is_iso-8859-1" - value="0" - /> - - <condition property="charset_is_usascii" - value="1"> - <equals arg1="${with-charset}" - arg2="usascii" - /> - </condition> - <property name="charset_is_usascii" - value="0" - /> - - <condition property="charset_is_ebcdic" - value="1"> - <equals arg1="${with-charset}" - arg2="ebcdic" - /> - </condition> - <property name="charset_is_ebcdic" - value="0" - /> - - <replaceregexp file="${include.dir}/log4cxx/private/log4cxx_private.tmp" - match="@CHARSET_UTF8@" - replace="${charset_is_utf8}" - /> - - <replaceregexp file="${include.dir}/log4cxx/private/log4cxx_private.tmp" - match="@CHARSET_ISO88591@" - replace="${charset_is_iso-8859-1}" - /> - <replaceregexp file="${include.dir}/log4cxx/private/log4cxx_private.tmp" - match="@CHARSET_USASCII@" - replace="${charset_is_usascii}" - /> - <replaceregexp file="${include.dir}/log4cxx/private/log4cxx_private.tmp" - match="@CHARSET_EBCDIC@" - replace="${charset_is_ebcdic}" - /> - - <replaceregexp file="${include.dir}/log4cxx/log4cxx.tmp" - match="@CHAR_API@" - replace="${enable-char}" - /> - - <replaceregexp file="${include.dir}/log4cxx/log4cxx.tmp" - match="@WCHAR_T_API@" - replace="${enable-wchar_t}" - /> - - <replaceregexp file="${include.dir}/log4cxx/log4cxx.tmp" - match="@UNICHAR_API@" - replace="${enable-unichar}" - /> - - <replaceregexp file="${include.dir}/log4cxx/log4cxx.tmp" - match="@CFSTRING_API@" - replace="${enable-cfstring}" - /> - - <replaceregexp file="${include.dir}/log4cxx/private/log4cxx_private.tmp" - match="@HAS_SYSLOG@" - replace="1" - /> - <replaceregexp file="${include.dir}/log4cxx/private/log4cxx_private.tmp" - match="@HAS_STD_LOCALE@" - replace="1" - /> - <replaceregexp file="${include.dir}/log4cxx/private/log4cxx_private.tmp" - match="@HAS_MBSRTOWCS@" - replace="1" - /> - <replaceregexp file="${include.dir}/log4cxx/private/log4cxx_private.tmp" - match="@HAS_WCSTOMBS@" - replace="1" - /> - <condition property="has-fwide" value="0"> - <isset property="is-cygwin" /> - </condition> - <property name="has-fwide" - value="1" - /> - <replaceregexp file="${include.dir}/log4cxx/private/log4cxx_private.tmp" - match="@HAS_FWIDE@" - replace="${has-fwide}" - /> - - <condition property="has-libesmtp-value" value="1"> - <isset property="has-libesmtp" /> - </condition> - <property name="has-libesmtp-value" - value="0" - /> - <replaceregexp file="${include.dir}/log4cxx/private/log4cxx_private.tmp" - match="LOG4CXX_HAVE_LIBESMTP 0" - replace="LOG4CXX_HAVE_LIBESMTP ${has-libesmtp-value}" - /> - <replaceregexp file="${include.dir}/log4cxx/private/log4cxx_private.tmp" - match="@HAS_LIBESMTP@" - replace="${has-libesmtp-value}" - /> - - <replaceregexp file="${include.dir}/log4cxx/private/log4cxx_private.tmp" - match="@HAS_ODBC@" - replace="${has-ODBC}" - /> - - <antcall target="copy-if-changed"> - <param name="tofile" - value="${include.dir}/log4cxx/log4cxx.h" - /> - <param name="file" - value="${include.dir}/log4cxx/log4cxx.tmp" - /> - </antcall> - <delete file="${include.dir}/log4cxx/log4cxx.tmp" /> - <antcall target="copy-if-changed"> - <param name="tofile" - value="${include.dir}/log4cxx/private/log4cxx_private.h" - /> - <param name="file" - value="${include.dir}/log4cxx/private/log4cxx_private.tmp" - /> - </antcall> - <delete file="${include.dir}/log4cxx/private/log4cxx_private.tmp" /> - </target> - - <target name="build-apr" - depends="find-apr" - unless="apr.lib.file"> - <fail unless="apr.src.dir">Could not locate apr library or source.</fail> - - <property name="apr.lib.type" - value="static" - /> - <property name="apr.lib.prefix" - value="" - /> - <property name="apr.lib.suffix" - value="" - /> - <property name="project.type" - value="msvc6" - /> - - <ant antfile="src/ant/apr-build.xml" - target="build" - inheritAll="false"> - <property name="basedir" - value="${apr.src.dir}" - /> - <property name="target.dir" - value="${target.dir}" - /> - <property name="debug" - value="${debug}" - /> - <property name="lib.prefix" - value="${apr.lib.prefix}" - /> - <property name="lib.suffix" - value="${apr.lib.suffix}" - /> - <property name="compiler" - value="${compiler}" - /> - <property name="runtime" - value="${runtime}" - /> - <property name="lib.type" - value="${apr.lib.type}" - /> - <property name="project.type" - value="${project.type}" - /> - <property name="projects.dir" - value="${projects.dir}" - /> - <property name="project.if.value" - value="${project.if}" - /> - <property name="use-pic" - value="${use-pic}" - /> - <property name="os.family" - value="${os.family}" - /> - </ant> - - <condition property="apr.lib.dir" - value="${target.dir}/${debug.release}/shared"> - <equals arg1="${apr.lib.type}" - arg2="shared" - /> - </condition> - - <property name="apr.lib.dir" - location="${target.dir}/${debug.release}/static" - /> - <property name="apr.project.file" - location="${projects.dir}/apr" - /> - </target> - - <target name="build-apr-util" - depends="build-apr, find-apr-util" - unless="apr-util.lib.file"> - <fail unless="apr-util.src.dir">Could not locate apr-util library or source.</fail> - - <property name="apr-util.lib.type" - value="${apr.lib.type}" - /> - <property name="apr-util.lib.prefix" - value="" - /> - <property name="apr-util.lib.suffix" - value="" - /> - <property name="project.type" - value="msvc6" - /> - <!-- built this way, apr-util will include expat and doesn't need an external reference --> - <property name="apr-util-includes-dependencies" - value="1" - /> - - <ant antfile="src/ant/apr-util-build.xml" - target="build" - inheritAll="false"> - <property name="target.dir" - value="${target.dir}" - /> - <property name="basedir" - value="${apr-util.src.dir}" - /> - <property name="debug" - value="${debug}" - /> - <property name="lib.prefix" - value="${apr-util.lib.prefix}" - /> - <property name="lib.suffix" - value="${apr-util.lib.suffix}" - /> - <property name="compiler" - value="${compiler}" - /> - <property name="runtime" - value="${runtime}" - /> - <property name="apr.include.dir" - value="${apr.include.dir}" - /> - <property name="apr.lib.dir" - value="${apr.lib.dir}" - /> - <property name="apr.lib.type" - value="${apr.lib.type}" - /> - <property name="lib.type" - value="${apr-util.lib.type}" - /> - <property name="project.type" - value="${project.type}" - /> - <property name="projects.dir" - value="${projects.dir}" - /> - <property name="project.if.value" - value="${project.if}" - /> - <property name="use-pic" - value="${use-pic}" - /> - <property name="os.family" - value="${os.family}" - /> - </ant> - - <condition property="apr-util.lib.dir" - value="${target.dir}/${debug.release}/shared"> - <equals arg1="${apr-util.lib.type}" - arg2="shared" - /> - </condition> - <property name="apr-util.lib.dir" - location="${target.dir}/${debug.release}/static" - /> - <property name="apr-util.project.file" - location="${projects.dir}/apr-util" - /> - </target> - - <target name="build-libesmtp" - depends="find-esmtp" - if="has-libesmtp" - unless="esmtp.lib.file"> - <fail unless="esmtp.src.dir">Could not locate libesmtp library or source.</fail> - - <property name="esmtp.lib.type" - value="static" - /> - <property name="esmtp.lib.prefix" - value="" - /> - <property name="esmtp.lib.suffix" - value="" - /> - <property name="project.type" - value="msvc6" - /> - <condition property="esmtp.compiler" - value="gcc"> - <equals arg1="${compiler}" - arg2="g++" - /> - </condition> - <property name="esmtp.compiler" - value="${compiler}" - /> - - <ant antfile="src/ant/esmtp-build.xml" - target="build" - inheritAll="false"> - <property name="target.dir" - value="${target.dir}" - /> - <property name="basedir" - value="${esmtp.src.dir}" - /> - <property name="debug" - value="${debug}" - /> - <property name="lib.prefix" - value="${esmtp.lib.prefix}" - /> - <property name="lib.suffix" - value="${esmtp.lib.suffix}" - /> - <property name="compiler" - value="${esmtp.compiler}" - /> - <property name="runtime" - value="${runtime}" - /> - <property name="lib.type" - value="${esmtp.lib.type}" - /> - <property name="project.type" - value="${project.type}" - /> - <property name="projects.dir" - value="${projects.dir}" - /> - <property name="project.if.value" - value="${project.if}" - /> - <property name="use-pic" - value="${use-pic}" - /> - <property name="os.family" - value="${os.family}" - /> - </ant> - - <condition property="esmtp.lib.dir" - value="${target.dir}/${debug.release}/shared"> - <equals arg1="${esmtp.lib.type}" - arg2="shared" - /> - </condition> - <property name="esmtp.lib.dir" - location="${target.dir}/${debug.release}/static" - /> - <property name="esmtp.project.file" - location="${projects.dir}/libesmtp" - /> - </target> - <target name="make-header-check"> <echo file="${header}.cpp" append="false"> @@ -813,7 +167,6 @@ </target> <target name="header-check" - depends="build-apr-util, configure" description="Checks headers against Effective C++ guidelines"> <fail unless="is-gcc">Requires GCC compiler</fail> @@ -837,574 +190,39 @@ includes="**/*.h" /> </path> - </foreach> - <property name="project.type" - value="msvc6" - /> - <cc objdir="${target.dir}/header-check" - name="gcc" - exceptions="true" - subsystem="gui" - optimize="${optimize}" - multithreaded="true" - relentless="true" - debug="${debug}" - projectsOnly="${projectsOnly}"> - - <compilerarg value="-Weffc++" - /> - <compilerarg value="-Wall" - /> - <compilerarg value="${pic-option}" - if="pic-option" - /> - <fileset dir="${target.dir}/header-check" - includes="**/*.cpp" - excludes="log4cxx/private/*.cpp **/aprinitializer.h.cpp" - /> - <includepath path="${include.dir}" /> - <project outfile="${projects.dir}/projects/header-check" - type="${project.type}" - if="project.if" - /> - </cc> - </target> - - <target name="update-rc-files-version-info" - description="Provides current version information for Windows resource files." - if="is-windows" - unless="is-bcc"> - <replaceregexp file="${resources.dir}/log4cxx.rc" - match="FILEVERSION \d+, \d+, \d+, \d+" - replace="FILEVERSION ${version.major}, ${version.minor}, 0, ${version.rev}" - /> - <replaceregexp file="${resources.dir}/log4cxx.rc" - match="PRODUCTVERSION \d+, \d+, \d+, \d+" - replace="PRODUCTVERSION ${version.major}, ${version.minor}, 0, ${version.rev}" - /> - <replaceregexp file="${resources.dir}/log4cxx.rc" - match=""FileVersion", "\d+, \d+, \d+, \d+"" - replace=""FileVersion", "${version.major}, ${version.minor}, 0, ${version.rev}"" - /> - <replaceregexp file="${resources.dir}/log4cxx.rc" - match=""ProductVersion", "\d+, \d+, \d+, \d+"" - replace=""ProductVersion", "${version.major}, ${version.minor}, 0, ${version.rev}"" - /> - </target> - - <target name="restore-rc-files-version-info" - description="Restores version information for Windows resource files to their default values." - if="is-windows" - unless="is-bcc"> - <replaceregexp file="${resources.dir}/log4cxx.rc" - match="FILEVERSION \d+, \d+, \d+, \d+" - replace="FILEVERSION 0, 0, 0, 0" - /> - <replaceregexp file="${resources.dir}/log4cxx.rc" - match="PRODUCTVERSION \d+, \d+, \d+, \d+" - replace="PRODUCTVERSION 0, 0, 0, 0" - /> - <replaceregexp file="${resources.dir}/log4cxx.rc" - match=""FileVersion", "\d+, \d+, \d+, \d+"" - replace=""FileVersion", "0, 0, 0, 0"" - /> - <replaceregexp file="${resources.dir}/log4cxx.rc" - match=""ProductVersion", "\d+, \d+, \d+, \d+"" - replace=""ProductVersion", "0, 0, 0, 0"" - /> - </target> - - <target name="build-lib" - depends="build-apr-util, build-libesmtp, configure" - description="Build log4cxx library"> - <mkdir dir="${log4cxx.lib.dir}/log4cxx_obj" /> - - <condition property="apr-static" - value="1"> - <equals arg1="${apr.lib.type}" - arg2="static" - /> - </condition> - - <condition property="apr-util-static" - value="1"> - <equals arg1="${apr-util.lib.type}" - arg2="static" - /> - </condition> - - <condition property="apr-libs-match" - value="1"> - <equals arg1="${apr.lib.type}" - arg2="${apr-util.lib.type}" - /> - </condition> - - <fail unless="apr-libs-match"> - apr is ${apr.lib.type} and apr-util is ${apr-util.lib.type}, must be same type. - </fail> - <property name="lib.name" - value="log4cxx" - /> - <property name="lib.prefix" - value="" - /> - <property name="lib.suffix" - value="" - /> - - <condition property="apr-util.dependencies" - value="expat iconv"> - <equals arg1="${apr-util.lib.type}" - arg2="static" - /> - </condition> - - <property name="project.compiler" - value="${compiler}" - /> - <property name="project.type" - value="msvc6" - /> - - <condition property="resource.compiler" - value="windres"> - <isset property="is-gcc" /> - </condition> - <condition property="resource.compiler" - value="brc"> - <isset property="is-bcc" /> - </condition> - <property name="resource.compiler" - value="msrc" - /> - - <antcall target="update-rc-files-version-info" /> - - <cc name="${project.compiler}" - exceptions="true" - outfile="${log4cxx.lib.dir}/${lib.prefix}${lib.name}${lib.suffix}" - outputfileproperty="log4cxx.lib.file" - subsystem="console" - multithreaded="true" - runtime="${runtime}" - outtype="${lib.type}" - objdir="${log4cxx.lib.dir}/log4cxx_obj" - debug="${debug}" - projectsOnly="${projectsOnly}" - failonerror="true"> - - <!-- brc aborts with an access violation. --> - <compiler name="${resource.compiler}" - if="is-windows" - unless="is-bcc"> - <includepath path="${resources.dir}" /> - <fileset dir="${resources.dir}" - includes="*.rc" - /> - </compiler> - - <fileset dir="${src.dir}" - includes="*.cpp" - /> - <fileset dir="${include.dir}" - includes="**/*.h" - /> - - <includepath path="${include.dir}" - /> - <includepath path="${apr.include.dir}" - if="apr.include.dir" - /> - <includepath path="${apr-util.include.dir}" - if="apr-util.include.dir" - /> - <includepath path="${esmtp.include.dir}" - if="esmtp.include.dir" - /> - - <defineset define="LOG4CXX" - /> - <defineset define="LOG4CXX_STATIC" - if="is-static" - /> - <defineset define="APR_DECLARE_STATIC" - if="apr-static" - /> - <defineset define="APU_DECLARE_STATIC" - if="apr-util-static" - /> - <defineset define="WIN32 _USRDLL DLL_EXPORTS" - if="is-windows" - /> - - <compilerarg value="${pic-option}" - if="pic-option" - /> - - &libsets; - - <project type="${project.type}" - outfile="${projects.dir}/projects/${lib.name}" - if="project.if"> - <comment>&license;</comment> - <dependency file="${projects.dir}/apr" /> - <dependency file="${projects.dir}/xml" /> - <dependency file="${projects.dir}/aprutil" depends="apr,xml" /> - <dependency name="${projects.dir}/libesmtp" /> - </project> - </cc> - - <antcall target="restore-rc-files-version-info" /> - - <!-- copy liblog4cxx.so to log4cxx.dll for MinGW and Cygwin --> - <condition property="copy.log4cxx" - value="${log4cxx.lib.dir}/${lib.prefix}${lib.name}${lib.suffix}.dll"> - <and> - <os family="windows" /> - <isset property="is-gcc" /> - <equals arg1="${lib.type}" arg2="shared" /> - <isset property="log4cxx.lib.file" /> - </and> - </condition> - </target> - - <target name="build" - depends="build-lib" - if="copy.log4cxx"> - <copy file="${log4cxx.lib.file}" - tofile="${copy.log4cxx}" - overwrite="true" - preservelastmodified="true" - /> - </target> - - <target name="build-example"> - <mkdir dir="${log4cxx.lib.dir}/${example.name}_obj" /> - - <property name="project.compiler" - value="${compiler}" - /> - <property name="project.type" - value="msvc6" - /> - <property name="example.include.dir" - value="${example.src.dir}" - /> - - <cc name="${project.compiler}" - exceptions="true" - outfile="${log4cxx.lib.dir}/${example.name}" - subsystem="console" - multithreaded="true" - runtime="${runtime}" - outtype="executable" - objdir="${log4cxx.lib.dir}/${example.name}_obj" - debug="${debug}" - projectsOnly="${projectsOnly}"> - - <fileset dir="${example.src.dir}" - includes="${example.includes}" - /> - - <includepath path="${include.dir}" /> - <includepath path="${example.include.dir}" /> - <includepath path="${apr.include.dir}" if="apr.include.dir" /> - - <defineset define="WIN32" - if="is-windows" - /> - <defineset define="LOG4CXX_STATIC" - if="is-static" - /> - <defineset define="APR_DECLARE_STATIC" - if="apr-static" - /> - - <compilerarg value="${pic-option}" if="pic-option" /> - - <libset libs="${lib.prefix}${lib.name}${lib.suffix}" - dir="${log4cxx.lib.dir}" - /> - &libsets; - - <project outfile="${projects.dir}/projects/${example.name}" - type="${project.type}" - if="project.if"> - <comment>&license;</comment> - <dependency file="${projects.dir}/apr" /> - <dependency file="${projects.dir}/xml" /> - <dependency name="${projects.dir}/aprutil" depends="apr,xml" /> - <dependency name="${projects.dir}/libesmtp" /> - <dependency file="${projects.dir}/log4cxx" depends="apr,aprutil,xml" /> - </project> - </cc> - </target> - - <target name="run-example"> - <!-- remove any stray configuration files --> - <delete> - <fileset dir="${log4cxx.lib.dir}" - includes="log4*.properties log4*.xml" - /> - </delete> - <exec executable="${log4cxx.lib.dir}/${example.name}" - dir="${log4cxx.lib.dir}" - failonerror="true"> - <env key="DYLD_LIBRARY_PATH" - value="${log4cxx.lib.dir}:${apr.lib.dir}:${apr-util.lib.dir}:${env.DYLD_LIBRARY_PATH}" - /> - <env key="LD_LIBRARY_PATH" - value="${log4cxx.lib.dir}:${apr.lib.dir}:${apr-util.lib.dir}:${env.LD_LIBRARY_PATH}" - /> - <env key="Path" - value="${env.Path}" - /> - </exec> - </target> - - <target name="build-delayedloop" - depends="build"> - <antcall target="build-example"> - <param name="example.src.dir" - value="${examples.dir}" - /> - <param name="example.name" - value="delayedloop" - /> - <param name="example.includes" - value="delayedloop.cpp" - /> - </antcall> - </target> - - <target name="build-trivial" - depends="build"> - <antcall target="build-example"> - <param name="example.src.dir" - value="${examples.dir}" - /> - <param name="example.name" - value="trivial" - /> - <param name="example.includes" - value="trivial.cpp" - /> - </antcall> - </target> - - <target name="build-console" - depends="build"> - <antcall target="build-example"> - <param name="example.src.dir" - value="${examples.dir}" - /> - <param name="example.name" - value="console" - /> - <param name="example.includes" - value="console.cpp" - /> - </antcall> - </target> - - <target name="build-stream" - depends="build"> - <antcall target="build-example"> - <param name="example.src.dir" - value="${examples.dir}" - /> - <param name="example.name" - value="stream" - /> - <param name="example.includes" - value="stream.cpp" - /> - </antcall> - </target> - - <target name="build-examples" - depends="build-delayedloop, build-trivial, build-stream, build-console" - description="Builds example programs" - /> - - <target name="build-unittest" - depends="build" - description="Builds unit test app"> - <mkdir dir="${log4cxx.lib.dir}/testsuite_obj" /> - - <property name="project.compiler" - value="${compiler}" - /> - <property name="project.type" - value="msvc6" - /> - - <cc name="${project.compiler}" - exceptions="true" - outfile="${log4cxx.lib.dir}/testsuite" - subsystem="console" - multithreaded="true" - runtime="${runtime}" - outputfileproperty="testsuite.exe" - outtype="executable" - objdir="${log4cxx.lib.dir}/testsuite_obj" - debug="${debug}" - projectsOnly="${projectsOnly}" - failonerror="true"> - - <fileset dir="${tests.cpp.dir}" - includes="**/*.cpp **/*.c **/*.h" - /> - - <includepath path="${include.dir}" - /> - <includepath path="${apr.include.dir}" - if="apr.include.dir" - /> - <includepath path="${apr-util.include.dir}" - if="apr-util.include.dir" - /> - - <defineset define="LOG4CXX_STATIC" - if="is-static" - /> - <defineset define="APR_DECLARE_STATIC" - if="apr-static" - /> - <defineset define="APU_DECLARE_STATIC" - if="apr-util-static" - /> - <defineset define="WIN32" - if="is-windows" - /> - - <compilerarg value="${pic-option}" - if="pic-option" - /> - - <libset libs="${lib.prefix}${lib.name}${lib.suffix}" - dir="${log4cxx.lib.dir}" - /> - &libsets; - - <project outfile="${projects.dir}/projects/testsuite" - type="${project.type}" - if="project.if"> - <comment>&license;</comment> - - <dependency file="${projects.dir}/apr" /> - <dependency file="${projects.dir}/xml" /> - <dependency file="${projects.dir}/aprutil" depends="apr,xml" /> - <dependency name="${projects.dir}/libesmtp" /> - <dependency file="${projects.dir}/log4cxx" depends="apr,aprutil,libesmtp" /> - </project> - </cc> - </target> - - <target name="build-standalone-unittest" - description="Builds a unit tests + log4cxx executable" - depends="build-apr-util, build-libesmtp, configure"> - <mkdir dir="${executable.dir}/static/testsuite-standalone_obj" /> - - <property name="project.compiler" - value="${compiler}" - /> + </foreach> <property name="project.type" value="msvc6" /> - <condition property="resource.compiler" - value="windres"> - <isset property="is-gcc" /> - </condition> - <property name="resource.compiler" - value="msrc" - /> - - <cc name="${project.compiler}" + <cc objdir="${target.dir}/header-check" + name="gcc" exceptions="true" - outfile="${executable.dir}/static/testsuite-standalone" - subsystem="console" + subsystem="gui" + optimize="${optimize}" multithreaded="true" - runtime="${runtime}" - outputfileproperty="testsuite-standalone.exe" - outtype="executable" - objdir="${executable.dir}/static/testsuite-standalone_obj" + relentless="true" debug="${debug}" projectsOnly="${projectsOnly}"> - <compiler name="${resource.compiler}" - if="is-windows"> - <includepath path="${resources.dir}" /> - <fileset dir="${resources.dir}" - includes="*.rc" - /> - </compiler> - - <fileset dir="${src.dir}" - includes="*.cpp" - excludes="**/iconv_module.cpp" - /> - <fileset dir="${include.dir}" - includes="**/*.h" - /> - <fileset dir="${tests.cpp.dir}" - includes="**/*.cpp **/*.c **/*.h" - /> - - <includepath path="${include.dir}" /> - <includepath path="${apr.include.dir}" - if="apr.include.dir" - /> - <includepath path="${apr-util.include.dir}" - if="apr-util.include.dir" - /> - <includepath path="${esmtp.include.dir}" - if="esmtp.include.dir" - /> - - <defineset define="LOG4CXX" - /> - <defineset define="APR_DECLARE_STATIC" - if="apr-static" - /> - <defineset define="APU_DECLARE_STATIC" - if="apr-util-static" + <compilerarg value="-Weffc++" /> - <defineset define="WIN32" - if="is-windows" + <compilerarg value="-Wall" /> - <compilerarg value="${pic-option}" if="pic-option" /> - &libsets; - + <fileset dir="${target.dir}/header-check" + includes="**/*.cpp" + excludes="log4cxx/private/*.cpp **/aprinitializer.h.cpp" + /> <includepath path="${include.dir}" /> - <includepath path="${apr.include.dir}" /> - - <defineset define="LOG4CXX" /> - - <libset libs="cw32mt" if="is-bcc" /> - - <project outfile="${projects.dir}/projects/testsuite-standalone" + <project outfile="${projects.dir}/projects/header-check" type="${project.type}" - if="project.if"> - <comment>&license;</comment> - - <dependency file="${projects.dir}/apr" /> - <dependency file="${projects.dir}/xml" /> - <dependency file="${projects.dir}/aprutil" depends="apr,xml" /> - <dependency name="${projects.dir}/libesmtp" /> - </project> + if="project.if" + /> </cc> </target> - <target name="build-all" - depends="build-examples, build-unittest" - description="Builds all artifacts" - /> - <target name="clean-output" depends="init"> <delete> @@ -1414,229 +232,8 @@ </delete> </target> - <target name="run-defaultinit-unittest" - depends="build-unittest"> - <antcall target="run-defaultinit-log4X"> - <param name="config" - value="log4j" - /> - </antcall> - <antcall target="run-defaultinit-log4X"> - <param name="config" - value="log4cxx" - /> - </antcall> - </target> - - <target name="run-defaultinit-log4X"> - <mkdir dir="${tests.output.dir}" /> - - <!-- test of log4j.properties --> - <delete> - <fileset dir="${log4cxx.lib.dir}" - includes="*.properties *.xml" - /> - </delete> - <exec executable="${testsuite.exe}" - dir="${log4cxx.lib.dir}" - failonerror="true"> - <arg value="-v" /> - <arg value="testcase1" /> - - <env key="DYLD_LIBRARY_PATH" - value="${log4cxx.lib.dir}:${apr.lib.dir}:${apr-util.lib.dir}:${env.DYLD_LIBRARY_PATH}" - /> - <env key="LD_LIBRARY_PATH" - value="${log4cxx.lib.dir}:${apr.lib.dir}:${apr-util.lib.dir}:${env.LD_LIBRARY_PATH}" - /> - </exec> - - <copy tofile="${log4cxx.lib.dir}/${config}.xml" - file="${tests.resources.dir}/input/xml/defaultInit.xml" - overwrite="true" - /> - <exec executable="${testsuite.exe}" - dir="${log4cxx.lib.dir}" - failonerror="true"> - <arg value="-v" /> - <arg value="testcase2" /> - - <env key="DYLD_LIBRARY_PATH" - value="${log4cxx.lib.dir}:${apr.lib.dir}:${apr-util.lib.dir}:${env.DYLD_LIBRARY_PATH}" - /> - <env key="LD_LIBRARY_PATH" - value="${log4cxx.lib.dir}:${apr.lib.dir}:${apr-util.lib.dir}:${env.LD_LIBRARY_PATH}" - /> - </exec> - <delete> - <fileset dir="${log4cxx.lib.dir}" - includes="*.properties *.xml" - /> - </delete> - - <copy tofile="${log4cxx.lib.dir}/${config}.properties" - file="${tests.resources.dir}/input/defaultInit3.properties" - overwrite="true" - /> - <exec executable="${testsuite.exe}" - dir="${log4cxx.lib.dir}" - failonerror="true"> - <arg value="-v" /> - <arg value="testcase3" /> - - <env key="DYLD_LIBRARY_PATH" - value="${log4cxx.lib.dir}:${apr.lib.dir}:${apr-util.lib.dir}:${env.DYLD_LIBRARY_PATH}" - /> - <env key="LD_LIBRARY_PATH" - value="${log4cxx.lib.dir}:${apr.lib.dir}:${apr-util.lib.dir}:${env.LD_LIBRARY_PATH}" - /> - </exec> - <delete> - <fileset dir="${log4cxx.lib.dir}" - includes="*.properties *.xml" - /> - </delete> - - <copy file="${tests.resources.dir}/input/xml/defaultInit.xml" - tofile="${log4cxx.lib.dir}/${config}.xml" - /> - <copy file="${tests.resources.dir}/input/defaultInit3.properties" - tofile="${log4cxx.lib.dir}/${config}.properties" - /> - <exec executable="${testsuite.exe}" - dir="${log4cxx.lib.dir}" - failonerror="true"> - <arg value="-v" /> - <arg value="testcase4" /> - - <env key="LD_LIBRARY_PATH" - value="${log4cxx.lib.dir}:${apr.lib.dir}:${apr-util.lib.dir}:${env.LD_LIBRARY_PATH}" - /> - <env key="DYLD_LIBRARY_PATH" - value="${log4cxx.lib.dir}:${apr.lib.dir}:${apr-util.lib.dir}:${env.DYLD_LIBRARY_PATH}" - /> - </exec> - <delete> - <fileset dir="${log4cxx.lib.dir}" - includes="*.properties *.xml" - /> - </delete> - </target> - - <target name="run-unittest" - depends="build-unittest, run-defaultinit-unittest, clean-output" - description="Runs unit test"> - <property environment="env" /> - <mkdir dir="${tests.output.dir}" /> - <delete> - <fileset dir="${tests.output.dir}" - includes="*" - /> - </delete> - - <exec executable="${testsuite.exe}" - dir="${tests.resources.dir}" - failonerror="true"> - <arg value="-v" /> - - <env key="TOTO" - value="wonderful" - /> - <env key="key1" - value="value1" - /> - <env key="key2" - value="value2" - /> - <env key="LD_LIBRARY_PATH" - value="${log4cxx.lib.dir}:${apr.lib.dir}:${apr-util.lib.dir}:${env.LD_LIBRARY_PATH}" - /> - <env key="DYLD_LIBRARY_PATH" - value="${log4cxx.lib.dir}:${apr.lib.dir}:${apr-util.lib.dir}:${env.DYLD_LIBRARY_PATH}" - /> - <env key="Path" - value="${log4cxx.lib.dir};${env.Path}" - /> - </exec> - - <available property="dom3-status" - value="" - file="src/test/resources/output/dom³" - /> - <available property="dom4-status" - value="" - file="src/test/resources/output/dom㆕" - /> - - <property name="dom3-status" - value="NOT" - /> - <property name="dom4-status" - value="NOT" - /> - - <echo>output/dom³ was ${dom3-status} created in DOMTestCase::test3</echo> - <echo>output/dom㆕ was ${dom4-status} created in DOMTestCase::test4</echo> - </target> - - <target name="run-standalone-unittest" - depends="build-standalone-unittest, clean-output" - description="Runs standalone unit test"> - <property environment="env" /> - <mkdir dir="${tests.output.dir}" /> - <delete> - <fileset dir="${tests.output.dir}" - includes="*" - /> - </delete> - - <exec executable="${log4cxx-standalone-test.exe}" - dir="${tests.resources.dir}" - failonerror="true"> - <arg value="-v" /> - - <env key="TOTO" - value="wonderful" - /> - <env key="key1" - value="value1" - /> - <env key="key2" - value="value2" - /> - <env key="DYLD_LIBRARY_PATH" - value="${log4cxx.lib.dir}:${apr.lib.dir}:${apr-util.lib.dir}:${env.DYLD_LIBRARY_PATH}" - /> - <env key="LD_LIBRARY_PATH" - value="${log4cxx.lib.dir}:${apr.lib.dir}:${apr-util.lib.dir}:${env.LD_LIBRARY_PATH}" - /> - <env key="Path" - value="${log4cxx.lib.dir};${env.Path}" - /> - </exec> - - <available property="dom3-status" - value="" - file="src/test/resources/output/dom³" - /> - <available property="dom4-status" - value="" - file="src/test/resources/output/dom㆕" - /> - - <property name="dom3-status" - value="NOT" - /> - <property name="dom4-status" - value="NOT" - /> - - <echo>output/dom³ was ${dom3-status} created in DOMTestCase::test3</echo> - <echo>output/dom㆕ was ${dom4-status} created in DOMTestCase::test4</echo> - </target> - <target name="run-socketserver" - depends="build-unittest, clean-output" + depends="clean-output" description="Runs SocketServer test"> <property environment="env" /> <mkdir dir="${tests.output.dir}" /> @@ -1680,216 +277,6 @@ </parallel> </target> - <target name="build-projects"> - <mkdir dir="${projects.dir}/projects" /> - <property name="project.type" - value="msvc6" - /> - - <antcall target="build-unittest"> - <param name="project.if" - value="true" - /> - <param name="project.type" - value="${project.type}" - /> - <param name="project.compiler" - value="${project.compiler}" - /> - <param name="debug" - value="${debug}" - /> - <param name="projectsOnly" - value="true" - /> - <param name="os.family" - value="${os.family}" - /> - <param name="find" - value="${find}" - /> - </antcall> - - <antcall target="build-standalone-unittest"> - <param name="project.if" - value="true" - /> - <param name="project.type" - value="${project.type}" - /> - <param name="project.compiler" - value="${project.compiler}" - /> - <param name="debug" - value="${debug}" - /> - <param name="projectsOnly" - value="true" - /> - <param name="os.family" - value="${os.family}" - /> - <param name="find" - value="${find}" - /> - </antcall> - - <antcall target="build-examples"> - <param name="project.if" - value="true" - /> - <param name="project.type" - value="${project.type}" - /> - <param name="project.compiler" - value="${project.compiler}" - /> - <param name="debug" - value="${debug}" - /> - <param name="projectsOnly" - value="true" - /> - <param name="os.family" - value="${os.family}" - /> - <param name="find" - value="${find}" - /> - </antcall> - </target> - - <target name="build-projects-vc6" - depends="init" - description="Builds project files for Microsoft Visual C++ 6"> - <antcall target="build-projects"> - <param name="project.type" - value="msvc6" - /> - <param name="project.compiler" - value="msvc" - /> - <param name="os.family" - value="windows" - /> - <param name="debug" - value="${debug}" - /> - <param name="find" - value="${find}" - /> - </antcall> - </target> - - <target name="build-projects-vc7" - depends="init" - description="Builds project files for Microsoft Visual Studio .NET"> - <antcall target="build-projects"> - <param name="project.type" - value="msvc7" - /> - <param name="project.compiler" - value="msvc" - /> - <param name="os.family" - value="windows" - /> - <param name="debug" - value="${debug}" - /> - <param name="find" - value="${find}" - /> - </antcall> - </target> - - <target name="build-projects-vc8" - depends="init" - description="Builds project files for Microsoft Visual C++ 2005"> - <antcall target="build-projects"> - <param name="project.type" - value="msvc8" - /> - <param name="project.compiler" - value="msvc" - /> - <param name="os.family" - value="windows" - /> - <param name="debug" - value="${debug}" - /> - <param name="find" - value="${find}" - /> - </antcall> - </target> - - - <target name="build-projects-vc9" - depends="init" - description="Builds project files for Microsoft Visual C++ 2008"> - <antcall target="build-projects"> - <param name="project.type" - value="msvc9" - /> - <param name="project.compiler" - value="msvc" - /> - <param name="os.family" - value="windows" - /> - <param name="debug" - value="${debug}" - /> - <param name="find" - value="${find}" - /> - </antcall> - </target> - - <target name="build-projects-xcode" - depends="init" - description="Builds project files for Apple Xcode"> - <antcall target="build-projects"> - <param name="project.type" - value="xcode" - /> - <param name="project.compiler" - value="gcc" - /> - <param name="os.family" - value="mac" - /> - <param name="debug" - value="${debug}" - /> - <param name="find" - value="${find}" - /> - </antcall> - </target> - - <target name="test-compile" - depends="build-unittest, build-examples" - /> - - <target name="check" - depends="run-unittest, build-examples" - description="Runs all diagnostic tests"> - <antcall target="run-example"> - <param name="example.name" - value="trivial" - /> - </antcall> - - <antcall target="run-example"> - <param name="example.name" - value="stream" - /> - </antcall> - </target> - <target name="apidocs" description="Build log4cxx manual"> <copy file="${base.dir}/src/site/doxy/Doxyfile.in" @@ -1954,66 +341,6 @@ </replaceregexp> </target> - <target name="gen-release-projects"> - <antcall target="build-projects-vc6"> - <param name="find" value="false" /> - </antcall> - - <antcall target="build-projects-xcode"> - </antcall> - - <replaceregexp flags="ig" - match="ADD LINK32 .*/NOLOGO" - replace="ADD LINK32 ADVAPI32.LIB WS2_32.LIB MSWSOCK.LIB SHELL32.LIB ODBC32.LIB /NOLOGO"> - <fileset dir="${target.dir}" - includes="**/*.dsp" - /> - </replaceregexp> - - <replaceregexp flags="g" - match=".\\apr.dsp" - replace="..\\\\..\\\\apr\\\\apr.dsp"> - <fileset dir="${target.dir}" - includes="**/*.dsw" - /> - </replaceregexp> - - <replaceregexp flags="g" - match=".\\aprutil.dsp" - replace="..\\\\..\\\\apr-util\\\\aprutil.dsp"> - <fileset dir="${target.dir}" - includes="**/*.dsw" - /> - </replaceregexp> - - <replaceregexp flags="g" - match=".\\xml.dsp" - replace="..\\\\..\\\\apr-util\\\\xml\\\\expat\\\\lib\\\\xml.dsp"> - <fileset dir="${target.dir}" - includes="**/*.dsw" - /> - </replaceregexp> - - <!-- drop library search path --> - <replaceregexp flags="g" - match="<string>[\./]*/usr/lib</string>" - replace=""> - <fileset dir="${target.dir}" - includes="**/*.pbxproj" - /> - </replaceregexp> - - <replace dir="${target.dir}" - includes="**/*.pbxproj" - token="/usr/include/apr-1.0" - value="/usr/include/apr-1" - /> - <replace dir="${target.dir}" includes="**/*.pbxproj" - token="MacOSX10.4u.sdk" - value="MacOSX10.5.sdk" - /> - </target> - <target name="site-text-file-cleanup"> <fixcrlf srcDir="${base.dir}/${subDir}" tab="asis" @@ -2042,10 +369,6 @@ </antcall> </target> - <target name="gump" - depends="check, header-check" - /> - <target name="prepare-changes" description="Prepares changes.xml from a JIRA issues list"> <xslt style="src/changes/changes.xslt" @@ -2174,19 +497,10 @@ </target> <target name="autogen" - depends="init" if="is-unix"> <exec executable="sh"> <arg value="autogen.sh" /> </exec> - - <!-- - This was coupled with "site" originally, but made building "site" itself on Windows unneccessary - hard and the projects are not even used on the website, but only in releases instead. This target - is called in that case and some part of project files generation is unix centered already, too. - --> - <antcall target="gen-release-projects"> - </antcall> </target> </project> diff --git a/pom.xml b/pom.xml index abdf7f7..1bd985a 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ <groupId>log4cxx</groupId> <artifactId>apache-log4cxx</artifactId> <packaging>pom</packaging> - <version>0.11.0-SNAPSHOT</version> + <version>0.11.0</version> <name>Apache log4cxx</name> <description>Logging framework for C++.</description> <url>http://logging.apache.org/log4cxx</url> @@ -65,7 +65,7 @@ <connection>scm:git:http://gitbox.apache.org/repos/asf/logging-log4cxx.git</connection> <developerConnection>scm:git:https://gitbox.apache.org/repos/asf/logging-log4cxx.git</developerConnection> <url>https://gitbox.apache.org/repos/asf?p=logging-log4cxx.git</url> - <tag>HEAD</tag> + <tag>v0.11.0-RC1</tag> </scm> <properties> @@ -74,6 +74,7 @@ <releaseVersion>${project.version}</releaseVersion> <releaseManager>Matt Sicker</releaseManager> <releaseKey>B62BABE8</releaseKey> + <windowsArchitecture>x64</windowsArchitecture> </properties> <organization> @@ -179,50 +180,59 @@ <build> <plugins> + <plugin> + <groupId>com.googlecode.cmake-maven-project</groupId> + <artifactId>cmake-maven-plugin</artifactId> + <version>3.14.5-b1</version> + <executions> + <execution> + <id>cmake-generate</id> + <goals> + <goal>generate</goal> + </goals> + <configuration> + <sourcePath>${project.basedir}</sourcePath> + <targetPath>${project.build.directory}/${platform}</targetPath> + <classifier>${cmake.classifier}</classifier> + <options>${cmake.options}</options> + <environmentVariables> + <CMAKE_CLASSIFIER>${cmake.classifier}</CMAKE_CLASSIFIER> + </environmentVariables> + <downloadBinaries>${download.cmake}</downloadBinaries> + </configuration> + </execution> + <execution> + <id>cmake-compile</id> + <phase>process-resources</phase> + <goals> + <goal>compile</goal> + </goals> + <configuration> + <projectDirectory>${project.build.directory}/${platform}</projectDirectory> + <classifier>${cmake.classifier}</classifier> + <config>${cmake.config}</config> + <downloadBinaries>true</downloadBinaries> + </configuration> + </execution> + <execution> + <phase>test</phase> + <id>cmake-run-tests</id> + <goals> + <goal>test</goal> + </goals> + <configuration> + <buildDirectory>${project.build.directory}/${platform}</buildDirectory> + <testFailureIgnore>true</testFailureIgnore> + <ctest.skip.tests>${maven.test.skip}</ctest.skip.tests> + </configuration> + </execution> + </executions> + </plugin> <plugin> <artifactId>maven-antrun-plugin</artifactId> <version>1.7</version> <executions> <execution> - <phase>compile</phase> - <id>compile</id> - <configuration> - <target> - <ant target="build" /> - </target> - </configuration> - <goals> - <goal>run</goal> - </goals> - </execution> - - <execution> - <phase>test-compile</phase> - <id>test-compile</id> - <configuration> - <target unless="${maven.test.skip}"> - <ant target="test-compile" /> - </target> - </configuration> - <goals> - <goal>run</goal> - </goals> - </execution> - - <execution> - <phase>test</phase> - <id>test</id> - <configuration> - <target unless="${maven.test.skip}"> - <ant target="check" /> - </target> - </configuration> - <goals> - <goal>run</goal> - </goals> - </execution> - - <execution> <phase>package</phase> <id>autogen</id> <configuration> @@ -394,4 +404,82 @@ <url>file:///${user.dir}/target/site-deploy/${project.version}</url> </site> </distributionManagement> + + <profiles> + <profile> + <id>linux-x86_64-debug</id> + <properties> + <platform>linux-x86_64</platform> + <build.type>debug</build.type> + </properties> + </profile> + <profile> + <id>linux-x86_64-release</id> + <activation> + <os> + <family>linux</family> + <arch>amd64</arch> + </os> + </activation> + <properties> + <platform>linux-x86_64</platform> + <build.type>release</build.type> + <cmake.classifier>linux-x86_64</cmake.classifier> + </properties> + </profile> + <profile> + <id>Win32</id> + <properties> + <windowsArchitecture>Win32</windowsArchitecture> + </properties> + </profile> + <profile> + <id>windows-debug</id> + <properties> + <platform>windows-${windowsArchitecture}</platform> + <build.type>debug</build.type> + <cmake.classifier>windows-x86_64</cmake.classifier> + <cmake.options>-A${windowsArchitecture}</cmake.options> + <cmake.config>${build.type}</cmake.config> + </properties> + </profile> + <profile> + <id>windows-release</id> + <activation> + <os> + <family>windows</family> + <arch>amd64</arch> + </os> + </activation> + <properties> + <platform>windows-${windowsArchitecture}</platform> + <build.type>release</build.type> + <cmake.classifier>windows-x86_64</cmake.classifier> + <cmake.options>-A${windowsArchitecture}</cmake.options> + <cmake.config>${build.type}</cmake.config> + </properties> + </profile> + <profile> + <id>mac-x86_64-debug</id> + <properties> + <platform>mac-x86_64</platform> + <build.type>debug</build.type> + <cmake.classifier>mac-x86_64</cmake.classifier> + </properties> + </profile> + <profile> + <id>mac-x86_64-release</id> + <activation> + <os> + <family>mac</family> + <arch>x86_64</arch> + </os> + </activation> + <properties> + <platform>mac-x86_64</platform> + <build.type>release</build.type> + <cmake.classifier>mac-x86_64</cmake.classifier> + </properties> + </profile> + </profiles> </project> diff --git a/src/ant/apr-build.xml b/src/ant/apr-build.xml deleted file mode 100644 index 9812ae0..0000000 --- a/src/ant/apr-build.xml +++ /dev/null @@ -1,851 +0,0 @@ -<?xml version="1.0"?> -<!-- - 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. - ---> -<!DOCTYPE project [ -<!ENTITY common SYSTEM 'common.xml'> -<!ENTITY license ' - 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. -'> -]> -<!-- - This file builds APR using Apache Ant (http://ant.apache.org) - and the C++ compilation tasks from http://ant-contrib.sourceforge.net. ---> -<project name="apr" default="check"> - -&common; - -<property name="src.dir" - location="${basedir}" -/> -<property name="include.dir" - location="${src.dir}/include" -/> -<property name="test.dir" - location="${src.dir}/test" -/> -<property name="target.dir" - location="${basedir}/target" -/> -<property name="lib.name" - value="apr-1" -/> -<property name="lib.prefix" - value="" -/> -<property environment="env" -/> - -<target name="usage" - description="Displays usage notes on build"> - <echo></echo> -</target> - -<target name="clean" - description="Removes build product files"> - <delete dir="${target.dir}" /> -</target> - -<target name="win-configure" - if="is-windows"> - <copy file="${include.dir}/apr.hw" - tofile="${include.dir}/apr.tmp" - overwrite="true" - /> - <replaceregexp file="${include.dir}/apr.tmp" - match="typedef *int *uid_t;" - replace="/* typedef int uid_t */" - /> - <replaceregexp file="${include.dir}/apr.tmp" - match="typedef *int *gid_t;" - replace="/* typedef int gid_t */" - /> - <antcall target="copy-if-changed"> - <param name="file" - value="${include.dir}/apr.tmp" - /> - <param name="tofile" - value="${include.dir}/apr.h" - /> - </antcall> -</target> - -<target name="check-configure" - if="is-unix"> - <condition property="force-configure" - value="1"> - <not> - <available file="${include.dir}/apr.h" /> - </not> - </condition> -</target> - -<target name="unix-configure" - depends="check-configure" - if="force-configure"> - <!-- Shelling to configure allows cygwin to work --> - <exec executable="sh" dir="${src.dir}"> - <arg value="./configure" /> - </exec> -</target> - -<target name="init" - depends="common-init"> - <condition property="arch" - value="win32"> - <isset property="is-windows" /> - </condition> - <property name="arch" - value="unix" - /> -</target> - -<target name="configure" - depends="init, unix-configure, win-configure" -/> - -<target name="build" - depends="configure" - description="Build library"> - <mkdir dir="${executable.dir}/apr-ofiles" /> - <property name="project.compiler" - value="${compiler}" - /> - <property name="project.type" - value="msvc6" - /> - - <cc name="${project.compiler}" - outfile="${executable.dir}/${lib.prefix}${lib.name}${lib.suffix}" - subsystem="console" - multithreaded="true" - runtime="${runtime}" - outtype="${lib.type}" - objdir="${executable.dir}/apr-ofiles" - outputfileproperty="apr-1.dll" - debug="${debug}" - projectsOnly="${projectsOnly}"> - <!-- Suppressing misc/win32/rand.c since it needs to include rpc.h --> - <fileset dir="${src.dir}" - includes="**/${arch}/*.c" - excludes="**/apr_app.c misc/win32/rand.c" - /> - <fileset dir="${src.dir}" - includes="**/${arch}/apr_app.c" - if="is-static" - /> - <fileset dir="${src.dir}/file_io/unix" - includes="copy.c fileacc.c filepath_util.c fullrw.c mktemp.c tempdir.c" - /> - <fileset dir="${src.dir}/memory/unix" - includes="*.c" - /> - <fileset dir="${src.dir}/misc/unix" - includes="errorcodes.c getopt.c otherchild.c version.c" - /> - <fileset dir="${src.dir}/mmap/unix" - includes="common.c" - /> - <fileset dir="${src.dir}/network_io/unix" - includes="inet_ntop.c inet_pton.c sockaddr.c" - /> - <fileset dir="${src.dir}/poll/unix" - includes="*.c" - /> - <fileset dir="${src.dir}/random/unix" - includes="*.c" - /> - <fileset dir="${src.dir}/strings" - includes="*.c" - /> - <fileset dir="${src.dir}/tables" - includes="*.c" - /> - <fileset dir="${include.dir}" - includes="*.h" - /> - <fileset dir="${include.dir}/arch" - includes="*.h" - /> - <fileset dir="${include.dir}/arch/${arch}" - includes="*.h" - /> - <fileset dir="${include.dir}/arch/unix" - includes="*.h" - /> - <fileset dir="${src.dir}/support/unix" - includes="waitio.c" - /> - - <includepath path="${include.dir}" /> - <includepath path="${include.dir}/arch" /> - <includepath path="${include.dir}/arch/${arch}" /> - <includepath path="${include.dir}/arch/unix" /> - - <defineset define="APR_DECLARE_EXPORT" - if="is-shared" - /> - <defineset define="APR_DECLARE_STATIC" - unless="is-shared" - /> - <defineset if="is-windows"> - <define name="WIN32" value="1" /> - </defineset> - <defineset define="_HAVE_CONFIG_H _REENTRANT _GNU_SOURCE" - if="is-gcc" - /> - <defineset define="HAVE_CONFIG_H DARWIN SIGPROCMASK_SETS_THREAD_MASK" - if="is-mac" - /> - <defineset if="is-bcc"> - <define name="_dup2" - value="dup2" - /> - <define name="_isatty" - value="isatty" - /> - <define name="_setmode" - value="setmode" - /> - </defineset> - <!-- - apr_atomic.c is not linkable in VS2013 x86 and the only somewhat easy workaround was - to claim we are not VS2013, which only works because what we use to claim this is not - used elsewhere and doesn't seem to introduce any other problems for now. - - https://groups.google.com/forum/#!topic/aprdev/bc1ILvUe-fk - https://groups.google.com/forum/#!topic/unimrcp/Iybpn51UYnI - --> - <defineset define="__MINGW32__" - if="env.VS120COMNTOOLS" - /> - - <compilerarg value="${pic-option}" - if="pic-option" - /> - - <libset libs="advapi32 mswsock rpcrt4 ws2_32" - if="is-windows" - /> - <libset libs="pthread dl" - if="is-unix" - /> - <libset libs="cw32mt" - if="is-bcc" - /> - - <project type="${project.type}" - outfile="${projects.dir}/projects/apr" - if="project.if"> - <comment>&license;</comment> - </project> - </cc> - - <property name="apr.lib.dir" - location="${executable.dir}" - /> -</target> - -<target name="build-test"> - <mkdir dir="${executable.dir}/apr-test-ofiles" /> - <property name="project.compiler" - value="${compiler}" - /> - <property name="project.type" - value="msvc6" - /> - - <cc name="${project.compiler}" - outfile="${executable.dir}/${test}" - subsystem="console" - multithreaded="true" - runtime="${runtime}" - outtype="executable" - objdir="${executable.dir}/apr-test-ofiles" - debug="${debug}" - projectsOnly="${projectsOnly}"> - <fileset dir="${test.dir}" - includes="${testfiles}" - /> - - <includepath path="${include.dir}" /> - - <defineset if="is-windows"> - <define name="WIN32" value="1" /> - </defineset> - <defineset define="_HAVE_CONFIG_H _REENTRANT _GNU_SOURCE" - if="is-gcc" - /> - <defineset define="APR_DECLARE_STATIC" - unless="is-shared" - /> - <defineset define="HAVE_CONFIG_H DARWIN SIGPROCMASK_SETS_THREAD_MASK" - if="is-mac" - /> - <compilerarg value="${pic-option}" if="pic-option" - /> - - <libset dir="${apr.lib.dir}" - libs="${lib.prefix}${lib.name}${lib.suffix}" - /> - <libset libs="cw32mt" - if="is-bcc" - /> - <libset libs="pthread dl" - if="is-unix" - /> - <libset libs="advapi32 ws2_32 mswsock rpcrt4" - if="is-windows" - /> - - <project type="${project.type}" - outfile="${projects.dir}/projects/${test}" - if="project.if"> - <comment>&license;</comment> - <dependency file="${projects.dir}/apr" /> - </project> - </cc> -</target> - -<target name="run-test"> - <exec executable="${apr.lib.dir}/${test}" - dir="${apr.lib.dir}" - failonerror="true"> - <env key="DYLD_LIBRARY_PATH" - value="${apr.lib.dir}:${env.DYLD_LIBRARY_PATH}" - /> - <env key="LD_LIBRARY_PATH" - value="${apr.lib.dir}:${env.LD_LIBRARY_PATH}" - /> - </exec> -</target> - -<target name="build-testlockperf" - depends="build"> - <antcall target="build-test"> - <param name="test" - value="testlockperf" - /> - <param name="testfiles" - value="testlockperf.c" - /> - </antcall> -</target> - -<target name="run-testlockperf" - depends="build-testlockperf"> - <antcall target="run-test"> - <param name="test" - value="testlockperf" - /> - </antcall> -</target> - -<target name="build-testshmproducer" - depends="build"> - <antcall target="build-test"> - <param name="test" - value="testshmproducer" - /> - <param name="testfiles" - value="testshmproducer.c" - /> - </antcall> -</target> - -<target name="build-testshmconsumer" - depends="build"> - <antcall target="build-test"> - <param name="test" - value="testshmconsumer" - /> - <param name="testfiles" - value="testshmconsumer.c" - /> - </antcall> -</target> - - -<target name="build-testmutexscope" - depends="build"> - <antcall target="build-test"> - <param name="test" - value="testmutexscope" - /> - <param name="testfiles" - value="testmutexscope.c" - /> - </antcall> -</target> - -<target name="run-testmutexscope" - depends="build-testmutexscope"> - <antcall target="run-test"> - <param name="test" - value="testmutexscope" - /> - </antcall> -</target> - -<target name="build-occhild" - depends="build"> - <antcall target="build-test"> - <param name="test" - value="occhild" - /> - <param name="testfiles" - value="occhild.c" - /> - </antcall> -</target> - -<target name="build-sockchild" - depends="build"> - <antcall target="build-test"> - <param name="test" - value="sockchild" - /> - <param name="testfiles" - value="sockchild.c" - /> - </antcall> -</target> - -<target name="build-readchild" - depends="build"> - <antcall target="build-test"> - <param name="test" - value="readchild" - /> - <param name="testfiles" - value="readchild.c" - /> - </antcall> -</target> - -<target name="build-globalmutexchild" - depends="build"> - <antcall target="build-test"> - <param name="test" - value="globalmutexchild" - /> - <param name="testfiles" - value="globalmutexchild.c" - /> - </antcall> -</target> - -<target name="build-tryread" - depends="build"> - <antcall target="build-test"> - <param name="test" - value="tryread" - /> - <param name="testfiles" - value="tryread.c" - /> - </antcall> -</target> - -<target name="build-proc_child" - depends="build"> - <antcall target="build-test"> - <param name="test" - value="proc_child" - /> - <param name="testfiles" - value="proc_child.c" - /> - </antcall> -</target> - -<target name="build-sendfile" - depends="build"> - <antcall target="build-test"> - <param name="test" - value="sendfile" - /> - <param name="testfiles" - value="sendfile.c" - /> - </antcall> -</target> - -<target name="build-mod_test" - depends="build"> - <mkdir dir="${executable.dir}/test-ofiles" /> - <mkdir dir="${executable.dir}/.libs" /> - - <property name="project.compiler" - value="${compiler}" - /> - <property name="project.type" - value="msvc6" - /> - - <cc name="${project.compiler}" - outfile="${executable.dir}/.libs/mod_test" - subsystem="console" - multithreaded="true" - runtime="${runtime}" - outtype="shared" - objdir="${executable.dir}/test-ofiles" - outputfileproperty="libmod_test.so" - debug="${debug}" - projectsOnly="${projectsOnly}"> - <fileset dir="${test.dir}" - includes="mod_test.c" - /> - - <includepath path="${include.dir}" /> - - <defineset if="is-windows"> - <define name="WIN32" value="1" /> - </defineset> - <defineset define="_HAVE_CONFIG_H _REENTRANT _GNU_SOURCE" - if="is-gcc" - /> - <defineset define="APR_DECLARE_STATIC" - unless="is-shared" - /> - <defineset define="HAVE_CONFIG_H DARWIN SIGPROCMASK_SETS_THREAD_MASK" - if="is-mac" - /> - <compilerarg value="${pic-option}" - if="pic-option" - /> - - <libset dir="${apr.lib.dir}" - libs="${lib.prefix}${lib.name}${lib.suffix}" - /> - <libset libs="cw32mt" - if="is-bcc" - /> - <libset libs="advapi32 ws2_32 mswsock rpcrt4" - if="is-windows" - /> - - <project type="${project.type}" - outfile="${projects.dir}/projects/mod_test" - if="project.if"> - <comment>&license;</comment> - <dependency file="${projects.dir}/apr-1" /> - </project> - </cc> - - <copy file="${libmod_test.so}" - tofile="${executable.dir}/.libs/mod_test.so" - /> -</target> - -<target name="build-testall" - depends="build"> - <mkdir dir="${executable.dir}/test-ofiles" /> - <property name="project.compiler" - value="${compiler}" - /> - <property name="project.type" - value="msvc6" - /> - - <cc name="${project.compiler}" - outfile="${executable.dir}/testall" - subsystem="console" - multithreaded="true" - runtime="${runtime}" - outtype="executable" - objdir="${executable.dir}/test-ofiles" - debug="${debug}" - projectsOnly="${projectsOnly}"> - <fileset dir="${test.dir}" - includes="*.c"> - <exclude name="nw_misc.c" /> - <exclude name="testlockperf.c" /> - <exclude name="occhild.c" /> - <exclude name="sockchild.c" /> - <exclude name="sockperf.c" /> - <exclude name="echod.c" /> - <exclude name="mockchild.c" /> - <exclude name="readchild.c" /> - <exclude name="globalmutexchild.c" /> - <exclude name="tryread.c" /> - <exclude name="proc_child.c" /> - <exclude name="sendfile.c" /> - <exclude name="testshmproducer.c" /> - <exclude name="testshmconsumer.c" /> - <exclude name="testmutexscope.c" /> - <exclude name="testapp.c" /> - </fileset> - - <includepath path="${include.dir}" /> - - <defineset if="is-windows"> - <define name="WIN32" value="1" /> - </defineset> - <defineset define="_HAVE_CONFIG_H _REENTRANT _GNU_SOURCE" - if="is-gcc" - /> - <defineset define="APR_DECLARE_STATIC" - unless="is-shared" - /> - <defineset define="HAVE_CONFIG_H DARWIN SIGPROCMASK_SETS_THREAD_MASK" - if="is-mac" - /> - <compilerarg value="${pic-option}" - if="pic-option" - /> - - <libset dir="${apr.lib.dir}" - libs="${lib.prefix}${lib.name}${lib.suffix}" - /> - <libset libs="cw32mt" - if="is-bcc" - /> - <libset libs="pthread dl" - if="is-unix" - /> - <libset libs="advapi32 ws2_32 mswsock rpcrt4" - if="is-windows" - /> - - <project type="${project.type}" - outfile="${projects.dir}/projects/testall" - if="project.if"> - <comment>&license;</comment> - <dependency file="${projects.dir}/apr-1" /> - </project> - </cc> -</target> - -<target name="run-testall" - depends="build-testall, - build-mod_test, - build-tryread, - build-readchild, - build-globalmutexchild, - build-occhild, - build-proc_child, - build-testshmconsumer, - build-testshmproducer, - build-sockchild"> - <mkdir dir="${executable.dir}/data" /> - <copy todir="${executable.dir}/data"> - <fileset dir="${test.dir}/data" - includes="*" - /> - </copy> - <exec executable="${executable.dir}/testall" - dir="${executable.dir}" - failonerror="true"> - <env key="DYLD_LIBRARY_PATH" - value="${apr.lib.dir}:${executable.dir}/.libs:${env.DYLD_LIBRARY_PATH}" - /> - <env key="LD_LIBRARY_PATH" - value="${apr.lib.dir}:${executable.dir}/.libs:${env.LD_LIBRARY_PATH}" - /> - </exec> -</target> - -<target name="build-check" - depends="build-testlockperf, - build-testshmproducer, - build-testshmconsumer, - build-testmutexscope, - build-testall" - description="Builds all test applications" -/> - -<target name="check" - depends="run-testlockperf, run-testall" - description="Runs all test applications"> -</target> - -<target name="build-projects"> - <mkdir dir="${projects.dir}" /> - <antcall target="build"> - <param name="project.if" - value="true" - /> - <param name="project.type" - value="${project.type}" - /> - <param name="project.compiler" - value="${project.compiler}" - /> - <param name="projects.dir" - value="${projects.dir}" - /> - <param name="debug" - value="${debug}" - /> - <param name="projectsOnly" - value="true" - /> - <param name="arch" - value="${arch}" - /> - </antcall> - <antcall target="build-check"> - <param name="project.if" - value="true" - /> - <param name="project.type" - value="${project.type}" - /> - <param name="project.compiler" - value="${project.compiler}" - /> - <param name="projects.dir" - value="${projects.dir}" - /> - <param name="debug" - value="${debug}" - /> - <param name="projectsOnly" - value="true" - /> - <param name="arch" - value="${arch}" - /> - </antcall> -</target> - -<target name="build-projects-vc6" - depends="init" - description="Builds project files for Microsoft Visual C++ 6"> - <antcall target="build-projects"> - <param name="project.type" - value="msvc6" - /> - <param name="project.compiler" - value="msvc" - /> - <param name="os.family" - value="windows" - /> - <param name="debug" - value="${debug}" - /> - <param name="projects.dir" - value="${projects.dir}" - /> - </antcall> -</target> - -<target name="build-projects-vc7" - depends="init" - description="Builds project files for Microsoft Visual Studio .NET"> - <antcall target="build-projects"> - <param name="project.type" - value="msvc7" - /> - <param name="project.compiler" - value="msvc" - /> - <param name="os.family" - value="windows" - /> - <param name="debug" - value="${debug}" - /> - <param name="projects.dir" - value="${projects.dir}" - /> - </antcall> -</target> - -<target name="build-projects-vc8" - depends="init" - description="Builds project files for Microsoft Visual C++ 2005"> - <antcall target="build-projects"> - <param name="project.type" - value="msvc8" - /> - <param name="project.compiler" - value="msvc" - /> - <param name="os.family" - value="windows" - /> - <param name="debug" - value="${debug}" - /> - <param name="projects.dir" - value="${projects.dir}" - /> - </antcall> -</target> - -<target name="build-projects-vc9" - depends="init" - description="Builds project files for Microsoft Visual C++ 2008"> - <antcall target="build-projects"> - <param name="project.type" - value="msvc9" - /> - <param name="project.compiler" - value="msvc" - /> - <param name="os.family" - value="windows" - /> - <param name="debug" - value="${debug}" - /> - <param name="projects.dir" - value="${projects.dir}" - /> - </antcall> -</target> - -<target name="build-projects-xcode" - depends="init" - description="Builds project files for Apple Xcode"> - <antcall target="build-projects"> - <param name="project.type" - value="xcode" - /> - <param name="project.compiler" - value="${compiler}" - /> - <param name="os.family" - value="mac" - /> - <param name="debug" - value="${debug}" - /> - <param name="projects.dir" - value="${projects.dir}" - /> - </antcall> -</target> - -</project> diff --git a/src/ant/apr-util-build.xml b/src/ant/apr-util-build.xml deleted file mode 100644 index 70ba3b2..0000000 --- a/src/ant/apr-util-build.xml +++ /dev/null @@ -1,722 +0,0 @@ -<?xml version="1.0"?> -<!-- - 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. - ---> -<!DOCTYPE project [ -<!ENTITY common SYSTEM 'common.xml'> -<!ENTITY find-apr SYSTEM 'find-apr.xml'> -<!ENTITY license ' - 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. -'> -]> - -<!-- - This file builds APR using Apache Ant (http://ant.apache.org) - and the C++ compilation tasks from http://ant-contrib.sourceforge.net. ---> -<project name="aprutil" default="check" basedir="."> - -&common; -&find-apr; - -<property name="src.dir" - location="${basedir}" -/> -<property name="include.dir" - location="${src.dir}/include" -/> -<property name="target.dir" - location="${basedir}/target" -/> - -<target name="usage" - description="Displays usage notes"> - <echo></echo> -</target> - -<target name="init" - depends="common-init"> - <condition property="arch" - value="win32"> - <isset property="is-windows" /> - </condition> - <property name="arch" - value="unix" - /> -</target> - -<target name="clean" - description="Deletes build products"> - <delete dir="${target.dir}" /> -</target> - -<target name="configure-check" - depends="init"> - <condition property="aprutil-config-available" - value="true"> - <and> - <available file="${include.dir}/apu.h" /> - <available file="${include.dir}/apu_want.h" /> - <available file="${include.dir}/private/apu_config.h" /> - <available file="${include.dir}/private/apu_select_dbm.h" /> - <available file="${src.dir}/xml/expat/lib/expat.h" /> - <available file="${src.dir}/xml/expat/config.h" /> - </and> - </condition> -</target> - -<target name="win-configure" - depends="configure-check" - if="is-windows" - unless="aprutil-config-available"> - <copy tofile="${include.dir}/apu.h" - file="${include.dir}/apu.hw" - /> - <replaceregexp file="${include.dir}/apu.h" - match="#define *APU_HAVE_APR_ICONV.*" - replace="#define APU_HAVE_APR_ICONV 0" - /> - <copy tofile="${include.dir}/apu_want.h" - file="${include.dir}/apu_want.hw" - /> - <copy tofile="${include.dir}/apr_ldap.h" - file="${include.dir}/apr_ldap.hw" - /> - <replaceregexp file="${include.dir}/apr_ldap.h" - match="#define APR_HAS_LDAP.*" - replace="#define APR_HAS_LDAP 0" - /> - <copy tofile="${include.dir}/private/apu_config.h" - file="${include.dir}/private/apu_config.hw" - /> - <copy tofile="${include.dir}/private/apu_select_dbm.h" - file="${include.dir}/private/apu_select_dbm.hw" - /> - <copy tofile="${src.dir}/xml/expat/lib/config.h" - file="${src.dir}/xml/expat/lib/winconfig.h" - /> - - <!-- - apr_dbd_odbc.c needs stdint.h, but at least on BCC it doesn't seem to be included - automatically. It's easier to change that using a file we already create than changing core - code files. - --> - <condition property="bcc-needs-stdint" - value="1" - else="0"> - <and> - <equals arg1="${compiler}" arg2="bcc" /> - <not> - <isfileselected file="${include.dir}/private/apu_config.h"> - <contains text="#include <stdint.h>" - ignorewhitespace="true" - /> - </isfileselected> - </not> - </and> - </condition> - <if> - <equals arg1="${bcc-needs-stdint}" - arg2="1" - /> - <then> - <replace file="${include.dir}/private/apu_config.h" - token="#define APU_CONFIG_H"> - <replacevalue>#define APU_CONFIG_H - -#include <stdint.h> - </replacevalue> - </replace> - </then> - </if> -</target> - -<target name="unix-configure" - depends="configure-check, find-apr" - if="is-unix" - unless="aprutil-config-available"> - <exec executable="sh" dir="${src.dir}"> - <arg value="./configure" /> - <arg value="--with-apr=${apr.dir}" /> - </exec> - <exec executable="sh" dir="${src.dir}/xml/expat"> - <arg value="./configure" /> - </exec> -</target> - -<target name="configure" - depends="unix-configure, win-configure"> - <condition property="has-iconv" - value="1"> - <isfileselected file="${include.dir}/apu.h"> - <contains text="#define APR_HAVE_ICONV 1" - ignorewhitespace="true" - /> - </isfileselected> - </condition> - <condition property="has-iconv" - value="1"> - <isfileselected file="${include.dir}/apu.h"> - <contains text="#define APU_HAVE_ICONV 1" - ignorewhitespace="true" - /> - </isfileselected> - </condition> - <condition property="has-sqlite3" - value="1"> - <isfileselected file="${include.dir}/apu.h"> - <contains text="#define APU_HAVE_SQLITE3 1" - ignorewhitespace="true" - /> - </isfileselected> - </condition> -</target> - -<target name="build-xml" - depends="configure" - description="Builds Expat"> - <mkdir dir="${executable.dir}/apr-util-ofiles" /> - <property name="project.compiler" - value="${compiler}" - /> - <property name="project.type" - value="msvc6" - /> - - <!-- - This only generate a project file necessary to mimic this visual studio project provided - with APR. - --> - <cc name="${project.compiler}" - outfile="${executable.dir}/expat" - subsystem="console" - multithreaded="true" - runtime="${runtime}" - outtype="static" - objdir="${executable.dir}/apr-util-ofiles" - warnings="none" - debug="${debug}" - projectsOnly="true"> - <fileset dir="${src.dir}/xml/expat/lib" - includes="xmlparse.c xmlrole.c xmltok.c" - /> - <fileset dir="${src.dir}/xml/expat/lib" - includes="*.h" - /> - <fileset dir="${src.dir}/xml/expat" - includes="*.h" - /> - - <includepath path="${src.dir}/xml/expat/lib" /> - <includepath path="${src.dir}/xml/expat" /> - - <defineset> - <define name="XMLPARSEAPI" value=" " /> - </defineset> - <defineset define="WIN32 COMPILED_FROM_DSP" - if="is-windows" - /> - <defineset define="_HAVE_CONFIG_H _REENTRANT _GNU_SOURCE" - if="is-gcc" - /> - <compilerarg value="${pic-option}" - if="pic-option" - /> - - <libset libs="cw32mt" if="is-bcc" /> - <project type="${project.type}" - outfile="${projects.dir}/projects/xml" - if="project.if"> - <comment>&license;</comment> - </project> - </cc> -</target> - -<target name="build" - depends="build-xml, find-apr" - description="Build library"> - <property name="apr.lib.prefix" - value="" - /> - <property name="apr.lib.name" - value="apr-1" - /> - <property name="apr.lib.suffix" - value="" - /> - - <cc name="${project.compiler}" - outfile="${executable.dir}/aprutil-1${lib-suffix}" - subsystem="console" - multithreaded="true" - runtime="${runtime}" - outtype="${lib.type}" - objdir="${executable.dir}/apr-util-ofiles" - warnings="none" - debug="${debug}" - projectsOnly="${projectsOnly}"> - <fileset dir="${src.dir}" includes="**/*.c" - excludes="test/*.c *.c ldap/*.c xml/expat/lib/*" - /> - <fileset dir="${src.dir}/xml/expat/lib" - includes="xmlparse.c xmlrole.c xmltok.c" - /> - <fileset dir="${src.dir}/xml/expat/lib" - includes="*.h" - /> - <fileset dir="${src.dir}/xml/expat" - includes="*.h" - /> - <fileset dir="${include.dir}" - includes="*.h" - /> - <fileset dir="${include.dir}/private" - includes="*.h" - /> - - <includepath path="${apr.include.dir}" /> - <includepath path="${include.dir}" /> - <includepath path="${include.dir}/private" /> - <includepath path="${src.dir}/xml/expat/lib" /> - <includepath path="${src.dir}/xml/expat" /> - - <defineset define="APU_DECLARE_EXPORT" - if="is-shared" - /> - <defineset define="APU_DECLARE_STATIC" - unless="is-shared" - /> - <defineset define="APR_DECLARE_STATIC" - unless="is-apr-shared" - /> - <defineset define="XML_STATIC" - unless="is-shared" - /> - <defineset> - <define name="XMLPARSEAPI" value=" " /> - </defineset> - <defineset define="WIN32 COMPILED_FROM_DSP HAVE_SQL_H" - if="is-windows" - /> - <defineset if="is-bcc"> - <define name="EILSEQ" - value="50" - /> - </defineset> - <defineset define="_HAVE_CONFIG_H _REENTRANT _GNU_SOURCE" - if="is-gcc" - /> - <compilerarg value="${pic-option}" - if="pic-option" - /> - - <libset dir="${executable.dir}" - libs="xml ${apr.lib.prefix}${apr.lib.name}${apr.lib.suffix}" - /> - <libset libs="cw32mt" - if="is-bcc" - /> - <libset libs="pthread dl" - if="is-unix" - /> - <libset libs="iconv" - if="has-iconv" - /> - <libset libs="sqlite3" - if="has-sqlite3" - /> - - <project type="${project.type}" - outfile="${projects.dir}/projects/aprutil" - if="project.if"> - <comment>&license;</comment> - <dependency file="${projects.dir}/apr" /> - </project> - </cc> - - <property name="apr.lib.dir" - location="${executable.dir}" - /> -</target> - -<target name="build-test"> - <mkdir dir="${executable.dir}/apr-util-test-ofiles" /> - <property name="project.compiler" - value="${compiler}" - /> - <property name="project.type" - value="msvc6" - /> - - <cc name="${project.compiler}" - outfile="${executable.dir}/${test}" - subsystem="console" - multithreaded="true" - runtime="${runtime}" - outtype="executable" - objdir="${executable.dir}/apr-util-test-ofiles" - debug="${debug}" - projectsOnly="${projectsOnly}"> - <fileset dir="${src.dir}/test" - includes="${include.files}" - excludes="${exclude.files}" - /> - - <includepath path="${include.dir}" /> - <includepath path="${apr.include.dir}" /> - - <defineset define="APU_DECLARE_STATIC" - unless="is-shared" - /> - <defineset define="APR_DECLARE_STATIC" - unless="is-apr-shared" - /> - <defineset if="is-windows"> - <define name="WIN32" value="1" /> - </defineset> - <defineset define="_HAVE_CONFIG_H _REENTRANT _GNU_SOURCE" - if="is-gcc" - /> - <compilerarg value="${pic-option}" - if="pic-option" - /> - - <libset dir="${apr.lib.dir}" - libs="apr-1${lib-suffix}" - if="apr.lib.dir" - /> - <libset libs="apr-1${lib-suffix}" - unless="apr.lib.dir" - /> - <libset dir="${executable.dir}" - libs="aprutil-1${lib-suffix}" - /> - <libset libs="cw32mt" - if="is-bcc" - /> - <libset libs="pthread dl" - if="is-unix" - /> - <libset libs="iconv" - if="has-iconv" - /> - <libset libs="sqlite3" - if="has-sqlite3" - /> - - <project type="${project.type}" - outfile="${projects.dir}/projects/${test}" - if="project.if"> - <comment>&license;</comment> - <dependency file="${projects.dir}/apr" /> - <dependency file="${projects.dir}/aprutil" depends="apr" /> - </project> - </cc> -</target> - -<target name="copy-apr" - if="is-windows"> - <copy todir="${executable.dir}" - overwrite="true"> - <fileset dir="${apr.lib.dir}" - includes="apr-1${lib-suffix}.dll" - /> - </copy> -</target> - -<target name="run-test" - depends="copy-apr"> - <exec executable="${executable.dir}/${test}" - dir="${executable.dir}" - failonerror="true"> - <env key="DYLD_LIBRARY_PATH" - value="${apr.lib.dir}:${aprutil.lib.dir}:${env.DYLD_LIBRARY_PATH}" - /> - <env key="LD_LIBRARY_PATH" - value="${apr.lib.dir}:${aprutil.lib.dir}:${env.LD_LIBRARY_PATH}" - /> - <env key="Path" - value="${apr.lib.dir}:${aprutil.lib.dir}:${env.Path}" - /> - </exec> -</target> - -<target name="build-testall" - depends="build"> - <antcall target="build-test"> - <param name="test" - value="testall" - /> - <param name="include.files" - value="**/*.c" - /> - <param name="exclude.files" - value="dbd.c testssl.c echod.c sockperf.c nw*.c" - /> - </antcall> -</target> - -<target name="run-testall" - depends="build-testall"> - <antcall target="run-test"> - <param name="test" - value="testall" - /> - </antcall> -</target> - -<target name="build-dbd" - depends="build"> - <antcall target="build-test"> - <param name="test" - value="dbd" - /> - <param name="include.files" - value="dbd.c" - /> - <param name="exclude.files" - value="*.y" - /> - </antcall> -</target> - -<target name="run-dbd" - depends="build-dbd"> - <antcall target="run-test"> - <param name="test" - value="dbd" - /> - </antcall> -</target> - -<target name="build-testssl" - depends="build"> - <antcall target="build-test"> - <param name="test" - value="testssl" - /> - <param name="include.files" - value="testssl.c" - /> - </antcall> -</target> - -<target name="run-testssl" - depends="build-testssl"> - <antcall target="run-test"> - <param name="test" - value="testssl" - /> - </antcall> -</target> - -<target name="build-echod" depends="build"> - <antcall target="build-test"> - <param name="test" - value="echod" - /> - <param name="include.files" - value="echod.c" - /> - </antcall> -</target> - -<target name="build-sockperf" - depends="build"> - <antcall target="build-test"> - <param name="test" - value="sockperf" - /> - <param name="include.files" - value="sockperf.c" - /> - </antcall> -</target> - -<target name="build-check" - depends="build-testall, build-dbd, build-testssl, build-echod" - description="Builds all tests" -/> - -<target name="check" - depends="build-check" - description="Runs all tests" -/> - -<target name="build-projects"> - <mkdir dir="${projects.dir}" /> - <antcall target="build"> - <param name="project.if" - value="true" - /> - <param name="project.type" - value="${project.type}" - /> - <param name="project.compiler" - value="${project.compiler}" - /> - <param name="projects.dir" - value="${projects.dir}" - /> - <param name="debug" - value="${debug}" - /> - <param name="projectsOnly" - value="true" - /> - </antcall> -</target> - -<target name="build-projects-vc6" - depends="init" - description="Builds project files for Microsoft Visual C++ 6"> - <antcall target="build-projects"> - <param name="projects.dir" - value="${projects.dir}" - /> - <param name="project.type" - value="msvc6" - /> - <param name="project.compiler" - value="msvc" - /> - <param name="os.family" - value="windows" - /> - <param name="projects.dir" - value="${projects.dir}" - /> - <param name="debug" - value="${debug}" - /> - </antcall> -</target> - -<target name="build-projects-vc7" - depends="init" - description="Builds project files for Microsoft Visual Studio .NET"> - <antcall target="build-projects"> - <param name="projects.dir" - value="${projects.dir}" - /> - <param name="project.type" - value="msvc7" - /> - <param name="project.compiler" - value="msvc" - /> - <param name="os.family" - value="windows" - /> - <param name="projects.dir" - value="${projects.dir}" - /> - <param name="debug" - value="${debug}" - /> - </antcall> -</target> - -<target name="build-projects-vc8" - depends="init" - description="Builds project files for Microsoft Visual C++ 2005"> - <antcall target="build-projects"> - <param name="projects.dir" - value="${projects.dir}" - /> - <param name="project.type" - value="msvc8" - /> - <param name="project.compiler" - value="msvc" - /> - <param name="os.family" - value="windows" - /> - <param name="projects.dir" - value="${projects.dir}" - /> - <param name="debug" - value="${debug}" - /> - </antcall> -</target> - -<target name="build-projects-vc9" - depends="init" - description="Builds project files for Microsoft Visual C++ 2008"> - <antcall target="build-projects"> - <param name="projects.dir" - value="${projects.dir}" - /> - <param name="project.type" - value="msvc9" - /> - <param name="project.compiler" - value="msvc" - /> - <param name="os.family" - value="windows" - /> - <param name="projects.dir" - value="${projects.dir}" - /> - <param name="debug" - value="${debug}" - /> - </antcall> -</target> - -<target name="build-projects-xcode" - depends="init" - description="Builds project files for Apple Xcode"> - <antcall target="build-projects"> - <param name="projects.dir" - value="${projects.dir}" - /> - <param name="project.type" - value="xcode" - /> - <param name="project.compiler" - value="${compiler}" - /> - <param name="os.family" - value="mac" - /> - <param name="projects.dir" - value="${projects.dir}" - /> - <param name="debug" - value="${debug}" - /> - </antcall> -</target> - -</project> diff --git a/src/ant/common.xml b/src/ant/common.xml index 3343b3d..1f9f192 100644 --- a/src/ant/common.xml +++ b/src/ant/common.xml @@ -34,8 +34,6 @@ value="dynamic" /> -<taskdef resource="cpptasks.tasks" /> -<typedef resource="cpptasks.types" /> <taskdef resource="net/sf/antcontrib/antcontrib.properties" /> <target name="os-detect"> @@ -124,26 +122,6 @@ <target name="common-init" depends="win-init, unix-init"> - <available classname="net.sf.antcontrib.cpptasks.CCTask" - property="cctask-available" /> - <fail unless="cctask-available">cpptasks required - -Use cpptasks 1.0b5 or later from -http://ant-contrib.sourceforge.net. - </fail> - - <available classname="net.sf.antcontrib.cpptasks.ide.ProjectDef" - property="cctask-project-available" /> - <!-- fail unless="cctask-project-available">later version of cpptasks required - -Required features not present in cpptasks releases prior to Feb 2005 - </fail --> - - <mkdir dir="${target.dir}" /> - <property name="projects.dir" - value="${target.dir}" - /> - <mkdir dir="${projects.dir}" /> <condition property="is-gcc" value="true"> @@ -211,27 +189,6 @@ Required features not present in cpptasks releases prior to Feb 2005 <property name="projectsOnly" value="false" /> - - <property name="apr.lib.name" - value="apr-1" - /> - <property name="apr.sample.h" - value="apr_pools.h" - /> - <property name="apr.sample.c" value="file_io/unix/dir.c" - /> - <property name="apr-util.lib.name" value="aprutil-1" - /> - <property name="apr-util.sample.h" value="apr_xml.h" - /> - <property name="apr-util.sample.c" value="xml/apr_xml.c" - /> - <property name="esmtp.lib.name" value="esmtp" - /> - <property name="esmtp.sample.h" value="libesmtp.h" - /> - <property name="esmtp.sample.c" value="smtp-api.c" - /> </target> <target name="copy-if-changed-compare" diff --git a/src/ant/esmtp-build.xml b/src/ant/esmtp-build.xml deleted file mode 100644 index 3e7e63a..0000000 --- a/src/ant/esmtp-build.xml +++ /dev/null @@ -1,207 +0,0 @@ -<?xml version="1.0"?> -<!DOCTYPE project [ -<!ENTITY common SYSTEM 'common.xml'> -]> -<!-- - 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. - ---> - -<!-- - This file builds libesmtp using Apache Ant (http://ant.apache.org) - and the C++ compilation tasks from http://ant-contrib.sourceforge.net. ---> -<project name="esmtp" default="build"> - -&common; - -<property name="src.dir" - location="${basedir}" -/> -<property name="include.dir" - location="${src.dir}" -/> -<property name="test.dir" - location="${src.dir}/test" -/> -<property name="target.dir" - location="${basedir}/target" -/> -<property name="lib.type" - value="shared" -/> -<property name="projects.dir" - location="${target.dir}" -/> - -<target name="usage" - description="Displays usage notes on build"> - <echo></echo> -</target> - -<target name="init" - depends="common-init"> -</target> - -<target name="clean" - description="Removes build product files"> - <delete dir="${target.dir}" /> -</target> - -<target name="configure-check" - depends="init"> - <condition property="esmtp-configure-available" - value="true"> - <available file="${include.dir}/config.h" /> - </condition> -</target> - -<target name="win-configure" - depends="configure-check" - if="is-windows"> - <antcall target="copy-if-changed"> - <param name="file" - value="${include.dir}/config.h.in" - /> - <param name="tofile" - value="${include.dir}/config.h" - /> - </antcall> -</target> - -<target name="unix-configure" - depends="configure-check" - if="is-unix" - unless="esmtp-configure-available"> - <!-- Shelling to configure allows cygwin to work --> - <exec executable="sh" - dir="${src.dir}"> - <arg value="./configure" /> - </exec> -</target> - -<target name="configure" - depends="unix-configure, win-configure" -/> - -<target name="build" - depends="configure" - description="Build library"> - <mkdir dir="${executable.dir}/libesmtp-ofiles" /> - <property name="project.compiler" - value="${compiler}" - /> - - <cc name="${project.compiler}" - outfile="${executable.dir}/esmtp${lib-suffix}" - subsystem="console" - multithreaded="true" - outtype="${lib.type}" - objdir="${executable.dir}/libesmtp-ofiles" - outputfileproperty="esmtp.dll" - debug="${debug}" - projectsOnly="${projectsOnly}"> - <fileset dir="${src.dir}"> - <include name="*.c" /> - <exclude name="getaddrinfo.c" /> - <exclude name="gethostbyname.c" if="is-windows" /> - <exclude name="strdup.c" if="is-windows" /> - <exclude name="snprintf.c" if="is-windows" /> - <exclude name="auth-client.c" if="is-windows" /> - <!-- exclude name="siobuf.c" if="is-windows"/ --> - </fileset> - - <includepath path="${include.dir}" /> - <defineset define="HAVE_CONFIG_H" /> - <compilerarg value="${pic-option}" - if="pic-option" - /> - - <libset libs="advapi32 ws2_32 mswsock rpcrt4" - if="is-windows" - /> - <libset libs="ssl crypto" - if="is-unix" - /> - <libset libs="cw32mt" - if="is-bcc" - /> - - <project type="${project.type}" - outfile="${projects.dir}/projects/libesmtp" - if="project.if" - /> - </cc> -</target> - -<target name="build-projects"> - <mkdir dir="${projects.dir}" /> - <antcall target="build"> - <param name="project.if" - value="true" - /> - <param name="project.type" - value="${project.type}" - /> - <param name="project.compiler" - value="${project.compiler}" - /> - <param name="projects.dir" - value="${projects.dir}" - /> - <param name="projectsOnly" - value="true" - /> - </antcall> -</target> - -<target name="build-projects-vc6" - description="Builds project files for Microsoft Visual C++ 6"> - <antcall target="build-projects"> - <param name="project.type" - value="msvc6" - /> - <param name="project.compiler" - value="msvc" - /> - </antcall> -</target> - -<target name="build-projects-vc8" - description="Builds project files for Microsoft Visual C++ 2005"> - <antcall target="build-projects"> - <param name="project.type" - value="msvc8" - /> - <param name="project.compiler" - value="msvc" - /> - </antcall> -</target> - -<target name="build-projects-xcode" - description="Builds project files for Apple Xcode"> - <antcall target="build-projects"> - <param name="project.type" - value="xcode" - /> - <param name="project.compiler" - value="g++" - /> - </antcall> -</target> - -</project> diff --git a/src/ant/find-apr-util.xml b/src/ant/find-apr-util.xml deleted file mode 100644 index 10908ed..0000000 --- a/src/ant/find-apr-util.xml +++ /dev/null @@ -1,369 +0,0 @@ -<!-- - 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-apr-util-src" - depends="init"> - <condition property="apr-util.dir" - value="${with-apr-util}"> - <available file="${with-apr-util}" /> - </condition> - <condition property="apr-util.src.dir" - value="${apr-util.dir}"> - <available file="${apr-util.dir}/${apr-util.sample.c}" /> - </condition> - <condition property="apr-util.src.dir" - value="../apr-util"> - <available file="../apr-util/${apr-util.sample.c}" /> - </condition> -</target> - -<target name="find-apr-util-lib" - depends="find-apr-util-src" - unless="force-ant"> - <condition property="apr-util.lib.file" - value="${apr-util.dir}/lib${apr-util.lib.name}.la"> - <available file="${apr-util.dir}/lib${apr-util.lib.name}.la" /> - </condition> - <condition property="apr-util.lib.file" - value="${apr-util.dir}/lib${apr-util.lib.name}.dylib"> - <available file="${apr-util.dir}/lib${apr-util.lib.name}.dylib" /> - </condition> - <condition property="apr-util.lib.file" - value="${apr-util.dir}/lib${apr-util.lib.name}.so"> - <available file="${apr-util.dir}/lib${apr-util.lib.name}.so" /> - </condition> - <condition property="apr-util.lib.file" - value="${apr-util.dir}/lib${apr-util.lib.name}.a"> - <available file="${apr-util.dir}/lib${apr-util.lib.name}.a" /> - </condition> - <condition property="apr-util.lib.file" - value="${apr-util.dir}/${apr-util.lib.name}.lib"> - <available file="${apr-util.dir}/${apr-util.lib.name}.lib" /> - </condition> - <condition property="apr-util.lib.file.dir" - value="${apr-util.dir}"> - <isset property="apr-util.lib.file" /> - </condition> - - <condition property="apr-util.lib.file" - value="${apr-util.dir}/.libs/lib${apr-util.lib.name}.la"> - <available file="${apr-util.dir}/.libs/lib${apr-util.lib.name}.la" /> - </condition> - <condition property="apr-util.lib.file" - value="${apr-util.dir}/.libs/lib${apr-util.lib.name}.dylib"> - <available file="${apr-util.dir}/.libs/lib${apr-util.lib.name}.dylib" /> - </condition> - <condition property="apr-util.lib.file" - value="${apr-util.dir}/.libs/lib${apr-util.lib.name}.so"> - <available file="${apr-util.dir}/.libs/lib${apr-util.lib.name}.so" /> - </condition> - <condition property="apr-util.lib.file" - value="${apr-util.dir}/.libs/lib${apr-util.lib.name}.a"> - <available file="${apr-util.dir}/.libs/lib${apr-util.lib.name}.a" /> - </condition> - <condition property="apr-util.lib.file" - value="${apr-util.dir}/.libs/${apr-util.lib.name}.lib"> - <available file="${apr-util.dir}/.libs/${apr-util.lib.name}.lib" /> - </condition> - <condition property="apr-util.lib.file.dir" - value="${apr-util.dir}/.libs"> - <isset property="apr-util.lib.file" /> - </condition> - - <!-- Start looking at candidates in /usr --> - <condition property="apr-util.lib.file" - value="/usr/lib/lib${apr-util.lib.name}.la"> - <available file="/usr/lib/lib${apr-util.lib.name}.la" /> - </condition> - <condition property="apr-util.lib.file" - value="/usr/lib/lib${apr-util.lib.name}.dylib"> - <available file="/usr/lib/lib${apr-util.lib.name}.dylib" /> - </condition> - <condition property="apr-util.lib.file" - value="/usr/lib/lib${apr-util.lib.name}.so"> - <available file="/usr/lib/lib${apr-util.lib.name}.so" /> - </condition> - <condition property="apr-util.lib.file" - value="/usr/lib/lib${apr-util.lib.name}.a"> - <available file="/usr/lib/lib${apr-util.lib.name}.a" /> - </condition> - <condition property="apr-util.dir" value="/usr"> - <isset property="apr-util.lib.file" /> - </condition> - <condition property="apr-util.lib.file.dir" value="/usr/lib"> - <isset property="apr-util.lib.file" /> - </condition> - - <!-- start looking at candidates in /usr/local --> - <condition property="apr-util.lib.file" - value="/usr/local/lib/lib${apr-util.lib.name}.la"> - <available file="/usr/local/lib/lib${apr-util.lib.name}.la" /> - </condition> - <condition property="apr-util.lib.file" - value="/usr/local/lib/lib${apr-util.lib.name}.dylib"> - <available file="/usr/local/lib/lib${apr-util.lib.name}.dylib" /> - </condition> - <condition property="apr-util.lib.file" - value="/usr/local/lib/lib${apr-util.lib.name}.so"> - <available file="/usr/local/lib/lib${apr-util.lib.name}.so" /> - </condition> - <condition property="apr-util.lib.file" - value="/usr/local/lib/lib${apr-util.lib.name}.a"> - <available file="/usr/local/lib/lib${apr-util.lib.name}.a" /> - </condition> - <condition property="apr-util.dir" value="/usr/local"> - <isset property="apr-util.lib.file" /> - </condition> - <condition property="apr-util.lib.file.dir" value="/usr/local/lib"> - <isset property="apr-util.lib.file" /> - </condition> - - <property name="relative-apr-util" - location="../apr-util" - /> - <condition property="apr-util.dir" - value="${relative-apr-util}"> - <available file="${relative-apr-util}" /> - </condition> - <condition property="apr-util.lib.file" - value="${apr-util.dir}/lib${apr-util.lib.name}.la"> - <available file="${apr-util.dir}/lib${apr-util.lib.name}.la" /> - </condition> - <condition property="apr-util.lib.file" - value="${apr-util.dir}/lib${apr-util.lib.name}.dylib"> - <available file="${apr-util.dir}/lib${apr-util.lib.name}.dylib" /> - </condition> - <condition property="apr-util.lib.file" - value="${apr-util.dir}/lib${apr-util.lib.name}.so"> - <available file="${apr-util.dir}/lib${apr-util.lib.name}.so" /> - </condition> - <condition property="apr-util.lib.file" - value="${apr-util.dir}/lib${apr-util.lib.name}.a"> - <available file="${apr-util.dir}/lib${apr-util.lib.name}.a" /> - </condition> - <condition property="apr-util.lib.file" - value="${apr-util.dir}/${apr-util.lib.name}.lib"> - <available file="${apr-util.dir}/${apr-util.lib.name}.lib" /> - </condition> - <condition property="apr-util.lib.file.dir" - value="${apr-util.dir}"> - <isset property="apr-util.lib.file" /> - </condition> - - <condition property="apr-util.lib.file" - value="${apr-util.dir}/.libs/lib${apr-util.lib.name}.la"> - <available file="${apr-util.dir}/.libs/lib${apr-util.lib.name}.la" /> - </condition> - <condition property="apr-util.lib.file" - value="${apr-util.dir}/.libs/lib${apr-util.lib.name}.dylib"> - <available file="${apr-util.dir}/.libs/lib${apr-util.lib.name}.dylib" /> - </condition> - <condition property="apr-util.lib.file" - value="${apr-util.dir}/.libs/lib${apr-util.lib.name}.so"> - <available file="${apr-util.dir}/.libs/lib${apr-util.lib.name}.so" /> - </condition> - <condition property="apr-util.lib.file" - value="${apr-util.dir}/.libs/lib${apr-util.lib.name}.a"> - <available file="${apr-util.dir}/.libs/lib${apr-util.lib.name}.a" /> - </condition> - <condition property="apr-util.lib.file.dir" - value="${apr-util.dir}/.libs"> - <isset property="apr-util.lib.file" /> - </condition> - <fail unless="apr-util.dir">Unable to locate apr-util base directory.</fail> - - <!-- Static debug libraries in APR's VC6 projects typical location (ignored unless debug build) --> - <condition property="apr-util.lib.file" - value="${apr-util.dir}/LibD/${apr-util.lib.name}.lib"> - <and> - <isset property="is-debug" /> - <available file="${apr-util.dir}/LibD/${apr-util.lib.name}.lib" /> - </and> - </condition> - <condition property="apr-util.lib.file.dir" - value="${apr-util.dir}/LibD"> - <isset property="apr-util.lib.file" /> - </condition> - - <!-- Shared debug libraries in APR's VC6 projects typical location (ignored unless debug build) --> - <condition property="apr-util.lib.file" - value="${apr-util.dir}/Debug/lib${apr-util.lib.name}.lib"> - <and> - <isset property="is-debug" /> - <available file="${apr-util.dir}/Debug/lib${apr-util.lib.name}.lib" /> - </and> - </condition> - <condition property="apr-util.lib.file.dir" - value="${apr-util.dir}/Debug"> - <isset property="apr-util.lib.file" /> - </condition> - - <!-- Static release libraries in APR's VC6 projects typical location (ignored unless debug build) --> - <condition property="apr-util.lib.file" - value="${apr-util.dir}/LibR/${apr-util.lib.name}.lib"> - <available file="${apr-util.dir}/LibR/${apr-util.lib.name}.lib" /> - </condition> - <condition property="apr-util.lib.file.dir" - value="${apr-util.dir}/LibR"> - <isset property="apr-util.lib.file" /> - </condition> - - <!-- Shared release libraries in APR's VC6 projects typical location --> - <condition property="apr-util.lib.file" - value="${apr-util.dir}/Release/lib${apr-util.lib.name}.lib"> - <available file="${apr-util.dir}/Release/lib${apr-util.lib.name}.lib" /> - </condition> - <condition property="apr-util.lib.file.dir" - value="${apr-util.dir}/Release"> - <isset property="apr-util.lib.file" /> - </condition> - - <condition property="apr-util.lib.dir" - value="${apr-util.lib.file.dir}"> - <and> - <isset property="apr-util.lib.file.dir" /> - <not> - <or> - <!-- default search path --> - <equals arg1="${apr-util.lib.file.dir}" arg2="/usr" /> - </or> - </not> - </and> - </condition> - - <condition property="apr-util.lib.suffix" - value="d"> - <or> - <contains string="${apr-util.lib.file}" - substring="/lib${apr-util.lib.name}d." - /> - <contains string="${apr-util.lib.file}" - substring="/${apr-util.lib.name}d." - /> - </or> - </condition> - <condition property="apr-util.lib.suffix" - value="D"> - <or> - <contains string="${apr-util.lib.file}" - substring="/lib${apr-util.lib.name}D." - /> - <contains string="${apr-util.lib.file}" - substring="/${apr-util.lib.name}D." - /> - </or> - </condition> - <condition property="apr-util.lib.suffix" - value=""> - <isset property="apr-util.lib.file" /> - </condition> - - <condition property="apr-util.lib.prefix" - value="lib"> - <or> - <contains string="[${apr-util.lib.file}]" - substring="/lib${apr-util.lib.name}.lib]" - /> - </or> - </condition> - <condition property="apr-util.lib.prefix" - value=""> - <isset property="apr-util.lib.file" /> - </condition> - - <condition property="apr-util.lib.type" - value="shared"> - <or> - <contains string="${apr-util.lib.file}]" - substring=".dylib]" - casesensitive="no" - /> - <contains string="${apr-util.lib.file}]" - substring=".so]" - casesensitive="no" - /> - <contains string="${apr-util.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="${apr-util.lib.file}]" - substring=".lib]" - casesensitive="no" - /> - <isfileselected file="${apr-util.lib.file}"> - <size value="250000" when="less" /> - </isfileselected> - </and> - </or> - </condition> - - <condition property="apr-util.lib.type" - value="static"> - <isset property="apr-util.lib.file" /> - </condition> -</target> - -<target name="find-apr-util" - depends="find-apr-util-lib"> - <!-- - Use character ref to prevent directory name from being changed on global search and - replacements. - --> - <condition property="apr-util.include.dir" - value="${apr-util.dir}/include/apr-1.0"> - <available file="${apr-util.dir}/include/apr-1.0/${apr-util.sample.h}" /> - </condition> - <condition property="apr-util.include.dir" - value="${apr-util.dir}/include/apr-1"> - <available file="${apr-util.dir}/include/apr-1/${apr-util.sample.h}" /> - </condition> - <condition property="apr-util.include.dir" - value="${apr-util.dir}/include"> - <available file="${apr-util.dir}/include/${apr-util.sample.h}" /> - </condition> - <condition property="apr-util.include.dir" - value="${apr-util.dir}/../usr/include/apr-1"> - <available file="${apr-util.dir}/../usr/include/apr-1/${apr-util.sample.h}" /> - </condition> - <condition property="apr-util.include.dir" - value="${apr-util.src.dir}/include"> - <available file="${apr-util.src.dir}/include/${apr-util.sample.h}" /> - </condition> - - <condition property="apr-util.dir" - value="${apr-util.src.dir}"> - <isset property="apr-util.src.dir" /> - </condition> - - <echo>apr-util-find: -apr-util.dir=${apr-util.dir} -apr-util.include.dir=${apr-util.include.dir} -apr-util.src.dir=${apr-util.src.dir} -apr-util.lib.file=${apr-util.lib.file} -apr-util.lib.file.dir=${apr-util.lib.file.dir} -apr-util.lib.dir=${apr-util.lib.dir} -apr-util.lib.prefix=${apr-util.lib.prefix} -apr-util.lib.suffix=${apr-util.lib.suffix} -apr-util.lib.type=${apr-util.lib.type} - </echo> -</target> diff --git a/src/ant/find-apr.xml b/src/ant/find-apr.xml deleted file mode 100644 index d29d7aa..0000000 --- a/src/ant/find-apr.xml +++ /dev/null @@ -1,370 +0,0 @@ -<!-- - 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-apr-src" - depends="init"> - <condition property="apr.dir" - value="${with-apr}"> - <available file="${with-apr}" /> - </condition> - <condition property="apr.src.dir" - value="${apr.dir}"> - <available file="${apr.dir}/${apr.sample.c}" /> - </condition> - <condition property="apr.src.dir" - value="../apr"> - <available file="../apr/${apr.sample.c}" /> - </condition> -</target> - -<target name="find-apr-lib" - depends="find-apr-src" - unless="force-ant"> - <condition property="apr.lib.file" - value="${apr.dir}/lib${apr.lib.name}.la"> - <available file="${apr.dir}/lib${apr.lib.name}.la" /> - </condition> - <condition property="apr.lib.file" - value="${apr.dir}/lib${apr.lib.name}.dylib"> - <available file="${apr.dir}/lib${apr.lib.name}.dylib" /> - </condition> - <condition property="apr.lib.file" - value="${apr.dir}/lib${apr.lib.name}.so"> - <available file="${apr.dir}/lib${apr.lib.name}.so" /> - </condition> - <condition property="apr.lib.file" - value="${apr.dir}/lib${apr.lib.name}.a"> - <available file="${apr.dir}/lib${apr.lib.name}.a" /> - </condition> - <condition property="apr.lib.file" - value="${apr.dir}/${apr.lib.name}.lib"> - <available file="${apr.dir}/${apr.lib.name}.lib" /> - </condition> - <condition property="apr.lib.file.dir" - value="${apr.dir}"> - <isset property="apr.lib.file" /> - </condition> - - <condition property="apr.lib.file" - value="${apr.dir}/.libs/lib${apr.lib.name}.la"> - <available file="${apr.dir}/.libs/lib${apr.lib.name}.la" /> - </condition> - <condition property="apr.lib.file" - value="${apr.dir}/.libs/lib${apr.lib.name}.dylib"> - <available file="${apr.dir}/.libs/lib${apr.lib.name}.dylib" /> - </condition> - <condition property="apr.lib.file" - value="${apr.dir}/.libs/lib${apr.lib.name}.so"> - <available file="${apr.dir}/.libs/lib${apr.lib.name}.so" /> - </condition> - <condition property="apr.lib.file" - value="${apr.dir}/.libs/lib${apr.lib.name}.a"> - <available file="${apr.dir}/.libs/lib${apr.lib.name}.a" /> - </condition> - <condition property="apr.lib.file" - value="${apr.dir}/.libs/${apr.lib.name}.lib"> - <available file="${apr.dir}/.libs/${apr.lib.name}.lib" /> - </condition> - <condition property="apr.lib.file.dir" - value="${apr.dir}/.libs"> - <isset property="apr.lib.file" /> - </condition> - - <!-- Start looking at candidates in /usr --> - <condition property="apr.lib.file" - value="/usr/lib/lib${apr.lib.name}.la"> - <available file="/usr/lib/lib${apr.lib.name}.la" /> - </condition> - <condition property="apr.lib.file" - value="/usr/lib/lib${apr.lib.name}.dylib"> - <available file="/usr/lib/lib${apr.lib.name}.dylib" /> - </condition> - <condition property="apr.lib.file" - value="/usr/lib/lib${apr.lib.name}.so"> - <available file="/usr/lib/lib${apr.lib.name}.so" /> - </condition> - <condition property="apr.lib.file" - value="/usr/lib/lib${apr.lib.name}.a"> - <available file="/usr/lib/lib${apr.lib.name}.a" /> - </condition> - <condition property="apr.dir" value="/usr"> - <isset property="apr.lib.file" /> - </condition> - <condition property="apr.lib.file.dir" - value="/usr/lib"> - <isset property="apr.lib.file" /> - </condition> - - <!-- start looking at candidates in /usr/local --> - <condition property="apr.lib.file" - value="/usr/local/lib/lib${apr.lib.name}.la"> - <available file="/usr/local/lib/lib${apr.lib.name}.la" /> - </condition> - <condition property="apr.lib.file" - value="/usr/local/lib/lib${apr.lib.name}.dylib"> - <available file="/usr/local/lib/lib${apr.lib.name}.dylib" /> - </condition> - <condition property="apr.lib.file" - value="/usr/local/lib/lib${apr.lib.name}.so"> - <available file="/usr/local/lib/lib${apr.lib.name}.so" /> - </condition> - <condition property="apr.lib.file" - value="/usr/local/lib/lib${apr.lib.name}.a"> - <available file="/usr/local/lib/lib${apr.lib.name}.a" /> - </condition> - <condition property="apr.dir" - value="/usr/local"> - <isset property="apr.lib.file" /> - </condition> - <condition property="apr.lib.file.dir" - value="/usr/local/lib"> - <isset property="apr.lib.file" /> - </condition> - - <property name="relative-apr" - location="../apr" - /> - <condition property="apr.dir" - value="${relative-apr}"> - <available file="${relative-apr}" /> - </condition> - <condition property="apr.lib.file" - value="${apr.dir}/lib${apr.lib.name}.la"> - <available file="${apr.dir}/lib${apr.lib.name}.la" /> - </condition> - <condition property="apr.lib.file" - value="${apr.dir}/lib${apr.lib.name}.dylib"> - <available file="${apr.dir}/lib${apr.lib.name}.dylib" /> - </condition> - <condition property="apr.lib.file" - value="${apr.dir}/lib${apr.lib.name}.so"> - <available file="${apr.dir}/lib${apr.lib.name}.so" /> - </condition> - <condition property="apr.lib.file" - value="${apr.dir}/lib${apr.lib.name}.a"> - <available file="${apr.dir}/lib${apr.lib.name}.a" /> - </condition> - <condition property="apr.lib.file" - value="${apr.dir}/${apr.lib.name}.lib"> - <available file="${apr.dir}/${apr.lib.name}.lib" /> - </condition> - <condition property="apr.lib.file.dir" value="${apr.dir}"> - <isset property="apr.lib.file" /> - </condition> - - <condition property="apr.lib.file" - value="${apr.dir}/.libs/lib${apr.lib.name}.la"> - <available file="${apr.dir}/.libs/lib${apr.lib.name}.la" /> - </condition> - <condition property="apr.lib.file" - value="${apr.dir}/.libs/lib${apr.lib.name}.dylib"> - <available file="${apr.dir}/.libs/lib${apr.lib.name}.dylib" /> - </condition> - <condition property="apr.lib.file" - value="${apr.dir}/.libs/lib${apr.lib.name}.so"> - <available file="${apr.dir}/.libs/lib${apr.lib.name}.so" /> - </condition> - <condition property="apr.lib.file" - value="${apr.dir}/.libs/lib${apr.lib.name}.a"> - <available file="${apr.dir}/.libs/lib${apr.lib.name}.a" /> - </condition> - <condition property="apr.lib.file.dir" value="${apr.dir}/.libs"> - <isset property="apr.lib.file" /> - </condition> - <fail unless="apr.dir">Unable to locate apr base directory.</fail> - - <!-- Static debug libraries in APR's VC6 projects typical location (ignored unless debug build) --> - <condition property="apr.lib.file" - value="${apr.dir}/LibD/${apr.lib.name}.lib"> - <and> - <isset property="is-debug" /> - <available file="${apr.dir}/LibD/${apr.lib.name}.lib" /> - </and> - </condition> - <condition property="apr.lib.file.dir" - value="${apr.dir}/LibD"> - <isset property="apr.lib.file" /> - </condition> - - <!-- Shared debug libraries in APR's VC6 projects typical location (ignored unless debug build) --> - <condition property="apr.lib.file" - value="${apr.dir}/Debug/lib${apr.lib.name}.lib"> - <and> - <isset property="is-debug" /> - <available file="${apr.dir}/Debug/lib${apr.lib.name}.lib" /> - </and> - </condition> - <condition property="apr.lib.file.dir" - value="${apr.dir}/Debug"> - <isset property="apr.lib.file" /> - </condition> - - <!-- Static release libraries in APR's VC6 projects typical location (ignored unless debug build) --> - <condition property="apr.lib.file" - value="${apr.dir}/LibR/${apr.lib.name}.lib"> - <available file="${apr.dir}/LibR/${apr.lib.name}.lib" /> - </condition> - <condition property="apr.lib.file.dir" - value="${apr.dir}/LibR"> - <isset property="apr.lib.file" /> - </condition> - - <!-- Shared release libraries in APR's VC6 projects typical location --> - <condition property="apr.lib.file" - value="${apr.dir}/Release/lib${apr.lib.name}.lib"> - <available file="${apr.dir}/Release/lib${apr.lib.name}.lib" /> - </condition> - <condition property="apr.lib.file.dir" - value="${apr.dir}/Release"> - <isset property="apr.lib.file" /> - </condition> - - <condition property="apr.lib.dir" - value="${apr.lib.file.dir}"> - <and> - <isset property="apr.lib.file.dir" /> - <not> - <or> - <!-- default search path --> - <equals arg1="${apr.lib.file.dir}" arg2="/usr" /> - </or> - </not> - </and> - </condition> - - <condition property="apr.lib.suffix" - value="d"> - <or> - <contains string="${apr.lib.file}" - substring="/lib${apr.lib.name}d." - /> - <contains string="${apr.lib.file}" - substring="/${apr.lib.name}d." - /> - </or> - </condition> - <condition property="apr.lib.suffix" - value="D"> - <or> - <contains string="${apr.lib.file}" - substring="/lib${apr.lib.name}D." - /> - <contains string="${apr.lib.file}" - substring="/${apr.lib.name}D." - /> - </or> - </condition> - <condition property="apr.lib.suffix" - value=""> - <isset property="apr.lib.file" /> - </condition> - - <condition property="apr.lib.prefix" - value="lib"> - <or> - <contains string="[${apr.lib.file}]" - substring="/lib${apr.lib.name}.lib]" - /> - </or> - </condition> - <condition property="apr.lib.prefix" - value=""> - <isset property="apr.lib.file" /> - </condition> - - <condition property="apr.lib.type" - value="shared"> - <or> - <contains string="${apr.lib.file}]" - substring=".dylib]" - casesensitive="no" - /> - <contains string="${apr.lib.file}]" - substring=".so]" - casesensitive="no" - /> - <contains string="${apr.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="${apr.lib.file}]" - substring=".lib]" - casesensitive="no" - /> - <isfileselected file="${apr.lib.file}"> - <size value="250000" when="less" /> - </isfileselected> - </and> - </or> - </condition> - - <condition property="apr.lib.type" - value="static"> - <isset property="apr.lib.file" /> - </condition> -</target> - -<target name="find-apr" - depends="find-apr-lib"> - <!-- - Use character ref to prevent directory name from being changed on global search and - replacements. - --> - <condition property="apr.include.dir" - value="${apr.dir}/include/apr-1.0"> - <available file="${apr.dir}/include/apr-1.0/${apr.sample.h}" /> - </condition> - <condition property="apr.include.dir" - value="${apr.dir}/include/apr-1"> - <available file="${apr.dir}/include/apr-1/${apr.sample.h}" /> - </condition> - <condition property="apr.include.dir" - value="${apr.dir}/include"> - <available file="${apr.dir}/include/${apr.sample.h}" /> - </condition> - <condition property="apr.include.dir" - value="${apr.dir}/../usr/include/apr-1"> - <available file="${apr.dir}/../usr/include/apr-1/${apr.sample.h}" /> - </condition> - <condition property="apr.include.dir" - value="${apr.src.dir}/include"> - <available file="${apr.src.dir}/include/${apr.sample.h}" /> - </condition> - - <condition property="apr.dir" - value="${apr.src.dir}"> - <isset property="apr.src.dir" /> - </condition> - - <echo>apr-find: -apr.dir=${apr.dir} -apr.include.dir=${apr.include.dir} -apr.src.dir=${apr.src.dir} -apr.lib.file=${apr.lib.file} -apr.lib.file.dir=${apr.lib.file.dir} -apr.lib.dir=${apr.lib.dir} -apr.lib.prefix=${apr.lib.prefix} -apr.lib.suffix=${apr.lib.suffix} -apr.lib.type=${apr.lib.type} - </echo> -</target> diff --git a/src/ant/find-libesmtp.xml b/src/ant/find-libesmtp.xml deleted file mode 100644 index 2767658..0000000 --- a/src/ant/find-libesmtp.xml +++ /dev/null @@ -1,363 +0,0 @@ -<!-- - 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> \ No newline at end of file diff --git a/src/assembly/source.xml b/src/assembly/source.xml index 063d336..860fb2e 100644 --- a/src/assembly/source.xml +++ b/src/assembly/source.xml @@ -45,6 +45,7 @@ <includes> <include>aclocal.m4</include> <include>build.xml</include> + <include>CMakeLists.txt</include> <include>configure.ac</include> <include>config.guess</include> <include>config.sub</include> @@ -104,48 +105,6 @@ <fileMode>0644</fileMode> <directoryMode>0755</directoryMode> </fileSet> - - <!-- - Special handling for project files. - - Project files are generated in the target directory and contain relative paths out of that dir - into the project's src dir and that of apr. Those relative paths stay valid only if those files - are placed in the same hierarchy level in the release archive. If the files are generated in a - different level, the placement in the release archive needs to be adopted and vice versa. That's - why the release archive structure is not replicated in the target directory, we need to stay - with two levels, but that allows us to keep the target dir somewhat clean and provide a logical - structure in the release archive. - --> - <fileSet> - <directory>target/projects</directory> - <lineEnding>keep</lineEnding> - <outputDirectory>projects/vc6</outputDirectory> - - <includes> - <include>*.dsp</include> - <include>*.dsw</include> - </includes> - - <excludes> - <exclude>apr*.ds*</exclude> - <exclude>xml.ds*</exclude> - </excludes> - - <fileMode>0644</fileMode> - </fileSet> - - <fileSet> - <directory>target/projects</directory> - <lineEnding>keep</lineEnding> - <outputDirectory>projects/xcode</outputDirectory> - - <includes> - <include>*.xcodeproj/project.pbxproj</include> - </includes> - - <fileMode>0644</fileMode> - <directoryMode>0755</directoryMode> - </fileSet> </fileSets> </assembly> diff --git a/src/site/apt/building/cmake.apt b/src/site/apt/building/cmake.apt new file mode 100644 index 0000000..1ebc303 --- /dev/null +++ b/src/site/apt/building/cmake.apt @@ -0,0 +1,75 @@ +~~ 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. + ------ + Building Apache log4cxx with CMake + ------ + ------ + ------ + +Building Apache log4cxx with cmake + +* Quick start: + + Make sure cmake 3.13+, g++ and make are available, install or + build apr 1.x, apr-util 1.x, gzip and zip. + ++------------+ +$ apt-get install build-essential libapr1-dev libaprutil1-dev gzip zip +$ cd apache-log4cxx-x.x.x +$ mkdir build +$ cd build +$ ccmake .. +$ make +$ sudo make install ++------------+ + +* ccmake options +*------------------------+---------------------------------------------------------------------------------------------+ +| -DLOG4CXX_WCHAR_T=no | Enable wchar_t API methods, choice of yes (default), no. | +*------------------------+---------------------------------------------------------------------------------------------+ +| -DLOG4CXX_UNICHAR=yes | Enable UniChar API methods, choice of yes, no (default). | +*------------------------+---------------------------------------------------------------------------------------------+ +| -DLOG4CXX_CFSTRING=yes | Enable CFString API methods, requires Mac OS/X CoreFoundation, choice of yes, no (default). | +*------------------------+---------------------------------------------------------------------------------------------+ + +* Platform specific notes: + +** Mac OS/X: + + APR and APR-Util are provided by the platform in Mac OS/X 10.5 and iODBC in 10.4. + +** Debian: + + APR, APR-Util, gzip and zip may be installed by: + ++----+ +$ sudo apt-get install libapr1-dev libaprutil1-dev gzip zip ++----+ + +** FreeBSD: + + APR, APR-Util, gzip and zip may be installed from the ports collection by: + ++----+ +# cd /usr/ports/archivers/zip +# make +# make install +# cd /usr/ports/archivers/gzip +# make +# make install +# cd /usr/ports/devel/apr +# make +# make install ++----+ diff --git a/src/site/apt/building/vcpkg.apt b/src/site/apt/building/vcpkg.apt new file mode 100644 index 0000000..e7eff5f --- /dev/null +++ b/src/site/apt/building/vcpkg.apt @@ -0,0 +1,41 @@ +~~ 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. + ------ + Building Apache log4cxx with vcpkg + ------ + ------ + ------ + +Building Apache log4cxx with vcpkg + +*Preparation + ++----+ + > git clone https://github.com/Microsoft/vcpkg.git + > cd vcpkg + + PS> .\bootstrap-vcpkg.bat + Linux:~/$ ./bootstrap-vcpkg.sh + + Then, to hook up user-wide integration, run (note: requires admin on first use) + + PS> .\vcpkg integrate install + Linux:~/$ ./vcpkg integrate install ++----+ + +*Building log4cxx.dll + + PS> .\vcpkg install log4cxx + Linux:~/$ ./vcpkg install log4cxx diff --git a/src/site/site.xml b/src/site/site.xml index c33ae73..6941262 100644 --- a/src/site/site.xml +++ b/src/site/site.xml @@ -111,17 +111,14 @@ <item name="autotools" href="/building/autotools.html" /> - <item name="Apache Ant" - href="/building/ant.html" - /> <item name="Apache Maven 2" href="/building/maven.html" /> - <item name="Microsoft Visual Studio" - href="/building/vstudio.html" + <item name="Microsoft vcpkg" + href="/building/vcpkg.html" /> - <item name="Apple Xcode" - href="/building/xcode.html" + <item name="CMake" + href="/building/cmake.html" /> </item> </menu>
