Ben Walton <bwalton@xxxxxxxxxxxxxxxxxx> writes: > On (old) solaris systems, /usr/bin/less (typically the first less > found) doesn't understand the default arguments (FXRS), which forces > users to alter their environment (PATH, GIT_PAGER, LESS, etc) or have > a local or global gitconfig before paging works as expected. > > Would it be completely out of line to provide a knob so that the > fallback $pager could be set to something more specific/appropriate > during the build? I think that is a sensible thing to do. Something like this? Makefile | 6 ++++++ pager.c | 6 +++++- 2 files changed, 11 insertions(+), 1 deletions(-) diff --git a/Makefile b/Makefile index 268aede..342d49a 100644 --- a/Makefile +++ b/Makefile @@ -200,6 +200,9 @@ all:: # memory allocators with the nedmalloc allocator written by Niall Douglas. # # Define NO_REGEX if you have no or inferior regex support in your C library. +# +# Define DEFAULT_PAGER to the path of a sensible pager (defaults to "less") if +# you want to use something different. GIT-VERSION-FILE: .FORCE-GIT-VERSION-FILE @$(SHELL_PATH) ./GIT-VERSION-GEN @@ -1294,6 +1297,9 @@ ifdef NO_REGEX COMPAT_CFLAGS += -Icompat/regex COMPAT_OBJS += compat/regex/regex.o endif +ifdef DEFAULT_PAGER + BASIC_CFLAGS += -DDEFAULT_PAGER='"$(DEFAULT_PAGER)"' +endif ifdef USE_NED_ALLOCATOR COMPAT_CFLAGS += -DUSE_NED_ALLOCATOR -DOVERRIDE_STRDUP -DNDEBUG -DREPLACE_SYSTEM_ALLOCATOR -Icompat/nedmalloc diff --git a/pager.c b/pager.c index 86facec..f4c992d 100644 --- a/pager.c +++ b/pager.c @@ -2,6 +2,10 @@ #include "run-command.h" #include "sigchain.h" +#ifndef DEFAULT_PAGER +#define DEFAULT_PAGER "less" +#endif + /* * This is split up from the rest of git so that we can do * something different on Windows. @@ -58,7 +62,7 @@ void setup_pager(void) if (!pager) pager = getenv("PAGER"); if (!pager) - pager = "less"; + pager = DEFAULT_PAGER; else if (!*pager || !strcmp(pager, "cat")) return; -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html