diff options
author | Michael Butler <butlermichael@google.com> | 2019-01-11 20:23:36 +0000 |
---|---|---|
committer | Michael Butler <butlermichael@google.com> | 2019-01-11 20:23:36 +0000 |
commit | eaebd76656c41b43c3b4590c4cf03700df4a3ccd (patch) | |
tree | 427c9e4957770c3cc79d3c74d60e2a5001368470 /apex | |
parent | 769e50b3c9c8f7a3105cd0b06d155884f091cc5e (diff) | |
download | build_soong-eaebd76656c41b43c3b4590c4cf03700df4a3ccd.tar.gz build_soong-eaebd76656c41b43c3b4590c4cf03700df4a3ccd.tar.bz2 build_soong-eaebd76656c41b43c3b4590c4cf03700df4a3ccd.zip |
Revert "Symbols for libs in APEXes are available"
This reverts commit 769e50b3c9c8f7a3105cd0b06d155884f091cc5e.
Reason for revert: Likely causing build failure on aosp_x86_64-eng in aosp_master:
"build/make/core/base_rules.mk:271: error: art/build/apex: MODULE.TARGET.SHARED_LIBRARIES.com.android.runtime.host.libart-compiler already defined by art/build/apex."
Change-Id: I83b7caa04b2648e4e4914aae2fa5878516634eed
Diffstat (limited to 'apex')
-rw-r--r-- | apex/apex.go | 91 |
1 files changed, 39 insertions, 52 deletions
diff --git a/apex/apex.go b/apex/apex.go index a3603742..e711c8bb 100644 --- a/apex/apex.go +++ b/apex/apex.go @@ -346,7 +346,6 @@ type apexBundle struct { bundleModuleFile android.WritablePath outputFiles map[apexPackaging]android.WritablePath installDir android.OutputPath - runtimeDir android.OutputPath // list of files to be included in this apex filesInfo []apexFile @@ -661,7 +660,6 @@ func (a *apexBundle) GenerateAndroidBuildActions(ctx android.ModuleContext) { } a.installDir = android.PathForModuleInstall(ctx, "apex") - a.runtimeDir = android.PathForOutput(ctx, "target", "product", ctx.Config().DeviceName(), "apex") a.filesInfo = filesInfo if a.apexTypes.zip() { @@ -888,60 +886,50 @@ func (a *apexBundle) AndroidMk() android.AndroidMkData { } func (a *apexBundle) androidMkForType(apexType apexPackaging) android.AndroidMkData { - return android.AndroidMkData{ - Custom: func(w io.Writer, name, prefix, moduleDir string, data android.AndroidMkData) { - moduleNames := []string{} - for _, fi := range a.filesInfo { - if !android.InList(fi.moduleName, moduleNames) { - moduleNames = append(moduleNames, fi.moduleName) - } - } - - for _, fi := range a.filesInfo { - fmt.Fprintln(w, "\ninclude $(CLEAR_VARS)") - fmt.Fprintln(w, "LOCAL_PATH :=", moduleDir) - fmt.Fprintln(w, "LOCAL_MODULE :=", fi.moduleName) - if a.flattened { - // /system/apex/<name>/{lib|framework|...} - fmt.Fprintln(w, "LOCAL_MODULE_PATH :=", filepath.Join("$(OUT_DIR)", - a.installDir.RelPathString(), name, fi.installDir)) - } else { - // /apex/<name>/{lib|framework|...} - fmt.Fprintln(w, "LOCAL_MODULE_PATH :=", filepath.Join("$(OUT_DIR)", - a.runtimeDir.RelPathString(), name, fi.installDir)) - } - fmt.Fprintln(w, "LOCAL_PREBUILT_MODULE_FILE :=", fi.builtFile.String()) - fmt.Fprintln(w, "LOCAL_INSTALLED_MODULE_STEM :=", fi.builtFile.Base()) - fmt.Fprintln(w, "LOCAL_MODULE_CLASS :=", fi.class.NameInMake()) - fmt.Fprintln(w, "LOCAL_UNINSTALLABLE_MODULE :=", !a.installable()) - archStr := fi.archType.String() - if archStr != "common" { - fmt.Fprintln(w, "LOCAL_MODULE_TARGET_ARCH :=", archStr) - } - if fi.class == nativeSharedLib || fi.class == nativeExecutable { - if cc, ok := fi.module.(*cc.Module); ok && cc.UnstrippedOutputFile() != nil { - fmt.Fprintln(w, "LOCAL_SOONG_UNSTRIPPED_BINARY :=", cc.UnstrippedOutputFile().String()) + // Only image APEXes can be flattened. + if a.flattened && apexType.image() { + return android.AndroidMkData{ + Custom: func(w io.Writer, name, prefix, moduleDir string, data android.AndroidMkData) { + moduleNames := []string{} + for _, fi := range a.filesInfo { + if !android.InList(fi.moduleName, moduleNames) { + moduleNames = append(moduleNames, fi.moduleName) } } - if fi.class == javaSharedLib { - javaModule := fi.module.(*java.Library) - fmt.Fprintln(w, "LOCAL_SOONG_CLASSES_JAR :=", javaModule.ImplementationAndResourcesJars()[0].String()) - fmt.Fprintln(w, "LOCAL_SOONG_HEADER_JAR :=", javaModule.HeaderJars()[0].String()) - fmt.Fprintln(w, "LOCAL_SOONG_DEX_JAR :=", fi.builtFile.String()) - fmt.Fprintln(w, "LOCAL_DEX_PREOPT := false") - fmt.Fprintln(w, "include $(BUILD_SYSTEM)/soong_java_prebuilt.mk") - } else { - fmt.Fprintln(w, "include $(BUILD_PREBUILT)") - } - } - if a.flattened && apexType.image() { - // Only image APEXes can be flattened. fmt.Fprintln(w, "\ninclude $(CLEAR_VARS)") fmt.Fprintln(w, "LOCAL_PATH :=", moduleDir) fmt.Fprintln(w, "LOCAL_MODULE :=", name) fmt.Fprintln(w, "LOCAL_REQUIRED_MODULES :=", strings.Join(moduleNames, " ")) fmt.Fprintln(w, "include $(BUILD_PHONY_PACKAGE)") - } else { + + for _, fi := range a.filesInfo { + fmt.Fprintln(w, "\ninclude $(CLEAR_VARS)") + fmt.Fprintln(w, "LOCAL_PATH :=", moduleDir) + fmt.Fprintln(w, "LOCAL_MODULE :=", fi.moduleName) + fmt.Fprintln(w, "LOCAL_MODULE_PATH :=", filepath.Join("$(OUT_DIR)", a.installDir.RelPathString(), name, fi.installDir)) + fmt.Fprintln(w, "LOCAL_MODULE_STEM :=", fi.builtFile.Base()) + fmt.Fprintln(w, "LOCAL_PREBUILT_MODULE_FILE :=", fi.builtFile.String()) + fmt.Fprintln(w, "LOCAL_MODULE_CLASS :=", fi.class.NameInMake()) + fmt.Fprintln(w, "LOCAL_UNINSTALLABLE_MODULE :=", !a.installable()) + archStr := fi.archType.String() + if archStr != "common" { + fmt.Fprintln(w, "LOCAL_MODULE_TARGET_ARCH :=", archStr) + } + if fi.class == javaSharedLib { + javaModule := fi.module.(*java.Library) + fmt.Fprintln(w, "LOCAL_SOONG_CLASSES_JAR :=", javaModule.ImplementationAndResourcesJars()[0].String()) + fmt.Fprintln(w, "LOCAL_SOONG_HEADER_JAR :=", javaModule.HeaderJars()[0].String()) + fmt.Fprintln(w, "LOCAL_SOONG_DEX_JAR :=", fi.builtFile.String()) + fmt.Fprintln(w, "LOCAL_DEX_PREOPT := false") + fmt.Fprintln(w, "include $(BUILD_SYSTEM)/soong_java_prebuilt.mk") + } else { + fmt.Fprintln(w, "include $(BUILD_PREBUILT)") + } + } + }} + } else { + return android.AndroidMkData{ + Custom: func(w io.Writer, name, prefix, moduleDir string, data android.AndroidMkData) { // zip-apex is the less common type so have the name refer to the image-apex // only and use {name}.zip if you want the zip-apex if apexType == zipApex && a.apexTypes == both { @@ -956,14 +944,13 @@ func (a *apexBundle) androidMkForType(apexType apexPackaging) android.AndroidMkD fmt.Fprintln(w, "LOCAL_MODULE_STEM :=", name+apexType.suffix()) fmt.Fprintln(w, "LOCAL_UNINSTALLABLE_MODULE :=", !a.installable()) fmt.Fprintln(w, "LOCAL_REQUIRED_MODULES :=", String(a.properties.Key)) - fmt.Fprintln(w, "LOCAL_REQUIRED_MODULES +=", strings.Join(moduleNames, " ")) fmt.Fprintln(w, "include $(BUILD_PREBUILT)") if apexType == imageApex { fmt.Fprintln(w, "ALL_MODULES.$(LOCAL_MODULE).BUNDLE :=", a.bundleModuleFile.String()) } - } - }} + }} + } } func ApexBundleFactory() android.Module { |