hypre/struct_mv/Makefile
falgout 0332374491 Changed the OpenMP implementation from include-file based to hard-coded omp
pragmas in order to get around a compiler issue with Visual Studio.
2012-03-16 22:46:05 +00:00

111 lines
2.6 KiB
Makefile

#BHEADER**********************************************************************
# Copyright (c) 2008, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
# This file is part of HYPRE. See file COPYRIGHT for details.
#
# HYPRE 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) version 2.1 dated February 1999.
#
# $Revision$
#EHEADER**********************************************************************
include ../config/Makefile.config
CINCLUDES = ${INCLUDES} ${MPIINCLUDE}
C_COMPILE_FLAGS = \
-I..\
-I$(srcdir)\
-I$(srcdir)/..\
-I$(srcdir)/../utilities\
${CINCLUDES}
HEADERS =\
HYPRE_struct_mv.h\
_hypre_struct_mv.h\
assumed_part.h\
box.h\
box_manager.h\
box_pthreads.h\
computation.h\
struct_communication.h\
struct_grid.h\
struct_matrix.h\
struct_stencil.h\
struct_vector.h
FILES =\
assumed_part.c\
box_algebra.c\
box_alloc.c\
box_boundary.c\
box.c\
box_manager.c\
communication_info.c\
computation.c\
F90_HYPRE_struct_grid.c\
F90_HYPRE_struct_matrix.c\
F90_HYPRE_struct_stencil.c\
F90_HYPRE_struct_vector.c\
grow.c\
HYPRE_struct_grid.c\
HYPRE_struct_matrix.c\
HYPRE_struct_stencil.c\
HYPRE_struct_vector.c\
project.c\
struct_axpy.c\
struct_communication.c\
struct_copy.c\
struct_grid.c\
struct_innerprod.c\
struct_io.c\
struct_matrix.c\
struct_matrix_mask.c\
struct_matvec.c\
struct_overlap_innerprod.c\
struct_scale.c\
struct_stencil.c\
struct_vector.c
OBJS = ${FILES:.c=.o}
SONAME = libHYPRE_struct_mv-${HYPRE_RELEASE_VERSION}.so
##################################################################
# Targets
##################################################################
all: libHYPRE_struct_mv${HYPRE_LIB_SUFFIX}
cp -fpPR $(srcdir)/HYPRE_*.h $(HYPRE_BUILD_DIR)/include
cp -fpPR $(srcdir)/_hypre_struct_mv.h $(HYPRE_BUILD_DIR)/include
# cp -fpPR libHYPRE* $(HYPRE_BUILD_DIR)/lib
install: libHYPRE_struct_mv${HYPRE_LIB_SUFFIX}
cp -fpPR $(srcdir)/HYPRE_*.h $(HYPRE_INC_INSTALL)
cp -fpPR $(srcdir)/_hypre_struct_mv.h $(HYPRE_INC_INSTALL)
# cp -fpPR libHYPRE* $(HYPRE_LIB_INSTALL)
clean:
rm -f *.o libHYPRE*
rm -rf pchdir tca.map *inslog*
distclean: clean
##################################################################
# Rules
##################################################################
libHYPRE_struct_mv.a: ${OBJS}
@echo "Building $@ ... "
${AR} $@ ${OBJS}
${RANLIB} $@
libHYPRE_struct_mv.so: ${OBJS}
@echo "Building $@ ... "
${BUILD_CC_SHARED} -o ${SONAME} ${OBJS} ${SHARED_SET_SONAME}${SONAME}
ln -s ${SONAME} $@
${OBJS}: ${HEADERS}