-
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmk_OSX.sh
executable file
·42 lines (28 loc) · 1.19 KB
/
mk_OSX.sh
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
#!/bin/sh
# have Mono installed: brew install mono
set -xe
export MONO_GAC_PREFIX="/usr/local"
DLLNAME=elykseer-crypto-cs
NAMESPACE=lxr
swig -csharp -dllimport ${DLLNAME} -namespace ${NAMESPACE} md5.i
swig -csharp -dllimport ${DLLNAME} -namespace ${NAMESPACE} key128.i
swig -csharp -dllimport ${DLLNAME} -namespace ${NAMESPACE} key256.i
swig -csharp -dllimport ${DLLNAME} -namespace ${NAMESPACE} sha256.i
swig -csharp -dllimport ${DLLNAME} -namespace ${NAMESPACE} aes.i
VERSION="1.0.1"
LDFLAGS="-L ../../build/src/ -lelykseer-crypto_Debug"
CFLAGS="-Wall -fPIC -O2 -I. -compatibility_version 1.0.1 -current_version ${VERSION}"
CFLAGS_dyn="${CFLAGS} ${LDFLAGS}"
CFLAGS_s="${CFLAGS} ../../build/src/libelykseer-crypto_Debug_s.a ../../ext/cryptopp/libcryptopp.a -lz -lboost_contract -lboost_system"
export MACOSX_DEPLOYMENT_TARGET="10.12.0"
clang ${CFLAGS} -c *_wrap.c
#clang -o lib${DLLNAME}.osx.${VERSION}.dylib -dynamiclib \
# *.o \
# ${CFLAGS_dyn}
clang++ -o lib${DLLNAME}.osx.${VERSION}.dylib -dynamiclib \
*.o \
${CFLAGS_s}
# the real DLL
csc -target:library -out:${DLLNAME}.dll [A-Z]*.cs
# an example program using the DLL
csc -target:exe -out:runme.exe -reference:${DLLNAME}.dll runme.cs