i want to make absolutely sure i understand the mechanics of the different types of assignment so i'm looking at this snippet from core-image.bbclass:
... snip ... PACKAGE_GROUP_qt4-pkgs = "task-core-qt-demos" CORE_IMAGE_BASE_INSTALL = '\ task-core-boot \ task-base-extended \ \ ${CORE_IMAGE_EXTRA_INSTALL} \ ' CORE_IMAGE_EXTRA_INSTALL ?= "" IMAGE_INSTALL ?= "${CORE_IMAGE_BASE_INSTALL}" ... snip ... first, if you're assigning a fixed string (as in the first line shown in the snippet above), i assume there is no functional difference in using "=" versus ":=", correct? next, is there any value in that null line in the assignment to CORE_IMAGE_BASE_INSTALL? next, is it technically necessary to conditionally do this? CORE_IMAGE_EXTRA_INSTALL ?= "" if that variable wasn't set, does it really need to be set to the empty string? finally, what are the evaluation mechanics of the "?=" operator? in this line, IMAGE_INSTALL ?= "${CORE_IMAGE_BASE_INSTALL}" is the right-hand side evaluated first? i ask since i find the snippet above a bit confusing in that you need to follow backwards to deduce what IMAGE_INSTALL is eventually set to. i would think this would be easier to read: CORE_IMAGE_BASE_INSTALL = '\ task-core-boot \ task-base-extended IMAGE_INSTALL = "${CORE_IMAGE_BASE_INSTALL} ${CORE_IMAGE_EXTRA_INSTALL}" in this rewriting, i can *immediately* see what values are used to construct IMAGE_INSTALL. in the current code, it's nowhere near as clear, and you have to backtrack to see how CORE_IMAGE_BASE_INSTALL is assigned. or would that not be equivalent based on a misunderstanding of how assignment works? rday -- ======================================================================== Robert P. J. Day Ottawa, Ontario, CANADA http://crashcourse.ca Twitter: http://twitter.com/rpjday LinkedIn: http://ca.linkedin.com/in/rpjday ======================================================================== _______________________________________________ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core