This is really awfully ugly. Long story short: local cmakeargs=( ${warn_unused_cli} -C "${common_config}" -G "$(_generator_to_use)" -DCMAKE_INSTALL_PREFIX="${EPREFIX}${PREFIX}" "${mycmakeargs_local[@]}" # <-- here mycmakeargs are added -DCMAKE_BUILD_TYPE="${CMAKE_BUILD_TYPE}" -DCMAKE_INSTALL_DO_STRIP=OFF -DCMAKE_USER_MAKE_RULES_OVERRIDE="${build_rules}" -DCMAKE_TOOLCHAIN_FILE="${toolchain_file}" "${MYCMAKEARGS}" # <-- here MYCMAKEARGS are added ) So we have two variables different only in capitalization with different behavior and without any documentation. I dare those are supposed to be two different variable names, like mycmakeargs_post or something.
It's like EXTRA_ECONF. I'm not sure what we can do about it without breaking any unknown users.
I suggest: 1. adding mycmakeargs_post[@] (note: it's an array this time :P), 2. keeping MYCMAKEARGS backwards compat with eqawarn.
That seems reasonable. How about a name like EXTRA_CMAKEARGS instead in line with the EXTRA_ECONF theme?
Nah. EXTRA_* scheme is for make.conf, not ebuilds.
(In reply to Michał Górny from comment #4) > Nah. EXTRA_* scheme is for make.conf, not ebuilds. MYCMAKEARGS is not supposed to be used in ebuilds AFAIK.
If you see someone using it in an ebuild, tell them not to.