From: Adam Chlipala Date: Sun, 27 Sep 2009 17:02:49 +0000 (+0000) Subject: Make dynamic linking smarter, so this stuff works before running 'make install' X-Git-Tag: release_2010-11-19~8 X-Git-Url: https://git.hcoop.net/hcoop/domtool2.git/commitdiff_plain/647341320ad5c91704b05de3dbbf6222d6ed063c?hp=b708154ac8ac17e9ffa32c75e7fd4e0d54435f4c;ds=sidebyside Make dynamic linking smarter, so this stuff works before running 'make install' --- diff --git a/openssl/mlton/libssl-h.sml b/openssl/mlton/libssl-h.sml index 7bf5f0b..891158b 100644 --- a/openssl/mlton/libssl-h.sml +++ b/openssl/mlton/libssl-h.sml @@ -1,7 +1,10 @@ structure LibsslH = struct local + val global = "/usr/local/lib/openssl_sml.so" + val locl = "openssl/openssl_sml.so" + val lh = DynLinkage.open_lib - { name = "/usr/local/lib/openssl_sml.so", global = true, lazy = true } + { name = if Posix.FileSys.access (global, []) then global else locl, global = true, lazy = true } handle DynLinkage.DynLinkError s => raise Fail s in fun libh s = let diff --git a/openssl/smlnj/libssl-h.sml b/openssl/smlnj/libssl-h.sml index 7bf5f0b..891158b 100644 --- a/openssl/smlnj/libssl-h.sml +++ b/openssl/smlnj/libssl-h.sml @@ -1,7 +1,10 @@ structure LibsslH = struct local + val global = "/usr/local/lib/openssl_sml.so" + val locl = "openssl/openssl_sml.so" + val lh = DynLinkage.open_lib - { name = "/usr/local/lib/openssl_sml.so", global = true, lazy = true } + { name = if Posix.FileSys.access (global, []) then global else locl, global = true, lazy = true } handle DynLinkage.DynLinkError s => raise Fail s in fun libh s = let diff --git a/pcre/mlton/libpcre-h.sml b/pcre/mlton/libpcre-h.sml index 356df39..3412cf6 100644 --- a/pcre/mlton/libpcre-h.sml +++ b/pcre/mlton/libpcre-h.sml @@ -1,7 +1,10 @@ structure LibpcreH = struct local + val global = "/usr/local/lib/pcre_sml.so" + val locl = "openssl/pcre_sml.so" + val lh = DynLinkage.open_lib - { name = "/usr/local/lib/pcre_sml.so", global = true, lazy = true } + { name = if Posix.FileSys.access (global, []) then global else locl, global = true, lazy = true } handle DynLinkage.DynLinkError s => raise Fail s in fun libh s = let diff --git a/pcre/smlnj/libpcre-h.sml b/pcre/smlnj/libpcre-h.sml index 356df39..3412cf6 100644 --- a/pcre/smlnj/libpcre-h.sml +++ b/pcre/smlnj/libpcre-h.sml @@ -1,7 +1,10 @@ structure LibpcreH = struct local + val global = "/usr/local/lib/pcre_sml.so" + val locl = "openssl/pcre_sml.so" + val lh = DynLinkage.open_lib - { name = "/usr/local/lib/pcre_sml.so", global = true, lazy = true } + { name = if Posix.FileSys.access (global, []) then global else locl, global = true, lazy = true } handle DynLinkage.DynLinkError s => raise Fail s in fun libh s = let