On Tue, Sep 03, 2019 at 04:12:02PM +0200, Michael Olbrich wrote:
> I cannot reproduce this. It works as expected for me. The last log message
> may be a clue, I would expect
> 
> "Saving 'test-bsp/configs/platform-v7a/platformconfig'."
> or
> "Saving 'test-bsp/base/configs/platform-v7a/platformconfig'."
> 
> but not "test-bsp/DistroKit/....". So maybe the symlink handling does not
> work correctly.
> 
> What's the output of 'p migrate'?

See in the log below.

> What happens if 'base' is a symlink to '../DistroKit'?

I tried three different things:

1.  clean DistroKit checked out as base/ directory inside the BSP:
    => works as intended.

    rhi@dude test-bsp $ git clone ../DistroKit base
    Cloning into 'base'...
    done.

    rhi@dude test-bsp $ ll
    total 0
    drwxr-xr-x 10 rhi ptx  212 Sep  3 15:55 base

    rhi@dude test-bsp $ p menuconfig
    error:      'selected_platformconfig' is missing
        try 'ptxdist platform <platformconfig>'

    rhi@dude test-bsp $ cd base/; p platform 
configs/platform-v7a/platformconfig; cd ..
    info: selected platformconfig:
          'configs/platform-v7a/platformconfig'

    found and using toolchain:
    
'/opt/OSELAS.Toolchain-2018.12.0/arm-v7a-linux-gnueabihf/gcc-8.2.1-glibc-2.28-binutils-2.31.1-kernel-4.19-sanitized/bin'

    rhi@dude test-bsp $ p menuconfig
    [... change project name ...]
    #
    # configuration written to .config
    #
    configuration written to .config

    *** End of the configuration.
    *** Execute 'ptxdist go' to build the project or try 'ptxdist help'.

    Saving 'test-bsp/configs/ptxconfig'.
    Saving 'test-bsp/configs/ptxconfig.diff'.

    rhi@dude test-bsp $ ll
    total 0
    drwxr-xr-x 10 rhi ptx  212 Sep  3 15:55 base
    drwxr-xr-x  2 rhi ptx   66 Sep  4 10:59 configs
    drwxr-xr-x  2 rhi ptx   78 Sep  4 10:59 platform-v7a

2.  DistroKit checked out as DistroKit inside the BSP, symlink base/:
    => writes to the config in the wrong layer.

    rhi@dude test-bsp $ git clone ../DistroKit DistroKit
    Cloning into 'DistroKit'...
    done.

    rhi@dude test-bsp $ ln -s DistroKit/ base

    rhi@dude test-bsp $ ll
    total 0
    lrwxrwxrwx  1 rhi ptx  10 Sep  4 11:55 base -> DistroKit/
    drwxr-xr-x 10 rhi ptx 155 Sep  4 11:55 DistroKit

    rhi@dude test-bsp $ p menuconfig
    error:      'selected_platformconfig' is missing
        try 'ptxdist platform <platformconfig>'

    rhi@dude test-bsp $ cd base/; p platform 
configs/platform-v7a/platformconfig; cd ..
    info: selected platformconfig:
          'configs/platform-v7a/platformconfig'

    found and using toolchain:
    
'/opt/OSELAS.Toolchain-2018.12.0/arm-v7a-linux-gnueabihf/gcc-8.2.1-glibc-2.28-binutils-2.31.1-kernel-4.19-sanitized/bin'

    rhi@dude test-bsp $ p menuconfig
    [... change project name ...]
    configuration written to .config

    *** End of the configuration.
    *** Execute 'ptxdist go' to build the project or try 'ptxdist help'.

    Saving 'test-bsp/DistroKit/configs/ptxconfig'.

    rhi@dude test-bsp $ ll
    total 0
    lrwxrwxrwx  1 rhi ptx  10 Sep  4 11:55 base -> DistroKit/
    drwxr-xr-x 10 rhi ptx 212 Sep  4 12:14 DistroKit
    drwxr-xr-x  2 rhi ptx  78 Sep  4 12:14 platform-v7a

    rhi@dude test-bsp $ p migrate
    Updating 'test-bsp/DistroKit/configs/ptxconfig'...
    #
    # configuration written to .config
    #

    Updating 'test-bsp/DistroKit/configs/platform-v7a/platformconfig'...
    #
    # configuration written to .config
    #

    rhi@dude test-bsp $ ll
    total 0
    lrwxrwxrwx  1 rhi ptx  10 Sep  4 12:25 base -> DistroKit/
    drwxr-xr-x 10 rhi ptx 212 Sep  4 12:25 DistroKit
    drwxr-xr-x  2 rhi ptx  78 Sep  4 12:26 platform-v7a

3.  DistroKit cloned outside the BSP, symlink base/
    => works as intended.

    rhi@dude test-bsp $ git clone ../distrokit ../DistroKit
    Cloning into '../DistroKit'...
    done.

    rhi@dude test-bsp $ ln -s ../DistroKit base

    rhi@dude test-bsp $ ll
    total 0
    lrwxrwxrwx 1 rhi ptx 12 Sep  4 12:19 base -> ../DistroKit

    rhi@dude test-bsp $ p menuconfig
    error:      'selected_platformconfig' is missing
        try 'ptxdist platform <platformconfig>'

    rhi@dude test-bsp $ cd base/; p platform 
configs/platform-v7a/platformconfig; cd ..
    info: selected platformconfig:
          'configs/platform-v7a/platformconfig'

    found and using toolchain:
    
'/opt/OSELAS.Toolchain-2018.12.0/arm-v7a-linux-gnueabihf/gcc-8.2.1-glibc-2.28-binutils-2.31.1-kernel-4.19-sanitized/bin'

    rhi@dude test-bsp $ p menuconfig
    [... change project name ...]
    #
    # configuration written to .config
    #
    configuration written to .config

    *** End of the configuration.
    *** Execute 'ptxdist go' to build the project or try 'ptxdist help'.

    Saving 'test-bsp/configs/ptxconfig'.
    Saving 'test-bsp/configs/ptxconfig.diff'.

    rhi@dude dude test-bsp $ ll
    total 0
    lrwxrwxrwx 1 rhi ptx 12 Sep  4 12:19 base -> ../DistroKit
    drwxr-xr-x 2 rhi ptx 66 Sep  4 12:20 configs
    drwxr-xr-x 2 rhi ptx 78 Sep  4 12:19 platform-v7a

So it seems I hit a special case there in my last mail…

-- 
Roland Hieber                     | r.hie...@pengutronix.de     |
Pengutronix e.K.                  | https://www.pengutronix.de/ |
Peiner Str. 6-8, 31137 Hildesheim | Phone: +49-5121-206917-5086 |
Amtsgericht Hildesheim, HRA 2686  | Fax:   +49-5121-206917-5555 |

_______________________________________________
ptxdist mailing list
ptxdist@pengutronix.de

Reply via email to