Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
A
AndroidSystemCore
Manage
Activity
Members
Code
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Deploy
Releases
Container registry
Model registry
Analyze
Contributor analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
GitLab community forum
Contribute to GitLab
Provide feedback
Terms and privacy
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Werner Sembach
AndroidSystemCore
Commits
5789b80a
Commit
5789b80a
authored
May 16, 2018
by
Logan Chien
Committed by
Android (Google) Code Review
May 16, 2018
Browse files
Options
Downloads
Plain Diff
Merge "Always use versioned VNDK directory" into pi-dev
parents
05dca7ae
6a145749
No related branches found
No related tags found
No related merge requests found
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
rootdir/Android.mk
+43
-27
43 additions, 27 deletions
rootdir/Android.mk
with
43 additions
and
27 deletions
rootdir/Android.mk
+
43
−
27
View file @
5789b80a
...
@@ -147,13 +147,10 @@ $(LOCAL_BUILT_MODULE): $(LOCAL_PATH)/init.environ.rc.in $(bcp_dep)
...
@@ -147,13 +147,10 @@ $(LOCAL_BUILT_MODULE): $(LOCAL_PATH)/init.environ.rc.in $(bcp_dep)
bcp_md5
:=
bcp_md5
:=
bcp_dep
:=
bcp_dep
:=
#
If BOARD_VNDK_VERSION is defined, a
ppend PLATFORM_VNDK_VERSION to base name.
#
A
ppend PLATFORM_VNDK_VERSION to base name.
define
append_vndk_version
define
append_vndk_version
$(
strip
\
$(
strip
\
$(
if
$(
BOARD_VNDK_VERSION
)
,
\
$(
basename
$(
1
))
.
$(
PLATFORM_VNDK_VERSION
)$(
suffix
$(
1
))
\
$(
basename
$(
1
))
.
$(
PLATFORM_VNDK_VERSION
)$(
suffix
$(
1
))
,
\
$(
1
)
\
)
\
)
)
endef
endef
...
@@ -215,31 +212,46 @@ sanitizer_runtime_libraries :=
...
@@ -215,31 +212,46 @@ sanitizer_runtime_libraries :=
vndk_version_suffix
:=
vndk_version_suffix
:=
endef
# update_and_install_ld_config
endef
# update_and_install_ld_config
#######################################
# ld.config.txt selection variables
#
_enforce_vndk_at_runtime
:=
false
ifdef
BOARD_VNDK_VERSION
ifneq
($(BOARD_VNDK_RUNTIME_DISABLE),true)
_enforce_vndk_at_runtime
:=
true
endif
endif
_enforce_vndk_lite_at_runtime
:=
false
ifeq
($(_enforce_vndk_at_runtime),false)
ifeq
($(PRODUCT_TREBLE_LINKER_NAMESPACES)|$(SANITIZE_TARGET),true|)
_enforce_vndk_lite_at_runtime
:=
true
endif
endif
#######################################
#######################################
# ld.config.txt
# ld.config.txt
#
#
# For VNDK enforced devices that have defined BOARD_VNDK_VERSION, use
# For VNDK enforced devices that have defined BOARD_VNDK_VERSION, use
# "ld.config.txt" as a source file. This configuration includes strict VNDK
# "ld.config.txt" as a source file. This configuration includes strict VNDK
# run-time restrictions for vendor process.
# run-time restrictions for vendor process.
#
# Other treblized devices, that have not defined BOARD_VNDK_VERSION or that
# Other treblized devices, that have not defined BOARD_VNDK_VERSION or that
# have set BOARD_VNDK_RUNTIME_DISABLE to true, use "ld.config.vndk_lite.txt"
# have set BOARD_VNDK_RUNTIME_DISABLE to true, use "ld.config.vndk_lite.txt"
# as a source file. This configuration does not have strict VNDK run-time
# as a source file. This configuration does not have strict VNDK run-time
# restrictions.
# restrictions.
#
# If the device is not treblized, use "ld.config.legacy.txt" for legacy
# If the device is not treblized, use "ld.config.legacy.txt" for legacy
# namespace configuration.
# namespace configuration.
#
include
$(CLEAR_VARS)
include
$(CLEAR_VARS)
LOCAL_MODULE
:=
ld.config.txt
LOCAL_MODULE
:=
ld.config.txt
LOCAL_MODULE_CLASS
:=
ETC
LOCAL_MODULE_CLASS
:=
ETC
LOCAL_MODULE_PATH
:=
$(
TARGET_OUT_ETC
)
LOCAL_MODULE_PATH
:=
$(
TARGET_OUT_ETC
)
_enforce_vndk_at_runtime
:=
false
ifdef
BOARD_VNDK_VERSION
ifneq
($(BOARD_VNDK_RUNTIME_DISABLE),true)
_enforce_vndk_at_runtime
:=
true
endif
endif
ifeq
($(_enforce_vndk_at_runtime),true)
ifeq
($(_enforce_vndk_at_runtime),true)
# for VNDK enforced devices
# for VNDK enforced devices
LOCAL_MODULE_STEM
:=
$(
call append_vndk_version,
$(
LOCAL_MODULE
))
LOCAL_MODULE_STEM
:=
$(
call append_vndk_version,
$(
LOCAL_MODULE
))
include
$(BUILD_SYSTEM)/base_rules.mk
include
$(BUILD_SYSTEM)/base_rules.mk
...
@@ -248,37 +260,36 @@ $(eval $(call update_and_install_ld_config,\
...
@@ -248,37 +260,36 @@ $(eval $(call update_and_install_ld_config,\
$(
LOCAL_BUILT_MODULE
)
,
\
$(
LOCAL_BUILT_MODULE
)
,
\
$(
PLATFORM_VNDK_VERSION
)))
$(
PLATFORM_VNDK_VERSION
)))
else
ifeq
($(PRODUCT_TREBLE_LINKER_NAMESPACES)|$(SANITIZE_TARGET),true|)
else
ifeq
($(_enforce_vndk_lite_at_runtime),true)
# for treblized but VNDK non-enforced devices
LOCAL_MODULE_STEM
:=
$(
call append_vndk_version,
$(
LOCAL_MODULE
))
# for treblized but VNDK lightly enforced devices
LOCAL_MODULE_STEM
:=
ld.config.vndk_lite.txt
include
$(BUILD_SYSTEM)/base_rules.mk
include
$(BUILD_SYSTEM)/base_rules.mk
$(
eval
$(
call update_and_install_ld_config,
\
$(
eval
$(
call update_and_install_ld_config,
\
$(
LOCAL_PATH
)
/etc/ld.config.vndk_lite.txt,
\
$(
LOCAL_PATH
)
/etc/ld.config.vndk_lite.txt,
\
$(
LOCAL_BUILT_MODULE
)
,
\
$(
LOCAL_BUILT_MODULE
)
,
\
$(
if
$(
BOARD_VNDK_VERSION
)
,
$(
PLATFORM_VNDK_VERSION
)
)
,
\
$(
PLATFORM_VNDK_VERSION
)
,
\
true
))
true
))
else
else
# for legacy non-treblized devices
# for legacy non-treblized devices
LOCAL_SRC_FILES
:=
etc/ld.config.legacy.txt
LOCAL_MODULE_STEM
:=
$(
LOCAL_MODULE
)
LOCAL_MODULE_STEM
:=
$(
LOCAL_MODULE
)
LOCAL_SRC_FILES
:=
etc/ld.config.legacy.txt
include
$(BUILD_PREBUILT)
include
$(BUILD_PREBUILT)
endif
# if
_enforce_vndk_at_runtime
is
true
endif
# if
eq ($(
_enforce_vndk_at_runtime
),
true
)
_enforce_vndk_at_runtime
:=
#######################################
#######################################
# ld.config.noenforce.txt
# ld.config.vndk_lite.txt
#
# This module is only for GSI.
#
#
# This file is a temporary configuration file only for GSI. Originally GSI has
ifeq
($(_enforce_vndk_lite_at_runtime),false)
# BOARD_VNDK_VERSION defined and has strict VNDK enforcing rule based on
# "ld.config.txt". However for the devices, that have not defined
# BOARD_VNDK_VERSION, GSI provides this configuration file which is based on
# "ld.config.vndk_lite.txt".
# Do not install this file for the devices other than GSI.
include
$(CLEAR_VARS)
include
$(CLEAR_VARS)
LOCAL_MODULE
:=
ld.config.
noenforc
e.txt
LOCAL_MODULE
:=
ld.config.
vndk_lit
e.txt
LOCAL_MODULE_CLASS
:=
ETC
LOCAL_MODULE_CLASS
:=
ETC
LOCAL_MODULE_PATH
:=
$(
TARGET_OUT_ETC
)
LOCAL_MODULE_PATH
:=
$(
TARGET_OUT_ETC
)
LOCAL_MODULE_STEM
:=
$(
LOCAL_MODULE
)
LOCAL_MODULE_STEM
:=
$(
LOCAL_MODULE
)
...
@@ -289,6 +300,11 @@ $(eval $(call update_and_install_ld_config,\
...
@@ -289,6 +300,11 @@ $(eval $(call update_and_install_ld_config,\
$(
PLATFORM_VNDK_VERSION
)
,
\
$(
PLATFORM_VNDK_VERSION
)
,
\
true
))
true
))
endif
# ifeq ($(_enforce_vndk_lite_at_runtime),false)
_enforce_vndk_at_runtime
:=
_enforce_vndk_lite_at_runtime
:=
#######################################
#######################################
# llndk.libraries.txt
# llndk.libraries.txt
include
$(CLEAR_VARS)
include
$(CLEAR_VARS)
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment