# Copyright (c) 1998 Lawrence Livermore National Security, LLC and other
# HYPRE Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)

###############################################################################
##  All configurable variables are defined in the file named Makefile.config.in
##  When Autoconf is run, it will create a file named Makefile.config which
##  will have all of the configurable variables replaced with their values.
###############################################################################

@SET_MAKE@

srcdir = @srcdir@
top_srcdir = @top_srcdir@
prefix = @prefix@
exec_prefix = @exec_prefix@

VPATH = @srcdir@

HYPRE_RELEASE_NAME    = @HYPRE_NAME@
HYPRE_RELEASE_VERSION = @HYPRE_VERSION@
HYPRE_RELEASE_DATE    = @HYPRE_DATE@
HYPRE_RELEASE_TIME    = @HYPRE_TIME@
HYPRE_RELEASE_BUGS    = @HYPRE_BUGS@

HYPRE_SRC_TOP_DIR = @HYPRE_SRCDIR@
HYPRE_BUILD_DIR   = @HYPRE_SRCDIR@/hypre

HYPRE_INSTALL_DIR = @HYPRE_INSTALLDIR@
HYPRE_LIB_INSTALL = @HYPRE_LIBINSTALL@
HYPRE_INC_INSTALL = @HYPRE_INCINSTALL@

HYPRE_LIB_SUFFIX = @HYPRE_LIBSUFFIX@

.SUFFIXES:
.SUFFIXES: .o .obj .f .c .C .cxx .cc

FC        = @FC@
FFLAGS    = @FFLAGS@ @FCFLAGS@ $(FC_COMPILE_FLAGS)

CC        = @CC@
CFLAGS    = @CFLAGS@ @DEFS@ $(C_COMPILE_FLAGS)

CXX       = @CXX@
CXXFLAGS  = @CXXFLAGS@ @DEFS@ $(CXX_COMPILE_FLAGS)

CUCC      = @CUCC@ ${CUDA_ARCH}
CUFLAGS   = @CUFLAGS@ @DEFS@ ${C_COMPILE_FLAGS}

.f.o:
	$(FC) $(FFLAGS) -c $<
.c.o:
	$(CC) $(CFLAGS) -c $<
.C.o:
	$(CXX) $(CXXFLAGS) -c $<
.cxx.o:
	$(CXX) $(CXXFLAGS) -c $<
.cc.o:
	$(CXX) $(CXXFLAGS) -c $<
ifeq ($(CUCC), )
.c.obj:
	$(CC) $(CFLAGS) -c $< -o $@
else
.c.obj:
	$(CUCC) $(CUFLAGS) -c $< -o $@
endif

LINK_FC  = @LINK_FC@
LINK_CC  = @LINK_CC@
LINK_CXX = @LINK_CXX@

BUILD_FC_SHARED     = @BUILD_FC_SHARED@
BUILD_CC_SHARED     = @BUILD_CC_SHARED@
BUILD_CXX_SHARED    = @BUILD_CXX_SHARED@
SHARED_COMPILE_FLAG = @SHARED_COMPILE_FLAG@
SHARED_BUILD_FLAG   = @SHARED_BUILD_FLAG@
SHARED_SET_SONAME   = @SHARED_SET_SONAME@
SHARED_OPTIONS      = @SHARED_OPTIONS@

BUILD_PYTHON = @BUILD_PYTHON@
PYTHON       = @PYTHON@

BUILD_JAVA = @BUILD_JAVA@

AR     = @AR@
RANLIB = @RANLIB@

LDFLAGS = @LDFLAGS@
LIBS    = @LIBS@ ${CALIPER_LIBS} ${HYPRE_CUDA_LIBS} ${HYPRE_HIP_LIBS} ${HYPRE_SYCL_LIBS} ${HYPRE_RAJA_LIB_DIR} ${HYPRE_RAJA_LIB} ${HYPRE_KOKKOS_LIB_DIR} ${HYPRE_KOKKOS_LIB} ${HYPRE_UMPIRE_LIB_DIR} ${HYPRE_UMPIRE_LIB}
FLIBS   = @FLIBS@

INCLUDES = ${CALIPER_INCLUDE} ${HYPRE_CUDA_INCLUDE} ${HYPRE_HIP_INCLUDE} ${HYPRE_SYCL_INCLUDE} ${HYPRE_RAJA_INCLUDE} ${HYPRE_KOKKOS_INCLUDE} ${HYPRE_UMPIRE_INCLUDE} ${HYPRE_NAP_INCLUDE}

##################################################################
##  LAPACK Library Flags
##################################################################
LAPACKLIBS      = @LAPACKLIBS@
LAPACKLIBDIRS   = @LAPACKLIBDIRS@

##################################################################
##  BLAS Library Flags
##################################################################
BLASLIBS        = @BLASLIBS@
BLASLIBDIRS     = @BLASLIBDIRS@

##################################################################
##  MPI options
##################################################################
MPIINCLUDE = @MPIINCLUDE@
MPILIBDIRS = @MPILIBDIRS@
MPILIBS    = @MPILIBS@
MPIFLAGS   = @MPIFLAGS@

##################################################################
##  Node Aware MPI options
##################################################################
HYPRE_NAP_INCLUDE = @HYPRE_NAP_INCLUDE@

##################################################################
##  CUDA options
##################################################################
HYPRE_CUDA_PATH    = @HYPRE_CUDA_PATH@
HYPRE_CUDA_INCLUDE = @HYPRE_CUDA_INCLUDE@
HYPRE_CUDA_LIBS    = @HYPRE_CUDA_LIBS@
CUDA_ARCH          = @HYPRE_CUDA_GENCODE@

##################################################################
##  HIP options
##################################################################
HYPRE_HIP_INCLUDE = @HYPRE_HIP_INCL@
HYPRE_HIP_LIBS    = @HYPRE_HIP_LIBS@

##################################################################
##  SYCL options
##################################################################
HYPRE_SYCL_INCLUDE=@HYPRE_SYCL_INCL@
HYPRE_SYCL_LIBS=@HYPRE_SYCL_LIBS@

##################################################################
##  Caliper options
##################################################################
CALIPER_INCLUDE = @CALIPER_INCLUDE@
CALIPER_LIBS    = @CALIPER_LIBS@

##################################################################
##  Euclid, ParaSails, pilut options
##################################################################
HYPRE_DISTRIBUTED_LS_DIR = @HYPRE_DISTRIBUTED_LS_DIR@
HYPRE_EUCLID_FILES       = @HYPRE_EUCLID_FILES@
HYPRE_PARASAILS_FILES    = @HYPRE_PARASAILS_FILES@
HYPRE_PILUT_FILES        = @HYPRE_PILUT_FILES@

##################################################################
##  SuperLU options
##################################################################
SUPERLU_INCLUDE = @SUPERLU_INCLUDE@
SUPERLU_LIBS    = @SUPERLU_LIBS@

##################################################################
##  DsuperLU options
##################################################################
DSUPERLU_INCLUDE = @DSUPERLU_INCLUDE@
DSUPERLU_LIBS    = @DSUPERLU_LIBS@

##################################################################
##  FEI options
##################################################################
HYPRE_FEI_SRC_DIR       = @HYPRE_FEI_SRC_DIR@
HYPRE_FEI_BASE_DIR      = @HYPRE_FEI_BASE_DIR@
HYPRE_FEI_SUBDIRS       = @HYPRE_FEI_SUBDIRS@
HYPRE_FEI_HYPRE_FILES   = @HYPRE_FEI_HYPRE_FILES@
HYPRE_FEI_FEMLI_FILES   = @HYPRE_FEI_FEMLI_FILES@

##################################################################
##  RAJA options
##################################################################
HYPRE_RAJA_LIB_DIR      = @HYPRE_RAJA_LIB_DIR@
HYPRE_RAJA_INCLUDE      = @HYPRE_RAJA_INCLUDE@
HYPRE_RAJA_LIB          = @HYPRE_RAJA_LIB@

##################################################################
##  kokkos options
##################################################################
HYPRE_KOKKOS_SRC_DIR    = @HYPRE_KOKKOS_SRC_DIR@
HYPRE_KOKKOS_LIB_DIR    = @HYPRE_KOKKOS_LIB_DIR@
HYPRE_KOKKOS_INCLUDE    = @HYPRE_KOKKOS_INCLUDE@
HYPRE_KOKKOS_LIB        = @HYPRE_KOKKOS_LIB@

##################################################################
##  UMPIRE options
##################################################################
HYPRE_UMPIRE_LIB_DIR      = @HYPRE_UMPIRE_LIB_DIR@
HYPRE_UMPIRE_INCLUDE      = @HYPRE_UMPIRE_INCLUDE@
HYPRE_UMPIRE_LIB          = @HYPRE_UMPIRE_LIB@
