Alcatel-Lucent nmake Product Builder
Release Notes -- Alcatel-Lucent nmake 3.1.2
1997
[Table of Contents]
[Previous Section]
[Next Section]
3. Known Bugs and Remarks
3.1 Bugs
The following is a list of known bugs:
- The problem about using link=* to install targets in any adjacent nodes in viewpathing still exists. You may still use link=* to install, but only in alternate nodes.
- The state information of .SOURCE.mk
does not work correctly in viewpathing.
For instance, VPATH is set as VPATH=A:B
and the Makefile contains statements like
.SOURCE.mk : incl include "global.mk"The B node is built by using the "global.mk" in the B node. Then, the A node is built by using the "global.mk" in the A node. If the "global.mk" in A is removed, nmake cannot detect that "global.mk" is changed when the A node is built again.
To work around the problem, users may use the -I flag on the command line to point the directory where the "global.mk" is located.nmake -Iinclor to avoid using .SOURCE.mk in the makefile and use:include "./incl/global.mk"instead. - cpp complains when it processes a C++ header file from /usr/include that contains long comments (more than 2 blocks). The work-around, which is to shorten the comments, may require help from the system administrator.
3.2 Remarks
- Using :LIBRARY: with -llibname in the prerequisite list adds -llibname to a special required libraries file, but only if the library actually exists. This feature is meant for automatically including system libraries whenever the target library is used. In other words, the -llibname should only reference system libraries.
- :LINK: does not handle archive files that are generated by :: or :LIBRARY: assertion operators. Users should avoid use of :LINK: on archive files.
- When the cpp -I-S flag is on, -D-M is disabled. User should not use these two flags together.
- If a C file is built by using :cc: and this C file shares a generated header file with a C++ file specified in the same makefile, this generated header file always gets regenerated during the build. Since :cc: uses a separate statefile, the information in this statefile is not in sync with it in the normal statefile. Users should avoid this practice and should generate the header file in a separate makefile at an earlier time during the build.
- Users should avoid including the same header file with <...>-style and "..."-style #include statements in source files managed by a single makefile. nmake will end up assigning.STD.INCLUDE and .LCL.INCLUDE attributes to the header file, and that could result in incorrect -I lists in the compiler command lines generated.
[Table of Contents] [Previous Section] [Next Section]
Last Update: Tuesday, 1-Mar-2011 14:55:43 EST







