In (info "(make) File Name Functions")
be sure to move the paragraph I have marked with X's,
AFTER the example.
'$(notdir NAMES...)'
Extracts all but the directory-part of each file name in NAMES. If
the file name contains no slash, it is left unchanged. Otherwise,
everything through the last slash is removed from it.
X A file name that ends with a slash becomes an empty string. This
X is unfortunate, because it means that the result does not always
X have the same number of whitespace-separated file names as the
X argument had; but we do not see any other valid alternative.
For example,
$(notdir src/foo.c hacks)
produces the result 'foo.c hacks'.