Created
September 9, 2019 14:31
-
-
Save ladislas/58afbfbd5fe7482e532642fcee548580 to your computer and use it in GitHub Desktop.
YCM for mbed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import os | |
import ycm_core | |
# You can set a directory with a lot of libraries to be search recursively here | |
nestedLibDirs = ["lib"] | |
include_flags = [ | |
'-I.' | |
,'-I./mbed-os' | |
,'-I./mbed-os/cmsis' | |
,'-I./mbed-os/cmsis/TARGET_CORTEX_M' | |
,'-I./mbed-os/components' | |
,'-I./mbed-os/components/802.15.4_RF' | |
,'-I./mbed-os/components/802.15.4_RF/atmel-rf-driver' | |
,'-I./mbed-os/components/802.15.4_RF/atmel-rf-driver/atmel-rf-driver' | |
,'-I./mbed-os/components/802.15.4_RF/atmel-rf-driver/source' | |
,'-I./mbed-os/components/802.15.4_RF/mcr20a-rf-driver' | |
,'-I./mbed-os/components/802.15.4_RF/mcr20a-rf-driver/mcr20a-rf-driver' | |
,'-I./mbed-os/components/802.15.4_RF/mcr20a-rf-driver/source' | |
,'-I./mbed-os/components/802.15.4_RF/stm-s2lp-rf-driver' | |
,'-I./mbed-os/components/802.15.4_RF/stm-s2lp-rf-driver/source' | |
,'-I./mbed-os/components/802.15.4_RF/stm-s2lp-rf-driver/stm-s2lp-rf-driver' | |
,'-I./mbed-os/components/wifi' | |
,'-I./mbed-os/components/wifi/esp8266-driver' | |
,'-I./mbed-os/components/wifi/esp8266-driver/ESP8266' | |
,'-I./mbed-os/drivers' | |
,'-I./mbed-os/drivers/internal' | |
,'-I./mbed-os/events' | |
,'-I./mbed-os/events/internal' | |
,'-I./mbed-os/features' | |
,'-I./mbed-os/features/FEATURE_BLE' | |
,'-I./mbed-os/features/FEATURE_BLE/ble' | |
,'-I./mbed-os/features/FEATURE_BLE/ble/common' | |
,'-I./mbed-os/features/FEATURE_BLE/ble/gap' | |
,'-I./mbed-os/features/FEATURE_BLE/ble/generic' | |
,'-I./mbed-os/features/FEATURE_BLE/ble/pal' | |
,'-I./mbed-os/features/FEATURE_BLE/ble/services' | |
,'-I./mbed-os/features/FEATURE_BLE/source' | |
,'-I./mbed-os/features/FEATURE_BLE/source/gap' | |
,'-I./mbed-os/features/FEATURE_BLE/source/generic' | |
,'-I./mbed-os/features/FEATURE_BLE/targets/TARGET_CORDIO' | |
,'-I./mbed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/driver' | |
,'-I./mbed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/source' | |
,'-I./mbed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack' | |
,'-I./mbed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/ble-host' | |
,'-I./mbed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/ble-host/include' | |
,'-I./mbed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/ble-host/sources' | |
,'-I./mbed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/ble-host/sources/hci' | |
,'-I./mbed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/ble-host/sources/hci/dual_chip' | |
,'-I./mbed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/ble-host/sources/sec' | |
,'-I./mbed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/ble-host/sources/sec/common' | |
,'-I./mbed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/ble-host/sources/stack' | |
,'-I./mbed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/ble-host/sources/stack/att' | |
,'-I./mbed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/ble-host/sources/stack/cfg' | |
,'-I./mbed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/ble-host/sources/stack/dm' | |
,'-I./mbed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/ble-host/sources/stack/hci' | |
,'-I./mbed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/ble-host/sources/stack/l2c' | |
,'-I./mbed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/ble-host/sources/stack/smp' | |
,'-I./mbed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/platform' | |
,'-I./mbed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/platform/include' | |
,'-I./mbed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/wsf' | |
,'-I./mbed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/wsf/include' | |
,'-I./mbed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/wsf/include/util' | |
,'-I./mbed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/wsf/sources' | |
,'-I./mbed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/wsf/sources/port' | |
,'-I./mbed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/wsf/sources/port/baremetal' | |
,'-I./mbed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack_adaptation' | |
,'-I./mbed-os/features/FEATURE_BLE/targets/TARGET_STM/TARGET_NUCLEO_WB55RG' | |
,'-I./mbed-os/features/cellular' | |
,'-I./mbed-os/features/cellular/framework' | |
,'-I./mbed-os/features/cellular/framework/API' | |
,'-I./mbed-os/features/cellular/framework/AT' | |
,'-I./mbed-os/features/cellular/framework/common' | |
,'-I./mbed-os/features/cellular/framework/device' | |
,'-I./mbed-os/features/cellular/framework/targets' | |
,'-I./mbed-os/features/cellular/framework/targets/GEMALTO' | |
,'-I./mbed-os/features/cellular/framework/targets/GEMALTO/CINTERION' | |
,'-I./mbed-os/features/cellular/framework/targets/GENERIC' | |
,'-I./mbed-os/features/cellular/framework/targets/GENERIC/GENERIC_AT3GPP' | |
,'-I./mbed-os/features/cellular/framework/targets/MultiTech' | |
,'-I./mbed-os/features/cellular/framework/targets/MultiTech/DragonflyNano' | |
,'-I./mbed-os/features/cellular/framework/targets/MultiTech/DragonflyNano/PPP' | |
,'-I./mbed-os/features/cellular/framework/targets/QUECTEL' | |
,'-I./mbed-os/features/cellular/framework/targets/QUECTEL/BC95' | |
,'-I./mbed-os/features/cellular/framework/targets/QUECTEL/BG96' | |
,'-I./mbed-os/features/cellular/framework/targets/QUECTEL/EC2X' | |
,'-I./mbed-os/features/cellular/framework/targets/QUECTEL/M26' | |
,'-I./mbed-os/features/cellular/framework/targets/QUECTEL/UG96' | |
,'-I./mbed-os/features/cellular/framework/targets/RiotMicro' | |
,'-I./mbed-os/features/cellular/framework/targets/RiotMicro/AT' | |
,'-I./mbed-os/features/cellular/framework/targets/TELIT' | |
,'-I./mbed-os/features/cellular/framework/targets/TELIT/HE910' | |
,'-I./mbed-os/features/cellular/framework/targets/TELIT/ME910' | |
,'-I./mbed-os/features/cellular/framework/targets/UBLOX' | |
,'-I./mbed-os/features/cellular/framework/targets/UBLOX/AT' | |
,'-I./mbed-os/features/cellular/framework/targets/UBLOX/N2XX' | |
,'-I./mbed-os/features/cellular/framework/targets/UBLOX/PPP' | |
,'-I./mbed-os/features/device_key' | |
,'-I./mbed-os/features/device_key/source' | |
,'-I./mbed-os/features/frameworks' | |
,'-I./mbed-os/features/frameworks/greentea-client' | |
,'-I./mbed-os/features/frameworks/greentea-client/greentea-client' | |
,'-I./mbed-os/features/frameworks/mbed-client-cli' | |
,'-I./mbed-os/features/frameworks/mbed-client-cli/mbed-client-cli' | |
,'-I./mbed-os/features/frameworks/mbed-client-randlib' | |
,'-I./mbed-os/features/frameworks/mbed-client-randlib/mbed-client-randlib' | |
,'-I./mbed-os/features/frameworks/mbed-client-randlib/mbed-client-randlib/platform' | |
,'-I./mbed-os/features/frameworks/mbed-coap' | |
,'-I./mbed-os/features/frameworks/mbed-coap/mbed-coap' | |
,'-I./mbed-os/features/frameworks/mbed-coap/source' | |
,'-I./mbed-os/features/frameworks/mbed-coap/source/include' | |
,'-I./mbed-os/features/frameworks/mbed-trace' | |
,'-I./mbed-os/features/frameworks/mbed-trace/mbed-trace' | |
,'-I./mbed-os/features/frameworks/nanostack-libservice' | |
,'-I./mbed-os/features/frameworks/nanostack-libservice/mbed-client-libservice' | |
,'-I./mbed-os/features/frameworks/nanostack-libservice/mbed-client-libservice/platform' | |
,'-I./mbed-os/features/frameworks/unity' | |
,'-I./mbed-os/features/frameworks/unity/unity' | |
,'-I./mbed-os/features/frameworks/utest' | |
,'-I./mbed-os/features/frameworks/utest/utest' | |
,'-I./mbed-os/features/lorawan' | |
,'-I./mbed-os/features/lorawan/lorastack' | |
,'-I./mbed-os/features/lorawan/lorastack/mac' | |
,'-I./mbed-os/features/lorawan/lorastack/phy' | |
,'-I./mbed-os/features/lorawan/system' | |
,'-I./mbed-os/features/lwipstack' | |
,'-I./mbed-os/features/lwipstack/lwip' | |
,'-I./mbed-os/features/lwipstack/lwip-sys' | |
,'-I./mbed-os/features/lwipstack/lwip-sys/arch' | |
,'-I./mbed-os/features/lwipstack/lwip/src' | |
,'-I./mbed-os/features/lwipstack/lwip/src/include' | |
,'-I./mbed-os/features/lwipstack/lwip/src/include/compat' | |
,'-I./mbed-os/features/lwipstack/lwip/src/include/compat/posix' | |
,'-I./mbed-os/features/lwipstack/lwip/src/include/compat/posix/arpa' | |
,'-I./mbed-os/features/lwipstack/lwip/src/include/compat/posix/net' | |
,'-I./mbed-os/features/lwipstack/lwip/src/include/compat/posix/sys' | |
,'-I./mbed-os/features/lwipstack/lwip/src/include/lwip' | |
,'-I./mbed-os/features/lwipstack/lwip/src/include/lwip/priv' | |
,'-I./mbed-os/features/lwipstack/lwip/src/include/lwip/prot' | |
,'-I./mbed-os/features/lwipstack/lwip/src/include/netif' | |
,'-I./mbed-os/features/mbedtls' | |
,'-I./mbed-os/features/mbedtls/inc' | |
,'-I./mbed-os/features/mbedtls/inc/mbedtls' | |
,'-I./mbed-os/features/mbedtls/mbed-crypto' | |
,'-I./mbed-os/features/mbedtls/mbed-crypto/inc' | |
,'-I./mbed-os/features/mbedtls/mbed-crypto/inc/mbedtls' | |
,'-I./mbed-os/features/mbedtls/mbed-crypto/inc/psa' | |
,'-I./mbed-os/features/mbedtls/mbed-crypto/platform/COMPONENT_PSA_SRV_IMPL' | |
,'-I./mbed-os/features/mbedtls/mbed-crypto/platform/COMPONENT_PSA_SRV_IMPL/COMPONENT_NSPE' | |
,'-I./mbed-os/features/mbedtls/platform' | |
,'-I./mbed-os/features/mbedtls/platform/inc' | |
,'-I./mbed-os/features/mbedtls/targets/TARGET_STM' | |
,'-I./mbed-os/features/nanostack' | |
,'-I./mbed-os/features/nanostack/coap-service' | |
,'-I./mbed-os/features/nanostack/coap-service/coap-service' | |
,'-I./mbed-os/features/nanostack/coap-service/source' | |
,'-I./mbed-os/features/nanostack/coap-service/source/include' | |
,'-I./mbed-os/features/nanostack/mbed-mesh-api' | |
,'-I./mbed-os/features/nanostack/mbed-mesh-api/mbed-mesh-api' | |
,'-I./mbed-os/features/nanostack/mbed-mesh-api/source' | |
,'-I./mbed-os/features/nanostack/mbed-mesh-api/source/include' | |
,'-I./mbed-os/features/nanostack/nanostack-hal-mbed-cmsis-rtos' | |
,'-I./mbed-os/features/nanostack/nanostack-interface' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack-eventloop' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack-eventloop/nanostack-event-loop' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack-eventloop/nanostack-event-loop/platform' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack-eventloop/source' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/nanostack' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/nanostack/platform' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/6LoWPAN' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/6LoWPAN/Bootstraps' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/6LoWPAN/Fragmentation' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/6LoWPAN/IPHC_Decode' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/6LoWPAN/MAC' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/6LoWPAN/Mesh' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/6LoWPAN/ND' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/6LoWPAN/NVM' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/6LoWPAN/Thread' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/6LoWPAN/ws' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/BorderRouter' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Common_Protocols' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Core' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Core/include' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/DHCPv6_Server' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/DHCPv6_client' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/MAC' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/MAC/IEEE802_15_4' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/MAC/virtual_rf' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/MLE' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/MPL' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/NWK_INTERFACE' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/NWK_INTERFACE/Include' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/RPL' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Security' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Security/Common' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Security/PANA' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Security/TLS' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Security/eapol' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Security/kmp' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Security/protocols' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Security/protocols/eap_tls_sec_prot' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Security/protocols/fwh_sec_prot' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Security/protocols/gkh_sec_prot' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Security/protocols/key_sec_prot' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Security/protocols/tls_sec_prot' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/Neighbor_cache' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/Trickle' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/blacklist' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/etx' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/fhss' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/fnv_hash' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/hmac' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/ieee_802_11' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/load_balance' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/mac_neighbor_table' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/mdns' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/mdns/fnet' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/mdns/fnet/fnet_stack' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/mdns/fnet/fnet_stack/port' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/mdns/fnet/fnet_stack/port/compiler' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/mdns/fnet/fnet_stack/port/cpu' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/mdns/fnet/fnet_stack/services' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/mdns/fnet/fnet_stack/services/dns' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/mdns/fnet/fnet_stack/services/mdns' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/mdns/fnet/fnet_stack/services/poll' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/mdns/fnet/fnet_stack/services/serial' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/mdns/fnet/fnet_stack/stack' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/mle_service' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/nd_proxy' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/nist_aes_kw' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/pan_blacklist' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/utils' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/whiteboard' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/configs' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/configs/base' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/ipv6_stack' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/libDHCPv6' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/libNET' | |
,'-I./mbed-os/features/nanostack/sal-stack-nanostack/source/libNET/src' | |
,'-I./mbed-os/features/netsocket' | |
,'-I./mbed-os/features/netsocket/cellular' | |
,'-I./mbed-os/features/netsocket/ppp' | |
,'-I./mbed-os/features/netsocket/ppp/include' | |
,'-I./mbed-os/features/netsocket/ppp/include/polarssl' | |
,'-I./mbed-os/features/nfc' | |
,'-I./mbed-os/features/nfc/acore' | |
,'-I./mbed-os/features/nfc/acore/acore' | |
,'-I./mbed-os/features/nfc/controllers' | |
,'-I./mbed-os/features/nfc/nfc' | |
,'-I./mbed-os/features/nfc/nfc/ndef' | |
,'-I./mbed-os/features/nfc/nfc/ndef/common' | |
,'-I./mbed-os/features/nfc/stack' | |
,'-I./mbed-os/features/nfc/stack/ndef' | |
,'-I./mbed-os/features/nfc/stack/platform' | |
,'-I./mbed-os/features/nfc/stack/tech' | |
,'-I./mbed-os/features/nfc/stack/tech/iso7816' | |
,'-I./mbed-os/features/nfc/stack/tech/isodep' | |
,'-I./mbed-os/features/nfc/stack/tech/type4' | |
,'-I./mbed-os/features/nfc/stack/transceiver' | |
,'-I./mbed-os/features/nfc/stack/transceiver/pn512' | |
,'-I./mbed-os/features/storage' | |
,'-I./mbed-os/features/storage/blockdevice' | |
,'-I./mbed-os/features/storage/filesystem' | |
,'-I./mbed-os/features/storage/filesystem/fat' | |
,'-I./mbed-os/features/storage/filesystem/fat/ChaN' | |
,'-I./mbed-os/features/storage/filesystem/littlefs' | |
,'-I./mbed-os/features/storage/filesystem/littlefs/littlefs' | |
,'-I./mbed-os/features/storage/kvstore' | |
,'-I./mbed-os/features/storage/kvstore/conf' | |
,'-I./mbed-os/features/storage/kvstore/direct_access_devicekey' | |
,'-I./mbed-os/features/storage/kvstore/filesystemstore' | |
,'-I./mbed-os/features/storage/kvstore/global_api' | |
,'-I./mbed-os/features/storage/kvstore/include' | |
,'-I./mbed-os/features/storage/kvstore/kv_map' | |
,'-I./mbed-os/features/storage/kvstore/securestore' | |
,'-I./mbed-os/features/storage/kvstore/tdbstore' | |
,'-I./mbed-os/features/storage/nvstore' | |
,'-I./mbed-os/features/storage/nvstore/source' | |
,'-I./mbed-os/features/storage/system_storage' | |
,'-I./mbed-os/hal' | |
,'-I./mbed-os/hal/storage_abstraction' | |
,'-I./mbed-os/hal/usb' | |
,'-I./mbed-os/platform' | |
,'-I./mbed-os/platform/cxxsupport' | |
,'-I./mbed-os/platform/internal' | |
,'-I./mbed-os/platform/source' | |
,'-I./mbed-os/platform/source/TARGET_CORTEX_M' | |
,'-I./mbed-os/platform/source/minimal-printf' | |
,'-I./mbed-os/rtos' | |
,'-I./mbed-os/rtos/source' | |
,'-I./mbed-os/rtos/source/TARGET_CORTEX' | |
,'-I./mbed-os/rtos/source/TARGET_CORTEX/rtx4' | |
,'-I./mbed-os/rtos/source/TARGET_CORTEX/rtx5' | |
,'-I./mbed-os/rtos/source/TARGET_CORTEX/rtx5/Include' | |
,'-I./mbed-os/rtos/source/TARGET_CORTEX/rtx5/RTX' | |
,'-I./mbed-os/rtos/source/TARGET_CORTEX/rtx5/RTX/Config' | |
,'-I./mbed-os/rtos/source/TARGET_CORTEX/rtx5/RTX/Include' | |
,'-I./mbed-os/rtos/source/TARGET_CORTEX/rtx5/RTX/Source' | |
,'-I./mbed-os/targets/TARGET_STM' | |
,'-I./mbed-os/targets/TARGET_STM/TARGET_STM32WB' | |
,'-I./mbed-os/targets/TARGET_STM/TARGET_STM32WB/TARGET_STM32WB55xG' | |
,'-I./mbed-os/targets/TARGET_STM/TARGET_STM32WB/TARGET_STM32WB55xG/TARGET_NUCLEO_WB55RG' | |
,'-I./mbed-os/targets/TARGET_STM/TARGET_STM32WB/TARGET_STM32WB55xG/device' | |
,'-I./mbed-os/targets/TARGET_STM/TARGET_STM32WB/device' | |
,'-I./mbed-os' | |
] | |
c_flags = [ | |
'-x' | |
,'c' | |
,'-std=gnu11' | |
,'-include' | |
,'mbed_config.h' | |
,'-DTARGET_CORTEX' | |
,'-DDEVICE_INTERRUPTIN=1' | |
,'-D__MBED_CMSIS_RTOS_CM' | |
,'-DEXTRA_IDLE_STACK_REQUIRED' | |
,'-DTARGET_RTOS_M4_M7' | |
,'-DMBED_BUILD_TIMESTAMP=1567674049.202993' | |
,'-DTRANSACTION_QUEUE_SIZE_SPI=2' | |
,'-DTARGET_CORDIO' | |
,'-DUSE_HAL_DRIVER' | |
,'-DDEVICE_FLASH=1' | |
,'-DTARGET_LIKE_MBED' | |
,'-DDEVICE_RESET_REASON=1' | |
,'-DMBED_TICKLESS' | |
,'-DDEVICE_PWMOUT=1' | |
,'-D__CORTEX_M4' | |
,'-DCOMPONENT_NSPE=1' | |
,'-DTOOLCHAIN_GCC_ARM' | |
,'-DDEVICE_ANALOGIN=1' | |
,'-DDEVICE_LPTICKER=1' | |
,'-DDEVICE_PORTINOUT=1' | |
,'-DARM_MATH_CM4' | |
,'-DDEVICE_MPU=1' | |
,'-DTOOLCHAIN_GCC' | |
,'-DTARGET_LIKE_CORTEX_M4' | |
,'-DTARGET_STM32WB' | |
,'-DTARGET_STM32WB55RG' | |
,'-DDEVICE_TRNG=1' | |
,'-DDEVICE_RTC=1' | |
,'-DDEVICE_SERIAL_FC=1' | |
,'-D__MBED__=1' | |
,'-DTARGET_STM' | |
,'-DDEVICE_SERIAL_ASYNCH=1' | |
,'-DTARGET_M4' | |
,'-DDEVICE_I2C=1' | |
,'-DTARGET_FAMILY_STM32' | |
,'-DTARGET_CORTEX_M' | |
,'-DDEVICE_I2CSLAVE=1' | |
,'-DDEVICE_SERIAL=1' | |
,'-DDEVICE_SPISLAVE=1' | |
,'-DTARGET_NAME=NUCLEO_WB55RG' | |
,'-DCOMPONENT_PSA_SRV_IMPL=1' | |
,'-DDEVICE_SLEEP=1' | |
,'-DDEVICE_CRC=1' | |
,'-DTARGET_FF_MORPHO' | |
,'-DTARGET_RELEASE' | |
,'-DDEVICE_SPI=1' | |
,'-DTARGET_STM32WB55xx' | |
,'-D__FPU_PRESENT=1' | |
,'-DTARGET_FF_ARDUINO' | |
,'-DTARGET_STM32WB55xG' | |
,'-DUSE_FULL_LL_DRIVER' | |
,'-DDEVICE_WATCHDOG=1' | |
,'-D__CMSIS_RTOS' | |
,'-DCOMPONENT_PSA_SRV_EMUL=1' | |
,'-DTARGET_NUCLEO_WB55RG' | |
,'-DDEVICE_SPI_ASYNCH=1' | |
,'-DDEVICE_PORTIN=1' | |
,'-DDEVICE_PORTOUT=1' | |
,'-DDEVICE_I2C_ASYNCH=1' | |
,'-DFEATURE_BLE=1' | |
,'-DDEVICE_USTICKER=1' | |
,'-DDEVICE_STDIO_MESSAGES=1' | |
,'-include' | |
,'mbed_config.h' | |
,'-std=gnu11' | |
,'-c' | |
,'-Wall' | |
,'-Wextra' | |
,'-Wno-unused-parameter' | |
,'-Wno-missing-field-initializers' | |
,'-fmessage-length=0' | |
,'-fno-exceptions' | |
,'-ffunction-sections' | |
,'-fdata-sections' | |
,'-funsigned-char' | |
,'-MMD' | |
,'-fno-delete-null-pointer-checks' | |
,'-fomit-frame-pointer' | |
,'-Og' | |
,'-g3' | |
,'-DMBED_DEBUG' | |
,'-DMBED_TRAP_ERRORS_ENABLED=1' | |
,'-mcpu=cortex-m4' | |
,'-mthumb' | |
,'-mfpu=fpv4-sp-d16' | |
,'-mfloat-abi=softfp' | |
] | |
cxx_flags = [ | |
'-x' | |
,'c++' | |
,'-std=gnu++14' | |
,'-fno-rtti' | |
,'-Wvla' | |
,'-include' | |
,'mbed_config.h' | |
,'-DTARGET_CORTEX' | |
,'-DDEVICE_INTERRUPTIN=1' | |
,'-D__MBED_CMSIS_RTOS_CM' | |
,'-DEXTRA_IDLE_STACK_REQUIRED' | |
,'-DTARGET_RTOS_M4_M7' | |
,'-DMBED_BUILD_TIMESTAMP=1567674049.202993' | |
,'-DTRANSACTION_QUEUE_SIZE_SPI=2' | |
,'-DTARGET_CORDIO' | |
,'-DUSE_HAL_DRIVER' | |
,'-DDEVICE_FLASH=1' | |
,'-DTARGET_LIKE_MBED' | |
,'-DDEVICE_RESET_REASON=1' | |
,'-DMBED_TICKLESS' | |
,'-DDEVICE_PWMOUT=1' | |
,'-D__CORTEX_M4' | |
,'-DCOMPONENT_NSPE=1' | |
,'-DTOOLCHAIN_GCC_ARM' | |
,'-DDEVICE_ANALOGIN=1' | |
,'-DDEVICE_LPTICKER=1' | |
,'-DDEVICE_PORTINOUT=1' | |
,'-DARM_MATH_CM4' | |
,'-DDEVICE_MPU=1' | |
,'-DTOOLCHAIN_GCC' | |
,'-DTARGET_LIKE_CORTEX_M4' | |
,'-DTARGET_STM32WB' | |
,'-DTARGET_STM32WB55RG' | |
,'-DDEVICE_TRNG=1' | |
,'-DDEVICE_RTC=1' | |
,'-DDEVICE_SERIAL_FC=1' | |
,'-D__MBED__=1' | |
,'-DTARGET_STM' | |
,'-DDEVICE_SERIAL_ASYNCH=1' | |
,'-DTARGET_M4' | |
,'-DDEVICE_I2C=1' | |
,'-DTARGET_FAMILY_STM32' | |
,'-DTARGET_CORTEX_M' | |
,'-DDEVICE_I2CSLAVE=1' | |
,'-DDEVICE_SERIAL=1' | |
,'-DDEVICE_SPISLAVE=1' | |
,'-DTARGET_NAME=NUCLEO_WB55RG' | |
,'-DCOMPONENT_PSA_SRV_IMPL=1' | |
,'-DDEVICE_SLEEP=1' | |
,'-DDEVICE_CRC=1' | |
,'-DTARGET_FF_MORPHO' | |
,'-DTARGET_RELEASE' | |
,'-DDEVICE_SPI=1' | |
,'-DTARGET_STM32WB55xx' | |
,'-D__FPU_PRESENT=1' | |
,'-DTARGET_FF_ARDUINO' | |
,'-DTARGET_STM32WB55xG' | |
,'-DUSE_FULL_LL_DRIVER' | |
,'-DDEVICE_WATCHDOG=1' | |
,'-D__CMSIS_RTOS' | |
,'-DCOMPONENT_PSA_SRV_EMUL=1' | |
,'-DTARGET_NUCLEO_WB55RG' | |
,'-DDEVICE_SPI_ASYNCH=1' | |
,'-DDEVICE_PORTIN=1' | |
,'-DDEVICE_PORTOUT=1' | |
,'-DDEVICE_I2C_ASYNCH=1' | |
,'-DFEATURE_BLE=1' | |
,'-DDEVICE_USTICKER=1' | |
,'-DDEVICE_STDIO_MESSAGES=1' | |
,'-include' | |
,'mbed_config.h' | |
,'-std=gnu++14' | |
,'-fno-rtti' | |
,'-Wvla' | |
,'-c' | |
,'-Wall' | |
,'-Wextra' | |
,'-Wno-unused-parameter' | |
,'-Wno-missing-field-initializers' | |
,'-fmessage-length=0' | |
,'-fno-exceptions' | |
,'-ffunction-sections' | |
,'-fdata-sections' | |
,'-funsigned-char' | |
,'-MMD' | |
,'-fno-delete-null-pointer-checks' | |
,'-fomit-frame-pointer' | |
,'-Og' | |
,'-g3' | |
,'-DMBED_DEBUG' | |
,'-DMBED_TRAP_ERRORS_ENABLED=1' | |
,'-mcpu=cortex-m4' | |
,'-mthumb' | |
,'-mfpu=fpv4-sp-d16' | |
,'-mfloat-abi=softfp' | |
] | |
specific_flags = [ | |
'-D__ARMCC_VERSION' | |
,'-target' | |
,'arm-none-eabi' | |
] | |
system_include_flags = [ | |
# '-isystem/usr/local/Cellar/arm-none-eabi-gcc/8-2018-q4-major/gcc/bin/../lib/gcc/arm-none-eabi/8.2.1/' | |
# ,'-isystem/usr/local/Cellar/arm-none-eabi-gcc/8-2018-q4-major/gcc/bin/../lib/gcc/' | |
# ,'-isystem/usr/local/Cellar/arm-none-eabi-gcc/8-2018-q4-major/gcc/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/lib/' | |
# ,'-isystem/usr/local/Cellar/arm-none-eabi-gcc/8-2018-q4-major/gcc/bin/../arm-none-eabi/lib/' | |
'-isystem/usr/local/Cellar/arm-none-eabi-gcc/8-2018-q4-major/gcc/arm-none-eabi/include' | |
,'-isystem/usr/local/Cellar/arm-none-eabi-gcc/8-2018-q4-major/gcc/arm-none-eabi/include/machine' | |
,'-isystem/usr/local/Cellar/arm-none-eabi-gcc/8-2018-q4-major/gcc/arm-none-eabi/include/newlib-nano' | |
,'-isystem/usr/local/Cellar/arm-none-eabi-gcc/8-2018-q4-major/gcc/arm-none-eabi/include/ssp' | |
,'-isystem/usr/local/Cellar/arm-none-eabi-gcc/8-2018-q4-major/gcc/arm-none-eabi/include/ssp' | |
] | |
flags = specific_flags + c_flags + cxx_flags + system_include_flags + include_flags | |
compilation_database_folder = '' | |
if os.path.exists( compilation_database_folder ): | |
database = ycm_core.CompilationDatabase( compilation_database_folder ) | |
else: | |
database = None | |
SOURCE_EXTENSIONS = [ '.cpp', '.cxx', '.cc', '.c', '.m', '.mm' ] | |
def DirectoryOfThisScript(): | |
return os.path.dirname( os.path.abspath( __file__ ) ) | |
def MakeRelativePathsInFlagsAbsolute( flags, working_directory ): | |
if not working_directory: | |
return list( flags ) | |
new_flags = [] | |
make_next_absolute = False | |
path_flags = [ '-isystem', '-I', '-iquote', '--sysroot=' ] | |
for libDir in nestedLibDirs: | |
for path, dirs, files in os.walk(libDir): | |
for d in dirs: | |
flag = '-I' + os.path.join(path, d) | |
flags.append(flag) | |
for flag in flags: | |
new_flag = flag | |
if make_next_absolute: | |
make_next_absolute = False | |
if not flag.startswith( '/' ): | |
new_flag = os.path.join( working_directory, flag ) | |
for path_flag in path_flags: | |
if flag == path_flag: | |
make_next_absolute = True | |
break | |
if flag.startswith( path_flag ): | |
path = flag[ len( path_flag ): ] | |
new_flag = path_flag + os.path.join( working_directory, path ) | |
break | |
if new_flag: | |
new_flags.append( new_flag ) | |
return new_flags | |
# def IsHeaderFile( filename ): | |
# extension = os.path.splitext( filename )[ 1 ] | |
# return extension in [ '.h', '.hxx', '.hpp', '.hh' ] | |
# def GetCompilationInfoForFile( filename ): | |
# # The compilation_commands.json file generated by CMake does not have entries | |
# # for header files. So we do our best by asking the db for flags for a | |
# # corresponding source file, if any. If one exists, the flags for that file | |
# # should be good enough. | |
# if IsHeaderFile( filename ): | |
# basename = os.path.splitext( filename )[ 0 ] | |
# for extension in SOURCE_EXTENSIONS: | |
# replacement_file = basename + extension | |
# if os.path.exists( replacement_file ): | |
# compilation_info = database.GetCompilationInfoForFile( | |
# replacement_file ) | |
# if compilation_info.compiler_flags_: | |
# return compilation_info | |
# return None | |
# return database.GetCompilationInfoForFile( filename ) | |
# def FlagsForFile( filename, **kwargs ): | |
# if database: | |
# # Bear in mind that compilation_info.compiler_flags_ does NOT return a | |
# # python list, but a "list-like" StringVec object | |
# compilation_info = GetCompilationInfoForFile( filename ) | |
# if not compilation_info: | |
# return None | |
# final_flags = MakeRelativePathsInFlagsAbsolute( | |
# compilation_info.compiler_flags_, | |
# compilation_info.compiler_working_dir_ ) | |
# # NOTE: This is just for YouCompleteMe; it's highly likely that your project | |
# # does NOT need to remove the stdlib flag. DO NOT USE THIS IN YOUR | |
# # ycm_extra_conf IF YOU'RE NOT 100% SURE YOU NEED IT. | |
# #try: | |
# # final_flags.remove( '-stdlib=libc++' ) | |
# #except ValueError: | |
# # pass | |
# else: | |
# relative_to = DirectoryOfThisScript() | |
# final_flags = MakeRelativePathsInFlagsAbsolute( flags, relative_to ) | |
# return { | |
# 'flags': final_flags, | |
# 'do_cache': True | |
# } | |
def Settings( **kwargs ): | |
relative_to = DirectoryOfThisScript() | |
final_flags = MakeRelativePathsInFlagsAbsolute( flags, relative_to ) | |
return { | |
'flags': final_flags, | |
'do_cache': True | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment