# # StarPU # Copyright (C) INRIA 2008-2009 (see AUTHORS file) # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU Lesser General Public License as published by # the Free Software Foundation; either version 2.1 of the License, or (at # your option) any later version. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. # # See the GNU Lesser General Public License in COPYING.LGPL for more details. # LIBS = $(top_builddir)/src/libstarpu.la @LIBS@ AM_CPPFLAGS = -I$(top_srcdir)/include/ -I$(top_srcdir)/examples/ EXTRA_DIST = \ cuda/incrementer_cuda.cu \ cuda/spmv_cuda.cu CLEANFILES = \ incrementer_cuda.linkinfo \ cuda/incrementer_cuda.cubin \ spmv_cuda.linkinfo \ cuda/spmv_cuda.cubin if USE_CUDA # TODO define NVCCFLAGS NVCC ?= nvcc .cu.cubin: $(MKDIR_P) `dirname $@` $(NVCC) -cubin $< -o $@ --compiler-options -fno-strict-aliasing $(NVCCFLAGS) BUILT_SOURCES = \ cuda/incrementer_cuda.cubin \ cuda/spmv_cuda.cubin endif noinst_PROGRAMS = noinst_HEADERS = \ heat/lu_kernels_model.h \ heat/dw_sparse_cg.h \ heat/heat.h \ heat/dw_factolu.h \ cholesky/dw_cholesky_models.h \ cholesky/dw_cholesky.h \ common/blas_model.h \ common/blas.h \ mult/dw_mult.h \ cuda/incrementer_cuda.h \ fortran/bindings/StarPU-fortran.h \ strassen/strassen.h \ strassen/strassen_models.h \ spmv/matrix-market/mmio.h \ spmv/matrix-market/mm_to_bcsr.h \ spmv/dw_spmv.h \ spmv/dw_block_spmv.h ################ # Mult example # ################ if !NO_BLAS_LIB noinst_PROGRAMS += \ mult/dw_mult \ mult/dw_mult_no_stride \ mult/dw_mult_no_stride_no_tag mult_dw_mult_SOURCES = \ mult/dw_mult.c \ common/blas.c \ common/blas_model.c mult_dw_mult_no_stride_SOURCES = \ mult/dw_mult_no_stride.c \ common/blas.c \ common/blas_model.c mult_dw_mult_no_stride_no_tag_SOURCES = \ mult/dw_mult_no_stride_no_tag.c \ common/blas.c \ common/blas_model.c endif #################### # Cholesky example # #################### if !NO_BLAS_LIB noinst_PROGRAMS += \ cholesky/dw_cholesky \ cholesky/dw_cholesky_no_stride cholesky_dw_cholesky_SOURCES = \ cholesky/dw_cholesky.c \ cholesky/dw_cholesky_models.c \ cholesky/dw_cholesky_kernels.c \ common/blas.c cholesky_dw_cholesky_no_stride_SOURCES = \ cholesky/dw_cholesky_no_stride.c \ cholesky/dw_cholesky_models.c \ cholesky/dw_cholesky_kernels.c \ common/blas.c endif ################ # Heat example # ################ if !NO_BLAS_LIB noinst_PROGRAMS += heat/heat heat_heat_SOURCES = \ heat/heat.c \ heat/dw_factolu.c \ heat/dw_factolu_tag.c \ heat/dw_sparse_cg.c \ heat/heat_display.c \ heat/lu_kernels_model.c \ heat/dw_sparse_cg_kernels.c \ heat/dw_factolu_kernels.c \ common/blas.c endif ################ # Tag examples # ################ noinst_PROGRAMS += \ tag_example/tag_example \ tag_example/tag_example2 tag_example_tag_example_SOURCES = \ tag_example/tag_example.c tag_example_tag_example2_SOURCES = \ tag_example/tag_example2.c #################### # Strassen example # #################### if ATLAS_BLAS_LIB noinst_PROGRAMS += strassen/dw_strassen strassen_dw_strassen_SOURCES = \ strassen/strassen.c \ strassen/strassen_kernels.c \ strassen/test_strassen.c \ strassen/strassen_models.c \ common/blas.c endif ##################### # Strassen2 example # ##################### if !NO_BLAS_LIB noinst_PROGRAMS += strassen2/strassen strassen2_strassen_SOURCES = \ strassen2/strassen2.c \ strassen2/strassen2_kernels.c \ common/blas.c endif ################ # SpMV example # ################ if ATLAS_BLAS_LIB noinst_PROGRAMS += \ spmv/dw_spmv \ spmv/dw_block_spmv spmv_dw_spmv_SOURCES = \ spmv/dw_spmv.c spmv_dw_block_spmv_SOURCES = \ spmv/dw_block_spmv.c \ spmv/dw_block_spmv_kernels.c \ spmv/matrix-market/mm_to_bcsr.c \ spmv/matrix-market/mmio.c endif ####################### # Incrementer example # ####################### noinst_PROGRAMS += incrementer/incrementer incrementer_incrementer_SOURCES = \ incrementer/incrementer.c