]> git.pld-linux.org Git - packages/composer.git/blobdiff - composer.spec
use json-schema >= 1.3
[packages/composer.git] / composer.spec
index ed83da4f355de2578b0898c5ca03e8b96d694cd2..68592b1e7d1357fbb3bc79a87b3b3eaa31707080 100644 (file)
@@ -4,52 +4,75 @@
 # 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                subver  alpha8
-%define                rel             0.22
 %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/%{version}-%{subver}/%{name}-%{version}-%{subver}.tar.gz
-# Source0-md5: a304aecf48b8406730d572e204afd6db
-Source1:       http://getcomposer.org/download/%{version}-%{subver}/%{name}.phar
+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-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(zlib)
+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(posix)
+Requires:      php(simplexml)
+Requires:      php(spl)
+Requires:      php(zip)
+Requires:      php(zlib)
 %if %{without bootstrap}
-Requires:      php-justinrainbow-json-schema >= 1.1.0
+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)
@@ -57,19 +80,37 @@ 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
 %{!?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}'
@@ -79,11 +120,13 @@ composer=composer
 %endif
 if [ ! -d vendor ]; then
        COMPOSER_HOME=${PWD:=$(pwd)} \
-       $composer install --prefer-dist -v --no-dev
+       $composer dump-autoload -v
        %{__patch} -p1 < %{PATCH2}
 fi
 
-COMPOSER_VERSION=%{version}%{?subver:-%{subver}} \
+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
@@ -94,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
@@ -112,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
This page took 0.114935 seconds and 4 git commands to generate.