dev-lang/ruby-1.8.7_p249 fails to merge with undeclared variable in ossl_ssl.c Reproducible: Always Steps to Reproduce: 1.Add >dev-lang/ruby-1.8.7_p249 to /etc/portage/package.mask 2.emerge -uDN world 3. Actual Results: x86_64-pc-linux-gnu-gcc -I. -I../.. -I../../. -I../.././ext/openssl -DRUBY_EXTCONF_H=\"extconf.h\" -fPIC -O2 -pipe -fno-strict-aliasing -fPIC -c ossl_x509store.c ossl_asn1.c: In function 'decode_bool': ossl_asn1.c:313: warning: passing argument 2 of 'd2i_ASN1_BOOLEAN' from incompatible pointer type /usr/include/openssl/asn1.h:830: note: expected 'const unsigned char **' but argument is of type 'unsigned char **' ossl_asn1.c: In function 'decode_int': ossl_asn1.c:328: warning: passing argument 2 of 'd2i_ASN1_INTEGER' from incompatible pointer type /usr/include/openssl/asn1.h:832: note: expected 'const unsigned char **' but argument is of type 'unsigned char **' ossl_asn1.c: In function 'decode_bstr': ossl_asn1.c:347: warning: passing argument 2 of 'd2i_ASN1_BIT_STRING' from incompatible pointer type /usr/include/openssl/asn1.h:810: note: expected 'const unsigned char **' but argument is of type 'unsigned char **' ossl_asn1.c: In function 'decode_enum': ossl_asn1.c:373: warning: passing argument 2 of 'd2i_ASN1_ENUMERATED' from incompatible pointer type /usr/include/openssl/asn1.h:841: note: expected 'const unsigned char **' but argument is of type 'unsigned char **' ossl_asn1.c: In function 'decode_null': ossl_asn1.c:390: warning: passing argument 2 of 'd2i_ASN1_NULL' from incompatible pointer type /usr/include/openssl/asn1.h:867: note: expected 'const unsigned char **' but argument is of type 'unsigned char **' ossl_asn1.c: In function 'decode_obj': ossl_asn1.c:407: warning: passing argument 2 of 'd2i_ASN1_OBJECT' from incompatible pointer type /usr/include/openssl/asn1.h:787: note: expected 'const unsigned char **' but argument is of type 'unsigned char **' ossl_asn1.c: In function 'decode_time': ossl_asn1.c:435: warning: passing argument 2 of 'd2i_ASN1_TIME' from incompatible pointer type /usr/include/openssl/asn1.h:883: note: expected 'const unsigned char **' but argument is of type 'unsigned char **' ossl_asn1.c: In function 'ossl_asn1_get_asn1type': ossl_asn1.c:503: warning: cast to pointer from integer of different size ossl_asn1.c: In function 'ossl_asn1_decode0': ossl_asn1.c:727: warning: passing argument 1 of 'ASN1_get_object' from incompatible pointer type /usr/include/openssl/asn1.h:945: note: expected 'const unsigned char **' but argument is of type 'unsigned char **' ossl_ssl.c:101: warning: initialization from incompatible pointer type ossl_ssl.c:102: warning: initialization from incompatible pointer type ossl_ssl.c:103: warning: initialization from incompatible pointer type ossl_ssl.c:104: warning: initialization from incompatible pointer type ossl_ssl.c:105: warning: initialization from incompatible pointer type ossl_ssl.c:106: warning: initialization from incompatible pointer type ossl_ssl.c:107: warning: initialization from incompatible pointer type ossl_ssl.c:108: warning: initialization from incompatible pointer type ossl_ssl.c:109: warning: initialization from incompatible pointer type ossl_ssl.c:110: warning: initialization from incompatible pointer type ossl_ssl.c:111: warning: initialization from incompatible pointer type ossl_ssl.c:112: warning: initialization from incompatible pointer type ossl_ssl.c: In function 'ossl_sslctx_get_ciphers': ossl_ssl.c:626: error: 'STACK' undeclared (first use in this function) ossl_ssl.c:626: error: (Each undeclared identifier is reported only once ossl_ssl.c:626: error: for each function it appears in.) ossl_ssl.c:626: error: expected expression before ')' token ossl_ssl.c:629: error: expected expression before ')' token ossl_ssl.c:629: error: too few arguments to function 'sk_value' ossl_ssl.c: In function 'ossl_ssl_get_peer_cert_chain': ossl_ssl.c:1199: warning: passing argument 1 of 'sk_num' from incompatible pointer type /usr/include/openssl/stack.h:79: note: expected 'const struct _STACK *' but argument is of type 'struct stack_st_X509 *' ossl_ssl.c:1202: warning: passing argument 1 of 'sk_value' from incompatible pointer type /usr/include/openssl/stack.h:80: note: expected 'const struct _STACK *' but argument is of type 'struct stack_st_X509 *' ossl_ssl.c: In function 'ossl_ssl_get_cipher': ossl_ssl.c:1224: warning: assignment discards qualifiers from pointer target type make[1]: *** [ossl_ssl.o] Error 1 make[1]: *** Waiting for unfinished jobs.... make[1]: Leaving directory `/var/tmp/portage/dev-lang/ruby-1.8.7_p249/work/ruby-1.8.7-p249/ext/openssl' make: *** [all] Error 1 * ERROR: dev-lang/ruby-1.8.7_p249 failed: * emake failed * * Call stack: * ebuild.sh, line 54: Called src_compile * environment, line 3528: Called die * The specific snippet of code: * emake EXTLDFLAGS="${LDFLAGS}" || die "emake failed" * * If you need support, post the output of 'emerge --info =dev-lang/ruby-1.8.7_p249', * the complete build log and the output of 'emerge -pqv =dev-lang/ruby-1.8.7_p249'. * The complete build log is located at '/var/tmp/portage/dev-lang/ruby-1.8.7_p249/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/dev-lang/ruby-1.8.7_p249/temp/environment'. * S: '/var/tmp/portage/dev-lang/ruby-1.8.7_p249/work/ruby-1.8.7-p249' >>> Failed to emerge dev-lang/ruby-1.8.7_p249, Log file: >>> '/var/tmp/portage/dev-lang/ruby-1.8.7_p249/temp/build.log' * Messages for package dev-lang/ruby-1.8.7_p249: * ERROR: dev-lang/ruby-1.8.7_p249 failed: * emake failed * * Call stack: * ebuild.sh, line 54: Called src_compile * environment, line 3528: Called die * The specific snippet of code: * emake EXTLDFLAGS="${LDFLAGS}" || die "emake failed" * * If you need support, post the output of 'emerge --info =dev-lang/ruby-1.8.7_p249', * the complete build log and the output of 'emerge -pqv =dev-lang/ruby-1.8.7_p249'. * The complete build log is located at '/var/tmp/portage/dev-lang/ruby-1.8.7_p249/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/dev-lang/ruby-1.8.7_p249/temp/environment'. * S: '/var/tmp/portage/dev-lang/ruby-1.8.7_p249/work/ruby-1.8.7-p249' Expected Results: successful emerge See attachments.
Created attachment 243363 [details] Build log
Created attachment 243365 [details] Emerge info
Created attachment 243367 [details] Emerge -pqv
Created attachment 243369 [details] Emerge environment
What version of openssl do you have installed? (emerge -pv openssl)
(In reply to comment #5) > What version of openssl do you have installed? (emerge -pv openssl) > # emerge -pv openssl [ebuild R ] dev-libs/openssl-1.0.0a-r1 USE="gmp kerberos (sse2) zlib -bindist -rfc3779 -test" 0 kB I should probably have mentioned that I'm using ACCEPT_KEYWORDS="~amd64" globally. I suppose I should have masked my way down to the last stable version of openssl along with making ruby down to the last stable version.
> I should probably have mentioned that I'm using ACCEPT_KEYWORDS="~amd64" > globally. I suppose I should have masked my way down to the last stable > version of openssl along with making ruby down to the last stable version. > Well, that worked. I added >dev-libs/openssl-0.9.8o to my portage.mask and the downgrade emerge succeeded.
You'll need to use 1.8.7_p299 with openssl-1.0.
(In reply to comment #8) > You'll need to use 1.8.7_p299 with openssl-1.0. > That's not indicated by ruby-1.8.7_p299.ebuild: ssl? ( >=dev-libs/openssl-0.9.8m ) Seems this is not really an invalid bug, after all...
(In reply to comment #9) > (In reply to comment #8) > > You'll need to use 1.8.7_p299 with openssl-1.0. > > > > That's not indicated by ruby-1.8.7_p299.ebuild: > > ssl? ( >=dev-libs/openssl-0.9.8m ) > Let me rephrase. p299 is compatible to everything >=0.9.8m. That includes 1.0.x.
(In reply to comment #10) > (In reply to comment #9) > > (In reply to comment #8) > > > You'll need to use 1.8.7_p299 with openssl-1.0. > > > > > > > That's not indicated by ruby-1.8.7_p299.ebuild: > > > > ssl? ( >=dev-libs/openssl-0.9.8m ) > > > > Let me rephrase. p299 is compatible to everything >=0.9.8m. That includes > 1.0.x. > Let me clarify this a bit further: This bug is for dev-lang/ruby-1.8.7_p249, not p299. I was unable to build p249 with openssl-1.0.0a-r1, but was able to build p249 with openssl-0.9.8o. So, in my opinion, there is either a bug in openssl-1.0.0a-r1 or an openssl version dependency that is not stated in ruby-1.8.7_p249.ebuild.