3 %bcond_with tests # build without tests
5 Summary: fpm - package building and mangling
10 Group: Development/Languages
11 Source0: https://github.com/jordansissel/fpm/archive/v%{version}/%{name}-%{version}.tar.gz
12 # Source0-md5: bac8217c5038ce2b144595fc62ca2dd9
13 Source1: filesystem_list
14 Patch0: templates.patch
16 Patch2: config-attrs.patch
17 Patch3: pld-init.d-dir.patch
18 Patch4: optional-packages.patch
19 URL: https://github.com/jordansissel/fpm
20 BuildRequires: rpm-rubyprov
21 BuildRequires: rpmbuild(macros) >= 1.665
22 BuildRequires: sed >= 4.0
24 BuildRequires: ruby-insist >= 0.0.6
25 BuildRequires: ruby-pry
26 BuildRequires: ruby-rspec < 3.1
27 BuildRequires: ruby-rspec >= 3.0.0
28 BuildRequires: ruby-stud
31 Obsoletes: ruby-fpm <= 1.4.0-2
33 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
35 # skip python dependency generator
36 %define _noautoreqfiles %{ruby_vendorlibdir}/%{name}/package/pyfpm/get_metadata.py
39 Convert directories, rpms, python eggs, rubygems, and more to rpms,
40 debs, solaris packages and more. Win at package management without
41 wasting pointless hours debugging bad rpm specs!
50 %{__sed} -i -e '1 s,#!.*ruby,#!%{__ruby},' bin/*
52 # replace filesystem_list with pld version
53 cp -p %{SOURCE1} templates/rpm/filesystem_list
55 # cleanup backups after patching
56 find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
59 # make gemspec self-contained
60 ruby -r rubygems -e 'spec = eval(File.read("%{name}.gemspec"))
61 File.open("%{name}-%{version}.gemspec", "w") do |file|
62 file.puts spec.to_ruby_for_cache
70 rm -rf $RPM_BUILD_ROOT
71 install -d $RPM_BUILD_ROOT{%{ruby_vendorlibdir},%{ruby_specdir},%{_bindir}}
72 cp -a lib/* $RPM_BUILD_ROOT%{ruby_vendorlibdir}
73 cp -a bin/* $RPM_BUILD_ROOT%{_bindir}
74 cp -a templates $RPM_BUILD_ROOT%{ruby_vendorlibdir}/%{name}
75 cp -p %{name}-%{version}.gemspec $RPM_BUILD_ROOT%{ruby_specdir}
78 rm -rf $RPM_BUILD_ROOT
81 %defattr(644,root,root,755)
82 %attr(755,root,root) %{_bindir}/fpm
83 %{ruby_vendorlibdir}/%{name}.rb
84 %{ruby_vendorlibdir}/%{name}
85 %{ruby_specdir}/%{name}-%{version}.gemspec