From: Haritha D <harithamma.d@xxxxxxx> Since the z/OS linker does not support searching dynamic libraries, and the current setting of CC_LD_DYNPATH results in a directory to be supplied to the link step with no option as the suffix, it causes a linker error because the z/OS LD linker does not accept directories as input. Therefore, -L option is added. Also introduced z/OS (OS/390) as a platform in config.mak.uname Signed-off-by: Haritha D <harithamma.d@xxxxxxx> --- This PR enables a successful git build on z/OS. Since the z/OS linker does not support searching dynamic libraries, and the current setting of CC_LD_DYNPATH results in a directory to be supplied to the link step with no option as the suffix, it causes a linker error because the z/OS LD linker does not accept directories as input. Therefore, we workaround this by adding the -L option. And, Introduced z/OS (OS/390) as a platform in config.mak.uname Thanks for taking the time to contribute to Git! Please be advised that the Git community does not use github.com for their contributions. Instead, we use a mailing list (git@xxxxxxxxxxxxxxx) for code submissions, code reviews, and bug reports. Nevertheless, you can use GitGitGadget (https://gitgitgadget.github.io/) to conveniently send your Pull Requests commits to our mailing list. Please read the "guidelines for contributing" linked above! Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-1663%2FHarithaIBM%2Fzos-v3 Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-1663/HarithaIBM/zos-v3 Pull-Request: https://github.com/git/git/pull/1663 Range-diff vs v2: 1: 53e211d7a65 ! 1: 2f1ad41bc14 build: support z/OS (OS/390). @@ config.mak.uname: ifeq ($(uname_S),NONSTOP_KERNEL) + NO_MEMMEM = YesPlease + NO_GECOS_IN_PWENT = YesPlease + HAVE_STRINGS_H = YesPlease -+ NEEDS_MODE_TRANSLATION = YesPlease ++ NEEDS_MODE_TRANSLATION = YesPlease +endif ifeq ($(uname_S),MINGW) ifeq ($(shell expr "$(uname_R)" : '1\.'),2) $(error "Building with MSys is no longer supported") - - ## configure.ac ## -@@ configure.ac: else - CC_LD_DYNPATH=-Wl,+b, - else - CC_LD_DYNPATH= -+ if test "$(uname -s)" = "OS/390"; then -+ CC_LD_DYNPATH=-L -+ fi - AC_MSG_WARN([linker does not support runtime path to dynamic libraries]) - fi - fi 2: 05df5d7e2d5 < -: ----------- an improvement: removed configure.ac changes config.mak.uname | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/config.mak.uname b/config.mak.uname index dacc95172dc..03ee2b74525 100644 --- a/config.mak.uname +++ b/config.mak.uname @@ -638,6 +638,18 @@ ifeq ($(uname_S),NONSTOP_KERNEL) SANE_TOOL_PATH = /usr/coreutils/bin:/usr/local/bin SHELL_PATH = /usr/coreutils/bin/bash endif +ifeq ($(uname_S),OS/390) + NO_SYS_POLL_H = YesPlease + NO_STRCASESTR = YesPlease + NO_REGEX = YesPlease + NO_MMAP = YesPlease + NO_NSEC = YesPlease + NO_STRLCPY = YesPlease + NO_MEMMEM = YesPlease + NO_GECOS_IN_PWENT = YesPlease + HAVE_STRINGS_H = YesPlease + NEEDS_MODE_TRANSLATION = YesPlease +endif ifeq ($(uname_S),MINGW) ifeq ($(shell expr "$(uname_R)" : '1\.'),2) $(error "Building with MSys is no longer supported") base-commit: f41f85c9ec8d4d46de0fd5fded88db94d3ec8c11 -- gitgitgadget