summaryrefslogtreecommitdiff
path: root/packaging/curl.spec
blob: 650d7c366dc5d9c95ff5d9e1336dc1bd83838704 (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
Name:       curl
Summary:    A utility for getting files from remote servers (FTP, HTTP, and others)
Version:    7.59.0
Release:    4
Group:      Applications/Internet
License:    MIT
URL:        http://curl.haxx.se/
#Source0:    http://curl.haxx.se/download/%{name}-%{version}.tar.bz2
Source0:    %{name}-%{version}.tar.gz
Source1001:     %{name}.manifest

BuildRequires:  pkgconfig(icu-uc)
BuildRequires:  pkgconfig(openssl)
BuildRequires:  pkgconfig(zlib)
BuildRequires:  pkgconfig(libcares)
BuildRequires:	pkgconfig(libnghttp2)
Provides:   webclient


%description
curl is a client to get documents/files from servers, using any of the
supported protocols. The command is designed to work without user
interaction or any kind of interactivity.

curl offers a busload of useful tricks like proxy support, user
authentication, ftp upload, HTTP post, file transfer resume and more.

%package -n libcurl
Summary:    A library for getting files from web servers
Group:      System/Libraries
License:    MIT
Requires(post): /sbin/ldconfig
Requires(postun): /sbin/ldconfig

%description -n libcurl
This package provides a way for applications to use FTP, HTTP, Gopher and
other servers for getting files.


%package -n libcurl-devel
Summary:    Files needed for building applications with libcurl
Group:      Development/Libraries
License:    MIT
Requires:   libcurl = %{version}-%{release}
Provides:   curl-devel = %{version}-%{release}
Obsoletes:   curl-devel < %{version}-%{release}

%description -n libcurl-devel
libcurl is the core engine of curl; this packages contains all the libs,
headers, and manual pages to develop applications using libcurl.

%package -n libcurl-extension-dlp
Summary:	Extensions for Tizen OS
Provides:	libcurl-extension-dlp = %{version}-%{release}
Requires(post): /sbin/ldconfig
Requires(postun): /sbin/ldconfig

%description -n libcurl-extension-dlp
libcurl extensions for Tinen OS.

%prep
%setup -q
cp %{SOURCE1001} .

#%patch01 -p1
#%patch02 -p1

%build

export CPPFLAGS="-DHAVE_PK11_CREATEGENERICOBJECT -DHAVE_GETIFADDRS"
CFLAGS+=" -fstack-protector-strong -Wl,-z,relro -D_FORTIFY_SOURCE=2 -fPIE -pie"
CFLAGS+=" -DHAVE_GETIFADDRS"
%if "%{tizen_profile_name}" == "tv"
CFLAGS+=" -DTIZEN_TV_EXT"
%endif
%reconfigure --without-nss --without-gnutls --with-openssl --enable-ipv6 \
--with-ca-path==/etc/ssl/certs \
--with-ca-bundle=/etc/ssl/ca-bundle.pem \
--with-icu-uc \
--with-lber-lib=lber \
--enable-manual --enable-versioned-symbols --enable-ares --enable-debug --enable-curldebug \
--disable-static \
--with-nghttp2 \
--without-zsh-functions-dir \
--enable-dlp \

#--with-ca-bundle=%{_sysconfdir}/pki/tls/certs/ca-bundle.crt 

sed -i -e 's,-L/usr/lib ,,g;s,-L/usr/lib64 ,,g;s,-L/usr/lib$,,g;s,-L/usr/lib64$,,g' \
Makefile libcurl.pc
# Remove bogus rpath
sed -i \
-e 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' \
-e 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool

make %{?_smp_mflags}

%install
rm -rf %{buildroot}

rm -rf $RPM_BUILD_ROOT

make DESTDIR=$RPM_BUILD_ROOT INSTALL="%{__install} -p" install

rm -f ${RPM_BUILD_ROOT}%{_libdir}/libcurl{,_extension_dlp}.la
install -d $RPM_BUILD_ROOT/%{_datadir}/aclocal
install -m 644 docs/libcurl/libcurl.m4 $RPM_BUILD_ROOT/%{_datadir}/aclocal


# don't need curl's copy of the certs; use openssl's
find ${RPM_BUILD_ROOT} -name ca-bundle.crt -exec rm -f '{}' \;
rm -rf ${RPM_BUILD_ROOT}/usr/share/man

%post -n libcurl -p /sbin/ldconfig

%postun -n libcurl -p /sbin/ldconfig

%files
%{_bindir}/curl
%license COPYING

%files -n libcurl
%manifest %{name}.manifest
%{_libdir}/libcurl.so.*
%license COPYING

%files -n libcurl-devel
%{_bindir}/curl-config*
%{_includedir}/curl
%{_libdir}/*.so
%{_libdir}/pkgconfig/*.pc
%{_datadir}/aclocal/libcurl.m4

%files -n libcurl-extension-dlp
%manifest %{name}.manifest
%{_libdir}/libcurl_extension_dlp.so.*
%license COPYING