___________________________________ | | | | | _ | | | | |___| | | | | _| | | | GNU GLOBAL source code tag system | | | | | | | | | | | ~~ | ~~| | ~ | | | ~~| for all hackers. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Copyright (c) 2000, 2003, 2004, 2005, 2006, 2007 Tama Communications Corporation This file is free software; as a special exception the author gives unlimited permission to copy and/or distribute it, with or without modifications, as long as this notice is preserved. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY, to the extent permitted by law; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. ---------------------------------- Frequentry Asked Questions about GLOBAL. ---------------------------------------------------------------------------- Q0. Please explain about BOKINware. A0. GNU GLOBAL is BOKINware. It means that it is free software based on GNU GPL, and is commercial (for-profit) software based on BOKIN model. BOKIN Model is a business model to obtain proceeds by widely collecting donations while developing and distributing free software. This model is constructed not to take away consumer's freedom of software, and is similar to the model of FSF except that FSF is not commercial organization. Your contribution is put on donors list in DONORS file, and distributed all over the world with GNU GLOBAL itself. Please see the files: DONORS, BOKIN_MODEL and BOKIN_MODEL_FAQ for more details. ---------------------------------------------------------------------------- Q1. Does GLOBAL support DOS and Windows 32 environment? A1. No, it doesn't. GNU GLOBAL supports only UNIX(POSIX) environment. But some outsite projects develop DOS and Windows 32 version of it. Please see: http://www.gnu.org/software/global/download.html Though GLOBAL doesn't supports DOS and Windows 32 environment, we accept the code for them if the following requirements are met: o It works in DOS and(or) Windows 32 environment. o It doesn't influence UNIX environment. ---------------------------------------------------------------------------- Q2. GLOBAL skips some functions. For example, GLOBAL skips the function 'func()' in this example. #define M(a) static char *string = a; M(a) func() { <= GLOBAL skip func(). ... } A2. GLOBAL cannot recognize 'func()', because M(a) seems to be a function definition. It should be follows: #define M(a) static char *string = a M(a); <= end with ';' func() { ... } Otherwise, you can tell gtags(1) that 'M' is not a function by listing the macros in '.notfunction' file in the current directory. [.notfunction] +--------------- |M |... ---------------------------------------------------------------------------- Q3. Why doesn't htags(1) generate XHTML+CSS hypertext by default? A3. Because still a lot of browsers which cannot treat XHTML+CSS well remain. If you hope XHTML+CSS, please use the --xhtml option of htags. ---------------------------------------------------------------------------- Q4. Deleted. ---------------------------------------------------------------------------- Q5. Deleted. ---------------------------------------------------------------------------- Q6. It seems that gtags(1) cannot treat files which include blanks in the path. Why? A6. Because it is hard for GLOBAL to treat them correctly with keeping upper compatibility. Gtags(1) currently ignores files which include blanks in the path. We put the improvement to our TODO list but the priority is not high. The best way is not to use blanks in path name. ---------------------------------------------------------------------------- Q7. Gtags(1) and htags(1) work only for one directory tree. So, we cannot refer library functions like strlen() from my project. Any solutions? A7. For global(1), you can use GTAGSLIBPATH environment variable. [library] /usr/src/lib [your project] /usr/home/project $ (cd /usr/src/lib; gtags) $ export GTAGSLIBPATH=/usr/src/lib $ global strlen ../../../usr/src/lib/libc/string/strlen.c For htags(1), you can merge library directories into your source project by copying them. For example: $ cd /usr/home/project $ cp -r /usr/src/lib . $ gtags $ htags ---------------------------------------------------------------------------- Q8. Deleted. ---------------------------------------------------------------------------- Q9. Deleted. ---------------------------------------------------------------------------- Q10. Does GLOBAL support multi-byte code set? Which character code set is supported? A10. GLOBAL doesn't support multi-byte character code set yet. GLOBAL supports only ASCII and ASCII supersets. ---------------------------------------------------------------------------- Q11. Can GLOBAL running on a UNIX machine treat source files which include DOS/Windows style new-line code? And vice versa? A11. GLOBAL supports only native text format of POSIX. Besides, please go by the own responsibility. ---------------------------------------------------------------------------- End of FAQ.