1# Copyright (C) 2021 The Android Open Source Project 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 15def _impl(rctx): 16 rctx.file("WORKSPACE", "") 17 build_dir = str(rctx.path(Label("//:BUILD")).dirname.dirname) 18 soong_injection_dir = build_dir + "/soong_injection" 19 rctx.symlink(soong_injection_dir + "/allowlists", "allowlists") 20 rctx.symlink(soong_injection_dir + "/android", "android") 21 rctx.symlink(soong_injection_dir + "/mixed_builds", "mixed_builds") 22 rctx.symlink(soong_injection_dir + "/cc_toolchain", "cc_toolchain") 23 rctx.symlink(soong_injection_dir + "/java_toolchain", "java_toolchain") 24 rctx.symlink(soong_injection_dir + "/rust_toolchain", "rust_toolchain") 25 rctx.symlink(soong_injection_dir + "/apex_toolchain", "apex_toolchain") 26 rctx.symlink(soong_injection_dir + "/product_config", "product_config") 27 rctx.symlink(soong_injection_dir + "/product_config_platforms", "product_config_platforms") 28 rctx.symlink(soong_injection_dir + "/api_levels", "api_levels") 29 rctx.symlink(soong_injection_dir + "/metrics", "metrics") 30 31soong_injection_repository = repository_rule( 32 implementation = _impl, 33) 34