Not sure if such changes which diverge from upstream are wanted,
but here it is.
Index: less.h
===================================================================
RCS file: /cvs/src/usr.bin/less/less.h,v
retrieving revision 1.11
diff -u -p -r1.11 less.h
--- less.h 5 Nov 2015 22:18:27 -0000 1.11
+++ less.h 5 Nov 2015 23:14:31 -0000
@@ -32,7 +32,6 @@
#include <limits.h>
#include <stdlib.h>
#include <string.h>
-#include <libgen.h>
#include <signal.h>
/*
Index: main.c
===================================================================
RCS file: /cvs/src/usr.bin/less/main.c,v
retrieving revision 1.18
diff -u -p -r1.18 main.c
--- main.c 5 Nov 2015 22:18:27 -0000 1.18
+++ main.c 5 Nov 2015 23:14:31 -0000
@@ -15,7 +15,6 @@
* Entry point, initialization, miscellaneous routines.
*/
-#include <libgen.h>
#include <stdarg.h>
#include <sys/types.h>
#include "less.h"
@@ -31,7 +30,7 @@ off_t start_attnpos = -1;
off_t end_attnpos = -1;
int wscroll;
-static char *progname;
+extern char *__progname;
int quitting;
int secure;
@@ -68,7 +67,6 @@ main(int argc, char *argv[])
IFILE ifile;
char *s;
- progname = basename(argv[0]);
argv++;
argc--;
@@ -77,8 +75,8 @@ main(int argc, char *argv[])
* act like LESS_IS_MORE is set. We have to set this as early
* as possible for POSIX.
*/
- if ((strcmp(progname, "more") == 0) ||
- (strcmp(progname, "page") == 0)) {
+ if ((strcmp(__progname, "more") == 0) ||
+ (strcmp(__progname, "page") == 0)) {
less_is_more = 1;
} else {
s = lgetenv("LESS_IS_MORE");