Commit d5bd282a authored by Phil Ringnalda's avatar Phil Ringnalda
Browse files

Back out 3 changesets (bug 1253436) for build bustage on a CLOSED TREE

Backed out changeset 4167dfdf1045 (bug 1253436)
Backed out changeset 84849ad026c9 (bug 1253436)
Backed out changeset c4a868c76959 (bug 1253436)
parent 1fa003c2
Loading
Loading
Loading
Loading
+5 −31
Original line number Diff line number Diff line
@@ -7,6 +7,7 @@ from __future__ import absolute_import, unicode_literals
import itertools
import json
import os
import re

import mozpack.path as mozpath
import mozwebidlcodegen
@@ -20,7 +21,6 @@ from mozbuild.frontend.context import (
    VARIABLES,
)
from mozbuild.frontend.data import (
    BaseProgram,
    ChromeManifestEntry,
    ConfigFileSubstitution,
    ExampleWebIDLInterface,
@@ -31,7 +31,6 @@ from mozbuild.frontend.data import (
    GeneratedWebIDLFile,
    PreprocessedTestWebIDLFile,
    PreprocessedWebIDLFile,
    SharedLibrary,
    TestManifest,
    TestWebIDLFile,
    UnifiedSources,
@@ -194,14 +193,6 @@ class TestManager(object):
        self.tests_by_path[key].append(t)


class BinariesCollection(object):
    """Tracks state of binaries produced by the build."""

    def __init__(self):
        self.shared_libraries = []
        self.programs = []


class CommonBackend(BuildBackend):
    """Holds logic common to all build backends."""

@@ -209,7 +200,6 @@ class CommonBackend(BuildBackend):
        self._idl_manager = XPIDLManager(self.environment)
        self._test_manager = TestManager(self.environment)
        self._webidls = WebIDLCollection()
        self._binaries = BinariesCollection()
        self._configs = set()
        self._ipdl_sources = set()

@@ -306,15 +296,6 @@ class CommonBackend(BuildBackend):
                self._write_unified_files(obj.unified_source_mapping, obj.objdir)
            if hasattr(self, '_process_unified_sources'):
                self._process_unified_sources(obj)

        elif isinstance(obj, BaseProgram):
            self._binaries.programs.append(obj)
            return False

        elif isinstance(obj, SharedLibrary):
            self._binaries.shared_libraries.append(obj)
            return False

        else:
            return False

@@ -355,17 +336,10 @@ class CommonBackend(BuildBackend):
            self.backend_input_files.add(config.source)

        # Write out a machine-readable file describing every test.
        topobjdir = self.environment.topobjdir
        with self._write_file(mozpath.join(topobjdir, 'all-tests.json')) as fh:
            json.dump(self._test_manager.tests_by_path, fh)

        # Write out a machine-readable file describing binaries.
        with self._write_file(mozpath.join(topobjdir, 'binaries.json')) as fh:
            d = {
                'shared_libraries': [s.to_dict() for s in self._binaries.shared_libraries],
                'programs': [p.to_dict() for p in self._binaries.programs],
            }
            json.dump(d, fh, sort_keys=True, indent=4)
        path = mozpath.join(self.environment.topobjdir, 'all-tests.json')
        with self._write_file(path) as fh:
            s = json.dumps(self._test_manager.tests_by_path)
            fh.write(s)

    def _handle_webidl_collection(self, webidls):
        if not webidls.all_stems():
+1 −0
Original line number Diff line number Diff line
@@ -7,6 +7,7 @@ from __future__ import absolute_import, unicode_literals
import logging
import os
import re
import types

from collections import (
    defaultdict,
+0 −25
Original line number Diff line number Diff line
@@ -36,9 +36,6 @@ class TreeMetadata(object):
    """Base class for all data being captured."""
    __slots__ = ()

    def to_dict(self):
        return {k.lower(): getattr(self, k) for k in self.DICT_ATTRS}


class ContextDerived(TreeMetadata):
    """Build object derived from a single Context instance.
@@ -360,13 +357,6 @@ class BaseProgram(Linkable):
    """
    __slots__ = ('program')

    DICT_ATTRS = {
        'install_target',
        'kind',
        'program',
        'relobjdir',
    }

    def __init__(self, context, program, is_unit_test=False):
        Linkable.__init__(self, context)

@@ -376,9 +366,6 @@ class BaseProgram(Linkable):
        self.program = program
        self.is_unit_test = is_unit_test

    def __repr__(self):
        return '<%s: %s/%s>' % (type(self).__name__, self.relobjdir, self.program)


class Program(BaseProgram):
    """Context derived container object for PROGRAM"""
@@ -428,9 +415,6 @@ class BaseLibrary(Linkable):

        self.refs = []

    def __repr__(self):
        return '<%s: %s/%s>' % (type(self).__name__, self.relobjdir, self.lib_name)


class Library(BaseLibrary):
    """Context derived container object for a library"""
@@ -467,15 +451,6 @@ class SharedLibrary(Library):
        'symbols_file',
    )

    DICT_ATTRS = {
        'basename',
        'import_name',
        'install_target',
        'lib_name',
        'relobjdir',
        'soname',
    }

    FRAMEWORK = 1
    COMPONENT = 2
    MAX_VARIANT = 3
+0 −26
Original line number Diff line number Diff line
@@ -871,32 +871,6 @@ class TestRecursiveMakeBackend(BackendTester):
            'DSO_SONAME := bar\n',
        ])

        self.assertTrue(os.path.exists(mozpath.join(env.topobjdir, 'binaries.json')))
        with open(mozpath.join(env.topobjdir, 'binaries.json'), 'rb') as fh:
            binaries = json.load(fh)

        self.assertEqual(binaries, {
            'programs': [],
            'shared_libraries': [
                {
                    'basename': 'foo',
                    'import_name': 'foo',
                    'install_target': 'dist/bin',
                    'lib_name': 'foo',
                    'relobjdir': 'foo',
                    'soname': 'foo',
                },
                {
                    'basename': 'bar',
                    'import_name': 'bar',
                    'install_target': 'dist/bin',
                    'lib_name': 'bar',
                    'relobjdir': 'bar',
                    'soname': 'bar',
                }
            ],
        })


if __name__ == '__main__':
    main()