-all: configDefault/config.sig configDefault/configDefault.sml
+all: configDefault/config.sig configDefault/configDefault.sml \
+ openssl/openssl_sml.so openssl/smlnj/FFI/libssl.h.cm
-.PHONY: all
+.PHONY: all openssl
configDefault/config.sig: src/config.sig.header \
- configDefault/*.cfs src/config.sig.footer
- cat src/config.sig.header \
+ configDefault/*.csg configDefault/*.cfs \
+ src/config.sig.footer
+ cat configDefault/*.csg \
+ src/config.sig.header \
configDefault/*.cfs \
src/config.sig.footer \
>configDefault/config.sig
src/configDefault.sml.footer \
>configDefault/configDefault.sml
+openssl/openssl_sml.o: openssl/openssl_sml.c
+ gcc -fPIC -c openssl/openssl_sml.c -o openssl/openssl_sml.o
+
+openssl/openssl_sml.so: openssl/openssl_sml.o
+ gcc -shared -Wl,-soname,openssl_sml.so \
+ -o openssl/openssl_sml.so \
+ openssl/openssl_sml.o -lssl
+
+openssl/smlnj/FFI/libssl.h.cm: openssl/openssl_sml.h
+ cd openssl/smlnj ; ml-nlffigen -d FFI -lh LibsslH.libh -include ../libssl-h.sml \
+ -cm libssl.h.cm -D__builtin_va_list="void*" \
+ ../openssl_sml.h