# vim:noexpandtab:softtabstop=2:tabstop=2:shiftwidth=2:nowrap
# 
# Copyright (c) 2015, iwrite authors
# All rights reserved.
# 
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
# 
# 1. Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
# 
# 2. Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in the
# documentation and/or other materials provided with the distribution.
# 
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
# HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
# TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

RANLIB=ranlib

includes = ${wildcard *.h}

CFLAGS=\
	-O3\
	-Wall\
	-pedantic\
	-ggdb

LIBDECNUMBER_OBJECTS=\
	decContext.o\
	decDouble.o\
	decimal128.o\
	decimal32.o\
	decimal64.o\
	decNumber.o\
	decPacked.o\
	decQuad.o\
	decSingle.o

.PHONY: all
all: libdecnumber.a example1 example2 example3 example4 example5 example6 example7 example8 

libdecnumber.a: ${LIBDECNUMBER_OBJECTS}
	${AR} rvc $@ $?
	${RANLIB} $@

example1: example1.o libdecnumber.a
	${CC} -o $@ $? 

example2: example2.o libdecnumber.a
	${CC} -o $@ $? 

example3: example3.o libdecnumber.a
	${CC} -o $@ $? 

example4: example4.o libdecnumber.a
	${CC} -o $@ $? 

example5: example5.o libdecnumber.a
	${CC} -o $@ $? 

example6: example6.o libdecnumber.a
	${CC} -o $@ $? 

example7: example7.o libdecnumber.a
	${CC} -o $@ $? 

example8: example8.o libdecnumber.a
	${CC} -o $@ $? 

%.o : %.c ${includes}
	${CC} -c ${CFLAGS} -o $@ $< 2> $@.err

clean:
	@rm -f *.o
	@rm -f *.o.err
	@rm -f *.a
	@rm -f *.so
	@rm -f example1 example2 example3 example4 example5 example6 example7 example8
