include $(MAKETOP)/usr/src/GNUtoolchain

SUBDIRS = cairo-1.12.14
CONFIGURE_SUBDIRS = $(patsubst %,configure-%,$(SUBDIRS))
INST_SUBDIRS = $(patsubst %,install-%,$(SUBDIRS))
CLEAN_SUBDIRS = $(patsubst %,clean-%,$(SUBDIRS))

ifeq (arm,$(GNUCC_ARCH))
SYSROOT="--sysroot=$(MAKETOP)"
CFLAGS="$(SYSROOT) -g -O2 $(GNUCC_ARCH_CFLAGS_EXTRA)"
CPPFLAGS=$(CFLAGS)
LDFLAGS="$(SYSROOT) -Wl,-rpath,/usr/pana/lib:/lib:/usr/lib:/usr/local/lib:/usr/pana/lib"
endif

all: $(SUBDIRS)

$(SUBDIRS): configure
	$(MAKE) -C $@ all

configure: $(CONFIGURE_SUBDIRS)

$(CONFIGURE_SUBDIRS):
	dir=`echo $@ |sed -e 's/configure-//'`;			\
	if test ! -f $$dir/Makefile; then			\
		touch-autotools.scm $${dir};			\
		(cd $${dir};					\
		 NOCONFIGURE=1 ./autogen.sh;			\
		 CFLAGS=$(CFLAGS) CPPFLAGS=$(CPPFLAGS) LDFLAGS=$(LDFLAGS)	\
		 ./configure --host=$(GNUCC_PREFIX)		\
		 --build=`./config.guess`			\
		 --prefix=$(CROSS_C_ROOT_PATH)/usr		\
		 --with-pic					\
		 --enable-ft					\
		 --enable-fc					\
		 --enable-ps					\
		 --enable-pdf					\
		 --enable-script				\
		 --enable-svg					\
		 --enable-tee					\
		 --disable-xlib					\
		 --disable-xcb					\
		 --disable-gtk-doc				\
		 --disable-static				\
		 ;						\
		 sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool; \
		 sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool; \
		)						\
	fi;

install: $(INST_SUBDIRS)

$(INST_SUBDIRS): configure
	dir=`echo $@ |sed -e 's/install-//'`;			\
	$(MAKE) -C $${dir} install
	$(RM) -f $(CROSS_C_ROOT_PATH)/usr/lib/libcairo-gobject.la
	$(RM) -f $(CROSS_C_ROOT_PATH)/usr/lib/cairo/libcairo-trace.la
	$(RM) -f $(CROSS_C_ROOT_PATH)/usr/lib/cairo/cairo-fdr.la
	$(RM) -f $(CROSS_C_ROOT_PATH)/usr/lib/cairo/cairo-sphinx.la
	$(RM) -f $(CROSS_C_ROOT_PATH)/usr/lib/libcairo-script-interpreter.la
	$(RM) -f $(CROSS_C_ROOT_PATH)/usr/lib/libcairo.la
	$(RM) -rf $(CROSS_C_ROOT_PATH)/usr/share/gtk-doc/html/cairo

clean: $(CLEAN_SUBDIRS)

$(CLEAN_SUBDIRS): configure
	dir=`echo $@ |sed -e 's/clean-//'`;			\
	$(MAKE) -C $${dir} clean;				\
	$(RM) -f $${dir}/Makefile


.PHONY:	all configure install clean $(SUBDIRS) $(CONFIGURE_SUBDIRS) $(INST_SUBDIRS) $(CLEAN_SUBDIRS)
