mail/configure.in
author Mike Hommey <mh+mozilla@glandium.org>
Tue, 01 Jul 2014 14:24:43 +0900
changeset 20414 82fdf36eab593bdb093e33ae461ce94bd62a1313
parent 20409 cb73a677170449d6dc7686756645ae1a2eb74f44
child 20708 949e0465b1c39f629dc4e2ecb1d9cf607432d0c3
permissions -rw-r--r--
Bug 1031291 - Prepare comm-central to m-c changes from bug 762358 on a CLOSED TREE. r=jcranmer

dnl -*- Mode: Autoconf; tab-width: 2; indent-tabs-mode: nil; -*-
dnl vi: set tabstop=2 shiftwidth=2 expandtab:
dnl This Source Code Form is subject to the terms of the Mozilla Public
dnl License, v. 2.0. If a copy of the MPL was not distributed with this
dnl file, You can obtain one at http://mozilla.org/MPL/2.0/.

dnl Things we need to carry from confvars.sh
AC_DEFINE(MOZ_THUNDERBIRD)
AC_SUBST(MOZ_THUNDERBIRD)
AC_SUBST(MOZ_COMPOSER)
AC_SUBST(THUNDERBIRD_VERSION)

dnl Optional parts of the build.
AC_SUBST(MOZ_MORK)
if test "$MOZ_MORK"; then
  AC_DEFINE(MOZ_MORK)
  MORK_MODULE="MODULE(nsMorkModule)"
fi
if test "$OS_ARCH" != "WINNT"; then
  MOZ_MOVEMAIL=1
  HAVE_MOVEMAIL=1
  AC_DEFINE(HAVE_MOVEMAIL)
fi
AC_SUBST(MOZ_MOVEMAIL)

dnl Get other versions (for the calendar plugin)
if test "$COMM_BUILD" = "1"; then
  commdir=$topsrcdir
else
  commdir=$topsrcdir/..
fi
SEAMONKEY_VERSION=`cat $commdir/suite/config/version.txt`
AC_SUBST(SEAMONKEY_VERSION)

dnl =========================================================
dnl = Lightning extension
dnl =========================================================
MOZ_ARG_ENABLE_BOOL(calendar,
[  --enable-calendar      Enable building of the Lightning calendar extension],
    MOZ_CALENDAR=1,
    MOZ_CALENDAR= )
AC_SUBST(MOZ_CALENDAR)

MOZ_ARG_ENABLE_BOOL(incomplete-external-linkage,
[  --enable-incomplete-external-linkage Changes some comm-central code to be built with external linkage. Developer only option, incomplete broken builds will result - There are already existing bugs for this. ],
    MOZ_INCOMPLETE_EXTERNAL_LINKAGE=1,
    MOZ_INCOMPLETE_EXTERNAL_LINKAGE= )

AC_SUBST(MOZ_INCOMPLETE_EXTERNAL_LINKAGE)

dnl =========================================================
dnl = LDAP
dnl =========================================================
MOZ_ARG_DISABLE_BOOL(ldap,
[  --disable-ldap          Disable LDAP support],
    MOZ_LDAP_XPCOM=,
    MOZ_LDAP_XPCOM=1)

if test "$MOZ_LDAP_XPCOM"; then
    LDAP_CFLAGS='-I${DIST}/public/ldap'
    if test "$OS_ARCH" = "WINNT"; then
        if test -n "$GNU_CC"; then
            LDAP_LIBS='-L$(DIST)/lib -lnsldap32v60 -lnsldappr32v60 -lnsldif32v60'
        else
            LDAP_LIBS='$(DIST)/lib/$(LIB_PREFIX)nsldap32v60.${IMPORT_LIB_SUFFIX} $(DIST)/lib/$(LIB_PREFIX)nsldappr32v60.${IMPORT_LIB_SUFFIX} $(DIST)/lib/$(LIB_PREFIX)nsldif32v60.${IMPORT_LIB_SUFFIX}'
        fi
    else
        LDAP_LIBS='-L${DIST}/bin -L${DIST}/lib -lldap60 -lprldap60 -lldif60'
    fi

    LDAP_MODULE="MODULE(nsLDAPProtocolModule)"
fi

AC_SUBST(MOZ_LDAP_XPCOM)
AC_SUBST(LDAP_CFLAGS)
AC_SUBST(LDAP_LIBS)

dnl =========================================================
dnl = MAPI support (Windows only)
dnl =========================================================

if test "$_WIN32_MSVC"; then
    MOZ_MAPI_SUPPORT=1
fi

MOZ_ARG_DISABLE_BOOL(mapi,
[  --disable-mapi          Disable MAPI support],
    MOZ_MAPI_SUPPORT= )

AC_SUBST(MOZ_MAPI_SUPPORT)

if test -n "$MOZ_MAPI_SUPPORT"; then
    AC_DEFINE(MOZ_MAPI_SUPPORT)
    MAIL_MODULE="$MAIL_MODULE MODULE(msgMapiModule)"
fi

if test -z "$MOZ_INCOMPLETE_EXTERNAL_LINKAGE"; then
  MOZ_APP_COMPONENT_MODULES="MODULE(nsMailCompsModule) $MAIL_MODULE $LDAP_MODULE $MORK_MODULE"
  MOZ_APP_EXTRA_LIBS="$LDAP_LIBS"
fi

# if we're building the LDAP XPCOM component, we need to build
# the c-sdk first.
if test -n "$COMPILE_ENVIRONMENT" -a -n "$MOZ_LDAP_XPCOM"; then
    # Save configure args so we can restore them after configuring LDAP.
    _save_ac_configure_args="$ac_configure_args"
    ac_configure_args="$_SUBDIR_CONFIG_ARGS"

    mkdir -p ../ldap/sdks/c-sdk/ldap
    # these subdirs may not yet have been created in the build tree.
    # don't use the "-p" switch to mkdir, since not all platforms have it
    if test ! -d "ldap/sdks/c-sdk/ldap"; then
        if test ! -d "ldap/sdks/c-sdk"; then
            if test ! -d "ldap/sdks"; then
                if test ! -d "ldap"; then
                    mkdir "ldap"
                fi
                mkdir "ldap/sdks"
            fi
            mkdir "ldap/sdks/c-sdk"
        fi
        mkdir "ldap/sdks/c-sdk/ldap"
    fi

    ac_configure_args="$_SUBDIR_CONFIG_ARGS --prefix=$MOZ_BUILD_ROOT/dist --with-dist-prefix=$MOZ_BUILD_ROOT/dist --without-nss --with-mozilla"
    if test -n "$HAVE_64BIT_BUILD"; then
        dnl A 64-bit OS was (auto-)detected: (explicitly) enable 64-bit support.
        ac_configure_args="$ac_configure_args --enable-64bit"
    fi
    if test -n "$LIBXUL_SDK"; then
        ac_configure_args="$ac_configure_args --with-nspr=$LIBXUL_DIST"
    fi

    dnl The cache file needs to be an absolute path to work properly.
    cache_file_base=`dirname $cache_file`
    cache_file=`cd $cache_file_base && pwd`/`basename $cache_file`

    AC_OUTPUT_SUBDIRS(../ldap/sdks/c-sdk)
    ac_configure_args="$_save_ac_configure_args"
fi # COMPILE_ENVIRONMENT && MOZ_LDAP_XPCOM