1<?php
2require_once 'PEAR/PackageFileManager2.php';
3PEAR::setErrorHandling(PEAR_ERROR_DIE);
4date_default_timezone_set('UTC');
5
6// general package information
7$channel        = 'pecl.opendogs.org';
8$packagename    = 'mecab';
9$summary        = 'The PHP bindings of the MeCab.';
10
11$description    = $summary;
12
13// information of cureent version
14$version        = '0.6.0';
15$apiversion     = '0.6.0';
16$stability      = 'beta';
17$apistability   = 'beta';
18
19$notes = <<<EOS
20* Add support for PHP 7.
21* Add `MeCab` namespace classes and constants.
22* Non-namespace classes are not supported on PHP 7.
23* Non-namespace constants are not supported on PHP 7.
24* Procedural APIs (`mecab_*` functions)  are not supported on PHP 7.
25* Non-namespace classes are deprecated on PHP 5.
26* PHP versions earlier than 5.3 are no longer supported.
27* MeCab versions earlier than 0.99 are no longer supported.
28* Removed features:
29    * `\$filter` callback argument of `mecab_split()` function.
30    * The persistent resource.
31EOS;
32
33// set parameters to the package
34$packagexml = new PEAR_PackageFileManager2;
35$packagexml->setOptions(array(
36    'baseinstalldir'    => '/',
37    'packagedirectory'  => dirname(__FILE__),
38    'filelistgenerator' => 'file',
39    'ignore'    => array(
40        'package.php',
41        'package.xml',
42        "{$packagename}-{$version}.tgz"),
43    'dir_roles' => array(
44        'tests'     => 'test',
45        'examples'  => 'data'),
46    'exceptions'    => array(
47        "{$packagename}.dsp"    => 'src',
48        'CREDITS'       => 'doc',
49        'EXPERIMENTAL'  => 'doc',
50        'LICENSE'       => 'doc',
51        'README'        => 'doc')));
52
53$packagexml->setPackage($packagename);
54$packagexml->setSummary($summary);
55$packagexml->setNotes($notes);
56$packagexml->setDescription($description);
57$packagexml->setLicense('MIT License', 'http://www.opensource.org/licenses/mit-license.php');
58
59$packagexml->setReleaseVersion($version);
60$packagexml->setAPIVersion($apiversion);
61$packagexml->setReleaseStability($stability);
62$packagexml->setAPIStability($apistability);
63
64$packagexml->addMaintainer('lead', 'rsk', 'Ryusuke SEKIYAMA', 'rsky0711@gmail.com');
65
66$packagexml->setPackageType('extsrc');
67$packagexml->setProvidesExtension($packagename);
68$packagexml->addConfigureOption('with-mecab', 'specify pathname to mecab-config', 'no');
69$packagexml->setPhpDep('5.3.0');
70$packagexml->setPearinstallerDep('1.4.1');
71
72$packagexml->setChannel($channel);
73$packagexml->generateContents();
74
75// generate package.xml
76if (php_sapi_name() === 'cli' && $_SERVER['argc'] > 1 && $_SERVER['argv'][1] === 'make') {
77    $make = true;
78} elseif (!empty($_GET['make'])) {
79    $make = true;
80} else {
81    $make = false;
82}
83// note use of debugPackageFile() - this is VERY important
84if ($make) {
85    $packagexml->writePackageFile();
86    $data = file_get_contents('package.xml');
87} else {
88    $packagexml->debugPackageFile();
89}
90