chiark / gitweb /
dpkg (1.18.25) stretch; urgency=medium
[dpkg] / m4 / dpkg-progs.m4
1 # Copyright © 2005 Scott James Remnant <scott@netsplit.com>
2 # Copyright © 2007 Frank Lichtenheld <djpig@debian.org>
3 # Copyright © 2007, 2009, 2011 Guillem Jover <guillem@debian.org>
4
5 # DPKG_PROG_PERL
6 # --------------
7 # Locate perl interpreter in the path
8 AC_DEFUN([DPKG_PROG_PERL], [
9   AC_ARG_VAR([PERL], [Perl interpreter])dnl
10   m4_define([PERL_MIN_VERSION], [5.14.2])
11   AC_CACHE_CHECK([for perl >= PERL_MIN_VERSION], [ac_cv_path_PERL], [
12     AC_PATH_PROGS_FEATURE_CHECK([PERL], [perl], [
13       perlcheck=$(test -x $ac_path_PERL && \
14                   $ac_path_PERL -MConfig -Mversion -e \
15                   'my $r = qv("v$Config{version}") >= qv("PERL_MIN_VERSION");
16                    print "yes" if $r')
17       AS_IF([test "x$perlcheck" = "xyes"], [
18         ac_cv_path_PERL=$ac_path_PERL ac_path_PERL_found=:
19       ])
20     ], [
21       AC_MSG_ERROR([cannot find perl >= PERL_MIN_VERSION])
22     ])
23   ])
24   AC_SUBST([PERL], [$ac_cv_path_PERL])
25   AC_ARG_VAR([PERL_LIBDIR], [Perl library directory])dnl
26   # Let the user override the variable.
27   AS_IF([test -z "$PERL_LIBDIR"], [
28     PERL_LIBDIR=$($PERL -MConfig -e \
29                         'my $r = $Config{vendorlibexp};
30                          $r =~ s/$Config{vendorprefixexp}/\$(prefix)/;
31                          print $r')
32   ])
33 ])# DPKG_PROG_PERL
34
35 # DPKG_PROG_PO4A
36 # --------------
37 AC_DEFUN([DPKG_PROG_PO4A], [
38   AC_REQUIRE([AM_NLS])
39   AC_CHECK_PROGS([PO4A], [po4a])
40   AS_IF([test "$USE_NLS" = "yes" && test -n "$PO4A"], [
41     USE_PO4A=yes
42   ], [
43     USE_PO4A=no
44   ])
45   AC_SUBST([USE_PO4A])
46 ])# DPKG_PROG_PO4A
47
48 # DPKG_PROG_POD2MAN
49 # --------------
50 AC_DEFUN([DPKG_PROG_POD2MAN], [
51   AC_CHECK_PROGS([POD2MAN], [pod2man])
52   AM_CONDITIONAL([BUILD_POD_DOC], [test "x$POD2MAN" != "x"])
53 ])# DPKG_PROG_POD2MAN
54
55 # DPKG_DEB_PROG_TAR
56 # -----------------
57 # Specify GNU tar program name to use by dpkg-deb. On GNU systems this is
58 # usually simply tar, on BSD systems this is usually gnutar or gtar.
59 AC_DEFUN([DPKG_DEB_PROG_TAR], [
60   AC_ARG_VAR([TAR], [GNU tar program])
61   AC_CHECK_PROGS([TAR], [gnutar gtar tar], [tar])
62   AS_IF([! $TAR --version 2>/dev/null | grep -q '^tar (GNU tar)'], [
63     AC_MSG_ERROR([cannot find a GNU tar program])
64   ])
65   AC_DEFINE_UNQUOTED([TAR], ["$TAR"], [GNU tar program])
66 ])# DPKG_DEB_PROG_TAR
67
68 # DPKG_PROG_PATCH
69 # ---------------
70 # Specify GNU patch program name to use by dpkg-source. On GNU systems this
71 # is usually simply patch, on BSD systems this is usually gpatch.
72 # Even though most invocations would work with other patch implementations,
73 # currently only GNU patch is directory traversal resistant.
74 AC_DEFUN([DPKG_PROG_PATCH], [
75   AC_ARG_VAR([PATCH], [GNU patch program])
76   AC_CHECK_PROGS([PATCH], [gpatch patch], [patch])
77   AS_IF([! $PATCH --version 2>/dev/null | grep -q '^GNU patch'], [
78     AC_MSG_ERROR([cannot find a GNU patch program])
79   ])
80   AC_DEFINE_UNQUOTED([PATCH], ["$PATCH"], [GNU patch program])
81 ])# DPKG_PROG_PATCH