91 lines
2.3 KiB
Makefile
91 lines
2.3 KiB
Makefile
|
#
|
||
|
# default base directory for YAP installation
|
||
|
# (EROOT for architecture-dependent files)
|
||
|
#
|
||
|
prefix = @prefix@
|
||
|
exec_prefix = @exec_prefix@
|
||
|
ROOTDIR = $(prefix)
|
||
|
EROOTDIR = @exec_prefix@
|
||
|
abs_top_builddir = @abs_top_builddir@
|
||
|
#
|
||
|
# where the binary should be
|
||
|
#
|
||
|
BINDIR = $(EROOTDIR)/bin
|
||
|
#
|
||
|
# where YAP should look for libraries
|
||
|
#
|
||
|
LIBDIR=@libdir@
|
||
|
YAPLIBDIR=@libdir@/Yap
|
||
|
#
|
||
|
# where YAP should look for architecture-independent Prolog libraries
|
||
|
#
|
||
|
SHAREDIR=$(ROOTDIR)/share
|
||
|
#
|
||
|
#
|
||
|
CXX=@CXX@
|
||
|
CFLAGS= @SHLIB_CFLAGS@ $(YAP_EXTRAS) $(DEFS) -I$(srcdir) -I../.. -I$(srcdir)/../../include $(CPPFLAGS)
|
||
|
CXXFLAGS= @SHLIB_CXXFLAGS@ $(YAP_EXTRAS) $(DEFS) -I$(srcdir) -I../.. -I$(srcdir)/../../include $(CPPFLAGS)
|
||
|
#
|
||
|
#
|
||
|
# You shouldn't need to change what follows.
|
||
|
#
|
||
|
INSTALL=@INSTALL@
|
||
|
INSTALL_DATA=@INSTALL_DATA@
|
||
|
INSTALL_PROGRAM=@INSTALL_PROGRAM@
|
||
|
SHELL=/bin/sh
|
||
|
RANLIB=@RANLIB@
|
||
|
srcdir=@srcdir@
|
||
|
SO=@SO@
|
||
|
#4.1VPATH=@srcdir@:@srcdir@/OPTYap
|
||
|
CWD=$(PWD)
|
||
|
#
|
||
|
|
||
|
OBJS=gecode_yap.o
|
||
|
SOBJS=gecode_yap.@SO@
|
||
|
|
||
|
CODEGEN=$(srcdir)/code-generator.py
|
||
|
DISJUNCTOR = -DDISJUNCTOR
|
||
|
PYTHON = @PYTHON@
|
||
|
export PYTHONPATH:=$(srcdir):$(PYTHONPATH)
|
||
|
|
||
|
all: $(SOBJS) gecode.yap
|
||
|
|
||
|
gecode_yap.o: \
|
||
|
$(srcdir)/gecode_yap.cc \
|
||
|
$(srcdir)/gecode-common.icc \
|
||
|
gecode_yap_cc_impl_auto_generated.icc \
|
||
|
gecode_yap_cc_init_auto_generated.icc \
|
||
|
gecode_yap_cc_forward_auto_generated.icc \
|
||
|
$(srcdir)/disjunctor.icc \
|
||
|
$(srcdir)/disjunctor.hh
|
||
|
$(CXX) -c $(CXXFLAGS) $(DISJUNCTOR) -o $@ $<
|
||
|
|
||
|
@DO_SECOND_LD@gecode_yap.@SO@: gecode_yap.o
|
||
|
@DO_SECOND_LD@ @SHLIB_LD@ -o gecode_yap.@SO@ gecode_yap.o $(LDFLAGS) -lgecodeint -lgecodeset -lgecodesearch @EXTRA_LIBS_FOR_DLLS@
|
||
|
|
||
|
gecode_yap_cc_init_auto_generated.icc: $(CODEGEN)
|
||
|
$(PYTHON) $< -t yap-cc-init -s $(srcdir) > $@
|
||
|
|
||
|
gecode_yap_cc_impl_auto_generated.icc: $(CODEGEN)
|
||
|
$(PYTHON) $< -t yap-cc-impl -s $(srcdir) > $@
|
||
|
|
||
|
gecode_yap_cc_forward_auto_generated.icc: $(CODEGEN)
|
||
|
$(PYTHON) $< -t yap-cc-forward -s $(srcdir) > $@
|
||
|
|
||
|
gecode_yap_auto_generated.yap: $(CODEGEN)
|
||
|
$(PYTHON) $< -t yap-prolog -s $(srcdir) > $@
|
||
|
|
||
|
gecode.yap: $(srcdir)/gecode_yap_hand_written.yap gecode_yap_auto_generated.yap
|
||
|
cat $^ > $@
|
||
|
|
||
|
.PHONY: all clean install
|
||
|
|
||
|
clean:
|
||
|
-rm -f *.o *.so *~ *_auto_generated* gecode.yap *.pyc
|
||
|
|
||
|
install: all
|
||
|
mkdir -p $(DESTDIR)$(YAPLIBDIR)
|
||
|
mkdir -p $(DESTDIR)$(SHAREDIR)/Yap
|
||
|
$(INSTALL_PROGRAM) $(SOBJS) $(DESTDIR)$(YAPLIBDIR)
|
||
|
$(INSTALL) gecode.yap $(DESTDIR)$(SHAREDIR)/Yap
|