summaryrefslogtreecommitdiffstats
path: root/usr.bin/make
diff options
context:
space:
mode:
Diffstat (limited to 'usr.bin/make')
-rw-r--r--usr.bin/make/arch.c4
-rw-r--r--usr.bin/make/config.h4
2 files changed, 6 insertions, 2 deletions
diff --git a/usr.bin/make/arch.c b/usr.bin/make/arch.c
index 5397e27..5e2b520 100644
--- a/usr.bin/make/arch.c
+++ b/usr.bin/make/arch.c
@@ -123,7 +123,7 @@ static int ArchFindArchive __P((ClientData, ClientData));
static void ArchFree __P((ClientData));
static struct ar_hdr *ArchStatMember __P((char *, char *, Boolean));
static FILE *ArchFindMember __P((char *, char *, struct ar_hdr *, char *));
-#if defined(__svr4__) || defined(__SVR4)
+#if defined(__svr4__) || defined(__SVR4) || defined(__ELF__)
#define SVR4ARCHIVES
static int ArchSVR4Entry __P((Arch *, char *, size_t, FILE *));
#endif
@@ -478,7 +478,7 @@ ArchStatMember (archive, member, hash)
* the comparisons easier...
*/
cp = strrchr (member, '/');
- if (cp != NULL)
+ if ((cp != NULL) && (strcmp(member, RANLIBMAG) != 0))
member = cp + 1;
ln = Lst_Find (archives, (ClientData) archive, ArchFindArchive);
diff --git a/usr.bin/make/config.h b/usr.bin/make/config.h
index 5732247..9d97eb5 100644
--- a/usr.bin/make/config.h
+++ b/usr.bin/make/config.h
@@ -114,4 +114,8 @@
# ifndef RANLIBMAG
# define RANLIBMAG "__.SYMDEF"
# endif
+#else
+# ifndef RANLIBMAG
+# define RANLIBMAG "/"
+# endif
#endif
OpenPOWER on IntegriCloud