// // Copyright (C) 2014 The Android Open Source Project // // 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. // // Build a "data" binary which will hold all the symbol values that will be parsed by the other scripts. // // Builds are for host only, target-specific define generation is possibly but is trickier and would need extra tooling. // // In the future we may wish to parameterize this on (32,64)x(read_barrier,no_read_barrier). cc_binary { // Do not use art_cc_binary because HOST_PREFER_32_BIT is incompatible with genrule. name: "cpp-define-generator-data", host_supported: true, device_supported: false, defaults: [ "art_debug_defaults", "art_defaults", ], include_dirs: ["art/runtime"], srcs: ["main.cc"], shared_libs: [ "libbase", ], } // Note: See $OUT_DIR/soong/build.ninja // For the exact filename that this generates to run make command on just // this rule later. genrule { name: "cpp-define-generator-asm-support", out: ["asm_support_gen.h"], tools: ["cpp-define-generator-data"], tool_files: ["verify-asm-support"], cmd: "$(location verify-asm-support) --quiet \"$(location cpp-define-generator-data)\" \"$(out)\"" }