diff options
| author | 2024-09-17 10:29:54 -0700 | |
|---|---|---|
| committer | 2024-09-17 14:56:43 -0700 | |
| commit | 2aafdc5f9c05c5ef91ca32e354ec4d3b4fae0b2a (patch) | |
| tree | deedbbec4e6489aa137635dd38d7c4d8fbede9e9 | |
| parent | 0bfceee17855cb2e47e512073d639f797fd31f7b (diff) | |
Create a singleton that generates an empty bp file
This singleton will be used to generate a bp file based on
make-based product config later.
Test: m and CI
Bug: 367418637
Change-Id: I98caea5419f1facd3fa9ca5c6389d16a7aa2ce5d
| -rw-r--r-- | android/Android.bp | 1 | ||||
| -rw-r--r-- | android/product_config.go | 4 | ||||
| -rw-r--r-- | android/product_config_to_bp.go | 35 |
3 files changed, 39 insertions, 1 deletions
diff --git a/android/Android.bp b/android/Android.bp index 16a34b7de..9f3400c6e 100644 --- a/android/Android.bp +++ b/android/Android.bp @@ -88,6 +88,7 @@ bootstrap_go_package { "prebuilt.go", "prebuilt_build_tool.go", "product_config.go", + "product_config_to_bp.go", "proto.go", "provider.go", "raw_files.go", diff --git a/android/product_config.go b/android/product_config.go index 04180bf2b..ce3acc9f2 100644 --- a/android/product_config.go +++ b/android/product_config.go @@ -14,7 +14,9 @@ package android -import "github.com/google/blueprint/proptools" +import ( + "github.com/google/blueprint/proptools" +) func init() { ctx := InitRegistrationContext diff --git a/android/product_config_to_bp.go b/android/product_config_to_bp.go new file mode 100644 index 000000000..680328f67 --- /dev/null +++ b/android/product_config_to_bp.go @@ -0,0 +1,35 @@ +// Copyright 2024 Google Inc. All rights reserved. +// +// 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. + +package android + +func init() { + ctx := InitRegistrationContext + ctx.RegisterParallelSingletonType("product_config_to_bp_singleton", productConfigToBpSingletonFactory) +} + +type productConfigToBpSingleton struct{} + +func (s *productConfigToBpSingleton) GenerateBuildActions(ctx SingletonContext) { + // TODO: update content from make-based product config + var content string + generatedBp := PathForOutput(ctx, "soong_generated_product_config.bp") + WriteFileRule(ctx, generatedBp, content) + ctx.Phony("product_config_to_bp", generatedBp) +} + +// productConfigToBpSingleton generates a bp file from make-based product config +func productConfigToBpSingletonFactory() Singleton { + return &productConfigToBpSingleton{} +} |