1#!/usr/bin/python3 -i 2# 3# Copyright (c) 2015-2017, 2019-2021 The Khronos Group Inc. 4# Copyright (c) 2015-2017, 2019-2021 Valve Corporation 5# Copyright (c) 2015-2017, 2019-2021 LunarG, Inc. 6# 7# Licensed under the Apache License, Version 2.0 (the "License"); 8# you may not use this file except in compliance with the License. 9# You may obtain a copy of the License at 10# 11# http://www.apache.org/licenses/LICENSE-2.0 12# 13# Unless required by applicable law or agreed to in writing, software 14# distributed under the License is distributed on an "AS IS" BASIS, 15# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16# See the License for the specific language governing permissions and 17# limitations under the License. 18# 19# Author: Mark Lobodzinski <mark@lunarg.com> 20 21import os 22 23# Copyright text prefixing all headers (list of strings). 24prefixStrings = [ 25 '/*', 26 '** Copyright (c) 2015-2017, 2019-2021 The Khronos Group Inc.', 27 '** Copyright (c) 2015-2017, 2019-2021 Valve Corporation', 28 '** Copyright (c) 2015-2017, 2019-2021 LunarG, Inc.', 29 '** Copyright (c) 2015-2017, 2019-2021 Google Inc.', 30 '**', 31 '** Licensed under the Apache License, Version 2.0 (the "License");', 32 '** you may not use this file except in compliance with the License.', 33 '** You may obtain a copy of the License at', 34 '**', 35 '** http://www.apache.org/licenses/LICENSE-2.0', 36 '**', 37 '** Unless required by applicable law or agreed to in writing, software', 38 '** distributed under the License is distributed on an "AS IS" BASIS,', 39 '** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.', 40 '** See the License for the specific language governing permissions and', 41 '** limitations under the License.', 42 '*/', 43 '' 44] 45 46 47platform_dict = { 48 'android' : 'VK_USE_PLATFORM_ANDROID_KHR', 49 'fuchsia' : 'VK_USE_PLATFORM_FUCHSIA', 50 'ggp': 'VK_USE_PLATFORM_GGP', 51 'ios' : 'VK_USE_PLATFORM_IOS_MVK', 52 'macos' : 'VK_USE_PLATFORM_MACOS_MVK', 53 'metal' : 'VK_USE_PLATFORM_METAL_EXT', 54 'vi' : 'VK_USE_PLATFORM_VI_NN', 55 'wayland' : 'VK_USE_PLATFORM_WAYLAND_KHR', 56 'win32' : 'VK_USE_PLATFORM_WIN32_KHR', 57 'xcb' : 'VK_USE_PLATFORM_XCB_KHR', 58 'xlib' : 'VK_USE_PLATFORM_XLIB_KHR', 59 'directfb' : 'VK_USE_PLATFORM_DIRECTFB_EXT', 60 'xlib_xrandr' : 'VK_USE_PLATFORM_XLIB_XRANDR_EXT', 61 'provisional' : 'VK_ENABLE_BETA_EXTENSIONS', 62 'screen' : 'VK_USE_PLATFORM_SCREEN_QNX', 63 'ohos' : 'VK_USE_PLATFORM_OHOS', 64} 65 66# 67# Return appropriate feature protect string from 'platform' tag on feature 68def GetFeatureProtect(interface): 69 """Get platform protection string""" 70 platform = interface.get('platform') 71 protect = None 72 if platform is not None: 73 protect = platform_dict[platform] 74 return protect 75 76# helper to define paths relative to the repo root 77def repo_relative(path): 78 return os.path.abspath(os.path.join(os.path.dirname(__file__), '..', path)) 79