3 require_once('PEAR/PackageFileManager.php');
\r
4 require_once('PEAR/PackageFileManager2.php');
\r
5 PEAR::setErrorHandling(PEAR_ERROR_DIE);
\r
7 $packagedir = dirname(dirname(__FILE__));
\r
9 Includes these PEAR items:
\r
10 Req #11755: Remove Unused DocBlock_Lexer and PHPT Tests [ashnazg]
\r
11 Req #11757: Move PhpUnit Tests into new tests dir [ashnazg]
\r
12 Bug #10909: PHP Notice in PDF Converter line 210 [ashnazg]
\r
13 Bug #11613: -q flag is not honoured [ashnazg]
\r
14 Bug #11683: examples displayed using earthli style are not rendered properly [ashnazg|kguest]
\r
15 Bug #11788: Two failing unit tests [ashnazg]
\r
16 Bug #11809: Incorrect @name usage causes fatal crash [ashnazg]
\r
17 Bug #12121: phpdoc.bat cannot launch php.exe [ashnazg|kalvaro]
\r
18 Bug #12172: media files are not being copied [ashnazg|nemesis]
\r
19 Bug #12201: Misleading error message [ashnazg|yunosh]
\r
20 Doc #12459: @subpackage does not fix name conflicts [ashnazg]
\r
22 Includes these Sourceforge items:
\r
23 - [1846302] php version > 4.3.0 and tokenizer [ashnazg]
\r
24 - [1845584] File suffix should be lowercase [ashnazg]
\r
25 - [1842595] makedoc.sh doesn\'t like embedded blanks in paths [ashnazg|munroe_r]
\r
26 - [1839924] addErrorDie has to exit with non-zero return code! [ashnazg|blueyed]
\r
27 - [1826342] Data-dependent endless(?) loop in parser [ashnazg]
\r
28 - [1733936] "phpdoc" does not return with error code "0" on success [ashnazg|blueyed]
\r
32 $release_stability = 'stable';
\r
34 $api_stability = 'stable';
\r
36 'baseinstalldir' => 'PhpDocumentor',
\r
37 'version' => $version,
\r
38 'packagedirectory' => $packagedir,
\r
39 'filelistgenerator' => 'cvs',
\r
41 'package' => 'PhpDocumentor',
\r
42 'dir_roles' => array(
\r
43 'Documentation' => 'doc',
\r
44 'docbuilder' => 'data',
\r
45 'HTML_TreeMenu-1.1.2' => 'data',
\r
46 'tutorials' => 'doc',
\r
49 'simpleoutput' => true,
\r
52 'index.html' => 'data',
\r
54 'ChangeLog' => 'doc',
\r
56 'poweredbyphpdoc.gif' => 'data',
\r
60 'Release-1.4.1' => 'doc',
\r
61 'pear-phpdoc' => 'script',
\r
62 'pear-phpdoc.bat' => 'script',
\r
63 'HTML_TreeMenu-1.1.2/TreeMenu.php' => 'php',
\r
64 'phpDocumentor/Smarty-2.6.0/libs/debug.tpl' => 'php',
\r
65 'new_phpdoc.php' => 'data',
\r
66 'phpdoc.php' => 'data',
\r
69 array('package.xml',
\r
70 '*templates/PEAR/*',
\r
72 'installexceptions' => array('pear-phpdoc' => '/', 'pear-phpdoc.bat' => '/', 'scripts/makedoc.sh' => '/'),
\r
74 $pfm2 = PEAR_PackageFileManager2::importOptions(dirname(dirname(__FILE__))
\r
75 . DIRECTORY_SEPARATOR . 'package.xml', array_merge($options, array('packagefile' => 'package.xml')));
\r
76 $pfm2->setReleaseVersion($version);
\r
77 $pfm2->setReleaseStability($release_stability);
\r
78 $pfm2->setAPIVersion($api);
\r
79 $pfm2->setAPIStability($api_stability);
\r
80 $pfm2->setLicense('LGPL', 'http://www.opensource.org/licenses/lgpl-license.php');
\r
81 $pfm2->setNotes($notes);
\r
83 $pfm2->setPhpDep('4.2.0');
\r
84 $pfm2->setPearinstallerDep('1.4.6');
\r
85 $pfm2->addPackageDepWithChannel('optional', 'XML_Beautifier', 'pear.php.net', '1.1');
\r
86 $pfm2->addReplacement('pear-phpdoc', 'pear-config', '@PHP-BIN@', 'php_bin');
\r
87 $pfm2->addReplacement('pear-phpdoc.bat', 'pear-config', '@PHP-BIN@', 'php_bin');
\r
88 $pfm2->addReplacement('pear-phpdoc.bat', 'pear-config', '@BIN-DIR@', 'bin_dir');
\r
89 $pfm2->addReplacement('pear-phpdoc.bat', 'pear-config', '@PEAR-DIR@', 'php_dir');
\r
90 $pfm2->addReplacement('pear-phpdoc.bat', 'pear-config', '@DATA-DIR@', 'data_dir');
\r
91 $pfm2->addReplacement('README', 'package-info', '@VER@', 'version');
\r
92 $pfm2->addReplacement('README', 'package-info', '@STABILITY@', 'state');
\r
93 $pfm2->addReplacement('docbuilder/includes/utilities.php', 'pear-config', '@DATA-DIR@', 'data_dir');
\r
94 $pfm2->addReplacement('docbuilder/builder.php', 'pear-config', '@DATA-DIR@', 'data_dir');
\r
95 $pfm2->addReplacement('docbuilder/file_dialog.php', 'pear-config', '@DATA-DIR@', 'data_dir');
\r
96 $pfm2->addReplacement('docbuilder/file_dialog.php', 'pear-config', '@WEB-DIR@', 'data_dir');
\r
97 $pfm2->addReplacement('docbuilder/actions.php', 'pear-config', '@WEB-DIR@', 'data_dir');
\r
98 $pfm2->addReplacement('docbuilder/top.php', 'pear-config', '@DATA-DIR@', 'data_dir');
\r
99 $pfm2->addReplacement('docbuilder/config.php', 'pear-config', '@DATA-DIR@', 'data_dir');
\r
100 $pfm2->addReplacement('docbuilder/config.php', 'pear-config', '@WEB-DIR@', 'data_dir');
\r
101 $pfm2->addReplacement('phpDocumentor/Setup.inc.php', 'pear-config', '@DATA-DIR@', 'data_dir');
\r
102 $pfm2->addReplacement('phpDocumentor/Converter.inc', 'pear-config', '@DATA-DIR@', 'data_dir');
\r
103 $pfm2->addReplacement('phpDocumentor/Classes.inc', 'package-info', '@VER@', 'version');
\r
104 $pfm2->addReplacement('phpDocumentor/DescHTML.inc', 'package-info', '@VER@', 'version');
\r
105 $pfm2->addReplacement('phpDocumentor/Errors.inc', 'package-info', '@VER@', 'version');
\r
106 $pfm2->addReplacement('phpDocumentor/EventStack.inc', 'package-info', '@VER@', 'version');
\r
107 $pfm2->addReplacement('phpDocumentor/common.inc.php', 'package-info', '@VER@', 'version');
\r
108 $pfm2->addReplacement('phpDocumentor/common.inc.php', 'pear-config', '@PEAR-DIR@', 'php_dir');
\r
109 $pfm2->addReplacement('phpDocumentor/HighlightParser.inc', 'package-info', '@VER@', 'version');
\r
110 $pfm2->addReplacement('phpDocumentor/IntermediateParser.inc', 'package-info', '@VER@', 'version');
\r
111 $pfm2->addReplacement('phpDocumentor/IntermediateParser.inc', 'pear-config', '@PEAR-DIR@', 'php_dir');
\r
112 $pfm2->addReplacement('phpDocumentor/phpDocumentorTParser.inc', 'package-info', '@VER@', 'version');
\r
113 $pfm2->addReplacement('phpDocumentor/phpDocumentorTWordParser.inc', 'package-info', '@VER@', 'version');
\r
114 $pfm2->addReplacement('phpDocumentor/ProceduralPages.inc', 'package-info', '@VER@', 'version');
\r
115 $pfm2->addReplacement('phpDocumentor/Publisher.inc', 'package-info', '@VER@', 'version');
\r
116 $pfm2->addReplacement('phpDocumentor/TutorialHighlightParser.inc', 'package-info', '@VER@', 'version');
\r
117 $pfm2->addReplacement('phpDocumentor/WordParser.inc', 'package-info', '@VER@', 'version');
\r
118 $pfm2->addReplacement('phpDocumentor/XMLpackagePageParser.inc', 'package-info', '@VER@', 'version');
\r
119 $pfm2->addReplacement('user/pear-makedocs.ini', 'pear-config', '@PEAR-DIR@', 'php_dir');
\r
120 $pfm2->addReplacement('user/pear-makedocs.ini', 'pear-config', '@DOC-DIR@', 'doc_dir');
\r
121 $pfm2->addReplacement('user/pear-makedocs.ini', 'package-info', '@VER@', 'version');
\r
122 $pfm2->addRole('inc', 'php');
\r
123 $pfm2->addRole('sh', 'script');
\r
124 $pfm2->addUnixEol('pear-phpdoc');
\r
125 $pfm2->addUnixEol('phpdoc');
\r
126 $pfm2->addWindowsEol('pear-phpdoc.bat');
\r
127 $pfm2->addWindowsEol('phpdoc.bat');
\r
128 $pfm2->generateContents();
\r
129 $pfm2->setPackageType('php');
\r
130 $pfm2->addRelease();
\r
131 $pfm2->setOsInstallCondition('windows');
\r
132 // these next few files are only used if the archive is extracted as-is
\r
133 // without installing via "pear install blah"
\r
134 $pfm2->addIgnoreToRelease("phpdoc");
\r
135 $pfm2->addIgnoreToRelease('phpdoc.bat');
\r
136 $pfm2->addIgnoreToRelease('user/makedocs.ini');
\r
137 $pfm2->addIgnoreToRelease('scripts/makedoc.sh');
\r
138 $pfm2->addInstallAs('pear-phpdoc', 'phpdoc');
\r
139 $pfm2->addInstallAs('pear-phpdoc.bat', 'phpdoc.bat');
\r
140 $pfm2->addInstallAs('user/pear-makedocs.ini', 'user/makedocs.ini');
\r
141 $pfm2->addRelease();
\r
142 // these next two files are only used if the archive is extracted as-is
\r
143 // without installing via "pear install blah"
\r
144 $pfm2->addIgnoreToRelease("phpdoc");
\r
145 $pfm2->addIgnoreToRelease('phpdoc.bat');
\r
146 $pfm2->addIgnoreToRelease('user/makedocs.ini');
\r
147 $pfm2->addIgnoreToRelease('pear-phpdoc.bat');
\r
148 $pfm2->addInstallAs('pear-phpdoc', 'phpdoc');
\r
149 $pfm2->addInstallAs('user/pear-makedocs.ini', 'user/makedocs.ini');
\r
150 if (isset($_GET['make']) || (isset($_SERVER['argv'][1]) && $_SERVER['argv'][1] == 'make')) {
\r
151 $pfm2->writePackageFile();
\r
153 $pfm2->debugPackageFile();
\r
155 if (!isset($_GET['make']) && !(isset($_SERVER['argv'][1]) && $_SERVER['argv'][1] == 'make')) {
\r
156 echo '<a href="' . $_SERVER['PHP_SELF'] . '?make=1">Make this file</a>';
\r