Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0da5ae93 authored by Jihoon Kang's avatar Jihoon Kang
Browse files

Define additional prebuilt_* modules

Defines the following prebuilt_* module types:
- prebuilt_usr_srec
- prebuilt_priv_app
- prebuilt_rfs
- prebuilt_framework
- prebuilt_res
- prebuilt_wlc_upt
- prebuilt_odm

Renames prebuilt_media_audio to prebuilt_media and modifies its install
path from <partition_root>/media/audio to <partition_root>/media.

Test: m nothing --no-skip-soong-tests
Bug: 375053752
Change-Id: If6b06e697efe0d29379bf8f9ff24789cec1276da
parent 7e0fdef2
Loading
Loading
Loading
Loading
+82 −4
Original line number Diff line number Diff line
@@ -59,16 +59,23 @@ func RegisterPrebuiltEtcBuildComponents(ctx android.RegistrationContext) {
	ctx.RegisterModuleType("prebuilt_usr_keylayout", PrebuiltUserKeyLayoutFactory)
	ctx.RegisterModuleType("prebuilt_usr_keychars", PrebuiltUserKeyCharsFactory)
	ctx.RegisterModuleType("prebuilt_usr_idc", PrebuiltUserIdcFactory)
	ctx.RegisterModuleType("prebuilt_usr_srec", PrebuiltUserSrecFactory)
	ctx.RegisterModuleType("prebuilt_font", PrebuiltFontFactory)
	ctx.RegisterModuleType("prebuilt_overlay", PrebuiltOverlayFactory)
	ctx.RegisterModuleType("prebuilt_firmware", PrebuiltFirmwareFactory)
	ctx.RegisterModuleType("prebuilt_dsp", PrebuiltDSPFactory)
	ctx.RegisterModuleType("prebuilt_rfsa", PrebuiltRFSAFactory)
	ctx.RegisterModuleType("prebuilt_renderscript_bitcode", PrebuiltRenderScriptBitcodeFactory)
	ctx.RegisterModuleType("prebuilt_media_audio", PrebuiltMediaAudioFactory)
	ctx.RegisterModuleType("prebuilt_media", PrebuiltMediaFactory)
	ctx.RegisterModuleType("prebuilt_voicepack", PrebuiltVoicepackFactory)
	ctx.RegisterModuleType("prebuilt_bin", PrebuiltBinaryFactory)
	ctx.RegisterModuleType("prebuilt_wallpaper", PrebuiltWallpaperFactory)
	ctx.RegisterModuleType("prebuilt_priv_app", PrebuiltPrivAppFactory)
	ctx.RegisterModuleType("prebuilt_rfs", PrebuiltRfsFactory)
	ctx.RegisterModuleType("prebuilt_framework", PrebuiltFrameworkFactory)
	ctx.RegisterModuleType("prebuilt_res", PrebuiltResFactory)
	ctx.RegisterModuleType("prebuilt_wlc_upt", PrebuiltWlcUptFactory)
	ctx.RegisterModuleType("prebuilt_odm", PrebuiltOdmFactory)

	ctx.RegisterModuleType("prebuilt_defaults", defaultsFactory)

@@ -720,6 +727,17 @@ func PrebuiltUserIdcFactory() android.Module {
	return module
}

// prebuilt_usr_srec is for a prebuilt artifact that is installed in
// <partition>/usr/srec/<sub_dir> directory.
func PrebuiltUserSrecFactory() android.Module {
	module := &PrebuiltEtc{}
	InitPrebuiltEtcModule(module, "usr/srec")
	// This module is device-only
	android.InitAndroidArchModule(module, android.DeviceSupported, android.MultilibFirst)
	android.InitDefaultableModule(module)
	return module
}

// prebuilt_font installs a font in <partition>/fonts directory.
func PrebuiltFontFactory() android.Module {
	module := &PrebuiltEtc{}
@@ -793,10 +811,10 @@ func PrebuiltRFSAFactory() android.Module {
	return module
}

// prebuilt_media_audio installs audio files in <partition>/media/audio directory.
func PrebuiltMediaAudioFactory() android.Module {
// prebuilt_media installs media files in <partition>/media directory.
func PrebuiltMediaFactory() android.Module {
	module := &PrebuiltEtc{}
	InitPrebuiltEtcModule(module, "media/audio")
	InitPrebuiltEtcModule(module, "media")
	// This module is device-only
	android.InitAndroidArchModule(module, android.DeviceSupported, android.MultilibCommon)
	android.InitDefaultableModule(module)
@@ -832,3 +850,63 @@ func PrebuiltWallpaperFactory() android.Module {
	android.InitDefaultableModule(module)
	return module
}

// prebuilt_priv_app installs files in <partition>/priv-app directory.
func PrebuiltPrivAppFactory() android.Module {
	module := &PrebuiltEtc{}
	InitPrebuiltEtcModule(module, "priv-app")
	// This module is device-only
	android.InitAndroidArchModule(module, android.DeviceSupported, android.MultilibCommon)
	android.InitDefaultableModule(module)
	return module
}

// prebuilt_rfs installs files in <partition>/rfs directory.
func PrebuiltRfsFactory() android.Module {
	module := &PrebuiltEtc{}
	InitPrebuiltEtcModule(module, "rfs")
	// This module is device-only
	android.InitAndroidArchModule(module, android.DeviceSupported, android.MultilibCommon)
	android.InitDefaultableModule(module)
	return module
}

// prebuilt_framework installs files in <partition>/framework directory.
func PrebuiltFrameworkFactory() android.Module {
	module := &PrebuiltEtc{}
	InitPrebuiltEtcModule(module, "framework")
	// This module is device-only
	android.InitAndroidArchModule(module, android.DeviceSupported, android.MultilibCommon)
	android.InitDefaultableModule(module)
	return module
}

// prebuilt_res installs files in <partition>/res directory.
func PrebuiltResFactory() android.Module {
	module := &PrebuiltEtc{}
	InitPrebuiltEtcModule(module, "res")
	// This module is device-only
	android.InitAndroidArchModule(module, android.DeviceSupported, android.MultilibCommon)
	android.InitDefaultableModule(module)
	return module
}

// prebuilt_wlc_upt installs files in <partition>/wlc_upt directory.
func PrebuiltWlcUptFactory() android.Module {
	module := &PrebuiltEtc{}
	InitPrebuiltEtcModule(module, "wlc_upt")
	// This module is device-only
	android.InitAndroidArchModule(module, android.DeviceSupported, android.MultilibCommon)
	android.InitDefaultableModule(module)
	return module
}

// prebuilt_odm installs files in <partition>/odm directory.
func PrebuiltOdmFactory() android.Module {
	module := &PrebuiltEtc{}
	InitPrebuiltEtcModule(module, "odm")
	// This module is device-only
	android.InitAndroidArchModule(module, android.DeviceSupported, android.MultilibCommon)
	android.InitDefaultableModule(module)
	return module
}
+2 −2
Original line number Diff line number Diff line
@@ -591,7 +591,7 @@ func TestPrebuiltRFSADirPath(t *testing.T) {

func TestPrebuiltMediaAutoDirPath(t *testing.T) {
	result := prepareForPrebuiltEtcTest.RunTestWithBp(t, `
		prebuilt_media_audio {
		prebuilt_media {
			name: "foo",
			src: "Alarm_Beep_01.ogg",
			product_specific: true,
@@ -600,6 +600,6 @@ func TestPrebuiltMediaAutoDirPath(t *testing.T) {
	`)

	p := result.Module("foo", "android_common").(*PrebuiltEtc)
	expected := "out/soong/target/product/test_device/product/media/audio/alarms"
	expected := "out/soong/target/product/test_device/product/media/alarms"
	android.AssertPathRelativeToTopEquals(t, "install dir", expected, p.installDirPaths[0])
}