In full.
Codeblocks-17.12 has implemented "codeblocks-16.01-unbundle.patch" (link doesn't work anymore) via next patches: 1. https://sourceforge.net/p/codeblocks/code/10872/ (squirell) 2. https://sourceforge.net/p/codeblocks/code/10873/ (astyle) 3. https://sourceforge.net/p/codeblocks/code/10874/ (tinyxml) Currently there are two problems to add dev-lib/astyle as build dependency of dev-util/codeblocks-17.12: 1. If astyle-3.0.1 is installed in system: during linkink astyle plugin try to linking with libastyle.so ( "-lastyle" linking option ) and failed due to there is no appropriate symlink to "/usr/lib64/libastyle.so.3.0.1". The solving of this problem is trivial. Just need to add to astyle-3.0.1.ebuild creation of this symlink (or manually as temporary workaround). The other way is to patch codeblocks autotools script. But the solution with symlink looks better in perspective. 2. Main problem. Package dev-util/astyle-3.1 has changed interfaces in comparison with astyle-3.0.1 so it's incompatible with dev-util/codeblocks-17.12 and maybe with dev-util/creduce. If it possible it could be resolved by slotting of dev-util/astyle as there is a package in portage tree (dev-embedded/arduino) that depens on exactly on astyle-3.1. So there could be conflict in system when user want arduino and codeblocks. Current workaround is temporary remove astyle-3.1, install codeblocks and install astyle-3.1 again.
Both problem with astyle were resolved by pull request https://github.com/gentoo/gentoo/pull/8585. It added the sub-sloting of this pockage that now allow to rebuild the packages depending on astyle if it's sub-slot changed during system update. Waiting for reviewing and merging pull request https://github.com/gentoo/gentoo/pull/8586 (update codeblocks ebuild) that should close this and some other issues including unbundle of tinyxml.
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=27c7e3e956953056c4da2cac4521c40062687445 commit 27c7e3e956953056c4da2cac4521c40062687445 Author: band-a-prend <torokhov-s-a@yandex.ru> AuthorDate: 2018-05-26 21:08:45 +0000 Commit: Mart Raudsepp <leio@gentoo.org> CommitDate: 2018-07-14 19:32:12 +0000 dev-util/codeblocks: unbundle dev-util/astyle lib Unbundle the dev-util/astyle library in favor of system installed by adding it as build dependency ( >=dev-util/astyle-3.0.1-r1:0= ): 1. patching (update) the Codeblocks Astyle plugin to be compatible with dev-util/astyle-3.1: "codeblocks-17.12_update_astyle_plugin_to_v3.1.patch" that is taken from upstream: https://sourceforge.net/p/codeblocks/code/11266/ * updated astyle plugin to v3.1 * removed obsolete astyle options * added new astyle options Authored by: jenslody 2018-01-15 (using conditional patching depends on if '>=dev-util/astyle-3.1' is installed in system); 2. use sub-sloting of dev-util/astyle to force rebuild Codeblocks on system update if sub-slot of dev-util/astyle is changed; 3. remove KEYWORD "arm" to avoid repoman QA warning about "dependency.bad" and "dependency.badindev" due to dev-util/astyle dependency doesn't have this KEYWORD. Closes: https://bugs.gentoo.org/383037 Closes: https://bugs.gentoo.org/656758 dev-util/codeblocks/codeblocks-17.12-r1.ebuild | 8 +- dev-util/codeblocks/codeblocks-17.12-r301.ebuild | 8 +- ...blocks-17.12_update_astyle_plugin_to_v3.1.patch | 414 +++++++++++++++++++++ 3 files changed, 426 insertions(+), 4 deletions(-)