BOOST_1_33_1_DIR      = boost_1_33_1
BOOST_1_34_0_DIR      = boost_1_34_0

IOSTREAMS_1_33_1_DIR  = $(BOOST_1_33_1_DIR)/libs/iostreams/src
IOSTREAMS_1_34_0_DIR  = $(BOOST_1_34_0_DIR)/libs/iostreams/src

IOSTREAMS_SRCS_1_33_1 = $(IOSTREAMS_1_33_1_DIR)/bzip2.cpp           \
                        $(IOSTREAMS_1_33_1_DIR)/file_descriptor.cpp \
                        $(IOSTREAMS_1_33_1_DIR)/mapped_file.cpp     \
                        $(IOSTREAMS_1_33_1_DIR)/zlib.cpp

IOSTREAMS_SRCS_1_34_0 = $(IOSTREAMS_1_34_0_DIR)/bzip2.cpp           \
                        $(IOSTREAMS_1_34_0_DIR)/file_descriptor.cpp \
                        $(IOSTREAMS_1_34_0_DIR)/mapped_file.cpp     \
                        $(IOSTREAMS_1_34_0_DIR)/zlib.cpp

LIBS = -lbz2 -lz

all: test_zip_1_33_1 test_zip_1_34_0 test_bzip2_1_33_1 test_bzip2_1_34_0

test_zip_1_33_1: testIostreams.cpp $(IOSTREAMS_SRCS_1_33_1)
	g++ -o $@ $(CXXFLAGS) -DNUM_LOOPS=40000 -I$(BOOST_1_33_1_DIR) $^ $(LIBS)

test_zip_1_34_0: testIostreams.cpp $(IOSTREAMS_SRCS_1_34_0)
	g++ -o $@ $(CXXFLAGS) -DNUM_LOOPS=20000 -I$(BOOST_1_34_0_DIR) $^ $(LIBS)

test_bzip2_1_33_1: testIostreams.cpp $(IOSTREAMS_SRCS_1_33_1)
	g++ -o $@ $(CXXFLAGS) -DUSE_BZIP2 -DNUM_LOOPS=40000 -I$(BOOST_1_33_1_DIR) $^ $(LIBS)

test_bzip2_1_34_0: testIostreams.cpp $(IOSTREAMS_SRCS_1_34_0)
	g++ -o $@ $(CXXFLAGS) -DUSE_BZIP2 -DNUM_LOOPS=40000 -I$(BOOST_1_34_0_DIR) $^ $(LIBS)

clean:
	- @ rm -f test_zip_1_33_1 test_zip_1_34_0 test_bzip2_1_33_1 test_bzip2_1_34_0

