I installed dev-lang/erlang-13.2.2 with the ssl USE flag disabled and then tried to install net-im/ejabberd, also without ssl. Its configure failed with the following: checking for x86_64-pc-linux-gnu-erlc... no checking for erlc... /usr/bin/erlc checking for x86_64-pc-linux-gnu-erl... no checking for erl... /usr/bin/erl ./conftest.erl:6: can't find include lib "ssl/include/ssl_pkix.hrl" configure: error: could not compile sample program Reproducible: Always Steps to Reproduce: 1. USE=-ssl emerge dev-lang/erlang 2. USE=-ssl emerge net-im/ejabberd 4. USE=ssl emerge dev-lang/erlang 5. USE=-ssl emerge net-im/ejabberd Actual Results: With dev-lang/erlang[-ssl] emerging net-im/ejabberd[-ssl] fails. With dev-lang/erlang[ssl] net-im/ejabberd[-ssl] emerges successfully. Expected Results: net-im/ejabberd should depend on dev-lang/erlang[ssl] or compile also with dev-lang/erlang[-ssl]. The problem occurred on a chroot with sys-devel/gcc compiled with the nocxx USE flag, this probably does not affect the problem. emerge --info: Portage 2.1.6.13 (default/linux/amd64/10.0, gcc-4.4.1, glibc-2.10.1-r0, 2.6.31-gentoo-r1 x86_64) ================================================================= System uname: Linux-2.6.31-gentoo-r1-x86_64-AMD_Phenom-tm-_9650_Quad-Core_Processor-with-gentoo-2.0.1 Timestamp of tree: Sat, 10 Oct 2009 07:45:02 +0000 distcc 3.1 x86_64-pc-linux-gnu [disabled] ccache version 2.4 [enabled] app-shells/bash: 4.0_p33 dev-lang/python: 2.6.3, 3.1.1-r1 dev-util/ccache: 2.4-r8 sys-apps/baselayout: 2.0.1 sys-apps/openrc: 0.5.1 sys-apps/sandbox: 2.1 sys-devel/autoconf: 2.13, 2.63-r1 sys-devel/automake: 1.10.2, 1.11 sys-devel/binutils: 2.19.1-r1 sys-devel/gcc-config: 1.4.1 sys-devel/libtool: 2.2.6a virtual/os-headers: 2.6.30-r1 ACCEPT_KEYWORDS="amd64 ~amd64" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-O2 -march=amdfam10 -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/share/X11/xkb" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/eselect/postgresql /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/udev/rules.d" CXXFLAGS="-O2 -march=amdfam10 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="ccache distlocks fixpackages parallel-fetch protect-owned sandbox sfperms strict test unmerge-orphans userfetch userpriv usersandbox" GENTOO_MIRRORS="ftp://mirror.icis.pcz.pl/gentoo/ " LANG="en_US.UTF-8" LDFLAGS="-Wl,-O1 -Wl,--as-needed" MAKEOPTS="-j5" PKGDIR="/usr/portage/packages" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage/mtjm-overlay" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="amd64 glibc-omitfp mmx mudflap multilib nocxx nptl nptlonly openmp sse sse2 threads" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LC_ALL, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Created attachment 206638 [details] build.log for net-im/ejabberd net-im/ejabberd-2.0.5-r3 when erlang ssl is disabled
Created attachment 206640 [details] config.log of the same
As I see, ejabberd_s2s_in.erl has the following code: -ifdef(SSL39). -include_lib("ssl/include/ssl_pkix.hrl"). -define(PKIXEXPLICIT, 'OTP-PKIX'). -define(PKIXIMPLICIT, 'OTP-PKIX'). -else. -include_lib("ssl/include/PKIX1Explicit88.hrl"). -include_lib("ssl/include/PKIX1Implicit88.hrl"). -define(PKIXEXPLICIT, 'PKIX1Explicit88'). -define(PKIXIMPLICIT, 'PKIX1Implicit88'). -endif. Thus I guess ssl support in erlang is required even in case you are going to build ejabberd without ssl. Actually I think to rename this flag, but first I need to understand more clearly what the difference between tls and ssl from then ejabberd's pov.
Should be fixed in 2.1.4.