root/tags/RELEASE_0_1_2/package.php

Revision 51, 2.8 kB (checked in by mikey, 2 years ago)

pear package stuff for next release 0.1.2

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.1.2';
23
24 /**
25  * Current API version
26  */
27 $apiVersion = '0.1.2';
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 addition:
44 This release enables using class loaders for differant namespaces which allows to load classes
45 at runtime of the XmlParser instead of having to load all classes before parsing the xml files.
46 Bugfix:
47 The ConstructorValueConverter now works with all examples.
48 EOT;
49
50 /**
51  * package description
52  */
53 $description = <<<EOT
54 XJConfForPHP is a port of XJConf. It enables you to create complex data structures consisting of
55 objects, arrays and primitives from virtually any XML document. It provides a simple XML language
56 to define the XML-to-object mappings. It features namespace support and is easily extendible.
57 EOT;
58
59 $package = new PEAR_PackageFileManager2();
60
61 $result = $package->setOptions(array(
62     'filelistgenerator' => 'svn',
63     'ignore'            => array( 'package.php', 'package.xml', '.svn', 'rfcs' ),
64     'simpleoutput'      => true,
65     'baseinstalldir'    => '/',
66     'packagedirectory'  => './',
67     'dir_roles'         => array(
68                                  'docs' => 'doc',
69                                  'examples' => 'doc',
70                                  'tests' => 'test',
71                                  )
72     ));
73 if (PEAR::isError($result)) {
74     echo $result->getMessage();
75     die();
76 }
77
78 $package->setPackage('XJConfForPHP');
79 $package->setSummary('XML-to-object mapper.');
80 $package->setDescription($description);
81
82 $package->setChannel('pear.php-tools.net');
83 $package->setAPIVersion($apiVersion);
84 $package->setReleaseVersion($version);
85 $package->setReleaseStability($state);
86 $package->setAPIStability($apiStability);
87 $package->setNotes($notes);
88 $package->setPackageType('php');
89 $package->setLicense('LGPL', 'http://www.gnu.org/copyleft/lesser.txt');
90
91 $package->addMaintainer('lead', 'schst', 'Stephan Schmidt', 'schst@xjconf.net', 'yes');
92 $package->addMaintainer('lead', 'mikey', 'Frank Kleine', 'mikey@xjconf.net', 'yes');
93
94 $package->setPhpDep('5.0.0');
95 $package->setPearinstallerDep('1.4.0');
96
97 $package->addExtensionDep('required', 'xmlreader');
98
99 $package->generateContents();
100
101 if (isset($_GET['make']) || (isset($_SERVER['argv'][1]) && $_SERVER['argv'][1] == 'make')) {
102     $result = $package->writePackageFile();
103 } else {
104     $result = $package->debugPackageFile();
105 }
106
107 if (PEAR::isError($result)) {
108     echo $result->getMessage();
109     die();
110 }
111 ?>
Note: See TracBrowser for help on using the browser.