]> git.pld-linux.org Git - SPECS.git/blob - prelink.spec
SPECS updated Tue 30 Apr 15:13:02 CEST 2024
[SPECS.git] / prelink.spec
1 #
2 # Conditional build:
3 %bcond_without  selinux         # SELinux support
4 %bcond_without  tests           # tests after build
5 #
6 Summary:        Tool to optimize relocations in object files
7 Summary(pl.UTF-8):      Narzędzie optymalizujące relokacje w plikach obiektów
8 Name:           prelink
9 Version:        20130503
10 Release:        2
11 License:        GPL v2+
12 Group:          Development/Tools
13 # backup:       http://distfiles.gentoo.org/distfiles/%{name}-%{version}.tar.bz2
14 Source0:        http://people.redhat.com/jakub/prelink/%{name}-%{version}.tar.bz2
15 # Source0-md5:  4cab1571718a9b25665bd025069a02c7
16 Source1:        %{name}.conf
17 Source2:        http://people.redhat.com/jakub/prelink/%{name}.pdf
18 # Source2-md5:  50946b654da9ccb26230cc1e00ccc53c
19 Source3:        %{name}.cron
20 Source4:        %{name}.sysconfig
21 Patch0:         %{name}-Makefile.patch
22 Patch1:         %{name}-fsync.patch
23 Patch2:         %{name}-init.patch
24 Patch3:         %{name}-md5sha.patch
25 Patch4:         %{name}-prelink.h.patch
26 Patch5:         %{name}-tests.patch
27 BuildRequires:  autoconf >= 2.13
28 BuildRequires:  automake >= 1.4
29 BuildRequires:  elfutils-devel
30 BuildRequires:  glibc-devel >= 2.3
31 %{?with_selinux:BuildRequires:  libselinux-devel}
32 BuildRequires:  libstdc++-devel
33 BuildRequires:  libtool
34 Requires:       glibc >= 2.3.4-0.20040722
35 Conflicts:      paxtest
36 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
37
38 %description
39 This program replaces relocations in object files with less expensive
40 ones. This allows faster run-time dynamic linking.
41
42 %description -l pl.UTF-8
43 Ten program zamienia relokacje w plikach obiektów na mniej wymagające.
44 Dzięki temu program jest szybciej konsolidowany w momencie
45 uruchomienia.
46
47 %prep
48 %setup -q -n %{name}
49 %patch0 -p1
50 %patch1 -p1
51 %patch2 -p1
52 %patch3 -p1
53 %patch4 -p1
54 %patch5 -p1
55
56 %build
57 %{__libtoolize}
58 %{__aclocal} -I m4
59 %{__autoconf}
60 %{__autoheader}
61 %{__automake}
62 %configure \
63         --enable-static=no \
64         %{!?with_selinux:ac_cv_lib_selinux_is_selinux_enabled=no} \
65
66 %{__make} \
67         CLFAGS="%{rpmcflags} -D_LARGEFILE64_SOURCE"
68 %if %{with tests}
69 %{__make} -C testsuite check-harder
70 %{__make} -C testsuite check-cycle
71 %endif
72
73 %install
74 rm -rf $RPM_BUILD_ROOT
75 install -d $RPM_BUILD_ROOT{%{_sysconfdir},/etc/{sysconfig,rpm,cron.daily}}
76
77 %{__make} install \
78         DESTDIR=$RPM_BUILD_ROOT
79
80 install %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}
81 install %{SOURCE2} .
82 cp -a %{SOURCE3} $RPM_BUILD_ROOT/etc/cron.daily/prelink
83 cp -a %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/prelink
84
85 install -d $RPM_BUILD_ROOT/var/{lib/misc,log/prelink}
86 touch $RPM_BUILD_ROOT/var/lib/misc/prelink.full
87 touch $RPM_BUILD_ROOT/var/lib/misc/prelink.quick
88 touch $RPM_BUILD_ROOT/var/lib/misc/prelink.force
89 touch $RPM_BUILD_ROOT/var/log/prelink/prelink.log
90
91 cat > $RPM_BUILD_ROOT/etc/rpm/macros.prelink <<'EOF'
92 # rpm-4.1 verifies prelinked libraries using a prelink undo helper.
93 #       Note: The 2nd token is used as argv[0] and "library" is a
94 #       placeholder that will be deleted and replaced with the appropriate
95 #       library file path.
96 %%__prelink_undo_cmd %{_sbindir}/prelink prelink -y library
97 EOF
98
99 %clean
100 rm -rf $RPM_BUILD_ROOT
101
102 %post
103 umask 002
104 touch /var/lib/misc/prelink.force
105
106 %files
107 %defattr(644,root,root,755)
108 %doc AUTHORS ChangeLog NEWS README THANKS TODO prelink.pdf
109 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/prelink.conf
110 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/prelink
111 /etc/rpm/macros.prelink
112 %attr(755,root,root) /etc/cron.daily/prelink
113 %attr(755,root,root) %{_bindir}/execstack
114 %attr(755,root,root) %{_sbindir}/prelink
115 %{_mandir}/man8/execstack.8*
116 %{_mandir}/man8/prelink.8*
117 %verify(not md5 mtime size) %ghost %config(missingok,noreplace) /var/lib/misc/prelink.full
118 %verify(not md5 mtime size) %ghost %config(missingok,noreplace) /var/lib/misc/prelink.quick
119 %verify(not md5 mtime size) %ghost %config(missingok,noreplace) /var/lib/misc/prelink.force
120 %dir /var/log/prelink
121 %verify(not md5 mtime size) %ghost %config(missingok,noreplace) /var/log/prelink/prelink.log
This page took 0.285448 seconds and 3 git commands to generate.