Eine aufbereitete Darstellung der Quelle

 
     
 
 
Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 

Benutzer

Quelle  install_jni_libs.mk

  Sprache: Shell
 

# Decides how to install the jni libraries needed by an apk.
# Input variables:
#   my_module_multilib, LOCAL_2ND_ARCH_VAR_PREFIX (from package.mk or prebuilt.mk)
#   rs_compatibility_jni_libs (from java.mk)
#   my_module_path (from base_rules.mk)
#   partition_tag (from base_rules.mk)
#   my_prebuilt_src_file (from prebuilt_internal.mk)
#
# Output variables:
#   jni_shared_libraries, jni_shared_libraries_abi, jni_shared_libraries_with_abis if we are going to embed the libraries into the apk;
#   embedded_prebuilt_jni_libs, prebuilt jni libs embedded in prebuilt apk.
#

my_embed_jni :=
ifneq ($(TARGET_BUILD_APPS),)
  my_embed_jni := true
endif
ifneq ($(filter tests samples, $(LOCAL_MODULE_TAGS)),)
  my_embed_jni := true
endif

# If the APK is not installed in one of the following partitions, force its libraries
# to be embedded inside the APK instead of installed to /<partition>/lib[64]/.
supported_partition_patterns := \
    $(TARGET_OUT)/% \
    $(TARGET_OUT_VENDOR)/% \
    $(TARGET_OUT_OEM)/% \
    $(TARGET_OUT_PRODUCT)/% \
    $(TARGET_OUT_SYSTEM_EXT)/% \

ifeq ($(filter $(supported_partition_patterns),$(my_module_path)),)
  my_embed_jni := true
endif

# If we're installing this APP as a compressed module, we include all JNI libraries
# in the compressed artifact, rather than as separate files on the partition in question.
ifdef LOCAL_COMPRESSED_MODULE
  my_embed_jni := true
endif

jni_shared_libraries :=
jni_shared_libraries_abis :=
# jni_shared_libraries_with_abis is a list of <abi>:<path-to-the-built-jni-lib>
jni_shared_libraries_with_abis :=
embedded_prebuilt_jni_libs :=

#######################################
# For TARGET_ARCH
my_2nd_arch_prefix :=
my_add_jni :=
# The module is built for TARGET_ARCH
ifeq ($(my_2nd_arch_prefix),$(LOCAL_2ND_ARCH_VAR_PREFIX))
  my_add_jni := true
endif
# Or it explicitly requires both
ifeq ($(my_module_multilib),both)
  my_add_jni := true
endif
ifeq ($(my_add_jni),true)
  my_prebuilt_jni_libs := $(LOCAL_PREBUILT_JNI_LIBS_$(TARGET_ARCH))
  ifndef my_prebuilt_jni_libs
    my_prebuilt_jni_libs := $(LOCAL_PREBUILT_JNI_LIBS)
  endif
  include $(BUILD_SYSTEM)/install_jni_libs_internal.mk
  jni_shared_libraries += $(my_jni_shared_libraries)
  jni_shared_libraries_abis += $(my_jni_shared_libraries_abi)
  jni_shared_libraries_with_abis += $(addprefix $(my_jni_shared_libraries_abi):,\
      $(my_jni_shared_libraries))
  embedded_prebuilt_jni_libs += $(my_embedded_prebuilt_jni_libs)

  # Include RS dynamically-generated libraries as well
  # TODO: Add multilib support once RS supports generating multilib libraries.
  jni_shared_libraries += $(rs_compatibility_jni_libs)
  jni_shared_libraries_with_abis += $(addprefix $(my_jni_shared_libraries_abi):,\
      $(rs_compatibility_jni_libs))
endif  # my_add_jni

#######################################
# For TARGET_2ND_ARCH
ifdef TARGET_2ND_ARCH
  my_2nd_arch_prefix := $(TARGET_2ND_ARCH_VAR_PREFIX)
  my_add_jni :=
  # The module is built for TARGET_2ND_ARCH
  ifeq ($(my_2nd_arch_prefix),$(LOCAL_2ND_ARCH_VAR_PREFIX))
    my_add_jni := true
  endif
  # Or it explicitly requires both
  ifeq ($(my_module_multilib),both)
    my_add_jni := true
  endif
  ifeq ($(my_add_jni),true)
    my_prebuilt_jni_libs := $(LOCAL_PREBUILT_JNI_LIBS_$(TARGET_2ND_ARCH))
    ifndef my_prebuilt_jni_libs
      my_prebuilt_jni_libs := $(LOCAL_PREBUILT_JNI_LIBS)
    endif
    include $(BUILD_SYSTEM)/install_jni_libs_internal.mk
    jni_shared_libraries += $(my_jni_shared_libraries)
    jni_shared_libraries_abis += $(my_jni_shared_libraries_abi)
    jni_shared_libraries_with_abis += $(addprefix $(my_jni_shared_libraries_abi):,\
        $(my_jni_shared_libraries))
    embedded_prebuilt_jni_libs += $(my_embedded_prebuilt_jni_libs)
  endif  # my_add_jni
endif  # TARGET_2ND_ARCH

jni_shared_libraries := $(strip $(jni_shared_libraries))
jni_shared_libraries_abis := $(sort $(jni_shared_libraries_abis))
jni_shared_libraries_with_abis := $(strip $(jni_shared_libraries_with_abis))
embedded_prebuilt_jni_libs := $(strip $(embedded_prebuilt_jni_libs))

Messung V0.5 in Prozent
C=91 H=95 G=92

¤ Dauer der Verarbeitung: 0.10 Sekunden  (vorverarbeitet am  2026-06-28) ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

PVS Prover

Isabelle Prover

NIST Cobol Testsuite

Cephes Mathematical Library

Vienna Development Method

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.






                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Quellcodebibliothek
     Eigene Quellcodes
     Fremde Quellcodes
     Suchen

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....
    

Besucherstatistik

Besucherstatistik