Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 4794 - Ebuild for the CLN library.
Summary: Ebuild for the CLN library.
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: x86 Linux
: High enhancement (vote)
Assignee: George Shapovalov (RETIRED)
URL: http://www.ginac.de/CLN/
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2002-07-10 03:07 UTC by Pierre-Henri Jondot
Modified: 2003-02-04 19:42 UTC (History)
1 user (show)

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


Attachments
the cln ebuild (cln-1.1.5.ebuild,899 bytes, application/octet-stream)
2002-07-10 03:09 UTC, Pierre-Henri Jondot
Details
new cln-1.1.5 ebuild (cln-1.1.5.ebuild,832 bytes, application/octet-stream)
2002-07-16 10:47 UTC, Pierre-Henri Jondot
Details
I hope final cln-1.1.5 ebuild (cln-1.1.5.ebuild,1.05 KB, text/plain)
2002-08-31 04:56 UTC, Pierre-Henri Jondot
Details
Changelog (Changelog,313 bytes, text/plain)
2002-08-31 04:57 UTC, Pierre-Henri Jondot
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Pierre-Henri Jondot 2002-07-10 03:07:59 UTC
Hi,

This is a small ebuild for the CLN library version 1.1.5.

This C++ library deals with numbers (unlimited precision).

gnu mp (gmp) library isn't needed, but if installed, cln will link against it to
achieve better performance.

Pierre-Henri Jondot
Comment 1 Pierre-Henri Jondot 2002-07-10 03:09:05 UTC
Created attachment 2102 [details]
the cln ebuild
Comment 2 Pierre-Henri Jondot 2002-07-10 03:14:12 UTC
Sorry, forgot to suggest a dir to place this ebuild :

  I suggest dev-libs
(if another dir is chosen, the dependancy for GiNaC, that needs CLN and for
which I'll post an ebuild soon will have to be edited.)
Comment 3 Pierre-Henri Jondot 2002-07-16 10:47:08 UTC
Created attachment 2297 [details]
new cln-1.1.5 ebuild

Just a cosmetic change : deleted the Author line.

Tested with gcc 3.1 too.

(Strangely enough, I have not been authorized to make obsolete the previous cln
ebuild.)
Comment 4 George Shapovalov (RETIRED) gentoo-dev 2002-08-02 23:03:49 UTC
Hi Pierre-Henri

Thanks for a submission!

I am checking out the ebuild and I've got a problem:
compile finishes with an error. I am attaching the tail of the log.
This is already after replacing emake with make (parallel builds some times
cause trouble, but in this case this is something else).

What was your acrhitecture?
Could you please try to trace this problem?

BTW, Author, Maintainer and other supplementary info is now supposed to go into
changeLog, so that everybody gets the proper credit, etc.

George

----------------------
tail of the build:

/bin/sh ../libtool --mode=compile g++ -march=i686 -O2 -pipe -fforce-addr
-fomit-frame-pointer -funroll-loops -frerun-loop-opt -malign-functions=4
-fexpensive-optimizations -ffast-math -I../include -I../include -I./integer
-I./base/digitseq -I./base/digit -Ibase -I./base  -c ./numtheory/cl_IF_trialdiv.cc
rm -f .libs/cl_IF_trialdiv.lo
g++ -march=i686 -O2 -pipe -fforce-addr -fomit-frame-pointer -funroll-loops
-frerun-loop-opt -malign-functions=4 -fexpensive-optimizations -ffast-math
-I../include -I../include -I./integer -I./base/digitseq -I./base/digit -Ibase
-I./base -c ./numtheory/cl_IF_trialdiv.cc  -fPIC -DPIC -o .libs/cl_IF_trialdiv.lo
{standard input}: Assembler messages:
{standard input}:218: Error: symbol `.LEHB14172' is already defined
{standard input}:227: Error: symbol `.LEHE14172' is already defined
{standard input}:248: Error: symbol `.LEHB14172' is already defined
{standard input}:257: Error: symbol `.LEHE14172' is already defined
make[2]: *** [cl_IF_trialdiv.lo] Error 1
make[2]: Leaving directory `/var/tmp/portage/cln-1.1.5/work/cln-1.1.5/src'
make[1]: *** [numtheory.target] Error 2
make[1]: Leaving directory `/var/tmp/portage/cln-1.1.5/work/cln-1.1.5/src'
make: *** [all] Error 2
Comment 5 Pierre-Henri Jondot 2002-08-03 00:04:45 UTC
Argh ! 

Most probably your CFLAGS.

cln was tested in ix86, gcc 2.95 and gcc 3.1 with the following CFLAGS : 
-march=athlon-xp -fomit-frame-pointer -mfpmath=sse -funroll-loops -msse -m3dnow
-mmmx  -O3 -pipe

(except that it wouldn't build with O3 and O3 was replaced by O2 in the ebuild.)
I guess one of the following flags is the culprit, but I'm afraid that I won't
be able to investigate in the following days, as I'm going today. If necessary
I'll make the necessary tests when I return. (in 7-8 days) I'll add a changelog
too and try to double check it as regards new ebuilds policy.

So one of the following (or a combinaison of ?) make the building fail : 
-fforce-addr -frerun-loop-opt -malign-functions=4
-fexpensive-optimizations -ffast-math
Comment 6 Pierre-Henri Jondot 2002-08-31 04:56:52 UTC
Created attachment 3568 [details]
I hope final cln-1.1.5 ebuild
Comment 7 Pierre-Henri Jondot 2002-08-31 04:57:20 UTC
Created attachment 3569 [details]
Changelog
Comment 8 Pierre-Henri Jondot 2002-08-31 04:57:43 UTC
Ok, finally found out the culprit that was -funroll-loops that makes the
building fails but only with gcc 2.95.3. (Couldn't reproduce the problem with
gcc 3.1. 3.2 not tested yet, but I do guess it will work the same as gcc 3.1).

Please find attached a modified cln ebuild (making obsoletes the previously
submitted of course) and a changelog. (I do hope the syntax is correct, but I
did not find the skeleton file quite clear...)

Pierre-Henri Jondot.
Comment 9 George Shapovalov (RETIRED) gentoo-dev 2002-10-29 03:25:52 UTC
Hi Pierre-Henri.

Sorry for the delay, caused by the combination of my "vacation" and a freeze
that was just lifted.
   I processed the new version of ebuild. There were few variables missing (I
think SLOT and KEYWORDS). More importantly I changed C[XX]FLAGS filtering to use
flag-o-matic eclass. You can see the ebuild for details. Also the package did
not like parallel make for whatever reason, so I changed emake to make. Now that
made it build and install Ok, so I committed it.
   Please test and report. The ebuild is keymasked - you will need to remove '~'
from the KEYWORDS for your arch or add ~x86 to ACCEPT_KEYWORDS in make.conf.
   Thank you for your work!

George