Bug #37517 falcon -DENGINE conflicts --with-ssl leading to build failure

Submitted: 19 Jun 2008 9:04 Modified: 30 Jul 2008 13:54
Reporter: Stewart Smith Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Falcon storage engine Severity:S1 (Critical)
Version:6.0 OS:Any
Assigned to: Jim Starkey CPU Architecture:Any

[19 Jun 2008 9:04] Stewart Smith
Description:
./configure --with-plugins=max --prefix=/usr/local/mysql --with-debug=full --with-ssl
make

make[3]: Entering directory `/home/stewart/mysql/stew-encrypted-backup/storage/falcon'
if ccache distcc g++ -DHAVE_CONFIG_H -D_REENTRANT -D_PTHREADS -DENGINE -DSTORAGE_ENGINE -DNAMESPACE=Nfs -I. -I. -I../../include -I../../include -I../../include -I../../regex -I../../sql -I. -I./TransformLib     -g -DSAFE_MUTEX -DSAFEMALLOC    -fno-implicit-templates -fno-exceptions -fno-rtti -fimplicit-templates -Wno-invalid-offsetof -fexceptions -D_DEBUG -DMEM_DEBUG -MT libhafalcon_a-ha_falcon.o -MD -MP -MF ".deps/libhafalcon_a-ha_falcon.Tpo" -c -o libhafalcon_a-ha_falcon.o `test -f 'ha_falcon.cpp' || echo './'`ha_falcon.cpp; \
	then mv -f ".deps/libhafalcon_a-ha_falcon.Tpo" ".deps/libhafalcon_a-ha_falcon.Po"; else rm -f ".deps/libhafalcon_a-ha_falcon.Tpo"; exit 1; fi
distcc[15523] ERROR: compile /home/stewart/.ccache/ha_falcon.tmp.willster.15519.ii on localhost failed
In file included from /usr/include/openssl/crypto.h:132,
                 from /usr/include/openssl/comp.h:6,
                 from /usr/include/openssl/ssl.h:177,
                 from ../../include/violite.h:110,
                 from ../../sql/mysql_priv.h:98,
                 from ha_falcon.cpp:23:
/usr/include/openssl/ossl_typ.h:154: error: expected unqualified-id before numeric constant
In file included from /usr/include/openssl/x509.h:74,
                 from /usr/include/openssl/ssl.h:184,
                 from ../../include/violite.h:110,
                 from ../../sql/mysql_priv.h:98,
                 from ha_falcon.cpp:23:
/usr/include/openssl/evp.h:293: error: expected unqualified-id before numeric constant
/usr/include/openssl/evp.h:370: error: expected unqualified-id before numeric constant
/usr/include/openssl/evp.h:508: error: expected identifier before numeric constant
/usr/include/openssl/evp.h:508: error: expected ‘,’ or ‘...’ before numeric constant
/usr/include/openssl/evp.h:513: error: expected identifier before numeric constant
/usr/include/openssl/evp.h:513: error: expected ‘,’ or ‘...’ before numeric constant
/usr/include/openssl/evp.h:529: error: expected identifier before numeric constant
/usr/include/openssl/evp.h:529: error: expected ‘,’ or ‘...’ before numeric constant
/usr/include/openssl/evp.h:538: error: expected identifier before numeric constant
/usr/include/openssl/evp.h:538: error: expected ‘,’ or ‘...’ before numeric constant
/usr/include/openssl/evp.h:548: error: expected identifier before numeric constant
/usr/include/openssl/evp.h:548: error: expected ‘,’ or ‘...’ before numeric constant
In file included from /usr/include/openssl/x509.h:97,
                 from /usr/include/openssl/ssl.h:184,
                 from ../../include/violite.h:110,
                 from ../../sql/mysql_priv.h:98,
                 from ha_falcon.cpp:23:
/usr/include/openssl/rsa.h:136: error: expected unqualified-id before numeric constant
/usr/include/openssl/rsa.h:232: error: ‘engine’ was not declared in this scope
In file included from /usr/include/openssl/dsa.h:84,
                 from /usr/include/openssl/x509.h:100,
                 from /usr/include/openssl/ssl.h:184,
                 from ../../include/violite.h:110,
                 from ../../sql/mysql_priv.h:98,
                 from ha_falcon.cpp:23:
/usr/include/openssl/dh.h:139: error: expected unqualified-id before numeric constant
/usr/include/openssl/dh.h:173: error: ‘engine’ was not declared in this scope
In file included from /usr/include/openssl/x509.h:100,
                 from /usr/include/openssl/ssl.h:184,
                 from ../../include/violite.h:110,
                 from ../../sql/mysql_priv.h:98,
                 from ha_falcon.cpp:23:
/usr/include/openssl/dsa.h:165: error: expected unqualified-id before numeric constant
/usr/include/openssl/dsa.h:193: error: ‘engine’ was not declared in this scope
make[3]: *** [libhafalcon_a-ha_falcon.o] Error 1
make[3]: Leaving directory `/home/stewart/mysql/stew-encrypted-backup/storage/falcon'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/stewart/mysql/stew-encrypted-backup/storage/falcon'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/stewart/mysql/stew-encrypted-backup/storage'
make: *** [all-recursive] Error 1

line 165 of dsa.h is:
        ENGINE *engine;

with this failing, i'll be unable to push encrypted online backup code, as it uses SSL and i bet pushbuild builds with falcon.

How to repeat:
cd mysql-6.0-backup
./configure --with-plugins=max --prefix=/usr/local/mysql --with-debug=full --with-ssl
make

Suggested fix:
use something else other than ENGINE (falcon already has STORAGE_ENGINE)
[19 Jun 2008 18:21] Hakan Küçükyılmaz
Stewart,

Jim just pushed his fix for this issue into bzr:mysql-6.0-falcon tree. Please give it a try.

Thanks,

Hakan
[20 Jun 2008 6:48] Stewart Smith
tested, now builds okay.
[18 Jul 2008 8:32] Hakan Küçükyılmaz
Fix is in 6.0.6
[30 Jul 2008 13:54] MC Brown
A note has been added to the 6.0.6 changelog: 

Building MySQL with SSL and Falcon enabled would lead to a build failure.

Portions of this website are copyright © 2001, 2002 The PHP Group

Page generated in 0.042 sec. using MySQL 8.4.7-u6-cloud

Timestamp references displayed by the system are UTC.
Content reproduced on this site is the property of the respective copyright holders.
It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.