git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH v3] build: support z/OS (OS/390).

From
HGHaritha via GitGitGadget <gitgitgadget@gmail.com>
Date
Feb 25, 2024, 06:10 UTC
Message-ID
<pull.1663.v3.git.git.1708841439516.gitgitgadget@gmail.com>
In-Reply-To
<pull.1663.v2.git.git.1708660111.gitgitgadget@gmail.com>
From: Haritha D <harithamma.d@ibm.com>

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@ibm.com>
---
    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@vger.kernel.org) 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
Previous: Junio C HamanoNext: Junio C Hamano
Message 10 of 18 in “This PR enables a successful git build on z/OS.”
  1. This PR enables a successful git build on z/OS.Haritha via GitGitGadget, Jan 31, 2024
  2. Kristoffer HaugsbakkJan 31, 2024
  3. Junio C HamanoJan 31, 2024
  4. Junio C HamanoJan 31, 2024
  5. 0/2 This PR enables a successful git build on z/OS.Haritha via GitGitGadget, Feb 23, 2024
  6. 1/2 build: support z/OS (OS/390).Haritha D via GitGitGadget, Feb 23, 2024
  7. 2/2 an improvement: removed configure.ac changesHaritha D via GitGitGadget, Feb 23, 2024
  8. Junio C HamanoFeb 23, 2024
  9. Junio C HamanoFeb 23, 2024
  10. build: support z/OS (OS/390).Haritha via GitGitGadget, Feb 25, 2024
  11. Junio C HamanoFeb 26, 2024
  12. Haritha DMar 1, 2024
  13. Ghanshyam ThakkarMar 1, 2024
  14. Junio C HamanoMar 1, 2024
  15. rsbecker@nexbridge.comMar 1, 2024
  16. Haritha DMar 4, 2024
  17. build: support z/OS (OS/390).Haritha via GitGitGadget, Mar 6, 2024
  18. Junio C HamanoMar 6, 2024

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.