summaryrefslogtreecommitdiff
path: root/build/aclocal.makefile.m4
diff options
context:
space:
mode:
authorBehdad Esfahbod <behdad@behdad.org>2008-09-16 01:29:47 -0400
committerBehdad Esfahbod <behdad@behdad.org>2008-09-16 03:58:20 -0400
commit6892daf77cd44dca988c7305d430659d08813beb (patch)
treeaeedae73faca31f8faa889ad50f11b50ecdfa72a /build/aclocal.makefile.m4
parent20daa425d8c46b6885653d2433f6027e4990d618 (diff)
Create cairo-features-win32.h
Diffstat (limited to 'build/aclocal.makefile.m4')
-rw-r--r--build/aclocal.makefile.m434
1 files changed, 30 insertions, 4 deletions
diff --git a/build/aclocal.makefile.m4 b/build/aclocal.makefile.m4
index e7a19c11e..88d679fbf 100644
--- a/build/aclocal.makefile.m4
+++ b/build/aclocal.makefile.m4
@@ -3,6 +3,22 @@ dnl These are the facilities for generating Makefile.am.config and
dnl Makefile.win32.config files.
dnl
+dnl
+dnl CAIRO_FEATURE_HOOK_REGISTER_WIN32(WHAT, COMMANDS)
+dnl
+dnl Like CAIRO_FEATURE_HOOK_REGISTER but only applies to features that
+dnl are by default enabled on win32 build system and match WHAT.
+dnl
+AC_DEFUN([CAIRO_FEATURE_HOOK_REGISTER_WIN32],
+[dnl
+ dnl builtin features
+ CAIRO_FEATURE_HOOK_REGISTER([*], always, [$1], [$2])dnl
+ dnl recommended features
+ CAIRO_FEATURE_HOOK_REGISTER([*], yes, [$1], [$2])dnl
+ dnl native win32 features
+ CAIRO_FEATURE_HOOK_REGISTER([*], auto, [$1], [m4_bmatch(cr_feature, [win32], [$2])])dnl
+])dnl
+
dnl ===========================================================================
dnl
@@ -21,7 +37,7 @@ dnl ===========================================================================
dnl
dnl CAIRO_INIT_MAKEFILES()
dnl
-dnl Sets up automake conditionals for all features
+dnl Sets up automake and win32 conditionals for all features
dnl
AC_DEFUN([CAIRO_INIT_MAKEFILES],
[dnl
@@ -31,7 +47,18 @@ AC_DEFUN([CAIRO_INIT_MAKEFILES],
dnl Automake conditionals for all features
CAIRO_FEATURE_HOOK_REGISTER(*,*,*,
[dnl
- AM_CONDITIONAL(cr_feature_tag, test "x$use_$1" = xyes)dnl
+ AM_CONDITIONAL(cr_feature_tag, [test "x$use_]cr_feature[" = xyes])dnl
+ ])dnl
+
+ dnl Turn win32 features on
+ CAIRO_FEATURE_HOOK_REGISTER_WIN32(*, [_CAIRO_MAKEFILES_WIN32_DEFINE_FEATURE])dnl
+])dnl
+
+m4_define([_CAIRO_MAKEFILES_WIN32_DEFINE_FEATURE],
+[
+ m4_foreach_w([cr_makefile], _CAIRO_MAKEFILES,
+ [dnl
+ CAIRO_ACCUMULATE_UNQUOTED_UNCHECKED([MAKEFILE_]cr_makefile[_WIN32], [cr_feature_tag = 1])dnl
])dnl
])dnl
@@ -56,7 +83,7 @@ AC_DEFUN([CAIRO_CONFIG_MAKEFILE],
dnl Accumulators
CAIRO_ACCUMULATORS_REGISTER(MAKEFILE_$1_AMAKE, m4_newline, [# Generated by configure. Do not edit.]m4_newline[include $(top_srcdir)/$2/Makefile.sources]m4_newline)dnl
- CAIRO_ACCUMULATORS_REGISTER_UNQUOTED(MAKEFILE_$1_WIN32, m4_newline, [$CAIRO_MAKEFILE_$1_AMAKE])dnl
+ CAIRO_ACCUMULATORS_REGISTER(MAKEFILE_$1_WIN32, m4_newline, [# Generated by configure. Do not edit.]m4_newline[include Makefile.sources]m4_newline)dnl
dnl Generate
CAIRO_CONFIG_COMMANDS([$srcdir/$2/Makefile.am.config],
@@ -124,7 +151,6 @@ AC_DEFUN([CAIRO_MAKEFILE_ACCUMULATE_FEATURE],
[dnl
m4_foreach_w([cr_makefile], m4_if([$1],[*],_CAIRO_MAKEFILES,[$1]),
[dnl
- m4_pushdef([cr_make_acc_contents],[$5])dnl
cr_make_tmp=_CAIRO_SH_ESCAPE(]]cr_make_acc_contents([[[[]]]]cr_makefile(),[$][1],[$][2],[$][3],[$][4])[[)
_CAIRO_MAKEFILE_ACCUMULATE_FEATURE(
[MAKEFILE_]cr_makefile[_AMAKE],