Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 


Quelle  sub.configure   Sprache: unbekannt

 
# -*- Mode: python; 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/.


@depends(build_environment)
@imports("logging")
@imports(_from="__builtin__", _import="object")
@imports(_from="mozbuild.configure.util", _import="ConfigureOutputHandler")
def old_js_configure(build_env):
    class PrefixOutput(object):
        def __init__(self, prefix, fh):
            self._fh = fh
            self._begin_line = True
            self._prefix = prefix

        def write(self, content):
            if self._begin_line:
                self._fh.write(self._prefix)
            self._fh.write(("\n" + self._prefix).join(content.splitlines()))
            self._begin_line = content.endswith("\n")
            if self._begin_line:
                self._fh.write("\n")

        def flush(self):
            self._fh.flush()

    logger = logging.getLogger("moz.configure")
    formatter = logging.Formatter("js/src> %(levelname)s: %(message)s")
    for handler in logger.handlers:
        handler.setFormatter(formatter)
        if isinstance(handler, ConfigureOutputHandler):
            handler._stdout = PrefixOutput("js/src> ", handler._stdout)
    return os.path.join(build_env.topsrcdir, "js", "src", "old-configure")


@depends(old_configure.substs, mozconfig)
def old_js_configure_env(substs, mozconfig):
    substs = dict(substs)
    # Here, we mimic what we used to do from old-configure, which makes this
    # all awkward.

    # Variables that were explicitly exported from old-configure, and those
    # explicitly set in the environment when invoking old-configure, were
    # automatically inherited from subconfigure. We assume the relevant ones
    # have a corresponding AC_SUBST in old-configure, making them available
    # in `substs`.
    extra_env = {}

    for var in (
        "MOZ_DEV_EDITION",
        "STLPORT_LIBS",
    ):
        if var in substs:
            value = substs[var]
        elif (
            mozconfig
            and var in mozconfig
            and not mozconfig[var][1].startswith("removed")
        ):
            value = mozconfig[var][0]
        else:
            continue
        if isinstance(value, list):
            value = " ".join(value)
        extra_env[var] = value

    return extra_env


old_js_configure = old_configure_for(old_js_configure, extra_env=old_js_configure_env)
set_config("OLD_JS_CONFIGURE_SUBSTS", old_js_configure.substs)
set_config("OLD_JS_CONFIGURE_DEFINES", old_js_configure.defines)


@dependable
@imports("logging")
@imports(_from="mozbuild.configure.util", _import="ConfigureOutputHandler")
def post_old_js_configure():
    # Restore unprefixed logging.
    formatter = logging.Formatter("%(levelname)s: %(message)s")
    logger = logging.getLogger("moz.configure")
    for handler in logger.handlers:
        handler.setFormatter(formatter)
        if isinstance(handler, ConfigureOutputHandler):
            handler._stdout.flush()
            handler._stdout = handler._stdout._fh

[ Dauer der Verarbeitung: 0.26 Sekunden  (vorverarbeitet)  ]

                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Produkte
     Quellcodebibliothek

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....
    

Besucherstatistik

Besucherstatistik

Monitoring

Montastic status badge