From: Nicholas Clark <nick@ccl4.org>
Date: Tue, 7 Mar 2006 22:16:55 +0000 (+0000)
Subject: Add a Configure question for mad (Misc Attribute Decoration - Larry's
X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=a724edfe531a4a4cce2d4bbb94e1f583d86bc9a3;p=p5sagit%2Fp5-mst-13.2.git

Add a Configure question for mad (Misc Attribute Decoration - Larry's
perl5 to perl[56] convertor), which if set defines PERL_MAD in config.h

p4raw-id: //depot/perl@27407
---

diff --git a/Configure b/Configure
index be4a11b..b66e790 100755
--- a/Configure
+++ b/Configure
@@ -1159,6 +1159,7 @@ usenm=''
 useperlio=''
 userelocatableinc=''
 usesocks=''
+mad=''
 d_oldpthreads=''
 use5005threads=''
 useithreads=''
@@ -3549,6 +3550,27 @@ esac
 set usesocks
 eval $setvar
 
+case "$mad" in
+$define|true|[yY]*)	dflt='y';;
+*) dflt='n';;
+esac
+cat <<EOM
+
+Would you like to build with Misc Attribute Decoration? This is development
+work leading to a Perl 5 to Perl 6 convertor, which imposes a space and speed
+overhead on the interpreter.
+
+If this doesn't make any sense to you, just accept the default '$dflt'.
+EOM
+rp='Build Perl with MAD?'
+. ./myread
+case "$ans" in
+y|Y)	val="$define" ;;     
+*)      val="$undef" ;;
+esac
+set mad
+eval $setvar
+
 case "$usesocks" in
 $define|true|[yY]*) useperlio="$define";;
 esac
@@ -21872,6 +21894,7 @@ lpr='$lpr'
 ls='$ls'
 lseeksize='$lseeksize'
 lseektype='$lseektype'
+mad='$mad'
 mail='$mail'
 mailx='$mailx'
 make='$make'
diff --git a/Cross/config.sh-arm-linux b/Cross/config.sh-arm-linux
index fc90d08..de83224 100644
--- a/Cross/config.sh-arm-linux
+++ b/Cross/config.sh-arm-linux
@@ -753,6 +753,7 @@ lpr=''
 ls='ls'
 lseeksize='8'
 lseektype='off_t'
+mad='undef'
 mail=''
 mailx=''
 make='make'
diff --git a/NetWare/config.wc b/NetWare/config.wc
index 4897e44..005a1d2 100644
--- a/NetWare/config.wc
+++ b/NetWare/config.wc
@@ -726,6 +726,7 @@ lpr=''
 ls='dir'
 lseeksize='4'
 lseektype='off_t'
+mad='undef'
 mail=''
 mailx=''
 make='nmake'
diff --git a/Porting/Glossary b/Porting/Glossary
index 7d3ff3f..b3500b6 100644
--- a/Porting/Glossary
+++ b/Porting/Glossary
@@ -3507,6 +3507,10 @@ lseektype (lseektype.U):
 	or whatever type is used to declare lseek offset's type in the
 	kernel (which also appears to be lseek's return type).
 
+mad (mad.u):
+	This variable indicates that the Misc Attribute Definition code is to
+	be compiled.
+
 mail (Loc.U):
 	This variable is defined but not used by Configure.
 	The value is a plain '' and is not useful.
diff --git a/config_h.SH b/config_h.SH
index bf87d0a..19cab45 100644
--- a/config_h.SH
+++ b/config_h.SH
@@ -3041,6 +3041,13 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un
  */
 #define PERL_INC_VERSION_LIST $inc_version_list_init		/**/
 
+
+/* PERL_MAD:
+ *	This symbol, if defined, indicates that the Misc Attribution
+ *	Declaration code should be conditionally compiled.
+ */
+#$mad	PERL_MAD		/**/
+
 /* INSTALL_USR_BIN_PERL:
  *	This symbol, if defined, indicates that Perl is to be installed
  * 	also as /usr/bin/perl.
diff --git a/configure.com b/configure.com
index 3fb580f..41103db 100644
--- a/configure.com
+++ b/configure.com
@@ -6163,6 +6163,7 @@ $   WC "lseeksize='4'"
 $   WC "lseektype='int'"
 $ ENDIF
 $ WC "mab='" + "'"
+$ WC "mad='undef'"
 $ WC "make='" + make + "'"
 $ WC "malloctype='void *'"
 $ WC "usemallocwrap='" + usemallocwrap + "'"
diff --git a/epoc/config.sh b/epoc/config.sh
index 89f75e1..d7e9469 100644
--- a/epoc/config.sh
+++ b/epoc/config.sh
@@ -661,6 +661,7 @@ lpr=''
 ls='ls'
 lseeksize='8'
 lseektype='off_t'
+mad='undef'
 mail=''
 mailx=''
 make='make'
diff --git a/perl.c b/perl.c
index 11a62e7..a931a78 100644
--- a/perl.c
+++ b/perl.c
@@ -1800,6 +1800,9 @@ S_parse_body(pTHX_ char **env, XSINIT_t xsinit)
 #  ifdef PERL_IMPLICIT_SYS
 			     " PERL_IMPLICIT_SYS"
 #  endif
+#  ifdef PERL_MAD
+			     " PERL_MAD"
+#  endif
 #  ifdef PERL_MALLOC_WRAP
 			     " PERL_MALLOC_WRAP"
 #  endif
diff --git a/plan9/config_sh.sample b/plan9/config_sh.sample
index 4f6bb01..ddf15cc 100644
--- a/plan9/config_sh.sample
+++ b/plan9/config_sh.sample
@@ -735,6 +735,7 @@ lpr=''
 ls='ls'
 lseeksize='8'
 lseektype='off_t'
+mad='undef'
 mail=''
 mailx=''
 make='make'
diff --git a/symbian/config.sh b/symbian/config.sh
index dddaea7..9de5e03 100644
--- a/symbian/config.sh
+++ b/symbian/config.sh
@@ -627,6 +627,7 @@ longlongsize=8
 longsize='4'
 lseeksize=4
 lseektype=int
+mad='undef'
 make='make'
 malloctype='int*'
 malloctype='void *'
diff --git a/uconfig.sh b/uconfig.sh
index af4c297..bc6c27c 100755
--- a/uconfig.sh
+++ b/uconfig.sh
@@ -592,6 +592,7 @@ longlongsize=8
 longsize='4'
 lseeksize=4
 lseektype=int
+mad='undef'
 malloctype='int*'
 malloctype='void *'
 modetype='mode_t'
diff --git a/win32/config.bc b/win32/config.bc
index 854f035..c528ba1 100644
--- a/win32/config.bc
+++ b/win32/config.bc
@@ -746,6 +746,7 @@ lpr=''
 ls='dir'
 lseeksize='4'
 lseektype='long'
+mad='undef'
 mail=''
 mailx=''
 make='dmake'
diff --git a/win32/config.gc b/win32/config.gc
index 82c3651..e197529 100644
--- a/win32/config.gc
+++ b/win32/config.gc
@@ -746,6 +746,7 @@ lpr=''
 ls='dir'
 lseeksize='8'
 lseektype='long long'
+mad='undef'
 mail=''
 mailx=''
 make='dmake'
diff --git a/win32/config.vc b/win32/config.vc
index 6463ff8..1e210c5 100644
--- a/win32/config.vc
+++ b/win32/config.vc
@@ -746,6 +746,7 @@ lpr=''
 ls='dir'
 lseeksize='8'
 lseektype='__int64'
+mad='undef'
 mail=''
 mailx=''
 make='nmake'
diff --git a/win32/config.vc64 b/win32/config.vc64
index 1b73ce0..0baee63 100644
--- a/win32/config.vc64
+++ b/win32/config.vc64
@@ -746,6 +746,7 @@ lpr=''
 ls='dir'
 lseeksize='8'
 lseektype='__int64'
+mad='undef'
 mail=''
 mailx=''
 make='nmake'
diff --git a/wince/config.ce b/wince/config.ce
index e4d0971..9e1bf1d 100644
--- a/wince/config.ce
+++ b/wince/config.ce
@@ -720,6 +720,7 @@ lpr=''
 ls='dir'
 lseeksize='4'
 lseektype='long'
+mad='undef'
 mail=''
 mailx=''
 make='nmake'