Commit 82db54c8 authored by Manish Goregaokar's avatar Manish Goregaokar
Browse files

Allow passing in Android paths

parent fd680e8a
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -14,6 +14,11 @@ For some reason, the OpenSSL distribution for Windows is structured differently,
1. Run `sudo apt-get install libssl-dev`.
2. Run `cargo build`.

###Android
1. Follow the steps [here](wiki.openssl.org/index.php/Android) to build OpenSSL for android
2. Provide the path to the libssl and libcrypto binaries via `$OPENSSL_PATH`
3. Build the package with `cargo build`

###Windows

1. Grab the latest Win32 OpenSSL installer [here][1]. At the time of this writing, it's v1.0.1i. If you're using 64-bit Rust (coming to Windows soon), then you should get the Win64 installer instead.
+10 −0
Original line number Diff line number Diff line
@@ -17,6 +17,16 @@ fn main() {
        if win_pos.is_some() {
           flags.push_str(" -l gdi32 -l wsock32");
        }

        // Android doesn't have libcrypto/libssl,
        // the toplevel Rust program should compile it themselves
        if target.find_str("android").is_some() {
            os::getenv("OPENSSL_PATH").expect("Android does not provide openssl libraries, please \
                                               build them yourselves (instructions in the README) \
                                               and provide their location through $OPENSSL_PATH.");
            flags.push_str(" -L ${OPENSSL_PATH}");
        }

        println!("cargo:rustc-flags={}", flags);
    }
}