Author: jonathan
Date: 2006-02-20 21:34:23 -0500 (Mon, 20 Feb 2006)
New Revision: 312
Added:
trunk/stdutil/Makefile
trunk/stdutil/buildtools/
Removed:
trunk/stdutil/Makefile.in
trunk/stdutil/src/stdtest/
Modified:
trunk/stdutil/STDUTIL_LICENSE
trunk/stdutil/configure
trunk/stdutil/configure.in
trunk/stdutil/src/Makefile.in
trunk/stdutil/src/stdthread.c
Log:
Update to stdutil-1.0.0beta4-2006-02-20.
Merged src/Makefile.in spread specific changes to build with VPATH
Copied: trunk/stdutil/Makefile (from rev 311, vendor/stdutil/current/Makefile)
===================================================================
--- trunk/stdutil/Makefile (rev 0)
+++ trunk/stdutil/Makefile 2006-02-21 02:34:23 UTC (rev 312)
@@ -0,0 +1,17 @@
+all:
+ cd src; $(MAKE)
+
+clean:
+ rm -f *~ core*
+ cd src; $(MAKE) clean
+
+distclean:
+ rm -f *~ core* config.*
+ rm -rf autom4te.cache
+ cd src; $(MAKE) distclean
+
+uberclean:
+ rm -f *~ core* config.*
+ rm -rf autom4te.cache
+ rm -f configure
+ cd src; $(MAKE) uberclean
Deleted: trunk/stdutil/Makefile.in
===================================================================
--- trunk/stdutil/Makefile.in 2006-02-21 01:46:24 UTC (rev 311)
+++ trunk/stdutil/Makefile.in 2006-02-21 02:34:23 UTC (rev 312)
@@ -1,18 +0,0 @@
-all:
- cd src; $(MAKE)
-
-clean:
- cd src; $(MAKE) clean
- rm -rf *~ core*
- rm -rf autom4te.cache
-
-distclean:
- cd src; $(MAKE) distclean
- rm -f config.* Makefile *~ core*
- rm -rf autom4te.cache
-
-veryclean: distclean
- rm -f configure
-
-install:
- cd src; $(MAKE) install
Modified: trunk/stdutil/STDUTIL_LICENSE
===================================================================
--- trunk/stdutil/STDUTIL_LICENSE 2006-02-21 01:46:24 UTC (rev 311)
+++ trunk/stdutil/STDUTIL_LICENSE 2006-02-21 02:34:23 UTC (rev 312)
@@ -31,7 +31,7 @@
* The Johns Hopkins University
* 3400 N. Charles St., MD 21218
*
- * or email [email protected].
+ * or email director [at] cnds.jhu.edu.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
Copied: trunk/stdutil/buildtools (from rev 311, vendor/stdutil/current/buildtools)
Modified: trunk/stdutil/configure
===================================================================
--- trunk/stdutil/configure 2006-02-21 01:46:24 UTC (rev 311)
+++ trunk/stdutil/configure 2006-02-21 02:34:23 UTC (rev 312)
@@ -309,7 +309,7 @@
# include <unistd.h>
#endif"
-ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT AR CPP EGREP LIBOBJS LTLIBOBJS'
+ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT AR LN_S INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA THLDFLAGS THLIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os SHCC SHCFLAGS SHCPPFLAGS SHLD SHLDFLAGS SHLIBS DYNLIBEXT STANDARD_LIBS SHARED_LIBS CPP EGREP LIBOBJS LTLIBOBJS'
ac_subst_files=''
# Initialize some variables set by options.
@@ -830,6 +830,10 @@
_ACEOF
cat <<\_ACEOF
+
+System types:
+ --build=BUILD configure for building on BUILD [guessed]
+ --host=HOST cross-compile to build programs to run on HOST [BUILD]
_ACEOF
fi
@@ -1284,13 +1288,47 @@
+
+ac_aux_dir=
+for ac_dir in buildtools $srcdir/buildtools; do
+ if test -f $ac_dir/install-sh; then
+ ac_aux_dir=$ac_dir
+ ac_install_sh="$ac_aux_dir/install-sh -c"
+ break
+ elif test -f $ac_dir/install.sh; then
+ ac_aux_dir=$ac_dir
+ ac_install_sh="$ac_aux_dir/install.sh -c"
+ break
+ elif test -f $ac_dir/shtool; then
+ ac_aux_dir=$ac_dir
+ ac_install_sh="$ac_aux_dir/shtool install -c"
+ break
+ fi
+done
+if test -z "$ac_aux_dir"; then
+ { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in buildtools $srcdir/buildtools" >&5
+echo "$as_me: error: cannot find install-sh or install.sh in buildtools $srcdir/buildtools" >&2;}
+ { (exit 1); exit 1; }; }
+fi
+ac_config_guess="$SHELL $ac_aux_dir/config.guess"
+ac_config_sub="$SHELL $ac_aux_dir/config.sub"
+ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure.
+
ac_config_headers="$ac_config_headers src/stdutil/private/stdarch.h"
+
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
set dummy ${ac_tool_prefix}gcc; ac_word=$2
@@ -2216,35 +2254,37 @@
ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
-for ac_prog in ar
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
+# Extract the first word of "ar", so it can be a program name with args.
+set dummy ar; ac_word=$2
echo "$as_me:$LINENO: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_prog_AR+set}" = set; then
+if test "${ac_cv_path_AR+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- if test -n "$AR"; then
- ac_cv_prog_AR="$AR" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+ case $AR in
+ [\\/]* | ?:[\\/]*)
+ ac_cv_path_AR="$AR" # Let the user override the test with a path.
+ ;;
+ *)
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_AR="$ac_prog"
+ ac_cv_path_AR="$as_dir/$ac_word$ac_exec_ext"
echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
done
+ ;;
+esac
fi
-fi
-AR=$ac_cv_prog_AR
+AR=$ac_cv_path_AR
+
if test -n "$AR"; then
echo "$as_me:$LINENO: result: $AR" >&5
echo "${ECHO_T}$AR" >&6
@@ -2253,16 +2293,195 @@
echo "${ECHO_T}no" >&6
fi
- test -n "$AR" && break
+echo "$as_me:$LINENO: checking whether ln -s works" >&5
+echo $ECHO_N "checking whether ln -s works... $ECHO_C" >&6
+LN_S=$as_ln_s
+if test "$LN_S" = "ln -s"; then
+ echo "$as_me:$LINENO: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+else
+ echo "$as_me:$LINENO: result: no, using $LN_S" >&5
+echo "${ECHO_T}no, using $LN_S" >&6
+fi
+
+# Find a good install program. We prefer a C program (faster),
+# so one script is as good as another. But avoid the broken or
+# incompatible versions:
+# SysV /etc/install, /usr/sbin/install
+# SunOS /usr/etc/install
+# IRIX /sbin/install
+# AIX /bin/install
+# AmigaOS /C/install, which installs bootblocks on floppy discs
+# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
+# AFS /usr/afsws/bin/install, which mishandles nonexistent args
+# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
+# OS/2's system install, which has a completely different semantic
+# ./install, which can be erroneously created by make from ./install.sh.
+echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5
+echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6
+if test -z "$INSTALL"; then
+if test "${ac_cv_path_install+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ # Account for people who put trailing slashes in PATH elements.
+case $as_dir/ in
+ ./ | .// | /cC/* | \
+ /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
+ ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \
+ /usr/ucb/* ) ;;
+ *)
+ # OSF1 and SCO ODT 3.0 have their own names for install.
+ # Don't use installbsd from OSF since it installs stuff as root
+ # by default.
+ for ac_prog in ginstall scoinst install; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
+ if test $ac_prog = install &&
+ grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
+ # AIX install. It has an incompatible calling convention.
+ :
+ elif test $ac_prog = install &&
+ grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
+ # program-specific install script used by HP pwplus--don't use.
+ :
+ else
+ ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
+ break 3
+ fi
+ fi
+ done
+ done
+ ;;
+esac
done
+fi
+ if test "${ac_cv_path_install+set}" = set; then
+ INSTALL=$ac_cv_path_install
+ else
+ # As a last resort, use the slow shell script. We don't cache a
+ # path for INSTALL within a source directory, because that will
+ # break other packages using the cache if that directory is
+ # removed, or if the path is relative.
+ INSTALL=$ac_install_sh
+ fi
+fi
+echo "$as_me:$LINENO: result: $INSTALL" >&5
+echo "${ECHO_T}$INSTALL" >&6
-echo "$as_me:$LINENO: checking for pthread_mutex_init in -lpthread" >&5
-echo $ECHO_N "checking for pthread_mutex_init in -lpthread... $ECHO_C" >&6
-if test "${ac_cv_lib_pthread_pthread_mutex_init+set}" = set; then
+# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
+# It thinks the first close brace ends the variable substitution.
+test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
+
+test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
+
+test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
+
+
+if test -z "$AR" ; then
+ { { echo "$as_me:$LINENO: error: *** 'ar' missing, please install or fix your \$PATH ***" >&5
+echo "$as_me: error: *** 'ar' missing, please install or fix your \$PATH ***" >&2;}
+ { (exit 1); exit 1; }; }
+fi
+
+if test -z "$LD" ; then
+ LD=$CC
+fi
+
+CFLAGS=""
+
+if test "$GCC" = "yes"; then
+ CFLAGS="-Wall"
+fi
+
+# Check for threading parameters (store temporarily into main vars then put into specific ones)
+
+OLDLDFLAGS=$LDFLAGS
+LDFLAGS=
+
+echo "$as_me:$LINENO: checking if we need -pthread for threads" >&5
+echo $ECHO_N "checking if we need -pthread for threads... $ECHO_C" >&6
+ if test "${ac_ldflag_pthread+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
+ ac_save_LDFLAGS="$LDFLAGS"
+ LDFLAGS="-pthread $LDFLAGS"
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+char pthread_create();
+int
+main ()
+{
+pthread_create();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+ (eval $ac_link) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest$ac_exeext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ eval "ac_ldflag_pthread=yes"
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+eval "ac_ldflag_pthread=no"
+fi
+rm -f conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext,
+ LIBS="$ac_save_LDFLAGS"
+
+fi
+
+ if eval "test \"`echo $ac_ldflag_pthread`\" = yes"; then
+ echo "$as_me:$LINENO: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+ else
+ echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+ fi
+
+THLDFLAGS=$LDFLAGS
+
+LDFLAGS=$OLDLDFLAGS
+
+OLDLIBS=$LIBS
+LIBS=
+
+echo "$as_me:$LINENO: checking for pthread_create in -lpthread" >&5
+echo $ECHO_N "checking for pthread_create in -lpthread... $ECHO_C" >&6
+if test "${ac_cv_lib_pthread_pthread_create+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lpthread $LIBS"
cat >conftest.$ac_ext <<_ACEOF
@@ -2278,11 +2497,11 @@
#endif
/* We use char because int might match the return type of a gcc2
builtin and then its argument prototype would still apply. */
-char pthread_mutex_init ();
+char pthread_create ();
int
main ()
{
-pthread_mutex_init ();
+pthread_create ();
;
return 0;
}
@@ -2309,20 +2528,20 @@
ac_status=$?
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); }; }; then
- ac_cv_lib_pthread_pthread_mutex_init=yes
+ ac_cv_lib_pthread_pthread_create=yes
else
echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
-ac_cv_lib_pthread_pthread_mutex_init=no
+ac_cv_lib_pthread_pthread_create=no
fi
rm -f conftest.err conftest.$ac_objext \
conftest$ac_exeext conftest.$ac_ext
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:$LINENO: result: $ac_cv_lib_pthread_pthread_mutex_init" >&5
-echo "${ECHO_T}$ac_cv_lib_pthread_pthread_mutex_init" >&6
-if test $ac_cv_lib_pthread_pthread_mutex_init = yes; then
+echo "$as_me:$LINENO: result: $ac_cv_lib_pthread_pthread_create" >&5
+echo "${ECHO_T}$ac_cv_lib_pthread_pthread_create" >&6
+if test $ac_cv_lib_pthread_pthread_create = yes; then
cat >>confdefs.h <<_ACEOF
#define HAVE_LIBPTHREAD 1
_ACEOF
@@ -2331,13 +2550,259 @@
fi
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
+echo "$as_me:$LINENO: checking for thr_create in -lthread" >&5
+echo $ECHO_N "checking for thr_create in -lthread... $ECHO_C" >&6
+if test "${ac_cv_lib_thread_thr_create+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-lthread $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+/* Override any gcc2 internal prototype to avoid an error. */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char thr_create ();
+int
+main ()
+{
+thr_create ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+ (eval $ac_link) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest$ac_exeext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_cv_lib_thread_thr_create=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_cv_lib_thread_thr_create=no
+fi
+rm -f conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:$LINENO: result: $ac_cv_lib_thread_thr_create" >&5
+echo "${ECHO_T}$ac_cv_lib_thread_thr_create" >&6
+if test $ac_cv_lib_thread_thr_create = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_LIBTHREAD 1
+_ACEOF
+
+ LIBS="-lthread $LIBS"
+
+fi
+
+
+echo "$as_me:$LINENO: checking for sem_wait in -lposix4" >&5
+echo $ECHO_N "checking for sem_wait in -lposix4... $ECHO_C" >&6
+if test "${ac_cv_lib_posix4_sem_wait+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-lposix4 $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+/* Override any gcc2 internal prototype to avoid an error. */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char sem_wait ();
+int
+main ()
+{
+sem_wait ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+ (eval $ac_link) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest$ac_exeext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_cv_lib_posix4_sem_wait=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_cv_lib_posix4_sem_wait=no
+fi
+rm -f conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:$LINENO: result: $ac_cv_lib_posix4_sem_wait" >&5
+echo "${ECHO_T}$ac_cv_lib_posix4_sem_wait" >&6
+if test $ac_cv_lib_posix4_sem_wait = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_LIBPOSIX4 1
+_ACEOF
+
+ LIBS="-lposix4 $LIBS"
+
+fi
+
+THLIBS=$LIBS
+
+LIBS=$OLDLIBS
+
+# Check on host for dynamic library building rules
+
+# Make sure we can run config.sub.
+$ac_config_sub sun4 >/dev/null 2>&1 ||
+ { { echo "$as_me:$LINENO: error: cannot run $ac_config_sub" >&5
+echo "$as_me: error: cannot run $ac_config_sub" >&2;}
+ { (exit 1); exit 1; }; }
+
+echo "$as_me:$LINENO: checking build system type" >&5
+echo $ECHO_N "checking build system type... $ECHO_C" >&6
+if test "${ac_cv_build+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_cv_build_alias=$build_alias
+test -z "$ac_cv_build_alias" &&
+ ac_cv_build_alias=`$ac_config_guess`
+test -z "$ac_cv_build_alias" &&
+ { { echo "$as_me:$LINENO: error: cannot guess build type; you must specify one" >&5
+echo "$as_me: error: cannot guess build type; you must specify one" >&2;}
+ { (exit 1); exit 1; }; }
+ac_cv_build=`$ac_config_sub $ac_cv_build_alias` ||
+ { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_build_alias failed" >&5
+echo "$as_me: error: $ac_config_sub $ac_cv_build_alias failed" >&2;}
+ { (exit 1); exit 1; }; }
+
+fi
+echo "$as_me:$LINENO: result: $ac_cv_build" >&5
+echo "${ECHO_T}$ac_cv_build" >&6
+build=$ac_cv_build
+build_cpu=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
+build_vendor=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
+build_os=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
+
+
+echo "$as_me:$LINENO: checking host system type" >&5
+echo $ECHO_N "checking host system type... $ECHO_C" >&6
+if test "${ac_cv_host+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_cv_host_alias=$host_alias
+test -z "$ac_cv_host_alias" &&
+ ac_cv_host_alias=$ac_cv_build_alias
+ac_cv_host=`$ac_config_sub $ac_cv_host_alias` ||
+ { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_host_alias failed" >&5
+echo "$as_me: error: $ac_config_sub $ac_cv_host_alias failed" >&2;}
+ { (exit 1); exit 1; }; }
+
+fi
+echo "$as_me:$LINENO: result: $ac_cv_host" >&5
+echo "${ECHO_T}$ac_cv_host" >&6
+host=$ac_cv_host
+host_cpu=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
+host_vendor=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
+host_os=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
+
+
+
+case "$host" in
+*-*-darwin*)
+ SHCC=$CC
+ SHCFLAGS="$CFLAGS -fPIC"
+ SHCPPFLAGS="$CPPFLAGS"
+ SHLD="$CC -dynamiclib"
+ SHLDFLAGS="$SHLDFLAGS $LDFLAGS"
+ SHLIBS=$LIBS
+ DYNLIBEXT=dylib
+ STANDARD_LIBS="\$(STATIC_THREADED_RELEASE_LIB) \$(SHARED_THREADED_RELEASE_LIB)"
+ SHARED_LIBS="\$(SHARED_LIBS)"
+ ;;
+mips-sgi-irix*)
+ CC=cc
+ CFLAGS="-n32 -signed"
+ DYNLIBEXT=
+ STANDARD_LIBS="\$(STATIC_THREADED_RELEASE_LIB)"
+ SHARED_LIBS=
+ ;;
+*-*-*)
+ SHCC=$CC
+ SHCFLAGS="$CFLAGS -fPIC"
+ SHCPPFLAGS="$CPPFLAGS"
+ SHLD="$CC -shared"
+ SHLDFLAGS="$SHLDFLAGS $LDFLAGS"
+ SHLIBS=$LIBS
+ DYNLIBEXT=so
+ STANDARD_LIBS="\$(STATIC_THREADED_RELEASE_LIB) \$(SHARED_THREADED_RELEASE_LIB)"
+ SHARED_LIBS="\$(SHARED_LIBS)"
+ ;;
+esac
+
+
+
+
+
+
+
+
+
+
+
+# Check sizeof basic types and figure out endianness
+
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
@@ -7038,7 +7503,7 @@
rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
fi
- ac_config_files="$ac_config_files Makefile src/Makefile"
+ ac_config_files="$ac_config_files src/Makefile"
cat >confcache <<\_ACEOF
# This file is a shell script that caches the results of configure
# tests run on this system so they can be shared between configure
@@ -7469,6 +7934,7 @@
This config.status script is free software; the Free Software Foundation
gives unlimited permission to copy, distribute and modify it."
srcdir=$srcdir
+INSTALL="$INSTALL"
_ACEOF
cat >>$CONFIG_STATUS <<\_ACEOF
@@ -7563,7 +8029,6 @@
do
case "$ac_config_target" in
# Handling of arguments.
- "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;;
"src/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/Makefile" ;;
"src/stdutil/private/stdarch.h" ) CONFIG_HEADERS="$CONFIG_HEADERS src/stdutil/private/stdarch.h" ;;
*) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5
@@ -7658,6 +8123,29 @@
s,@EXEEXT@,$EXEEXT,;t t
s,@OBJEXT@,$OBJEXT,;t t
s,@AR@,$AR,;t t
+s,@LN_S@,$LN_S,;t t
+s,@INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t
+s,@INSTALL_SCRIPT@,$INSTALL_SCRIPT,;t t
+s,@INSTALL_DATA@,$INSTALL_DATA,;t t
+s,@THLDFLAGS@,$THLDFLAGS,;t t
+s,@THLIBS@,$THLIBS,;t t
+s,@build@,$build,;t t
+s,@build_cpu@,$build_cpu,;t t
+s,@build_vendor@,$build_vendor,;t t
+s,@build_os@,$build_os,;t t
+s,@host@,$host,;t t
+s,@host_cpu@,$host_cpu,;t t
+s,@host_vendor@,$host_vendor,;t t
+s,@host_os@,$host_os,;t t
+s,@SHCC@,$SHCC,;t t
+s,@SHCFLAGS@,$SHCFLAGS,;t t
+s,@SHCPPFLAGS@,$SHCPPFLAGS,;t t
+s,@SHLD@,$SHLD,;t t
+s,@SHLDFLAGS@,$SHLDFLAGS,;t t
+s,@SHLIBS@,$SHLIBS,;t t
+s,@DYNLIBEXT@,$DYNLIBEXT,;t t
+s,@STANDARD_LIBS@,$STANDARD_LIBS,;t t
+s,@SHARED_LIBS@,$SHARED_LIBS,;t t
s,@CPP@,$CPP,;t t
s,@EGREP@,$EGREP,;t t
s,@LIBOBJS@,$LIBOBJS,;t t
@@ -7823,6 +8311,10 @@
esac
+ case $INSTALL in
+ [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;;
+ *) ac_INSTALL=$ac_top_builddir$INSTALL ;;
+ esac
if test x"$ac_file" != x-; then
{ echo "$as_me:$LINENO: creating $ac_file" >&5
@@ -7884,6 +8376,7 @@
s,@abs_builddir@,$ac_abs_builddir,;t t
s,@top_builddir@,$ac_top_builddir,;t t
s,@abs_top_builddir@,$ac_abs_top_builddir,;t t
+s,@INSTALL@,$ac_INSTALL,;t t
" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out
rm -f $tmp/stdin
if test x"$ac_file" != x-; then
Modified: trunk/stdutil/configure.in
===================================================================
--- trunk/stdutil/configure.in 2006-02-21 01:46:24 UTC (rev 311)
+++ trunk/stdutil/configure.in 2006-02-21 02:34:23 UTC (rev 312)
@@ -1,10 +1,95 @@
AC_INIT(src/stdutil/stddefines.h)
+
+AC_CONFIG_AUX_DIR(buildtools)
AC_CONFIG_HEADER(src/stdutil/private/stdarch.h)
-AC_PROG_CC
-AC_CHECK_PROGS(AR, ar)
-AC_CHECK_LIB(pthread, pthread_mutex_init)
+
AC_LANG_C
+AC_PROG_CC
+AC_PATH_PROG(AR, ar)
+AC_PROG_LN_S
+AC_PROG_INSTALL
+
+if test -z "$AR" ; then
+ AC_MSG_ERROR([*** 'ar' missing, please install or fix your \$PATH ***])
+fi
+
+if test -z "$LD" ; then
+ LD=$CC
+fi
+
+CFLAGS=""
+
+if test "$GCC" = "yes"; then
+ CFLAGS="-Wall"
+fi
+
+# Check for threading parameters (store temporarily into main vars then put into specific ones)
+
+OLDLDFLAGS=$LDFLAGS
+LDFLAGS=
+AC_PTHREAD_FREEBSD
+THLDFLAGS=$LDFLAGS
+AC_SUBST(THLDFLAGS)
+LDFLAGS=$OLDLDFLAGS
+
+OLDLIBS=$LIBS
+LIBS=
+AC_CHECK_LIB(pthread, pthread_create)
+AC_CHECK_LIB(thread, thr_create)
+AC_CHECK_LIB(posix4, sem_wait)
+THLIBS=$LIBS
+AC_SUBST(THLIBS)
+LIBS=$OLDLIBS
+
+# Check on host for dynamic library building rules
+
+AC_CANONICAL_HOST
+
+case "$host" in
+*-*-darwin*)
+ SHCC=$CC
+ SHCFLAGS="$CFLAGS -fPIC"
+ SHCPPFLAGS="$CPPFLAGS"
+ SHLD="$CC -dynamiclib"
+ SHLDFLAGS="$SHLDFLAGS $LDFLAGS"
+ SHLIBS=$LIBS
+ DYNLIBEXT=dylib
+ STANDARD_LIBS="\$(STATIC_THREADED_RELEASE_LIB) \$(SHARED_THREADED_RELEASE_LIB)"
+ SHARED_LIBS="\$(SHARED_LIBS)"
+ ;;
+mips-sgi-irix*)
+ CC=cc
+ CFLAGS="-n32 -signed"
+ DYNLIBEXT=
+ STANDARD_LIBS="\$(STATIC_THREADED_RELEASE_LIB)"
+ SHARED_LIBS=
+ ;;
+*-*-*)
+ SHCC=$CC
+ SHCFLAGS="$CFLAGS -fPIC"
+ SHCPPFLAGS="$CPPFLAGS"
+ SHLD="$CC -shared"
+ SHLDFLAGS="$SHLDFLAGS $LDFLAGS"
+ SHLIBS=$LIBS
+ DYNLIBEXT=so
+ STANDARD_LIBS="\$(STATIC_THREADED_RELEASE_LIB) \$(SHARED_THREADED_RELEASE_LIB)"
+ SHARED_LIBS="\$(SHARED_LIBS)"
+ ;;
+esac
+
+AC_SUBST(SHCC)
+AC_SUBST(SHCFLAGS)
+AC_SUBST(SHCPPFLAGS)
+AC_SUBST(SHLD)
+AC_SUBST(SHLDFLAGS)
+AC_SUBST(SHLIBS)
+AC_SUBST(DYNLIBEXT)
+AC_SUBST(STANDARD_LIBS)
+AC_SUBST(SHARED_LIBS)
+
+# Check sizeof basic types and figure out endianness
+
AC_CHECK_SIZEOF(char, 1)
AC_CHECK_SIZEOF(short, 2)
AC_CHECK_SIZEOF(int, 4)
@@ -629,4 +714,4 @@
],
[AC_DEFINE_UNQUOTED(STDENDIAN64_NET7_FROM_HOST, 0) AC_DEFINE_UNQUOTED(STDENDIAN64_HOST0_FROM_NET, 7) AC_MSG_WARN([[Unable to check due to cross compiling! ASSUMING LITTLE ENDIAN ARCHITECTURE! To change please fix stdutil/private/stdarch.h!]])])
-AC_OUTPUT(Makefile src/Makefile)
+AC_OUTPUT(src/Makefile)
Modified: trunk/stdutil/src/Makefile.in
===================================================================
--- trunk/stdutil/src/Makefile.in 2006-02-21 01:46:24 UTC (rev 311)
+++ trunk/stdutil/src/Makefile.in 2006-02-21 02:34:23 UTC (rev 312)
@@ -1,75 +1,134 @@
+.SUFFIXES: .do .to .tdo .lo .ldo .lto .ltdo
+
+LIBVERSION=1.0
+
+############################################ PROGRAMS #########################################
+
CC=@CC@
+LD=@LD@
+SHCC=@SHCC@
+SHLD=@SHLD@
+
AR=@AR@
+SOFTLINK=@LN_S@
+INSTALL=@INSTALL@
srcdir=@srcdir@
top_srcdir=@top_srcdir@
VPATH=@srcdir@
-buildtoolsdir=$(top_srcdir)/../buildtools
+buildtoolsdir=$(top_srcdir)/buildtools
-# where to put libraries and test/example programs
-TARGET_DIR = ../lib
-APP_DIR = ../bin
+############################################# FLAGS ###########################################
-############################################# OPTIONS #########################################
+CFLAGS=@CFLAGS@
+CPPFLAGS=@CPPFLAGS@ -I./ -I$(srcdir)
+LDFLAGS=@LDFLAGS@
+LIBS=@LIBS@
-# build thread safe library and enable std locking mechanisms (stdthreads.h)
-CFLAGS += -D_REENTRANT
+SHCFLAGS=@SHCFLAGS@
+SHCPPFLAGS=@SHCPPFLAGS@ -I./ -I$(srcdir)
+SHLDFLAGS=@SHLDFLAGS@
+SHLIBS=@SHLIBS@
-# SAFETY_CHECKS - check and be sure some condition that should be true is true (sanity checks)
-CFLAGS += -DSTDSAFETY_CHECKS
+THLIBS=@THLIBS@
+THLDFLAGS=@THLDFLAGS@
-# BOUNDS_CHECKS - try to check that the user is using the DS's properly (doesn't check all uses)
-CFLAGS += -DSTDBOUNDS_CHECKS
+RELEASEFLAGS=-DNDEBUG -O2
+DEBUGFLAGS=-g -DSTDSAFETY_CHECKS -DSTDBOUNDS_CHECKS
+THREADFLAGS=-D_REENTRANT
-# other flags
-CFLAGS += -fPIC -g -Wall -O2 -I. -I$(srcdir)
+############################################# OBJECTS #########################################
-# add pthreads library if necessary
-LIBS = @LIBS@
+STATIC_NOTHREAD_RELEASE_OBJS=stdutil.o stderror.o stdthread.o stdtime.o stdfd.o stdit.o stdarr.o stdcarr.o stddll.o stdhash.o stdskl.o
+STATIC_NOTHREAD_DEBUG_OBJS=stdutil.do stderror.do stdthread.do stdtime.do stdfd.do stdit.do stdarr.do stdcarr.do stddll.do stdhash.do stdskl.do
+STATIC_THREADED_RELEASE_OBJS=stdutil.to stderror.to stdthread.to stdtime.to stdfd.to stdit.to stdarr.to stdcarr.to stddll.to stdhash.to stdskl.to
+STATIC_THREADED_DEBUG_OBJS=stdutil.tdo stderror.tdo stdthread.tdo stdtime.tdo stdfd.tdo stdit.tdo stdarr.tdo stdcarr.tdo stddll.tdo stdhash.tdo stdskl.tdo
+SHARED_NOTHREAD_RELEASE_OBJS=stdutil.lo stderror.lo stdthread.lo stdtime.lo stdfd.lo stdit.lo stdarr.lo stdcarr.lo stddll.lo stdhash.lo stdskl.lo
+SHARED_NOTHREAD_DEBUG_OBJS=stdutil.ldo stderror.ldo stdthread.ldo stdtime.ldo stdfd.ldo stdit.ldo stdarr.ldo stdcarr.ldo stddll.ldo stdhash.ldo stdskl.ldo
+SHARED_THREADED_RELEASE_OBJS=stdutil.lto stderror.lto stdthread.lto stdtime.lto stdfd.lto stdit.lto stdarr.lto stdcarr.lto stddll.lto stdhash.lto stdskl.lto
+SHARED_THREADED_DEBUG_OBJS=stdutil.ltdo stderror.ltdo stdthread.ltdo stdtime.ltdo stdfd.ltdo stdit.ltdo stdarr.ltdo stdcarr.ltdo stddll.ltdo stdhash.ltdo stdskl.ltdo
############################################# TARGETS #########################################
-# stdutil library object files
-OBJS = stdutil.o stderror.o stdthread.o stdtime.o stdfd.o stdit.o stdarr.o stdcarr.o stddll.o stdhash.o stdskl.o
+BINDIR=../bin
+LIBDIR=../lib
-# targets
-LIBSTDUTIL = $(TARGET_DIR)/libstdutil.a
-TESTS = $(APP_DIR)/stddll_test $(APP_DIR)/stdarr_test $(APP_DIR)/stdcarr_test $(APP_DIR)/stdhash_test
-TARGETS = $(LIBSTDUTIL) $(TESTS)
+STATIC_NOTHREAD_RELEASE_LIB=$(LIBDIR)/libstdutil-nothread-release.a
+STATIC_NOTHREAD_DEBUG_LIB=$(LIBDIR)/libstdutil-nothread-debug.a
+STATIC_THREADED_RELEASE_LIB=$(LIBDIR)/libstdutil-threaded-release.a
+STATIC_THREADED_DEBUG_LIB=$(LIBDIR)/libstdutil-threaded-debug.a
+SHARED_NOTHREAD_RELEASE_LIB=$(LIBDIR)/libstdutil-nothread-release.$(LIBVERSION).@DYNLIBEXT@
+SHARED_NOTHREAD_DEBUG_LIB=$(LIBDIR)/libstdutil-nothread-debug.$(LIBVERSION).@DYNLIBEXT@
+SHARED_THREADED_RELEASE_LIB=$(LIBDIR)/libstdutil-threaded-release.$(LIBVERSION).@DYNLIBEXT@
+SHARED_THREADED_DEBUG_LIB=$(LIBDIR)/libstdutil-threaded-debug.$(LIBVERSION).@DYNLIBEXT@
-############################################# RULES ###########################################
+STATIC_LIBS=$(STATIC_NOTHREAD_RELEASE_LIB) $(STATIC_NOTHREAD_DEBUG_LIB) $(STATIC_THREADED_RELEASE_LIB) $(STATIC_THREADED_DEBUG_LIB)
+SHARED_LIBS=$(SHARED_NOTHREAD_RELEASE_LIB) $(SHARED_NOTHREAD_DEBUG_LIB) $(SHARED_THREADED_RELEASE_LIB) $(SHARED_THREADED_DEBUG_LIB)
-all: $(LIBSTDUTIL)
+ALLTARGETS=$(STATIC_LIBS) @SHARED_LIBS@
-$(LIBSTDUTIL): $(OBJS)
- $(buildtoolsdir)/mkinstalldirs $(TARGET_DIR)
- $(AR) -rs $(LIBSTDUTIL) $(OBJS)
+########################################### BUILD RULES ########################################
+standard: $(LIB_DIR) @STANDARD_LIBS@
-$(APP_DIR):
- $(buildtoolsdir)/mkinstalldirs $(APP_DIR)
+all: $(LIB_DIR) $(ALLTARGETS)
+$(LIB_DIR):
+ $(buildtoolsdir)/mkinstalldirs $(LIB_DIR)
+
+$(STATIC_NOTHREAD_RELEASE_LIB): $(STATIC_NOTHREAD_RELEASE_OBJS)
+ $(AR) rvs $@ $(STATIC_NOTHREAD_RELEASE_OBJS)
+
+$(STATIC_NOTHREAD_DEBUG_LIB): $(STATIC_NOTHREAD_DEBUG_OBJS)
+ $(AR) rvs $@ $(STATIC_NOTHREAD_DEBUG_OBJS)
+
+$(STATIC_THREADED_RELEASE_LIB): $(STATIC_THREADED_RELEASE_OBJS)
+ $(AR) rvs $@ $(STATIC_THREADED_RELEASE_OBJS)
+ $(SOFTLINK) -f $@ $(LIBDIR)/libstdutil.a
+
+$(STATIC_THREADED_DEBUG_LIB): $(STATIC_THREADED_DEBUG_OBJS)
+ $(AR) rvs $@ $(STATIC_THREADED_DEBUG_OBJS)
+
+$(SHARED_NOTHREAD_RELEASE_LIB): $(SHARED_NOTHREAD_RELEASE_OBJS)
+ $(SHLD) $(SHLDFLAGS) -o $@ $(SHARED_NOTHREAD_RELEASE_OBJS) $(SHLIBS)
+
+$(SHARED_NOTHREAD_DEBUG_LIB): $(SHARED_NOTHREAD_DEBUG_OBJS)
+ $(SHLD) $(SHLDFLAGS) -o $@ $(SHARED_NOTHREAD_DEBUG_OBJS) $(SHLIBS)
+
+$(SHARED_THREADED_RELEASE_LIB): $(SHARED_THREADED_RELEASE_OBJS)
+ $(SHLD) $(SHLDFLAGS) -o $@ $(SHARED_THREADED_RELEASE_OBJS) $(SHLIBS) $(THLIBS)
+ $(SOFTLINK) -f $@ $(LIBDIR)/libstdutil.@DYNLIBEXT@
+
+$(SHARED_THREADED_DEBUG_LIB): $(SHARED_THREADED_DEBUG_OBJS)
+ $(SHLD) $(SHLDFLAGS) -o $@ $(SHARED_THREADED_DEBUG_OBJS) $(SHLIBS) $(THLIBS)
+
clean:
- rm -f *.o core* *~ stdutil/*~ stdutil/private/*~ stdtest/*~ $(TARGETS)
+ rm -f *.o *.do *.to *.tdo *.lo *.ldo *.lto *.ltdo core* *~ $(ALLTARGETS) $(LIBDIR)/stdutil.a $(LIBDIR)/stdutil.@DYNLIBEXT@
distclean: clean
rm -f Makefile
-veryclean: distclean
+uberclean: distclean
-tests: $(TESTS)
- $(APP_DIR)/stddll_test
- $(APP_DIR)/stdarr_test
- $(APP_DIR)/stdcarr_test
- $(APP_DIR)/stdhash_test
+.c.o:
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(RELEASEFLAGS) -c $<
-$(APP_DIR)/stddll_test: $(LIBSTDUTIL) $(APP_DIR) stdtest/stddll_test.c
- $(CC) $(CFLAGS) -o $(APP_DIR)/stddll_test stdtest/stddll_test.c $(LIBSTDUTIL) $(LIBS)
+.c.do:
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(DEBUGFLAGS) -c $< -o $*.do
-$(APP_DIR)/stdarr_test: $(APP_DIR)/stddll_test $(APP_DIR) stdtest/stdarr_test.c
- $(CC) $(CFLAGS) -o $(APP_DIR)/stdarr_test stdtest/stdarr_test.c $(LIBSTDUTIL) $(LIBS)
+.c.to:
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(RELEASEFLAGS) $(THREADFLAGS) -c $< -o $*.to
-$(APP_DIR)/stdcarr_test: $(APP_DIR)/stddll_test $(APP_DIR) stdtest/stdcarr_test.c
- $(CC) $(CFLAGS) -o $(APP_DIR)/stdcarr_test stdtest/stdcarr_test.c $(LIBSTDUTIL) $(LIBS)
+.c.tdo:
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(DEBUGFLAGS) $(THREADFLAGS) -c $< -o $*.tdo
-$(APP_DIR)/stdhash_test: $(LIBSTDUTIL) $(APP_DIR) stdtest/stdhash_test.c
- $(CC) $(CFLAGS) -o $(APP_DIR)/stdhash_test stdtest/stdhash_test.c $(LIBSTDUTIL) $(LIBS)
+.c.lo:
+ $(SHCC) $(SHCFLAGS) $(SHCPPFLAGS) $(RELEASEFLAGS) -c $< -o $*.lo
+
+.c.ldo:
+ $(SHCC) $(SHCFLAGS) $(SHCPPFLAGS) $(DEBUGFLAGS) -c $< -o $*.ldo
+
+.c.lto:
+ $(SHCC) $(SHCFLAGS) $(SHCPPFLAGS) $(RELEASEFLAGS) $(THREADFLAGS) -c $< -o $*.lto
+
+.c.ltdo:
+ $(SHCC) $(SHCFLAGS) $(SHCPPFLAGS) $(DEBUGFLAGS) $(THREADFLAGS) -c $< -o $*.ltdo
Modified: trunk/stdutil/src/stdthread.c
===================================================================
--- trunk/stdutil/src/stdthread.c 2006-02-21 01:46:24 UTC (rev 311)
+++ trunk/stdutil/src/stdthread.c 2006-02-21 02:34:23 UTC (rev 312)
@@ -108,7 +108,7 @@
stdcode ret = STDESUCCESS;
DWORD term_status;
- if ((tmp = WaitForSingleObject(thr, INFINITE)) != WAIT_OBJECT_0) {
+ if (WaitForSingleObject(thr, INFINITE) != WAIT_OBJECT_0) {
goto stdthread_join_fail;
}
@@ -248,9 +248,15 @@
if (hardgrab) {
EnterCriticalSection(mut);
+# if defined(_WIN32_WINNT) && (_WIN32_WINNT >= 0x0400)
} else if (!TryEnterCriticalSection(mut)) {
ret = STDEBUSY;
}
+# else
+ } else {
+ ret = STDENOSYS;
+ }
+# endif
} __except ((GetExceptionCode() == STATUS_NO_MEMORY ||
GetExceptionCode() == STATUS_INVALID_HANDLE) ? EXCEPTION_EXECUTE_HANDLER : EXCEPTION_CONTINUE_SEARCH) {
lmpx.com only provides a reader for public news (NNTP) servers. It is not
affiliated with the servers or forums shown here and is not responsible for
the content of articles, which is written by their respective authors.