summaryrefslogtreecommitdiff
path: root/Makefile.win32
diff options
context:
space:
mode:
authorVladimir Vukicevic <vladimir@pobox.com>2007-08-27 15:29:24 -0700
committerVladimir Vukicevic <vladimir@pobox.com>2007-08-28 10:54:18 -0700
commit19fa097f515e72c195d10ddd64920ec71fa903ec (patch)
treefc9819dca2aaaa2a23702782b02c78717e9eda7b /Makefile.win32
parentf4a8633fce5262c09b323eef212fd6efe57d8f10 (diff)
[win32] Update win32 Makefiles
Happy building with msys, one location for CFLAGS/etc changes (toplevel), new pdiff makefile.
Diffstat (limited to 'Makefile.win32')
-rw-r--r--Makefile.win3245
1 files changed, 39 insertions, 6 deletions
diff --git a/Makefile.win32 b/Makefile.win32
index 25fee716..cdde7d28 100644
--- a/Makefile.win32
+++ b/Makefile.win32
@@ -2,12 +2,34 @@
# Win32 makefile
#
-CAIRO_VERSION = 1.2.5
+CC := cl
+LINK := link
+OPT := -O2
+
+PIXMAN_CFLAGS := -I../../pixman/pixman
+PIXMAN_LIBS := ../../pixman/pixman/pixman-1.lib
+
+EXE_LDFLAGS = libpng.lib zlib.lib gdi32.lib msimg32.lib user32.lib
+
+DEFAULT_CFLAGS = -MD -Zi -nologo $(OPT)
+DEFAULT_CFLAGS += -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE
+DEFAULT_CFLAGS += -DPACKAGE_VERSION="" -DPACKAGE_BUGREPORT="" -DCAIRO_BUILD
+DEFAULT_CFLAGS += -I.
+DEFAULT_CFLAGS += $(PIXMAN_CFLAGS)
+DEFAULT_CFLAGS += -DCAIRO_NO_MUTEX=1
+
+CFLAGS := $(DEFAULT_CFLAGS)
+
CAIRO_VERSION_MAJOR = 1
-CAIRO_VERSION_MINOR = 2
-CAIRO_VERSION_MICRO = 5
+CAIRO_VERSION_MINOR = 5
+CAIRO_VERSION_MICRO = 1
+
+CAIRO_VERSION = $(CAIRO_VERSION_MAJOR).$(CAIRO_VERSION_MINOR).$(CAIRO_VERSION_MICRO)
-SUBDIRS = pixman/src src
+# Only if this was called as the top-level makefile
+ifeq ($(SUBMAKEFILE),)
+
+SUBDIRS = src
TEST_SUBDIRS = boilerplate test
@@ -16,15 +38,26 @@ all: cairo
cairo: src/cairo-features.h
@list='$(SUBDIRS)'; for f in $$list ; do \
echo making all in $$f... ; \
- (cd $$f ; make -f Makefile.win32) || exit 1 ; \
+ (cd $$f ; $(MAKE) -f Makefile.win32 CC="$(CC)" LINK="$(LINK)" OPT="$(OPT)" CFLAGS="$(CFLAGS)" PIXMAN_LIBS="$(PIXMAN_LIBS)") || exit 1 ; \
done
test: cairo
@list='$(TEST_SUBDIRS)'; for f in $$list ; do \
echo making all in $$f... ; \
- (cd $$f ; make -f Makefile.win32) || exit 1 ; \
+ (cd $$f ; $(MAKE) -f Makefile.win32 CC="$(CC)" LINK="$(LINK)" OPT="$(OPT)" CFLAGS="$(CFLAGS)" PIXMAN_LIBS="$(PIXMAN_LIBS)") || exit 1 ; \
done
@(cd test ; make -f Makefile.win32 test)
html:
@(cd test ; make -f Makefile.win32 html)
+
+endif
+
+# Some generic rules
+
+%.obj: %.c
+ @$(CC) $(CFLAGS) -c -Fo"$@" $<
+
+%-static.obj: %.c
+ @$(CC) $(CFLAGS) -c -DCAIRO_WIN32_STATIC_BUILD=1 -Fo"$@" $<
+