X-Git-Url: https://feistymeow.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=nucleus%2Flibrary%2Fconfiguration%2Fapplication_configuration.h;h=293f0fdbc6980d73d6defd699e535e2d5248ac98;hb=de0da7f2f7958d4ba652ff2ef5c79991700141ac;hp=e51bb2105c23c7cafd1a70e3fbed2fc33ebe5c08;hpb=3ea085ec301ed1399dfa1e9f3a240312dc95410b;p=feisty_meow.git diff --git a/nucleus/library/configuration/application_configuration.h b/nucleus/library/configuration/application_configuration.h index e51bb210..293f0fdb 100644 --- a/nucleus/library/configuration/application_configuration.h +++ b/nucleus/library/configuration/application_configuration.h @@ -1,19 +1,17 @@ #ifndef APPLICATION_CONFIGURATION_GROUP #define APPLICATION_CONFIGURATION_GROUP -/*****************************************************************************\ -* * -* Name : path configuration definitions * -* Author : Chris Koeritz * -* * -******************************************************************************* -* Copyright (c) 2000-$now By Author. This program is free software; you can * -* redistribute it and/or modify it under the terms of the GNU General Public * -* License as published by the Free Software Foundation; either version 2 of * -* the License or (at your option) any later version. This is online at: * -* http://www.fsf.org/copyleft/gpl.html * -* Please send any updates to: fred@gruntose.com * -\*****************************************************************************/ +/** + * Name: path configuration definitions + * Author: Chris Koeritz + **** + * Copyright (c) 2000-$now By Author. This program is free software; you can + * redistribute it and/or modify it under the terms of the GNU General Public + * License as published by the Free Software Foundation; either version 2 of + * the License or (at your option) any later version. This is online at: + * http://www.fsf.org/copyleft/gpl.html + * Please send any updates to: fred@gruntose.com + */ #include #include @@ -76,9 +74,20 @@ public: //!< retrieves the core binary directory location from paths.ini. static basis::astring get_logging_directory(); - //!< returns the directory where log files will be stored. + //!< returns the folder where the log files for the feisty meow system are stored. + /*!< any log files should be written to this folder by the rest of the codebase, + unless there are special purposes for those log files. but logs from general + operation of feisty meow should be written in this directory. */ + + static const basis::astring &virtual_unix_root(); + //!< returns the path to the unix root, which may be simulated. + /*!< on unix, this will just return '/'. on win32 with cygwin installed, + this will return the cygwin path for '/' that was detected at build time. + this is often "c:/cygwin", which we use as a default if the path isn't + detected properly. */ // the following are key names within the main configuration file. + // not generally for external use. static const basis::astring &GLOBAL_SECTION_NAME(); //!< the root section name for our configuration items in the main ini file. @@ -88,15 +97,18 @@ public: to particular programs or subsystems should be contained in their own section. */ -/// static const basis::astring &LOCAL_FOLDER_NAME(); - //!< entry name in the config file that points at the installation root. - /*!< this is where all files for this product are stored on "this" machine. */ - static const basis::astring &LOGGING_FOLDER_NAME(); - //!< the location where the log files for the system are stored. - /*!< this is always considered to be a directory under the local folder. - the make_logfile_name() function (see below) can be used to create a - properly formed filename for logging. */ + //!< the tag used for finding our logging path in the paths config file. + + static const basis::astring &DEFAULT_VIRTUAL_UNIX_ROOT(); + //!< default value if we don't find our setting for virtual root. + /*!< this is bound to fail on many occasions if it's actually used on + windoze for the default, but if we don't have good information ready, + we can't just intuit the virtual unix root; we are not kreskin. the + virtual unix environment could be MSYS, Cygwin, or others. Currently, + if Cygwin is used during the build process, then the default should + never be needed. support for other systems will be added as time + permits and users clamor for them. */ // helper methods. @@ -115,7 +127,7 @@ public: need a filename. an empty string is returned on failure to create the directory. */ -#ifdef __UNIX__ +#if defined(__UNIX__) || defined(__GNU_WINDOWS__) #ifdef __APPLE__ static basis::astring get_cmdline_for_apple(); #endif