I know Petalinux-tools is sunsetting but I'm logging it here for others to find.
Do not silently edit conf/local.conf. conf/local.conf is "local" because it holds local and user-defined variables.
Petalinux-tools and gen-machine-conf update conf/local.conf without notifying users; adding the folloing lines is catastrophic. Because these two lines are the last ones to load, it effectively kills any parameter set before in the local.conf and conf/site.conf, which is loaded by bitbake.conf.
include conf/plnxtool.conf
include conf/petalinuxbsp.conf
include conf/plnxtool.conf holds many user customizeable parmeters such as MACHINE, TMPDIR, DL_DIR, SSTATE_DIR, and so on. But yet you can't really find what it is. Searching "plnxtool.conf" in Xilinx confluence wiki only shows a migration guide "Migrate from PetaLinux to Yocto project".

gen-machine-conf is called from Petalinux-tools petalinux-config and petalinux-build → plnx_utils.py::setup_plnwrapper() → bitbake_utils.py::run_genmachineconf() → gen-machineconf
I know Petalinux-tools is sunsetting but I'm logging it here for others to find.
Do not silently edit
conf/local.conf.conf/local.confis "local" because it holds local and user-defined variables.Petalinux-tools and gen-machine-conf update
conf/local.confwithout notifying users; adding the folloing lines is catastrophic. Because these two lines are the last ones to load, it effectively kills any parameter set before in thelocal.confandconf/site.conf, which is loaded bybitbake.conf.include conf/plnxtool.confholds many user customizeable parmeters such asMACHINE,TMPDIR,DL_DIR,SSTATE_DIR, and so on. But yet you can't really find what it is. Searching "plnxtool.conf" in Xilinx confluence wiki only shows a migration guide "Migrate from PetaLinux to Yocto project".gen-machine-confis called from Petalinux-toolspetalinux-configandpetalinux-build→plnx_utils.py::setup_plnwrapper()→bitbake_utils.py::run_genmachineconf()→gen-machineconf