changeset 26232:90487d5431cc

doc: bring mkoctfile command doc strings into agreement * mkoctfile.1: Bring --print documentation into agreement with latest changes. Use correct hyphen escaping for all option strings. * mkoctfile.m: Bring --print documentation into agreement with latest changes. Update the complete list of recognized source file extensions. * mkoctfile.in.cc (help_msg): Fix sorting and spacing of lists of variables.
author Mike Miller <mtmiller@octave.org>
date Thu, 13 Dec 2018 19:00:28 -0800
parents c36b6e371f5d
children 59bc720d1bf9
files doc/interpreter/mkoctfile.1 scripts/miscellaneous/mkoctfile.m src/mkoctfile.in.cc
diffstat 3 files changed, 189 insertions(+), 88 deletions(-) [+]
line wrap: on
line diff
--- a/doc/interpreter/mkoctfile.1	Thu Dec 13 17:04:01 2018 -0800
+++ b/doc/interpreter/mkoctfile.1	Thu Dec 13 19:00:28 2018 -0800
@@ -70,7 +70,7 @@
 Pass flags to the compiler such as \fB\-Wa,\fP\fIOPTION\fP.
 .TP
 .B \-Wl,...
-Pass flags to the linker such as \fB\-Wl,-rpath=...\fP
+Pass flags to the linker such as \fB\-Wl,\-rpath=...\fP
 .TP
 .B \-M\fR,\fB \-\-depend
 Generate dependency files (.d) for C and C++ source files.
@@ -78,10 +78,10 @@
 .B \-c
 Compile but do not link.
 .TP
-.B \-\-link-stand-alone
+.B \-\-link\-stand\-alone
 Link a stand-alone executable file.
 .TP
-.B \-s\fR,\fB --strip
+.B \-s\fR,\fB \-\-strip
 Strip the output file.
 .TP
 .B \-\-mex
@@ -92,40 +92,91 @@
 specified) unless linking a stand-alone executable.
 .TP
 .B \-p \fIVAR\fP\fR,\fB \-\-print \fIVAR\fP
-Print configuration variable \fIVAR\fP.  Recognized variables are:
+Print configuration variable \fIVAR\fP.  There are three categories of
+variables:
+.IP
+Octave configuration variables that users may override with environment
+variables.  These are used in commands that mkoctfile executes.
+.RS
+.Vb
+    ALL_CFLAGS                  LAPACK_LIBS
+    ALL_CXXFLAGS                LDFLAGS
+    ALL_FFLAGS                  LD_CXX
+    ALL_LDFLAGS                 LD_STATIC_FLAG
+    BLAS_LIBS                   LFLAGS
+    CC                          LIBDIR
+    CFLAGS                      LIBOCTAVE
+    CPICFLAG                    LIBOCTINTERP
+    CPPFLAGS                    OCTAVE_LINK_OPTS
+    CXX                         OCTINCLUDEDIR
+    CXXFLAGS                    OCTAVE_LIBS
+    CXXPICFLAG                  OCTAVE_LINK_DEPS
+    DL_LD                       OCTLIBDIR
+    DL_LDFLAGS                  OCT_LINK_DEPS
+    F77                         OCT_LINK_OPTS
+    F77_INTEGER8_FLAG           RDYNAMIC_FLAG
+    FFLAGS                      SPECIAL_MATH_LIB
+    FPICFLAG                    XTRA_CFLAGS
+    INCFLAGS                    XTRA_CXXFLAGS
+    INCLUDEDIR
+.Ve
+.RE
+.IP
+Octave configuration variables as above, but currently unused by mkoctfile.
 .RS
 .Vb
-    ALL_CFLAGS                FFTW3F_LDFLAGS
-    ALL_CXXFLAGS              FFTW3F_LIBS
-    ALL_FFLAGS                FLIBS
-    ALL_LDFLAGS               FPICFLAG
-    AR                        INCFLAGS
-    BLAS_LIBS                 LAPACK_LIBS
-    CC                        LDFLAGS
-    CFLAGS                    LD_CXX
-    CPICFLAG                  LD_STATIC_FLAG
-    CPPFLAGS                  LFLAGS
-    CXX                       LIBOCTAVE
-    CXXFLAGS                  LIBOCTINTERP
-    CXXPICFLAG                LIBS
-    DEPEND_EXTRA_SED_PATTERN  OCTAVE_LIBS
-    DEPEND_FLAGS              OCTAVE_LINK_DEPS
-    DL_LD                     OCT_LINK_DEPS
-    DL_LDFLAGS                RANLIB
-    EXEEXT                    RDYNAMIC_FLAG
-    F77                       READLINE_LIBS
-    F77_INTEGER_8_FLAG        XTRA_CFLAGS
-    FFLAGS                    XTRA_CXXFLAGS
+    AR
+    DEPEND_EXTRA_SED_PATTERN
+    DEPEND_FLAGS
+    FFTW3F_LDFLAGS
+    FFTW3F_LIBS
     FFTW3_LDFLAGS
     FFTW3_LIBS
+    FFTW_LIBS
+    FLIBS
+    LIBS
+    RANLIB
+    READLINE_LIBS
+.Ve
+.RE
+.IP
+Octave configuration variables that are provided for informational purposes
+only.  Except for OCTAVE_HOME and OCTAVE_EXEC_HOME, users may not override
+these variables.
+.IP
+If OCTAVE_HOME or OCTAVE_EXEC_HOME are set in the environment, then other
+variables are adjusted accordingly with OCTAVE_HOME or OCTAVE_EXEC_HOME
+substituted for the original value of the directory specified by the
+\-\-prefix or \-\-exec\-prefix options that were used when Octave was
+configured.
+.RS
+.Vb
+    API_VERSION                 LOCALFCNFILEDIR
+    ARCHLIBDIR                  LOCALOCTFILEDIR
+    BINDIR                      LOCALSTARTUPFILEDIR
+    CANONICAL_HOST_TYPE         LOCALVERARCHLIBDIR
+    DATADIR                     LOCALVERFCNFILEDIR
+    DATAROOTDIR                 LOCALVEROCTFILEDIR
+    DEFAULT_PAGER               MAN1DIR
+    EXEC_PREFIX                 MAN1EXT
+    EXEEXT                      MANDIR
+    FCNFILEDIR                  OCTAVE_EXEC_HOME
+    IMAGEDIR                    OCTAVE_HOME
+    INFODIR                     OCTDATADIR
+    INFOFILE                    OCTDOCDIR
+    LIBEXECDIR                  OCTFILEDIR
+    LOCALAPIARCHLIBDIR          OCTFONTSDIR
+    LOCALAPIFCNFILEDIR          STARTUPFILEDIR
+    LOCALAPIOCTFILEDIR          VERSION
+    LOCALARCHLIBDIR
 .Ve
 .RE
 .TP
-.B \-v\fR,\fB --verbose
+.B \-v\fR,\fB \-\-verbose
 Echo commands as they are executed.
 .TP
 .B file
-Compile or link file.  Recognized file types are
+Compile or link file.  Recognized file types are:
 .RS
 .Vb
    .c    C source
--- a/scripts/miscellaneous/mkoctfile.m	Thu Dec 13 17:04:01 2018 -0800
+++ b/scripts/miscellaneous/mkoctfile.m	Thu Dec 13 19:00:28 2018 -0800
@@ -74,36 +74,82 @@
 ##
 ## @item  -p VAR
 ## @itemx --print VAR
-## Print the configuration variable VAR@.  Recognized variables are:
+## Print configuration variable VAR@.  There are three categories of
+## variables:
+##
+## Octave configuration variables that users may override with environment
+## variables.  These are used in commands that @code{mkoctfile} executes.
+##
+## @example
+##    ALL_CFLAGS                  LAPACK_LIBS
+##    ALL_CXXFLAGS                LDFLAGS
+##    ALL_FFLAGS                  LD_CXX
+##    ALL_LDFLAGS                 LD_STATIC_FLAG
+##    BLAS_LIBS                   LFLAGS
+##    CC                          LIBDIR
+##    CFLAGS                      LIBOCTAVE
+##    CPICFLAG                    LIBOCTINTERP
+##    CPPFLAGS                    OCTAVE_LINK_OPTS
+##    CXX                         OCTINCLUDEDIR
+##    CXXFLAGS                    OCTAVE_LIBS
+##    CXXPICFLAG                  OCTAVE_LINK_DEPS
+##    DL_LD                       OCTLIBDIR
+##    DL_LDFLAGS                  OCT_LINK_DEPS
+##    F77                         OCT_LINK_OPTS
+##    F77_INTEGER8_FLAG           RDYNAMIC_FLAG
+##    FFLAGS                      SPECIAL_MATH_LIB
+##    FPICFLAG                    XTRA_CFLAGS
+##    INCFLAGS                    XTRA_CXXFLAGS
+##    INCLUDEDIR
+## @end example
+##
+## Octave configuration variables as above, but currently unused by
+## @code{mkoctfile}.
 ##
 ## @example
-##    ALL_CFLAGS                  INCFLAGS
-##    ALL_CXXFLAGS                INCLUDEDIR
-##    ALL_FFLAGS                  LAPACK_LIBS
-##    ALL_LDFLAGS                 LD_CXX
-##    AR                          LDFLAGS
-##    BLAS_LIBS                   LD_STATIC_FLAG
-##    CC                          LFLAGS
-##    CFLAGS                      LIBDIR
-##    CPICFLAG                    LIBOCTAVE
-##    CPPFLAGS                    LIBOCTINTERP
-##    CXX                         LIBS
-##    CXXFLAGS                    OCTAVE_HOME
-##    CXXPICFLAG                  OCTAVE_LIBS
-##    DEPEND_EXTRA_SED_PATTERN    OCTAVE_LINK_DEPS
-##    DEPEND_FLAGS                OCTAVE_LINK_OPTS
-##    DL_LD                       OCTAVE_PREFIX
-##    DL_LDFLAGS                  OCTINCLUDEDIR
-##    F77                         OCTLIBDIR
-##    F77_INTEGER8_FLAG           OCT_LINK_DEPS
-##    FFLAGS                      OCT_LINK_OPTS
-##    FFTW3F_LDFLAGS              RANLIB
-##    FFTW3F_LIBS                 RDYNAMIC_FLAG
-##    FFTW3_LDFLAGS               READLINE_LIBS
-##    FFTW3_LIBS                  SPECIAL_MATH_LIB
-##    FFTW_LIBS                   XTRA_CFLAGS
-##    FLIBS                       XTRA_CXXFLAGS
-##    FPICFLAG
+##    AR
+##    DEPEND_EXTRA_SED_PATTERN
+##    DEPEND_FLAGS
+##    FFTW3F_LDFLAGS
+##    FFTW3F_LIBS
+##    FFTW3_LDFLAGS
+##    FFTW3_LIBS
+##    FFTW_LIBS
+##    FLIBS
+##    LIBS
+##    RANLIB
+##    READLINE_LIBS
+## @end example
+##
+## Octave configuration variables that are provided for informational
+## purposes only.  Except for @samp{OCTAVE_HOME} and @samp{OCTAVE_EXEC_HOME},
+## users may not override these variables.
+##
+## If @env{OCTAVE_HOME} or @env{OCTAVE_EXEC_HOME} are set in the environment,
+## then other variables are adjusted accordingly with @env{OCTAVE_HOME} or
+## @env{OCTAVE_EXEC_HOME} substituted for the original value of the directory
+## specified by the @samp{--prefix} or @samp{--exec-prefix} options that were
+## used when Octave was configured.
+##
+## @example
+##    API_VERSION                 LOCALFCNFILEDIR
+##    ARCHLIBDIR                  LOCALOCTFILEDIR
+##    BINDIR                      LOCALSTARTUPFILEDIR
+##    CANONICAL_HOST_TYPE         LOCALVERARCHLIBDIR
+##    DATADIR                     LOCALVERFCNFILEDIR
+##    DATAROOTDIR                 LOCALVEROCTFILEDIR
+##    DEFAULT_PAGER               MAN1DIR
+##    EXEC_PREFIX                 MAN1EXT
+##    EXEEXT                      MANDIR
+##    FCNFILEDIR                  OCTAVE_EXEC_HOME
+##    IMAGEDIR                    OCTAVE_HOME
+##    INFODIR                     OCTDATADIR
+##    INFOFILE                    OCTDOCDIR
+##    LIBEXECDIR                  OCTFILEDIR
+##    LOCALAPIARCHLIBDIR          OCTFONTSDIR
+##    LOCALAPIFCNFILEDIR          STARTUPFILEDIR
+##    LOCALAPIOCTFILEDIR          VERSION
+##    LOCALARCHLIBDIR
 ## @end example
 ##
 ## @item --link-stand-alone
@@ -122,14 +168,18 @@
 ## Echo commands as they are executed.
 ##
 ## @item file
-## The file to compile or link.  Recognized file types are
+## The file to compile or link.  Recognized file types are:
 ##
 ## @example
 ## @group
 ##    .c    C source
 ##    .cc   C++ source
+##    .cp   C++ source
+##    .cpp  C++ source
+##    .CPP  C++ source
+##    .cxx  C++ source
+##    .c++  C++ source
 ##    .C    C++ source
-##    .cpp  C++ source
 ##    .f    Fortran source (fixed form)
 ##    .F    Fortran source (fixed form)
 ##    .f90  Fortran source (free form)
--- a/src/mkoctfile.in.cc	Thu Dec 13 17:04:01 2018 -0800
+++ b/src/mkoctfile.in.cc	Thu Dec 13 19:00:28 2018 -0800
@@ -388,8 +388,8 @@
 "                          used in commands that mkoctfile executes.\n"
 "\n"
 "                            ALL_CFLAGS                  LAPACK_LIBS\n"
-"                            ALL_CXXFLAGS                LD_CXX\n"
-"                            ALL_FFLAGS                  LDFLAGS\n"
+"                            ALL_CXXFLAGS                LDFLAGS\n"
+"                            ALL_FFLAGS                  LD_CXX\n"
 "                            ALL_LDFLAGS                 LD_STATIC_FLAG\n"
 "                            BLAS_LIBS                   LFLAGS\n"
 "                            CC                          LIBDIR\n"
@@ -411,18 +411,18 @@
 "                          Octave configuration variables as above, but\n"
 "                          currently unused by mkoctfile.\n"
 "\n"
-"                             AR\n"
-"                             DEPEND_EXTRA_SED_PATTERN\n"
-"                             DEPEND_FLAGS\n"
-"                             FFTW3F_LDFLAGS\n"
-"                             FFTW3F_LIBS\n"
-"                             FFTW3_LDFLAGS\n"
-"                             FFTW3_LIBS\n"
-"                             FFTW_LIBS\n"
-"                             FLIBS\n"
-"                             LIBS\n"
-"                             RANLIB\n"
-"                             READLINE_LIBS\n"
+"                            AR\n"
+"                            DEPEND_EXTRA_SED_PATTERN\n"
+"                            DEPEND_FLAGS\n"
+"                            FFTW3F_LDFLAGS\n"
+"                            FFTW3F_LIBS\n"
+"                            FFTW3_LDFLAGS\n"
+"                            FFTW3_LIBS\n"
+"                            FFTW_LIBS\n"
+"                            FLIBS\n"
+"                            LIBS\n"
+"                            RANLIB\n"
+"                            READLINE_LIBS\n"
 "\n"
 "                          Octave configuration variables that are provided\n"
 "                          for informational purposes only.  Except for\n"
@@ -436,23 +436,23 @@
 "                          specified by the --prefix or --exec-prefix options\n"
 "                          that were used when Octave was configured.\n"
 "\n"
-"                            API_VERSION            LOCALFCNFILEDIR\n"
-"                            ARCHLIBDIR             LOCALOCTFILEDIR\n"
-"                            BINDIR                 LOCALSTARTUPFILEDIR\n"
-"                            CANONICAL_HOST_TYPE    LOCALVERARCHLIBDIR\n"
-"                            DATADIR                LOCALVERFCNFILEDIR\n"
-"                            DATAROOTDIR            LOCALVEROCTFILEDIR\n"
-"                            DEFAULT_PAGER          MAN1DIR\n"
-"                            EXEC_PREFIX            MAN1EXT\n"
-"                            EXEEXT                 MANDIR\n"
-"                            FCNFILEDIR             OCTAVE_EXEC_HOME\n"
-"                            IMAGEDIR               OCTAVE_HOME\n"
-"                            INFODIR                OCTDATADIR\n"
-"                            INFOFILE               OCTDOCDIR\n"
-"                            LIBEXECDIR             OCTFILEDIR\n"
-"                            LOCALAPIARCHLIBDIR     OCTFONTSDIR\n"
-"                            LOCALAPIFCNFILEDIR     STARTUPFILEDIR\n"
-"                            LOCALAPIOCTFILEDIR     VERSION\n"
+"                            API_VERSION                 LOCALFCNFILEDIR\n"
+"                            ARCHLIBDIR                  LOCALOCTFILEDIR\n"
+"                            BINDIR                      LOCALSTARTUPFILEDIR\n"
+"                            CANONICAL_HOST_TYPE         LOCALVERARCHLIBDIR\n"
+"                            DATADIR                     LOCALVERFCNFILEDIR\n"
+"                            DATAROOTDIR                 LOCALVEROCTFILEDIR\n"
+"                            DEFAULT_PAGER               MAN1DIR\n"
+"                            EXEC_PREFIX                 MAN1EXT\n"
+"                            EXEEXT                      MANDIR\n"
+"                            FCNFILEDIR                  OCTAVE_EXEC_HOME\n"
+"                            IMAGEDIR                    OCTAVE_HOME\n"
+"                            INFODIR                     OCTDATADIR\n"
+"                            INFOFILE                    OCTDOCDIR\n"
+"                            LIBEXECDIR                  OCTFILEDIR\n"
+"                            LOCALAPIARCHLIBDIR          OCTFONTSDIR\n"
+"                            LOCALAPIFCNFILEDIR          STARTUPFILEDIR\n"
+"                            LOCALAPIOCTFILEDIR          VERSION\n"
 "                            LOCALARCHLIBDIR\n"
 "\n"
 "  --link-stand-alone      Link a stand-alone executable file.\n"