makedepend.SH: Split too long lines; properly join

I had thought that a continuation introduced a space.  But no,
a continuation can happen in the middle of a token.

And this splits lines that are getting very long to avoid preprocessor
limitations.
XXX temp:  show makedepend cerr
utf8.h: Simplify UTF8_EIGHT_BIT_foo on EBCDIC

These macros were previously defined in terms of UTF8_TWO_BYTE_HI and
UTF8_TWO_BYTE_LO.  But the EIGHT_BIT versions can use the less general
and simpler NATIVE_TO_LATN1 instead of NATIVE_TO_UNI because the input
domain is restricted in the EIGHT_BIT.  Note that on ASCII platforms,
these both expand to the same thing, so the difference matters only on
EBCDIC.
utfebcdic.h: Remove extra parameter expansions

These two macros were improperly expanding the parameters as well as
defining the operation, leading to compile errors.
utf8.h: Move #includes

These two files were only being #included for non-ebcdic compiles; they
should be included always.
utf8.h: Clean up START_MARK definition and use

The previous definition broke good encapsulation rules.  UTF_START_MARK
should return something that fits in a byte; it shouldn't be the caller
that does this.  So the mask is moved into the definition.  This means
it can apply only to the portion that creates something larger than a
byte.  Further, the EBCDIC version can be simplified, since 7 is the
largest possible number of bytes in an EBCDIC UTF8 character.
utfebcdic.h: Add comment
inline.h: Reorder functions

The comment implied that the functions below it in the file were
deprecated, but in fact only the next two functions were.  This
clarifies that and moves them so they are the final ones in the file
Add Porting tool for help with non-ASCII platforms

Porting/reorder_l1_char_class_tab.pl is used to bootstrap Perl onto a
non-ASCII platform with no working Perl.
XXX: Find a cleaner way. Handle missing is_UTF8_CHAR_utf8_safe

This macro may not be present, and is currently used exclusively in
IS_UTF8_CHAR, which itself may be undefined, and code should cope with
that.  This is a work-around until a better solution is found.
unicode_constants.h: Add #defines for Byte Order Mark

These will be used in future commits
toke.c: Remove character set dependency

Instead of hard-coding the bit patterns that comprise the Byte Order
Mark in the UTF-8 or UTF-EBCDIC encodings, use the generated ones for
the current platform.

This removes some EBCDIC-only code.
toke.c: Remove EBCDIC dependency
gv.c: Remove EBCDIC dependency
handy.h: Allow bootstrapping to non-ASCII platform

This adds a bunch of macros and moves things around to support
conditional compilation when Configure is called with
-DBOOTSTRAP_CHARSET.  Doing so causes the usual macros that are
table-driven to not be used, since the table may not be valid when
bringing Perl up for the first time on a non-ASCII platform.

This allows it to compile using the platform's native C library ctype
functions, which should work enough to compile miniperl, and allow the
table to be changed to be valid.  Then Configure can be re-run to not
bootstrap, and normal compilation can proceed
utfebcdic.h: Add (UV) cast

The operand of this macro is implicitly a UV.  Make sure that it is.
regen/regcharclass.pl: Make more EBCDIC-friendly

This commit changes the code generated by the macros so that they work
right out-of-the-box on non-ASCII platforms for non-UTF-8 inputs.  THEY
ARE WRONG for UTF-8, but this is good enough to get perl bootstrapped
onto the target platform, and regcharclass.pl can be run there,
generating macros correct UTF-8.
utfebcdic.h: Change 'unsigned char' to U8

This is for consistency with the rest of Perl
XXX dquote_static.c: Silence wrong warning on EBCDIC

Unsure of whether to add the 2nd !isCNTRL_L1 to silence return trip,
which should be a separate commit anyway.

This silences an inappropriate warning that doesn't happen on ASCII
platforms.  CTRL-T maps to 0x14 on both ASCII and EBCDIC platforms.  But
0x14 is a C1 control on EBCDIC, a C0 on ASCII.  Therefore the test that
it's a control should include both C0 and C1, which isCNTRL_L1() does.

Also has a white-space change, outdenting a line so it doesn't wrap in
an 80 column window.
XXX Collate, Normalize: Allow to compile under EBCDIC