diff options
Diffstat (limited to 'accessible/interfaces/ia2')
-rw-r--r-- | accessible/interfaces/ia2/IA2Typelib.idl | 33 | ||||
-rw-r--r-- | accessible/interfaces/ia2/moz.build | 92 |
2 files changed, 125 insertions, 0 deletions
diff --git a/accessible/interfaces/ia2/IA2Typelib.idl b/accessible/interfaces/ia2/IA2Typelib.idl new file mode 100644 index 0000000000..71e759d4a2 --- /dev/null +++ b/accessible/interfaces/ia2/IA2Typelib.idl @@ -0,0 +1,33 @@ +/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* vim: set ts=8 sts=2 et sw=2 tw=80: */ +/* 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 "Accessible2.idl"; +import "Accessible2_2.idl"; +import "AccessibleAction.idl"; +import "AccessibleApplication.idl"; +import "AccessibleComponent.idl"; +import "AccessibleDocument.idl"; +import "AccessibleEditableText.idl"; +import "AccessibleEventId.idl"; +import "AccessibleHyperlink.idl"; +import "AccessibleHypertext.idl"; +import "AccessibleHypertext2.idl"; +import "AccessibleImage.idl"; +import "AccessibleRelation.idl"; +import "AccessibleRole.idl"; +import "AccessibleStates.idl"; +import "AccessibleTable.idl"; +import "AccessibleTable2.idl"; +import "AccessibleTableCell.idl"; +import "AccessibleText.idl"; +import "AccessibleText2.idl"; +import "AccessibleTextSelectionContainer.idl"; +import "AccessibleValue.idl"; +import "IA2CommonTypes.idl"; + +// We are explicitly using #include instead of import so that the imported +// IDL is treated as part of this IDL file. +#include "IA2TypeLibrary.idl" diff --git a/accessible/interfaces/ia2/moz.build b/accessible/interfaces/ia2/moz.build new file mode 100644 index 0000000000..9d39b2c1db --- /dev/null +++ b/accessible/interfaces/ia2/moz.build @@ -0,0 +1,92 @@ +# -*- 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", + ], +) |