Subject: Re: make build error
To: None <jkunz@unixag-kl.fh-kl.de,cmcmanis@mcmanis.com>
From: Chuck McManis <cmcmanis@mcmanis.com>
List: port-vax
Date: 04/28/2000 09:33:26
At 05:45 PM 4/28/00 +0200, jkunz@unixag-kl.fh-kl.de wrote:
>I have the same error:
>
>ld: /usr/src/current/dest/usr/lib: malformed input file (not rel or archive)
>collect2: ld returned 1 exit status
>
>while building 1.4X (last week) with 1.4X (this week). So I think there
>is something else broken. 

This is caused by the fact that bsd.prog.mk was changed to include the
options "-W1,-rpath-link,$DESTDIR/usr/lib". This passes the option
-rpath-link to ld which on the VAX hasn't a clue what to do about it and so
the VAX takes the next argument as link file and it happens to be a
directory and you get the message above. 

Unfortunately, I just checked and the fix for this isn't in ld yet, this is
the patch:
Index: ld.c
===================================================================
RCS file: /cvsroot/gnusrc/gnu/usr.bin/ld/ld/ld.c,v
retrieving revision 1.68
diff -c -r1.68 ld.c
*** ld.c	2000/01/13 00:05:32	1.68
--- ld.c	2000/04/28 16:26:14
***************
*** 693,698 ****
--- 693,700 ----
  		/* Ignore "-rpath" and hope ld.so.conf will cover our sins. */
  		if (!strcmp(&arg[1], "rpath"))
  			return 2;
+ 		if (!strcmp(&arg[1], "rpath-link"))
+ 			return 2;
  		return 1;
  
  	case 's':
***************
*** 918,923 ****
--- 920,930 ----
  		return;
  	}
  	if (strcmp(swt + 1, "rpath") == 0) {
+ 		if (warn_forwards_compatible_inexact)
+ 			warnx("%s %s ignored", swt, arg);
+ 		goto do_rpath;
+ 	}
+ 	if (strcmp(swt + 1, "rpath-link") == 0) {
  		if (warn_forwards_compatible_inexact)
  			warnx("%s %s ignored", swt, arg);
  		goto do_rpath;
============================================================================
You will need to apply this patch, make ld and install it, or you have to
edit the bsd.prog.mk file to not pass the rpath link stuff.

--Chuck