Using the Backslash ("\") Character in NMAKE

Last reviewed: January 24, 1995
Article ID: Q43064
The information in this article applies to:
  • Microsoft NMAKE Utility for MS-DOS, versions 1.01, 1.11, 1.12, 1.13, 1.2, 1.3, and 1.4
  • Microsoft NMAKE Utility for OS/2, versions 1.01, 1.11, and 1.21
  • Microsoft NMAKE Utility for Windows NT, versions 1.4 and 1.5

SUMMARY

In NMAKE, the backslash "\" character has two different meanings depending on the context in which it is used. It can be used as a line- continuation character or as a path specifier.

MORE INFORMATION

The backslash is used primarily as a line-continuation character. For example, if a dependency line in your makefile extends to more than one line, use the backslash to continue it to the next line. You can place a space prior to the backslash or append it directly to the last dependent file, as the following examples demonstrate:

TARGET1: obj1 obj2 obj3 obj4 obj5 \

  obj6 obj7

TARGET2: obj1 obj2 obj3 obj4 obj5\
  obj6 obj7

NMAKE also uses the backslash as a path specifier. When a backslash is the last character on a line and is used as a path specifier, place a caret "^" character before the backslash to override its default use as a line-continuation character.

The following macro definition demonstrates using the backslash as a path specifier.

exe_dir = c:\bin^\

In the following case, NMAKE interprets the trailing backslash as a line-continuation character which is contrary to the meaning the context requires:

exe_dir = c:\bin\

In a macro, specifying two backslashes in succession ("\\") nullifies its use as a line-continuation character. However, when NMAKE expands the macro, both backslash characters appear and an incorrect path results.


Additional reference words: kbinf kbinf 1.20 1.30 1.40 1.50
KBCategory: kbtool
KBSubcategory: NmakeIss


THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY.

Last reviewed: January 24, 1995
© 1998 Microsoft Corporation. All rights reserved. Terms of Use.