mirror of
https://we.phorge.it/source/phorge.git
synced 2024-12-27 16:00:59 +01:00
52 lines
1.3 KiB
Text
52 lines
1.3 KiB
Text
|
#!/usr/bin/php
|
||
|
<?php
|
||
|
|
||
|
/**
|
||
|
* Build the whole library into a single file
|
||
|
* as an easy drop in solution as opposed to
|
||
|
* relying on autoloader. Sometimes we just
|
||
|
* want to hack with an API as a one off thing.
|
||
|
* Httpful should make this easy.
|
||
|
*/
|
||
|
|
||
|
function exit_unless($condition, $msg = null) {
|
||
|
if ($condition)
|
||
|
return;
|
||
|
echo "[FAIL]\n$msg\n";
|
||
|
exit(1);
|
||
|
}
|
||
|
|
||
|
// Create the Httpful Phar
|
||
|
echo "Building Phar... ";
|
||
|
$base_dir = dirname(__FILE__);
|
||
|
$source_dir = $base_dir . '/src/Httpful/';
|
||
|
$phar_path = $base_dir . '/downloads/httpful.phar';
|
||
|
$phar = new Phar($phar_path, 0, 'httpful.phar');
|
||
|
$stub = <<<HEREDOC
|
||
|
<?php
|
||
|
// Phar Stub File
|
||
|
Phar::mapPhar('httpful.phar');
|
||
|
include('phar://httpful.phar/Httpful/Bootstrap.php');
|
||
|
\Httpful\Bootstrap::pharInit();
|
||
|
|
||
|
__HALT_COMPILER();
|
||
|
HEREDOC;
|
||
|
try {
|
||
|
$phar->setStub($stub);
|
||
|
} catch(Exception $e) {
|
||
|
$phar = false;
|
||
|
}
|
||
|
exit_unless($phar, "Unable to create a phar. Make certain you have phar.readonly=0 set in your ini file.");
|
||
|
$phar->buildFromDirectory(dirname($source_dir));
|
||
|
echo "[ OK ]\n";
|
||
|
|
||
|
|
||
|
|
||
|
// Add it to git!
|
||
|
echo "Adding httpful.phar to the repo... ";
|
||
|
$return_code = 0;
|
||
|
passthru("git add $phar_path", $return_code);
|
||
|
exit_unless($return_code === 0, "Unable to add download files to git.");
|
||
|
echo "[ OK ]\n";
|
||
|
echo "\nBuild completed sucessfully.\n\n";
|