esp-idf/make
Ivan Grokhotkov 1e1450bf5d make: fix issues related to EXTRA_COMPONENT_DIRS
1. When one of the COMPONENT_DIRS points to a component directory
(i.e. a directory containing component.mk, not a directory of multiple
components), and there is a subdirectory in it which also contains
a component, the subdirectory was mistakenly added to the list of
components and compiled.

For example:

    main/
        component.mk
        main.c
        test/
            component.mk
            test_main.c

Would compile test_main.c and link libtest.a.

2. When one of the COMPONENT_DIRS points to a component directory, and
the parent directory contained a directory with the same name as
another component, that directory would be mistakenly added to the
COMPONENT_PATHS.

For example:

    esp/
        esp-idf/
        esp32/
            (random stuff)
        mycomponent/
            component.mk
            mycomponent.c
        myproject/
            main/
            Makefile

and Makefile sets EXTRA_COMPONENT_DIRS=$(realpath ../mycomponent),
then "esp32" directory which is at the same level as mycomponent
was added to COMPONENT_PATHS.

3. If EXTRA_COMPONENT_DIRS pointed to a directory with a list of
components, and one of the subdirectories was not a component, but
had the same name as another component, than that directory would be
mistakenly added to COMPONENT_PATHS instead of the real esp32
component directory.

For example:

    my_components/
        my_component/
            component.mk
            my_component.c
        esp32/
            (some random stuff)

and EXTRA_COMPONENT_DIRS would point to my_components/, then "esp32"
directory would be added to COMPONENT_PATHS instead of the real esp32
component directory.
2019-02-28 21:58:03 +08:00
..
common.mk make: Build out of tree component srcs under component build dir 2018-04-06 13:10:19 +10:00
component_common.mk Build system: Change deprecation message to include component path, easier to fix 2016-11-14 10:57:45 +11:00
component_wrapper.mk build: fix excluding source files outside of component root 2018-04-12 14:28:54 +08:00
project_config.mk config: Rename mconf to mconf-idf & conf to conf-idf 2018-05-29 16:34:45 +10:00
project.mk make: fix issues related to EXTRA_COMPONENT_DIRS 2019-02-28 21:58:03 +08:00