|
From: | Earnie Boyd |
Subject: | Re: Environment variables in makefiles with DOS |
Date: | Fri, 18 May 2007 08:59:30 -0400 |
User-agent: | Internet Messaging Program (IMP) H3 (4.0.4) |
Quoting Eli Zaretskii <address@hidden>:
Date: Thu, 17 May 2007 10:27:34 -0400 From: Earnie Boyd <address@hidden> Is there a windows API call to convert the filename to 8.3?Yes, GetShortPathName. See: http://msdn2.microsoft.com/en-us/library/aa364989.aspxPerhaps a windows hack could store the filename in 8.3?But how would this solve the problem in the case in point? The problem here is with the Makefile parser, which uses whitespace as separator. This happens much earlier than Make even knows it is dealing with a file name.
I was thinking the parser could store the value of the 8.3 for the long name if the value contained spaces but forget it as we don't know it is a file name being stored.
Btw, would using a function work here? Something like this: include $(SOURCE_ROOT)/$(file "Main Line")/default.mk where the hypothetical function $file just returns its argument. Would this work?
I think it might assuming the function $file returned the 8.3 version of the name. The include function though already knows its argument is a file path. For the include furnction writing the line as
include "$(SOURCE_ROOT)/Main Line/default.mk" should take care of the space issue or did I miss something. Earnie
[Prev in Thread] | Current Thread | [Next in Thread] |