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

Systems with old regex system headers/libraries don't pick up git's compat/regex header file

From
RLRichard Lloyd <richard.lloyd@connectinternetsolutions.com>
Date
Oct 6, 2016, 09:15 UTC
Message-ID
<9f43a2f1-5d7e-3a2e-5a83-40e92ab0d7b5@connectinternetsolutions.com>

git ships with a compat/regex tree containing a recent regex release, presumably with the intention of allowing systems with either no regex or an old regex installed to use the newer compat version.

With the release of git-2.10.1, the use of a recent regex is now specifically checked in git-compat-util.h via a #ifndef REG_STARTEND check at line 979.

Unfortunately, on systems with an older regex shipped as standard (e.g. HP-UX 11), the include path picks up /usr/include/regex.h first, which doesn't define REG_STARTEND and the git-compat-util.h check fails.

The fix I applied on HP-UX 11 was to add -Icompat/regex to the CFLAGS ahead of other -I directives. Another possible change needed might be to line 69 of compat/regex/regex.c:

#include "regex.h"

This is to ensure that /usr/include/regex.h isn't picked up (since git ships its own regex.h in the compat/regex dir, it probably shouldn't #include <regex.h> anyway, which risks picking up an incompatible regex.h).

Richard K. Lloyd, E-mail: richard.lloyd@connectinternetsolutions.com Connect Internet Solutions, WWW: https://www.connectinternetsolutions.com/ 4th Floor, New Barratt House, 47, North John Street, Liverpool, Merseyside, UK. L2 6SG

-- 
This e-mail (and any attachments) is private and confidential. If you have 
received it in error, please notify the sender immediately and delete it 
from your system. Do not use, copy or disclose the information in any way 
nor act in reliance on it.

Any views expressed in this message are those of the individual sender,
except where the sender specifically states them to be the views of Connect
Internet Solutions Ltd. This e-mail and any attachments are believed to be
virus free but it is the recipient's responsibility to ensure that they are.

Connect Internet Solutions Ltd
(A company registered in England No: 04424350)
Registered Office: 4th Floor, New Barratt House, 47 North John Street,
Liverpool, L2 6SG
Telephone: +44 (0) 151 282 4321
VAT registration number: 758 2838 85
Next: Junio C Hamano
Message 1 of 5 in “Systems with old regex system headers/libraries don't pick up git's compat/regex header file”
  1. Richard LloydOct 6, 2016
  2. Junio C HamanoOct 6, 2016
  3. Jeff KingOct 6, 2016
  4. Richard LloydOct 7, 2016
  5. Jeff KingOct 7, 2016

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.