summaryrefslogtreecommitdiffstats
path: root/cygwin-zlib.spec
blob: d24cbadd71a1a9793806e7f857cb3e2e1232a8b8 (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
130
131
132
133
134
135
136
137
138
%global __strip %{_cygwin_strip}
%global __objdump %{_cygwin_objdump}
%global _use_internal_dependency_generator 0
%global __find_requires %{_cygwin_findrequires}
%global __find_provides %{_cygwin_findprovides}
%define __debug_install_post %{_cygwin_debug_install_post}

Name:           cygwin-zlib
Version:        1.2.7
Release:        1
Summary:        Cygwin zlib compression library

License:        zlib
Group:          Development/Libraries
URL:            http://www.zlib.net/
BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildArch:      noarch

Source0:        http://www.zlib.net/zlib-%{version}.tar.gz
Patch0:         zlib-1.2.7-minizip-cygwin.patch

BuildRequires:  cygwin-filesystem
BuildRequires:  cygwin-gcc
BuildRequires:  cygwin-binutils


%description
Cygwin zlib compression library.

%package static
Summary:        Static libraries for cygwin-zlib development.
Group:          Development/Libraries
Requires:       cygwin-zlib = %{version}-%{release}

%description static
The cygwin-zlib-static package contains static library for cygwin-zlib development.

%package -n cygwin-minizip
Summary: Minizip library for Cygwin toolchain
Group: Development/Libraries
BuildRequires: cygwin-bzip2
Requires: cygwin-zlib = %{version}-%{release}

%description -n cygwin-minizip
Minizip library for the Cygwin cross-compiler toolchain.


%{_cygwin_debug_package}


%prep
%setup -q -n zlib-%{version}
%patch0 -p2
iconv -f windows-1252 -t utf-8 <ChangeLog >ChangeLog.tmp
sed -i -e '/gzopen_w/d' win32/zlib.def
pushd contrib/minizip
%{_cygwin_autoreconf}
popd

%build
CC=%{_cygwin_cc} \
CFLAGS="%{_cygwin_cflags}" \
RANLIB=%{_cygwin_ranlib} \
./configure

make -f win32/Makefile.gcc \
  CFLAGS="%{_cygwin_cflags}" \
  PREFIX=%{_cygwin_target}- \
  STRIP=: \
  SHAREDLIB=cygz.dll \
  IMPLIB=libz.dll.a \
  all

pushd contrib/minizip
%{_cygwin_configure} --disable-static \
  CPPFLAGS=-DHAVE_BZIP2 \
  LIBS=-lbz2
make %{?_smp_flags}
popd


%install
rm -rf $RPM_BUILD_ROOT

make -f win32/Makefile.gcc \
  DESTDIR=$RPM_BUILD_ROOT \
  BINARY_PATH=%{_cygwin_bindir} \
  INCLUDE_PATH=%{_cygwin_includedir} \
  LIBRARY_PATH=%{_cygwin_libdir} \
  SHARED_MODE=1 \
  SHAREDLIB=cygz.dll \
  IMPLIB=libz.dll.a \
  install

pushd contrib/minizip
make install DESTDIR=$RPM_BUILD_ROOT
popd

# We intentionally don't ship *.la files
rm -f $RPM_BUILD_ROOT%{_cygwin_libdir}/*.la

# Remove the documentation and manpages which duplicate Fedora native
rm -rf $RPM_BUILD_ROOT/%{_cygwin_mandir}


%clean
rm -rf $RPM_BUILD_ROOT


%files
%defattr(-,root,root,-)
%{_cygwin_bindir}/cygz.dll
%{_cygwin_includedir}/zconf.h
%{_cygwin_includedir}/zlib.h
%{_cygwin_libdir}/libz.dll.a
%{_cygwin_libdir}/pkgconfig/zlib.pc

%files static
%defattr(-,root,root,-)
%{_cygwin_libdir}/libz.a

%files -n cygwin-minizip
%{_cygwin_bindir}/cygminizip-1.dll
%{_cygwin_includedir}/minizip/
%{_cygwin_libdir}/libminizip.dll.a
%{_cygwin_libdir}/pkgconfig/minizip.pc


%changelog
* Wed May 23 2012 Yaakov Selkowitz <cygwin-ports-general@lists.sourceforge.net> - 1.2.7-1
- Version bump.
- Added minizip subpackage.

* Thu Feb 17 2011 Yaakov Selkowitz <cygwin-ports-general@lists.sourceforge.net> - 1.2.5-2
- Added debuginfo package.

* Wed Feb 16 2011 Yaakov Selkowitz <cygwin-ports-general@lists.sourceforge.net> - 1.2.5-1
- Initial RPM release, largely based on mingw32-zlib.