suite/moz.configure
author Bill Gianopoulos <wgianopoulos@gmail.com>
Sun, 13 Jan 2019 08:32:52 -0500
changeset 34191 ec1e8d9385524a2b36a4fec23528310d505388e3
parent 33595 b44fb89ce5da72077d5d0ebf5ef12efcd9945a5f
permissions -rw-r--r--
Bug 1519872 - Replace configure.in with moz.configure in SeaMMonkey. r=frg Port Bug 1490765 [delete code for application-specific subconfigure scripts]. See Bug 1490867 for Thunderbird and previous temporary solution.

# -*- Mode: python; c-basic-offset: 4; indent-tabs-mode: nil; tab-width: 40 -*-
# vim: set filetype=python:
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.

set_config('MOZ_SUITE', True)
set_define('MOZ_SUITE', True)

 
@depends(target_is_windows, target_is_linux)
def bundled_fonts(is_windows, is_linux):
    if is_windows or is_linux:
        return True

set_config('MOZ_BUNDLED_FONTS', bundled_fonts)
add_old_configure_assignment('MOZ_BUNDLED_FONTS', bundled_fonts)

@depends(check_build_environment, '--help')
def comm_paths(build_env, _):
    topsrcdir = build_env.topsrcdir
    topobjdir = build_env.topobjdir

    moztopsrcdir=topsrcdir
    commtopsrcdir='%s/comm' % topsrcdir
    mozreltopsrcdir='.'
    commreltopsrcdir='comm'
    commtopobjdir='%s/comm' % topobjdir

    return namespace(moztopsrcdir=moztopsrcdir,
                     commtopsrcdir=commtopsrcdir,
                     mozreltopsrcdir=mozreltopsrcdir,
                     commreltopsrcdir=commreltopsrcdir,
                     commtopobjdir=commtopobjdir)

@template
def set_defconf(k,v):
    set_config(k,v)
    set_define(k,v)
    add_old_configure_assignment(k,v)

set_defconf('moztopsrcdir', comm_paths.moztopsrcdir)
set_defconf('commtopsrcdir', comm_paths.commtopsrcdir)
set_defconf('mozreltopsrcdir', comm_paths.mozreltopsrcdir)
set_defconf('commreltopsrcdir', comm_paths.commreltopsrcdir)
set_defconf('commtopobjdir', comm_paths.commtopobjdir)


@depends(check_build_environment, application)
@imports(_from='os.path', _import='exists')
@imports(_from='__builtin__', _import='open')
def seamonkey_version(build_env, app_path):
    version_file = os.path.join(build_env.topsrcdir, app_path[0],
                                'config', 'version.txt')
    version_file_display = os.path.join(build_env.topsrcdir, app_path[0],
                                'config', 'version_display.txt')
    rv = []
    for f in [ version_file, version_file_display ]:
        if exists(f):
            f_value = open(f).read().strip()
        else:
            f_value = 'unknown'
        rv.append(f_value)

    return namespace(version=rv[0],
                     version_display=rv[1])

set_defconf('SEAMONKEY_VERSION', seamonkey_version.version)
set_defconf('SEAMONKEY_VERSION_DISPLAY', seamonkey_version.version_display)

set_define('MOZ_SEPARATE_MANIFEST_FOR_THEME_OVERRIDES', True)

imply_option('MOZ_PLACES', True)
imply_option('MOZ_SERVICES_SYNC', False)
imply_option('MOZ_ALLOW_LEGACY_EXTENSIONS', True)

# Building extensions is disabled by default.
# Bug 1231349 needs to be fixed first for l10n builds.
# Set desired defaults to True from False when the l10n bug is fixed.

# =========================================================
# = ChatZilla extension
# =========================================================
option('--enable-irc', default=False,
       help='Enable building of the ChatZilla IRC extension')

@depends_if('--enable-irc')
def irc(arg):
    return True

set_config('MOZ_IRC', irc)

# =========================================================
# = DOM Inspector extension
# =========================================================
option('--enable-dominspector', default=False,
       help='Enable building of the DOM Inspector extension')

@depends_if('--enable-dominspector')
def dominspector(arg):
    return True

set_config('MOZ_DOMINSPECTOR', dominspector)

# =========================================================
# = DebugQA extension
# =========================================================
option('--enable-debugqa', default=False,
       help='Enable building of the DebugQA extension')

@depends_if('--enable-debugqa')
def debugqa(arg):
    return True

set_config('MOZ_DEBUGQA', debugqa)

include('../mailnews/moz.configure')
include('../../toolkit/moz.configure')