summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xConfigure70
-rwxr-xr-xPorting/config_h.pl21
-rw-r--r--config_h.SH83
3 files changed, 99 insertions, 75 deletions
diff --git a/Configure b/Configure
index d969c3a7a9..532aed1abd 100755
--- a/Configure
+++ b/Configure
@@ -26,7 +26,7 @@
# $Id: Head.U,v 3.0.1.9 1997/02/28 15:02:09 ram Exp $
#
-# Generated on Fri Mar 9 20:00:14 CET 2007 [metaconfig 3.0 PL70]
+# Generated on Wed Apr 18 21:01:29 CEST 2007 [metaconfig 3.0 PL70]
# (with additional metaconfig patches by perlbug@perl.org)
cat >c1$$ <<EOF
@@ -7568,6 +7568,33 @@ $rm -f libnames libpath
set dld.h i_dld
eval $inhdr
+
+echo " "
+echo "Checking for C++..." >&4
+cat >try.c <<'EOCP'
+#include <stdio.h>
+int main(void)
+{
+#ifdef __cplusplus
+ printf("define\n");
+#else
+ printf("undef\n");
+#endif
+ return 0;
+}
+EOCP
+set try
+if eval $compile_ok && $run ./try >cplusplus$$; then
+ val=`$cat cplusplus$$`
+ echo "You are using a C++ compiler."
+else
+ val="$undef"
+ echo "You are not using a C++ compiler."
+fi
+$rm -f try try.* cplusplus$$
+set d_cplusplus
+eval $setvar
+
: is a C symbol defined?
csym='tlook=$1;
case "$3" in
@@ -7582,10 +7609,10 @@ true-*) tx=no; eval "tval=\$$4"; case "$tval" in "") tx=yes;; esac;;
esac;
case "$tx" in
yes)
+ tval=false;
case "$d_cplusplus" in
$define) extern_C=\"C\";;
esac;
- tval=false;
if $test "$runnm" = true; then
if $contains $tlook $tf >/dev/null 2>&1; then
tval=true;
@@ -7637,33 +7664,6 @@ yes)
esac;;
esac'
-
-echo " "
-echo "Checking for C++..." >&4
-cat >try.c <<'EOCP'
-#include <stdio.h>
-int main(void)
-{
-#ifdef __cplusplus
- printf("define\n");
-#else
- printf("undef\n");
-#endif
- return 0;
-}
-EOCP
-set try
-if eval $compile_ok && $run ./try >cplusplus$$; then
- val=`$cat cplusplus$$`
- echo "You are using a C++ compiler."
-else
- val="$undef"
- echo "You are not using a C++ compiler."
-fi
-$rm -f try try.* cplusplus$$
-set d_cplusplus
-eval $setvar
-
: see if dlopen exists
xxx_runnm="$runnm"
xxx_ccflags="$ccflags"
@@ -12968,11 +12968,11 @@ if eval $compile; then
0) echo "Yes, it does" >&4
d_futimes="$define"
;;
- *) echo "No, it has futimes, but it isn't working ($rc) (probably harmless)\n" >&4
+ *) echo "No, it has futimes, but it isn't working ($rc) (probably harmless)" >&4
;;
esac
else
- echo "No, it does not (probably harmless)\n" >&4
+ echo "No, it does not (probably harmless)" >&4
fi
$rm -f try.* try core core.try.*
@@ -14694,7 +14694,7 @@ int main()
EOCP
set try
if eval $compile; then
- if ./try; then
+ if $run ./try; then
d_localtime_r_needs_tzset=undef;
else
d_localtime_r_needs_tzset=define;
@@ -15976,7 +15976,7 @@ exit(0);
EOCP
set try
if eval $compile_ok; then
- if ./try 2>/dev/null; then
+ if $run ./try 2>/dev/null; then
echo "Yes, it can."
val="$define"
else
@@ -16052,7 +16052,7 @@ exit(0);
EOCP
set try
if eval $compile_ok; then
- if ./try 2>/dev/null; then
+ if $run ./try 2>/dev/null; then
echo "Yes, it can."
val="$define"
else
@@ -18021,7 +18021,7 @@ int main()
EOCP
xxx_prompt=y
set try
- if eval $compile && ./try > /dev/null; then
+ if eval $compile && $run ./try > /dev/null; then
dflt=`$run ./try`
case "$dflt" in
[1-4][1-4][1-4][1-4]|12345678|87654321)
diff --git a/Porting/config_h.pl b/Porting/config_h.pl
index 7c1deec530..cf69b2ad32 100755
--- a/Porting/config_h.pl
+++ b/Porting/config_h.pl
@@ -3,7 +3,7 @@
# This script reorders config_h.SH after metaconfig
# Changing metaconfig is too complicated
#
-# Copyright (C) 2005-2005 by H.Merijn Brand (m)'05 [25-05-2005]
+# Copyright (C) 2005-2007 by H.Merijn Brand (m)'07 [18-04-2007]
#
# You may distribute under the terms of either the GNU General Public
# License or the Artistic License, as specified in the README file.
@@ -55,6 +55,25 @@ do {
}
} while ($changed);
+# 30327
+for (grep m{echo .Extracting \$CONFIG_H} => @ch) {
+ my $case = join "\n",
+ qq{case "\$CONFIG_H" in},
+ qq{already-done) echo "Not re-extracting config.h" ;;},
+ qq{*)}, "";
+ s{^(?=echo .Extracting)}{$case}m;
+ }
+push @ch, ";;\nesac\n";
+
+
open $ch, "> $cSH" or die "Cannot write $cSH: $!\n";
+print $ch <<EOW;
+# THIS IS A GENERATED FILE
+# DO NOT HAND-EDIT
+#
+# See Porting/config_h.pl
+
+EOW
+
print $ch @ch;
close $ch;
diff --git a/config_h.SH b/config_h.SH
index e9c9d6df9d..91b4fcbfdd 100644
--- a/config_h.SH
+++ b/config_h.SH
@@ -1,3 +1,8 @@
+# THIS IS A GENERATED FILE
+# DO NOT HAND-EDIT
+#
+# See Porting/config_h.pl
+
case "$CONFIG_SH" in
'') CONFIG_SH=config.sh ;;
esac
@@ -23,8 +28,8 @@ esac
case "$CONFIG_H" in
already-done) echo "Not re-extracting config.h" ;;
*)
- echo "Extracting $CONFIG_H (with variable substitutions)"
- sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un-def!#undef!'
+echo "Extracting $CONFIG_H (with variable substitutions)"
+sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un-def!#undef!'
/*
* This file was produced by running the config_h.SH script, which
* gets its values from $CONFIG_SH, which is generally produced by
@@ -528,13 +533,6 @@ already-done) echo "Not re-extracting config.h" ;;
*/
#$d_strcoll HAS_STRCOLL /**/
-/* USE_STRUCT_COPY:
- * This symbol, if defined, indicates that this C compiler knows how
- * to copy structures. If undefined, you'll need to use a block copy
- * routine of some sort instead.
- */
-#$d_strctcpy USE_STRUCT_COPY /**/
-
/* HAS_STRTOD:
* This symbol, if defined, indicates that the strtod routine is
* available to provide better numeric string conversion than atof().
@@ -613,15 +611,6 @@ already-done) echo "Not re-extracting config.h" ;;
*/
#$d_usleep HAS_USLEEP /**/
-/* HASVOLATILE:
- * This symbol, if defined, indicates that this C compiler knows about
- * the volatile declaration.
- */
-#$d_volatile HASVOLATILE /**/
-#ifndef HASVOLATILE
-#define volatile
-#endif
-
/* HAS_WAIT4:
* This symbol, if defined, indicates that wait4() exists.
*/
@@ -662,26 +651,6 @@ already-done) echo "Not re-extracting config.h" ;;
#$i_dbm I_DBM /**/
#$i_rpcsvcdbm I_RPCSVC_DBM /**/
-/* I_DIRENT:
- * This symbol, if defined, indicates to the C program that it should
- * include <dirent.h>. Using this symbol also triggers the definition
- * of the Direntry_t define which ends up being 'struct dirent' or
- * 'struct direct' depending on the availability of <dirent.h>.
- */
-/* DIRNAMLEN:
- * This symbol, if defined, indicates to the C program that the length
- * of directory entry names is provided by a d_namlen field. Otherwise
- * you need to do strlen() on the d_name field.
- */
-/* Direntry_t:
- * This symbol is set to 'struct direct' or 'struct dirent' depending on
- * whether dirent is available or not. You should use this pseudo type to
- * portably declare your directory entries.
- */
-#$i_dirent I_DIRENT /**/
-#$d_dirnamlen DIRNAMLEN /**/
-#define Direntry_t $direntrytype
-
/* I_DLFCN:
* This symbol, if defined, indicates that <dlfcn.h> exists and should
* be included.
@@ -2217,6 +2186,13 @@ already-done) echo "Not re-extracting config.h" ;;
#$d_statblks USE_STAT_BLOCKS /**/
#endif
+/* USE_STRUCT_COPY:
+ * This symbol, if defined, indicates that this C compiler knows how
+ * to copy structures. If undefined, you'll need to use a block copy
+ * routine of some sort instead.
+ */
+#$d_strctcpy USE_STRUCT_COPY /**/
+
/* HAS_STRERROR:
* This symbol, if defined, indicates that the strerror routine is
* available to translate error numbers to strings. See the writeup
@@ -2340,6 +2316,15 @@ already-done) echo "Not re-extracting config.h" ;;
*/
#define Signal_t $signal_t /* Signal handler's return type */
+/* HASVOLATILE:
+ * This symbol, if defined, indicates that this C compiler knows about
+ * the volatile declaration.
+ */
+#$d_volatile HASVOLATILE /**/
+#ifndef HASVOLATILE
+#define volatile
+#endif
+
/* Fpos_t:
* This symbol holds the type used to declare file positions in libc.
* It can be fpos_t, long, uint, etc... It may be necessary to include
@@ -2385,6 +2370,26 @@ already-done) echo "Not re-extracting config.h" ;;
#define Groups_t $groupstype /* Type for 2nd arg to [sg]etgroups() */
#endif
+/* I_DIRENT:
+ * This symbol, if defined, indicates to the C program that it should
+ * include <dirent.h>. Using this symbol also triggers the definition
+ * of the Direntry_t define which ends up being 'struct dirent' or
+ * 'struct direct' depending on the availability of <dirent.h>.
+ */
+/* DIRNAMLEN:
+ * This symbol, if defined, indicates to the C program that the length
+ * of directory entry names is provided by a d_namlen field. Otherwise
+ * you need to do strlen() on the d_name field.
+ */
+/* Direntry_t:
+ * This symbol is set to 'struct direct' or 'struct dirent' depending on
+ * whether dirent is available or not. You should use this pseudo type to
+ * portably declare your directory entries.
+ */
+#$i_dirent I_DIRENT /**/
+#$d_dirnamlen DIRNAMLEN /**/
+#define Direntry_t $direntrytype
+
/* I_GRP:
* This symbol, if defined, indicates to the C program that it should
* include <grp.h>.
@@ -4488,5 +4493,5 @@ already-done) echo "Not re-extracting config.h" ;;
#endif
!GROK!THIS!
- ;;
+;;
esac