#
# Copyright 2001-2012 Texas Instruments, Inc. - http://www.ti.com/
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#

ifeq ($(TARGET_DEVICE),panda)

LOCAL_PATH := $(call my-dir)
BLUEDROID_PATH := external/bluetooth/bluedroid/
include $(CLEAR_VARS)

LOCAL_C_INCLUDES :=\
	$(BLUEDROID_PATH)/hci/include

LOCAL_CFLAGS:= -g -c -W -Wall -O2 -D_POSIX_SOURCE

LOCAL_SRC_FILES += libbt-vendor-ti.c

LOCAL_SHARED_LIBRARIES := \
	libnativehelper \
	libcutils \
	libutils \
	liblog

LOCAL_PRELINK_MODULE := false
LOCAL_MODULE := libbt-vendor
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_PATH := $(ANDROID_PRODUCT_OUT)/system/vendor/lib

include $(BUILD_SHARED_LIBRARY)

endif # panda
