1*5225e6b1SAndroid Build Coastguard Worker# Copyright (C) 2024 The Android Open Source Project 2*5225e6b1SAndroid Build Coastguard Worker# 3*5225e6b1SAndroid Build Coastguard Worker# Licensed under the Apache License, Version 2.0 (the "License"); 4*5225e6b1SAndroid Build Coastguard Worker# you may not use this file except in compliance with the License. 5*5225e6b1SAndroid Build Coastguard Worker# You may obtain a copy of the License at 6*5225e6b1SAndroid Build Coastguard Worker# 7*5225e6b1SAndroid Build Coastguard Worker# http://www.apache.org/licenses/LICENSE-2.0 8*5225e6b1SAndroid Build Coastguard Worker# 9*5225e6b1SAndroid Build Coastguard Worker# Unless required by applicable law or agreed to in writing, software 10*5225e6b1SAndroid Build Coastguard Worker# distributed under the License is distributed on an "AS IS" BASIS, 11*5225e6b1SAndroid Build Coastguard Worker# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12*5225e6b1SAndroid Build Coastguard Worker# See the License for the specific language governing permissions and 13*5225e6b1SAndroid Build Coastguard Worker# limitations under the License. 14*5225e6b1SAndroid Build Coastguard Worker 15*5225e6b1SAndroid Build Coastguard Workerpackage( 16*5225e6b1SAndroid Build Coastguard Worker default_visibility = ["//visibility:public"], 17*5225e6b1SAndroid Build Coastguard Worker) 18*5225e6b1SAndroid Build Coastguard Worker 19*5225e6b1SAndroid Build Coastguard Workercc_library( 20*5225e6b1SAndroid Build Coastguard Worker name = "libufdt_c", 21*5225e6b1SAndroid Build Coastguard Worker srcs = [ 22*5225e6b1SAndroid Build Coastguard Worker "ufdt_convert.c", 23*5225e6b1SAndroid Build Coastguard Worker "ufdt_node.c", 24*5225e6b1SAndroid Build Coastguard Worker "ufdt_node_pool.c", 25*5225e6b1SAndroid Build Coastguard Worker "ufdt_overlay.c", 26*5225e6b1SAndroid Build Coastguard Worker "ufdt_prop_dict.c", 27*5225e6b1SAndroid Build Coastguard Worker ] + select({ 28*5225e6b1SAndroid Build Coastguard Worker "@gbl//toolchain:gbl_rust_host_x86_64": ["sysdeps/libufdt_sysdeps_posix.c"], 29*5225e6b1SAndroid Build Coastguard Worker "//conditions:default": [ 30*5225e6b1SAndroid Build Coastguard Worker "sysdeps/libufdt_sysdeps_vendor.c", 31*5225e6b1SAndroid Build Coastguard Worker # Contains noop placeholder for dto_print from libufdt_sysdeps_vendor.c 32*5225e6b1SAndroid Build Coastguard Worker "@gbl//libfdt:deps/print.c", 33*5225e6b1SAndroid Build Coastguard Worker ], 34*5225e6b1SAndroid Build Coastguard Worker }), 35*5225e6b1SAndroid Build Coastguard Worker hdrs = [ 36*5225e6b1SAndroid Build Coastguard Worker "include/libufdt.h", 37*5225e6b1SAndroid Build Coastguard Worker "include/ufdt_node_pool.h", 38*5225e6b1SAndroid Build Coastguard Worker "include/ufdt_overlay.h", 39*5225e6b1SAndroid Build Coastguard Worker "include/ufdt_overlay_internal.h", 40*5225e6b1SAndroid Build Coastguard Worker "include/ufdt_types.h", 41*5225e6b1SAndroid Build Coastguard Worker "sysdeps/include/libufdt_sysdeps.h", 42*5225e6b1SAndroid Build Coastguard Worker "ufdt_prop_dict.h", 43*5225e6b1SAndroid Build Coastguard Worker ], 44*5225e6b1SAndroid Build Coastguard Worker copts = [ 45*5225e6b1SAndroid Build Coastguard Worker # Disable default dto_print implementation to include libufdt_sysdeps_vendor.c 46*5225e6b1SAndroid Build Coastguard Worker "-DDTO_DISABLE_DEFAULT_VENDOR_LIBC_PRINT", 47*5225e6b1SAndroid Build Coastguard Worker # Disable default dto_malloc, dto_free implementations to include libufdt_sysdeps_vendor.c 48*5225e6b1SAndroid Build Coastguard Worker "-DDTO_DISABLE_DEFAULT_VENDOR_LIBC_ALLOCATION", 49*5225e6b1SAndroid Build Coastguard Worker # Disable default dto_malloc, dto_free implementations to include libufdt_sysdeps_posix.c 50*5225e6b1SAndroid Build Coastguard Worker "-DDTO_DISABLE_DEFAULT_POSIX_LIBC_ALLOCATION", 51*5225e6b1SAndroid Build Coastguard Worker ], 52*5225e6b1SAndroid Build Coastguard Worker includes = [ 53*5225e6b1SAndroid Build Coastguard Worker ".", 54*5225e6b1SAndroid Build Coastguard Worker "include", 55*5225e6b1SAndroid Build Coastguard Worker "sysdeps/include", 56*5225e6b1SAndroid Build Coastguard Worker ], 57*5225e6b1SAndroid Build Coastguard Worker deps = [ 58*5225e6b1SAndroid Build Coastguard Worker "@gbl//libc:headers", 59*5225e6b1SAndroid Build Coastguard Worker "@libfdt_c", 60*5225e6b1SAndroid Build Coastguard Worker ], 61*5225e6b1SAndroid Build Coastguard Worker) 62