List:General Discussion« Previous MessageNext Message »
From:Dan Nelson Date:March 15 2002 9:44pm
Subject:Bad pthreads detection on Tru64 5.1a
View as plain text  
>Description:

	Tru64 5.1a is more strict than other versions of Tru64 when
compiling a threaded program.

extract of pthreads.h file on Tru64 5.1:

	/*
	 * Enable reentrant errno.h. HOWEVER: this is here only to avoid breaking old
	 * (and incorrect) code that assumes it's here. This will only work if
	 * <pthread.h> is the first header file included, and it is always far better
	 * to avoid such assumptions. You should always define _REENTRANT on the
	 * command line, usually by using "cc -pthread" or "cxx -pthread", to be sure
	 * that it will be available for all header files.
	 */
	#ifdef _PTHREAD_ENV_UNIX
	# ifndef _REENTRANT
	#  define _REENTRANT	1
	# endif
	#endif

extract of pthreads.h file on Tru64 5.1a:

	#ifdef _PTHREAD_ENV_UNIX
	# ifndef _REENTRANT
	#  error "Please compile the module including pthread.h with -pthread"
	# endif
	#endif

	
>How-To-Repeat:
   ./configure , then notice that mit-pthreads is getting built
	
>Fix:
   
--- configure.in~	Thu Mar 14 16:40:46 2002
+++ configure.in	Thu Mar 14 16:40:46 2002
@@ -907,6 +907,8 @@
 	then
 	  with_named_thread="-lpthread -lmach -lexc"
 	  #with_named_thread="-lpthread -lmach -lexc -lc"
+	  CFLAGS="$CFLAGS -D_REENTRANT"
+	  CXXFLAGS="$CXXFLAGS -D_REENTRANT"
 	  AC_DEFINE(HAVE_DEC_THREADS)
 	  AC_MSG_RESULT("yes")
 	else


	

>Submitter-Id:	<submitter ID>
>Originator:	Dan Nelson <dnelson@stripped>
>Organization:  The Allant Group
>MySQL support: none
>Synopsis:	Bad pthreads detection on Tru64 5.1a
>Severity:	serious
>Priority:	medium
>Category:	mysql
>Class:		sw-bug
>Release:	mysql-3.23.49 (Source distribution)
>Server: /usr/local/bin/mysqladmin  Ver 8.23 Distrib 3.23.49, for dec-osf5.1 on
> alphaev56
Copyright (C) 2000 MySQL AB & MySQL Finland AB & TCX DataKonsult AB
This software comes with ABSOLUTELY NO WARRANTY. This is free software,
and you are welcome to modify and redistribute it under the GPL license

Server version		3.23.49-log
Protocol version	10
Connection		Localhost via UNIX socket
UNIX socket		/tmp/mysql.sock
Uptime:			2 hours 49 min 1 sec

Threads: 1  Questions: 9  Slow queries: 0  Opens: 6  Flush tables: 1  Open tables: 0
Queries per second avg: 0.001
>Environment:
	
System: OSF1 dbsrv1.emsphone.com V5.1 1885 alpha
Machine: alpha
Some paths:  /bin/perl /sbin/make /usr/local/bin/gmake /usr/local/bin/gcc /bin/cc
GCC: Reading specs from /usr/local/lib/gcc-lib/alphaev56-dec-osf5.1/3.0.4/specs
Configured with: ./configure 
Thread model: single
gcc version 3.0.4
Compilation info: CC='gcc'  CFLAGS=''  CXX='g++'  CXXFLAGS=''  LDFLAGS=''
LIBC: 
lrwxrwxrwx   1 root     system        17 Feb 24  2001 /lib/libc.a -> ../ccs/lib/libc.a
lrwxrwxrwx   1 root     system        17 Feb 24  2001 /usr/lib/libc.a ->
../ccs/lib/libc.a
Configure command: ./configure --localstatedir=/var/db/mysql --without-debug
--without-bench --with-innodb
Thread
Bad pthreads detection on Tru64 5.1aDan Nelson15 Mar
  • Re: Bad pthreads detection on Tru64 5.1aSinisa Milivojevic16 Mar