-dnl Copyright © 2014 Nick Bowler
+dnl Copyright © 2014, 2019 Nick Bowler
+dnl
+dnl Helper macros for implementing library tests.
dnl
dnl License WTFPL2: Do What The Fuck You Want To Public License, version 2.
dnl This is free software: you are free to do what the fuck you want to.
_dx_save_cflags=$CFLAGS
_dx_save_libs=$LIBS
m4_map_sep([_DX_LIB_TEST], [m4_newline], [$3])
+DX_VAR_NORMALIZE_SPACE([_DX_CVNAME([cflags])])
+DX_VAR_NORMALIZE_SPACE([_DX_CVNAME([libs])])
CFLAGS=$_dx_save_cflags
LIBS=$_dx_save_libs])dnl
-dnl Copyright © 2015, 2018 Nick Bowler
+dnl Copyright © 2015, 2018-2019 Nick Bowler
dnl
-dnl Assorted helper macros
+dnl Assorted utility macros.
dnl
dnl License WTFPL2: Do What The Fuck You Want To Public License, version 2.
dnl This is free software: you are free to do what the fuck you want to.
dnl DX_DO(arg, ...)
dnl Expand each argument in sequence, inserting newlines between them.
AC_DEFUN([DX_DO], [m4_do([$1], [m4_map_args([m4_newline], m4_shift($@))])])
+
+dnl DX_VAR_NORMALIZE_SPACE(varname)
+dnl Trim leading and trailing whitespace from a shell variable, and replace
+dnl consecutive sequences of internal whitespace with a single space.
+AC_DEFUN([DX_VAR_NORMALIZE_SPACE], [set -f; set x $$1; shift; $1=$[]* set +f])