Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 2319 - error in cyrus-sasl-1.5.27-r1 ebuild
Summary: error in cyrus-sasl-1.5.27-r1 ebuild
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Martin Schlemmer (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2002-05-01 17:35 UTC by Bart Lauwers
Modified: 2002-05-26 14:11 UTC (History)
1 user (show)

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Bart Lauwers 2002-05-01 17:35:26 UTC
Hi,

 The ebuild tries to do some things which are not required or at least which
consistently break the ebuild on my system but I should think quite a few more.

 The problem lies in line 23 which reads:
automake --add-missing || die

 It should be removed in which case it works. automake is a developers tool to
help create a Makefile.in compliant with GNU project standards. Speaking of
which ,in lines 21, 22 and 24, the ebuild uses: libtoolize, aclocal, autoconf
which are more tools from the same caliber. They are not required.

 Here is a diff for the file (copy paste sorry):
# diff -Naur /usr/portage/dev-libs/cyrus-sasl/cyrus-sasl-1.5.27-r1.ebuild.ORG
/usr/portage/dev-libs/cyrus-sasl/cyrus-sasl-1.5.27-r1.ebuild
--- /usr/portage/dev-libs/cyrus-sasl/cyrus-sasl-1.5.27-r1.ebuild.ORG    Thu May
 2 02:21:59 2002
+++ /usr/portage/dev-libs/cyrus-sasl/cyrus-sasl-1.5.27-r1.ebuild        Thu May
 2 02:22:08 2002
@@ -18,10 +18,6 @@
        patch -p1 < ${FILESDIR}/${PN}-saslauthd.patch || die
        patch -p1 < ${FILESDIR}/${PN}-1.5.24-rpath.patch || die
        patch -p0 < ${FILESDIR}/${PN}-1.5.27-scram.patch || die
-       libtoolize --copy --force
-       aclocal -I cmulocal || die
-       automake --add-missing || die
-       autoconf || die
 }

 src_compile() {
#

Thanks!
Comment 1 Martin Schlemmer (RETIRED) gentoo-dev 2002-05-01 23:43:49 UTC
Look at the patches, then please comment again.
Comment 2 Bart Lauwers 2002-05-02 08:55:02 UTC
Ok, the patches, I had not read those and yeah the way those are made you'll
need to run the tools. Still it doesn't work on my system with the standard
ebuild, to get it to work I still need to avoid telling automake to provide it's
own files for what it thinks is missing. Below is the diff again but now still
running the tools but also effectively building on my system. 

# diff -Naur dev-libs/cyrus-sasl/cyrus-sasl-1.5.27-r1.ebuild.ORG
dev-libs/cyrus-sasl/cyrus-sasl-1.5.27-r1.ebuild
--- dev-libs/cyrus-sasl/cyrus-sasl-1.5.27-r1.ebuild.ORG    Thu May
 2 02:21:59 2002
+++ dev-libs/cyrus-sasl/cyrus-sasl-1.5.27-r1.ebuild        Thu May
 2 17:38:08 2002
@@ -20,7 +20,7 @@
        patch -p0 < ${FILESDIR}/${PN}-1.5.27-scram.patch || die
        libtoolize --copy --force
        aclocal -I cmulocal || die
-       automake --add-missing || die
+       automake || die
        autoconf || die
 }

#

Thnx!
Comment 3 Martin Schlemmer (RETIRED) gentoo-dev 2002-05-02 16:36:33 UTC
Hmm, strange.  automake --add-missing should just place missing stuff
there if they do not exist (config.guess, etc).  What version of automake
do you have installed (with revision).  Also, make sure you do not
have $WANT_AUTOMAKE_1_5 exported, or maybe $WANT_AUTOCONF_2_5.
Comment 4 Bart Lauwers 2002-05-02 18:24:02 UTC
I've got automake 2.53 installed and neither variable is exported.
Comment 5 Martin Schlemmer (RETIRED) gentoo-dev 2002-05-02 19:41:59 UTC
nosferatu root # epm -q automake autoconf
automake-1.5d-r2
autoconf-2.52d-r1
nosferatu root # 
Comment 6 Bart Lauwers 2002-05-02 19:53:35 UTC
nice command, here's what I get

# epm -q automake autoconf
automake-1.5d-r1
automake-1.5d-r2
autoconf-2.53
autoconf-2.52d
autoconf-2.52d-r1
#
Comment 7 Bart Lauwers 2002-05-03 08:15:50 UTC
Ok, so I corrected these by unmerging automake and autoconf. Now the output is:
# epm -q automake autoconf
automake-1.5d-r2
autoconf-2.52d-r1
#

However when I try to check if that fixes it by compiling the cyrus-sasl ebuild
it still bombs out on the following:
# ebuild dev-libs/cyrus-sasl/cyrus-sasl-1.5.27-r1.ebuild compile
[other stuff snipped]
gcc -DHAVE_CONFIG_H -I. -I. -I.. -I../include -I/usr/local/include -Wall -W
-mcpu=k6 -march=k6 -O3 -pipe -Wp,-MD,.deps/common.pp -c common.c  -fPIC -DPIC -o
.libs/common.lo
common.c: In function `_sasl_getconfpath':
common.c:659: `SASL_CONF_PATH_ENV_VAR' undeclared (first use in this function)
common.c:659: (Each undeclared identifier is reported only once
common.c:659: for each function it appears in.)
common.c:661: `CONFIGDIR' undeclared (first use in this function)
make[2]: *** [common.lo] Error 1
make[2]: Leaving directory
`/var/tmp/portage/cyrus-sasl-1.5.27-r1/work/cyrus-sasl-1.5.27/lib'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory
`/var/tmp/portage/cyrus-sasl-1.5.27-r1/work/cyrus-sasl-1.5.27'
make: *** [all-recursive-am] Error 2

!!! ERROR: The ebuild did not complete successfully.
!!! Function src_compile, Line 29, Exitcode 2
!!! compile problem

#

Which is still fixable by not telling automake to add missing files.

Since the project is already set up and we are only trying to make it accept the
patches it seems to make most sense not to tell --add-missing because the
project is done already. Why add files if they are not provided in the original,
why would the project need a file that wasn't provided by the maintainer or
patch? Btw, the previous rev. of the ebuild calls automake without --add-missing.
Comment 8 Martin Schlemmer (RETIRED) gentoo-dev 2002-05-03 18:09:59 UTC
Put it this way .. its more curiosity as to why it works fine this side,
but not by you :)  Anyhow, ill make the needed changes in a bit, 1am now,
and just came back from a night out :)
Comment 9 Andreas Waschbuesch 2002-05-04 04:25:00 UTC
Neither compiles it here as long as U try to do it @ the console using root
account. Once I switched to xterm loging in with su - everything went on ...

Greets - Andrew 
Comment 10 Bart Lauwers 2002-05-04 06:36:31 UTC
I'm curious about why it works for you too, if you got more ideas on how to
compare setups let me know I'll be happy to help figure it out. In the meanwhile
I'd just like to move on so our curiosity doesn't cost some poor ignorant soul a
lot of time.

For some reason it's configure that munches the config.h after the automake
fixes the missing files on my system, some of the vars end up being in acconfig.h

Maybe it works for you because it decides it's doesn't need to update your
config.h? I don't know it's probably something along that trend, what do you get
after compiling the ebuild when you grep for CONFIGDIR in the project root's
files? For me I find it missing from the config.h and it doesn't seem acconfig.h
is included in the project's files.

So in going over the makefile it kind of illustrates it should take the patch
input after all without all of those portability tools. It seems to have quite a
few instructions for it so I'll try to find out how to get the project to
roll-up the patches. In the meanwhile I'd still appreciate it if you can share
your findings once you find out why it works for you.
Comment 11 Ryan Shaw 2002-05-07 20:55:41 UTC
I was having this same problem, when I was 
running emerge while logged in as root via
"su -" (su making the shell a login shell).

When I logged in as "su" (not a login shell),
the ebuild completed smoothly.

Just FYI.
Comment 12 Ryan Shaw 2002-05-07 21:04:52 UTC
I've now noticed that if I log in as "su" and emerge 
cyrus-sasl, it succeeds. If I try to emerge it again
immediately, it will fail the second time.

If I then unmerge it, and merge again, it will succeed
again. Weird.
Comment 13 Bart Lauwers (RETIRED) gentoo-dev 2002-05-09 10:40:17 UTC
I've noticed this too, I'm looking into it I suspect portage to be behind it now.
Comment 14 Martin Schlemmer (RETIRED) gentoo-dev 2002-05-26 14:11:40 UTC
This should really be fixed in cyrus-sasl-1.5.27-r4.  Reopen if there is still
issues.