[gnu.utils.bug] Bug in GNU make 3.55

karl@MorningStar.COM (Karl Fox) (09/08/89)

GNU Make version 3.55 (gotten from osu-cis) doesn't expand $(@D)
correctly -- it trims off the last character of the directory name. 
This fixes it:

*** commands.c.ORIG	Thu Sep  7 11:47:18 1989
--- commands.c	Thu Sep  7 12:56:51 1989
***************
*** 134,140 ****
  #define	LASTSLASH(s)	rindex ((s), '/')
  #define	FILEONLY(s)	(p != 0 ? p + 1 : (s))
  #define	DIRONLY(s)	(p == 0 ? "./" : p == (s) ? "/" \
! 			 : savestring ((s), p - (s) - 1))
  
    /* $* is the stem from an implicit or static pattern rule.  */
    if (file->stem == 0)
--- 134,140 ----
  #define	LASTSLASH(s)	rindex ((s), '/')
  #define	FILEONLY(s)	(p != 0 ? p + 1 : (s))
  #define	DIRONLY(s)	(p == 0 ? "./" : p == (s) ? "/" \
! 			 : savestring ((s), p - (s)))
  
    /* $* is the stem from an implicit or static pattern rule.  */
    if (file->stem == 0)

Version 3.54 had the same problem.  Version 3.48 had a "+ 1", which
kept the trailing slash.
-- 
Karl Fox, Morning Star Technologies               karl@MorningStar.COM