If you define more than one file inside FONT_CONF eclass failes to handle this because $FONT_CONF is quoted inside for cycle (eclass/font.eclass:67) and all space separated files are passed further as one file.
Created attachment 138151 [details, diff] font.eclass.diff This is how I think we should fix the problem currently. The problem that still remains how to work with space separated paths inside $FONT_CONF? This bug blocks me from bumping dejavu-2.22 fonts.
applied. (sorry bout that) i'll leave this open until i have a way to deal with paths containing spaces. does that affect dejavu?
Thank you, Ryan. Now I can bump dejavu. Speaking about spaces in the path... font.eclass is not the only eclass which suffer from this problem. kernel-2.eclass have this problem too as they also have: for i in ${UNIPATCH_LIST}; do .... So that was just a question and currently I do not know solution. Well it's time to ask in -dev for solution.
Ryan, I know, you read discussion, but I'm documenting result here: ==================================================== Currently I see that the best approach is arrays. They provide required functionality, clear syntax and easy upgrade path. Speaking about the latter it is: 1. Modify eclass to use arrays: for conffile in ${FONT_CONF[@]}; do ... done 2. Modify ebuilds to use arrays. -FONT_CONF="path1 path2" +FONT_CONF=( "path1" "path2" ) 3. Modify eclass, so that it works with path containing spaces inside: -for conffile in ${FONT_CONF[@]}; do +for conffile in "${FONT_CONF[@]}"; do ==================================================== If that's Ok for you, I can do this transition for fonts.eclass.
Okay. Thanks.
Well. Transition made. Fixed. Of course if there are any regressions assign on me and I'll fix them ASAP.
Thanks again! :)