/alps/fastwriter

To get this branch, use:
bzr branch http://suren.me/webbzr/alps/fastwriter
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
Summary: Fast data streaming library
Name: ${PACKAGE_NAME}
Version: ${CPACK_PACKAGE_VERSION}
Release: csa
License: GPL-3.0
Group: Development/Libraries
Source: ${CPACK_SOURCE_PACKAGE_FILE_NAME}.tar.bz2
BuildRoot: %{_tmppath}/%{name}-%{version}-root
URL: http://darksoft.org
Prefix: %{_prefix}
Docdir: %{_docdir}
BuildRequires: xfsprogs-devel libuuid-devel
BuildRequires: pkg-config libtool cmake
Vendor: Institute for Data Processing and Electronics, KIT
Packager: Suren A. Chilingaryan <csa@suren.me>

%description
Fast data streaming library (nothing goes here...)

%package -n lib${PACKAGE_NAME}${FASTWRITER_ABI_VERSION}
Summary: Fast data streaming library
Group: Development/Libraries
Provides: libfastwriter = %{version}
Requires: xfsprogs

%description -n lib${PACKAGE_NAME}${FASTWRITER_ABI_VERSION}
Standard C storage routines are not efficient if a single, but fast stream of 
data have to be written on the disk. The fastwriter is optimized for this use
case. The following methods are used to speed-up writting.
 * Linux AIO is used to avoid intermediate file caches
 * The large extents are pre-allocated and the file system is hinted that more
 data will follow  
 * For XFS volumes, the real-time mode can be used


%package -n lib${PACKAGE_NAME}-devel
Summary: Fast data streaming library
Group: Development/Libraries 
Requires: lib${PACKAGE_NAME}${FASTWRITER_ABI_VERSION} = %{version}

%description -n lib${PACKAGE_NAME}-devel
Development files for fastwriter


%prep
%setup -q

%build
cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_INSTALL_LIBDIR=%{_libdir} -DCMAKE_INSTALL_BINDIR=%{_bindir} -DCMAKE_INSTALL_DATADIR=%{_datadir} -DCMAKE_INSTALL_DATAROOTDIR=%{_datadir} -DCMAKE_INSTALL_INCLUDEDIR=%{_includedir} -DCMAKE_BUILD_TYPE=Release .
make

%install
rm -rf $RPM_BUILD_ROOT
make install DESTDIR=$RPM_BUILD_ROOT

%clean
rm -rf $RPM_BUILD_ROOT

%post -n lib${PACKAGE_NAME}${FASTWRITER_ABI_VERSION} -p /sbin/ldconfig

%postun -n lib${PACKAGE_NAME}${FASTWRITER_ABI_VERSION} -p /sbin/ldconfig

%files -n lib${PACKAGE_NAME}${FASTWRITER_ABI_VERSION}
%defattr(-, root, root)
%{_libdir}/lib${PACKAGE_NAME}.so.*

%files -n lib${PACKAGE_NAME}-devel
%defattr(-, root, root)  
%{_includedir}/*
%{_libdir}/lib*.so
%{_libdir}/pkgconfig/*.pc
%exclude %{_libdir}/*.a

%changelog
* Fri Mar  4 2016 Suren A. Chilingaryan <csa@suren.me> - ${CPACK_PACKAGE_VERSION}
- Added spec file to the sources