| |
Version 4.29:
-
System profile for cygwin added to config.h.
Version 4.28:
-
MKMF_SYMLINKS macro lists the source code files that have been symbolically
linked into the current directory by mkmf.
-
-D command-line option becomes -E. -D remains for backward compatibility
until mkmf 5.0.
-
Macro references in the LIBS macro are not expanded when the makefile is edited.
-
A command-line -S option overrides a -S or -SS option in the
MKMF_FLAGS macro. Previously, a command-line -S would cause a
a MKMF_FLAGS -S macro to be interpreted as -SS.
Version 4.27:
-
Dynamically expand the input line buffer when reading a long line.
-
If I18N is defined in the makefile set the locale to the default
locale and check for multibyte characters before looking for a
backslash character at the end of a line.
-
When analyzing dependencies, ensure that the separator between
#include and the following file name is ', ", <, (, or white space.
-
If a duplicate file is discovered in a VPATH directory when
symbolically linking files into the current directory, include the
directory in the warning message.
-
System profile for linux added to config.h.
Version 4.26:
-
Support multiple targets in a makefile with SRCS_* and OBJS_*
macros. Mkmf scans SRCS_* for included files and generates
dependency information. OBJS_* macros are automatically
updated with object files corresponding to source code files
listed in SRCS_* macro definitions.
-
Avoid expanding HDRS and SRCS macros in the makefile if the
-u option is specified.
Version 4.25:
-
Expand macros such as CFLAGS before using them.
Version 4.24:
-
Macros with empty definitions that are defined on the command
line or in the macro definition file are now correctly terminated
with a newline.
-
Mkmf configuration macro names now start with "MKMF_". Old
configuration macro names without the underscore are still
supported but will be eliminated in MKMF release 5.
-
Makefiles have been updated for HP-UX 10.0.
Version 4.23:
-
Mkmf no longer reads the optional initialization file called
.mkmfrc in the user's home directory. Mkmf still looks for
an optional file called mkmfrc in the standard template directory.
-
Mkmf reads an optional macro definition file specified on the
command line. Unlike the initialization file, the macros in
the definition file will replace any matching macros in the
makefile.
-
Duplicate file names are eliminated from the EXTHDRS, SYSHDRS, and
OBJS macros before the makefile is written.
-
File names in the EXTHDRS, SYSHDRS, and OBJS macros are packed
together on an 80-column line instead of one per line as in
previous versions.
-
Macros defined on the command line or in the macro definition file
are continued on multiple lines if they exceed the 80-column line
length.
Version 4.22:
-
Mkmf reads an optional initialization file called .mkmfrc in the
user's home directory. This file may contain additional macros
for configuring mkmf. If .mkmfrc does not exist, mkmf looks for
an optional file called mkmfrc in the standard template directory.
-
Avoid copying a macro name to the macro name buffer in findmacro()
before finding out whether it is a macro name. Previously, a long
target name would exceed the bounds of the macro name buffer.
-
Allow comments in rules. Continued lines in rules no longer need to
start with a tab.
-
Generate external header dependencies even if the EXTHDRS macro
is not present in a makefile. (The user may have excluded EXTHDRS
from the makefile to prevent the generated output from exceeding
the length of the macro buffer in some make programs.)
-
Allow header file names with embedded `$' characters such as
#include "dec$include:X.h".
-
Remove newlines from command-line macro definitions.
-
Allow absolute path names in "#include " statements.
-
Check for empty DEST macro in makefile templates; put -o $(PROGRAM)
directly after $(LDFLAGS) in program templates; avoid suppressing
echo of link command.
-
Use the SYSLIBS macro in C.p and C++.p templates for system libraries.
-
If the _HasFortranDotFirst configuration option is set, search the
current directory for Fortran include files before searching any
include directory. Certain compilers such as the AIX xlf Fortran
compiler use this search convention.
-
The ptest shell command uses Bourne shell for improved
portability. Explicitly use sh(1) to execute test scripts.
Version 4.21:
-
Always return a positive hash table value for strings containing
8-bit and 16-bit characters.
-
Skip dependency analysis and object file name generation for files
without suffixes.
-
Even when using the -u option to prevent the SRCS macro from being
automatically updated, still search for files in VPATH directories
prior to symbolic linking or dependency analysis.
-
Updated the catopen() NLS open message catalog function to comply
with XPG4.
-
Recognize the POSIX default processing language when looking for
an NLS message catalog.
-
Skip command lines (lines beginning with a tab) following
dependency lines when editing macros. (A command line starting
with a definition for a shell environment variable looks like a
macro definition.)
Version 4.20:
- Put the names of nested standard included files specified by
double quotes in SYSHDRS instead of EXTHDRS.
Version 4.19:
-
Return exit code 8 if Cobol post-processing fails.
-
Remove redundant Cobol-specific error messages.
Version 4.18:
-
Put the names of standard included files (found in the directories
defined by the MKMFSTDINCDIRS macros, or the /usr/include directory)
in the SYSHDRS macro.
-
Avoid dependency analysis for header files that are external to
the current directory if the EXTHDRS macro is not defined.
-
Allow the standard and project-specific makefile template directories
to have different names.
-
Remove explanatory help message about missing included files.
Version 4.17:
-
Mkmf handles multibyte file names in the SRCS macro (specified
either on the command line or in the makefile with the -u option.)
-
Mkmf accepts source file names without suffixes.
-
Mkmf returns exit code 2 if the built-in dependency generator
fails to find an included file, or 4 if the external Cobol
dependency generator fails to analyze some Cobol source files.
Mkmf returns exit code 6 if both fail simultaneously.
Version 4.16:
-
Mkmf supports native language messages (using X/Open NLS functions).
-
Mkmf no longer uses the -i interactive option.
Version 4.15:
-
Mkmf no longer recognizes Cobol source files unless Cobol support
is turned on.
-
The MKMFLIB macro defines the makefile template directory in the
top-level makefile.
- The mkmf manual page is no longer formatted by nroff(1) before
installation.
Version 4.14:
-
Mkmf avoids updating the HDRS and SRCS macros in the makefile if
the -u option is specified.
-
The MKMFFLAGS macro can be used within a makefile to set the
-a, -d, -e, -S, and -u makefile editor options.
-
In addition to the LDFLAGS macro definition and the LPATH
environment variable, mkmf looks at the LDOPTS, LD_OPTIONS,
and LD_LIBRARY_PATH environment variables when it expands the
list of libraries in the LIBS macro.
-
The standard directories in which mkmf looks for libraries and
included source files can be redefined by the MKMFSTDLIBDIRS
and MKMFSTDINCDIRS_ macros respectively.
-
Mkmf ignores COBDIR and LPATH macro definitions in a makefile
unless they are also environment variables.
Version 4.13:
-
MicroFocus Cobol support hooks.
-
Mkmf returns exit(2) if it fails to find some included
header files.
-
Mkmf no longer crashes when dependency analysis is off
and there is a SYSHDRS macro in the makefile.
Version 4.12:
-
SunOS 5.x (Solaris 2.x) support.
-
Detect comments in macro lines.
Version 4.11:
-
Mkmf ports more readily to both 4BSD and System V UNIX systems.
In particular, mkmf has been ported to Hewlett-Packard HP-UX
7.0 on the HP9000 Series 300 and and 800 systems, HP-UX 8.0 on
the HP9000 Series 300 and 700 systems, Apollo Domain/OS 10.2
and 10.3 on a DN4500, Sun OS 4.1 on a 4/110, IBM AIX 3.1 on an
RS/6000, Apple Macintosh A/UX 2.0.1 on a Macintosh IIfx, Cray
UNICOS 5.0 and 6.0 on a Cray Y/MP, Xenix, and 4.4BSD.
-
Mkmf searches for C++ header files in /usr/include/CC.
-
Mkmf recognizes C++ source files with suffixes such as .cc,
.cxx, .cpp, and .C, and C++ header files with suffixes such as
.hxx, .hpp, and .H.
-
Mkmf recognizes C++ -I options in CXXFLAGS, CCFLAGS, and C++FLAGS.
-
Mkmf supports the VPATH source directory path mechanism of
make(1). For versions of make(1) that don't recognize VPATH,
the -S option symbolically links files from directories in
VPATH into the current directory.
-
Mkmf optionally generates dependencies for /usr/include files
if the SYSHDRS macro is specified in the makefile.
-
Mkmf reads the environment and recognizes all variables as
macro definitions. The -e option allows the environment
variables to override the macro definitions in the makefile.
-
Mkmf supports alternate archive libraries via the LPATH macro
and the -L linker option.
-
Mkmf supports language-dependent templates via the -M option.
The templates now reside in /usr/contrib/lib/mkmf. The location
of this directory may be specified via the INSTALLDIR compile-
time option in the source makefile.
-
Mkmf generate library makefiles with target or dependency names
as archive library members if the -L option is specified.
-
Mkmf avoids adding source files to the SRCS macro definition
if they can be generated by source transformation rules.
-
Mkmf looks for #include references in directories
specified by -I preprocessor flags.
-
Mkmf accepts macro names which include underscores.
-
Mkmf ignores SCCS files and files beginning with #.
-
Mkmf allows Apollo Domain/OS pathnames beginning with //.
-
Mkmf uses the cp(1) command to install programs and libraries
instead of /etc/install.
Back to top
|