1# Copyright © 2010-2014 Guillem Jover <guillem@debian.org> 2 3# DPKG_BUILD_SHARED_LIBS() 4# ---------------------- 5AC_DEFUN([DPKG_BUILD_SHARED_LIBS], [ 6 m4_pattern_allow([DPKG_DEVEL_MODE]) 7 AS_IF([test "$enable_shared" = "yes" && test -z "$DPKG_DEVEL_MODE"], [ 8 AC_MSG_ERROR([building libdpkg as a shared library is not supported]) 9 ]) 10 AM_CONDITIONAL([BUILD_SHARED], [test "$enable_shared" = "yes"]) 11])# DPKG_BUILD_SHARED_LIBS 12 13# DPKG_BUILD_RELEASE_DATE() 14# ----------------------- 15AC_DEFUN([DPKG_BUILD_RELEASE_DATE], [ 16 AC_REQUIRE([DPKG_PROG_PERL]) 17 TIMESTAMP=$(PERL=$PERL $srcdir/run-script scripts/dpkg-parsechangelog.pl -l$srcdir/debian/changelog -STimestamp) 18 PACKAGE_RELEASE_DATE=$($PERL -MPOSIX -e "print POSIX::strftime('%Y-%m-%d', gmtime('$TIMESTAMP'));") 19 AC_SUBST([PACKAGE_RELEASE_DATE]) 20])# DPKG_BUILD_RELEASE_DATE 21 22# DPKG_BUILD_PROG(PROG) 23# --------------- 24# Allow disabling compilation and usage of specific programs. 25AC_DEFUN([DPKG_BUILD_PROG], [ 26 AC_MSG_CHECKING([whether to build $1]) 27 AC_ARG_ENABLE([$1], 28 [AS_HELP_STRING([--disable-$1], [do not build or use $1])], 29 [build_]AS_TR_SH([$1])[=$enable_]AS_TR_SH([$1]), 30 [build_]AS_TR_SH([$1])[=yes]) 31 AM_CONDITIONAL([BUILD_]AS_TR_CPP([$1]), 32 [test "x$build_]AS_TR_SH([$1])[" = "xyes"]) 33 AS_IF([test "x$build_]AS_TR_SH([$1])[" = "xyes"], [ 34 AC_DEFINE([BUILD_]AS_TR_CPP([$1]), [1], [Define to 1 if $1 is compiled.]) 35 ], [ 36 AC_DEFINE([BUILD_]AS_TR_CPP([$1]), [0]) 37 ]) 38 AC_MSG_RESULT([$build_]AS_TR_SH([$1])) 39])# DPKG_BUILD_PROG 40 41# DPKG_BUILD_DEVEL_DOCS() 42# --------------------- 43# Select what type of documentation to build. Either for development including 44# all symbol references, and extracting everything, or production documentation. 45AC_DEFUN([DPKG_BUILD_DEVEL_DOCS], [ 46 AC_ARG_ENABLE([devel-docs], 47 [AS_HELP_STRING([--disable-devel-docs], [build release docs])], 48 [build_devel_docs=$enable_devel_docs], 49 [build_devel_docs=yes] 50 ) 51 AS_IF([test "x$build_devel_docs" = "xyes"], [ 52 AC_SUBST([BUILD_DEVEL_DOCS], [YES]) 53 ], [ 54 AC_SUBST([BUILD_DEVEL_DOCS], [NO]) 55 ]) 56])# DPKG_BUILD_DOCS_MODE 57 58# DPKG_WITH_DIR(DIR, DEFAULT, DESCRIPTION) 59# ------------- 60# Allow specifying alternate directories. 61AC_DEFUN([DPKG_WITH_DIR], [ 62 $1="$2" 63 AC_ARG_WITH([$1], [AS_HELP_STRING([--with-$1=DIR], [$3])], [ 64 AS_CASE([$with_$1], 65 [""], [AC_MSG_ERROR([invalid $1 specified])], 66 [$1="$with_$1"]) 67 ]) 68 AC_SUBST([$1]) 69])# DPKG_WITH_DIR 70 71# DPKG_DEB_COMPRESSOR(COMP) 72# ------------------- 73# Change default «dpkg-deb --build» compressor. 74AC_DEFUN([DPKG_DEB_COMPRESSOR], [ 75 AC_ARG_WITH([dpkg-deb-compressor], 76 [AS_HELP_STRING([--with-dpkg-deb-compressor=COMP], 77 [change default dpkg-deb build compressor])], 78 [with_dpkg_deb_compressor=$withval], [with_dpkg_deb_compressor=$1]) 79 AS_CASE([$with_dpkg_deb_compressor], 80 [gzip|xz], [:], 81 [AC_MSG_ERROR([unsupported default compressor $with_dpkg_deb_compressor])]) 82 AC_DEFINE_UNQUOTED([DPKG_DEB_DEFAULT_COMPRESSOR], 83 [COMPRESSOR_TYPE_]AS_TR_CPP(${with_dpkg_deb_compressor}), 84 [default dpkg-deb build compressor]) 85]) # DPKG_DEB_COMPRESSOR 86 87# DPKG_DIST_IS_RELEASE() 88# -------------------- 89# Check whether we are preparing a distribution tarball for a release, and 90# set PACKAGE_DIST_IS_RELEASE accordingly. 91AC_DEFUN([DPKG_DIST_IS_RELEASE], [ 92 AS_IF([echo $PACKAGE_VERSION | grep -q -v '[-]'], [ 93 dpkg_dist_is_release=1 94 ], [ 95 dpkg_dist_is_release=0 96 ]) 97 AM_CONDITIONAL([PACKAGE_DIST_IS_RELEASE], 98 [test "$dpkg_dist_is_release" -eq 1]) 99 AC_SUBST([PACKAGE_DIST_IS_RELEASE], [$dpkg_dist_is_release]) 100])# DPKG_DIST_IS_RELEASE 101 102# DPKG_DIST_CHECK(COND, ERROR) 103# --------------- 104# Check if the condition is fulfilled when preparing a distribution tarball. 105AC_DEFUN([DPKG_DIST_CHECK], [ 106 AS_IF([test ! -f $srcdir/.dist-version && $1], [ 107 AC_MSG_ERROR([not building from distributed tarball, $2]) 108 ]) 109])# DPKG_DIST_CHECK 110