]>
Commit | Line | Data |
---|---|---|
16fdc018 | 1 | # |
2 | # Conditional build: | |
3 | %bcond_without tests # do not perform "make test" | |
4 | # there are no tests defined currently, so | |
5 | # don't bother | |
f2aef37e | 6 | # |
16fdc018 | 7 | %include /usr/lib/rpm/macros.perl |
96a90fc7 | 8 | %define pdir ExtUtils |
9 | %define pnam XSBuilder | |
a836cd62 | 10 | Summary: ExtUtils::XSBuilder - automatic XS glue code generation |
3ad77958 | 11 | Summary(pl.UTF-8): ExtUtils::XSBuilder - automatyczne generowanie kodu łączącego XS |
16fdc018 | 12 | Name: perl-ExtUtils-XSBuilder |
12f59be8 | 13 | Version: 0.28 |
14 | Release: 1 | |
16fdc018 | 15 | License: GPL or Artistic |
16 | Group: Development/Languages/Perl | |
17 | Source0: http://www.cpan.org/modules/by-module/%{pdir}/%{pdir}-%{pnam}-%{version}.tar.gz | |
12f59be8 | 18 | # Source0-md5: 1d33ddeacc01426a02e23c71c2e4cd04 |
16fdc018 | 19 | BuildRequires: perl-devel >= 1:5.8.0 |
20 | BuildRequires: rpm-perlprov >= 4.1-13 | |
1884f209 | 21 | Requires: perl-Tie-IxHash |
16fdc018 | 22 | BuildArch: noarch |
23 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) | |
24 | ||
25 | %description | |
f2aef37e JB |
26 | ExtUtils::XSBuilder is a set modules to parse C header files and |
27 | create XS glue code and documentation out of it. Idealy this allows to | |
28 | "write" an interface to a C library without coding a line. Since no | |
29 | C-API is ideal, some adjuments are necessary most of the time. So to | |
30 | use this module you must still be familar with C and XS programming, | |
31 | but it removes a lot of stupid work and copy&paste from you. Also when | |
32 | the C API changes, most of the time you only have to rerun XSBuilder | |
33 | to get your new Perl API. | |
34 | ||
756b8908 JR |
35 | %description -l pl.UTF-8 |
36 | ExtUtils::XSBuilder to zbiór modułów do analizy plików nagłówkowych C | |
37 | i tworzenia z nich kodu łączącego XS oraz dokumentacji. W idealnej | |
f2aef37e | 38 | sytuacji pozwala to na "napisanie" interfejsu do biblioteki C bez |
756b8908 JR |
39 | kodowania ani jednej linii. Ale jako że żadne API w C nie jest |
40 | idealne, w większości przypadków potrzebne są pewne poprawki - tak | |
41 | więc aby używać tego modułu nadal trzeba znać się na programowaniu w C | |
42 | oraz XS, ale zapobiega on dużej ilości głupiej pracy i copy-paste. | |
43 | Także kiedy API w C się zmienia, większość roboty to ponowne | |
f2aef37e | 44 | uruchomienie XSBuildera dla uzyskania nowego perlowego API. |
16fdc018 | 45 | |
46 | %prep | |
47 | %setup -q -n %{pdir}-%{pnam}-%{version} | |
48 | ||
49 | %build | |
50 | %{__perl} Makefile.PL \ | |
51 | INSTALLDIRS=vendor | |
52 | ||
53 | %{__make} | |
54 | ||
55 | %{?with_tests:%{__make} test} | |
56 | ||
57 | %install | |
58 | rm -rf $RPM_BUILD_ROOT | |
59 | ||
60 | %{__make} install \ | |
61 | DESTDIR=$RPM_BUILD_ROOT | |
62 | ||
63 | %clean | |
64 | rm -rf $RPM_BUILD_ROOT | |
65 | ||
66 | %files | |
67 | %defattr(644,root,root,755) | |
68 | %doc Changes README | |
69 | %{perl_vendorlib}/ExtUtils/XSBuilder.pm | |
f2aef37e | 70 | %{perl_vendorlib}/ExtUtils/XSBuilder |
16fdc018 | 71 | %{_mandir}/man3/* |