ifndef EXTERNAL_OPENCORE_CONFIG_ONCE
  # This is the first attempt to include this file.
  EXTERNAL_OPENCORE_CONFIG_ONCE := true

  PV_TOP := $(my-dir)
    PV_CFLAGS := -Wno-non-virtual-dtor -DENABLE_SHAREDFD_PLAYBACK -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -DUSE_CML2_CONFIG

  FORMAT := android

ifeq ($(ENABLE_PV_LOGGING),1)
 PV_CFLAGS += -DPVLOGGER_INST_LEVEL=5
endif

ifeq ($(TARGET_ARCH),arm)
  PV_CFLAGS += -DPV_ARM_GCC_V5
endif

  # HAS_OSCL_LIB_SUPPORT turns on PV's OSCL dynamic loader.
  # Set PV_OSCL_LIB to true to enable it (default in release mode).
  # However for debugging with gdb you may want to set PV_OSCL_LIB to
  # false to disable this custom loader.
  PV_OSCL_LIB := true
  ifeq ($(PV_OSCL_LIB), true)
    PV_CFLAGS += -DHAS_OSCL_LIB_SUPPORT
  endif

include $(CLEAR_VARS)

  PV_COPY_HEADERS_TO := libpv

# Using -fvisibility=hidden option increases the DSO size beyond what's allocated in prelink map.
# Use PV_CFLAGS_MINUS_VISIBILITY instead of PV_CFLAGS until we figure out the reason.
# JJ 06/05/09
    PV_CFLAGS_MINUS_VISIBILITY := $(PV_CFLAGS)
    PV_CFLAGS += -fvisibility=hidden

  PV_INCLUDES := \
	$(PV_TOP)/android \
	$(PV_TOP)/extern_libs_v2/khronos/openmax/include \
	$(PV_TOP)/engines/common/include \
	$(PV_TOP)/engines/player/config/core \
	$(PV_TOP)/engines/player/include \
	$(PV_TOP)/nodes/pvmediaoutputnode/include \
	$(PV_TOP)/nodes/pvdownloadmanagernode/config/opencore \
	$(PV_TOP)/pvmi/pvmf/include \
	$(PV_TOP)/fileformats/mp4/parser/config/opencore \
	$(PV_TOP)/oscl/oscl/config/android \
	$(PV_TOP)/oscl/oscl/config/shared \
	$(PV_TOP)/engines/author/include \
	$(PV_TOP)/android/drm/oma1/src \
	$(PV_TOP)/build_config/opencore_dynamic \
	$(TARGET_OUT_HEADERS)/$(PV_COPY_HEADERS_TO) 

  # Stash these values for the next includer of this file.
  OPENCORE.PV_TOP := $(PV_TOP)
  OPENCORE.PV_CFLAGS := $(PV_CFLAGS)
  OPENCORE.PV_CFLAGS_MINUS_VISIBILITY := $(PV_CFLAGS_MINUS_VISIBILITY)
  OPENCORE.FORMAT := $(FORMAT)
  OPENCORE.PV_OSCL_LIB := $(OPENCORE.PV_OSCL_LIB)
  OPENCORE.PV_COPY_HEADERS_TO := $(PV_COPY_HEADERS_TO)
  OPENCORE.PV_INCLUDES := $(PV_INCLUDES)
else
  # This file has already been included by someone, so we can
  # use the precomputed values.
  PV_TOP := $(OPENCORE.PV_TOP)
  PV_CFLAGS := $(OPENCORE.PV_CFLAGS)
  PV_CFLAGS_MINUS_VISIBILITY := $(OPENCORE.PV_CFLAGS_MINUS_VISIBILITY)
  FORMAT := $(OPENCORE.FORMAT)
  PV_OSCL_LIB := $(OPENCORE.PV_OSCL_LIB)
  PV_COPY_HEADERS_TO := $(OPENCORE.PV_COPY_HEADERS_TO)
  PV_INCLUDES := $(OPENCORE.PV_INCLUDES)
endif