1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
|
CLEANFILES = cpp/quantlib_wrap.* csharp/*.cs *.so *.dll \
examples/*.so examples/*.dll examples/*.exe
BUILT_SOURCES = cpp/quantlib_wrap.cpp
if HAVE_MCS
all-local: libNQuantLibc.so NQuantLib.dll
libNQuantLibc.so: cpp/quantlib_wrap.o
g++ -shared cpp/quantlib_wrap.o -o libNQuantLibc.so -lQuantLib
cpp/quantlib_wrap.o: $(BUILT_SOURCES)
g++ -c -fpic $(CXXFLAGS) cpp/quantlib_wrap.cpp -o cpp/quantlib_wrap.o
NQuantLib.dll: $(BUILT_SOURCES)
$(MCS) -nologo -target:library -out:NQuantLib.dll csharp/*.cs
check-local: examples/BermudanSwaption.exe \
examples/EquityOption.exe \
examples/libNQuantLibc.so examples/NQuantLib.dll
./examples/BermudanSwaption.exe
./examples/EquityOption.exe
examples/%.exe: examples/%.cs
$(MCS) -nologo -target:exe -out:$@ -reference:NQuantLib.dll $<
examples/libNQuantLibc.so: libNQuantLibc.so
cd examples && ln -sf ../libNQuantLibc.so
examples/NQuantLib.dll: NQuantLib.dll
cd examples && ln -sf ../NQuantLib.dll
endif
cpp/quantlib_wrap.cpp: ../SWIG/*.i
$(SWIG) -csharp -c++ -I../SWIG -outdir csharp \
-namespace QuantLib -o cpp/quantlib_wrap.cpp quantlib.i
dist-hook: cpp/quantlib_wrap.cpp
mkdir -p $(distdir)/cpp
cp ./cpp/QuantlibWrapper.vcproj $(distdir)/cpp
cp ./cpp/quantlib_wrap.cpp $(distdir)/cpp
cp ./cpp/QuantlibWrapper.h ./cpp/QuantlibWrapper.cpp $(distdir)/cpp
cp ./cpp/stdafx.h $(distdir)/cpp
mkdir -p $(distdir)/csharp
cp ./csharp/NQuantLib.csproj $(distdir)/csharp
cp ./csharp/*.cs $(distdir)/csharp
mkdir -p $(distdir)/examples
cp ./examples/*.csproj $(distdir)/examples
cp ./examples/*.cs $(distdir)/examples
EXTRA_DIST = QuantLib.sln swig.cmd README.txt
|