15c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen# function to find all *.cpp files under a directory
2e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Projectdefine all-cpp-files-under
3e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project$(patsubst ./%,%, \
4e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project  $(shell cd $(LOCAL_PATH) ; \
5e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project          find $(1) -name "*.cpp" -and -not -name ".*") \
6e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project )
7e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Projectendef
8e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project
9e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project
10e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source ProjectLOCAL_PATH:= $(call my-dir)
115c65c3a0f42e174e47fecd4e569606003217ff4eMartijn CoenenNFA := src/nfa
125c65c3a0f42e174e47fecd4e569606003217ff4eMartijn CoenenNFC := src/nfc
135c65c3a0f42e174e47fecd4e569606003217ff4eMartijn CoenenHAL := src/hal
145c65c3a0f42e174e47fecd4e569606003217ff4eMartijn CoenenUDRV := src/udrv
155c65c3a0f42e174e47fecd4e569606003217ff4eMartijn CoenenHALIMPL := halimpl/bcm2079x
165c65c3a0f42e174e47fecd4e569606003217ff4eMartijn CoenenD_CFLAGS := -DANDROID -DBUILDCFG=1
17e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project
18e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project
195c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen######################################
205c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen# Build shared library system/lib/libnfc-nci.so for stack code.
21e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project
22e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Projectinclude $(CLEAR_VARS)
23e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source ProjectLOCAL_PRELINK_MODULE := false
24e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source ProjectLOCAL_ARM_MODE := arm
255c65c3a0f42e174e47fecd4e569606003217ff4eMartijn CoenenLOCAL_MODULE := libnfc-nci
26e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source ProjectLOCAL_MODULE_TAGS := optional
27878a04bd7aedc8177c8200fdeea42a9b0d281417Ying WangLOCAL_SHARED_LIBRARIES := libhardware_legacy libcutils liblog libdl libstlport libhardware
285c65c3a0f42e174e47fecd4e569606003217ff4eMartijn CoenenLOCAL_CFLAGS := $(D_CFLAGS)
295c65c3a0f42e174e47fecd4e569606003217ff4eMartijn CoenenLOCAL_C_INCLUDES := external/stlport/stlport bionic/ bionic/libstdc++/include \
305c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen    $(LOCAL_PATH)/src/include \
315c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen    $(LOCAL_PATH)/src/gki/ulinux \
325c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen    $(LOCAL_PATH)/src/gki/common \
335c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen    $(LOCAL_PATH)/$(NFA)/include \
345c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen    $(LOCAL_PATH)/$(NFA)/int \
355c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen    $(LOCAL_PATH)/$(NFC)/include \
365c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen    $(LOCAL_PATH)/$(NFC)/int \
375c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen    $(LOCAL_PATH)/src/hal/include \
38a24be4f06674b2707b57904deaa0dff5a95823bdEvan Chu    $(LOCAL_PATH)/src/hal/int \
39a24be4f06674b2707b57904deaa0dff5a95823bdEvan Chu    $(LOCAL_PATH)/$(HALIMPL)/include
405c65c3a0f42e174e47fecd4e569606003217ff4eMartijn CoenenLOCAL_SRC_FILES := \
415c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen    $(call all-c-files-under, $(NFA)/ce $(NFA)/dm $(NFA)/ee) \
425c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen    $(call all-c-files-under, $(NFA)/hci $(NFA)/int $(NFA)/p2p $(NFA)/rw $(NFA)/sys) \
435c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen    $(call all-c-files-under, $(NFC)/int $(NFC)/llcp $(NFC)/nci $(NFC)/ndef $(NFC)/nfc $(NFC)/tags) \
445c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen    $(call all-c-files-under, src/adaptation) \
455c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen    $(call all-cpp-files-under, src/adaptation) \
465c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen    $(call all-c-files-under, src/gki) \
47a24be4f06674b2707b57904deaa0dff5a95823bdEvan Chu    $(HALIMPL)/adaptation/android_logmsg.cpp \
485c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen    src/nfca_version.c
495c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coeneninclude $(BUILD_SHARED_LIBRARY)
505c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen
515c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen
525c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen######################################
535c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen# Build shared library system/lib/hw/nfc_nci.*.so for Hardware Abstraction Layer.
545c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen# Android's generic HAL (libhardware.so) dynamically loads this shared library.
555c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen
565c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coeneninclude $(CLEAR_VARS)
57077f48fc39770c8db3cdc27ba65c2f12299199ddMartijn CoenenLOCAL_MODULE := nfc_nci.bcm2079x.default
5866a05535ce78d6775d327c4a87d070a5bbeaabc5Colin CrossLOCAL_MODULE_RELATIVE_PATH := hw
595c65c3a0f42e174e47fecd4e569606003217ff4eMartijn CoenenLOCAL_SRC_FILES := $(call all-c-files-under, $(HALIMPL)) \
60edbfba90df8e223fadd787a10cb131e1dcfa7347Evan Chu    $(call all-cpp-files-under, $(HALIMPL)) \
610976d37081fae8bcd4fc4dcf7996e1ce194fb4b1Evan Chu    src/adaptation/CrcChecksum.cpp \
620976d37081fae8bcd4fc4dcf7996e1ce194fb4b1Evan Chu    src//nfca_version.c
635c65c3a0f42e174e47fecd4e569606003217ff4eMartijn CoenenLOCAL_SHARED_LIBRARIES := liblog libcutils libhardware_legacy libstlport
645c65c3a0f42e174e47fecd4e569606003217ff4eMartijn CoenenLOCAL_MODULE_TAGS := optional
655c65c3a0f42e174e47fecd4e569606003217ff4eMartijn CoenenLOCAL_C_INCLUDES := external/stlport/stlport bionic/ bionic/libstdc++/include \
665c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen    $(LOCAL_PATH)/$(HALIMPL)/include \
675c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen    $(LOCAL_PATH)/$(HALIMPL)/gki/ulinux \
685c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen    $(LOCAL_PATH)/$(HALIMPL)/gki/common \
695c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen    $(LOCAL_PATH)/$(HAL)/include \
705c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen    $(LOCAL_PATH)/$(HAL)/int \
715c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen    $(LOCAL_PATH)/src/include \
725c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen    $(LOCAL_PATH)/$(NFC)/include \
735c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen    $(LOCAL_PATH)/$(NFA)/include \
745c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen    $(LOCAL_PATH)/$(UDRV)/include
755c65c3a0f42e174e47fecd4e569606003217ff4eMartijn CoenenLOCAL_CFLAGS := $(D_CFLAGS) -DNFC_HAL_TARGET=TRUE -DNFC_RW_ONLY=TRUE
765c65c3a0f42e174e47fecd4e569606003217ff4eMartijn CoenenLOCAL_CPPFLAGS := $(LOCAL_CFLAGS)
77e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Projectinclude $(BUILD_SHARED_LIBRARY)
78e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project
795c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen
805c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen######################################
81e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Projectinclude $(call all-makefiles-under,$(LOCAL_PATH))
82