/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: 2024-09-09 04:24:39 UTC
  • Revision ID: teddy@recompile.se-20240909042439-j85mr20uli2hnyis
Eliminate compiler warnings

Many programs use nested functions, which now result in a linker
warning about executable stack.  Hide this warning.  Also, rewrite a
loop in the plymouth plugin to avoid warning about signed overflow.
This change also makes the plugin pick the alphabetically first
process entry instead of the last, in case many plymouth processes are
found (which should be unlikely).

* Makefile (plugin-runner, dracut-module/password-agent,
  plugins.d/password-prompt, plugins.d/mandos-client,
  plugins.d/plymouth): New target; set LDFLAGS to add "-Xlinker
  --no-warn-execstack".
* plugins.d/plymouth.c (get_pid): When no pid files are found, and we
  are looking through the process list, go though it from the start
  instead of from the end, i.e. in normal alphabetical order and not
  in reverse order.

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
 
2
14
%:
3
15
        dh $@
4
16
 
 
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
 
5
31
override_dh_auto_build-arch:
6
32
        LC_ALL=en_US.utf8 dh_auto_build -- all doc
7
33
 
19
45
        $(MAKE) DESTDIR=$(CURDIR)/debian/mandos-client \
20
46
                install-client-nokey
21
47
 
22
 
override_dh_fixperms:
 
48
override_dh_fixperms-arch:
23
49
        dh_fixperms --exclude etc/keys/mandos \
24
 
                --exclude etc/mandos/clients.conf \
25
50
                --exclude etc/mandos/plugins.d \
26
 
                --exclude usr/lib/$(shell dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null)/mandos/plugins.d \
27
 
                --exclude usr/share/doc/mandos-client/examples/network-hooks.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/
28
55
        chmod --recursive g-w -- \
29
56
        "$(CURDIR)/debian/mandos-client/usr/share/doc/mandos-client/examples/network-hooks.d"
30
57
 
 
58
override_dh_fixperms-indep:
 
59
        dh_fixperms --exclude etc/mandos/clients.conf
 
60
 
31
61
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