diff libinterp/corefcn/toplev.cc @ 29462:280defaf2023

pkg.m: Install local packages in version dependent path (bug #58299). * scripts/pkg/pkg.m: Store local package list in (platform-specific) version dependent path. * scripts/pkg/private/default_prefix.m: Change the default local package installation location to a (platform-specific) version dependent path. * doc/interpreter/package.txi: Adapt documentation. * scripts/pkg/private/install.m: Create directory for local package list if it doesn't exist yet. * libinterp/corefcn/toplev.cc (__octave_config_info__): Add OCTAVE_MAJOR_VERSION, OCTAVE_MINOR_VERSION, and OCTAVE_PATCH_VERSION to output. * libinterp/corefcn/defaults.cc (Fuser_config_dir, Fuser_data_dir): Add new functions to query platform-specific path for user data and user configuration files. * doc/interpreter/system.txi: Add docstrings of new functions to manual.
author Markus Mützel <markus.muetzel@gmx.de>
date Sun, 21 Mar 2021 18:10:14 +0100
parents 7854d5752dd2
children aef11bb4e6d1
line wrap: on
line diff
--- a/libinterp/corefcn/toplev.cc	Mon Mar 22 21:09:04 2021 +1100
+++ b/libinterp/corefcn/toplev.cc	Sun Mar 21 18:10:14 2021 +0100
@@ -72,6 +72,9 @@
 #  define SHELL_PATH "/bin/sh"
 #endif
 
+#define STRINGIFY(s) STRINGIFY1(s)
+#define STRINGIFY1(s) #s
+
 DEFUN (warranty, , ,
        doc: /* -*- texinfo -*-
 @deftypefn {} {} warranty ()
@@ -423,9 +426,11 @@
            { "localverarchlibdir", octave::config::local_ver_arch_lib_dir () },
            { "localverfcnfiledir", octave::config::local_ver_fcn_file_dir () },
            { "localveroctfiledir", octave::config::local_ver_oct_file_dir () },
+           { "major_version", STRINGIFY (OCTAVE_MAJOR_VERSION) },
            { "man1dir", octave::config::man1_dir () },
            { "man1ext", octave::config::man1_ext () },
            { "mandir", octave::config::man_dir () },
+           { "minor_version", STRINGIFY (OCTAVE_MINOR_VERSION) },
            { "octdatadir", octave::config::oct_data_dir () },
            { "octdocdir", octave::config::oct_doc_dir () },
            { "octetcdir", octave::config::oct_etc_dir () },
@@ -434,6 +439,7 @@
            { "octincludedir", octave::config::oct_include_dir () },
            { "octlibdir", octave::config::oct_lib_dir () },
            { "octtestsdir", octave::config::oct_tests_dir () },
+           { "patch_version", STRINGIFY (OCTAVE_PATCH_VERSION) },
            { "release_date", OCTAVE_RELEASE_DATE },
            { "startupfiledir", octave::config::startupfile_dir () },
            { "version", OCTAVE_VERSION }};