head	1.29;
access;
symbols
	REL9_0_0:1.29
	REL9_1_ALPHA1:1.29
	REL9_0_RC1:1.29
	REL9_0_BETA4:1.29
	REL9_0_STABLE:1.29.0.14
	REL9_0_BETA3:1.29
	REL9_0_BETA2:1.29
	REL7_4_29:1.8.2.5
	REL8_0_25:1.22
	REL8_1_21:1.23
	REL8_2_17:1.27
	REL8_3_11:1.27
	REL8_4_4:1.29
	REL9_0_BETA1:1.29
	REL9_0_ALPHA5_BRANCH:1.29.0.12
	REL9_0_ALPHA5:1.29
	REL7_4_28:1.8.2.5
	REL8_0_24:1.22
	REL8_1_20:1.23
	REL8_2_16:1.27
	REL8_3_10:1.27
	REL8_4_3:1.29
	REL9_0_ALPHA4:1.29
	REL9_0_ALPHA4_BRANCH:1.29.0.10
	REL8_5_ALPHA3:1.29
	REL8_5_ALPHA3_BRANCH:1.29.0.8
	REL7_4_27:1.8.2.5
	REL8_0_23:1.22
	REL8_1_19:1.23
	REL8_2_15:1.27
	REL8_3_9:1.27
	REL8_4_2:1.29
	REL8_5_ALPHA2:1.29
	REL8_5_ALPHA2_BRANCH:1.29.0.6
	REL7_4_26:1.8.2.5
	REL8_0_22:1.22
	REL8_1_18:1.23
	REL8_2_14:1.27
	REL8_3_8:1.27
	REL8_4_1:1.29
	REL8_5_ALPHA1:1.29
	REL8_5_ALPHA1_BRANCH:1.29.0.4
	REL8_4_STABLE:1.29.0.2
	REL8_4_0:1.29
	REL8_4_RC2:1.29
	REL8_4_RC1:1.29
	REL8_4_BETA2:1.29
	REL8_4_BETA1:1.29
	REL7_4_25:1.8.2.5
	REL8_0_21:1.22
	REL8_1_17:1.23
	REL8_2_13:1.27
	REL8_3_7:1.27
	REL7_4_24:1.8.2.5
	REL8_0_20:1.22
	REL8_1_16:1.23
	REL8_2_12:1.27
	REL8_3_6:1.27
	REL7_4_23:1.8.2.5
	REL8_0_19:1.22
	REL8_1_15:1.23
	REL8_2_11:1.27
	REL8_3_5:1.27
	REL7_4_22:1.8.2.5
	REL8_0_18:1.22
	REL8_1_14:1.23
	REL8_2_10:1.27
	REL8_3_4:1.27
	REL7_4_21:1.8.2.5
	REL8_0_17:1.22
	REL8_1_13:1.23
	REL8_2_9:1.27
	REL8_3_3:1.27
	REL7_4_20:1.8.2.5
	REL8_0_16:1.22
	REL8_1_12:1.23
	REL8_2_8:1.27
	REL8_3_2:1.27
	REL8_2_7:1.27
	REL8_3_1:1.27
	REL8_3_STABLE:1.27.0.4
	REL8_3_0:1.27
	REL8_3_RC2:1.27
	REL7_3_21:1.2
	REL7_4_19:1.8.2.5
	REL8_0_15:1.22
	REL8_1_11:1.23
	REL8_2_6:1.27
	REL8_3_RC1:1.27
	REL8_3_BETA4:1.27
	REL8_3_BETA3:1.27
	REL8_3_BETA2:1.27
	REL8_3_BETA1:1.27
	REL7_3_20:1.2
	REL7_4_18:1.8.2.5
	REL8_0_14:1.22
	REL8_1_10:1.23
	REL8_2_5:1.27
	REL7_3_19:1.2
	REL7_4_17:1.8.2.5
	REL8_0_13:1.22
	REL8_1_9:1.23
	REL8_2_4:1.27
	REL8_0_12:1.22
	REL8_1_8:1.23
	REL8_2_3:1.27
	REL7_3_18:1.2
	REL7_4_16:1.8.2.5
	REL8_0_11:1.22
	REL8_1_7:1.23
	REL8_2_2:1.27
	REL8_0_10:1.22
	REL8_1_6:1.23
	REL8_2_1:1.27
	REL7_4_15:1.8.2.5
	REL7_3_17:1.2
	REL8_2_STABLE:1.27.0.2
	REL8_2_0:1.27
	REL8_2_RC1:1.27
	REL8_2_BETA3:1.27
	REL8_2_BETA2:1.27
	REL8_1_5:1.23
	REL8_0_9:1.22
	REL7_4_14:1.8.2.5
	REL7_3_16:1.2
	REL8_2_BETA1:1.27
	REL7_3_15:1.2
	REL7_4_13:1.8.2.5
	REL8_0_8:1.22
	REL8_1_4:1.23
	REL7_3_14:1.2
	REL7_4_12:1.8.2.5
	REL8_0_7:1.22
	REL8_1_3:1.23
	REL7_3_13:1.2
	REL7_4_11:1.8.2.5
	REL8_0_6:1.22
	REL8_1_2:1.23
	REL7_3_12:1.2
	REL7_4_10:1.8.2.5
	REL8_0_5:1.22
	REL8_1_1:1.23
	REL8_1_STABLE:1.23.0.2
	REL8_1_0:1.23
	REL8_1_0RC1:1.23
	REL8_1_0BETA4:1.23
	REL8_1_0BETA3:1.23
	REL7_3_11:1.2
	REL7_4_9:1.8.2.5
	REL8_0_4:1.22
	REL8_1_0BETA2:1.23
	REL8_1_0BETA1:1.23
	REL7_2_8:1.2
	REL7_3_10:1.2
	REL7_4_8:1.8.2.5
	REL8_0_3:1.22
	REL8_0_2:1.22
	REL7_2_7:1.2
	REL7_3_9:1.2
	REL7_4_7:1.8.2.5
	REL8_0_1:1.22
	REL8_0_STABLE:1.22.0.4
	REL8_0_0:1.22.0.2
	REL8_0_0RC5:1.22
	REL8_0_0RC4:1.22
	REL8_0_0RC3:1.22
	REL8_0_0RC2:1.22
	REL8_0_0RC1:1.22
	REL8_0_0BETA5:1.20
	REL8_0_0BETA4:1.20
	REL7_4_6:1.8.2.5
	REL7_3_8:1.2
	REL7_2_6:1.2
	REL8_0_0BETA3:1.20
	REL8_0_0BETA2:1.19
	REL7_2_5:1.2
	REL7_4_5:1.8.2.5
	REL7_3_7:1.2
	REL7_4_4:1.8.2.5
	REL8_0_0BETA1:1.19
	REL7_4_3:1.8.2.5
	REL7_4_2:1.8.2.2
	REL7_3_6:1.2
	REL7_4_1:1.8
	REL7_3_5:1.2
	REL7_4:1.8
	REL7_4_RC2:1.8
	REL7_4_STABLE:1.8.0.2
	REL7_4_RC1:1.8
	REL7_4_BETA5:1.7
	REL7_4_BETA4:1.5
	REL7_4_BETA3:1.3
	REL7_4_BETA2:1.2
	WIN32_DEV:1.2.0.8
	REL7_4_BETA1:1.2
	REL7_3_4:1.2
	REL7_3_2:1.2
	REL7_2_4:1.2
	REL7_3_STABLE:1.2.0.6
	REL7_2_3:1.2
	REL7_2_STABLE:1.2.0.4
	REL7_2:1.2
	REL7_2_RC2:1.2
	REL7_2_RC1:1.2
	REL7_2_BETA5:1.2
	REL7_2_BETA4:1.2
	REL7_2_BETA3:1.2
	REL7_2_BETA2:1.2
	REL7_2_BETA1:1.2
	REL7_1_2:1.2
	REL7_1_STABLE:1.2.0.2
	REL7_1_BETA:1.2
	REL7_1_BETA3:1.2
	REL7_1_BETA2:1.2
	REL7_1:1.2;
locks; strict;
comment	@# @;


1.29
date	2008.10.29.16.23.07;	author petere;	state Exp;
branches;
next	1.28;

1.28
date	2008.10.29.16.06.47;	author petere;	state Exp;
branches;
next	1.27;

1.27
date	2006.04.28.04.32.10;	author momjian;	state Exp;
branches;
next	1.26;

1.26
date	2006.04.27.22.28.42;	author momjian;	state Exp;
branches;
next	1.25;

1.25
date	2006.01.02.03.30.41;	author momjian;	state Exp;
branches;
next	1.24;

1.24
date	2005.12.30.21.43.41;	author momjian;	state Exp;
branches;
next	1.23;

1.23
date	2005.07.29.17.00.29;	author tgl;	state Exp;
branches;
next	1.22;

1.22
date	2004.12.02.18.11.40;	author momjian;	state Exp;
branches;
next	1.21;

1.21
date	2004.11.27.05.03.26;	author momjian;	state Exp;
branches;
next	1.20;

1.20
date	2004.09.24.00.21.32;	author tgl;	state Exp;
branches;
next	1.19;

1.19
date	2004.04.26.04.04.42;	author momjian;	state Exp;
branches;
next	1.18;

1.18
date	2004.04.23.18.15.55;	author momjian;	state Exp;
branches;
next	1.17;

1.17
date	2004.03.26.18.24.08;	author momjian;	state Exp;
branches;
next	1.16;

1.16
date	2004.03.25.22.12.37;	author momjian;	state Exp;
branches;
next	1.15;

1.15
date	2004.03.22.01.50.31;	author momjian;	state Exp;
branches;
next	1.14;

1.14
date	2004.03.14.23.51.48;	author momjian;	state Exp;
branches;
next	1.13;

1.13
date	2004.02.11.21.44.06;	author momjian;	state Exp;
branches;
next	1.12;

1.12
date	2004.01.08.04.24.24;	author momjian;	state Exp;
branches;
next	1.11;

1.11
date	2003.12.31.16.14.44;	author momjian;	state Exp;
branches;
next	1.10;

1.10
date	2003.12.30.23.13.51;	author momjian;	state Exp;
branches;
next	1.9;

1.9
date	2003.12.23.18.40.53;	author tgl;	state Exp;
branches;
next	1.8;

1.8
date	2003.10.25.15.32.11;	author petere;	state Exp;
branches
	1.8.2.1;
next	1.7;

1.7
date	2003.10.09.14.40.36;	author momjian;	state Exp;
branches;
next	1.6;

1.6
date	2003.10.09.03.20.34;	author momjian;	state Exp;
branches;
next	1.5;

1.5
date	2003.09.27.16.24.45;	author momjian;	state Exp;
branches;
next	1.4;

1.4
date	2003.09.27.15.32.48;	author momjian;	state Exp;
branches;
next	1.3;

1.3
date	2003.09.13.14.49.51;	author momjian;	state Exp;
branches;
next	1.2;

1.2
date	2000.10.21.22.36.14;	author petere;	state Exp;
branches;
next	1.1;

1.1
date	2000.10.10.21.22.29;	author petere;	state Exp;
branches;
next	;

1.8.2.1
date	2004.01.01.17.35.32;	author momjian;	state Exp;
branches;
next	1.8.2.2;

1.8.2.2
date	2004.01.08.04.21.20;	author momjian;	state Exp;
branches;
next	1.8.2.3;

1.8.2.3
date	2004.03.14.23.51.57;	author momjian;	state Exp;
branches;
next	1.8.2.4;

1.8.2.4
date	2004.03.25.22.13.44;	author momjian;	state Exp;
branches;
next	1.8.2.5;

1.8.2.5
date	2004.03.26.18.24.16;	author momjian;	state Exp;
branches;
next	;


desc
@@


1.29
log
@Move forgotten comment closer to where it matters.
@
text
@if test "$SUN_STUDIO_CC" = yes ; then
  CC="$CC -Xa"			# relaxed ISO C mode
  CFLAGS="-v"			# -v is like gcc -Wall
  if test "$enable_debug" != yes; then
    CFLAGS="$CFLAGS -O"		# any optimization breaks debug
  fi

  # Pick the right test-and-set (TAS) code for the Sun compiler.
  # We would like to use in-line assembler, but the compiler
  # requires *.il files to be on every compile line, making
  # the build system too fragile.
  case $host_cpu in
    sparc)
	need_tas=yes
	tas_file=sunstudio_sparc.s
    ;;
    i?86|x86_64)
	need_tas=yes
	tas_file=sunstudio_x86.s
    ;;
  esac
fi
@


1.28
log
@Support for Sun Studio compiler on Linux

This basically takes some build system code that was previously labeled
"Solaris" and ties it to the compiler rather than the operating system.

Author: Julius Stroffek <Julius.Stroffek@@Sun.COM>
@
text
@a22 2

# -D_POSIX_PTHREAD_SEMANTICS enables 5-arg getpwuid_r, among other things
@


1.27
log
@Remove extra 'else' in solaris compiler code.
@
text
@d1 1
a1 1
if test "$GCC" != yes ; then
d3 1
a3 1
  CFLAGS="-v -DSUNOS4_CC"	# -v is like gcc -Wall
d10 1
a10 1
  # requires *.il files to be on every compile line, making 
d12 2
a13 2
  case $host in
    sparc-*-solaris*)
d15 1
a15 1
	tas_file=solaris_sparc.s
d17 1
a17 1
    i?86-*-solaris*)
d19 1
a19 1
	tas_file=solaris_x86.s
@


1.26
log
@Rewrite Solaris compiler tas() assembly routines, merge i386 and x86_64
assembler files, renamed as solaris_x86.s.

Theo Schlossnagle
@
text
@d7 1
a7 1
else
@


1.25
log
@Remove unnecessary assignment, per Tom.
@
text
@d7 9
a15 10
fi

# Pick right test-and-set (TAS) code.  We need out-of-line assembler
# when not using gcc.
case $host in
  sparc-*-solaris*)
	if test "$GCC" != yes ; then
		need_tas=yes
		tas_file=solaris_sparc.s
	fi
d17 3
a19 11
  i?86-*-solaris*)
	if test "$GCC" != yes ; then
		if isainfo | grep amd64
		then
			need_tas=yes
			tas_file=solaris_x86_64.s
		else
			need_tas=yes
			tas_file=solaris_i386.s
		fi
	fi
d21 2
a22 1
esac
@


1.24
log
@Add support for Solaris x86_64 using Sun's compiler.

Pierre Girard
@
text
@a19 1
		soarch=`isainfo`
@


1.23
log
@It appears we need -DSUNOS4_CC for both solaris and sunos4 templates.
Per report from Andrew Clark.
@
text
@d20 9
a28 2
		need_tas=yes
		tas_file=solaris_i386.s
@


1.22
log
@Don't bother adding to cflags/cppflags, just set them because configure
handles that, and make solaris debug use no optimization.
@
text
@d3 1
a3 1
  CFLAGS="-v"			# -v is like gcc -Wall
@


1.21
log
@Add to CPPFLAGS/CFLAGS in template files, don't over-ride them.
@
text
@d3 4
a6 1
  CFLAGS="$CFLAGS -O -v"		# -v is like gcc -Wall
@


1.20
log
@Fix TAS assembly stuff for Solaris/386.  (I'm not in a position to
actually test this, but it couldn't be broken any worse than it was...)
@
text
@d3 1
a3 1
  CFLAGS="-O -v"		# -v is like gcc -Wall
@


1.19
log
@Unconditionally define:

	-D_REENTRANT -D_THREAD_SAFE -D_POSIX_PTHREAD_SEMANTICS

for all ports.  It can't hurt if they are not supported, but it makes
our job easier for porting.

Should fix Darwin compile and other platforms without mucking with the
thread detection code.
@
text
@d6 2
a7 1
# Pick right test-and-set (TAS) code.
d9 12
a20 2
  sparc-*-solaris*)  need_tas=yes; tas_file=solaris_sparc.s ;;
  i?86-*-solaris*)   need_tas=yes; tas_file=solaris_i386.s ;;
@


1.18
log
@Add new auto-detection of thread flags.

Allow additional thread flags to be added via port templates.

Change thread flag names to PTHREAD_CFLAGS and PTHREAD_LIBS to match new
configure script.
@
text
@a12 1
PTHREAD_CFLAGS="-D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS"
@


1.17
log
@Add -D_REENTRANT for Solaris threading.
@
text
@a11 1
# tools/thread/thread_test must be run
d13 1
a13 5
THREAD_CPPFLAGS="-D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS"
if test "$GCC" != yes 
then	THREAD_CPPFLAGS="$THREAD_CPPFLAGS -mt"
fi
THREAD_LIBS="-lpthread"
@


1.16
log
@Update gcc solaris flags.
@
text
@d14 1
a14 1
THREAD_CPPFLAGS="-D_POSIX_PTHREAD_SEMANTICS"
@


1.15
log
@Add mention of "-D_POSIX_PTHREAD_SEMANTICS" enabling 5-arg getpwuid_r().
@
text
@d14 3
a16 5
if test "$GCC" = yes 
then	THREAD_CPPFLAGS="-D_POSIX_PTHREAD_SEMANTICS"
	THREAD_LIBS="-pthread"
else	THREAD_CPPFLAGS="-mt -D_POSIX_PTHREAD_SEMANTICS"
	THREAD_LIBS="-lpthread"
d18 1
@


1.14
log
@Update Solaris thread flags, per Jim Seymour
@
text
@d13 1
@


1.13
log
@Check and set thread-safe functions separately, rather than as a single
variable.

Remove thread locking for non-thread-safe functions, instead throw a
compile error.

Platforms will have to re-run tools/thread to record their thread
safety.
@
text
@d14 3
a16 2
then	THREAD_LIBS="-pthread"
else	THREAD_CPPFLAGS="-mt"
a18 1

@


1.12
log
@Fix Solaris thread build settings for non-gcc compilers.
@
text
@d12 1
a12 2
THREAD_SUPPORT=yes
NEED_REENTRANT_FUNCS=yes	# 5.6 2003-09-13
@


1.11
log
@Make Solaris non-gcc thread flag "-mt" a compile flag, not a link flag.
@
text
@d14 4
a17 2
if test "$GCC" != yes 
then 	THREAD_CPPFLAGS="-mt"
a18 1
THREAD_LIBS="-pthread"
@


1.10
log
@Add "-mt" link flag for Solaris non-gcc compiles when using threads ---
required.
@
text
@a13 1
THREAD_LIBS="-pthread"
d15 1
a15 1
then 	THREAD_LIBS="-mt $THREAD_LIBS"
d17 1
@


1.9
log
@Push responsibility for selecting out-of-line-assembler TAS code out to
the platform template files, instead of doing it directly in configure.in.
This seems cleaner, and also opens the door to making the choice be
dependent on the compiler being used.
@
text
@d15 4
@


1.8
log
@Fix CFLAGS selection to actually work.  Add test to detect whether gcc's
option -fno-strict-aliasing is available.
@
text
@d6 6
@


1.8.2.1
log
@Backpatch Solaris non-gcc thread compile fix to 7.4.X.
@
text
@a7 3
if test "$GCC" != yes 
then 	THREAD_CPPFLAGS="-mt"
fi
@


1.8.2.2
log
@Update Solaris thread setting for non-gcc compilers.
@
text
@a5 6
# Pick right test-and-set (TAS) code.
case $host in
  sparc-*-solaris*)  need_tas=yes; tas_file=solaris_sparc.s ;;
  i?86-*-solaris*)   need_tas=yes; tas_file=solaris_i386.s ;;
esac

d8 2
a9 4
if test "$GCC" = yes 
then	THREAD_LIBS="-pthread"
else	THREAD_CPPFLAGS="-mt"
	THREAD_LIBS="-lpthread"
d11 1
a11 1

@


1.8.2.3
log
@Update Solaris thread flags, per Jim Seymour
@
text
@d15 2
a16 3
then	THREAD_CPPFLAGS="-D_POSIX_PTHREAD_SEMANTICS"
	THREAD_LIBS="-pthread"
else	THREAD_CPPFLAGS="-mt -D_POSIX_PTHREAD_SEMANTICS"
d19 1
@


1.8.2.4
log
@Update solaris for threading.
@
text
@d14 5
a18 3
THREAD_CPPFLAGS="-D_POSIX_PTHREAD_SEMANTICS"
if test "$GCC" != yes 
then	THREAD_CPPFLAGS="$THREAD_CPPFLAGS -mt"
a19 1
THREAD_LIBS="-lpthread"
@


1.8.2.5
log
@Add -D_REENTRANT for Solaris threading.
@
text
@d14 1
a14 1
THREAD_CPPFLAGS="-D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS"
@


1.7
log
@Make template CFLAGS handling consistent.
@
text
@d3 1
a3 1
  CFLAGS="$CFLAGS -O -v"	# -v is like gcc -Wall
a8 1

@


1.6
log
@This centralizes the optimization defaults into configure.in, rather
than having CFLAGS= in the template files.

It uses -O2 for gcc (generated by autoconf), and -O for non-gcc, unless
the template overrides it.
@
text
@d3 1
a3 1
  CFLAGS="-O -v"		# -v is like gcc -Wall
@


1.5
log
@Finalize configuration of thread_test program.
@
text
@d1 1
a1 3
if test "$GCC" = yes ; then
  CFLAGS=
else
d3 1
a3 1
  CFLAGS=-v			# -v is like gcc -Wall
@


1.4
log
@Rename thread compile flag.  Move thread test program to tools/thread,
and improve tests.
@
text
@d8 1
a8 1
SUPPORTS_THREADS=yes
@


1.3
log
@Attempt threading in this order:

 *      use non-*_r function names if they are all thread-safe
 *          (NEED_REENTRANT_FUNCS=no)
 *      use *_r functions if they exist (configure test)
 *      do our own locking and copying of non-threadsafe functions

New to this patch is the last option.
@
text
@d10 1
a10 1
THREAD_CFLAGS="-pthread"
@


1.2
log
@Move DLSUFFIX, AROPT, and CFLAGS_SL settings from template to
Makefile.port, since they are of no use to configure and much of the
library magic happens in Makefile.port anyway.

Use __alpha, not __alpha__, since the former is universally available.
Remove -DNOFIXADE from the compile command line and put it in the port
include file.
@
text
@d7 5
@


1.1
log
@Unify solaris_i386 and solaris_sparc templates.  They were almost identical
anyway, the rest being due to them not being kept in sync.  Add configure
test for lorder and use it (on Solaris) when found.
@
text
@a0 3
AROPT=crs
DLSUFFIX=.so

a2 1
  SHARED_LIB=-fPIC
a5 1
  SHARED_LIB=-KPIC
@
