Part Number: TDA4VMXEVM
Hi,
I observed an interesting bug during (re)building the pdk of psdk_rtos_auto_j7_06_02_00_21.
It seems, that binaries will not get rebuild after modifying the corrensponding source file when using the "CORE" flag:
This won't rebuild affected/outdated binaries:
thomas@ubuntu:~/tda4vmx/psdk/pdk/packages/ti/build$ make -s BUILD_PROFILE=debug CORE=MCU1_0 pdk_libs
This will rebuild affected/outdated binaries as expected:
thomas@ubuntu:~/tda4vmx/psdk/pdk/packages/ti/build$ make -s BUILD_PROFILE=debug pdk_libs
Can you explain why and how to fix it? I would like to keep building time of PDK to an minimum, and want to only rebuild outdated binaries, and only for specific CORE.
I give you a full example which you can use to reproduce on your system:
thomas@ubuntu:~/tda4vmx/psdk/pdk/packages/ti/build$ clear thomas@ubuntu:~/tda4vmx/psdk/pdk/packages/ti/build$ make -s BUILD_PROFILE=debug CORE=MCU1_0 pdk_libs Nothing to be done for j721e MCU1_0 csl_init Nothing to be done for j721e MCU1_0 csl_intc Nothing to be done for j721e MCU1_0 csl Nothing to be done for j721e MCU1_0 csl_utils_common Nothing to be done for j721e MCU1_0 csl_uart_console Nothing to be done for j721e MCU1_0 board Nothing to be done for j721e pm_hal Nothing to be done for j721e pm_hal_optimized Nothing to be done for j721e MCU1_0 pm_lib Nothing to be done for j721e MCU1_0 pm_lib_optimized Nothing to be done for j721e MCU1_0 pm_rtos Nothing to be done for j721e MCU1_0 udma Nothing to be done for j721e MCU1_0 dmautils Nothing to be done for j721e MCU1_0 udma_apputils Nothing to be done for j721e MCU1_0 cpsw Nothing to be done for j721e MCU1_0 nimucpsw Nothing to be done for j721e MCU1_0 cpsw_cfgserver Nothing to be done for j721e MCU1_0 cpsw_apputils Nothing to be done for j721e MCU1_0 cpswsoc Nothing to be done for j721e MCU1_0 csirx Nothing to be done for j721e MCU1_0 csitx Nothing to be done for j721e MCU1_0 fvid2 Nothing to be done for j721e MCU1_0 dss Nothing to be done for j721e MCU1_0 sciclient Nothing to be done for j721e MCU1_0 vhwa Nothing to be done for j721e MCU1_0 ipc Nothing to be done for j721e MCU1_0 ipc_baremetal Nothing to be done for j721e MCU1_0 osal_nonos Nothing to be done for j721e MCU1_0 osal_nonos_indp Nothing to be done for j721e MCU1_0 osal_tirtos Nothing to be done for j721e MCU1_0 osal_tirtos_indp Nothing to be done for j721e MCU1_0 i2c Nothing to be done for j721e i2c_indp Nothing to be done for j721e i2c_profile Nothing to be done for j721e i2c_profile_indp Nothing to be done for j721e i2c_icss0 Nothing to be done for j721e MCU1_0 uart Nothing to be done for j721e MCU1_0 uart_dma Nothing to be done for j721e uart_profile Nothing to be done for j721e uart_dma_profile Nothing to be done for j721e uart_indp Nothing to be done for j721e uart_profile_indp Nothing to be done for j721e MCU1_0 uart_console Nothing to be done for j721e MCU1_0 usb Nothing to be done for j721e MCU1_0 gpio Nothing to be done for j721e MCU1_0 gpio_indp Nothing to be done for j721e gpio_profile Nothing to be done for j721e gpio_profile_indp Nothing to be done for j721e MCU1_0 profiling Nothing to be done for j721e MCU1_0 nimu Nothing to be done for j721e MCU1_0 nimu_profile Nothing to be done for j721e MCU1_0 emac Nothing to be done for j721e nimu_icssg Nothing to be done for j721e nimu_icssg_profile Nothing to be done for j721e MCU1_0 fatfs_indp Nothing to be done for j721e fatfs_multi_indp Nothing to be done for j721e fatfs_profile_indp Nothing to be done for j721e MCU1_0 mmcsd Nothing to be done for j721e MCU1_0 mmcsd_dma Nothing to be done for j721e MCU1_0 mmcsd_profile Nothing to be done for j721e MCU1_0 mmcsd_dma_profile Nothing to be done for j721e MCU1_0 mmcsd_indp Nothing to be done for j721e MCU1_0 mmcsd_profile_indp Nothing to be done for j721e MCU1_0 pcie Nothing to be done for j721e MCU1_0 pcie_profile Nothing to be done for j721e MCU1_0 pcie_indp Nothing to be done for j721e MCU1_0 pcie_profile_indp Nothing to be done for j721e MCU1_0 mcasp Nothing to be done for j721e mcasp_indp Nothing to be done for j721e mcasp_profile Nothing to be done for j721e mcasp_profile_indp Nothing to be done for j721e MCU1_0 emac_indp Nothing to be done for j721e MCU1_0 emac_profile Nothing to be done for j721e MCU1_0 emac_profile_indp Nothing to be done for j721e MCU1_0 pruss Nothing to be done for j721e MCU1_0 pruss_indp Nothing to be done for j721e MCU1_0 pruss_profile Nothing to be done for j721e MCU1_0 pruss_profile_indp Nothing to be done for j721e MCU1_0 spi Nothing to be done for j721e MCU1_0 spi_dma Nothing to be done for j721e spi_profile Nothing to be done for j721e spi_dma_profile Nothing to be done for j721e MCU1_0 spi_indp Nothing to be done for j721e spi_profile_indp thomas@ubuntu:~/tda4vmx/psdk/pdk/packages/ti/build$ make -s BUILD_PROFILE=debug pdk_libs Nothing to be done for j721e mcu1_0 csl_intc Nothing to be done for j721e pm_hal Nothing to be done for j721e pm_hal_optimized Nothing to be done for j721e mcu1_0 dmautils Nothing to be done for j721e mcu1_0 csirx Nothing to be done for j721e mcu1_0 csitx Nothing to be done for j721e mcu1_0 dss Nothing to be done for j721e mcu1_0 vhwa Nothing to be done for j721e i2c_indp Nothing to be done for j721e i2c_profile Nothing to be done for j721e i2c_profile_indp Nothing to be done for j721e i2c_icss0 Nothing to be done for j721e uart_profile Nothing to be done for j721e uart_dma_profile Nothing to be done for j721e uart_indp Nothing to be done for j721e uart_profile_indp Nothing to be done for j721e gpio_profile Nothing to be done for j721e gpio_profile_indp Nothing to be done for j721e nimu_icssg Nothing to be done for j721e nimu_icssg_profile Nothing to be done for j721e fatfs_multi_indp Nothing to be done for j721e fatfs_profile_indp Nothing to be done for j721e mcasp_indp Nothing to be done for j721e mcasp_profile Nothing to be done for j721e mcasp_profile_indp Nothing to be done for j721e spi_profile Nothing to be done for j721e spi_dma_profile Nothing to be done for j721e spi_profile_indp thomas@ubuntu:~/tda4vmx/psdk/pdk/packages/ti/build$ touch ../drv/ipc/src/ipc_virtio.c thomas@ubuntu:~/tda4vmx/psdk/pdk/packages/ti/build$ make -s BUILD_PROFILE=debug CORE=MCU1_0 pdk_libs Nothing to be done for j721e MCU1_0 csl_init Nothing to be done for j721e MCU1_0 csl_intc Nothing to be done for j721e MCU1_0 csl Nothing to be done for j721e MCU1_0 csl_utils_common Nothing to be done for j721e MCU1_0 csl_uart_console Nothing to be done for j721e MCU1_0 board Nothing to be done for j721e pm_hal Nothing to be done for j721e pm_hal_optimized Nothing to be done for j721e MCU1_0 pm_lib Nothing to be done for j721e MCU1_0 pm_lib_optimized Nothing to be done for j721e MCU1_0 pm_rtos Nothing to be done for j721e MCU1_0 udma Nothing to be done for j721e MCU1_0 dmautils Nothing to be done for j721e MCU1_0 udma_apputils Nothing to be done for j721e MCU1_0 cpsw Nothing to be done for j721e MCU1_0 nimucpsw Nothing to be done for j721e MCU1_0 cpsw_cfgserver Nothing to be done for j721e MCU1_0 cpsw_apputils Nothing to be done for j721e MCU1_0 cpswsoc Nothing to be done for j721e MCU1_0 csirx Nothing to be done for j721e MCU1_0 csitx Nothing to be done for j721e MCU1_0 fvid2 Nothing to be done for j721e MCU1_0 dss Nothing to be done for j721e MCU1_0 sciclient Nothing to be done for j721e MCU1_0 vhwa Nothing to be done for j721e MCU1_0 ipc Nothing to be done for j721e MCU1_0 ipc_baremetal Nothing to be done for j721e MCU1_0 osal_nonos Nothing to be done for j721e MCU1_0 osal_nonos_indp Nothing to be done for j721e MCU1_0 osal_tirtos Nothing to be done for j721e MCU1_0 osal_tirtos_indp Nothing to be done for j721e MCU1_0 i2c Nothing to be done for j721e i2c_indp Nothing to be done for j721e i2c_profile Nothing to be done for j721e i2c_profile_indp Nothing to be done for j721e i2c_icss0 Nothing to be done for j721e MCU1_0 uart Nothing to be done for j721e MCU1_0 uart_dma Nothing to be done for j721e uart_profile Nothing to be done for j721e uart_dma_profile Nothing to be done for j721e uart_indp Nothing to be done for j721e uart_profile_indp Nothing to be done for j721e MCU1_0 uart_console Nothing to be done for j721e MCU1_0 usb Nothing to be done for j721e MCU1_0 gpio Nothing to be done for j721e MCU1_0 gpio_indp Nothing to be done for j721e gpio_profile Nothing to be done for j721e gpio_profile_indp Nothing to be done for j721e MCU1_0 profiling Nothing to be done for j721e MCU1_0 nimu Nothing to be done for j721e MCU1_0 nimu_profile Nothing to be done for j721e MCU1_0 emac Nothing to be done for j721e nimu_icssg Nothing to be done for j721e nimu_icssg_profile Nothing to be done for j721e MCU1_0 fatfs_indp Nothing to be done for j721e fatfs_multi_indp Nothing to be done for j721e fatfs_profile_indp Nothing to be done for j721e MCU1_0 mmcsd Nothing to be done for j721e MCU1_0 mmcsd_dma Nothing to be done for j721e MCU1_0 mmcsd_profile Nothing to be done for j721e MCU1_0 mmcsd_dma_profile Nothing to be done for j721e MCU1_0 mmcsd_indp Nothing to be done for j721e MCU1_0 mmcsd_profile_indp Nothing to be done for j721e MCU1_0 pcie Nothing to be done for j721e MCU1_0 pcie_profile Nothing to be done for j721e MCU1_0 pcie_indp Nothing to be done for j721e MCU1_0 pcie_profile_indp Nothing to be done for j721e MCU1_0 mcasp Nothing to be done for j721e mcasp_indp Nothing to be done for j721e mcasp_profile Nothing to be done for j721e mcasp_profile_indp Nothing to be done for j721e MCU1_0 emac_indp Nothing to be done for j721e MCU1_0 emac_profile Nothing to be done for j721e MCU1_0 emac_profile_indp Nothing to be done for j721e MCU1_0 pruss Nothing to be done for j721e MCU1_0 pruss_indp Nothing to be done for j721e MCU1_0 pruss_profile Nothing to be done for j721e MCU1_0 pruss_profile_indp Nothing to be done for j721e MCU1_0 spi Nothing to be done for j721e MCU1_0 spi_dma Nothing to be done for j721e spi_profile Nothing to be done for j721e spi_dma_profile Nothing to be done for j721e MCU1_0 spi_indp Nothing to be done for j721e spi_profile_indp thomas@ubuntu:~/tda4vmx/psdk/pdk/packages/ti/build$ make -s BUILD_PROFILE=debug pdk_libs Nothing to be done for j721e mcu1_0 csl_intc Nothing to be done for j721e pm_hal Nothing to be done for j721e pm_hal_optimized Nothing to be done for j721e mcu1_0 dmautils Nothing to be done for j721e mcu1_0 csirx Nothing to be done for j721e mcu1_0 csitx Nothing to be done for j721e mcu1_0 dss Nothing to be done for j721e mcu1_0 vhwa # Compiling j721e:mcu1_0:debug:ipc: src/ipc_virtio.c # # Archiving j721e:mcu1_0:debug:ipc into /home/thomas/tda4vmx/psdk_rtos_j721e/psdk_rtos_auto_j7_06_02_00_21/pdk/packages/ti/drv/ipc/lib/j721e/mcu1_0/debug/ipc.aer5f ... # # Compiling j721e:mcu1_0:debug:ipc_baremetal: src/ipc_virtio.c # # Archiving j721e:mcu1_0:debug:ipc_baremetal into /home/thomas/tda4vmx/psdk_rtos_j721e/psdk_rtos_auto_j7_06_02_00_21/pdk/packages/ti/drv/ipc/lib/j721e/mcu1_0/debug/ipc_baremetal.aer5f ... # Nothing to be done for j721e i2c_indp Nothing to be done for j721e i2c_profile Nothing to be done for j721e i2c_profile_indp Nothing to be done for j721e i2c_icss0 Nothing to be done for j721e uart_profile Nothing to be done for j721e uart_dma_profile Nothing to be done for j721e uart_indp Nothing to be done for j721e uart_profile_indp Nothing to be done for j721e gpio_profile Nothing to be done for j721e gpio_profile_indp Nothing to be done for j721e nimu_icssg Nothing to be done for j721e nimu_icssg_profile Nothing to be done for j721e fatfs_multi_indp Nothing to be done for j721e fatfs_profile_indp Nothing to be done for j721e mcasp_indp Nothing to be done for j721e mcasp_profile Nothing to be done for j721e mcasp_profile_indp Nothing to be done for j721e spi_profile Nothing to be done for j721e spi_dma_profile Nothing to be done for j721e spi_profile_indp thomas@ubuntu:~/tda4vmx/psdk/pdk/packages/ti/build$
As you can see, the first two make commands verify that source and binaries are in "sync".
Then I "change" the source file of ipc_virtio.c
I expect now, that the according libs are getting rebuild.
Limiting CORE to MCU1_0 won't rebuild that library.
Without specifying CORE the affected library getting rebuild.
Any help would be highly appreciated.
Best regards,
Thomas