ENH: Add documentation on the problem with system wide path for looking up dynamic libraries. STYLE: Fix trailing white spaces
This commit is contained in:
parent
87fdcd6eb6
commit
8e7d92049e
@ -64,6 +64,14 @@ typedef void (*DynamicLoaderFunction)();
|
|||||||
*
|
*
|
||||||
* Directory currently works with Windows, Apple, HP-UX and Unix (POSIX)
|
* Directory currently works with Windows, Apple, HP-UX and Unix (POSIX)
|
||||||
* operating systems
|
* operating systems
|
||||||
|
*
|
||||||
|
* \warning dlopen on *nix system works the following way:
|
||||||
|
* If filename contains a slash ("/"), then it is interpreted as a (relative or absolute)
|
||||||
|
* pathname. Otherwise, the dynamic linker searches for the library as follows :
|
||||||
|
* see ld.so(8) for further details):
|
||||||
|
* Whereas this distinction does not exist on Win32. Therefore ideally you should be doing
|
||||||
|
* full path to garantee to have a consistent way of dealing with dynamic loading of shared
|
||||||
|
* library.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
class @KWSYS_NAMESPACE@_EXPORT DynamicLoader
|
class @KWSYS_NAMESPACE@_EXPORT DynamicLoader
|
||||||
|
@ -205,15 +205,15 @@ public:
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Return string with space added between capitalized words
|
* Return string with space added between capitalized words
|
||||||
* (i.e. EatMyShorts becomes Eat My Shorts
|
* (i.e. EatMyShorts becomes Eat My Shorts )
|
||||||
*/
|
*/
|
||||||
static kwsys_stl::string AddSpaceBetweenCapitalizedWords(
|
static kwsys_stl::string AddSpaceBetweenCapitalizedWords(
|
||||||
const kwsys_stl::string&);
|
const kwsys_stl::string&);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Append two or more strings and produce new one.
|
* Append two or more strings and produce new one.
|
||||||
* Programmer must 'delete []' the resulting string, which was allocated
|
* Programmer must 'delete []' the resulting string, which was allocated
|
||||||
* with 'new'.
|
* with 'new'.
|
||||||
* Return 0 if inputs are empty or there was an error
|
* Return 0 if inputs are empty or there was an error
|
||||||
*/
|
*/
|
||||||
static char* AppendStrings(
|
static char* AppendStrings(
|
||||||
@ -221,7 +221,7 @@ public:
|
|||||||
static char* AppendStrings(
|
static char* AppendStrings(
|
||||||
const char* str1, const char* str2, const char* str3);
|
const char* str1, const char* str2, const char* str3);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Estimate the length of the string that will be produced
|
* Estimate the length of the string that will be produced
|
||||||
* from printing the given format string and arguments. The
|
* from printing the given format string and arguments. The
|
||||||
* returned length will always be at least as large as the string
|
* returned length will always be at least as large as the string
|
||||||
@ -237,7 +237,7 @@ public:
|
|||||||
*/
|
*/
|
||||||
static kwsys_stl::string EscapeChars(
|
static kwsys_stl::string EscapeChars(
|
||||||
const char *str, const char *chars_to_escape, char escape_char = '\\');
|
const char *str, const char *chars_to_escape, char escape_char = '\\');
|
||||||
|
|
||||||
/** -----------------------------------------------------------------
|
/** -----------------------------------------------------------------
|
||||||
* Filename Manipulation Routines
|
* Filename Manipulation Routines
|
||||||
* -----------------------------------------------------------------
|
* -----------------------------------------------------------------
|
||||||
@ -253,12 +253,12 @@ public:
|
|||||||
* it calls ConvertToUnixOutputPath
|
* it calls ConvertToUnixOutputPath
|
||||||
*/
|
*/
|
||||||
static kwsys_stl::string ConvertToOutputPath(const char*);
|
static kwsys_stl::string ConvertToOutputPath(const char*);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Return true if a file exists in the current directory
|
* Return true if a file exists in the current directory
|
||||||
*/
|
*/
|
||||||
static bool FileExists(const char* filename);
|
static bool FileExists(const char* filename);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Return file length
|
* Return file length
|
||||||
*/
|
*/
|
||||||
@ -268,7 +268,7 @@ public:
|
|||||||
* Compare file modification times.
|
* Compare file modification times.
|
||||||
* Return true for successful comparison and false for error.
|
* Return true for successful comparison and false for error.
|
||||||
* When true is returned, result has -1, 0, +1 for
|
* When true is returned, result has -1, 0, +1 for
|
||||||
* f1 older, same, or newer than f2.
|
* f1 older, same, or newer than f2.
|
||||||
*/
|
*/
|
||||||
static bool FileTimeCompare(const char* f1, const char* f2,
|
static bool FileTimeCompare(const char* f1, const char* f2,
|
||||||
int* result);
|
int* result);
|
||||||
@ -293,12 +293,12 @@ public:
|
|||||||
* part, the empty string is returned.
|
* part, the empty string is returned.
|
||||||
*/
|
*/
|
||||||
static kwsys_stl::string GetProgramPath(const char*);
|
static kwsys_stl::string GetProgramPath(const char*);
|
||||||
static bool SplitProgramPath(const char* in_name,
|
static bool SplitProgramPath(const char* in_name,
|
||||||
kwsys_stl::string& dir,
|
kwsys_stl::string& dir,
|
||||||
kwsys_stl::string& file,
|
kwsys_stl::string& file,
|
||||||
bool errorReport = true);
|
bool errorReport = true);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Given argv[0] for a unix program find the full path to a running
|
* Given argv[0] for a unix program find the full path to a running
|
||||||
* executable. argv0 can be null for windows WinMain programs
|
* executable. argv0 can be null for windows WinMain programs
|
||||||
* in this case GetModuleFileName will be used to find the path
|
* in this case GetModuleFileName will be used to find the path
|
||||||
@ -310,13 +310,13 @@ public:
|
|||||||
* buildDir is a possibly null path to the build directory.
|
* buildDir is a possibly null path to the build directory.
|
||||||
* installPrefix is a possibly null pointer to the install directory.
|
* installPrefix is a possibly null pointer to the install directory.
|
||||||
*/
|
*/
|
||||||
static bool FindProgramPath(const char* argv0,
|
static bool FindProgramPath(const char* argv0,
|
||||||
kwsys_stl::string& pathOut,
|
kwsys_stl::string& pathOut,
|
||||||
kwsys_stl::string& errorMsg,
|
kwsys_stl::string& errorMsg,
|
||||||
const char* exeName = 0,
|
const char* exeName = 0,
|
||||||
const char* buildDir = 0,
|
const char* buildDir = 0,
|
||||||
const char* installPrefix = 0);
|
const char* installPrefix = 0);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Given a path to a file or directory, convert it to a full path.
|
* Given a path to a file or directory, convert it to a full path.
|
||||||
* This collapses away relative paths relative to the cwd argument
|
* This collapses away relative paths relative to the cwd argument
|
||||||
@ -365,19 +365,19 @@ public:
|
|||||||
* Return file name of a full filename (i.e. file name without path)
|
* Return file name of a full filename (i.e. file name without path)
|
||||||
*/
|
*/
|
||||||
static kwsys_stl::string GetFilenameName(const kwsys_stl::string&);
|
static kwsys_stl::string GetFilenameName(const kwsys_stl::string&);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Split a program from its arguments and handle spaces in the paths
|
* Split a program from its arguments and handle spaces in the paths
|
||||||
*/
|
*/
|
||||||
static void SplitProgramFromArgs(
|
static void SplitProgramFromArgs(
|
||||||
const char* path,
|
const char* path,
|
||||||
kwsys_stl::string& program, kwsys_stl::string& args);
|
kwsys_stl::string& program, kwsys_stl::string& args);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Return longest file extension of a full filename (dot included)
|
* Return longest file extension of a full filename (dot included)
|
||||||
*/
|
*/
|
||||||
static kwsys_stl::string GetFilenameExtension(const kwsys_stl::string&);
|
static kwsys_stl::string GetFilenameExtension(const kwsys_stl::string&);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Return shortest file extension of a full filename (dot included)
|
* Return shortest file extension of a full filename (dot included)
|
||||||
*/
|
*/
|
||||||
@ -591,7 +591,7 @@ public:
|
|||||||
from /usr/src to /usr/src/test/blah/foo.cpp -> test/blah/foo.cpp
|
from /usr/src to /usr/src/test/blah/foo.cpp -> test/blah/foo.cpp
|
||||||
*/
|
*/
|
||||||
static kwsys_stl::string RelativePath(const char* local, const char* remote);
|
static kwsys_stl::string RelativePath(const char* local, const char* remote);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Return file's modified time
|
* Return file's modified time
|
||||||
*/
|
*/
|
||||||
@ -653,11 +653,11 @@ public:
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Add the paths from the environment variable PATH to the
|
* Add the paths from the environment variable PATH to the
|
||||||
* string vector passed in. If env is set then the value
|
* string vector passed in. If env is set then the value
|
||||||
* of env will be used instead of PATH.
|
* of env will be used instead of PATH.
|
||||||
*/
|
*/
|
||||||
static void GetPath(kwsys_stl::vector<kwsys_stl::string>& path,
|
static void GetPath(kwsys_stl::vector<kwsys_stl::string>& path,
|
||||||
const char* env=0);
|
const char* env=0);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -680,8 +680,8 @@ public:
|
|||||||
* Get the result of strerror(errno)
|
* Get the result of strerror(errno)
|
||||||
*/
|
*/
|
||||||
static kwsys_stl::string GetLastSystemError();
|
static kwsys_stl::string GetLastSystemError();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* When building DEBUG with MSVC, this enables a hook that prevents
|
* When building DEBUG with MSVC, this enables a hook that prevents
|
||||||
* error dialogs from popping up if the program is being run from
|
* error dialogs from popping up if the program is being run from
|
||||||
* DART.
|
* DART.
|
||||||
@ -694,7 +694,7 @@ public:
|
|||||||
* some bogus size.
|
* some bogus size.
|
||||||
*/
|
*/
|
||||||
static int GetTerminalWidth();
|
static int GetTerminalWidth();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Add an entry in the path translation table.
|
* Add an entry in the path translation table.
|
||||||
*/
|
*/
|
||||||
@ -711,13 +711,13 @@ public:
|
|||||||
*/
|
*/
|
||||||
static void CheckTranslationPath(kwsys_stl::string & path);
|
static void CheckTranslationPath(kwsys_stl::string & path);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Delay the execution for a specified amount of time specified
|
* Delay the execution for a specified amount of time specified
|
||||||
* in miliseconds
|
* in miliseconds
|
||||||
*/
|
*/
|
||||||
static void Delay(unsigned int msec);
|
static void Delay(unsigned int msec);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get the operating system name and version
|
* Get the operating system name and version
|
||||||
* This is implemented for Win32 only for the moment
|
* This is implemented for Win32 only for the moment
|
||||||
*/
|
*/
|
||||||
@ -731,10 +731,10 @@ public:
|
|||||||
*/
|
*/
|
||||||
static void ConvertWindowsCommandLineToUnixArguments(
|
static void ConvertWindowsCommandLineToUnixArguments(
|
||||||
const char *cmd_line, int *argc, char ***argv);
|
const char *cmd_line, int *argc, char ***argv);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
// these two functions can be called from ConvertToOutputPath
|
// these two functions can be called from ConvertToOutputPath
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Convert the path to string that can be used in a windows project or
|
* Convert the path to string that can be used in a windows project or
|
||||||
* makefile. Double slashes are removed if they are not at the start of
|
* makefile. Double slashes are removed if they are not at the start of
|
||||||
|
Loading…
x
Reference in New Issue
Block a user