Merge branch 'master' of ssh://git.dcc.fc.up.pt/yap-6.3
Conflicts: .gitmodules configure packages/real
This commit is contained in:
commit
c4ee7ee0c3
7
.gitmodules
vendored
7
.gitmodules
vendored
@ -31,12 +31,13 @@
|
||||
[submodule "packages/R"]
|
||||
path = packages/R
|
||||
url = git://yap.git.sourceforge.net/gitroot/yap/R
|
||||
[submodule "packages/YapR"]
|
||||
path = packages/YapR
|
||||
url = git://yap.git.sourceforge.net/gitroot/yap/YapR
|
||||
[submodule "packages/pldoc"]
|
||||
path = packages/pldoc
|
||||
url = git://yap.git.sourceforge.net/gitroot/yap/pldoc
|
||||
[submodule "packages/real"]
|
||||
path = packages/real
|
||||
<<<<<<< HEAD
|
||||
url = vsc@www.swi-prolog.org:/home/pl/git/packages/real.git
|
||||
=======
|
||||
url = git://www.swi-prolog.org/home/pl/git/packages/real.git
|
||||
>>>>>>> 7e73c781b06cb917d5a065ead5f872c28da619f1
|
||||
|
@ -555,6 +555,8 @@ X_API Term STD_PROTO(YAP_NewOpaqueObject,(int, size_t));
|
||||
X_API void *STD_PROTO(YAP_OpaqueObjectFromTerm,(Term));
|
||||
X_API int STD_PROTO(YAP_Argv,(char *** argvp));
|
||||
X_API YAP_tag_t STD_PROTO(YAP_TagOfTerm,(Term));
|
||||
X_API int STD_PROTO(YAP_ExportTerm,(Term, char *, size_t));
|
||||
X_API Term STD_PROTO(YAP_ImportTerm,(char *));
|
||||
|
||||
static int
|
||||
dogc( USES_REGS1 )
|
||||
@ -3987,3 +3989,13 @@ YAP_IsNumberedVariable(Term t) {
|
||||
IsIntegerTerm(ArgOfTerm(1,t));
|
||||
}
|
||||
|
||||
X_API int
|
||||
YAP_ExportTerm(Term inp, char * buf, size_t len) {
|
||||
return Yap_ExportTerm(inp, buf, len);
|
||||
}
|
||||
|
||||
X_API Term
|
||||
YAP_ImportTerm(char * buf) {
|
||||
return Yap_ImportTerm(buf);
|
||||
}
|
||||
|
||||
|
@ -702,7 +702,7 @@ all: startup.yss
|
||||
@ENABLE_RDF@ @INSTALL_DLLS@ (cd packages/RDF; $(MAKE))
|
||||
@ENABLE_SEMWEB@ @INSTALL_DLLS@ (cd packages/semweb; $(MAKE))
|
||||
@ENABLE_SGML@ @INSTALL_DLLS@ (cd packages/sgml; $(MAKE))
|
||||
@ENABLE_YAPR@ (cd packages/YapR; $(MAKE))
|
||||
@ENABLE_REAL@ (cd packages/real; $(MAKE))
|
||||
@ENABLE_CLPBN_BP@ (cd packages/CLPBN/clpbn/bp ; $(MAKE))
|
||||
@ENABLE_MINISAT@ (cd packages/swi-minisat2/C; $(MAKE))
|
||||
@ENABLE_ZLIB@ @INSTALL_DLLS@ (cd packages/zlib; $(MAKE))
|
||||
@ -774,7 +774,7 @@ install_unix: startup.yss libYap.a
|
||||
@ENABLE_CLPBN_BP@ @INSTALL_DLLS@ (cd packages/CLPBN/clpbn/bp ; $(MAKE) install)
|
||||
@ENABLE_MINISAT@ (cd packages/swi-minisat2/C; $(MAKE) install)
|
||||
@INSTALL_MATLAB@ (cd library/matlab; $(MAKE) install)
|
||||
@ENABLE_YAPR@ (cd packages/YapR; $(MAKE) install)
|
||||
@ENABLE_REAL@ (cd packages/real; $(MAKE) install)
|
||||
@ENABLE_JPL@ @INSTALL_DLLS@ (cd packages/jpl; $(MAKE) install)
|
||||
#@ENABLE_JPL@ @INSTALL_DLLS@ (cd packages/pyswip; $(MAKE) install)
|
||||
mkdir -p $(DESTDIR)$(INCLUDEDIR)
|
||||
@ -822,7 +822,7 @@ install_win32: startup.yss @ENABLE_WINCONSOLE@ pl-yap@EXEC_SUFFIX@
|
||||
(cd library/system; $(MAKE) install)
|
||||
@ENABLE_WINCONSOLE@ (cd LGPL/swi_console; $(MAKE) install)
|
||||
@INSTALL_MATLAB@ (cd library/matlab; $(MAKE) install)
|
||||
@ENABLE_YAPR@ (cd packages/YapR; $(MAKE) install)
|
||||
@ENABLE_REAL@ (cd packages/real; $(MAKE) install)
|
||||
(cd library/tries; $(MAKE) install)
|
||||
@ENABLE_CLIB@ (cd packages/clib; $(MAKE) install)
|
||||
@ENABLE_PLDOC@ (cd packages/pldoc; $(MAKE) install)
|
||||
@ -895,7 +895,7 @@ clean: clean_docs
|
||||
@ENABLE_RDF@ @INSTALL_DLLS@ (cd packages/RDF; $(MAKE) clean)
|
||||
@ENABLE_SEMWEB@ @INSTALL_DLLS@ (cd packages/semweb; $(MAKE) clean)
|
||||
@ENABLE_SGML@ @INSTALL_DLLS@ (cd packages/sgml; $(MAKE) clean)
|
||||
@ENABLE_YAPR@ (cd packages/YapR; $(MAKE) clean)
|
||||
@ENABLE_REAL@ (cd packages/real; $(MAKE) clean)
|
||||
@ENABLE_MINISAT@ (cd packages/swi-minisat2; $(MAKE) clean)
|
||||
@ENABLE_CLPBN_BP@ (cd packages/CLPBN/clpbn/bp; $(MAKE) clean)
|
||||
@ENABLE_ZLIB@ @INSTALL_DLLS@ (cd packages/zlib; $(MAKE) clean)
|
||||
|
18
config.h.in
18
config.h.in
@ -22,25 +22,11 @@
|
||||
|
||||
/* What MPI libraries are there? */
|
||||
#define HAVE_LIBMPI 0
|
||||
#define HAVE_LIBMPICH 0
|
||||
|
||||
/* Should we use MPI ? */
|
||||
#if HAVE_LIBMPI || HAVE_LIBMPICH
|
||||
#define HAVE_MPI 1
|
||||
#else
|
||||
#define HAVE_MPI 0
|
||||
#endif
|
||||
#define HAVE_LIBMPICH
|
||||
|
||||
/* Is there an MPE library? */
|
||||
#define HAVE_LIBMPE 0
|
||||
|
||||
/* Should we use MPE ? */
|
||||
#if HAVE_LIBMPE && HAVE_MPI
|
||||
#define HAVE_MPE 1
|
||||
#else
|
||||
#define HAVE_MPE 0
|
||||
#endif
|
||||
|
||||
/* does the compiler support inline ? */
|
||||
#undef inline
|
||||
|
||||
@ -325,7 +311,7 @@
|
||||
#endif
|
||||
|
||||
/* Should we use MPI ? */
|
||||
#if defined(HAVE_MPI_H) && (HAVE_LIBMPI || HAVE_LIBMPICH)
|
||||
#if defined(HAVE_MPI_H) && (defined(HAVE_LIBMPI) || defined(HAVE_LIBMPICH))
|
||||
#define HAVE_MPI 1
|
||||
#else
|
||||
#define HAVE_MPI 0
|
||||
|
228
configure.in
228
configure.in
@ -232,16 +232,16 @@ AC_ARG_WITH(gmp,
|
||||
fi,
|
||||
[yap_cv_gmp=yes])
|
||||
|
||||
AC_ARG_WITH(yapr,
|
||||
[ --with-yapr[=DIR] interface to R language, R installed in DIR],
|
||||
AC_ARG_WITH(real,
|
||||
[ --with-real[=DIR] interface to R language],
|
||||
if test "$withval" = yes; then
|
||||
yap_cv_yapr=yes
|
||||
yap_cv_real=yes
|
||||
elif test "$withval" = no; then
|
||||
yap_cv_yapr=no
|
||||
yap_cv_real=no
|
||||
else
|
||||
yap_cv_yapr=$with_yapr
|
||||
yap_cv_real=$with_real
|
||||
fi,
|
||||
[yap_cv_yapr=no])
|
||||
[yap_cv_real=yes])
|
||||
|
||||
dnl best test we could do.
|
||||
AC_ARG_WITH(minisat,
|
||||
@ -356,6 +356,7 @@ AC_ARG_WITH(matlab,
|
||||
AC_ARG_WITH(mpi,
|
||||
[ --with-mpi[=DIR] use MPI library in DIR],
|
||||
if test "$withval" = yes; then
|
||||
dnl handle UBUNTU systems
|
||||
yap_cv_mpi=yes
|
||||
elif test "$withval" = no; then
|
||||
yap_cv_mpi=no
|
||||
@ -383,7 +384,7 @@ AC_ARG_WITH(mpe,
|
||||
AC_ARG_WITH(lam,
|
||||
[ --with-lam[=DIR] use LAM MPI library in DIR],
|
||||
if test "$withval" = yes; then
|
||||
yap_cv_lam=yes
|
||||
yap_cv_lam=yes
|
||||
elif test "$withval" = no; then
|
||||
yap_cv_lam=no
|
||||
else
|
||||
@ -391,7 +392,7 @@ AC_ARG_WITH(lam,
|
||||
LDFLAGS="$LDFLAGS -L${yap_cv_lam}/lib/lam"
|
||||
CPPFLAGS="$CPPFLAGS -I${yap_cv_lam}/include"
|
||||
fi,
|
||||
[yap_cv_lam=no])
|
||||
[yap_cv_lam=yes])
|
||||
|
||||
AC_ARG_WITH(heap-space,
|
||||
[ --with-heap-space[=space] default heap size in Kbytes],
|
||||
@ -519,16 +520,6 @@ else
|
||||
INSTALL_MATLAB=""
|
||||
fi
|
||||
|
||||
if test "$yap_cv_yapr" = no
|
||||
then
|
||||
ENABLE_YAPR="@# "
|
||||
elif test -e "$srcdir"/packages/YapR/Makefile.in
|
||||
then
|
||||
ENABLE_YAPR=""
|
||||
else
|
||||
ENABLE_YAPR="@# "
|
||||
fi
|
||||
|
||||
if test "$yap_cv_clpbn_bp" = no
|
||||
then
|
||||
ENABLE_CLPBN_BP="@# "
|
||||
@ -745,54 +736,68 @@ then
|
||||
AC_CHECK_LIB(gmp,main)
|
||||
fi
|
||||
|
||||
if test "$yap_cv_yapr" != "no"
|
||||
then
|
||||
if test "$yap_cv_yapr" = "yes"
|
||||
if test "$yap_cv_real" = "no"; then
|
||||
REAL_TARGET="dummy"
|
||||
ENABLE_REAL="@# "
|
||||
elif test -e "$srcdir"/packages/real/Makefile.in ; then
|
||||
REAL_TARGET="ritf"
|
||||
ENABLE_REAL=""
|
||||
AC_CHECK_PROGS(REXE, R, "none")
|
||||
if test "$yap_cv_yapr" != "yes"
|
||||
then
|
||||
case "$target_os" in
|
||||
case "$target_os" in
|
||||
*darwin*)
|
||||
YAPR_INCLUDES="-I/Library/Frameworks/R.framework/Headers"
|
||||
EXTRA_LIBS_FOR_R="-framework R -L /Library/Frameworks/R.framework/Libraries -lR"
|
||||
REAL_INCLUDES="-I/Library/Frameworks/R.framework/Headers"
|
||||
REAL_LIBS="-framework R -L /Library/Frameworks/R.framework/Libraries -lR"
|
||||
;;
|
||||
*cygwin*|*mingw*)
|
||||
REAL_INCLUDES="$($REXE CMD config --cppflags | grep -v ^WARNING)"
|
||||
REAL_LIBS="$($REXE CMD config --ldflags | grep -v ^WARNING)"
|
||||
;;
|
||||
**)
|
||||
dnl R is spread all over the place
|
||||
dnl one of the two may work (Fedora/Ubuntu)
|
||||
if test -n "$R_HOME" ; then
|
||||
YAPR_INCLUDES="-I$R_HOME/include"
|
||||
REAL_INCLUDES="-I$R_HOME/include"
|
||||
elif test "$YAP_TARGET" = amd64 -a -d /usr/lib64/R/include ; then
|
||||
YAPR_INCLUDES="-I/usr/lib64/R/include"
|
||||
REAL_INCLUDES="-I/usr/lib64/R/include"
|
||||
elif test -d /usr/include/R; then
|
||||
YAPR_INCLUDES="-I/usr/include/R"
|
||||
REAL_INCLUDES="-I/usr/include/R"
|
||||
elif test -d /usr/share/R/include; then
|
||||
YAPR_INCLUDES="-I/usr/share/R/include"
|
||||
REAL_INCLUDES="-I/usr/share/R/include"
|
||||
else
|
||||
REAL_INCLUDES="$($REXE CMD config --cppflags | grep -v ^WARNING)"
|
||||
fi
|
||||
echo $YAP_TARGET
|
||||
if test -n "$R_HOME" ; then
|
||||
EXTRA_LIBS_FOR_R="-I$R_HOME/lib -lR"
|
||||
REAL_LIBS="-L $R_HOME/lib -lR"
|
||||
elif test "$YAP_TARGET" = amd64 -a -d /usr/lib64/R/lib; then
|
||||
EXTRA_LIBS_FOR_R="-L /usr/lib64/R/lib -lR"
|
||||
REAL_LIBS="-L /usr/lib64/R/lib -lR"
|
||||
elif test -d /usr/lib/R; then
|
||||
EXTRA_LIBS_FOR_R="-L /usr/lib/R/lib -lR"
|
||||
REAL_LIBS="-L /usr/lib/R/lib -lR"
|
||||
else
|
||||
REAL_LIBS="$($REXE CMD config --ldflags | grep -v ^WARNING)"
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
else
|
||||
case "$target_os" in
|
||||
*cygwin*|*mingw*)
|
||||
YAPR_INCLUDES="-I\"$yap_cv_yapr/include\""
|
||||
REAL_INCLUDES="-I\"$yap_cv_real/include\""
|
||||
if test "$YAP_TARGET" = i386; then
|
||||
EXTRA_LIBS_FOR_R="\"$yap_cv_yapr/bin/i386/R.dll\""
|
||||
REAL_LIBS="\"$yap_cv_real/bin/i386/R.dll\""
|
||||
else
|
||||
EXTRA_LIBS_FOR_R="\"$yap_cv_yapr/bin/x64/R.dll\""
|
||||
REAL_LIBS="\"$yap_cv_real/bin/x64/R.dll\""
|
||||
fi
|
||||
;;
|
||||
*)
|
||||
YAPR_INCLUDES="-I$yap_cv_yapr/include"
|
||||
EXTRA_LIBS_FOR_R="-L $yap_cv_yapr/lib -lR"
|
||||
REAL_INCLUDES="-I$yap_cv_real/include"
|
||||
REAL_LIBS="-L $yap_cv_real/lib -lR"
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
AC_CHECK_LIB(R,main)
|
||||
fi
|
||||
else
|
||||
REAL_TARGET="dummy"
|
||||
ENABLE_REAL="@# "
|
||||
fi
|
||||
|
||||
dnl if test "$yap_cv_cudd" != "no"
|
||||
@ -1014,55 +1019,6 @@ else
|
||||
ENABLE_JPL="@#"
|
||||
fi
|
||||
|
||||
LAM_MPI_CC=${MPI_CC}
|
||||
MPI_OBJS=
|
||||
if test "$yap_cv_mpi" != "no"
|
||||
then
|
||||
OLD_CC=${CC}
|
||||
CC=${MPI_CC}
|
||||
AC_CHECK_LIB(mpi,MPI_Init,
|
||||
[AC_DEFINE(HAVE_LIBMPI, 1)],
|
||||
[AC_DEFINE(HAVE_LIBMPI, 0)])
|
||||
if test "$ac_cv_lib_mpi_MPI_Init" = yes
|
||||
then
|
||||
#YAPMPILIB=YapMPI.a
|
||||
MPI_OBJS=mpi.o
|
||||
else
|
||||
AC_CHECK_LIB(mpich,MPI_Init,
|
||||
[AC_DEFINE(HAVE_LIBMPICH, 1)],
|
||||
[AC_DEFINE(HAVE_LIBMPICH, 0)])
|
||||
if test "$ac_cv_lib_mpich_MPI_Init" = yes
|
||||
then
|
||||
#YAPMPILIB=YapMPI.a
|
||||
MPI_OBJS=mpi.o
|
||||
else
|
||||
#YAPMPILIB=
|
||||
MPI_CC=${CC}
|
||||
fi
|
||||
fi
|
||||
CC=${OLD_CC}
|
||||
else
|
||||
# MPI_CC=${MPI_CC}
|
||||
MPI_CC=${CC}
|
||||
fi
|
||||
|
||||
|
||||
MPI_LIBS=
|
||||
if test "$yap_cv_mpi" != "no" -a "$yap_cv_mpe" != "no"
|
||||
then
|
||||
OLD_CC=${CC}
|
||||
CC=${MPI_CC}
|
||||
AC_CHECK_LIB(mpe,MPE_Init_log,
|
||||
[AC_DEFINE(HAVE_LIBMPE, 1)],
|
||||
[AC_DEFINE(HAVE_LIBMPE, 0)])
|
||||
if test "$ac_cv_lib_mpe_MPE_Init_log" = yes
|
||||
then
|
||||
MPI_LIBS="-lmpe"
|
||||
MPI_OBJS="$MPI_OBJS mpe.o"
|
||||
fi
|
||||
CC=${OLD_CC}
|
||||
fi
|
||||
|
||||
AC_PROG_CPP
|
||||
|
||||
if test "$cross_compiling" = "yes"
|
||||
@ -1499,6 +1455,75 @@ if test "$tabling" = "yes"
|
||||
then
|
||||
YAP_EXTRAS="$YAP_EXTRAS -DTABLING=1"
|
||||
fi
|
||||
dnl LAM/MPI interface
|
||||
|
||||
LAM_MPI_CC=${MPI_CC}
|
||||
if test "$yap_cv_lam" = "yes" ; then
|
||||
if test -e /usr/lib/openmpi; then
|
||||
CPPFLAGS="$CPPFLAGS -I/usr/lib/openmpi/include"
|
||||
LDFLAGS="$LDFLAGS -L/usr/lib/openmpi/lib"
|
||||
fi
|
||||
fi
|
||||
if test "$yap_cv_lam" != "no" ; then
|
||||
OLD_CC=${CC}
|
||||
CC=${LAM_MPI_CC}
|
||||
AC_CHECK_HEADER(mpi.h, LAMOBJS=yap_mpi."$SO", LAMOBJS="")
|
||||
AC_CHECK_HEADER(mpi.h)
|
||||
CC=${OLD_CC}
|
||||
fi
|
||||
|
||||
MPI_OBJS=
|
||||
if test "$yap_cv_mpi" != "no"
|
||||
then
|
||||
OLD_CC=${CC}
|
||||
CC=${MPI_CC}
|
||||
AC_CHECK_LIB(mpi,MPI_Init,
|
||||
[AC_DEFINE(HAVE_LIBMPI, 1)],
|
||||
[AC_DEFINE(HAVE_LIBMPI, 0)])
|
||||
if test "$ac_cv_lib_mpi_MPI_Init" = yes
|
||||
then
|
||||
#YAPMPILIB=YapMPI.a
|
||||
MPI_OBJS=mpi.o
|
||||
else
|
||||
AC_CHECK_LIB(mpich,MPI_Init,
|
||||
[AC_DEFINE(HAVE_LIBMPICH, 1)],
|
||||
[AC_DEFINE(HAVE_LIBMPICH, 0)])
|
||||
if test "$ac_cv_lib_mpich_MPI_Init" = yes
|
||||
then
|
||||
#YAPMPILIB=YapMPI.a
|
||||
MPI_OBJS=mpi.o
|
||||
else
|
||||
#YAPMPILIB=
|
||||
MPI_CC=${CC}
|
||||
fi
|
||||
fi
|
||||
AC_CHECK_HEADERS(mpi.h)
|
||||
CC=${OLD_CC}
|
||||
else
|
||||
# MPI_CC=${MPI_CC}
|
||||
MPI_CC=${CC}
|
||||
fi
|
||||
|
||||
|
||||
MPI_LIBS=
|
||||
if test "$yap_cv_mpi" != "no" -a "$yap_cv_mpe" != "no"
|
||||
then
|
||||
OLD_CC=${CC}
|
||||
CC=${MPI_CC}
|
||||
AC_CHECK_LIB(mpe,MPE_Init_log,
|
||||
[AC_DEFINE(HAVE_LIBMPE, 1)],
|
||||
[AC_DEFINE(HAVE_LIBMPE, 0)])
|
||||
if test "$ac_cv_lib_mpe_MPE_Init_log" = yes
|
||||
then
|
||||
MPI_LIBS="-lmpe"
|
||||
MPI_OBJS="$MPI_OBJS mpe.o"
|
||||
fi
|
||||
AC_CHECK_HEADERS(mpe.h)
|
||||
CC=${OLD_CC}
|
||||
fi
|
||||
|
||||
|
||||
|
||||
if test ! "$yap_cv_cplint" = "no"
|
||||
then
|
||||
if test ! "$yap_cv_cplint" = "yes"
|
||||
@ -1562,14 +1587,6 @@ AC_SUBST(ZLIB_INSTALL)
|
||||
|
||||
fi
|
||||
|
||||
dnl LAM
|
||||
OLD_CC=${CC}
|
||||
CC=${LAM_MPI_CC}
|
||||
AC_CHECK_LIB([lam], [main],
|
||||
LAMOBJS=yap_mpi."$SO",
|
||||
LAMOBJS=no)
|
||||
CC=${OLD_CC}
|
||||
|
||||
dnl Checks for header files.
|
||||
AC_HEADER_STDC
|
||||
AC_HEADER_SYS_WAIT
|
||||
@ -1577,7 +1594,7 @@ AC_CHECK_HEADERS(arpa/inet.h alloca.h crypt.h)
|
||||
AC_CHECK_HEADERS(ctype.h direct.h dirent.h dlfcn.h)
|
||||
AC_CHECK_HEADERS(errno.h execinfo.h fcntl.h fenv.h)
|
||||
AC_CHECK_HEADERS(float.h fpu_control.h ieeefp.h io.h limits.h)
|
||||
AC_CHECK_HEADERS(locale.h malloc.h math.h memory.h mpi.h)
|
||||
AC_CHECK_HEADERS(locale.h malloc.h math.h memory.h)
|
||||
AC_CHECK_HEADERS(netdb.h netinet/in.h netinet/tcp.h pwd.h regex.h)
|
||||
AC_CHECK_HEADERS(siginfo.h signal.h stdarg.h stdint.h string.h stropts.h)
|
||||
AC_CHECK_HEADERS(sys/conf.h sys/dir.h sys/file.h)
|
||||
@ -1607,8 +1624,6 @@ then
|
||||
AC_CHECK_HEADERS( readline/history.h)
|
||||
AC_CHECK_FUNCS( rl_completion_matches rl_clear_pending_input rl_cleanup_after_signal rl_event_hook rl_filename_completion_function rl_free_line_state rl_insert_close rl_set_prompt rl_state_initialized )
|
||||
fi
|
||||
AC_CHECK_HEADERS(mpi.h)
|
||||
AC_CHECK_HEADERS(mpe.h)
|
||||
|
||||
dnl Checks for typedefs, structures, and compiler characteristics.
|
||||
AC_C_INLINE
|
||||
@ -1751,9 +1766,10 @@ AC_SUBST(ENABLE_CUDD)
|
||||
AC_SUBST(CUDD_LDFLAGS)
|
||||
AC_SUBST(CUDD_CPPFLAGS)
|
||||
AC_SUBST(ENABLE_MINISAT)
|
||||
AC_SUBST(ENABLE_YAPR)
|
||||
AC_SUBST(YAPR_INCLUDES)
|
||||
AC_SUBST(EXTRA_LIBS_FOR_R)
|
||||
AC_SUBST(ENABLE_REAL)
|
||||
AC_SUBST(REAL_TARGET)
|
||||
AC_SUBST(REAL_INCLUDES)
|
||||
AC_SUBST(REAL_LIBS)
|
||||
AC_SUBST(INSTALL_MATLAB)
|
||||
AC_SUBST(MATLAB_INCLUDE)
|
||||
AC_SUBST(INSTALL_PRISM)
|
||||
@ -2265,7 +2281,7 @@ mkdir -p packages/ProbLog/simplecudd
|
||||
mkdir -p packages/ProbLog/simplecudd_lfi
|
||||
mkdir -p packages/R
|
||||
mkdir -p packages/RDF
|
||||
mkdir -p packages/YapR
|
||||
mkdir -p packages/real
|
||||
mkdir -p packages/semweb
|
||||
mkdir -p packages/sgml
|
||||
mkdir -p packages/zlib
|
||||
@ -2343,7 +2359,7 @@ fi
|
||||
|
||||
if test "$ENABLE_ZLIB" = ""; then
|
||||
AC_CONFIG_FILES([packages/zlib/Makefile])
|
||||
fi
|
||||
fi
|
||||
|
||||
if test "$ENABLE_CUDD" = ""; then
|
||||
AC_CONFIG_FILES([packages/ProbLog/simplecudd/Makefile])
|
||||
@ -2355,8 +2371,8 @@ AC_CONFIG_FILES([packages/swi-minisat2/Makefile])
|
||||
AC_CONFIG_FILES([packages/swi-minisat2/C/Makefile])
|
||||
fi
|
||||
|
||||
if test "$ENABLE_YAPR" = ""; then
|
||||
AC_CONFIG_FILES([packages/YapR/Makefile])
|
||||
if test "$ENABLE_REAL" = ""; then
|
||||
AC_CONFIG_FILES([packages/real/Makefile])
|
||||
fi
|
||||
|
||||
if test "$ENABLE_CLPBN_BP" = ""; then
|
||||
|
@ -589,6 +589,10 @@ extern X_API int *PROTO(YAP_Argv,(char ***));
|
||||
|
||||
extern X_API YAP_tag_t PROTO(YAP_TagOfTerm,(YAP_Term));
|
||||
|
||||
extern X_API int PROTO(YAP_ExportTerm,(YAP_Term, char *, size_t));
|
||||
|
||||
extern X_API YAP_Term PROTO(YAP_ImportTerm,(char *));
|
||||
|
||||
#define YAP_InitCPred(N,A,F) YAP_UserCPredicate(N,F,A)
|
||||
|
||||
__END_DECLS
|
||||
|
@ -129,15 +129,15 @@ change_buffer_size(const size_t newsize) {
|
||||
* Function used by YAP to write a char to a string
|
||||
*/
|
||||
static void
|
||||
p2c_putc(const int c) {
|
||||
p2c_putt(const YAP_Term t) {
|
||||
// if( buffer.size==buffer.len+1 )
|
||||
if( BUFFER_SIZE==BUFFER_LEN ) {
|
||||
|
||||
while ((BUFFER_LEN=YAP_ExportTerm(t, BUFFER_PTR, BUFFER_SIZE)) <= 0) {
|
||||
#ifdef DEBUG
|
||||
write_msg(__FUNCTION__,__FILE__,__LINE__,"p2c_putc:buffer expanded: size=%u pos=%u len=%u\n",BUFFER_SIZE,BUFFER_POS,BUFFER_LEN);
|
||||
write_msg(__FUNCTION__,__FILE__,__LINE__,"p2c_putc:buffer expanded: size=%u pos=%u len=%u\n",BUFFER_SIZE,BUFFER_POS,BUFFER_LEN);
|
||||
#endif
|
||||
expand_buffer( BLOCK_SIZE );
|
||||
}
|
||||
BUFFER_PTR[BUFFER_LEN++] = c;
|
||||
}
|
||||
/*
|
||||
* Function used by YAP to read a char from a string
|
||||
@ -149,12 +149,7 @@ size_t
|
||||
write_term_to_stream(const int fd,const YAP_Term term) {
|
||||
|
||||
RESET_BUFFER;
|
||||
|
||||
YAP_Write( term, p2c_putc, 3); // 3=canonical
|
||||
if (write(fd,(void*)&BUFFER_LEN,sizeof(size_t)) < 0) {// write size of term
|
||||
YAP_Error(0,0,"Prolog2Term: IO error in write term size.\n");
|
||||
return -1;
|
||||
}
|
||||
p2c_putt(term);
|
||||
if (write(fd,(void*)BUFFER_PTR,BUFFER_LEN) < 0) { // write term
|
||||
YAP_Error(0,0,"Prolog2Term: IO error in write.\n");
|
||||
return -1;
|
||||
@ -170,7 +165,9 @@ read_term_from_stream(const int fd) {
|
||||
size_t size;
|
||||
|
||||
RESET_BUFFER;
|
||||
read(fd,(void*)&size,sizeof(size_t)); // read the size of the term
|
||||
if (!read(fd,(void*)&size,sizeof(size_t))) { // read the size of the term
|
||||
YAP_Error(0,0,"Prolog2Term: IO error in read.\n");
|
||||
}
|
||||
#ifdef DEBUG
|
||||
write_msg(__FUNCTION__,__FILE__,__LINE__,"read_term_from_stream>>>>size:%d\n",size);
|
||||
#endif
|
||||
@ -179,7 +176,7 @@ read_term_from_stream(const int fd) {
|
||||
if (!read(fd,BUFFER_PTR,size)) {
|
||||
YAP_Error(0,0,"Prolog2Term: IO error in read.\n");
|
||||
}; // read term from stream
|
||||
return YAP_ReadBuffer( BUFFER_PTR , NULL);
|
||||
return YAP_ImportTerm( BUFFER_PTR);
|
||||
}
|
||||
/*********************************************************************************************
|
||||
* Conversion: Prolog Term->char[] and char[]->Prolog Term
|
||||
@ -195,8 +192,8 @@ term2string(char *const ptr,size_t *size, const YAP_Term t) {
|
||||
|
||||
RESET_BUFFER;
|
||||
|
||||
YAP_Write( t, p2c_putc, 3 );// canonical
|
||||
p2c_putc('\0'); //add terminator
|
||||
|
||||
BUFFER_LEN = YAP_ExportTerm( t, ptr, *size );// canonical
|
||||
|
||||
if (BUFFER_LEN<=*size) { // user allocated buffer size is ok
|
||||
memcpy(ptr,BUFFER_PTR,BUFFER_LEN); // copy data to user block
|
||||
@ -230,7 +227,7 @@ string2term(char *const ptr,const size_t *size) {
|
||||
b.ptr=NULL;
|
||||
}
|
||||
BUFFER_POS=0;
|
||||
t = YAP_ReadBuffer( BUFFER_PTR , NULL );
|
||||
t = YAP_ImportTerm( BUFFER_PTR );
|
||||
if ( t==FALSE ) {
|
||||
write_msg(__FUNCTION__,__FILE__,__LINE__,"FAILED string2term>>>>size:%d %d %s\n",BUFFER_SIZE,strlen(BUFFER_PTR),NULL);
|
||||
exit(1);
|
||||
|
@ -1 +0,0 @@
|
||||
Subproject commit 59bde900ae05256190a1a74576541845993a0e1e
|
BIN
packages/prism/exs/alarm.psm.out
Normal file
BIN
packages/prism/exs/alarm.psm.out
Normal file
Binary file not shown.
BIN
packages/prism/exs/plc.psm.out
Normal file
BIN
packages/prism/exs/plc.psm.out
Normal file
Binary file not shown.
@ -1 +1 @@
|
||||
Subproject commit b036f924cf96468b0e540d0d3050a64df6687d31
|
||||
Subproject commit 06baa8a9663d092266b174cb9a4628dbc937d253
|
Reference in New Issue
Block a user