Esp-idf: [TW#28619] Line break doesn't work in Kconfig (Windows)

Created on 31 Jan 2019  路  2Comments  路  Source: espressif/esp-idf

----------------------------- Delete above -----------------------------

Environment

  • IDF version: v3.3-beta1-313-ga0416e935
  • Build System: CMake
  • Compiler version: crosstool-NG crosstool-ng-1.22.0-80-g6c4433a5) 5.2.0
  • Operating System: Windows

Problem Description

Worked without any issues with yesterday's version. After today's checkout of master branch getting errors/warnings:

esp-idf\components\bt\Kconfig:63:warning: ignoring unsupported character '\'
esp-idf\components\bt\Kconfig:64: syntax error
esp-idf\components\bt\Kconfig:63: invalid option
esp-idf\components\bt\Kconfig:64: unknown option "BTDM_CONTROLLER_BR_EDR_MAX_ACL_CONN"
esp-idf\components\bt\Kconfig:69:warning: ignoring unsupported character '\'
esp-idf\components\bt\Kconfig:70: syntax error
esp-idf\components\bt\Kconfig:69: invalid option
esp-idf\components\bt\Kconfig:70: unknown option "BTDM_CONTROLLER_BR_EDR_MAX_SYNC_CONN"
esp-idf\components\esp32\Kconfig:809:warning: ignoring unsupported character '\'
esp-idf\components\esp32\Kconfig:809:warning: ignoring unsupported character '|'
esp-idf\components\esp32\Kconfig:809:warning: ignoring unsupported character '|'
esp-idf\components\esp32\Kconfig:809:warning: ignoring unsupported character ' '
esp-idf\components\esp32\Kconfig:811: syntax error
esp-idf\components\esp32\Kconfig:810: unknown option "ESP32_RTC_CLOCK_SOURCE_INTERNAL_8MD256"

Fixed by removing line break "\" and restoring everything on single line:

e.g.:

@ -60,14 +60,12 @@ menu Bluetooth

        config BTDM_CONTROLLER_BR_EDR_MAX_ACL_CONN_EFF
            int
            default \
                BTDM_CONTROLLER_BR_EDR_MAX_ACL_CONN if BTDM_CONTROLLER_MODE_BR_EDR_ONLY || BTDM_CONTROLLER_MODE_BTDM
            default BTDM_CONTROLLER_BR_EDR_MAX_ACL_CONN if BTDM_CONTROLLER_MODE_BR_EDR_ONLY || BTDM_CONTROLLER_MODE_BTDM
            default 0

        config BTDM_CONTROLLER_BR_EDR_MAX_SYNC_CONN_EFF
            int
            default \
                BTDM_CONTROLLER_BR_EDR_MAX_SYNC_CONN if BTDM_CONTROLLER_MODE_BR_EDR_ONLY || BTDM_CONTROLLER_MODE_BTDM
            default BTDM_CONTROLLER_BR_EDR_MAX_SYNC_CONN if BTDM_CONTROLLER_MODE_BR_EDR_ONLY || BTDM_CONTROLLER_MODE_BTDM
            default 0

        choice BTDM_CONTROLLER_PINNED_TO_CORE_CHOICE 

Most helpful comment

Thank you for your feedback. I'm already working on this issue.

For future references: this problem is caused by the fact that the Kconfig syntax description specifies that after backslashes line-feed (LF) must follow, i.e. backslashes followed by Windows native line endings (CR+LF) are not recognized.

A quick fix is to change the line endings to Unix (LF) for components\bt\Kconfig and components\esp32\Kconfig. The permanent fix will come ASAP.

All 2 comments

Thank you for your feedback. I'm already working on this issue.

For future references: this problem is caused by the fact that the Kconfig syntax description specifies that after backslashes line-feed (LF) must follow, i.e. backslashes followed by Windows native line endings (CR+LF) are not recognized.

A quick fix is to change the line endings to Unix (LF) for components\bt\Kconfig and components\esp32\Kconfig. The permanent fix will come ASAP.

I am encountering the same issue. I deleted lines 63-64 and 69-90 in components\bt\Kconfig and the \ character in components\esp32\Kconfig (moving line 810 to the end of 809). That seemed to temporarily fix the issue.

Was this page helpful?
0 / 5 - 0 ratings