[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#767466: unblock: sssd/1.11.7-2



Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: unblock

Please unblock package sssd

I've uploaded a new package yesterday, which reverts the daemon defaults
to what they were before 1.11.5-1. Upstream has fixed the bug that forced
the original change, especially for upstart.

The other changes are fixes to allow it to build against current automake
and samba. Git diff follows:

diff --git a/debian/changelog b/debian/changelog
index 6d91713..18d8788 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,14 @@
+sssd (1.11.7-2) unstable; urgency=medium
+
+  * default, upstart.in: Upstream ticket #2312 is fixed now, so drop the
+    workaround to run the daemon in the foreground. (Closes: #760353)
+  * fix-automake-compat.diff: Added an upstream commit to fix configure
+    with new automake.
+  * fix-catchchild.diff: Fix build failure with samba 4.1.13, bump
+    samba-dev build-dependency to match.
+
+ -- Timo Aaltonen <tjaalton@debian.org>  Thu, 30 Oct 2014 14:49:05 +0200
+
 sssd (1.11.7-1) unstable; urgency=medium
 
   * New upstream release.

diff --git a/debian/control b/debian/control
index 0bf1a14..75dd849 100644
--- a/debian/control
+++ b/debian/control
@@ -44,7 +44,7 @@ Build-Depends:
  lsb-release,
  python-dev (>= 2.6.6-3~),
  quilt,
- samba-dev,
+ samba-dev (>= 2:4.1.13),
  xml-core,
  xsltproc
 Standards-Version: 3.9.5
diff --git a/debian/patches/fix-automake-compat.diff b/debian/patches/fix-automake-compat.diff
new file mode 100644
index 0000000..605b0a3
--- /dev/null
+++ b/debian/patches/fix-automake-compat.diff
@@ -0,0 +1,65 @@
+commit 703dc1eb5b050b24235a6640f271d34ea008cf98
+Author: Jan Engelhardt <jengelh@inai.de>
+Date:   Sat Oct 11 12:36:07 2014 +0000
+
+    build: call AC_BUILD_AUX_DIR before anything else
+    
+    sssd's configure.ac (abridged) contains these lines:
+    
+       AC_INIT([sssd], ...)
+       m4_ifdef([AC_USE_SYSTEM_EXTENSIONS],
+               [AC_USE_SYSTEM_EXTENSIONS], [AC_GNU_SOURCE])
+       AC_CONFIG_AUX_DIR([build])
+    
+    When turned into configure, this will be emitted:
+    
+       ac_aux_dir=
+       for ac_dir in build "$srcdir"/build; do
+         if test -f "$ac_dir/install-sh"; then
+           ac_aux_dir=$ac_dir
+           ac_install_sh="$ac_aux_dir/install-sh -c"
+           break
+    
+    However, with automake commit v1.14.1-36-g7bc5927, this will be emitted
+    instead:
+    
+       ac_aux_dir=
+       for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do
+         if test -f "$ac_dir/install-sh"; then
+           ac_aux_dir=$ac_dir
+           ac_install_sh="$ac_aux_dir/install-sh -c"
+           break
+    
+    As configure no longer looks into build/ for install-sh, running
+    ./configure fails:
+    
+       configure: error: cannot find install-sh, install.sh,
+       or shtool in "." "./.." "./../.."
+    
+    I think the error is that someone placed AC_BUILD_AUX_DIR
+    too late. Move it upwards.
+    
+    Reviewed-by: Jakub Hrozek <jhrozek@redhat.com>
+
+diff --git a/configure.ac b/configure.ac
+index 660ea8d..e6745cb 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -4,6 +4,8 @@ m4_include([version.m4])
+ AC_INIT([sssd],
+         VERSION_NUMBER,
+         [sssd-devel@lists.fedorahosted.org])
++AC_CONFIG_SRCDIR([BUILD.txt])
++AC_CONFIG_AUX_DIR([build])
+ 
+ m4_ifdef([AC_USE_SYSTEM_EXTENSIONS],
+     [AC_USE_SYSTEM_EXTENSIONS],
+@@ -11,8 +13,6 @@ m4_ifdef([AC_USE_SYSTEM_EXTENSIONS],
+ 
+ CFLAGS="$CFLAGS -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE"
+ 
+-AC_CONFIG_SRCDIR([BUILD.txt])
+-AC_CONFIG_AUX_DIR([build])
+ 
+ AM_INIT_AUTOMAKE([-Wall foreign subdir-objects tar-pax])
+ AM_PROG_CC_C_O
diff --git a/debian/patches/fix-catchchild.diff b/debian/patches/fix-catchchild.diff
new file mode 100644
index 0000000..dd20c67
--- /dev/null
+++ b/debian/patches/fix-catchchild.diff
@@ -0,0 +1,33 @@
+--- a/src/util/signal.c
++++ b/src/util/signal.c
+@@ -131,7 +131,7 @@ void (*CatchSignal(int signum,void (*han
+  Ignore SIGCLD via whatever means is necessary for this OS.
+ **/
+ 
+-void CatchChild(void)
++void (*CatchChild(void))(int)
+ {
+       CatchSignal(SIGCLD, sig_cld);
+ }
+@@ -140,7 +140,7 @@ void CatchChild(void)
+  Catch SIGCLD but leave the child around so it's status can be reaped.
+ **/
+ 
+-void CatchChildLeaveStatus(void)
++void (*CatchChildLeaveStatus(void))(int)
+ {
+       CatchSignal(SIGCLD, sig_cld_leave_status);
+ }
+--- a/src/util/util.h
++++ b/src/util/util.h
+@@ -227,8 +227,8 @@ void sig_term(int sig);
+ #include <signal.h>
+ void BlockSignals(bool block, int signum);
+ void (*CatchSignal(int signum,void (*handler)(int )))(int);
+-void CatchChild(void);
+-void CatchChildLeaveStatus(void);
++void (*CatchChild(void))(int);
++void (*CatchChildLeaveStatus(void))(int);
+ 
+ /* from memory.c */
+ typedef int (void_destructor_fn_t)(void *);
diff --git a/debian/patches/series b/debian/patches/series
index 9e41f28..ba8daa7 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1 +1,3 @@
 fix-obsolete-target.diff
+fix-automake-compat.diff
+fix-catchchild.diff
diff --git a/debian/sssd-common.sssd.default b/debian/sssd-common.sssd.default
index 2de17c8..fed8a35 100644
--- a/debian/sssd-common.sssd.default
+++ b/debian/sssd-common.sssd.default
@@ -7,4 +7,4 @@
 #
 
 # Additional options that are passed to the Daemon.
-DAEMON_OPTS="-i -f"
+DAEMON_OPTS="-D -f"
diff --git a/debian/sssd-common.sssd.upstart.in b/debian/sssd-common.sssd.upstart.in
index 3c0180a..aae8470 100644
--- a/debian/sssd-common.sssd.upstart.in
+++ b/debian/sssd-common.sssd.upstart.in
@@ -10,6 +10,7 @@ description   "System Security Services Daemon"
 start on (filesystem and net-device-up)
 stop on runlevel [06]
 
+expect fork
 respawn
 
 env DEFAULTFILE=/etc/default/sssd
@@ -24,10 +25,5 @@ script
        . "$DEFAULTFILE"
        fi
 
-       # Use the same pts device for stdin as stdout, stderr.
-       # This is required because using /dev/null causes sssd to exit
-       # immediately and using /dev/zero makes it use 100% of CPU...
-       exec 0>&1
-
        exec sssd $DAEMON_OPTS
 end script



unblock sssd/1.11.7-2


Reply to: