This is a first attempt to bring botan to the prefixed portage. Tested on MacOSX 10.4 only. Botan is a dependency of monotone, which is the source code repository software for pidgin and libpurple (which in turn is used by the MacOSX software Adium).
Created attachment 215176 [details, diff] Patch against an eprefixified botan ebuild The OS detection I've copied from perl-5.10.1.ebuild, because with... find ${EPREFIX}/usr/portage -name '*.ebuild' | xargs grep darwin | grep -v CHOST ... I could not find an OS detection function. But the pure amount of CHOST usages really speak for having one. botan seems to support a number of operating systems (solaris as well) according to the build script, but I didn't limit the section in the ebuild to those in the hope more OS will be supported in the future. The modification of the final mv comes from the fact that HFS+ is case-insensitive and... mv Botan-1.8.8 botan-1.8.8 ... thus makes the 'mv' attempt to... mv botan-1.8.8 botan-1.8.8/botan-1.8.8
Created attachment 215178 [details, diff] Patch required to be in the ${FILESDIR} for the earlier attached ebuild to work. Botan uses a custom make system which does not distinguish PREFIX and DESTDIR, thus -install_name needs some manual treatment. The ${P}-install_name.patch is therefore not upstream-compatible, since PREFIX cannot be determined straight forward.
Sorry, I just noticed the ebuild should inherit prefix. I have no idea why it worked for me without eprefixify being available.
Created attachment 215279 [details, diff] Updated patch against the eprefixified botan ebuild Updated attachment 215176 [details, diff] - botan.pc and botan-config were stripped off the $EPREFIX - ebuild should inherit prefix (has been implicitely done before through toolchain-funcs
I fixed this by basically injecting the right arguments at the right time to fix all issues (install_name, install location, ${D} in pkgconfig/botan-config script).
In the future, please CC maintainers if you are discussing suggested changes for ebuilds in gentoo-x86.