]> git.pld-linux.org Git - packages/QtLockedFile.git/blob - QtLockedFile.spec
- adjusted qtlockedfile.prf for qt5 compatibility; release 5
[packages/QtLockedFile.git] / QtLockedFile.spec
1 #
2 # Conditional build:
3 %bcond_without  qt4             # build Qt4
4 %bcond_without  qt5             # build Qt5
5
6 # last commit to qtlockedfile subdir in
7 # https://qt.gitorious.org/qt-solutions/qt-solutions/
8 %define commit  17b56547d6e0d9a06603231fe2384474f9144829
9 Summary:        QFile extension with advisory locking functions
10 Name:           QtLockedFile
11 Version:        2.4
12 Release:        3
13 License:        GPL v3 or LGPL v2 with exceptions
14 Group:          Libraries
15 # git clone git@gitorious.org:qt-solutions/qt-solutions.git
16 # git checkout %{commit}
17 # tar -cjf QtLockedFile-%{version}.tar.bz2 -C qt-solutions/qtlockedfile .
18 Source0:        %{name}-%{version}.tar.bz2
19 # Source0-md5:  8d0525b7f3dc92ee1464c6a538832535
20 Source1:        qtlockedfile.prf
21 Patch0:         qtlockedfile-dont-build-example.patch
22 Patch1:         qtlockedfile-use-current-version.patch
23 URL:            http://doc.qt.digia.com/solutions/4/qtlockedfile/qtlockedfile.html
24 BuildRequires:  libstdc++-devel
25 %if %{with qt4}
26 BuildRequires:  QtCore-devel
27 BuildRequires:  qt4-qmake
28 %endif
29 %if %{with qt5}
30 BuildRequires:  Qt5Core-devel
31 BuildRequires:  qt5-qmake >= 5.4
32 %endif
33 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
34
35 %define         qt4dir  %{_datadir}/qt4
36 %define         qt5dir  %{_libdir}/qt5
37
38 %description
39 This class extends the QFile class with inter-process file locking
40 capabilities. If an application requires that several processes should
41 access the same file, QtLockedFile can be used to easily ensure that
42 only one process at a time is writing to the file, and that no process
43 is writing to it while others are reading it.
44
45 %package devel
46 Summary:        Development files for QtLockedFile library
47 Group:          Development/Libraries
48 Requires:       %{name} = %{version}-%{release}
49
50 %description devel
51 This package contains libraries and header files for developing
52 applications that use QtLockedFile.
53
54 %package -n Qt5LockedFile
55 Summary:        QFile extension with advisory locking functions
56 Group:          Libraries
57
58 %description -n Qt5LockedFile
59 This class extends the QFile class with inter-process file locking
60 capabilities. If an application requires that several processes should
61 access the same file, QtLockedFile can be used to easily ensure that
62 only one process at a time is writing to the file, and that no process
63 is writing to it while others are reading it.
64
65 %package -n Qt5LockedFile-devel
66 Summary:        Development files for Qt5LockedFile library
67 Group:          Development/Libraries
68 Requires:       Qt5LockedFile = %{version}-%{release}
69
70 %description -n Qt5LockedFile-devel
71 This package contains libraries and header files for developing
72 applications that use Qt5LockedFile.
73
74 %prep
75 %setup -qc
76 %patch0 -p1
77 %patch1 -p0
78
79 set -- *
80 install -d build-qt{4,5}
81 cp -al "$@" build-qt4
82 cp -al "$@" build-qt5
83
84 %build
85 %if %{with qt4}
86 cd build-qt4
87 # Does not use GNU configure
88 ./configure -library
89 qmake-qt4
90 %{__make}
91 cd ..
92 %endif
93
94 %if %{with qt5}
95 cd build-qt5
96 ./configure -library
97 qmake-qt5
98 %{__make}
99 cd ..
100 %endif
101
102 %install
103 rm -rf $RPM_BUILD_ROOT
104
105 %if %{with qt4}
106 cd build-qt4
107 install -d $RPM_BUILD_ROOT{%{_libdir},%{_includedir}/qt4/QtSolutions,%{qt4dir}/mkspecs/features}
108 cp -a lib/* $RPM_BUILD_ROOT%{_libdir}
109 rm $RPM_BUILD_ROOT%{_libdir}/lib*-%{version}.so.1.0
110 cp -p src/qtlockedfile.h src/QtLockedFile $RPM_BUILD_ROOT%{_includedir}/qt4/QtSolutions
111 cp -p %{SOURCE1} $RPM_BUILD_ROOT%{qt4dir}/mkspecs/features
112 cd ..
113 %endif
114
115 %if %{with qt5}
116 cd build-qt5
117 install -d $RPM_BUILD_ROOT{%{_libdir},%{_includedir}/qt5/QtSolutions,%{qt5dir}/mkspecs/features}
118 cp -a lib/* $RPM_BUILD_ROOT%{_libdir}
119 rm $RPM_BUILD_ROOT%{_libdir}/lib*-%{version}.so.1.0
120 cp -p src/qtlockedfile.h src/QtLockedFile $RPM_BUILD_ROOT%{_includedir}/qt5/QtSolutions
121 cp -p %{SOURCE1} $RPM_BUILD_ROOT%{qt5dir}/mkspecs/features
122 cd ..
123 %endif
124
125 %clean
126 rm -rf $RPM_BUILD_ROOT
127
128 %post   -p /sbin/ldconfig
129 %postun -p /sbin/ldconfig
130
131 %post   -n Qt5LockedFile -p /sbin/ldconfig
132 %postun -n Qt5LockedFile -p /sbin/ldconfig
133
134 %if %{with qt4}
135 %files
136 %defattr(644,root,root,755)
137 %doc README.TXT
138 %attr(755,root,root) %{_libdir}/libQtSolutions_LockedFile-%{version}.so.*.*.*
139 %attr(755,root,root) %ghost %{_libdir}/libQtSolutions_LockedFile-%{version}.so.1
140
141 %files devel
142 %defattr(644,root,root,755)
143 %doc doc example
144 %{_libdir}/libQtSolutions_LockedFile-%{version}.so
145 # XXX shared dir
146 %dir %{_includedir}/qt4/QtSolutions
147 %{_includedir}/qt4/QtSolutions/QtLockedFile
148 %{_includedir}/qt4/QtSolutions/qtlockedfile.h
149 %{qt4dir}/mkspecs/features/qtlockedfile.prf
150 %endif
151
152 %if %{with qt5}
153 %files -n Qt5LockedFile
154 %defattr(644,root,root,755)
155 %doc README.TXT
156 %attr(755,root,root) %{_libdir}/libQt5Solutions_LockedFile-%{version}.so.*.*.*
157 %attr(755,root,root) %ghost %{_libdir}/libQt5Solutions_LockedFile-%{version}.so.1
158
159 %files -n Qt5LockedFile-devel
160 %defattr(644,root,root,755)
161 %doc doc example
162 %{_libdir}/libQt5Solutions_LockedFile-%{version}.so
163 # XXX shared dir
164 %dir %{_includedir}/qt5/QtSolutions
165 %{_includedir}/qt5/QtSolutions/QtLockedFile
166 %{_includedir}/qt5/QtSolutions/qtlockedfile.h
167 %{qt5dir}/mkspecs/features/qtlockedfile.prf
168 %endif
This page took 0.055207 seconds and 3 git commands to generate.