cda052dcc2e0ba9220734e7d4b7d1065b94601f4
[atutor.git] / mods / phpdoc2 / PhpDocumentor / scripts / create_package.xml.php
1 <?php\r
2 set_time_limit(0);\r
3 require_once('PEAR/PackageFileManager.php');\r
4 require_once('PEAR/PackageFileManager2.php');\r
5 PEAR::setErrorHandling(PEAR_ERROR_DIE);\r
6 \r
7 $packagedir = dirname(dirname(__FILE__));\r
8 $notes = '\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
21 \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
29 \r
30 ';\r
31 $version = '1.4.1';\r
32 $release_stability = 'stable';\r
33 $api = '1.4.0';\r
34 $api_stability = 'stable';\r
35 $options = array(\r
36 'baseinstalldir' => 'PhpDocumentor',\r
37 'version' => $version,\r
38 'packagedirectory' => $packagedir,\r
39 'filelistgenerator' => 'cvs',\r
40 'notes' => $notes,\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
47     'tests' => 'test',\r
48     ),\r
49 'simpleoutput' => true,\r
50 'exceptions' =>\r
51     array(\r
52         'index.html' => 'data',\r
53         'README' => 'doc',\r
54         'ChangeLog' => 'doc',\r
55         'LICENSE' => 'doc',\r
56         'poweredbyphpdoc.gif' => 'data',\r
57         'INSTALL' => 'doc',\r
58         'FAQ' => 'doc',\r
59         'Authors' => 'doc',\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
67         ),\r
68 'ignore' =>\r
69     array('package.xml',\r
70           '*templates/PEAR/*',\r
71           ),\r
72 'installexceptions' => array('pear-phpdoc' => '/', 'pear-phpdoc.bat' => '/', 'scripts/makedoc.sh' => '/'),\r
73 );\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
82 $pfm2->clearDeps();\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
152 } else {\r
153     $pfm2->debugPackageFile();\r
154 }\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
157 }\r
158 ?>\r