root/trunk/package.php

Revision 132, 2.6 kB (checked in by mikey, 8 months ago)

with PRE_NAMESPACES going 0.3.0 HEAD becomes 0.4.0

Line 
1 <?php
2 /**
3  * script to automate the generation of the
4  * package.xml file.
5  *
6  * $Id: package.php 442 2006-08-20 13:21:58Z schst $
7  *
8  * @author      Stephan Schmidt <schst@php-tools.net>
9  * @package     XJConfForPHP
10  * @subpackage  Tools
11  */
12
13 /**
14  * uses PackageFileManager
15  */
16 require_once 'PEAR/PackageFileManager2.php';
17 require_once 'PEAR/PackageFileManager/Svn.php';
18
19 /**
20  * current version
21  */
22 $version = '0.4.0dev';
23
24 /**
25  * Current API version
26  */
27 $apiVersion = '0.4.0';
28
29 /**
30  * current state
31  */
32 $state = 'alpha';
33
34 /**
35  * current API stability
36  */
37 $apiStability = 'alpha';
38
39 /**
40  * release notes
41  */
42 $notes = <<<EOT
43 Feature additions:
44 - ported to PHP 5.3 using namespaces (mikey)
45 EOT;
46
47 /**
48  * package description
49  */
50 $description = <<<EOT
51 XJConfForPHP is a port of XJConf. It enables you to create complex data structures consisting of
52 objects, arrays and primitives from virtually any XML document. It provides a simple XML language
53 to define the XML-to-object mappings. It features namespace support and is easily extendible.
54 EOT;
55
56 $package = new PEAR_PackageFileManager2();
57
58 $result = $package->setOptions(array(
59     'filelistgenerator' => 'svn',
60     'ignore'            => array( 'package.php', 'package.xml', '.svn', 'rfcs' ),
61     'simpleoutput'      => true,
62     'baseinstalldir'    => '/',
63     'packagedirectory'  => './',
64     'dir_roles'         => array(
65                                  'docs' => 'doc',
66                                  'examples' => 'doc',
67                                  'tests' => 'test',
68                                  )
69     ));
70 if (PEAR::isError($result)) {
71     echo $result->getMessage();
72     die();
73 }
74
75 $package->setPackage('XJConfForPHP');
76 $package->setSummary('XML-to-object mapper.');
77 $package->setDescription($description);
78
79 $package->setChannel('pear.php-tools.net');
80 $package->setAPIVersion($apiVersion);
81 $package->setReleaseVersion($version);
82 $package->setReleaseStability($state);
83 $package->setAPIStability($apiStability);
84 $package->setNotes($notes);
85 $package->setPackageType('php');
86 $package->setLicense('LGPL', 'http://www.gnu.org/copyleft/lesser.txt');
87
88 $package->addMaintainer('lead', 'schst', 'Stephan Schmidt', 'schst@xjconf.net', 'yes');
89 $package->addMaintainer('lead', 'mikey', 'Frank Kleine', 'mikey@xjconf.net', 'yes');
90
91 $package->setPhpDep('5.3.0-dev');
92 $package->setPearinstallerDep('1.4.0');
93
94 $package->addExtensionDep('required', 'xmlreader');
95
96 $package->generateContents();
97
98 if (isset($_GET['make']) || (isset($_SERVER['argv'][1]) && $_SERVER['argv'][1] == 'make')) {
99     $result = $package->writePackageFile();
100 } else {
101     $result = $package->debugPackageFile();
102 }
103
104 if (PEAR::isError($result)) {
105     echo $result->getMessage();
106     die();
107 }
108 ?>
Note: See TracBrowser for help on using the browser.