Nokia Networks Home

Nokia nmake Product Builder

Quick Links

Related Products

Release Notes -- Nokia nmake lu3.4

June 2001
[Table of Contents] [Previous Section] [Next Section]

3. Bug Fixes and Enhancements

3.1 Baserules

  1. 990057 - possible problem with C++ implicit dependencies
    nmake is unable to track implicitly included files so issues a warning message (from variable implicit_template_definition_warning) if the compiler has an implicit include feature enabled and provides a means to disable it. Probing for make information detects compiler options to enable and disable an implicit include feature. These options are stored in the variables CC.IMPLICIT.INCLUDE.ENABLE and CC.IMPLICIT.INCLUDE.DISABLE respectively.
    See New Features: Support for C++ implicit includes
  2. 990096 - cc- does not support adding to existing CCFLAGS
    See New Features: cc-% support for adding flags to CCFLAGS
  3. 990140 - The implicit C++ templates problem
    If implicit_include=1 then nmake will attempt to emulate commonly used C++ implicit template definition search rules and automatically set up the required implicit header file dependencies.
    See New Features: Support for C++ implicit includes

3.2 cpp

  1. 010008 - cpp support of Sun C++ system include rewriting rule
    cpp supports the rewriting rule for Sun C++ include files via the new suffixsunwcch pragma. Probing for cpp information detects the need for the new pragma.
    See New Features: Improved support for Sun WorkShop(TM) 6 C++ compiler

3.3 Engine

  1. 010007 - EXTRASTATE causing :cc: files to rebuild
    Under certain conditions source files specified with :cc: would be recompiled unnecessarily. This has been fixed.
  2. 990038 - error when bld archive before shared version in vpath
    Archive members were not being bound correctly. This caused problems finding .o files down the viewpath in certain situations, particularly where the same .o file was used to make two targets, the first target being an archive library. The binding of archive members has been fixed.
  3. 990100 - prereq change did not trigger rebuild
    A bug has been fixed where changes to a prerequisite list did not cause the corresponding target be remade. For example, if prerequisite library -lfoo was changed to -lbar then relink the target. But changing -lbar back to -lfoo would not cause another relink as expected.

3.4 Operators

  1. 980000 - new :JAVA: operator
    New :JAVA: operator to build java code. Refer to docs/jman.html for details on using :JAVA:.
    See New Features: Introduction of dependency-based Java build support
  2. 990073 - :MAKE: should support absolute path
    Recurse to a full path specified on the right of :MAKE: if the VPATH is unset. If the VPATH set then only recurse to a full path if it is inside the top viewpath node; if the full path is outside the top node then issue a warning message and do not recurse into the directory.
  3. 990097 - :LIBRARY: forgets -L args with sparcworks C++
    When using :LIBRARY: to make a shared library with the Sun Sparcworks C++ compiler, -L<dir> flags are omitted from the link line for any specified prerequisite libraries. This would cause link errors when making a shared library with prerequisite libraries and has been fixed.
  4. 990101 - set CCFLAGS for specific targets on lhs of ::
    You may now define more than one flag in CCFLAGS in the prerequisite list of a :: assertion. The flags will be used for building the corresponding target only.
    See New Features: Scoped CCFLAGS for :: operator
  5. 990121 - additional CC flag gets added each nmake run
    Using :cc: to identify C code and specifying a compiler flag on the corresponding :: assertion would keep adding the specified flag each time nmake was run. That is, the flag would be repeated multiple times on the compile line for each nmake execution. This also caused the file to keep rebuilding as it looked like the flags were changing. This behavior has been corrected.

3.5 Probe

  1. 010008 - cpp support of Sun C++ system include rewriting rule
    See cpp: 010008
  2. 990057 - possible problem with C++ implicit dependencies
    See Baserules: 990057
  3. 990114 - probe hints file
    The new probe_hints file provides a convenient way to specify local installation overrides for selected probe variables. The probe_hints file is consulted during the probe operation so further maintenance of probe files is unnecessary.
    See New Features: Probe hints

3.6 Variables

  1. New base rules variable implicit_template_definition_warning - see 990057
  2. New probe variable CC.IMPLICIT.INCLUDE.ENABLE - see 990057
  3. New probe variable CC.IMPLICIT.INCLUDE.DISABLE - see 990057
  4. New base rules variable implicit_include - see 990140

3.7 Miscellaneous

  1. 990115 - coshell remote shell fails if .profile does not exist
    When using coshell, if the user had no .profile in their home directory on the remote machine then the remote shell would fail. This has been fixed so coshell checks for the existence of the .profile before trying to source it.
  2. 990160- Uniform version identification
    The command what_version_nmake has been added to the nmake bin/ directory. This command returns the current version of nmake. The -v (verbose) flag shows the version of various nmake components.
    See New Features: New what_version_nmake command

[Table of Contents] [Previous Section] [Next Section]

Last Update: Friday,12-Aug-2016 12:31:54 EDT