Source code

Revision control

Copy as Markdown

Other Tools

# -*- 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/.
midl_enums = [
"AccessibleEventId",
"AccessibleRole",
"AccessibleStates",
"IA2CommonTypes",
]
midl_interfaces = [
"Accessible2",
"Accessible2_2",
"AccessibleAction",
"AccessibleApplication",
"AccessibleComponent",
"AccessibleDocument",
"AccessibleEditableText",
"AccessibleHyperlink",
"AccessibleHypertext",
"AccessibleHypertext2",
"AccessibleImage",
"AccessibleRelation",
"AccessibleTable",
"AccessibleTable2",
"AccessibleTableCell",
"AccessibleText",
"AccessibleText2",
"AccessibleTextSelectionContainer",
"AccessibleValue",
]
for enum in midl_enums:
GeneratedFile(
enum + ".h",
inputs=["/other-licenses/ia2/" + enum + ".idl"],
script="/build/midl.py",
entry_point="midl",
flags=["-app_config", "-I", TOPSRCDIR + "/other-licenses/ia2"],
)
EXPORTS += ["!" + enum + ".h"]
for iface in midl_interfaces:
GeneratedFile(
iface + ".h",
iface + "_p.c",
iface + "_i.c",
iface + "_dlldata.c",
inputs=["/other-licenses/ia2/" + iface + ".idl"],
script="/build/midl.py",
entry_point="midl",
flags=[
"-app_config",
"-I",
TOPSRCDIR + "/other-licenses/ia2",
"-dlldata",
OBJDIR + "/" + iface + "_dlldata.c",
],
)
EXPORTS += ["!" + iface + ".h", "!" + iface + "_i.c"]
for p in [iface + "_p.c", iface + "_i.c"]:
SOURCES += ["!%s" % p]
# Give some symbols a unique name in each translation unit, to avoid
# collisions caused by https://llvm.org/pr41817.
if CONFIG["CC_TYPE"] == "clang-cl":
SOURCES["!%s" % p].flags += [
"-DObject_StubDesc=Object_StubDesc__%s" % p[:-2]
]
SOURCES["!%s" % p].flags += [
"-DUserMarshalRoutines=UserMarshalRoutines__%s" % p[:-2]
]
GeneratedFile(
"IA2Typelib.h",
"IA2Typelib_i.c",
"IA2Typelib.tlb",
inputs=["IA2Typelib.idl"],
script="/build/midl.py",
entry_point="midl",
flags=[
"-app_config",
"-I",
TOPSRCDIR + "/other-licenses/ia2",
],
)