92 lines
2.4 KiB
Makefile
92 lines
2.4 KiB
Makefile
|
#
|
||
|
# default base directory for YAP installation
|
||
|
# (EROOT for architecture-dependent files)
|
||
|
#
|
||
|
prefix = @prefix@
|
||
|
ROOTDIR = $(prefix)
|
||
|
EROOTDIR = @exec_prefix@
|
||
|
#
|
||
|
# where the binary should be
|
||
|
#
|
||
|
BINDIR = $(EROOTDIR)/bin
|
||
|
#
|
||
|
# where YAP should look for libraries
|
||
|
#
|
||
|
LIBDIR=$(EROOTDIR)/lib/Yap
|
||
|
#
|
||
|
#
|
||
|
CC=@CC@
|
||
|
CFLAGS= @CFLAGS@ $(YAP_EXTRAS) $(DEFS) -I$(srcdir) -I../.. -I$(srcdir)/../../include
|
||
|
#
|
||
|
#
|
||
|
# 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@
|
||
|
SHLIB_CFLAGS=@SHLIB_CFLAGS@
|
||
|
SHLIB_SUFFIX=@SHLIB_SUFFIX@
|
||
|
#4.1VPATH=@srcdir@:@srcdir@/OPTYap
|
||
|
CWD=$(PWD)
|
||
|
#
|
||
|
|
||
|
OBJS=yap2swi.o
|
||
|
SOBJS=yap2swi@SHLIB_SUFFIX@
|
||
|
|
||
|
#in some systems we just create a single object, in others we need to
|
||
|
# create a libray
|
||
|
|
||
|
all: @NEWSHOBJ@
|
||
|
|
||
|
sobjs: $(SOBJS)
|
||
|
|
||
|
dll: yap2swi@SHLIB_SUFFIX@
|
||
|
|
||
|
yap2swi.o: $(srcdir)/yap2swi.c
|
||
|
$(CC) -c $(CFLAGS) $(SHLIB_CFLAGS) $(srcdir)/yap2swi.c -o yap2swi.o
|
||
|
|
||
|
@DO_SECOND_LD@@DO_SECOND_LD@%@SHLIB_SUFFIX@: %.o
|
||
|
@DO_SECOND_LD@ @SHLIB_LD@ -o $@ $<
|
||
|
|
||
|
@DO_SECOND_LD@yap2swi@SHLIB_SUFFIX@: yap2swi.o
|
||
|
@DO_SECOND_LD@ @SHLIB_LD@ -o yap2swi@SHLIB_SUFFIX@ yap2swi.o
|
||
|
|
||
|
#
|
||
|
# create a new DLL library on cygwin environments
|
||
|
#
|
||
|
# DLLNAME: name of the new dll
|
||
|
# OBJS: list of object files I want to put in
|
||
|
# LIBS: list of libraries to link with
|
||
|
# DEFFILE is the name of the definitions file.
|
||
|
# BASEFILE temporary
|
||
|
# EXPFILE temporary
|
||
|
# ENTRY is the entry point int WINAPI startup (HINSTANCE, DWORD, LPVOID)
|
||
|
#
|
||
|
DLLTOOL=dlltool
|
||
|
DLLNAME=yap2swi.dll
|
||
|
DLL_LIBS=-L /usr/lib/mingw -lmoldname -lcrtdll -lkernel32 -L../.. -lWYap
|
||
|
BASE_FILE=yap2swi.base
|
||
|
EXP_FILE=yap2swi.exp
|
||
|
DEF_FILE=$(srcdir)/yap2swi.def
|
||
|
ENTRY_FUNCTION=_win_yap2swi@12
|
||
|
#
|
||
|
yap2swi.dll: $(OBJS)
|
||
|
$(LD) -s --base-file $(BASE_FILE) --dll -o $(DLLNAME) $(OBJS) $(DLL_LIBS) -e $(ENTRY_FUNCTION)
|
||
|
$(DLLTOOL) --as=$(AS) --dllname $(DLLNAME) --def $(DEF_FILE) --base-file $(BASE_FILE) --output-exp $(EXP_FILE)
|
||
|
$(LD) -s --base-file $(BASE_FILE) $(EXP_FILE) -dll -o $(DLLNAME) $(OBJS) $(DLL_LIBS) -e $(ENTRY_FUNCTION)
|
||
|
$(DLLTOOL) --as=$(AS) --dllname $(DLLNAME) --def $(DEF_FILE) --base-file $(BASE_FILE) --output-exp $(EXP_FILE)
|
||
|
$(LD) $(EXP_FILE) --dll -o $(DLLNAME) $(OBJS) $(DLL_LIBS) -e $(ENTRY_FUNCTION)
|
||
|
|
||
|
install: all
|
||
|
$(INSTALL_PROGRAM) $(SOBJS) $(DESTDIR)$(LIBDIR)
|
||
|
|
||
|
install_win32: dll
|
||
|
$(INSTALL_PROGRAM) -m 755 yap2swi.dll $(LIBDIR)/yap2swi.dll
|
||
|
|
||
|
clean:
|
||
|
rm -f *.o *~ $(OBJS) $(SOBJS) *.BAK
|
||
|
|