FS#17297 - [monotone] 0.45-2 depends on another version of botan than the one fetched by the PKGBUILD

Attached to Project: Arch Linux
Opened by Alexandre Gravier (agravier) - Friday, 27 November 2009, 06:52 GMT
Last edited by Andrea Scarpino (BaSh) - Friday, 05 March 2010, 17:40 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Andrea Scarpino (BaSh)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description:
Monotone is a distributed source management system that requires Botan to work. However, it seems that a greater version of Botan than 1.8 will break monotone. Note that this is not expressed in monotone's INSTALL notes but in its build system. See additional info.

Additional info:
* package version(s): botan-1.9.3-1 monotone-0.45-2
* See attached console log
* http://www.monotone.ca/INSTALL
* Exerpt from http://mtn-host.prjek.net/viewmtn/monotone/revision/file/c3badef3ef7b5f709b0fdb2a54855e0e3b265715/mtn_cvs/mtn_cvs.cc :
#elif BOTAN_VERSION_CODE <= BOTAN_VERSION_CODE_FOR(1,7,22)
E(linked_botan_version > BOTAN_VERSION_CODE_FOR(1,7,6), origin::system,
F("This monotone binary requires Botan 1.7.7 or newer."));
// While compiling against 1.7.22 or newer is recommended, because
// it enables new features of Botan, the monotone binary compiled
// against Botan 1.7.21 and before should still work with newer Botan
// versions, including all of the stable branch 1.8.x.
E(linked_botan_version < BOTAN_VERSION_CODE_FOR(1,9,0), origin::system,
F("This monotone binary does not work with Botan 1.9.x."));
#else
E(linked_botan_version > BOTAN_VERSION_CODE_FOR(1,7,22), origin::system,
F("This monotone binary requires Botan 1.7.22 or newer."));
E(linked_botan_version < BOTAN_VERSION_CODE_FOR(1,9,0), origin::system,
F("This monotone binary does not work with Botan 1.9.x."));
#endif


Steps to reproduce:
pacman -S monotone && /usr/bin/mtn

Expected output:
[...]
mtn: error: This monotone binary does not work with Botan 1.9.x.
This task depends upon

Closed by  Andrea Scarpino (BaSh)
Friday, 05 March 2010, 17:40 GMT
Reason for closing:  Fixed
Additional comments about closing:  monotone 0.46-2
Comment by Marq Schneider (queueRAM) - Monday, 21 December 2009, 20:17 GMT
Two potential solutions:
1. Downgrade botan to 1.8.5 and drop the '>=1.9.3' from the 'botan' dependency in monotone
You can grab the botan 1.8.5 PKGBUILD from here: http://repos.archlinux.org/wsvn/packages/botan/repos/extra-x86_64/PKGBUILD?rev=48505
2. Add a botan18 package for botan 1.8.5 and have monotone depend on this until monotone supports botan 1.9.x. This is probably non-trivial.

Locally, i went with #1 without an issue.
Comment by Alexandre Gravier (agravier) - Saturday, 26 December 2009, 03:03 GMT
Thanks Marq for your help. I am actually using the statically linked version available somewhere on the monotone website, which is even an easier solution waiting that monotone supports botan 1.9.x.
Comment by Jorge Villaseñor (salinasv) - Saturday, 16 January 2010, 22:20 GMT
There will be any temporal fix in Arch until monotone supports botan 1.9.x ?
Comment by Andrea Scarpino (BaSh) - Wednesday, 03 February 2010, 00:41 GMT
assigned to last developer that built monotone.

consider the idea to move this to AUR: http://mailman.archlinux.org/pipermail/arch-dev-public/2010-January/015157.html
Comment by Marq Schneider (queueRAM) - Thursday, 04 February 2010, 05:37 GMT
I am attaching the solution I am using locally for this (note: grab .install file from ABS). I modified the monotone PKGBUILD to build a static library of botan and instruct the monotone build to link with it statically. This more or less negates the purpose of the botan package, but it was the only way I could get around the apparent necessity to update botan to the development branch.

Edit: I accidentally had a hardcoded path in the PKGBUILD i uploaded first and can't figure out how to delete it. The second one is the one you can use.

Loading...