When I initially tried to emerge cyrus-sasl (cyrus-sasl-2.1.18-r2), I get
errors a bunch of errors after the first error:
digestmd5.c:77:19: des.h: No such file or directory
After adding "ssl" to the USE statement, the build works fine.
Reproducible: Always
Steps to Reproduce:
1. Make sure 'SSL' is not in your USE statement in make.conf
2. Make sure 'SSL' is not being used in packages.use for dev-libs/cyrus-sasl
3. Build cyrus-sasl-2.1.18-r2
Actual Results:
Here's the output of the build right before it fails and when it fails:
gcc -DHAVE_CONFIG_H -I. -I. -I.. -I../include -I../lib -I../sasldb -
I../include -I/usr/include/mysql -Wall -W -O2 -march=athlon-tbird -fomit-frame-
pointer -pipe -MT digestmd5.lo -MD -MP -MF .deps/digestmd5.Tpo -c
digestmd5.c -fPIC -DPIC -o digestmd5.lo
digestmd5.c:77:19: des.h: No such file or directory
digestmd5.c:799: error: syntax error before "des_key_schedule"
digestmd5.c:799: warning: no semicolon at end of struct or union
digestmd5.c:800: warning: type defaults to `int' in declaration of `ivec'
digestmd5.c:800: warning: data definition has no type or storage class
digestmd5.c:801: error: syntax error before "keysched2"
digestmd5.c:801: warning: type defaults to `int' in declaration of `keysched2'
digestmd5.c:801: warning: data definition has no type or storage class
digestmd5.c: In function `dec_3des':
digestmd5.c:836: warning: implicit declaration of function
`des_ede2_cbc_encrypt'
digestmd5.c:839: error: dereferencing pointer to incomplete type
digestmd5.c:840: error: dereferencing pointer to incomplete type
digestmd5.c:841: error: dereferencing pointer to incomplete type
digestmd5.c:842: error: `DES_DECRYPT' undeclared (first use in this function)
digestmd5.c:842: error: (Each undeclared identifier is reported only once
digestmd5.c:842: error: for each function it appears in.)
digestmd5.c: In function `enc_3des':
digestmd5.c:887: error: dereferencing pointer to incomplete type
digestmd5.c:888: error: dereferencing pointer to incomplete type
digestmd5.c:889: error: dereferencing pointer to incomplete type
digestmd5.c:890: error: `DES_ENCRYPT' undeclared (first use in this function)
digestmd5.c: In function `init_3des':
digestmd5.c:905: error: invalid application of `sizeof' to an incomplete type
digestmd5.c:910: warning: implicit declaration of function `des_key_sched'
digestmd5.c:910: error: `des_cblock' undeclared (first use in this function)
digestmd5.c:910: error: syntax error before ')' token
digestmd5.c:914: error: syntax error before ')' token
digestmd5.c:916: error: dereferencing pointer to incomplete type
digestmd5.c:921: error: increment of pointer to unknown structure
digestmd5.c:921: error: arithmetic on pointer to an incomplete type
digestmd5.c:923: error: syntax error before ')' token
digestmd5.c:927: error: syntax error before ')' token
digestmd5.c:930: error: dereferencing pointer to incomplete type
digestmd5.c: In function `dec_des':
digestmd5.c:954: warning: implicit declaration of function `des_cbc_encrypt'
digestmd5.c:957: error: dereferencing pointer to incomplete type
digestmd5.c:958: error: dereferencing pointer to incomplete type
digestmd5.c:959: error: `DES_DECRYPT' undeclared (first use in this function)
digestmd5.c:963: error: dereferencing pointer to incomplete type
digestmd5.c: In function `enc_des':
digestmd5.c:1008: error: dereferencing pointer to incomplete type
digestmd5.c:1009: error: dereferencing pointer to incomplete type
digestmd5.c:1010: error: `DES_ENCRYPT' undeclared (first use in this function)
digestmd5.c:1014: error: dereferencing pointer to incomplete type
digestmd5.c: In function `init_des':
digestmd5.c:1029: error: invalid application of `sizeof' to an incomplete type
digestmd5.c:1034: error: `des_cblock' undeclared (first use in this function)
digestmd5.c:1034: error: syntax error before ')' token
digestmd5.c:1036: error: dereferencing pointer to incomplete type
digestmd5.c:1041: error: increment of pointer to unknown structure
digestmd5.c:1041: error: arithmetic on pointer to an incomplete type
digestmd5.c:1043: error: syntax error before ')' token
digestmd5.c:1045: error: dereferencing pointer to incomplete type
digestmd5.c: In function `digestmd5_server_mech_step2':
digestmd5.c:2067: warning: dereferencing type-punned pointer will break strict-
aliasing rules
digestmd5.c:2084: warning: dereferencing type-punned pointer will break strict-
aliasing rules
make[2]: *** [digestmd5.lo] Error 1
make[2]: Leaving directory `/var/tmp/portage/cyrus-sasl-2.1.18-r2/work/cyrus-
sasl-2.1.18/plugins'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/cyrus-sasl-2.1.18-r2/work/cyrus-
sasl-2.1.18'
make: *** [all] Error 2
!!! ERROR: dev-libs/cyrus-sasl-2.1.18-r2 failed.
!!! Function src_compile, Line 116, Exitcode 2
!!! compile problem
Expected Results:
The ebuild should have either build successfully or failed in the beginning of
the e-build if the 'ssl' keyword is required for it.
emerge info:
Portage 2.0.50-r9 (default-x86-2004.2, gcc-3.3.3, glibc-2.3.3.20040420-r0,
2.6.7)
=================================================================
System uname: 2.6.7 i686 AMD Athlon(tm) Processor
Gentoo Base System version 1.4.16
Autoconf: sys-devel/autoconf-2.59-r4
Automake: sys-devel/automake-1.8.3
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CFLAGS="-O2 -march=athlon-tbird -fomit-frame-pointer -pipe"
CHOST="i686-pc-linux-gnu"
COMPILER="gcc3"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/share
/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-O2 -march=athlon-tbird -fomit-frame-pointer -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs ccache sandbox"
GENTOO_MIRRORS="ftp://ftp-stud.fht-esslingen.de/pub/Mirrors/gentoo/
ftp://ftp6.uni-erlangen.de/pub/mirrors/gentoo
ftp://vlaai.snt.ipv6.utwente.nl/pub/os/linux/gentoo/ http://ftp6.uni-
erlangen.de/pub/mirrors/gentoo"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY=""
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="apm arts avi crypt cups encode foomaticdb gif gnome gtk gtk2 imlib jpeg
kde libg++ libwww mad maildir mikmod motif mpeg mysql ncurses oggvorbis opengl
oss pam pdflib png qt quicktime sasl sdl svga truetype x86 xml2 xmms xv zlib"
Confirming that with USE="-ssl" package does not compile, but with USE="ssl" it
does.
Same error message.
Portage 2.0.50-r9 (default-x86-2004.2, gcc-3.3.4, glibc-2.3.4.20040619-r1,
2.6.8-rc2-chaotic)
=================================================================
System uname: 2.6.8-rc2-chaotic i686 Intel(R) Pentium(R) 4 CPU 2.60GHz
Gentoo Base System version 1.4.16
distcc 2.13 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632)
[disabled]
ccache version 2.3 [enabled]
Autoconf: sys-devel/autoconf-2.59-r4
Automake: sys-devel/automake-1.8.3
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CFLAGS="-march=pentium4 -O3 -fomit-frame-pointer -ftracer -fPIC -ffast-math
-pipe"
CHOST="i686-pc-linux-gnu"
COMPILER="gcc3"
CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config
/usr/kde/3.2/share/config /usr/kde/3.3/share/config /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/alias /var/qmail/control
/var/vpopmail/domains /var/vpopmail/etc"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-march=pentium4 -O3 -fomit-frame-pointer -ftracer -fPIC -ffast-math
-pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs buildpkg ccache sandbox usersandbox"
GENTOO_MIRRORS="http://mirror.hamakor.org.il/pub/mirrors/gentoo/"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage /usr/local/trunk /usr/local/kdeoverlay
/usr/local/bmg-main"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="X Xaw3d aalib acpi alsa apache2 apm avi berkdb caps cdparanoia cdr crypt
cups directfb divx4linux doc edl encode erandom ethereal fam flac foomaticdb gd
gdbm gif gimp gimpprint gnome gnomedb gpm gtk gtk2 icq imagemagick imap imlib
imlib2 ipv6 jack jpeg k3b lcms ldap libcaca libg++ libwww mad matroska memlimit
mikmod mmx mng motif mozdomi mozilla mozsvg mpeg mplayer mule mysql ncurses nls
nocd nptl ntlm oggvorbis openal opengl oscar pam pdflib perl pic png ppds
propolice pthreads python qt quicktime readline samba sdl slang snmp speedo
speex spell src sse ssl svg svga tcltk tcpd tetex theora truetype unicode
videos vim-with-x wifi x86 xinerama xml xml2 xmms xosd xv xvid zlib"