config.mak.uname: support for modern HPE NonStop config.

A number of configuration options are not automatically detected by configure mechanisms, including the location of Perl and Python. There was a problem at a specific set of operating system versions that caused getopt to have compile errors. Account for this by providing emulation defines for those versions. Signed-off-by: Randall S. Becker <rsbecker@nexbridge.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Randall S. Becker committed Jan 3, 2019 at 16:03 UTC 71fb089c9f956b6d1dafb3c9165ad50051876a18
1 file changed +23 -6
config.mak.uname
+23 -6
@@ -441,26 +441,43 @@ ifeq ($(uname_S),NONSTOP_KERNEL)
441 # INLINE='' would just replace one set of warnings with another and
442 # still not compile in c89 mode, due to non-const array initializations.
443 CC = cc -c99
444 + # Build down-rev compatible objects that don't use our new getopt_long.
445 + ifeq ($(uname_R).$(uname_V),J06.21)
446 + CC += -WRVU=J06.20
447 + endif
448 + ifeq ($(uname_R).$(uname_V),L17.02)
449 + CC += -WRVU=L16.05
450 + endif
451 # Disable all optimization, seems to result in bad code, with -O or -O2
452 # or even -O1 (default), /usr/local/libexec/git-core/git-pack-objects
453 # abends on "git push". Needs more investigation.
447 - CFLAGS = -g -O0
454 + CFLAGS = -g -O0 -Winline
455 # We'd want it to be here.
456 prefix = /usr/local
450 - # Our's are in ${prefix}/bin (perl might also be in /usr/bin/perl).
451 - PERL_PATH = ${prefix}/bin/perl
452 - PYTHON_PATH = ${prefix}/bin/python
453 -
457 + # perl and python must be in /usr/bin on NonStop - supplied by HPE
458 + # with operating system in that managed directory.
459 + PERL_PATH = /usr/bin/perl
460 + PYTHON_PATH = /usr/bin/python
461 + # The current /usr/coreutils/rm at lowest support level does not work
462 + # with the git test structure. Long paths as in
463 + # 'trash directory...' cause rm to terminate prematurely without fully
464 + # removing the directory at OS releases J06.21 and L17.02.
465 + # Default to the older rm until those two releases are deprecated.
466 + RM = /bin/rm -f
467 # As detected by './configure'.
468 # Missdetected, hence commented out, see below.
469 #NO_CURL = YesPlease
470 # Added manually, see above.
471 + NEEDS_SSL_WITH_CURL = YesPlease
472 + NEEDS_CRYPTO_WITH_SSL = YesPlease
473 + HAVE_DEV_TTY = YesPlease
474 HAVE_LIBCHARSET_H = YesPlease
475 HAVE_STRINGS_H = YesPlease
476 NEEDS_LIBICONV = YesPlease
477 NEEDS_LIBINTL_BEFORE_LIBICONV = YesPlease
478 NO_SYS_SELECT_H = UnfortunatelyYes
479 NO_D_TYPE_IN_DIRENT = YesPlease
480 + NO_GETTEXT = YesPlease
481 NO_HSTRERROR = YesPlease
482 NO_STRCASESTR = YesPlease
483 NO_MEMMEM = YesPlease
@@ -470,7 +487,7 @@ ifeq ($(uname_S),NONSTOP_KERNEL)
487 NO_MKDTEMP = YesPlease
488 # Currently libiconv-1.9.1.
489 OLD_ICONV = UnfortunatelyYes
473 - NO_REGEX = YesPlease
490 + NO_REGEX = NeedsStartEnd
491 NO_PTHREADS = UnfortunatelyYes
492
493 # Not detected (nor checked for) by './configure'.