1#
2# Copyright (C) 2020 The Android Open Source Project
3#
4# Licensed under the Apache License, Version 2.0 (the "License");
5# you may not use this file except in compliance with the License.
6# You may obtain a copy of the License at
7#
8#      http://www.apache.org/licenses/LICENSE-2.0
9#
10# Unless required by applicable law or agreed to in writing, software
11# distributed under the License is distributed on an "AS IS" BASIS,
12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13# See the License for the specific language governing permissions and
14# limitations under the License.
15#
16ifdef BOARD_CURRENT_API_LEVEL_FOR_VENDOR_MODULES
17  _override_to := $(BOARD_CURRENT_API_LEVEL_FOR_VENDOR_MODULES)
18
19  # b/314011075: apks and jars in the vendor or odm partitions cannot use
20  # system SDK 35 and beyond. In order not to suddenly break those vendor
21  # modules using current or system_current as their LOCAL_SDK_VERSION,
22  # override it to 34, which is the maximum API level allowed for them.
23  ifneq (,$(filter JAVA_LIBRARIES APPS,$(LOCAL_MODULE_CLASS)))
24    _override_to := 34
25  endif
26
27  ifneq (current,$(_override_to))
28    ifneq (,$(filter true,$(LOCAL_VENDOR_MODULE) $(LOCAL_ODM_MODULE) $(LOCAL_PROPRIETARY_MODULE)))
29      ifeq (current,$(LOCAL_SDK_VERSION))
30        LOCAL_SDK_VERSION := $(_override_to)
31      else ifeq (system_current,$(LOCAL_SDK_VERSION))
32        LOCAL_SDK_VERSION := system_$(_override_to)
33      endif
34    endif
35  endif
36  _override_to :=
37endif
38