]> git.pld-linux.org Git - packages/lockdev.git/blob - lockdev.spec
- prevent "comment" being body to ldconfig script; rel 2
[packages/lockdev.git] / lockdev.spec
1 # TODO: something with directory (/var/lock is 1771 root.uucp and belongs to FHS!)
2 #       either move it to subdir (but then they would be used only by this lib)
3 #       or change lockdev group to uucp
4 #       or change /var/lock gid to lock
5 #
6 %include        /usr/lib/rpm/macros.perl
7 Summary:        A library for locking devices
8 Summary(pl):    Biblioteka do blokowania urz±dzeñ
9 Name:           lockdev
10 Version:        1.0.2
11 Release:        2
12 License:        LGPL
13 Group:          Libraries
14 Source0:        ftp://ftp.debian.org/debian/pool/main/l/lockdev/%{name}_%{version}.orig.tar.gz
15 # Source0-md5:  c2a9e010971ccbd642dd8e842b3a1c30
16 # Patch0:               ftp://ftp.debian.org/debian/pool/main/l/lockdev/%{name}_%{version}-5.1.diff.gz
17 Patch0:         %{name}-Makefile.patch
18 #Requires(pre): /usr/bin/getgid
19 #Requires(pre): /usr/sbin/groupadd
20 #Requires(postun):      /sbin/ldconfig
21 #Requires(postun):      /usr/sbin/groupdel
22 #BuildRequires: rpmbuild(macros) >= 1.202
23 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
24
25 %description
26 Lockdev provides a reliable way to put an exclusive lock to devices
27 using both FSSTND and SVr4 methods.
28
29 %description -l pl
30 lockdev udostêpnia wiarygodny sposób na zak³adanie wy³±cznej blokady
31 na urz±dzenia przy u¿yciu metod zarówno FSSTND jak i SVr4.
32
33 %package devel
34 Summary:        The header files for the lockdev library
35 Summary(pl):    Pliki nag³ówkowe biblioteki lockdev
36 Group:          Development/Libraries
37 Requires:       %{name} = %{version}-%{release}
38
39 %description devel
40 The lockdev library provides a reliable way to put an exclusive lock
41 on devices using both FSSTND and SVr4 methods. The lockdev-devel
42 package contains the development headers.
43
44 %description devel -l pl
45 Biblioteka lockdev udostêpnia wiarygodny sposób na zak³adanie
46 wy³±cznej blokady na urz±dzenia przy u¿yciu metod zarówno FSSTND jak i
47 SVr4. Ten pakiet zawiera pliki nag³ówkowe.
48
49 %package static
50 Summary:        Static lockdev library
51 Summary(pl):    Biblioteka statyczna lockdev
52 Group:          Development/Libraries
53 Requires:       %{name}-devel = %{version}-%{release}
54
55 %description static
56 Static lockdev library.
57
58 %description static -l pl
59 Biblioteka statyczna lockdev.
60
61 %package -n perl-LockDev
62 Summary:        LockDev - Perl extension to manage device lockfiles
63 Summary(pl):    LockDev - rozszerzenie Perla do zarz±dzania plikami blokuj±cymi dla urz±dzeñ
64 Group:          Development/Languages/Perl
65 Requires:       %{name} = %{version}-%{release}
66
67 %description -n perl-LockDev
68 The LockDev methods act on device locks normally located in /var/lock.
69 The lock is acquired creating a pair of files hardlinked between them
70 and named after the device name (as mandated by FSSTND) and the
71 device's major and minor numbers (as in SVr4 locks). This permits to
72 circumvent a problem using only the FSSTND lock method when the same
73 device exists under different names (for convenience or when a device
74 must be accessable by more than one group of users).
75
76 The lock file names are typically in the form LCK..ttyS1 and
77 LCK.004.065, and their content is the pid of the process who owns the
78 lock.
79
80 %description -n perl-LockDev -l pl
81 Metody LockDev dzia³aj± na blokadach (plikach blokuj±cych) urz±dzeñ
82 normalnie po³o¿onych w /var/lock. Blokada jest uzyskiwana poprzez
83 utworzenie pary plików po³±czonych dowi±zaniem zwyk³ym i nazwanych od
84 nazwy urz±dzenia (wg specyfikacji FSSTND) oraz liczby g³ównej i
85 pobocznej (major i minor, jak w blokadach SVr4). Pozwala to rozwi±zaæ
86 problem istniej±cy w przypadku u¿ywania wy³±cznie metody FSSTND, kiedy
87 to samo urz±dzenie istnieje pod ró¿nymi nazwami (dla wygody lub kiedy
88 musi byæ dostêpne dla wiêcej ni¿ jednej grupy u¿ytkowników).
89
90 Nazwy plików blokuj±cych s± zwykle w postaci LCK..ttyS1 i LCK.004.065,
91 a ich zawarto¶æ to identyfikator (PID) procesu posiadaj±cego blokadê.
92
93 %prep
94 %setup -q
95 %patch0 -p1
96
97 %build
98 %{__make} static \
99         CC="%{__cc}" \
100         CFLAGS="%{rpmcflags} -Wall"
101
102 rm -f src/*.o
103 %{__make} shared \
104         CC="%{__cc}" \
105         CFLAGS="%{rpmcflags} -fPIC -Wall -D_REENTRANT" \
106         LCFLAGS="%{rpmldflags}"
107 # don't rebuild with new .o
108 touch liblockdev.a
109
110 cd LockDev
111 %{__perl} Makefile.PL \
112         INSTALLDIRS=vendor
113 %{__make} \
114         OPTIMIZE="%{rpmcflags}"
115
116 %install
117 rm -rf $RPM_BUILD_ROOT
118
119 %{__make} install \
120         sbindir=$RPM_BUILD_ROOT%{_sbindir} \
121         libdir=$RPM_BUILD_ROOT%{_libdir} \
122         incdir=$RPM_BUILD_ROOT%{_includedir} \
123         mandir=$RPM_BUILD_ROOT%{_mandir}
124
125 install -d $RPM_BUILD_ROOT/var/lock
126 ln -sf liblockdev.so.*.*.* $RPM_BUILD_ROOT%{_libdir}/liblockdev.so
127
128 %{__make} install -C LockDev \
129         DESTDIR=$RPM_BUILD_ROOT
130
131 %clean
132 rm -rf $RPM_BUILD_ROOT
133
134 %if 0
135 %pre
136 %groupadd -g 34 -r -f lock
137 %endif
138
139 %post   -p /sbin/ldconfig
140 %postun -p /sbin/ldconfig
141
142 %if 0
143 if [ "$1" = "0" ]; then
144         %userremove lock
145 fi
146 %endif
147
148 %files
149 %defattr(644,root,root,755)
150 #%attr(2755,root,lock)  %{_sbindir}/lockdev
151 #%dir %attr(775,root,lock) /var/lock
152 %attr(755,root,root) %{_libdir}/*.so.*.*.*
153
154 %files devel
155 %defattr(644,root,root,755)
156 %attr(755,root,root) %{_libdir}/*.so
157 %{_mandir}/man3/lockdev.3*
158 %{_includedir}/*
159
160 %files static
161 %defattr(644,root,root,755)
162 %{_libdir}/*.a
163
164 %files -n perl-LockDev
165 %defattr(644,root,root,755)
166 %{perl_vendorarch}/LockDev.pm
167 %dir %{perl_vendorarch}/auto/LockDev
168 %{perl_vendorarch}/auto/LockDev/LockDev.bs
169 %attr(755,root,root) %{perl_vendorarch}/auto/LockDev/LockDev.so
170 %{_mandir}/man3/LockDev.3*
This page took 0.095039 seconds and 3 git commands to generate.