mirror of
https://gitlab.freedesktop.org/cairo/cairo.git
synced 2026-01-02 21:40:15 +01:00
Generate build/Makefile.win32.features
This commit is contained in:
parent
fd5cef50a7
commit
ebb5eb57b7
6 changed files with 67 additions and 26 deletions
10
Makefile.am
10
Makefile.am
|
|
@ -1,5 +1,14 @@
|
|||
include $(top_srcdir)/build/Makefile.am.common
|
||||
|
||||
EXTRA_DIST += \
|
||||
Makefile.win32 \
|
||||
build/Makefile.win32.common \
|
||||
build/Makefile.win32.features \
|
||||
$(NULL)
|
||||
MAINTAINERCLEANFILES += \
|
||||
$(srcdir)/build/Makefile.win32.features \
|
||||
$(NULL)
|
||||
|
||||
ACLOCAL_AMFLAGS = -I build
|
||||
|
||||
DIST_SUBDIRS = src doc util boilerplate test perf
|
||||
|
|
@ -33,7 +42,6 @@ EXTRA_DIST += \
|
|||
COPYING-MPL-1.1 \
|
||||
HACKING \
|
||||
INSTALL \
|
||||
Makefile.win32 \
|
||||
NEWS \
|
||||
PORTING_GUIDE \
|
||||
README \
|
||||
|
|
|
|||
|
|
@ -3,6 +3,9 @@
|
|||
include $(top_srcdir)/build/Makefile.am.common
|
||||
include $(srcdir)/Makefile.am.features
|
||||
|
||||
EXTRA_DIST += Makefile.win32 Makefile.win32.features
|
||||
MAINTAINERCLEANFILES += $(srcdir)/Makefile.win32.features
|
||||
|
||||
AM_CPPFLAGS = \
|
||||
-I$(srcdir) \
|
||||
-I$(top_builddir)/src \
|
||||
|
|
@ -10,10 +13,6 @@ AM_CPPFLAGS = \
|
|||
$(CAIRO_CFLAGS) \
|
||||
$(NULL)
|
||||
|
||||
EXTRA_DIST += Makefile.win32
|
||||
EXTRA_DIST += Makefile.win32.config
|
||||
MAINTAINERCLEANFILES += $(srcdir)/Makefile.win32.config
|
||||
|
||||
EXTRA_LTLIBRARIES += libcairoboilerplate.la
|
||||
|
||||
libcairoboilerplate_la_SOURCES = \
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
include $(top_srcdir)/build/Makefile.win32.features
|
||||
|
||||
CC := cl
|
||||
LINK := link
|
||||
|
|
@ -8,8 +9,9 @@ else
|
|||
OPT := -O2
|
||||
endif
|
||||
|
||||
PIXMAN_CFLAGS := -I../../pixman/pixman
|
||||
PIXMAN_LIBS := ../../pixman/pixman/$(CFG)/pixman-1.lib
|
||||
PIXMAN_DIR = $(top_srcdir)/../pixman
|
||||
PIXMAN_CFLAGS := -I$(PIXMAN_DIR)/pixman
|
||||
PIXMAN_LIBS := $(PIXMAN_DIR)/pixman/$(CFG)/pixman-1.lib
|
||||
|
||||
EXE_LDFLAGS = libpng.lib zlib.lib gdi32.lib msimg32.lib user32.lib
|
||||
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@ m4_define([cr_feature_tag],
|
|||
|
||||
dnl ===========================================================================
|
||||
dnl
|
||||
dnl CAIRO_INIT_MAKEFILES()
|
||||
dnl CAIRO_INIT_MAKEFILES([AUX-DIR])
|
||||
dnl
|
||||
dnl Sets up automake and win32 conditionals for all features
|
||||
dnl
|
||||
|
|
@ -34,8 +34,8 @@ AC_DEFUN([CAIRO_INIT_MAKEFILES],
|
|||
AM_CONDITIONAL(cr_feature_tag, [test "x$use_]cr_feature[" = xyes])dnl
|
||||
])dnl
|
||||
|
||||
dnl An empty line per feature for readability
|
||||
CAIRO_MAKEFILE_ACCUMULATE_FEATURE(*,*,*,*,[])dnl
|
||||
CAIRO_CONFIG_MAKEFILE_PRIVATE_WIN32([_],[$1],[],[[# Generated by configure. Modify to customize.]])dnl
|
||||
CAIRO_MAKEFILE_ACCUMULATE_FEATURE([_],*,!always,*,[cr_feature_tag=m4_if(cr_feature_default,[yes],1,[m4_bmatch(cr_feature,[win32],1,0)])])dnl
|
||||
])dnl
|
||||
|
||||
dnl ===========================================================================
|
||||
|
|
@ -43,34 +43,38 @@ dnl ===========================================================================
|
|||
m4_define([_CAIRO_MAKEFILES])dnl
|
||||
|
||||
dnl
|
||||
dnl CAIRO_CONFIG_MAKEFILE(TAG, DIR)
|
||||
dnl CAIRO_CONFIG_MAKEFILE(TAG, DIR, [SUFFIX], [HEADER])
|
||||
dnl
|
||||
dnl Create DIR/Makefile.*.features files
|
||||
dnl Create DIR/Makefile.{am,win32}.SUFFIX files
|
||||
dnl TAG is a TAG used by other CAIRO_MAKEFILE_* macros to append to these
|
||||
dnl Makefile's.
|
||||
dnl
|
||||
dnl HEADER is appended at the top of the Makefile's. If HEADER is not
|
||||
dnl set, the generic "Generated by configure. Do not edit." comment
|
||||
dnl is added.
|
||||
dnl
|
||||
AC_DEFUN([CAIRO_CONFIG_MAKEFILE],
|
||||
[dnl
|
||||
m4_append_uniq([_CAIRO_MAKEFILES], [$1], [ ])dnl
|
||||
CAIRO_CONFIG_MAKEFILE_PRIVATE([$1], [$2])dnl
|
||||
CAIRO_CONFIG_MAKEFILE_PRIVATE([$1], [$2], [$3], [$4])dnl
|
||||
])dnl
|
||||
|
||||
dnl Like CAIRO_CONFIG_MAKEFILE but only generate win32 makefile
|
||||
AC_DEFUN([CAIRO_CONFIG_MAKEFILE_WIN32],
|
||||
[dnl
|
||||
m4_append_uniq([_CAIRO_MAKEFILES], [$1], [ ])dnl
|
||||
CAIRO_CONFIG_MAKEFILE_PRIVATE_WIN32([$1], [$2])dnl
|
||||
CAIRO_CONFIG_MAKEFILE_PRIVATE_WIN32([$1], [$2], [$3], [$4])dnl
|
||||
])dnl
|
||||
|
||||
dnl Like CAIRO_CONFIG_MAKEFILE but only generate automake makefile
|
||||
AC_DEFUN([CAIRO_CONFIG_MAKEFILE_AMAKE],
|
||||
[dnl
|
||||
m4_append_uniq([_CAIRO_MAKEFILES], [$1], [ ])dnl
|
||||
CAIRO_CONFIG_MAKEFILE_PRIVATE_AMAKE([$1], [$2])dnl
|
||||
CAIRO_CONFIG_MAKEFILE_PRIVATE_AMAKE([$1], [$2], [$3], [$4])dnl
|
||||
])dnl
|
||||
|
||||
dnl
|
||||
dnl CAIRO_CONFIG_MAKEFILE_PRIVATE(TAG, DIR)
|
||||
dnl CAIRO_CONFIG_MAKEFILE_PRIVATE(TAG, DIR, [SUFFIX], [HEADER])
|
||||
dnl
|
||||
dnl Like CAIRO_CONFIG_MAKEFILE but this makefile tag won't match
|
||||
dnl against '*' in makefile accumulators.
|
||||
|
|
@ -81,8 +85,8 @@ AC_DEFUN([CAIRO_CONFIG_MAKEFILE_PRIVATE],
|
|||
[m4_fatal([Makefile `$1' already registered])])dnl
|
||||
m4_define([cr_make_$1_dir],[$2])dnl
|
||||
|
||||
CAIRO_CONFIG_MAKEFILE_PRIVATE_AMAKE([$1],[$2])dnl
|
||||
CAIRO_CONFIG_MAKEFILE_PRIVATE_WIN32([$1],[$2])dnl
|
||||
CAIRO_CONFIG_MAKEFILE_PRIVATE_AMAKE([$1], [$2], [$3], [$4])dnl
|
||||
CAIRO_CONFIG_MAKEFILE_PRIVATE_WIN32([$1], [$2], [$3], [$4])dnl
|
||||
])dnl
|
||||
|
||||
dnl Like CAIRO_CONFIG_MAKEFILE_PRIVATE but only generate automake makefile
|
||||
|
|
@ -94,10 +98,10 @@ AC_DEFUN([CAIRO_CONFIG_MAKEFILE_PRIVATE_AMAKE],
|
|||
m4_define([cr_make_$1_dir_any],[$2])dnl
|
||||
|
||||
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(MAKEFILE_$1_AMAKE, m4_newline, m4_default([$4],[[# Generated by configure. Do not edit.]])m4_newline)dnl
|
||||
|
||||
dnl Generate
|
||||
CAIRO_CONFIG_COMMANDS([$srcdir/$2/Makefile.am.features],
|
||||
CAIRO_CONFIG_COMMANDS([$srcdir/]m4_if([$2],[.],,[$2/])[Makefile.am.]m4_default([$3],[features]),
|
||||
[echo "$CAIRO_MAKEFILE_$1_AMAKE"],
|
||||
[CAIRO_MAKEFILE_$1_AMAKE='$CAIRO_MAKEFILE_$1_AMAKE'])dnl
|
||||
])dnl
|
||||
|
|
@ -111,10 +115,10 @@ AC_DEFUN([CAIRO_CONFIG_MAKEFILE_PRIVATE_WIN32],
|
|||
m4_define([cr_make_$1_dir_any],[$2])dnl
|
||||
|
||||
dnl Accumulators
|
||||
CAIRO_ACCUMULATORS_REGISTER(MAKEFILE_$1_WIN32, m4_newline, [# Generated by configure. Do not edit.]m4_newline[ifeq ($(top_srcdir),)]m4_newline[include Makefile.sources]m4_newline[else]m4_newline[include $(top_srcdir)/$2/Makefile.sources]m4_newline[endif]m4_newline)dnl
|
||||
CAIRO_ACCUMULATORS_REGISTER(MAKEFILE_$1_WIN32, m4_newline, m4_default([$4],[[# Generated by configure. Do not edit.]])m4_newline)dnl
|
||||
|
||||
dnl Generate
|
||||
CAIRO_CONFIG_COMMANDS([$srcdir/$2/Makefile.win32.features],
|
||||
CAIRO_CONFIG_COMMANDS([$srcdir/]m4_if([$2],[.],,[$2/])[Makefile.win32.]m4_default([$3],[features]),
|
||||
[echo "$CAIRO_MAKEFILE_$1_WIN32"],
|
||||
[CAIRO_MAKEFILE_$1_WIN32='$CAIRO_MAKEFILE_$1_WIN32'])dnl
|
||||
])dnl
|
||||
|
|
@ -125,6 +129,29 @@ m4_define([_CAIRO_MAKEFILE_CHECK],
|
|||
m4_ifdef([cr_make_$1_dir_any],,[m4_fatal([Makefile `]$1[' not defined.])])dnl
|
||||
])dnl
|
||||
|
||||
|
||||
dnl
|
||||
dnl CAIRO_MAKEFILE_INCLUDE(TAG, FILE)
|
||||
dnl
|
||||
dnl Include FILE from Makefile's for TAG. FILE should be placed
|
||||
dnl relative to directory for TAG. If TAG is *, FILE is included from
|
||||
dnl all Makefile's.
|
||||
dnl
|
||||
AC_DEFUN([CAIRO_MAKEFILE_INCLUDE],
|
||||
[dnl
|
||||
m4_if([$1],[*],,[_CAIRO_MAKEFILE_CHECK([$1])])dnl
|
||||
m4_foreach_w([cr_makefile], m4_if([$1],[*],_CAIRO_MAKEFILES,[$1]),
|
||||
[dnl
|
||||
m4_ifdef([cr_make_]cr_makefile[_dir_amake],dnl
|
||||
[CAIRO_ACCUMULATE([MAKEFILE_]cr_makefile[_AMAKE],[include $(top_srcdir)/cr_make_]cr_makefile[_dir_amake/$2]m4_newline)]
|
||||
)dnl
|
||||
m4_ifdef([cr_make_]cr_makefile[_dir_win32],dnl
|
||||
[CAIRO_ACCUMULATE([MAKEFILE_]cr_makefile[_WIN32],[ifeq ($(top_srcdir),)]m4_newline[include $2]m4_newline[else]m4_newline[include $(top_srcdir)/cr_make_]cr_makefile[_dir_win32/$2]m4_newline[endif]m4_newline)]
|
||||
)dnl
|
||||
])dnl
|
||||
])dnl
|
||||
|
||||
|
||||
m4_pattern_allow([cr_make_tmp])
|
||||
|
||||
dnl
|
||||
|
|
|
|||
|
|
@ -56,9 +56,12 @@ dnl
|
|||
dnl Generate {src,boilerplate}/Makefile.{am,win32}.config
|
||||
dnl
|
||||
|
||||
CAIRO_INIT_MAKEFILES()
|
||||
CAIRO_INIT_MAKEFILES([build])
|
||||
CAIRO_CONFIG_MAKEFILE([cairo], [src])dnl
|
||||
CAIRO_CONFIG_MAKEFILE([cairo_boilerplate], [boilerplate])dnl
|
||||
CAIRO_MAKEFILE_INCLUDE(*,[Makefile.sources])dnl
|
||||
dnl An empty line per feature for readability
|
||||
CAIRO_MAKEFILE_ACCUMULATE_FEATURE(*,*,*,*,[])dnl
|
||||
|
||||
|
||||
dnl Collect list of all supported public headers
|
||||
|
|
|
|||
|
|
@ -3,6 +3,9 @@
|
|||
include $(top_srcdir)/build/Makefile.am.common
|
||||
include $(srcdir)/Makefile.am.features
|
||||
|
||||
EXTRA_DIST += Makefile.win32 Makefile.win32.features
|
||||
MAINTAINERCLEANFILES += $(srcdir)/Makefile.win32.features
|
||||
|
||||
AM_CPPFLAGS = -I$(srcdir) $(CAIRO_CFLAGS)
|
||||
|
||||
if OS_WIN32
|
||||
|
|
@ -10,9 +13,8 @@ export_symbols = -export-symbols cairo.def
|
|||
cairo_def_dependency = cairo.def
|
||||
endif
|
||||
|
||||
EXTRA_DIST += Makefile.win32
|
||||
EXTRA_DIST += cairo-supported-features.h cairo-features-win32.h Makefile.win32.config
|
||||
MAINTAINERCLEANFILES += cairo-supported-features.h $(srcdir)/cairo-features-win32.h $(srcdir)/Makefile.win32.config
|
||||
EXTRA_DIST += cairo-supported-features.h cairo-features-win32.h
|
||||
MAINTAINERCLEANFILES += cairo-supported-features.h $(srcdir)/cairo-features-win32.h
|
||||
|
||||
$(top_builddir)/config.h: $(top_srcdir)/config.h.in
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) config.h
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue