#*******************************************************************************
#
# Makefile for Skein static lib (archive).
#
#*******************************************************************************

#*******************************************************************************
# Compiler
#*******************************************************************************
CXX = g++

#*******************************************************************************
# Debug flags
#*******************************************************************************
#CXXFLAGS = -g -Wall

#*******************************************************************************
# Release flags
#*******************************************************************************
CXXFLAGS = -O -Wall

#*******************************************************************************
# Include
#*******************************************************************************
INCLUDE = -IOptimized_32bit

#*******************************************************************************
# Archive to create
#*******************************************************************************
skein.a: $(CURDIR)/obj/skein.o $(CURDIR)/obj/skein_block.o
	$(AR) $(ARFLAGS) skein.a $(CURDIR)/obj/skein.o $(CURDIR)/obj/skein_block.o

#*******************************************************************************
# Files to compile
#*******************************************************************************
$(CURDIR)/obj/skein.o: $(CURDIR)/Optimized_32bit/skein.c $(CURDIR)/Optimized_32bit/skein.h $(CURDIR)/Optimized_32bit/skein_iv.h
	$(CXX) $(CXXFLAGS) $(INCLUDE) -c $(CURDIR)/Optimized_32bit/skein.c -o $(CURDIR)/obj/skein.o

$(CURDIR)/obj/skein_block.o: $(CURDIR)/Optimized_32bit/skein_block.c $(CURDIR)/Optimized_32bit/skein.h
	$(CXX) $(CXXFLAGS) $(INCLUDE) -c $(CURDIR)/Optimized_32bit/skein_block.c -o $(CURDIR)/obj/skein_block.o

#*******************************************************************************
# Cleanup
#*******************************************************************************
clean:
	-rm $(CURDIR)/obj/skein.o $(CURDIR)/obj/skein_block.o skein.a
