cmake and jit

This commit is contained in:
Vítor Santos Costa
2015-01-26 04:02:46 +00:00
parent 9d4b59f7d6
commit bc1e70758e
49 changed files with 1397 additions and 1311 deletions

View File

@@ -1,8 +1,15 @@
macro_optional_find_package (MPI OFF)
macro_log_feature (MPI_C_FOUND "mpi"
"MPI Distributed Parallel Programming"
"http://gmplib.org")
if (MPI_C_FOUND)
set (MPI_SOURCES
hash.c prologterms2c.c yap_mpi.c)
macro_optional_find_package(MPI ON)
macro_log_feature (MPI_C_FOUND "Mpi"
"Use Mpi System"
"http://www.mpi.org" FALSE)
if (MPI_C_FOUND)
# === Variables ===
#
# This module will set the following variables per language in your
# project, where <lang> is one of C, CXX, or Fortran:
#
@@ -27,5 +34,52 @@ if (MPI_C_FOUND)
# before the executable to run.
# MPIEXEC_POSTFLAGS Flags to pass to MPIEXEC after other flags
#
endif (MPI_C_FOUND)
# === Usage ===
#
# To use this module, simply call FindMPI from a CMakeLists.txt file, or
# run find_package(MPI), then run CMake. If you are happy with the
# auto- detected configuration for your language, then you're done. If
# not, you have two options:
#
# ::
#
# 1. Set MPI_<lang>_COMPILER to the MPI wrapper (mpicc, etc.) of your
# choice and reconfigure. FindMPI will attempt to determine all the
# necessary variables using THAT compiler's compile and link flags.
# 2. If this fails, or if your MPI implementation does not come with
# a compiler wrapper, then set both MPI_<lang>_LIBRARIES and
# MPI_<lang>_INCLUDE_PATH. You may also set any other variables
# listed above, but these two are required. This will circumvent
# autodetection entirely.
#
# When configuration is successful, MPI_<lang>_COMPILER will be set to
# the compiler wrapper for <lang>, if it was found. MPI_<lang>_FOUND
# and other variables above will be set if any MPI implementation was
# found for <lang>, regardless of whether a compiler was found.
#
# When using MPIEXEC to execute MPI applications, you should typically
# use all of the MPIEXEC flags as follows:
#
# ::
#
# ${MPIEXEC} ${MPIEXEC_NUMPROC_FLAG} PROCS
# ${MPIEXEC_PREFLAGS} EXECUTABLE ${MPIEXEC_POSTFLAGS} ARGS
#
# where PROCS is the number of processors on which to execute the
# program, EXECUTABLE is the MPI program, and ARGS are the arguments to
# pass to the MPI program.
#
add_library (yap_mpi SHARED ${MPI_SOURCES})
target_link_libraries(yap_mpi libYap ${MPI_LIBRARIES})
set_target_properties (yap_mpi PROPERTIES PREFIX "")
include_directories (${MPI_INCLUDE_DIRS})
install(TARGETS yap_mpi
LIBRARY DESTINATION ${dlls}
)
endif (MPI_C_FOUND)