HPCC-3022 - Allow buildindex not to require maxlength if >4k

For legacy backward compatibility reasons, we have forced the max
key size (key+payload) to default to the max record size, which
in legacy systems used to be 4K. This can been overridden
with ,MAXLENGTH on the record structure.
However, this imposes a unnecessary restriction in the current
system, which has no default max record length and therefore
doesn't need to use a 'max' in the key header at all.

Fix by removing the max length check in the key builder, but for
continued backward compatibility, track the largest key+payload
and store it in the header. If the max is < old default legacy(4k)
set header max to 4K.
This will mean any key built on a new system with this
compatibility option on, will create a compatible key for legacy
system as long as the key+payload <= 4k.
If it is higher, it will issue a warning. Legacy systems can still
use the key, but they will need to specify MAXLENGTH.

Signed-off-by: Jake Smith <jake.smith@lexisnexis.com>
HPCC-11045 Add options for ECL Watch Build

Allow SKIP, SOURCES and IF_MISSING (only build if missing)

Fixes HPCC-11045

Signed-off-by: Gordon Smith <gordon.smith@lexisnexis.com>
HPCC-9065 Restructure code while investigating optimization

Signed-off-by: Gavin Halliday <gavin.halliday@lexisnexis.com>
HPCC-10979 Fix custom tributton control handling of tab and spacebar

Allow tributton to recieve focus, and move on to next tabindex when tab
key is pressed.  Rotate tributton state when spacebar is pressed.

Signed-off-by: Anthony Fishbeck <anthony.fishbeck@lexisnexis.com>
HPCC-10992 Improve cli password and INI file support

Prompt cli user for password if username is initially provided,
but password is not.

Look for INI file in users home directory.

Password can be set in INI file as eclPassword=xxxx.

Signed-off-by: Anthony Fishbeck <anthony.fishbeck@lexisnexis.com>
HPCC-11073 Move the sq regression tests to the new regression suite

Signed-off-by: Gavin Halliday <gavin.halliday@lexisnexis.com>
HPCC-10475 Avoid u8'string' going via a unicode type

Currently the Unicode type (incorrectly) counts lengths in codepoints
rather than abstract characters.  Avoiding going via Unicode type allows
utf8 constants to be treated correctly - without the upheaval of changing
the utf16 handling.

Signed-off-by: Gavin Halliday <gavin.halliday@lexisnexis.com>
HPCC-11085 Fix invalid licenses

Fixes HPCC-11085

Signed-off-by: Gordon Smith <gordon.smith@lexisnexis.com>
HPCC-10992 Move getHomeDir to jmisc and update eclcc.cpp to use it

Signed-off-by: Anthony Fishbeck <anthony.fishbeck@lexisnexis.com>
HPCC-11090 Fix build break when unit testing enabled

Signed-off-by: Gavin Halliday <gavin.halliday@lexisnexis.com>
Merge pull request #5589 from ghalliday/issue11090

HPCC-11090 Fix build break when unit testing enabled

Reviewed-by: Gavin Halliday <ghalliday@hpccsystems.com>
Merge pull request #5586 from GordonSmith/HPCC-11085

HPCC-11085 Fix invalid licenses

Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>
Merge pull request #5584 from ghalliday/issue10475

HPCC-10475 Avoid u8'string' going via a unicode type

Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>
Merge pull request #5581 from ghalliday/issue11073

HPCC-11073 Move the sq regression tests to the new regression suite

Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>
Merge pull request #5580 from afishbeck/cliPasswordPromptAndINI

HPCC-10992 Improve cli password and INI file support

Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>
Merge pull request #5571 from afishbeck/triButtonTab

HPCC-10979 Fix custom tributton control handling of tab and spacebar

Reviewed-By: Kevin Wang <kevin.wang@lexisnexis.com>
Reviewed-By: Gordon Smith <gordon.smith@lexisnexis.com>
Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>
Merge pull request #5559 from ghalliday/issue9065

HPCC-9065 Restructure code while investigating optimization

Reviewed-By: Jamie Noss <james.noss@lexisnexis.com>
Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>
Merge pull request #5554 from GordonSmith/HPCC-11045

HPCC-11045 Add options for ECL Watch Build

Reviewed-By: Xiaoming Wang <xiaoming.wang@lexisnexis.com>
Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>
Merge pull request #5507 from jakesmith/hpcc-3022

HPCC-3022 - Allow buildindex not to require maxlength if >4k

Reviewed-by: Gavin Halliday <ghalliday@hpccsystems.com>