browser/themes/preprocess-tab-svgs.py
author Andreas Pehrson <pehrsons@gmail.com>
Tue, 24 May 2016 13:24:04 +0200
changeset 370265 c539999a334d1f357da0d85b189883dfdd5394b8
parent 303339 41913aea0fb03d236ecff025467b2e64e263842f
child 585516 8cc969aa0d37a0688b8bbf2c52050ab1844473d2
child 620018 4c7317211990d6cf156c103a73a5b3ec41f2dd4d
permissions -rwxr-xr-x
Bug 1274221 - Test that multiple tracks of the same source all end when in the same stream. r?jib MozReview-Commit-ID: 64T6I4RDrKH

#!/usr/bin/env 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/.

import buildconfig

from mozbuild.preprocessor import preprocess

# By default, the pre-processor used for jar.mn will use "%" as a marker
# for ".css" files and "#" otherwise. This falls apart when a file using
# one marker needs to include a file with the other marker since the
# pre-processor instructions in the included file will not be
# processed. The following SVG files need to include a file which uses
# "%" as the marker so we invoke the pre- processor ourselves here with
# the marker specified. The resulting SVG files will get packaged by the
# processing of the jar file in the appropriate directory.
def _do_preprocessing(output_svg, input_svg_file, additional_defines):
    additional_defines.update(buildconfig.defines)
    return preprocess(output=output_svg,
                      includes=[input_svg_file],
                      marker='%',
                      defines=additional_defines)

def tab_side_start(output_svg, input_svg_file):
    return _do_preprocessing(output_svg, input_svg_file, {'TAB_SIDE': 'start'})

def tab_side_end(output_svg, input_svg_file):
    return _do_preprocessing(output_svg, input_svg_file, {'TAB_SIDE': 'end'})