Trond,
sorry, the inline assembly does not compile in gcc-2.96, though it
compiles on an earlier version of gcc, which I use. I forgot to
comment out the offending functions. They are really not needed
in current code.
Below is a patch which defines them out.
Regards,
Heikki
http://www.innodb.com
--- 1.6/innobase/sync/sync0sync.c Sat Aug 4 18:44:51 2001
+++ 1.7/innobase/sync/sync0sync.c Wed Aug 15 14:08:26 2001
@@ -167,7 +167,7 @@
};
-#if defined(__GNUC__) && defined(UNIV_INTEL_X86)
+#if defined(notdefined) && defined(__GNUC__) && defined(UNIV_INTEL_X86)
ulint
sync_gnuc_intelx86_test_and_set(
Copied message:
.........................
>Description:
mysql 3.23.41 doesn't build properly on IA32 with assembly and innobase
enabled.
3.23.40 didn't have this problem
Configure statement in spec file ("%configure" is a standard rpm macro,
specifying
CFLAGS and CXXFLAGS and various prefixes)
%configure --without-debug \
--without-readline \
--enable-shared \
--with-extra-charsets=complex \
--with-bench \
--localstatedir=/var/lib/mysql \
--with-unix-socket-path=/var/lib/mysql/mysql.sock \
--with-mysqld-user="mysql" \
--with-extra-charsets=all \
--with-innodb \
--enable-assembler \
--with-berkeley-db --enable-large-files=yes --enable-largefile=yes \
--with-thread-safe-client
results in:
gcc -DHAVE_CONFIG_H -I. -I. -I.. -I../../include -I../include -DDBUG_OFF
-O3
-DDBUG_OFF -O2 -march=i386 -mcpu=i686 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=
64 -D_LARGEFILE_SOURCE -DDEBUG_OFF -DUNIV_INTEL_X86 -c sync0sync.c
sync0sync.c: In function `sync_gnuc_intelx86_test_and_set':
sync0sync.c:187: impossible register constraint in `asm'
sync0sync.c:187: impossible register constraint in `asm'
sync0sync.c:187: impossible register constraint in `asm'
sync0sync.c: In function `sync_gnuc_intelx86_reset':
sync0sync.c:202: impossible register constraint in `asm'
sync0sync.c:202: impossible register constraint in `asm'
sync0sync.c:202: impossible register constraint in `asm'
make[4]: *** [sync0sync.o] Error 1
make[4]: Leaving directory
`/tmp/32683-i386/BUILD/mysql-3.23.41/innobase/sync'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/tmp/32683-i386/BUILD/mysql-3.23.41/innobase'
>Submitter-Id: <submitter ID>
>Originator:
>Organization:
Trond Eivind Glomsrød
Red Hat, Inc.
>
>MySQL support: none
>Synopsis: assembly/innobase combo doesn't compile
>Severity: non-critical
>Priority: medium
>Category: mysql
>Class: sw-bug
>Environment:
System: Linux halden 2.4.7-0.12.1smp #1 SMP Fri Aug 10 13:46:13 EDT 2001
i686 unknown
Architecture: i686
Some paths: /usr/bin/perl /usr/bin/make /usr/bin/gmake /usr/bin/gcc
/usr/bin/cc
GCC: Reading specs from /usr/lib/gcc-lib/i386-redhat-linux/2.96/specs
gcc version 2.96 20000731 (Red Hat Linux 7.1 2.96-96)
Compilation info: CC='gcc'
CFLAGS='-O2 -march=i386 -mcpu=i686 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE' CXX='c++'
CXXFLAGS='-O2 -march=i386 -mcpu=i686 -D_GNU_SOURCE
-D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE' LDFLAGS=''
LIBC:
lrwxrwxrwx 1 root root 13 aug 10 15:21 /lib/libc.so.6 ->
libc-2.2.4.so
-rwxr-xr-x 1 root root 1276424 jul 26 20:01 /lib/libc-2.2.4.so
-rw-r--r-- 1 root root 26985282 aug 10 07:10 /usr/lib/libc.a
-rw-r--r-- 1 root root 178 aug 10 07:10 /usr/lib/libc.so
lrwxrwxrwx 1 root root 10 aug 7 17:04
/usr/lib/libc-client.a ->
c-client.a
Configure command: ./configure
i386-redhat-linux --prefix=/usr --exec-prefix=/usr
--bindir=/usr/bin --sbindir=/usr/sbin --sysconfdir=/etc --datadir=/usr/share
--includedir=/usr/include
--libdir=/usr/lib --libexecdir=/usr/libexec --localstatedir=/var --sharedsta
tedir=/usr/com
--mandir=/usr/share/man --infodir=/usr/share/info --without-debug --without-
readline
--enable-shared --with-extra-charsets=complex --with-bench --localstatedir=/
var/lib/mysql
--with-unix-socket-path=/var/lib/mysql/mysql.sock --with-mysqld-user=mysql -
-with-extra-charsets=all
--with-innodb --enable-assembler --with-berkeley-db --enable-large-files=yes
--enable-largefile=yes
--with-thread-safe-client
----------------------------------------------------------------------------
----
---------------------------------------------------------------------
Before posting, please check:
http://www.mysql.com/manual.php (the manual)
http://lists.mysql.com/ (the list archive)
To request this thread, e-mail <[EMAIL PROTECTED]>
To unsubscribe, e-mail <[EMAIL PROTECTED]>
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php