]> git.pld-linux.org Git - packages/ruby-ffi.git/blame - ruby-ffi.spec
drop not that interesting targets
[packages/ruby-ffi.git] / ruby-ffi.spec
CommitLineData
947bc9d0
ER
1# TODO:
2# - rm files in platform dir (and make not noarch?)
bac43acd
ER
3# Conditional build:
4%bcond_without tests # build without tests
5
7f59e59c 6%define pkgname ffi
5d8a12a9 7Summary: FFI Extensions for Ruby
7f59e59c 8Name: ruby-%{pkgname}
947bc9d0
ER
9Version: 1.9.3
10Release: 1
11License: BSD
5d8a12a9 12Group: Development/Languages
7f59e59c 13Source0: http://rubygems.org/gems/%{pkgname}-%{version}.gem
947bc9d0 14# Source0-md5: 1b5ab133fb1b861eeb7c7a8dbaa0acf4
5d8a12a9
ER
15URL: http://wiki.github.com/ffi/ffi
16BuildRequires: libffi-devel
17BuildRequires: rpm-rubyprov
60db665a 18BuildRequires: rpmbuild(macros) >= 1.665
5d8a12a9 19BuildRequires: setup.rb
bac43acd
ER
20%if %{with tests}
21BuildRequires: ruby-rspec
ed0d1fdb 22BuildRequires: ruby-rspec-mocks
bac43acd 23%endif
5d8a12a9
ER
24BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
25
26%description
27Ruby-FFI is a ruby extension for programmatically loading dynamic
28libraries, binding functions within them, and calling those functions
29from Ruby code. Moreover, a Ruby-FFI extension works without changes
30on Ruby and JRuby. Discover why should you write your next extension
31using Ruby-FFI here: <http://wiki.github.com/ffi/ffi/why-use-ffi>.
32
33%prep
7f59e59c 34%setup -q -n %{pkgname}-%{version}
5d8a12a9 35
336d53d2
ER
36# be sure to use system ffi
37rm -r ext/ffi_c/libffi
38
a2262c61
ER
39# drop not our targets
40rm -rv lib/ffi/platform/*-{cygwin,darwin,gnu,*bsd,solaris,windows}
41# not in pld th, so drop
42rm -rv lib/ffi/platform/arm-*
43rm -rv lib/ffi/platform/ia64-*
44rm -rv lib/ffi/platform/mips*
45rm -rv lib/ffi/platform/powerpc-*
46rm -rv lib/ffi/platform/s390*
47rm -rv lib/ffi/platform/sparc*
48
5d8a12a9
ER
49# ext build
50cp -p %{_datadir}/setup.rb .
51
52%build
60db665a
ER
53%__gem_helper spec
54
5d8a12a9
ER
55%{__ruby} setup.rb config \
56 --rbdir=%{ruby_rubylibdir} \
0cbc2159
ER
57 --sodir=%{ruby_archdir} \
58 --makeprog=true
5d8a12a9
ER
59
60%{__ruby} setup.rb setup
61
0cbc2159
ER
62%{__make} -C ext/ffi_c \
63 CC="%{__cc}"
64
5d8a12a9 65%if %{with tests}
0cbc2159
ER
66%{__make} -f libtest/GNUmakefile \
67 CCACHE= \
68 CC="%{__cc}"
ed0d1fdb
ER
69ruby -Ilib:ext/ffi_c -S \
70 rspec spec
5d8a12a9
ER
71%endif
72
73%install
74rm -rf $RPM_BUILD_ROOT
7f59e59c 75install -d $RPM_BUILD_ROOT{%{ruby_vendorlibdir},%{ruby_vendorarchdir},%{ruby_specdir}}
5d8a12a9
ER
76cp -a lib/* $RPM_BUILD_ROOT%{ruby_vendorlibdir}
77install -p ext/ffi_c/ffi_c.so $RPM_BUILD_ROOT%{ruby_vendorarchdir}
60db665a 78cp -p %{pkgname}-%{version}.gemspec $RPM_BUILD_ROOT%{ruby_specdir}
5d8a12a9
ER
79
80%clean
81rm -rf $RPM_BUILD_ROOT
82
83%files
84%defattr(644,root,root,755)
947bc9d0 85%doc README.md LICENSE
5d8a12a9
ER
86%{ruby_vendorlibdir}/ffi.rb
87%{ruby_vendorlibdir}/ffi
88%attr(755,root,root) %{ruby_vendorarchdir}/ffi_c.so
7f59e59c 89%{ruby_specdir}/%{pkgname}-%{version}.gemspec
This page took 0.08927 seconds and 4 git commands to generate.