Today I've tried to track the origins of this bug.
This is a windows specific problem. I'll try to explain:

The configure script of livedocs is using 'cygpath -w' to get the path to
PHP. This will produce something like:
'C:\cvs\phpdoc'.
Then when mkindex.php in parsing the file-entities.ent file, it finds the
paths in 'C:/cvs/phpdoc' form, so scan_entities (lines 231-249) become
broken.
One soltuion is to use 'cygpath -m' instead of '-w' that will generate
compatible paths for PHP ('C:/cvs/phpdoc') and then change the lines:
  $docs = $GLOBALS['DOCS'] . DIRECTORY_SEPARATOR;
...
-to-

  $docs = $GLOBALS['DOCS'] . '/';
....


But there is still a problem in scripts/file-entities.php. Look at my .ent
file:

<!ENTITY chapters.install                         SYSTEM
'c:/cvs/phpdoc/installpart.xml'>
<!ENTITY appendices.reserved.constants            SYSTEM
'c:/cvs/phpdoc/reserved.constants.xml'>
<!ENTITY global.function-index                    SYSTEM
'c:/cvs/phpdoc/funcindex.xml'>
<!ENTITY appendices.about                         SYSTEM
'C:/cvs/phpdoc/en/appendices/about.xml'>
<!ENTITY appendices.aliases                       SYSTEM
'C:/cvs/phpdoc/en/appendices/aliases.xml'>
<!ENTITY appendices.comparisons                   SYSTEM
'C:/cvs/phpdoc/en/appendices/comparisons.xml'>

Noted the diference in 'C:' and 'c:'? This is also a problem for
mkindex.php..... Of course you may change mkindex.php to use strncasecmp()
instead of strncmp()   (this may broke the build in linux?).....


Nuno


P.S.: Oh, even using all these 'tricks', that long sql query (to return
$lvl)  in handle_include() doesn't work.


----- Original Message ----- 
> Keep in mind that the database paths should be relative to PHPDOC so that
the
> database can be rsync'd to other machines and deployed there.
>
> It does indeed sound like a win32 specific buglet.
>
> --Wez.

Reply via email to