Description:
1. Configure
a) System can't execute ELF binaries
b) Configure didn't use libx.a by default so some function weren't dected
c) Badly formed client/Makefile for ukrainian character set
2. Compile
a) Missed win1251ukr character set code definition in include/m_ctype.h.in
b) Problems with linking to ukrainian character set ( see 1.a )
c) Bad my_sigwait definition in mysys/my_pthread.c and include/my_pthread.h
( Errors during compile ), caused by incorrect
HAVE_NONPOSIX_SIGWAIT definition for SCO Open Server 5.0.2
d) Errors compiling mysys/my_pthread.c
How-To-Repeat:
Try to configure & compile on SCO Open Server 5.0.2 with my command line
Fix:
1.
a) Deleted all -belf parameters in configure
b) Added -lx to LIBS in configure
c) Changed client/Makefile line 157:
old : LTCHARSET_OBJS= ${$CHARSET_OBJS:.o=.lo}
new: LTCHARSET_OBJS= ${$(CHARSET_OBJS):.o=.lo}
2.
a) Added line
#define MY_CHARSET_WIN1251UKR 20
to include/m_ctype.h.in
b) file strings/ctype-win1251ukr.c compiled by hand and put into client/ directory
c)
Commeted definition of my_sigwait macro in include/my_pthread.h
and #ifdef HAVE_NONPOSIX_SIGWAIT in mysys/my_pthread.c
d)
Here is new code for my_pthread_mutex_init() and my_pthread_cond_init()
static pthread_mutexattr_t pthread_mutexattr_default = { 0 };
int my_pthread_mutex_init(pthread_mutex_t *mp, const pthread_mutexattr_t *attr )
{
int error;
if (!attr)
error=pthread_mutex_init(mp,&pthread_mutexattr_default);
else
error=pthread_mutex_init(mp,attr);
return error;
}
static pthread_condattr_t pthread_condattr_default = { 0 };
int my_pthread_cond_init(pthread_cond_t *mp, const pthread_condattr_t *attr)
{
int error;
if (!attr)
error=pthread_cond_init(mp,&pthread_condattr_default);
else
error=pthread_cond_init(mp,attr);
return error;
}
Submitter-Id: <submitter ID>
Originator: Tkachenko Sergiy
Organization:
Lviv Telecom
MySQL support: none
Synopsis: Errors during configure & compile
Severity: non-critical
Priority: medium
Category: mysql
Class: sw-bug
Release: mysql-3.22.20a (Source distribution)
Environment:
<machine, os, target, libraries (multiple lines)>
System: SCO_SV reserv 3.2v5.0.2 Pentium CPU
Some paths: /usr/local/bin/make /usr/local/bin/gcc /bin/cc
GCC: Reading specs from /usr/local/lib/gcc-lib/i586-pc-sco3.2v5.0.2/2.8.1/specs
gcc version 2.8.1
Compilation info: CC='gcc' CFLAGS='-D_XOPEN_XPG4' CXX='gcc' CXXFLAGS='-D_XOPEN_XPG4'
LDFLAGS=''
Configure command: .//configure --without-debug --prefix=/usr/local/mysql
'--with-named-thread-libs=-lgthreads -lsocket -lgen -lgthreads'
--with-named-curses-libs=-lcurses --without-perl --without-docs --with-charset=win1251ukr
--disable-shared