# Copyright 2020 The Dawn Authors # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. DawnGenerator( SCRIPT "${Dawn_SOURCE_DIR}/generator/dawn_version_generator.py" PRINT_NAME "Dawn version based utilities" ARGS "--dawn-dir" "${Dawn_SOURCE_DIR}" RESULT_VARIABLE "DAWN_VERSION_AUTOGEN_SOURCES" ) DawnGenerator( SCRIPT "${Dawn_SOURCE_DIR}/generator/dawn_gpu_info_generator.py" PRINT_NAME "Dawn GPU info utilities" ARGS "--gpu-info-json" "${Dawn_SOURCE_DIR}/src/dawn/gpu_info.json" RESULT_VARIABLE "DAWN_GPU_INFO_AUTOGEN_SOURCES" ) add_library(dawn_common STATIC ${DAWN_PLACEHOLDER_FILE}) common_compile_options(dawn_common) target_sources(dawn_common PRIVATE ${DAWN_VERSION_AUTOGEN_SOURCES} ${DAWN_GPU_INFO_AUTOGEN_SOURCES} "Alloc.h" "Assert.cpp" "Assert.h" "BitSetIterator.h" "Compiler.h" "ConcurrentCache.h" "Constants.h" "CoreFoundationRef.h" "DynamicLib.cpp" "DynamicLib.h" "GPUInfo.cpp" "GPUInfo.h" "HashUtils.h" "IOKitRef.h" "LinkedList.h" "Log.cpp" "Log.h" "Math.cpp" "Math.h" "NSRef.h" "NonCopyable.h" "Numeric.h" "PlacementAllocated.h" "Platform.h" "Preprocessor.h" "RefBase.h" "RefCounted.cpp" "RefCounted.h" "Result.cpp" "Result.h" "SerialMap.h" "SerialQueue.h" "SerialStorage.h" "SlabAllocator.cpp" "SlabAllocator.h" "StackContainer.h" "SwapChainUtils.h" "SystemUtils.cpp" "SystemUtils.h" "TypeTraits.h" "TypedInteger.h" "UnderlyingType.h" "ityp_array.h" "ityp_bitset.h" "ityp_span.h" "ityp_stack_vec.h" "ityp_vector.h" "vulkan_platform.h" "xlib_with_undefs.h" ) if (WIN32) target_sources(dawn_common PRIVATE "WindowsUtils.cpp" "WindowsUtils.h" "windows_with_undefs.h" ) elseif(APPLE) target_sources(dawn_common PRIVATE "SystemUtils_mac.mm" ) endif() target_link_libraries(dawn_common PUBLIC dawncpp_headers PRIVATE dawn_internal_config) # TODO Android Log support # TODO Vulkan headers support