Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 94287 - sendmail-8.13.3 fails to build on Alpha
Summary: sendmail-8.13.3 fails to build on Alpha
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: Alpha Linux
: High major (vote)
Assignee: Andrea Barisani (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-05-28 07:14 UTC by Andrew Gaylard
Modified: 2005-05-29 09:19 UTC (History)
3 users (show)

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


Attachments
site.config.m4.patch (site.config.m4.patch,854 bytes, patch)
2005-05-28 19:00 UTC, Jose Luis Rivero (yoswink) (RETIRED)
Details | Diff
new site.config.m4 file (site.config.m4,453 bytes, text/plain)
2005-05-29 07:36 UTC, Andrea Barisani (RETIRED)
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Andrew Gaylard 2005-05-28 07:14:56 UTC
sendmail-8.13.3 fails to build on Alpha.

Reproducible: Always
Steps to Reproduce:
1. emerge sendmail


Actual Results:  
The build fails with the following output:

make[1]: Entering directory
`/var/tmp/portage/sendmail-8.13.3/work/sendmail-8.13.3/obj.Linux.2.6.11.8.alpha/vacation'
cc -O2 -I. -I../../sendmail   -I../../include  -DNEWDB -DMAP_REGEX 
-DTCPWRAPPERS -DSTARTTLS -D_FFR_DEAL_WITH_ERROR_SSL -DNOT_SENDMAIL  -mieee -O3
-mcpu=ev56     -c -o vacation.o vacation.c
cc -o vacation -Wl -z now -s   vacation.o     
/var/tmp/portage/sendmail-8.13.3/work/sendmail-8.13.3/obj.Linux.2.6.11.8.alpha/libsmdb/libsmdb.a
/var/tmp/portage/sendmail-8.13.3/work/sendmail-8.13.3/obj.Linux.2.6.11.8.alpha/libsmutil/libsmutil.a
/var/tmp/portage/sendmail-8.13.3/work/sendmail-8.13.3/obj.Linux.2.6.11.8.alpha/libsm/libsm.a
 -ldb -lresolv -lcrypt -lnsl  -lwrap -lssl -lcrypto  
gcc: now: No such file or directory
make[1]: *** [vacation] Error 1
make[1]: Leaving directory
`/var/tmp/portage/sendmail-8.13.3/work/sendmail-8.13.3/obj.Linux.2.6.11.8.alpha/vacation'
make: *** [all] Error 2

!!! ERROR: mail-mta/sendmail-8.13.3 failed.

Expected Results:  
The emerge should have completed successfully.
Comment 1 Jose Luis Rivero (yoswink) (RETIRED) gentoo-dev 2005-05-28 13:26:52 UTC
Same error for me with versions: 8.13.3 (stable) and 8.13.4 (testing).

Seems to be a problem with Makefiles under subdir "obj.Linux.2.4.28.alpha". 
Lots of these makefiles have the "evil" line: 

"LDOPTS=   -Wl -z now -s"

and after this definition, we have the line that is my candidate for fail:

"""
vacation: ${vacationOBJS} ${vacationSMDEPLIBS}
        ${CC} -o vacation ${LDOPTS} ${LIBDIRS} ${vacationOBJS} ${LIBS}
"""
(example from /vacation Makefile)

I think, not sure, that gcc is taking bad LDOPTS since they are defined using
spaces, so instead of taking "-z now" as a whole option take "-z" as option and
"now" as a file since not using - symbol. 
Note that gcc error is: 
"gcc: now: No such file or directory"

List taken from /var/tmp/portage/sendmail-8.13.3/work/sendmail-8.13.3/, after
"emerge sendmail" fails, using grep -R " now " * | grep Makefile | uniq (hope it
could be useful):

obj.Linux.2.4.28.alpha/libsm/Makefile:LDOPTS=   -Wl -z now -s
obj.Linux.2.4.28.alpha/libsm/Makefile.old:LDOPTS=       -Wl -z now -s
obj.Linux.2.4.28.alpha/libsmutil/Makefile:LDOPTS=       -Wl -z now -s
obj.Linux.2.4.28.alpha/libsmutil/Makefile.old:LDOPTS=   -Wl -z now -s
obj.Linux.2.4.28.alpha/libsmdb/Makefile:LDOPTS= -Wl -z now -s
obj.Linux.2.4.28.alpha/libsmdb/Makefile.old:LDOPTS=     -Wl -z now -s
obj.Linux.2.4.28.alpha/sendmail/Makefile:LDOPTS=        -Wl -z now -s
obj.Linux.2.4.28.alpha/sendmail/Makefile.old:LDOPTS=    -Wl -z now -s
obj.Linux.2.4.28.alpha/editmap/Makefile:LDOPTS= -Wl -z now -s
obj.Linux.2.4.28.alpha/editmap/Makefile.old:LDOPTS=     -Wl -z now -s
obj.Linux.2.4.28.alpha/mail.local/Makefile:LDOPTS=      -Wl -z now -s
obj.Linux.2.4.28.alpha/mail.local/Makefile.old:LDOPTS=  -Wl -z now -s
obj.Linux.2.4.28.alpha/mailstats/Makefile:LDOPTS=       -Wl -z now -s
obj.Linux.2.4.28.alpha/mailstats/Makefile.old:LDOPTS=   -Wl -z now -s
obj.Linux.2.4.28.alpha/makemap/Makefile:LDOPTS= -Wl -z now -s
obj.Linux.2.4.28.alpha/makemap/Makefile.old:LDOPTS=     -Wl -z now -s
obj.Linux.2.4.28.alpha/praliases/Makefile:LDOPTS=       -Wl -z now -s
obj.Linux.2.4.28.alpha/praliases/Makefile.old:LDOPTS=   -Wl -z now -s
obj.Linux.2.4.28.alpha/rmail/Makefile:LDOPTS=   -Wl -z now -s
obj.Linux.2.4.28.alpha/rmail/Makefile.old:LDOPTS=       -Wl -z now -s
obj.Linux.2.4.28.alpha/smrsh/Makefile:LDOPTS=   -Wl -z now -s
obj.Linux.2.4.28.alpha/smrsh/Makefile.old:LDOPTS=       -Wl -z now -s
obj.Linux.2.4.28.alpha/vacation/Makefile:LDOPTS=        -Wl -z now -s
obj.Linux.2.4.28.alpha/vacation/Makefile.old:LDOPTS=    -Wl -z now -s

Lcars, would you mind take care of this problem? If need more details or some
testing, please feel free to contact alpha team. Thanks.
Comment 2 Jose Luis Rivero (yoswink) (RETIRED) gentoo-dev 2005-05-28 19:00:29 UTC
Created attachment 60058 [details, diff]
site.config.m4.patch

This patch changes the definition of LDOPTS and LDOPTS_SO making on the install
process through site.config.m4 file (placed into subdir /files). Now use comma
separated list instead of spaces.

It solves compilation problems on alpha and also compiles on x86.
Comment 3 Andrea Barisani (RETIRED) gentoo-dev 2005-05-29 03:38:35 UTC
-Wl does indeed accept comma separated options but are you sure that using
-shared,-Wl,<options> works? I'm not getting any errors but I'd like to get
confirmation that a comma separated list is doing the job ;).

If it does then I don't see any problems with the change.
Comment 4 Andrea Barisani (RETIRED) gentoo-dev 2005-05-29 03:51:28 UTC
Just found out that we don't need to redefine LDOPTS_SO since the '-shared' is
appended by default.

Grepping the source shows LDOPTS_SO = ${LDOPTS} -shared

So we can strip out the confLDOPTS_SO line and not worring about my concerns
for comma inclusion on that option.
Comment 5 Jose Luis Rivero (yoswink) (RETIRED) gentoo-dev 2005-05-29 06:11:30 UTC
I see your solution clearer. Looks fine for me.

Would be nice have this issue solved as soon as posible since is blocking our
stable branch :/ 

Please Andrea, make a comment here when you commit the patch to cvs in order to
I can make the final test on alpha and close this bug.

Thanks Andrea :)
Comment 6 Andrea Barisani (RETIRED) gentoo-dev 2005-05-29 07:36:13 UTC
Created attachment 60094 [details]
new site.config.m4 file

Attaching a new site.config.m4 without LDOPTS_SO and comma separated Wl
options,
I'm leaving the '-s' option outside -Wl arguments since that it's meant to be
passed to gcc (it shouldn't make a big difference, I'm pretty sure it works
both
ways but this is cleaner and we've confirmed that it works on alpha).
Comment 7 Grant Goodyear (RETIRED) gentoo-dev 2005-05-29 08:23:06 UTC
My dev machine is down right now.  Can somebody in the net-mail herd commit this
please?
Comment 8 Fernando J. Pereda (RETIRED) gentoo-dev 2005-05-29 09:19:10 UTC
Commited.

Thanks to all.
Ferdy