unplugged-system/external/skia/mtkjpeg.go

108 lines
3.8 KiB
Go

package mtkJpegEnhanceSkia
import (
"android/soong/android"
"android/soong/cc"
//"android/soong/android/mediatek"
//"github.com/google/blueprint"
)
func mtkJpegEnhanceSkiaDefaults(ctx android.LoadHookContext) {
vars := ctx.Config().VendorConfig("mtkPlugin")
targetArch := vars.String("TARGET_ARCH")
type props struct {
Target struct {
Android struct {
Cflags []string
Local_include_dirs []string
Include_dirs []string
Srcs []string
//Legacy_shared_libs []string
Shared_libs []string
}
}
}
p := &props{}
//featureValue := android.MtkFeatureValues
var localIncludeDirs []string
var includeDirs []string
var srcs []string
var sharedlibs []string
if targetArch == "x86" || targetArch == "x86_64" {
includeDirs = append(includeDirs, "vendor/mediatek/proprietary/external/libjpeg-alpha/include/")
p.Target.Android.Include_dirs = includeDirs
ctx.AppendProperties(p)
return
}
//graphics flags
p.Target.Android.Cflags = append(p.Target.Android.Cflags, "-D__MTK_TRACE_SKIA__")
p.Target.Android.Cflags = append(p.Target.Android.Cflags, "-D__MTK_TRACE_MT_BLITTER__")
//p.Target.Android.Cflags = append(p.Target.Android.Cflags, "-D__MTK_AFFINE_TRANSFORM_EXT__")
p.Target.Android.Cflags = append(p.Target.Android.Cflags, "-D__MULTI_THREADS_OPTIMIZE_2D__")
//p.Target.Android.Cflags = append(p.Target.Android.Cflags, "-D__MTK_DUMP_DRAW_BITMAP__")
//jpeg flags
p.Target.Android.Cflags = append(p.Target.Android.Cflags, "-DMTK_JPEG_HW_REGION_RESIZER")
p.Target.Android.Cflags = append(p.Target.Android.Cflags, "-DMTK_IMAGE_ENABLE_PQ_FOR_JPEG")
p.Target.Android.Cflags = append(p.Target.Android.Cflags, "-DMTK_JPEG_SW_OPTIMIZATION")
p.Target.Android.Cflags = append(p.Target.Android.Cflags, "-DMTK_JPEG_DEBUG_DUMP_INOUT")
//graphics local dirs
//localIncludeDirs = append(localIncludeDirs, "mtk_opt/include/adapter")
//localIncludeDirs = append(localIncludeDirs, "mtk_opt/src/adapter")
//jpeg local dirs
localIncludeDirs = append(localIncludeDirs, "include/mtk/")
//jpeg non-local dirs
includeDirs = append(includeDirs, "system/core/include/utils/")
includeDirs = append(includeDirs, "system/core/include/cutils/") // native_handle.h
includeDirs = append(includeDirs, "vendor/mediatek/proprietary/external/") //libion_mtk/include/ion.h
includeDirs = append(includeDirs, "device/mediatek/common/kernel-headers/") //linux/mtk_ion.h
includeDirs = append(includeDirs, "vendor/mediatek/proprietary/external/libjpeg-alpha/include/")
//graphics srcs
//srcs = append(srcs, "mtk_opt/src/adapter/SkBlitterAdapterHandler.cpp")
//srcs = append(srcs, "mtk_opt/src/adapter/SkBlitterMTAdapter.cpp")
//jpeg srcs
srcs = append(srcs, "src/mtk/SkImageDecoder.cpp")
srcs = append(srcs, "src/mtk/SkImageDecoder_FactoryDefault.cpp")
srcs = append(srcs, "src/mtk/SkImageDecoder_FactoryRegistrar.cpp")
srcs = append(srcs, "src/mtk/SkImageDecoder_libjpeg.cpp")
srcs = append(srcs, "src/mtk/SkJpegCodec.cpp")
srcs = append(srcs, "src/mtk/SkJpegDecoderMgr.cpp")
srcs = append(srcs, "src/mtk/SkJpegUtility.cpp")
srcs = append(srcs, "src/mtk/SkScaledBitmapSampler.cpp")
//jpeg legacy shared libs
sharedlibs = append(sharedlibs, "libion")
sharedlibs = append(sharedlibs, "libjpeg-alpha")
sharedlibs = append(sharedlibs, "libhidlbase")
sharedlibs = append(sharedlibs, "libJpegOal")
sharedlibs = append(sharedlibs, "libutils")
sharedlibs = append(sharedlibs, "libdmabufheap")
p.Target.Android.Local_include_dirs = localIncludeDirs
p.Target.Android.Include_dirs = includeDirs
p.Target.Android.Srcs = srcs
p.Target.Android.Shared_libs = sharedlibs
ctx.AppendProperties(p)
}
func init() {
android.RegisterModuleType("mtk_jpeg_enhance_skia_defaults", mtkJpegEnhanceSkiaDefaultsFactory)
}
func mtkJpegEnhanceSkiaDefaultsFactory() (android.Module) {
module := cc.DefaultsFactory()
android.AddLoadHook(module, mtkJpegEnhanceSkiaDefaults)
return module
}