# -*- Makefile -*-
#
# $Id$
#
# makefile to build the C++ Standard library examples
#
##############################################################################

include  ../makefile.in

EXMDIR  = $(TOPDIR)/examples
SRCDIRS = $(EXMDIR)/manual $(EXMDIR)/tutorial

# do not compile these sources...
OMIT_SRCS += rwstdmessages.cpp

# override setting from makefile.in (examples only)
CATFILE = rwstdmessages.cat

include ../makefile.common

INCLUDES += -I$(EXMDIR)/include

RUNFLAGS += -d $(EXMDIR) --ulimit=as:268435456
# No example should use more than 256MB of memory (Related to STDCXX-440).
# The magic number 268435456 is 256MB in bytes.

ifneq ($(RPATH),)
  LDFLAGS += $(RPATH)$(LIBDIR)
endif

##############################################################################
#  TARGETS
##############################################################################

.SUFFIXES:

all:  $(TARGET) $(CATFILE)

# dependency on main library
$(TARGET): $(LIBDIR)/$(LIBNAME)

$(LIBDIR)/$(LIBNAME):
	@$(MAKE) -C $(LIBDIR) 

$(BINDIR)/runutil:
	@$(MAKE) -C $(BINDIR) runutil

# do any directory specific cleanup using the realclean target
realclean: dependclean clean
	rm -f *.out

include ../makefile.rules
