commit 332c434ad7fa0e333d86b542f560709dba3a1506 Author: dogsheng <960055655@qq.com> Date: Tue Nov 19 11:51:05 2019 +0800 Package init diff --git a/neon-0.27.0-multilib.patch b/neon-0.27.0-multilib.patch new file mode 100644 index 0000000..5f8f86d --- /dev/null +++ b/neon-0.27.0-multilib.patch @@ -0,0 +1,56 @@ +--- neon-0.27.0/neon-config.in.multilib ++++ neon-0.27.0/neon-config.in +@@ -5,7 +5,11 @@ + prefix=@prefix@ + exec_prefix=@exec_prefix@ + includedir=@includedir@ +-libdir=@libdir@ ++ ++libdir=`pkg-config --variable=libdir neon` ++CFLAGS=`pkg-config --cflags neon` ++LIBS=`pkg-config --libs neon` ++has_lfs=`pkg-config --variable=has_lfs neon` + + usage() + { +@@ -23,7 +27,7 @@ + --support FEATURE exit with success if feature is supported + + Known features: +- dav [@NE_FLAG_DAV@], ssl [@NE_FLAG_SSL@], zlib [@NE_FLAG_ZLIB@], ipv6 [@NE_FLAG_IPV6@], lfs [@NE_FLAG_LFS@], ++ dav [@NE_FLAG_DAV@], ssl [@NE_FLAG_SSL@], zlib [@NE_FLAG_ZLIB@], ipv6 [@NE_FLAG_IPV6@], lfs [${has_lfs}], + i18n [@NE_FLAG_I18N@], ts_ssl [@NE_FLAG_TS_SSL@] + + EOF +@@ -69,11 +73,10 @@ + ;; + + --cflags) +- echo -I${includedir}/neon @NEON_CFLAGS@ ++ echo ${CFLAGS} + ;; + + --libs) +- LIBS="-lneon @NEON_LIBS@" + # Don't add standard library paths + if test "$prefix" != "/usr"; then + LIBS="-L${libdir} ${LIBS}" +@@ -93,7 +96,7 @@ + zlib|ZLIB) support @NE_FLAG_ZLIB@ ;; + ipv6|IPV6) support @NE_FLAG_IPV6@ ;; + dav|DAV) support @NE_FLAG_DAV@ ;; +- lfs|LFS) support @NE_FLAG_LFS@ ;; ++ lfs|LFS) support ${has_lfs} ;; + i18n|I18N) support @NE_FLAG_I18N@ ;; + ts_ssl|TS_SSL) support @NE_FLAG_TS_SSL@ ;; + *) support no ;; +--- neon-0.27.0/neon.pc.in.multilib ++++ neon-0.27.0/neon.pc.in +@@ -2,6 +2,7 @@ + exec_prefix=@exec_prefix@ + libdir=@libdir@ + includedir=@includedir@ ++has_lfs=@NE_FLAG_LFS@ + + Name: neon + Description: HTTP/WebDAV client library diff --git a/neon-0.30.2-lockprintf.patch b/neon-0.30.2-lockprintf.patch new file mode 100644 index 0000000..389fc24 --- /dev/null +++ b/neon-0.30.2-lockprintf.patch @@ -0,0 +1,22 @@ + +Supress gcc warnings. + +--- neon-0.30.2/test/lock.c.lockprintf ++++ neon-0.30.2/test/lock.c +@@ -73,11 +73,11 @@ + const char *token_href) + { + static char buf[BUFSIZ]; +- sprintf(buf, +- "\n" +- "" +- "%s\n", +- activelock(scope, depth, owner, timeout, token_href)); ++ ne_snprintf(buf, sizeof buf, ++ "\n" ++ "" ++ "%s\n", ++ activelock(scope, depth, owner, timeout, token_href)); + return buf; + } + diff --git a/neon-0.30.2-sysuioh.patch b/neon-0.30.2-sysuioh.patch new file mode 100644 index 0000000..3501da9 --- /dev/null +++ b/neon-0.30.2-sysuioh.patch @@ -0,0 +1,14 @@ + +https://bugzilla.redhat.com/show_bug.cgi?id=1572180 + +--- neon-0.30.2/src/ne_socket.c.sysuioh ++++ neon-0.30.2/src/ne_socket.c +@@ -27,7 +27,7 @@ + #include "config.h" + + #include +-#ifdef HAVE_SYS_UIO_h ++#ifdef HAVE_SYS_UIO_H + #include /* writev(2) */ + #endif + #ifdef HAVE_SYS_TIME_H diff --git a/neon-0.30.2.tar.gz b/neon-0.30.2.tar.gz new file mode 100644 index 0000000..ea63074 Binary files /dev/null and b/neon-0.30.2.tar.gz differ diff --git a/neon.spec b/neon.spec new file mode 100644 index 0000000..87a3803 --- /dev/null +++ b/neon.spec @@ -0,0 +1,87 @@ +Name: neon +Version: 0.30.2 +Release: 9 +Summary: An HTTP and WebDAV client library +License: LGPLv2+ +URL: http://www.webdav.org/neon/ +Source0: http://www.webdav.org/neon/neon-%{version}.tar.gz + +# These patches are from fedora: https://src.fedoraproject.org/rpms/neon/tree/f29 +Patch0: neon-0.27.0-multilib.patch +Patch1: neon-0.30.2-sysuioh.patch +Patch2: neon-0.30.2-lockprintf.patch + +BuildRequires: git openssl-devel expat-devel gdb-headless +Requires: ca-certificates + +%description +neon is an HTTP and WebDAV client library, with a C interface. Features:\ +* High-level wrappers for common HTTP and WebDAV operations (GET, MOVE, DELETE, etc)\ +Low-level interface to the HTTP request/response engine, allowing the use of arbitrary\ +HTTP methods, headers, etc.\ +* Authentication support including Basic and Digest support, along with GSSAPI-based\ + Negotiate on Unix, and SSPI-based Negotiate/NTLM on Win32\ +* SSL/TLS support using OpenSSL or GnuTLS; exposing an abstraction layer for verifying server\ +certificates, handling client certificates, and examining certificate properties.\ +Smartcard-based client certificates are also supported via a PKCS#11 wrapper interface.\ +* Abstract interface to parsing XML using libxml2 or expat, and wrappers for simplifying\ +handling XML HTTP response bodies\ +* WebDAV metadata support; wrappers for PROPFIND and PROPPATCH to simplify property\ +manipulation.\ + + +%package devel +Summary: Development files for %{name} +Requires: neon = %{version}-%{release}, openssl-devel, zlib-devel, expat-devel +Requires: pkgconfig +License: LGPLv2+ and GPLv2+ + +%description devel +Libraries and header files of %{name} are all in the %{name}-devel package. + +%package help +Summary: Help manual for %{name} + +%description help +The %{name}-help package conatins man manual etc + +%prep +%autosetup -n %{name}-%{version} -p1 -Sgit +sed -ibak '/^install-docs/s/install-html//' Makefile.in + +%build +export CC="%{__cc} -pthread" +%configure --with-expat --enable-shared --disable-static \ + --enable-warnings \ + --with-ssl=openssl --enable-threadsafe-ssl=posix \ + --with-libproxy +%make_build + +%install +rm -rf $RPM_BUILD_ROOT +%make_install INSTALL="install -p" + +sed -ri "/^dependency_libs/{s,-l[^ ']*,,g}" \ + $RPM_BUILD_ROOT%{_libdir}/libneon.la + +%find_lang %{name} + +%files -f %{name}.lang +%doc BUGS TODO NEWS README THANKS +%license AUTHORS src/COPYING.LIB +%{_libdir}/*.so.* + +%files devel +%{_bindir}/* +%{_includedir}/* +%{_libdir}/pkgconfig/neon.pc +%{_libdir}/*.*a +%{_libdir}/*.so + +%files help +%{_mandir}/man1/* +%{_mandir}/man3/* + +%changelog +* Wed Nov 13 2019 openEuler Buildteam - 0.30.2-9 +- Package init