]> git.pld-linux.org Git - SPECS.git/blob - dyncall.spec
SPECS updated Sun 1 Aug 20:28:02 CEST 2021
[SPECS.git] / dyncall.spec
1 #
2 # Conditional build:
3 %bcond_without  doc     # manual.pdf
4 #
5 Summary:        A Generic Dynamic FFI package
6 Summary(pl.UTF-8):      Ogólny pakiet do dynamicznych wywołań obcych funkcji (FFI)
7 Name:           dyncall
8 Version:        1.1
9 Release:        1
10 License:        MIT
11 Group:          Libraries
12 #Source0Download: https://dyncall.org/download
13 Source0:        https://dyncall.org/r%{version}/%{name}-%{version}.tar.gz
14 # Source0-md5:  db7dab95f721dc1c0c513a7e4ab28345
15 Patch0:         %{name}-libdir.patch
16 URL:            https://dyncall.org/
17 BuildRequires:  cmake >= 2.6
18 %if %{with doc}
19 BuildRequires:  texlive-format-pdflatex
20 BuildRequires:  texlive-latex
21 BuildRequires:  texlive-latex-moreverb
22 # for html
23 #BuildRequires: texlive-tex4ht
24 %endif
25 ExclusiveArch:  %{ix86} %{x8664} x32 %{arm} aarch64 ia64 mips mips64 ppc ppc64 sh sparc sparcv9 sparc64
26 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
27
28 %description
29 dyncall is a low-level toolkit providing a portable abstraction for
30 handling native code dynamically at run time.
31
32 It comprises three independent components, available as C libraries,
33 namely:
34 - 'dyncall' for making function calls,
35 - 'dyncallback' for writing generic callback handlers, and
36 - 'dynload' for loading code.
37
38 %description -l pl.UTF-8
39 dyncall to zestaw niskopoziomowych narzędzi z przenośną abstrakcją
40 dynamicznej obsługi kodu natywnego w czasie uruchomienia.
41
42 Obejmuje trzy niezależne komponenty, dostępne jako biblioteki C:
43 - dyncall do wywołań funkcji
44 - dyncallback do pisania generycznej obsługi wywołań zwrotnych
45 - dynload do ładowania kodu
46
47 %package doc
48 Summary:        Documentation for dyncall libraries
49 Summary(pl.UTF-8):      Dokumentacja bibliotek dyncall
50 Group:          Documentation
51 BuildArch:      noarch
52
53 %description doc
54 Documentation for dyncall libraries.
55
56 %description doc -l pl.UTF-8
57 Dokumentacja bibliotek dyncall.
58
59 %prep
60 %setup -q
61 %patch0 -p1
62
63 %build
64 install -d build
65 cd build
66 %cmake ..
67
68 %{__make}
69 cd ..
70
71 %if %{with doc}
72 cd doc/manual
73 %{__make} -f Makefile.generic pdf
74
75 # TODO: html (but broken even with SHELL=/bin/bash)
76 %endif
77
78 %install
79 rm -rf $RPM_BUILD_ROOT
80
81 %{__make} -C build install \
82         DESTDIR=$RPM_BUILD_ROOT
83
84 %clean
85 rm -rf $RPM_BUILD_ROOT
86
87 %files
88 %defattr(644,root,root,755)
89 %doc AUTHORS BUGS ChangeLog LICENSE README ToDo
90 %{_libdir}/libdyncall_s.a
91 %{_libdir}/libdyncallback_s.a
92 %{_libdir}/libdynload_s.a
93 %{_includedir}/dyncall*.h
94 %{_includedir}/dynload.h
95
96 %if %{with doc}
97 %files doc
98 %defattr(644,root,root,755)
99 %doc doc/manual/manual.pdf
100 %endif
This page took 0.5289 seconds and 3 git commands to generate.