X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=composer.spec;h=68592b1e7d1357fbb3bc79a87b3b3eaa31707080;hb=9e924ff7ab5b41ef1932ea4fc0e2625bc18d1f82;hp=114ba796a93242d95a36d8aa15392ab71939de7f;hpb=ee5e3da9ce42e0cf53ebd081cd5d79a430e088ce;p=packages%2Fcomposer.git diff --git a/composer.spec b/composer.spec index 114ba79..68592b1 100644 --- a/composer.spec +++ b/composer.spec @@ -1,51 +1,78 @@ -# # NOTE # - release tarballs: http://getcomposer.org/download/ # Conditional build: %bcond_with bootstrap # build boostrap +%define rel 12 +# $ git rev-list 1.0.0-alpha9..%{githash} --count +%define commits 216 +%define githash 5744981 +%define subver alpha9 %define php_min_version 5.3.4 -%define githash 46e5554 -%define subver alpha7 -%define rel 0.16 %include /usr/lib/rpm/macros.php Summary: Dependency Manager for PHP Name: composer Version: 1.0.0 -Release: 0.%{subver}.%{rel} +Release: %{rel}.%{subver}.%{commits}.g%{githash} License: MIT Group: Development/Languages/PHP -Source0: https://github.com/composer/composer/archive/%{githash}/%{name}-%{version}-%{githash}.tar.gz -# Source0-md5: 8d3be5df3a0151b87b77806b75cfcf9d -Source1: http://getcomposer.org/download/%{version}-%{subver}/%{name}.phar -# Source1-md5: f9b1dbd4ad0e3707bfe216690b210a7e +Source0: https://github.com/composer/composer/archive/%{githash}/%{name}-%{version}-%{subver}-%{commits}-g%{githash}.tar.gz +# Source0-md5: d3152cbae030fedb85f5d1ac52dddd4f +#Source0: https://github.com/composer/composer/archive/%{version}-%{subver}/%{name}-%{version}-%{subver}.tar.gz +%if %{with bootstrap} +Source1: http://getcomposer.org/download/%{version}-alpha8/%{name}.phar +# Source1-md5: df1001975035f07d09307bf1f1e62584 +%endif +Source2: https://raw.githubusercontent.com/iArren/%{name}-bash-completion/86a8129/composer +# Source2-md5: cdeebf0a0da1fd07d0fd886d0461642e Patch0: nogit.patch -Patch1: no-bundle-symfony.patch -Patch2: system-symfony.patch +Patch1: no-vendors.patch +Patch2: autoload-config.patch +Patch3: update-memory-limit.patch URL: http://www.getcomposer.org/ +BuildRequires: %{php_name}-ctype +BuildRequires: %{php_name}-hash +BuildRequires: %{php_name}-json +BuildRequires: %{php_name}-openssl +BuildRequires: %{php_name}-phar +BuildRequires: %{php_name}-program +BuildRequires: %{php_name}-zip +BuildRequires: %{php_name}-zlib +BuildRequires: /usr/bin/phar BuildRequires: /usr/bin/php -BuildRequires: php(ctype) -BuildRequires: php(hash) -BuildRequires: php(json) -BuildRequires: php(openssl) -BuildRequires: php(phar) -BuildRequires: php(zip) +BuildRequires: php-devel BuildRequires: rpm-php-pearprov >= 4.4.2-11 -BuildRequires: rpmbuild(macros) >= 1.461 +BuildRequires: rpmbuild(macros) >= 1.673 %if %{without bootstrap} BuildRequires: %{name} +BuildRequires: php-symfony2-Console >= 2.3 +BuildRequires: php-symfony2-Finder >= 2.2 %endif Requires: php(core) >= %{php_min_version} +Requires: php(ctype) +Requires: php(date) +Requires: php(filter) Requires: php(hash) +Requires: php(json) +Requires: php(openssl) +Requires: php(pcre) Requires: php(phar) -Requires: php-symfony2-Console >= 2.1 -Requires: php-symfony2-Finder >= 2.1 +Requires: php(posix) +Requires: php(simplexml) +Requires: php(spl) +Requires: php(zip) +Requires: php(zlib) +%if %{without bootstrap} +Requires: php-justinrainbow-json-schema >= 1.3 +Requires: php-seld-jsonlint >= 1.1.2 +Requires: php-symfony2-Console >= 2.3 +Requires: php-symfony2-Finder >= 2.2 Requires: php-symfony2-Process >= 2.1 +%endif +Suggests: bash-completion-%{name} Suggests: git-core Suggests: mercurial -Suggests: php(openssl) -Suggests: php(zip) Suggests: subversion BuildArch: noarch BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) @@ -53,34 +80,53 @@ BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %define _appdir %{_datadir}/%{name} %description -Composer is a tool for dependency management in PHP. It allows you to -declare the dependent libraries your project needs and it will install -them in your project for you. +Composer is a tool for dependency management in PHP. + +Composer helps you declare, manage and install dependencies of PHP +projects, ensuring you have the right stack everywhere. + +%package -n bash-completion-%{name} +Summary: Bash completion for Composer +Summary(pl.UTF-8): bashowe uzupełnianie nazw dla Composera +Group: Applications/Shells +Requires: %{name} +Requires: bash-completion >= 2.0 + +%description -n bash-completion-%{name} +Bash completion for Composer package and dependency manager. + +%description -n bash-completion-%{name} -l pl.UTF-8 +Pakiet ten dostarcza bashowe uzupełnianie nazw dla Composera. %prep %setup -qc -n %{name}-%{version}-%{release} mv composer-*/* . %patch0 -p1 -%patch1 -p1 +%{!?with_bootstrap:%patch1 -p1} +%patch3 -p1 mv composer.lock{,.disabled} %{__sed} -i -e '1s,^#!.*env php,#!%{__php},' bin/* +# cleanup backups after patching +find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f + %build %if %{with bootstrap} composer='%{__php} %{SOURCE1}' +phar extract -f "%{SOURCE1}" -i vendor . %else composer=composer %endif if [ ! -d vendor ]; then COMPOSER_HOME=${PWD:=$(pwd)} \ - $composer install --prefer-dist -v + $composer dump-autoload -v %{__patch} -p1 < %{PATCH2} fi -V=$(echo composer-composer-*) -V=${V#composer-composer-} -COMPOSER_VERSION=%{version}%{?subver:-%{subver}}${V:+-g$V} \ +RELEASE_DATE=$(LC_ALL=C date) \ +PACKAGE_VERSION=%{?!githash:%{version}-%{subver}}%{?githash} \ +DEV_VERSION=%{!?githash:0}%{?githash:1} \ %{__php} -d phar.readonly=0 ./bin/compile # sanity check @@ -91,10 +137,14 @@ install -d build %install rm -rf $RPM_BUILD_ROOT -install -d $RPM_BUILD_ROOT{%{_bindir},%{_appdir}} +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%{bash_compdir} +cp -p %{SOURCE2} $RPM_BUILD_ROOT%{bash_compdir}/composer %clean rm -rf $RPM_BUILD_ROOT @@ -109,3 +159,10 @@ rm -rf $RPM_BUILD_ROOT %{_appdir}/res %{_appdir}/src %{_appdir}/vendor + +# top level cachedir, create user cache dirs here manually +%dir %attr(711,root,http) /var/cache/composer + +%files -n bash-completion-%{name} +%defattr(644,root,root,755) +%{bash_compdir}/composer