diff --git a/src/Makefile b/src/Makefile index 6651b74ebffc79bc5c0cd7308028c75eaacd27a8..ec07dbabb232b95081b6c26dc4bf0cf00c04be5a 100644 --- a/src/Makefile +++ b/src/Makefile @@ -3,25 +3,33 @@ AMDAPPSDKROOT ?= /opt/AMDAPP CXX ?= g++ AR ?= ar -TARGET = libclfft.a -TARGET2 = libclfft.so +TARGET = libeclfft.a +TARGET2 = libeclfft.so CXXFLAGS += -O3 -Wall -g -I$(NVIDIA_SDK_INSTALL_PATH)/OpenCL/common/inc -I$(AMDAPPSDKROOT)/include -I../include -fPIC OS = $(shell uname -s) ifeq ($(OS), Darwin) CXXFLAGS += -I/System/Library/Frameworks + LDFLAGS += -framework OpenCL endif OBJECTS = fft_setup.o fft_execute.o fft_kernelstring.o PREFIX ?= "." +default: static shared + +static: $(TARGET) + +shared: $(TARGET2) + $(TARGET): $(OBJECTS) $(AR) rcs $(TARGET) $(OBJECTS) - $(CXX) -shared -o $(TARGET2) $(OBJECTS) mkdir -p ../lib - cp $(TARGET) ../lib/ - cp $(TARGET2) ../lib/ + cp $(TARGET) ../lib/libclfft.a + +$(TARGET2): $(OBJECTS) + $(CXX) $(LDFLAGS) -shared -o $(TARGET2) $(OBJECTS) fft_setup.o: fft_setup.cpp fft_internal.h fft_base_kernels.h $(CXX) $(CXXFLAGS) -c fft_setup.cpp @@ -35,9 +43,7 @@ fft_kernelstring.o: fft_kernelstring.cpp ../include/clFFT.h fft_internal.h install: $(TARGET) ../include/clFFT.h mkdir -p $(PREFIX)/lib $(PREFIX)/include cp ../include/clFFT.h $(PREFIX)/include/eclfft.h - cp $(TARGET) $(PREFIX)/lib/libeclfft.a - cp $(TARGET2) $(PREFIX)/lib/libeclfft.so + cp libeclfft.* $(PREFIX)/lib/ clean: - rm -f *.o - rm -f *.a + rm -f *.o *.a *.so