summaryrefslogtreecommitdiffstats
path: root/libxlswriter.spec
blob: 4f6964a0270a7f3f8dad80791c698e1842d73a3f (plain)
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
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
# remirepo/fedora spec file for libxlswriter
#
# Copyright (c) 2018 Remi Collet
# License: CC-BY-SA
# http://creativecommons.org/licenses/by-sa/4.0/
#
# Please, preserve the changelog entries
#

%global gh_commit   3f95641b2022bba0742890605874f7d07207de61
%global gh_short    %(c=%{gh_commit}; echo ${c:0:7})
%global gh_owner    jmcnamara
%global gh_project  libxlsxwriter
%global libname     %{gh_project}

Name:          %{libname}
Summary:       A C library for creating Excel XLSX files
Version:       0.7.7
Release:       2%{?dist}
License:       BSD
Group:         System Environment/Libraries

URL:           https://github.com/%{gh_owner}/%{gh_project}/
Source0:       https://github.com/%{gh_owner}/%{gh_project}/archive/%{gh_commit}/%{gh_project}-%{version}-%{gh_short}.tar.gz

BuildRequires: gcc
BuildRequires: gcc-c++
# see https://github.com/jmcnamara/libxlsxwriter/issues/168
%if 0%{?rhel} == 6 || 0%{?rhel} == 7
BuildRequires: cmake3
%else
BuildRequires: cmake >= 2.8.7
%endif
BuildRequires: zlib-devel



%description
Libxlsxwriter is a C library that can be used to write text, numbers, formulas
and hyperlinks to multiple worksheets in an Excel 2007+ XLSX file.

It supports features such as:

* 100% compatible Excel XLSX files.
* Full Excel formatting.
* Merged cells.
* Defined names.
* Autofilters.
* Charts.
* Data validation and drop down lists.
* Worksheet PNG/JPEG images.
* Memory optimization mode for writing large files.
* Source code available on GitHub.
* FreeBSD license.
* ANSI C.
* Works with GCC, Clang, Xcode, MSVC 2015, ICC, TCC, MinGW, MingGW-w64/32.
* Works on Linux, FreeBSD, OpenBSD, OS X, iOS and Windows.
  Also works on MSYS/MSYS2 and Cygwin.
* Compiles for 32 and 64 bit.
* Compiles and works on big and little endian systems.
* The only dependency is on zlib.


%package devel
Summary:    Header files and development libraries for %{name}
Group:      Development/Libraries
Requires:   %{name}%{?_isa} = %{version}-%{release}

%description devel
This package contains the header files and development libraries
for %{name}.


%prep
%setup -q -n %{gh_project}-%{gh_commit}


%build
%if 0%{?rhel} == 6 || 0%{?rhel} == 7
%cmake3 -DBUILD_TESTS=ON
%else
%cmake -DBUILD_TESTS=ON
%endif

make %{_smp_mflags}


%check
make test


%install
make install DESTDIR="%{buildroot}"


%if 0%{?fedora} < 28 && 0%{?rhel} < 8
%post   -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%endif


%files
%{!?_licensedir:%global license %%doc}
%license License.txt
%{_libdir}/%{libname}.so


%files devel
%doc *.md
%doc Changes.txt
%doc examples
%{_includedir}/xls*


%changelog
* Wed Aug 22 2018 Remi Collet <remi@remirepo.net> - 0.7.7-2
- F29 cleanup

* Fri May 25 2018 Remi Collet <remi@remirepo.net> - 0.7.7-1
- update to 0.7.7
- drop workaround for PR merged upstream

* Fri Apr 27 2018 Remi Collet <remi@remirepo.net> - 0.7.6-1
- initial package
- open https://github.com/jmcnamara/libxlsxwriter/issues/166 library layout
  fixed by https://github.com/jmcnamara/libxlsxwriter/pull/170
- open https://github.com/jmcnamara/libxlsxwriter/issues/167 soname
- open https://github.com/jmcnamara/libxlsxwriter/issues/168 cmake version
  fixed by https://github.com/jmcnamara/libxlsxwriter/pull/169