--- /dev/null
+--- composer-1.0.0-14.alpha11/bin/composer~ 2015-11-25 23:34:22.000000000 +0200
++++ composer-1.0.0-14.alpha11/bin/composer 2015-11-25 23:34:25.939418752 +0200
+@@ -5,7 +5,11 @@
+ echo 'Warning: Composer should be invoked via the CLI version of PHP, not the '.PHP_SAPI.' SAPI'.PHP_EOL;
+ }
+
+-require __DIR__.'/../src/bootstrap.php';
++if (file_exists($autoload = __DIR__ . '/../src/Composer/autoload.php')) {
++ require $autoload;
++} else {
++ require '/usr/share/php/Composer/autoload.php';
++}
+
+ use Composer\Console\Application;
+
+--- composer-1.0.0-14.alpha11/src/Composer/Json/JsonFile.php~ 2015-11-25 23:45:44.000000000 +0200
++++ composer-1.0.0-14.alpha11/src/Composer/Json/JsonFile.php 2015-11-25 23:45:49.118198863 +0200
+@@ -149,7 +149,7 @@
+ self::validateSyntax($content, $this->path);
+ }
+
+- $schemaFile = __DIR__ . '/../../../res/composer-schema.json';
++ $schemaFile = __DIR__ . '/../res/composer-schema.json';
+ $schemaData = json_decode(file_get_contents($schemaFile));
+
+ if ($schema === self::LAX_SCHEMA) {
--- /dev/null
+<?php
+$phpDir = defined('PHP_DATADIR') && PHP_DATADIR ? PHP_DATADIR . '/php/' : '/usr/share/php/';
+
+// Use Symfony autoloader
+if (!isset($loader) || !($loader instanceof \Symfony\Component\ClassLoader\ClassLoader)) {
+ if (!class_exists('Symfony\\Component\\ClassLoader\\ClassLoader', false)) {
+ require_once $phpDir . '/Symfony/Component/ClassLoader/ClassLoader.php';
+ }
+
+ $loader = new \Symfony\Component\ClassLoader\ClassLoader();
+ $loader->register();
+}
+
+$baseDir = dirname(__DIR__);
+
+$loader->addPrefixes(array(
+ 'Composer\\' => $baseDir,
+ // Dependencies
+ 'Composer\\Semver\\' => array($phpDir),
+ 'Composer\\Spdx\\' => array($phpDir),
+ 'JsonSchema' => array($phpDir),
+ 'Seld\\JsonLint' => array($phpDir),
+ 'Seld\\PharUtils\\' => array($phpDir),
+ 'Symfony\\Component\\Console\\' => array($phpDir),
+ 'Symfony\\Component\\Finder' => array($phpDir),
+ 'Symfony\\Component\\Process\\' => array($phpDir),
+));
+$loader->register();
+
+return $loader;
%define rel 14
#define githash 5744981
-# $ git rev-list 1.0.0-alpha10..%{githash} --count
+# $ git rev-list 1.0.0-alpha11..%{githash} --count
#define commits 216
%define subver alpha11
%define php_min_version 5.3.4
%endif
Source2: https://raw.githubusercontent.com/iArren/%{name}-bash-completion/86a8129/composer
# Source2-md5: cdeebf0a0da1fd07d0fd886d0461642e
+Source3: autoload.php
Patch0: nogit.patch
Patch1: no-vendors.patch
Patch2: autoload-config.patch
Patch3: update-memory-limit.patch
Patch4: svn-ignore-externals.patch
+Patch10: autoload.patch
URL: http://www.getcomposer.org/
BuildRequires: %{php_name}-cli
BuildRequires: %{php_name}-ctype
%if %{without bootstrap}
Requires: php-justinrainbow-json-schema >= 1.4
Requires: php-seld-jsonlint >= 1.1.2
-Requires: php-symfony2-Console >= 2.5
-Requires: php-symfony2-Finder >= 2.2
-Requires: php-symfony2-Process >= 2.1
+Requires: php-symfony2-ClassLoader >= 2.7.7
+Requires: php-symfony2-Console >= 2.7.7
+Requires: php-symfony2-Finder >= 2.7.7
+Requires: php-symfony2-Process >= 2.7.7
%endif
Suggests: bash-completion-%{name}
Suggests: git-core
BuildArch: noarch
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
-%define _appdir %{_datadir}/%{name}
-
%description
Composer is a tool for dependency management in PHP.
%prep
%setup -qc -n %{name}-%{version}-%{release}
mv composer-*/* .
-%patch0 -p1
-%{!?with_bootstrap:%patch1 -p1}
-%patch3 -p1
-%patch4 -p1
+%patch10 -p1
mv composer.lock{,.disabled}
# NOTE: do not use %{__php} macro here, need unversioned php binary
%{__sed} -i -e '1s,^#!.*env php,#!/usr/bin/php,' bin/*
+cp -p %{SOURCE3} src/Composer/autoload.php
+
# cleanup backups after patching
find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
%build
+%if 0
%if %{with bootstrap}
composer='%{__php} %{SOURCE1}'
phar extract -f "%{SOURCE1}" -i vendor .
install -d build
%{__php} -r '$phar = new Phar($argv[1]); $phar->extractTo($argv[2]);' composer.phar build
+%endif
%install
rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{_bindir},%{_appdir},/var/cache/composer}
-cd build
-cp -a bin src res vendor $RPM_BUILD_ROOT%{_appdir}
-ln -s %{_appdir}/bin/%{name} $RPM_BUILD_ROOT%{_bindir}/%{name}
-chmod +x $RPM_BUILD_ROOT%{_appdir}/bin/*
+install -d $RPM_BUILD_ROOT{%{_bindir},%{php_data_dir}/Composer,/var/cache/composer}
+cp -a src/Composer $RPM_BUILD_ROOT%{php_data_dir}
+cp -a res $RPM_BUILD_ROOT%{php_data_dir}/Composer
+install -p bin/composer $RPM_BUILD_ROOT%{_bindir}/%{name}
install -d $RPM_BUILD_ROOT%{bash_compdir}
cp -p %{SOURCE2} $RPM_BUILD_ROOT%{bash_compdir}/composer
%defattr(644,root,root,755)
%doc README.md CHANGELOG.md LICENSE PORTING_INFO
%attr(755,root,root) %{_bindir}/composer
-%dir %{_appdir}
-%dir %{_appdir}/bin
-%attr(755,root,root) %{_appdir}/bin/*
-%{_appdir}/res
-%{_appdir}/src
-%{_appdir}/vendor
+%{php_data_dir}/Composer
# top level cachedir, create user cache dirs here manually
%dir %attr(711,root,http) /var/cache/composer