]> git.pld-linux.org Git - packages/composer.git/blob - composer.spec
suggest bash-completion
[packages/composer.git] / composer.spec
1 # NOTE
2 # - release tarballs: http://getcomposer.org/download/
3
4 # Conditional build:
5 %bcond_with     bootstrap               # build boostrap
6
7 %define         php_min_version 5.3.4
8 %define         subver  alpha8
9 %define         rel             1
10 %include        /usr/lib/rpm/macros.php
11 Summary:        Dependency Manager for PHP
12 Name:           composer
13 Version:        1.0.0
14 Release:        0.%{subver}.%{rel}
15 License:        MIT
16 Group:          Development/Languages/PHP
17 Source0:        https://github.com/composer/composer/archive/%{version}-%{subver}/%{name}-%{version}-%{subver}.tar.gz
18 # Source0-md5:  a304aecf48b8406730d572e204afd6db
19 %if %{with bootstrap}
20 Source1:        http://getcomposer.org/download/%{version}-%{subver}/%{name}.phar
21 # Source1-md5:  df1001975035f07d09307bf1f1e62584
22 %endif
23 Source2:        https://raw.githubusercontent.com/iArren/%{name}-bash-completion/86a8129/composer
24 # Source2-md5:  cdeebf0a0da1fd07d0fd886d0461642e
25 Patch0:         nogit.patch
26 Patch1:         no-vendors.patch
27 Patch2:         autoload-config.patch
28 URL:            http://www.getcomposer.org/
29 BuildRequires:  /usr/bin/phar
30 BuildRequires:  /usr/bin/php
31 BuildRequires:  php(ctype)
32 BuildRequires:  php(hash)
33 BuildRequires:  php(json)
34 BuildRequires:  php(openssl)
35 BuildRequires:  php(phar)
36 BuildRequires:  php(zip)
37 BuildRequires:  php(zlib)
38 BuildRequires:  rpm-php-pearprov >= 4.4.2-11
39 BuildRequires:  rpmbuild(macros) >= 1.673
40 %if %{without bootstrap}
41 BuildRequires:  %{name}
42 BuildRequires:  php-symfony2-Console >= 2.3
43 BuildRequires:  php-symfony2-Finder >= 2.2
44 %endif
45 Requires:       php(core) >= %{php_min_version}
46 Requires:       php(hash)
47 Requires:       php(phar)
48 %if %{without bootstrap}
49 Requires:       php-justinrainbow-json-schema >= 1.1.0
50 Requires:       php-seld-jsonlint >= 1.1.2
51 Requires:       php-symfony2-Console >= 2.3
52 Requires:       php-symfony2-Finder >= 2.2
53 Requires:       php-symfony2-Process >= 2.1
54 %endif
55 Suggests:       bash-completion-%{name}
56 Suggests:       git-core
57 Suggests:       mercurial
58 Suggests:       php(openssl)
59 Suggests:       php(zip)
60 Suggests:       subversion
61 BuildArch:      noarch
62 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
63
64 %define         _appdir         %{_datadir}/%{name}
65
66 %description
67 Composer is a tool for dependency management in PHP. It allows you to
68 declare the dependent libraries your project needs and it will install
69 them in your project for you.
70
71 %package -n bash-completion-%{name}
72 Summary:        Bash completion for Composer
73 Summary(pl.UTF-8):      bashowe uzupełnianie nazw dla Composera
74 Group:          Applications/Shells
75 Requires:       %{name}
76 Requires:       bash-completion >= 2.0
77
78 %description -n bash-completion-%{name}
79 Bash completion for Composer package and dependency manager.
80
81 %description -n bash-completion-%{name} -l pl.UTF-8
82 Pakiet ten dostarcza bashowe uzupełnianie nazw dla Composera.
83
84 %prep
85 %setup -qc -n %{name}-%{version}-%{release}
86 mv composer-*/* .
87 %patch0 -p1
88 %{!?with_bootstrap:%patch1 -p1}
89
90 mv composer.lock{,.disabled}
91 %{__sed} -i -e '1s,^#!.*env php,#!%{__php},' bin/*
92
93 %build
94 %if %{with bootstrap}
95 composer='%{__php} %{SOURCE1}'
96 phar extract -f "%{SOURCE1}" -i vendor .
97 %else
98 composer=composer
99 %endif
100 if [ ! -d vendor ]; then
101         COMPOSER_HOME=${PWD:=$(pwd)} \
102         $composer dump-autoload -v
103         %{__patch} -p1 < %{PATCH2}
104 fi
105
106 COMPOSER_VERSION=%{version}%{?subver:-%{subver}} \
107 %{__php} -d phar.readonly=0 ./bin/compile
108
109 # sanity check
110 %{__php} composer.phar --version
111
112 install -d build
113 %{__php} -r '$phar = new Phar($argv[1]); $phar->extractTo($argv[2]);' composer.phar build
114
115 %install
116 rm -rf $RPM_BUILD_ROOT
117 install -d $RPM_BUILD_ROOT{%{_bindir},%{_appdir}}
118 cd build
119 cp -a bin src res vendor $RPM_BUILD_ROOT%{_appdir}
120 ln -s %{_appdir}/bin/%{name} $RPM_BUILD_ROOT%{_bindir}/%{name}
121
122 install -d $RPM_BUILD_ROOT%{bash_compdir}
123 cp -p %{SOURCE2} $RPM_BUILD_ROOT%{bash_compdir}/composer
124
125 %clean
126 rm -rf $RPM_BUILD_ROOT
127
128 %files
129 %defattr(644,root,root,755)
130 %doc README.md CHANGELOG.md LICENSE PORTING_INFO
131 %attr(755,root,root) %{_bindir}/composer
132 %dir %{_appdir}
133 %dir %{_appdir}/bin
134 %attr(755,root,root) %{_appdir}/bin/*
135 %{_appdir}/res
136 %{_appdir}/src
137 %{_appdir}/vendor
138
139 %files -n bash-completion-%{name}
140 %defattr(644,root,root,755)
141 %{bash_compdir}/composer
This page took 0.4745 seconds and 4 git commands to generate.