1*8975f5c5SAndroid Build Coastguard Worker# Copyright 2021 The ANGLE Project Authors. All rights reserved. 2*8975f5c5SAndroid Build Coastguard Worker# Use of this source code is governed by a BSD-style license that can be 3*8975f5c5SAndroid Build Coastguard Worker# found in the LICENSE file. 4*8975f5c5SAndroid Build Coastguard Worker# 5*8975f5c5SAndroid Build Coastguard Worker# Build configuration for OpenCL-related targets. 6*8975f5c5SAndroid Build Coastguard Worker 7*8975f5c5SAndroid Build Coastguard Workerimport("../../gni/angle.gni") 8*8975f5c5SAndroid Build Coastguard Worker 9*8975f5c5SAndroid Build Coastguard Workerassert(angle_enable_cl) 10*8975f5c5SAndroid Build Coastguard Worker 11*8975f5c5SAndroid Build Coastguard Workerif (is_win || is_linux) { 12*8975f5c5SAndroid Build Coastguard Worker glesv2_path = 13*8975f5c5SAndroid Build Coastguard Worker rebase_path(get_label_info("$angle_root:libGLESv2", "root_out_dir")) 14*8975f5c5SAndroid Build Coastguard Worker} 15*8975f5c5SAndroid Build Coastguard Worker 16*8975f5c5SAndroid Build Coastguard Workerangle_shared_library("OpenCL_ANGLE") { 17*8975f5c5SAndroid Build Coastguard Worker defines = [ "LIBCL_IMPLEMENTATION" ] 18*8975f5c5SAndroid Build Coastguard Worker if (is_win) { 19*8975f5c5SAndroid Build Coastguard Worker defines += [ "ANGLE_GLESV2_LIBRARY_PATH=\"" + 20*8975f5c5SAndroid Build Coastguard Worker string_replace(glesv2_path, "/", "\\\\") + "\"" ] 21*8975f5c5SAndroid Build Coastguard Worker } 22*8975f5c5SAndroid Build Coastguard Worker 23*8975f5c5SAndroid Build Coastguard Worker sources = [ 24*8975f5c5SAndroid Build Coastguard Worker "dispatch.cpp", 25*8975f5c5SAndroid Build Coastguard Worker "dispatch.h", 26*8975f5c5SAndroid Build Coastguard Worker "libOpenCL_autogen.cpp", 27*8975f5c5SAndroid Build Coastguard Worker ] 28*8975f5c5SAndroid Build Coastguard Worker 29*8975f5c5SAndroid Build Coastguard Worker configs += [ 30*8975f5c5SAndroid Build Coastguard Worker "$angle_root:debug_annotations_config", 31*8975f5c5SAndroid Build Coastguard Worker "$angle_root:library_name_config", 32*8975f5c5SAndroid Build Coastguard Worker ] 33*8975f5c5SAndroid Build Coastguard Worker 34*8975f5c5SAndroid Build Coastguard Worker deps = [ 35*8975f5c5SAndroid Build Coastguard Worker "$angle_root:angle_common", 36*8975f5c5SAndroid Build Coastguard Worker "$angle_root:cl_includes", 37*8975f5c5SAndroid Build Coastguard Worker ] 38*8975f5c5SAndroid Build Coastguard Worker 39*8975f5c5SAndroid Build Coastguard Worker if (is_linux) { 40*8975f5c5SAndroid Build Coastguard Worker inputs = [ "libOpenCL_autogen.map" ] 41*8975f5c5SAndroid Build Coastguard Worker ldflags = [ 42*8975f5c5SAndroid Build Coastguard Worker "-Wl,--version-script=" + 43*8975f5c5SAndroid Build Coastguard Worker rebase_path("libOpenCL_autogen.map", root_build_dir), 44*8975f5c5SAndroid Build Coastguard Worker "-Wl,-rpath=" + glesv2_path, 45*8975f5c5SAndroid Build Coastguard Worker ] 46*8975f5c5SAndroid Build Coastguard Worker } 47*8975f5c5SAndroid Build Coastguard Worker} 48*8975f5c5SAndroid Build Coastguard Worker 49*8975f5c5SAndroid Build Coastguard Workergroup("angle_cl") { 50*8975f5c5SAndroid Build Coastguard Worker data_deps = [ ":OpenCL_ANGLE" ] 51*8975f5c5SAndroid Build Coastguard Worker} 52