#CC=/opt/intel/cc/10.1.015/bin/icc
#CFLAGS=-O3 -xW -c -fPIC -static-intel
#LDFLAGS=-static-intel
CC=gcc
LDFLAGS=
CFLAGS=-O3 -funroll-all-loops -c -ftree-vectorize -fPIC
SHLD=$(CC) -shared
TARGET=libwilmaops.so
OBJ=expand.o shrink.o composite.o rotate.o
INSTALL=install

prefix=/usr/local
libdir=$(prefix)/lib

all: $(TARGET)

install: $(TARGET)
	$(INSTALL) $(TARGET) $(libdir)/

libwilmaops.so: $(OBJ)
	$(SHLD) $(LDFLAGS) -o $@ $(OBJ)

expand.o: expand.c libwilmaops.h
	$(CC) $(CFLAGS) -o $*.o $*.c

shrink.o: shrink.c libwilmaops.h
	$(CC) $(CFLAGS) -o $*.o $*.c

composite.o: composite.c composite_impl.c libwilmaops.h
	$(CC) $(CFLAGS) -o $*.o $*.c

rotate.o: rotate.c libwilmaops.h
	$(CC) $(CFLAGS) -o $*.o $*.c

clean:
	rm $(OBJ) $(TARGET)

distclean: clean
	rm *.c~ *.h~ Makefile~
