#**********************************
# Mosel examples makefile         *
#                                 *
# (c) 2008 Fair Isaac Corporation *
#     author: Y. Colombani, 2004  *
#**********************************
.SUFFIXES: .bim .mos .dso .java .class

CFLAGS-linux=-m64 -D_REENTRANT -fpic -pthread
CFLAGS-linux-gnu=$(CFLAGS-linux)
CFLAGS-mklinux=$(CFLAGS-linux)
CFLAGS-linux-aarch64=-D_REENTRANT -fpic -pthread
CFLAGS-solaris=-m64 -D_REENTRANT -Kpic
CFLAGS-hpux=+Z +DD64 -D_POSIX_C_SOURCE=199506L
CFLAGS-aix=-q64 -D_THREAD_SAFE
CFLAGS-darwin=-m64
CFLAGS=-g $(CFLAGS-$(OSTYPE)) -I$(MOSEL)/include -I$(XPRESSDIR)/include

LDFLAGS-hpux=-Wl,+s
LDFLAGS-aix=-brtl -bnolibpath
LDFLAGS=$(LDFLAGS-$(OSTYPE)) -L$(MOSEL)/lib -L$(XPRESSDIR)/lib

MAKEDSO-linux=$(CC) -m64 -pthread -shared
MAKEDSO-linux-gnu=$(MAKEDSO-linux)
MAKEDSO-mklinux=$(MAKEDSO-linux)
MAKEDSO-linux-aarch64=$(CC) -pthread -shared
MAKEDSO-solaris=$(LD) -G
MAKEDSO-hpux=$(LD) -b +s
MAKEDSO-aix=$(CC) -G -q64 -brtl -bnolibpath
MAKEDSO-darwin=$(CC) -m64 -dynamiclib
MAKEDSO=$(MAKEDSO-$(OSTYPE))

LOADLIBES=-lxprm_mc -lxprm_rt -lpthread

.c:
	$(CC) $(CFLAGS) $(LDFLAGS) $< $(LOADLIBES) -o $*

.c.dso:
	$(CC) -c $(CFLAGS) $<
	$(MAKEDSO) $*.o -o $*.dso

.mos.bim:
	mosel compile -g '$*'

.java.class:
	javac -classpath $(MOSEL)/lib/xprm.jar:$(XPRESSDIR)/lib/xprm.jar:. $*.java
