/mandos/trunk

To get this branch, use:
bzr branch http://bzr.recompile.se/loggerhead/mandos/trunk

« back to all changes in this revision

Viewing changes to debian/rules

  • Committer: Teddy Hogeborn
  • Date: 2016-03-17 20:40:55 UTC
  • Revision ID: teddy@recompile.se-20160317204055-bhsh5xsidq7w5cxu
Client: Fix plymouth agent; broken since 1.7.2.

Fix an very old memory bug in the plymouth agent (which has been
present since its apperance in version 1.2), but which was only
recently detected at run time due to the new -fsanitize=address
compile- time flag, which has been used since version 1.7.2.  This
detection of a memory access violation causes the program to abort,
making the Plymouth graphical boot system unable to accept interactive
input of passwords when using the Mandos client.

* plugins.d/plymouth.c (exec_and_wait): Fix memory allocation bug when
  allocating new_argv.  Also tolerate a zero-length argv.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
#!/usr/bin/make -f
2
 
 
3
 
ifeq (,$(filter noopt,$(DEB_BUILD_OPTIONS)))
4
 
    MAKEFLAGS += OPTIMIZE=-O0
5
 
endif
6
 
 
7
 
ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
8
 
    NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
9
 
    MAKEFLAGS += -j$(NUMJOBS)
10
 
endif
11
 
 
12
 
PKG_CONFIG?=pkg-config
13
 
 
14
2
%:
15
3
        dh $@
16
4
 
17
 
override_dh_installdirs-indep:
18
 
        dh_installdirs
19
 
        dh_installdirs $(patsubst /%,%,$(shell $(PKG_CONFIG) \
20
 
                systemd --variable=systemdsystemunitdir)) \
21
 
                $(patsubst /%,%,$(shell $(PKG_CONFIG) \
22
 
                systemd --variable=tmpfilesdir)) \
23
 
                $(patsubst /%,%,$(shell $(PKG_CONFIG) \
24
 
                systemd --variable=sysusersdir))
25
 
 
26
 
override_dh_installdirs-arch:
27
 
        dh_installdirs
28
 
        dh_installdirs $(patsubst /%,%,$(shell $(PKG_CONFIG) \
29
 
                systemd --variable=sysusersdir))
30
 
 
31
5
override_dh_auto_build-arch:
32
6
        LC_ALL=en_US.utf8 dh_auto_build -- all doc
33
7
 
48
22
override_dh_fixperms-arch:
49
23
        dh_fixperms --exclude etc/keys/mandos \
50
24
                --exclude etc/mandos/plugins.d \
51
 
                --exclude etc/mandos/plugin-helpers \
52
 
                --exclude usr/lib/$(DEB_HOST_MULTIARCH)/mandos/plugins.d \
53
 
                --exclude usr/lib/$(DEB_HOST_MULTIARCH)/mandos/plugin-helpers \
54
 
                --exclude usr/share/doc/mandos-client/examples/network-hooks.d/
 
25
                --exclude usr/lib/$(shell dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null)/mandos/plugins.d \
 
26
                --exclude usr/share/doc/mandos-client/examples/network-hooks.d
55
27
        chmod --recursive g-w -- \
56
28
        "$(CURDIR)/debian/mandos-client/usr/share/doc/mandos-client/examples/network-hooks.d"
57
29
 
59
31
        dh_fixperms --exclude etc/mandos/clients.conf
60
32
 
61
33
override_dh_auto_test-arch: ;
62
 
 
63
 
#bpo## dpkg-shlibdeps sees the "libgnutls28-dev (>= 3.6.6) |
64
 
#bpo## libgnutls28-dev (<< 3.6.0)," in the build-dependencies not as two
65
 
#bpo## alternatives, but as an absolute dependency on libgnutls30 >= 3.6.6.
66
 
#bpo## So we have to do this ugly hack to hide this build dependency if we
67
 
#bpo## compiled with libgnutls30 << 3.6.0.
68
 
#bpo#override_dh_shlibdeps-arch:
69
 
#bpo#   -gnutls_version=$$(dpkg-query --showformat='$${Version}' \
70
 
#bpo#           --show libgnutls30); \
71
 
#bpo#   dpkg --compare-versions $$gnutls_version lt 3.6.0 \
72
 
#bpo#           && { cp --archive debian/control debian/control.orig; sed --in-place --expression='s/libgnutls28-dev (>= 3\.6\.6) |//' debian/control; }
73
 
#bpo#   dh_shlibdeps
74
 
#bpo#   -gnutls_version=$$(dpkg-query --showformat='$${Version}' \
75
 
#bpo#           --show libgnutls30); \
76
 
#bpo#   dpkg --compare-versions $$gnutls_version lt 3.6.0 \
77
 
#bpo#           && mv debian/control.orig debian/control