Hello community,

here is the log from the commit of package apr for openSUSE:Factory checked in 
at 2017-07-11 08:33:49
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/apr (Old)
 and      /work/SRC/openSUSE:Factory/.apr.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "apr"

Tue Jul 11 08:33:49 2017 rev:1 rq:508064 version:1.6.2

Changes:
--------
New Changes file:

--- /dev/null   2017-06-30 09:57:03.955002226 +0200
+++ /work/SRC/openSUSE:Factory/.apr.new/apr.changes     2017-07-11 
08:33:51.895571802 +0200
@@ -0,0 +1,837 @@
+-------------------------------------------------------------------
+Thu Jun 22 11:33:58 UTC 2017 - [email protected]
+
+- Rename package
+
+-------------------------------------------------------------------
+Mon Jun 19 16:48:39 UTC 2017 - [email protected]
+
+- apr 1.6.2
+  * apr_allocator: Provide apr_allocator_align()
+  * apr_file_io: Add apr_file_pipe_create_pools()
+  * Add APR_SO_FREEBIND option for apr_socket_opt_set. 
+  * apr_skiplist: Add apr_skiplist_addne*()
+  * Added Unix domain socket support.
+  * See http://www.apache.org/dist/apr/CHANGES-APR-1.6 for 
+    a full list of changes.
+- Drop patches from upstream:
+  * 0017-Merge-r1733694-r1733708-from-trunk.patch
+  * 0018-apr_proc_mutex-unix-backport-r1733775-from-trunk-par.patch
+
+-------------------------------------------------------------------
+Wed Jun 14 01:07:53 UTC 2017 - [email protected]
+
+- define READDIR_IS_THREAD_SAFE, because it is. Avoid
+ using obsolete and potentially dangerous readdir_r.
+
+-------------------------------------------------------------------
+Wed May  4 13:17:03 UTC 2016 - [email protected]
+
+- 0017-Merge-r1733694-r1733708-from-trunk.patch and 
+  0018-apr_proc_mutex-unix-backport-r1733775-from-trunk-par.patch
+  Refcount shared mutexes usage to avoid
+  destruction while still is use by some processes, this fixes
+  apache graceful-restart sometimes leaving processes in
+  "Gracefully finishing" state forever.
+- apr-proc-mutex-map-anon.patch use MAP_ANON instead of mmap'ing
+  /dev/zero.
+
+-------------------------------------------------------------------
+Tue Sep 29 10:05:23 UTC 2015 - [email protected]
+
+- Add gpg signature
+
+-------------------------------------------------------------------
+Sun May  3 03:32:33 UTC 2015 - [email protected]
+
+- remove baselibs.conf that osc rejects now with message: 
+ERROR: 'arch' referenced in baselibs.conf is not being built
+ERROR: 'ppc' referenced in baselibs.conf is not being built
+ERROR: 'package' referenced in baselibs.conf is not being built
+ERROR: 'arch' referenced in baselibs.conf is not being built
+ERROR: 'ppc' referenced in baselibs.conf is not being built
+ERROR: 'package' referenced in baselibs.conf is not being built
+
+-------------------------------------------------------------------
+Sun May  3 03:24:24 UTC 2015 - [email protected]
+
+- apr 1.5.2
+* apr_escape: Correctly calculate the size of the returned string in
+  apr_escape_path and set the correct return value in case we actually
+  escape the string
+* apr_poll(cb): fix error paths returned values and leaks.
+* apr_skiplist: Optimize the number of allocations by reusing pooled or
+  malloc()ed nodes for the lifetime of the skiplist.
+* apr_skiplist: Fix possible multiple-free() on the same value in
+   apr_skiplist_remove_all() 
+   (obsoletes 0007-backport-r1604596-1604598-from-trunk.patch)
+* apr_global_mutex/apr_proc_mutex: Resolve failures with the 
+   POSIX sem implementation in environments which receive signals.
+   (obsoletes 0009-Merge-r1610854-from-trunk.patch)
+* drop already included or no longer needed patches:
+     0004-Backport-r1593600-from-1.6.patch
+     0005-Backport-r1593612-from-1.6.patch
+     0007-backport-r1604596-1604598-from-trunk.patch
+     0009-Merge-r1610854-from-trunk.patch
+     string-compare.diff
+-------------------------------------------------------------------
+Sun Mar  8 18:17:59 UTC 2015 - [email protected]
+
+- No longer use --enable-allocator-uses-mmap but the default 
+  which is using malloc, this feature exists to reduce 
+  fragmentation but this is currently at the expense of:
+  * Loosing all malloc sanity checks.
+  * mmap and munmap are expensive operations when using
+    at lot of threads (like in apache worker,event)
+  * It will waste memory, even more on archs that have big 
+    page sizes.
+- If there are fragmentation or performance problems in glibc
+  malloc, the library has to be fixed instead.
+
+-------------------------------------------------------------------
+Sat Mar  7 18:25:52 UTC 2015 - [email protected]
+
+- apr-use-getrandom.patch: Update, if getrandom blocks, fallback
+  to the old codepath, restoring old always non-blocking behaviour
+  in practice it blocks only at boottime when the entropy pool
+  has not been fully initialized, this delays the startup
+  of apache for example.
+  * Use SYS_getrandom constant instead of the "internal"
+  __NR_getrandom
+
+-------------------------------------------------------------------
+Sun Oct 19 18:52:04 UTC 2014 - [email protected]
+
+- apr-use-getrandom.patch Use the new getrandom() system call 
+  in apr_generate_random_bytes() if the system call number
+  is defined and if the call is sucessful, fallback if otherwise.
+
+-------------------------------------------------------------------
+Tue Aug 19 23:28:46 UTC 2014 - [email protected]
+
+- 0004-Backport-r1593600-from-1.6.patch memory leak apr_pvsprintf()
+- 0005-Backport-r1593612-from-1.6.patch Missing error codes in 
apr_error_string()
+- 0007-backport-r1604596-1604598-from-trunk.patch memory corruption in 
apr_skiplist
+- 0009-Merge-r1610854-from-trunk.patch posix semaphore must handle EINTR.
+
+-------------------------------------------------------------------
+Mon Jun 23 14:15:22 UTC 2014 - [email protected]
+
+- Single thread for tests.
+
+-------------------------------------------------------------------
+Mon Jun 23 07:32:57 UTC 2014 - [email protected]
+
+- Move plain .so file from devel package to fix tomcat intercation.
+  bnc#881700
+
+-------------------------------------------------------------------
+Fri Jun 20 11:46:37 UTC 2014 - [email protected]
+
+- Remove sparc mentions from baselibs
+
+-------------------------------------------------------------------
+Fri Jun 20 09:03:19 UTC 2014 - [email protected]
+
+- Cleanup with spec-cleaner
+- Remove support for sle9 and friends.
+- Fix date and time usage to avoid the completely needless rebuilds
+- Run the tests in multiple threads
+
+-------------------------------------------------------------------
+Fri Apr 18 03:05:58 UTC 2014 - [email protected]
+
+- apr 1.5.1 
+* avoid segfault on apr_os_proc_mutex_get() with cross-
+  process pthread mutexes
+* Fix POSIX shared memory (shm_open) use for named shared memory.
+  (reenabled in package as well)
+
+-------------------------------------------------------------------
+Fri Apr 18 03:03:27 UTC 2014 - [email protected]
+
+- remove apr-1.3.0-testshm-apr_shm_remove.patch, no longer needed
+
+-------------------------------------------------------------------
+Thu Nov 21 14:55:45 UTC 2013 - [email protected]
+
+- Update to version 1.5.0. required for upcoming apache 2.4.x 
+* Add apr_sockaddr_is_wildcard()
+* Add the apr_escape interface.
+* Add apr_skiplist family.
+* Add the apr_table_getm() call
+* Add apr_hash_this_key(), apr_hash_this_key_len(), and 
+  apr_hash_this_val()
+* many other changes irrelevant to *nix. 
+
+-------------------------------------------------------------------
+Tue Sep 24 19:23:12 UTC 2013 - [email protected]
+
+- correct condition for avoiding make check is qemu_user_build,
+  not armv7l
+
+-------------------------------------------------------------------
+Wed Aug 28 07:20:31 UTC 2013 - [email protected]
+
+- Use compiler symbol visibility 
+
+-------------------------------------------------------------------
+Mon Jul 22 17:32:25 UTC 2013 - [email protected]
+
+- Update to apr 1.4.8 
+*  Fix amd64 assembler version of apr_atomic_xchgptr()
+* many other bugfixes, see https://www.apache.org/dist/apr/CHANGES-APR-1.4
+
+-------------------------------------------------------------------
+Tue Jul 16 14:00:09 CEST 2013 - [email protected]
+
+- get rid of --parents in doc section
+
+-------------------------------------------------------------------
+Mon Oct 15 10:41:21 UTC 2012 - [email protected]
+
+- buildrequire explicitly netcfg for the test suite
+
+-------------------------------------------------------------------
+Fri Aug 17 18:42:37 UTC 2012 - [email protected]
+
++++ 640 more lines (skipped)
++++ between /dev/null
++++ and /work/SRC/openSUSE:Factory/.apr.new/apr.changes

New:
----
  apr-1.4.5-linux3.patch
  apr-1.6.2.tar.bz2
  apr-1.6.2.tar.bz2.asc
  apr-proc-mutex-map-anon.patch
  apr-use-getrandom.patch
  apr-visibility.patch
  apr.changes
  apr.keyring
  apr.spec

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ apr.spec ++++++
#
# spec file for package apr
#
# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via http://bugs.opensuse.org/
#


%define         aprver 1
%define         libname lib%{name}%{aprver}
%define         installbuilddir %{_libdir}/apr-%{aprver}/build
%define         includedir %{_includedir}/apr-%{aprver}
Name:           apr
Version:        1.6.2
Release:        0
Summary:        Apache Portable Runtime (APR) Library
License:        Apache-2.0
Group:          Development/Libraries/Other
Url:            https://apr.apache.org/
Source0:        https://www.apache.org/dist/apr/apr-%{version}.tar.bz2
Source1:        https://www.apache.org/dist/apr/apr-%{version}.tar.bz2.asc
Source2:        %{name}.keyring
Patch4:         apr-1.4.5-linux3.patch
Patch5:         apr-visibility.patch
Patch6:         apr-use-getrandom.patch
Patch9:         apr-proc-mutex-map-anon.patch
BuildRequires:  doxygen
BuildRequires:  fdupes
BuildRequires:  libtool
BuildRequires:  libuuid-devel
BuildRequires:  lksctp-tools-devel
# for the testsuite
BuildRequires:  netcfg
BuildRequires:  pkgconfig
BuildRequires:  python
BuildRoot:      %{_tmppath}/%{name}-%{version}-build

%description
The mission of the Apache Portable Runtime (APR) project is to create
and maintain software libraries that provide a predictable and
consistent interface to underlying platform-specific implementations.
The primary goal is to provide an API to which software developers may
code and be assured of predictable if not identical behaviour
regardless of the platform on which their software is built, relieving
them of the need to code special-case conditions to work around or take
advantage of platform-specific deficiencies or features.

The APR is used by both Open Source and Commercial projects, prominent
examples being the Apache HTTP server.

%package -n %{libname}
Summary:        Apache Portable Runtime (APR) Library
Group:          System/Libraries

%description -n %{libname}
The mission of the Apache Portable Runtime (APR) project is to create
and maintain software libraries that provide a predictable and
consistent interface to underlying platform-specific implementations.
The primary goal is to provide an API to which software developers may
code and be assured of predictable if not identical behaviour
regardless of the platform on which their software is built, relieving
them of the need to code special-case conditions to work around or take
advantage of platform-specific deficiencies or features.

The APR is used by both Open Source and Commercial projects, prominent
examples being the Apache HTTP server.

%package devel
Summary:        Apache Portable Runtime (APR) Library
Group:          Development/Libraries/Other
Requires:       %{libname} = %{version}
Provides:       %{libname}-devel = %{version}
Obsoletes:      %{libname}-devel < %{version}

%description devel
The mission of the Apache Portable Runtime (APR) project is to create
and maintain software libraries that provide a predictable and
consistent interface to underlying platform-specific implementations.
The primary goal is to provide an API to which software developers may
code and be assured of predictable if not identical behaviour
regardless of the platform on which their software is built, relieving
them of the need to code special-case conditions to work around or take
advantage of platform-specific deficiencies or features.

The APR is used by both Open Source and Commercial projects, prominent
examples being the Apache HTTP server.

%prep
%setup -q
%patch4
%patch5 -p1
%patch6 -p1
%patch9 -p1

# Do not put date to doxy content
sed -i \
        -e '4 iHTML_TIMESTAMP=NO' \
        docs/doxygen.conf

%build
./buildconf
export apr_lock_method=USE_PROC_PTHREAD_SERIALIZE
%configure \
        --enable-other-child \
        --with-installbuilddir=%{installbuilddir} \
        --includedir=%{includedir} \
%ifarch %{ix86}
        --enable-nonportable-atomics=yes \
%endif
        --with-devrandom=/dev/urandom \
        --disable-static \
        --enable-posix-shm \
        --with-sendfile \
        --with-pic
make %{?_smp_mflags} CFLAGS="%{optflags} -DREADDIR_IS_THREAD_SAFE 
-fvisibility=hidden -fPIC"
make dox %{?_smp_mflags}

%install
%make_install
# Move docs to more convenient location
mv docs/dox/html html
# Unpackaged files:
rm -f %{buildroot}/%{_libdir}/apr.exp
rm -f %{buildroot}%{_libdir}/libapr-%{aprver}.la

# Trim exported dependecies
sed -ri '/^LIBS=/{s,-l(uuid|crypt) ,,g;s/  */ /g}' \
      %{buildroot}%{_bindir}/apr-%{aprver}-config
sed -ri '/^Libs/{s,-l(uuid|crypt) ,,g}' \
      %{buildroot}%{_libdir}/pkgconfig/apr-%{aprver}.pc

%fdupes %{buildroot}

%check
%if ! 0%{?qemu_user_space_build}
make check -j1
%endif

%post -n %{libname} -p /sbin/ldconfig
%postun -n %{libname} -p /sbin/ldconfig

%files -n %{libname}
%defattr(-,root,root)
%doc CHANGES
%doc LICENSE
%doc NOTICE
%{_libdir}/libapr-%{aprver}.so.*
# Do NOT move to devel as this is utilized by Tomcat
%{_libdir}/libapr-%{aprver}.so

%files devel
%defattr(-,root,root)
%doc docs/APRDesign.html
%doc docs/canonical_filenames.html
%doc docs/incomplete_types
%doc docs/non_apr_programs
%doc html
%doc emacs-mode
%{includedir}
%{_bindir}/apr-%{aprver}-config
%{_libdir}/pkgconfig/apr-%{aprver}.pc
%{_libdir}/apr-%{aprver}

%changelog
++++++ apr-1.4.5-linux3.patch ++++++
--- configure.in.orig
+++ configure.in
@@ -181,7 +181,7 @@ dnl Do the various CC checks *before* pr
 dnl may need to use compiler characteristics to make decisions. This macro
 dnl can only be used once within a configure script, so this prevents a
 dnl preload section from invoking the macro to get compiler info.
-AC_PROG_CC
+AC_PROG_CC_STDC
 
 dnl AC_PROG_SED is only avaliable in recent autoconf versions.
 dnl Use AC_CHECK_PROG instead if AC_PROG_SED is not present.
@@ -211,14 +211,7 @@ AC_CHECK_PROG(ASCPP, cpp, cpp)
 AC_CHECK_TOOL(AR, ar, ar)
 
 dnl Various OS checks that apparently set required flags
-ifdef([AC_USE_SYSTEM_EXTENSIONS], [
 AC_USE_SYSTEM_EXTENSIONS
-], [
-AC_AIX
-AC_MINIX
-])
-
-AC_ISC_POSIX
 APR_EBCDIC
 
 dnl this is our library name
@@ -664,15 +657,7 @@ case $host in
         fi
         ;;
     *linux*)
-        os_major=[`uname -r | sed -e 's/\([1-9][0-9]*\)\..*/\1/'`]
-        os_minor=[`uname -r | sed -e 's/[1-9][0-9]*\.\([0-9]\+\)\..*/\1/'`]
-        if test $os_major -lt 2 -o \( $os_major -eq 2 -a $os_minor -lt 4 \); 
then
-            AC_MSG_WARN([Configured for pre-2.4 Linux $os_major.$os_minor])
-            os_pre24linux=1
-        else
             os_pre24linux=0
-            AC_MSG_NOTICE([Configured for Linux $os_major.$os_minor])
-        fi
         ;;
     *os390)
         os_version=`uname -r | sed -e 's/\.//g'`
@@ -2060,6 +2045,8 @@ fi
 
 AC_SUBST(have_proc_invoked)
 
+AC_C_VARARRAYS
+
 AC_MSG_CHECKING(for Variable Length Arrays)
 APR_TRY_COMPILE_NO_WARNING([],
 [
@@ -2226,6 +2213,9 @@ APR_IFALLYES(header:OS.h func:create_sem
 if test "x$apr_lock_method" != "x"; then
     APR_DECISION_FORCE($apr_lock_method)
 fi
+
+APR_DECIDE(USE_PROC_PTHREAD_SERIALIZE, [cross-process pthread mutexes])
+
 APR_END_DECISION
 AC_DEFINE_UNQUOTED($ac_decision)
 
--- poll/unix/poll.c.orig
+++ poll/unix/poll.c
@@ -73,7 +73,7 @@ APR_DECLARE(apr_status_t) apr_poll(apr_p
                                    apr_interval_time_t timeout)
 {
     int i, num_to_poll;
-#ifdef HAVE_VLA
+#ifdef HAVE_C_VARARRAYS
     /* XXX: I trust that this is a segv when insufficient stack exists? */
     struct pollfd pollset[num];
 #elif defined(HAVE_ALLOCA)
@@ -129,7 +129,7 @@ APR_DECLARE(apr_status_t) apr_poll(apr_p
         }
     }
     
-#if !defined(HAVE_VLA) && !defined(HAVE_ALLOCA)
+#if !defined(HAVE_C_VARARRAYS) && !defined(HAVE_ALLOCA)
     if (num > SMALL_POLLSET_LIMIT) {
         free(pollset);
     }
++++++ apr-proc-mutex-map-anon.patch ++++++
Index: apr-1.6.2/locks/unix/proc_mutex.c
===================================================================
--- apr-1.6.2.orig/locks/unix/proc_mutex.c
+++ apr-1.6.2/locks/unix/proc_mutex.c
@@ -435,24 +435,16 @@ static apr_status_t proc_mutex_pthread_c
                                               const char *fname)
 {
     apr_status_t rv;
-    int fd;
     pthread_mutexattr_t mattr;
 
-    fd = open("/dev/zero", O_RDWR);
-    if (fd < 0) {
-        return errno;
-    }
-
     new_mutex->os.pthread_interproc = mmap(NULL, sizeof(proc_pthread_mutex_t),
-                                           PROT_READ | PROT_WRITE, MAP_SHARED,
-                                           fd, 0); 
+                                           PROT_READ | PROT_WRITE, MAP_SHARED 
| MAP_ANONYMOUS,
+                                           -1, 0); 
     if (new_mutex->os.pthread_interproc == MAP_FAILED) {
         new_mutex->os.pthread_interproc = NULL;
         rv = errno;
-        close(fd);
         return rv;
     }
-    close(fd);
 
     new_mutex->pthread_refcounting = 1;
     new_mutex->curr_locked = -1; /* until the mutex has been created */
++++++ apr-use-getrandom.patch ++++++
--- apr-1.5.1.orig/misc/unix/rand.c
+++ apr-1.5.1/misc/unix/rand.c
@@ -43,6 +43,9 @@
 #include <sys/uuid.h>
 #endif
 
+#include <sys/syscall.h>
+#include <linux/random.h>
+
 #ifndef SHUT_RDWR
 #define SHUT_RDWR 2
 #endif
@@ -89,6 +92,12 @@ APR_DECLARE(apr_status_t) apr_generate_r
 {
 #ifdef DEV_RANDOM
 
+#ifdef SYS_getrandom
+    int r = TEMP_FAILURE_RETRY(syscall(SYS_getrandom, buf, length, 
GRND_NONBLOCK));
+    if(r != -1 && r == length)
+        return APR_SUCCESS;
+    /* If this fails for whatever reason..fallback to the old ways.. */
+#endif
     int fd = -1;
 
     /* On BSD/OS 4.1, /dev/random gives out 8 bytes at a time, then
++++++ apr-visibility.patch ++++++
--- apr-1.5.0.orig/include/apr.h.in
+++ apr-1.5.0/include/apr.h.in
@@ -476,7 +476,7 @@ typedef  apr_uint32_t            apr_uin
  * headers, without defining APR_DECLARE_STATIC, will prepare the code to be
  * linked to the dynamic library.
  */
-#define APR_DECLARE(type)            type 
+#define APR_DECLARE(type)            __attribute__ ((visibility ("default"))) 
type 
 
 /**
  * The public APR functions using variable arguments are declared with 
@@ -489,7 +489,7 @@ typedef  apr_uint32_t            apr_uin
  *
  * </PRE>
  */
-#define APR_DECLARE_NONSTD(type)     type
+#define APR_DECLARE_NONSTD(type)      __attribute__ ((visibility ("default"))) 
type
 
 /**
  * The public APR variables are declared with AP_MODULE_DECLARE_DATA.
@@ -505,7 +505,7 @@ typedef  apr_uint32_t            apr_uin
  *
  * </PRE>
  */
-#define APR_DECLARE_DATA
+#define APR_DECLARE_DATA  __attribute__ ((visibility ("default")))
 
 #elif defined(APR_DECLARE_STATIC)
 #define APR_DECLARE(type)            type __stdcall
--- apr-1.5.0.orig/include/apr_support.h
+++ apr-1.5.0/include/apr_support.h
@@ -45,7 +45,7 @@ extern "C" {
  *        otherwise wait for data to be able to be written. 
  * @return APR_TIMEUP if we run out of time.
  */
-apr_status_t apr_wait_for_io_or_timeout(apr_file_t *f, apr_socket_t *s,
+APR_DECLARE(apr_status_t) apr_wait_for_io_or_timeout(apr_file_t *f, 
apr_socket_t *s,
                                         int for_read);
 
 /** @} */
++++++ apr.keyring ++++++
++++ 42924 lines (skipped)


Reply via email to