1# Copyright 2019 The SwiftShader Authors. All Rights Reserved. 2# 3# Licensed under the Apache License, Version 2.0 (the "License"); 4# you may not use this file except in compliance with the License. 5# You may obtain a copy of the License at 6# 7# http://www.apache.org/licenses/LICENSE-2.0 8# 9# Unless required by applicable law or agreed to in writing, software 10# distributed under the License is distributed on an "AS IS" BASIS, 11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12# See the License for the specific language governing permissions and 13# limitations under the License. 14 15import("../../src/swiftshader.gni") 16 17import("//testing/test.gni") 18 19config("marl_config") { 20 include_dirs = [ "include" ] 21} 22 23swiftshader_source_set("Marl_headers") { 24 sources = [ 25 "include/marl/blockingcall.h", 26 "include/marl/conditionvariable.h", 27 "include/marl/containers.h", 28 "include/marl/debug.h", 29 "include/marl/defer.h", 30 "include/marl/event.h", 31 "include/marl/finally.h", 32 "include/marl/memory.h", 33 "include/marl/mutex.h", 34 "include/marl/parallelize.h", 35 "include/marl/pool.h", 36 "include/marl/sanitizers.h", 37 "include/marl/scheduler.h", 38 "include/marl/task.h", 39 "include/marl/thread.h", 40 "include/marl/ticket.h", 41 "include/marl/trace.h", 42 "include/marl/tsa.h", 43 "include/marl/waitgroup.h", 44 ] 45 46 public_configs = [ 47 ":marl_config", 48 ] 49} 50 51swiftshader_source_set("Marl") { 52 sources = [ 53 "src/debug.cpp", 54 "src/memory.cpp", 55 "src/scheduler.cpp", 56 "src/thread.cpp", 57 "src/trace.cpp", 58 ] 59 60 if (!is_win) { 61 sources += [ 62 "src/osfiber_aarch64.c", 63 "src/osfiber_arm.c", 64 "src/osfiber_asm_aarch64.S", 65 "src/osfiber_asm_arm.S", 66 "src/osfiber_asm_mips64.S", 67 "src/osfiber_asm_ppc64.S", 68 "src/osfiber_asm_x64.S", 69 "src/osfiber_asm_x86.S", 70 "src/osfiber_mips64.c", 71 "src/osfiber_ppc64.c", 72 "src/osfiber_x64.c", 73 "src/osfiber_x86.c", 74 ] 75 } 76 77 public_deps = [ 78 ":Marl_headers", 79 ] 80} 81