Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 39383 - Submission: dev-util/monotone-0.15.ebuild
Summary: Submission: dev-util/monotone-0.15.ebuild
Status: RESOLVED TEST-REQUEST
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High enhancement
Assignee: Daniel Black (RETIRED)
URL: http://www.venge.net/monotone/
Whiteboard:
Keywords: EBUILD
: 54014 73236 (view as bug list)
Depends on:
Blocks:
 
Reported: 2004-01-25 14:02 UTC by Peter Simons
Modified: 2004-12-29 20:36 UTC (History)
7 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
ebuild for 'monotone' version control system (monotone-0.9.ebuild,1.27 KB, text/plain)
2004-01-25 14:03 UTC, Peter Simons
Details
ebuild for monotone 0.13 (monotone-0.13.ebuild,1.07 KB, text/plain)
2004-05-27 05:29 UTC, Peter Simons
Details
ebuild for monotone 1.13 with improved hardened support (monotone-0.13-r1.ebuild,959 bytes, text/plain)
2004-06-17 12:38 UTC, Peter Simons
Details
ebuild for monotone 1.14 (monotone-0.14.ebuild,959 bytes, text/plain)
2004-08-03 02:51 UTC, Peter Simons
Details
Ebuild for the monotone version control system (monotone-0.14.ebuild,1.04 KB, text/plain)
2004-10-14 08:47 UTC, Peter Simons
Details
ebuild for monotone (monotone-0.14.ebuild,1.13 KB, text/plain)
2004-10-16 11:03 UTC, Peter Simons
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Peter Simons 2004-01-25 14:02:10 UTC
The attached ebuild works fine on my machine. The use of
the hardened-gcc flags should probably be coupled to some
other flag, I dunno, 'have hardened-gcc' or something? Does
that exist?

Anyway, that should be easy to fix, everything else should
be fine.

Reproducible: Always
Steps to Reproduce:
1.
2.
3.
Comment 1 Peter Simons 2004-01-25 14:03:13 UTC
Created attachment 24413 [details]
ebuild for 'monotone' version control system
Comment 2 SpanKY gentoo-dev 2004-01-25 15:03:04 UTC
check out 'has_version' in ebuild(5)
Comment 3 Todd Berman (RETIRED) gentoo-dev 2004-01-25 15:40:48 UTC
believe it or not, just cause it says mono doesnt make it a dotnet app, yet ;)
Comment 4 Martin Holzer (RETIRED) gentoo-dev 2004-02-10 03:03:16 UTC
monotone is a free, distributed version control system. it provides fully disconnected operation, manages complete tree versions, keeps its state in a local transactional database, supports overlapping branches and extensible metadata, exchanges work over plain network protocols, performs history-sensitive merging, and delegates trust functions to client-side RSA certificates. 

Comment 5 Siuchung Cheung (Clement) 2004-02-27 14:19:34 UTC
Oops. Just wrote an ebuild today and forget to check bugs.gentoo.org first. Anyway, I want to point out a few points:
- When they say boost 1.30.0, they mean it. Any other version (I tried 1.31.0) will not compile. It appears that the mere appearance of 1.31.0 is enough to screw it up. When I have 1.30.0 and 1.31.0 simultaneously (I didn't use autoclean and forget to emerge clean), it still fail. So I made the versions explicit in my ebuild
- there's a --disable-dependency-tracking option on the .configure. According to .configure --help, it speeds up one-time builds (which is what we're doing). I think it probably just excludes the dependencies on all the stdio.h and stuff (like of like g++ -MM) because that's not going to change unless you somehow run 2 emerge processes and is emerging gcc on the other emerge.
- there's a make pdf target that produces a monotone.pdf for you to dodoc

Good job. I've been waiting for some ebuild to show up since 0.7... The fact that it can do version control thru emails makes it an ideal choice for people too cheap to have a server (me!). This is usually the case for some small student projects among a few guys. And I can't really use my linux box as a cvs/subversion server because power outages are way too often here in Ann Arbor, MI. :-(
Comment 6 Peter Simons 2004-03-09 04:27:44 UTC
Clement, thanks for the helpful suggestions! I'll update the ebuild "real soon now" to incorporate the improvements. I'm just waiting for the 1.10 version to be released, because I it contains sweeping changes from the older versions. I'll attach a new ebuild to this PR as soon as possible.
Comment 7 Peter Simons 2004-05-27 05:14:36 UTC
I will attach an updated version of the file for Monotone 0.13 any moment now. I'v tested it on x86 and it worked fine. I did not invoke the 'pdf' target during the doc-build, though, because this would need latex, and I thought that's a bit much of a dependency to add just to get PDFs, especially with HTML, man, and info documentation in place already.
Comment 8 Peter Simons 2004-05-27 05:29:42 UTC
Created attachment 32142 [details]
ebuild for monotone 0.13
Comment 9 Martin Holzer (RETIRED) gentoo-dev 2004-06-17 07:04:36 UTC
*** Bug 54014 has been marked as a duplicate of this bug. ***
Comment 10 Bert Geens (theBlackDragon) 2004-06-17 09:48:53 UTC
Gah, checked bugzilla before submitting, but missed this one apparently...
Comment 11 Bert Geens (theBlackDragon) 2004-06-17 10:03:22 UTC
I see no support for the sqlite and lua flags, are there any reasons for not including them? It greatly speeds up the compilation process...
Comment 12 Peter Simons 2004-06-17 10:10:54 UTC
Monotone uses patched versions of the libraries, sqlite in particular. Linking against system libraries instead of the versions shipped with the tool is not a good idea, IMHO. Graydon has said that he ships the code with Monotone precisely so that he can patch them, and he has and will continue to.
Comment 13 Peter Simons 2004-06-17 12:38:09 UTC
Created attachment 33436 [details]
ebuild for monotone 1.13 with improved hardened support

Monotone depends on sys-devel/gcc-3.3.3 now, because this version fixes the
errors that caused the build to fail with -O3. Thus, we no longer need to flush
the {c,cxx}flags passed from make.conf.

I've also added the flags '-fno-pic -fno-stack-protector', because SSP/PIE
breaks the LUA interpreter built into Monotone.

Unfortunately, the 1.13 release still has problems, so this ebuild should
probably not be unmasked for a while. The current developer version already
works fine. I'll see whether it's worth creating patches, or whether I'll just
wait for 1.14 to be released.
Comment 14 Rob Holland 2004-06-30 02:09:42 UTC
I'm assuming you're meaning 0.13 here? You seem to have skipped to 1.x stuff, which doesn't exist as far as I can see :)
Comment 15 Peter Simons 2004-06-30 06:39:32 UTC
Uh ... right. :-) Sorry.
Comment 16 Peter Simons 2004-08-03 02:51:46 UTC
Created attachment 36693 [details]
ebuild for monotone 1.14
Comment 17 Wojciech Milkowski 2004-10-11 09:36:47 UTC
It seems that at least crypto++ library (cryptopp subdir) sholud be compiled with -O0 flag, because of many optimized asm code inside. Without that netsync protocol doesn't work properly (at least in v0.14 that I checked).
After I recompiled whole package with -O0 (for being sure) I didn't notice any problem.
Comment 18 Peter Simons 2004-10-14 08:47:07 UTC
Created attachment 41806 [details]
Ebuild for the monotone version control system

Hard-code compiler flags because to aggressive optimizations cause trouble with
the crypto library included in Monotone.
Comment 19 Peter Simons 2004-10-14 08:48:46 UTC
Wojciech, you are right. Curiously enough, I had compiled a Monotone version with -O3 and all before which worked fine. I assumed, the new GCC fixed things. But apparently not. I've updated the ebuild accordingly.
Comment 20 Peter Simons 2004-10-16 11:03:20 UTC
Created attachment 41975 [details]
ebuild for monotone

Disable SSP but not PIE when building Monotone.
Comment 21 Wojciech Milkowski 2004-11-11 06:43:05 UTC
There's new monotone version: 0.15.
It's based on 'chagesets' graydon's branch, and incompatibile with previous versions (both db schema and netsync protocol), but really more useful.
Comment 22 Peter Simons 2004-11-11 07:42:47 UTC
Ha! You beat me to it. :-) All you need to do is to change the name of the file, building the software hasn't changed, I tried it a few hours ago. Shall I submit a new attachment? I figure it's probably not really necessary?

To provide some useful link for anyone else interested in the package: http://www.venge.net/monotone/README.changesets

That contains, among other things, the instructions how to migrate your databases for the new version.
Comment 23 Wojciech Milkowski 2004-11-11 14:14:16 UTC
Yes, I know, I have already intalled it too, but to be more precise we should change topic of this bug, and I can't do it myself :-).
W.
Comment 24 Peter Simons 2004-11-12 00:10:49 UTC
Right. ;-)
Comment 25 Carsten Lohrke (RETIRED) gentoo-dev 2004-12-03 09:29:34 UTC
*** Bug 73236 has been marked as a duplicate of this bug. ***
Comment 26 Carsten Lohrke (RETIRED) gentoo-dev 2004-12-03 10:19:53 UTC
*** Bug 73236 has been marked as a duplicate of this bug. ***
Comment 27 Andrew Cowie 2004-12-22 00:06:44 UTC
Uh, can we get this committed to the tree please? This much activity, and it deserves to be in there. dev-util/monotone should do nicely.

AfC
Sydney
Comment 28 Daniel Black (RETIRED) gentoo-dev 2004-12-29 20:36:25 UTC
I've added a version based on Peter's.

Peter thanks for the ebuild that based this. Can you pay a bit more attentio to http://www.gentoo.org/proj/en/devrel/handbook/handbook.xml?part=2&chap=1 before your next one please.
main issues: copyright header, use tabs not spaces, use make DESTDIR=${D} install over einstall whereever possible, use the flag-o-matic for manipulating CFLAGS.

The ebuild breaks on src_test (when the src_test is removed) as follows:
Add maketest to your FEATURES and remove the src_test from the ebuild and see if you can make a patch to fix it.

if i686-pc-linux-gnu-g++ -DLOCALEDIR=\"/usr/share/locale\" -DHAVE_CONFIG_H -I. -I. -I.  -DBUILD_UNIT_TESTS  -I./lua -I./sqlite -DNDEBUG -DBOOST_DISABLE_THREADS -Wall  -pipe -fno-stack-protector-all -fno-stack-protector -MT unit_tests-packet.o -MD -MP -MF ".deps/unit_tests-packet.Tpo" -c -o unit_tests-packet.o `test -f 'packet.cc' || echo './'`packet.cc; \
then mv -f ".deps/unit_tests-packet.Tpo" ".deps/unit_tests-packet.Po"; else rm -f ".deps/unit_tests-packet.Tpo"; exit 1; fi
if i686-pc-linux-gnu-g++ -DLOCALEDIR=\"/usr/share/locale\" -DHAVE_CONFIG_H -I. -I. -I.  -DBUILD_UNIT_TESTS  -I./lua -I./sqlite -DNDEBUG -DBOOST_DISABLE_THREADS -Wall  -pipe -fno-stack-protector-all -fno-stack-protector -MT unit_tests-sanity.o -MD -MP -MF ".deps/unit_tests-sanity.Tpo" -c -o unit_tests-sanity.o `test -f 'sanity.cc' || echo './'`sanity.cc; \
then mv -f ".deps/unit_tests-sanity.Tpo" ".deps/unit_tests-sanity.Po"; else rm -f ".deps/unit_tests-sanity.Tpo"; exit 1; fi
if i686-pc-linux-gnu-g++ -DLOCALEDIR=\"/usr/share/locale\" -DHAVE_CONFIG_H -I. -I. -I.  -DBUILD_UNIT_TESTS  -I./lua -I./sqlite -DNDEBUG -DBOOST_DISABLE_THREADS -Wall  -pipe -fno-stack-protector-all -fno-stack-protector -MT unit_tests-vocab.o -MD -MP -MF ".deps/unit_tests-vocab.Tpo" -c -o unit_tests-vocab.o `test -f 'vocab.cc' || echo'./'`vocab.cc; \
then mv -f ".deps/unit_tests-vocab.Tpo" ".deps/unit_tests-vocab.Po"; else rm -f ".deps/unit_tests-vocab.Tpo"; exit 1; fi
distcc[9784] (dcc_writex) ERROR: failed to write: Connection reset by peer
distcc[9784] (dcc_build_somewhere) Warning: failed to distribute to 10.10.10.10, running locally instead
if i686-pc-linux-gnu-g++ -DLOCALEDIR=\"/usr/share/locale\" -DHAVE_CONFIG_H -I. -I. -I.  -DBUILD_UNIT_TESTS  -I./lua -I./sqlite -DNDEBUG -DBOOST_DISABLE_THREADS -Wall  -pipe -fno-stack-protector-all -fno-stack-protector -MT unit_tests-rcs_file.o -MD -MP -MF ".deps/unit_tests-rcs_file.Tpo" -c -o unit_tests-rcs_file.o `test -f 'rcs_file.cc' || echo './'`rcs_file.cc; \
then mv -f ".deps/unit_tests-rcs_file.Tpo" ".deps/unit_tests-rcs_file.Po"; else rm -f ".deps/unit_tests-rcs_file.Tpo"; exit 1; fi
if i686-pc-linux-gnu-g++ -DLOCALEDIR=\"/usr/share/locale\" -DHAVE_CONFIG_H -I. -I. -I.  -DBUILD_UNIT_TESTS  -I./lua -I./sqlite -DNDEBUG -DBOOST_DISABLE_THREADS -Wall  -pipe -fno-stack-protector-all -fno-stack-protector -MT unit_tests-xdelta.o -MD -MP -MF ".deps/unit_tests-xdelta.Tpo" -c -o unit_tests-xdelta.o `test -f 'xdelta.cc' || echo './'`xdelta.cc; \
then mv -f ".deps/unit_tests-xdelta.Tpo" ".deps/unit_tests-xdelta.Po"; else rm -f ".deps/unit_tests-xdelta.Tpo"; exit 1; fi
distcc[9817] ERROR: compile /var/tmp/ccache/xdelta.tmp.frog.local.9812.ii on localhost failed
In file included from /usr/include/boost/random.hpp:46,
                 from xdelta.cc:705:
/usr/include/boost/random/lagged_fibonacci.hpp: In member function `void boost::random::lagged_fibonacci_01<RealType, w, p, q>::init_modulus()':
/usr/include/boost/random/lagged_fibonacci.hpp:276: error: `std::pow' has not been declared
/usr/include/boost/random/lagged_fibonacci.hpp: In member function `void boost::random::lagged_fibonacci_01<RealType, w, p, q>::seed(It&, It)':
/usr/include/boost/random/lagged_fibonacci.hpp:309: error: `std::fmod' has not been declared
/usr/include/boost/random/lagged_fibonacci.hpp:310: error: `std::pow' has not been declared
/usr/include/boost/random/lagged_fibonacci.hpp: In function `std::basic_ostream<_CharT2, _Traits2>& boost::random::operator<<(std::basic_ostream<_CharT2, _Traits2>&, const boost::random::lagged_fibonacci_01<RealType, w, p, q>&)':
/usr/include/boost/random/lagged_fibonacci.hpp:357: error: `std::pow' has not been declared
In file included from /usr/include/boost/random/ranlux.hpp:25,
                 from /usr/include/boost/random.hpp:47,
                 from xdelta.cc:705:
/usr/include/boost/random/subtract_with_carry.hpp: In member function `void boost::random::subtract_with_carry_01<RealType, w, s, r, val>::init_modulus()':
/usr/include/boost/random/subtract_with_carry.hpp:268: error: `std::pow' has not been declared
/usr/include/boost/random/subtract_with_carry.hpp: In member function `void boost::random::subtract_with_carry_01<RealType, w, s, r, val>::seed(uint32_t)':
/usr/include/boost/random/subtract_with_carry.hpp:280: error: `std::fmod' has not been declared
/usr/include/boost/random/subtract_with_carry.hpp: In member function `void boost::random::subtract_with_carry_01<RealType, w, s, r, val>::seed(It&, It)':
/usr/include/boost/random/subtract_with_carry.hpp:295: error: `std::fmod' has not been declared
/usr/include/boost/random/subtract_with_carry.hpp:296: error: `std::pow' has not been declared
/usr/include/boost/random/subtract_with_carry.hpp: In function `std::basic_ostream<_CharT2, _Traits2>& boost::random::operator<<(std::basic_ostream<_CharT2, _Traits2>&, const boost::random::subtract_with_carry_01<RealType, w, s, r, val>&)':
/usr/include/boost/random/subtract_with_carry.hpp:351: error: `std::pow' has not been declared
make[3]: *** [unit_tests-xdelta.o] Error 1
make[3]: Leaving directory `/var/tmp/portage/monotone-0.15/work/monotone-0.15'
make[2]: *** [check-am] Error 2
make[2]: Leaving directory `/var/tmp/portage/monotone-0.15/work/monotone-0.15'
make[1]: *** [check-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/monotone-0.15/work/monotone-0.15'
make: *** [check] Error 2

!!! ERROR: dev-util/monotone-0.15 failed.
!!! Function src_test, Line 518, Exitcode 0
!!! Make check failed. See above for details.
!!! If you need support, post the topmost build error, NOT this status message.


I get the following error with use=doc too:
make[1]: Leaving directory `/var/tmp/portage/monotone-0.15/work/monotone-0.15'
mkdir -p html
makeinfo --number-sections --html --output html monotone.texi
monotone.texi:140: @image file `figures/parent-child.jpg' (for HTML) not readable: No such file or directory.
monotone.texi:179: @image file `figures/parent-child-names-hashes.jpg' (for HTML) not readable: No such file ordirectory.
monotone.texi:208: @image file `figures/parent-child-hashes.jpg' (for HTML) not readable: No such file or directory.
monotone.texi:237: @image file `figures/three-versions.jpg' (for HTML) not readable: No such file or directory.
monotone.texi:278: @image file `figures/difference-between-versions.jpg' (for HTML) not readable: No such file or directory.
monotone.texi:324: @image file `figures/manifest.jpg' (for HTML) not readable: No such file or directory.
monotone.texi:369: @image file `figures/file-id-manifest-id.jpg' (for HTML) not readable: No such file or directory.
monotone.texi:414: @image file `figures/revision.jpg' (for HTML) not readable: No such file or directory.
monotone.texi:466: @image file `figures/revision-chaining.jpg' (for HTML) not readable: No such file or directory.
monotone.texi:508: @image file `figures/statement.jpg' (for HTML) not readable: No such file or directory.
monotone.texi:549: @image file `figures/cert.jpg' (for HTML) not readable: No such file or directory.
monotone.texi:621: @image file `figures/general-workflow.jpg' (for HTML) not readable: No such file or directory.
monotone.texi:662: @image file `figures/local-workflow.jpg' (for HTML) not readable: No such file or directory.
monotone.texi:707: @image file `figures/network-workflow.jpg' (for HTML) not readable: No such file or directory.
monotone.texi:780: @image file `figures/linear-history.jpg' (for HTML) not readable: No such file or directory.
monotone.texi:813: @image file `figures/fork.jpg' (for HTML) not readable: No such file or directory.
monotone.texi:844: @image file `figures/merge.jpg' (for HTML) not readable: No such file or directory.
monotone.texi:918: @image file `figures/two-branches.jpg' (for HTML) not readable: No such file or directory.
monotone.texi:963: @image file `figures/branch-heads.jpg' (for HTML) not readable: No such file or directory.
makeinfo: Removing output file `/var/tmp/portage/monotone-0.15/work/monotone-0.15/html/index.html' due to errors; use --force to preserve.
make: *** [html] Error 1

!!! ERROR: dev-util/monotone-0.15 failed.
!!! Function src_install, Line 50, Exitcode 2
!!! emake html failed
!!! If you need support, post the topmost build error, NOT this status message.


bash-2.05b$ emerge info
Portage 2.0.51-r8 (default-linux/x86/2004.3, gcc-3.4.3, glibc-2.3.4.20040808-r1, 2.6.9-gentoo-r9 i686)
=================================================================
System uname: 2.6.9-gentoo-r9 i686 AMD Athlon(tm) XP 1900+
Gentoo Base System version 1.4.16
Python:              dev-lang/python-2.3.4 [2.3.4 (#1, Oct 24 2004, 08:06:09)]
distcc 2.16 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [enabled]
ccache version 2.3 [enabled]
dev-lang/python:     2.3.4
sys-devel/autoconf:  2.59-r5
sys-devel/automake:  1.8.5-r1
sys-devel/binutils:  2.15.90.0.1.1-r3
sys-devel/libtool:   1.5.2-r7
virtual/os-headers:  2.6.8.1-r1
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CFLAGS="-pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.3/env /usr/kde/3.3/share/config /usr/kde/3.3/shutdown /usr/kde/3/share/config /usr/lib/mozilla/defaults/pref /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig ccache cvs distcc distlocks sandbox sfperms sign userpriv usersandbox maketest collision-detect strict keepwork nostrip verify-rdepend"