cargo hacks

This commit is contained in:
Cody P Schafer
2014-11-25 15:23:17 -05:00
parent c91dfe07fa
commit d91fa8700a
5 changed files with 91 additions and 5 deletions
+2 -2
View File
@@ -5,7 +5,7 @@ CARGO = "cargo"
# Cargo only supports in-tree builds at the moment
B = "${S}"
OECARGO_PATH ??= ""
EXTRA_OECARGO_PATHS ??= ""
oe_cargo_config () {
mkdir -p .cargo
@@ -17,7 +17,7 @@ oe_cargo_config () {
# be used.
echo "paths = [" >.cargo/config
for p in ${OECARGO_PATH}; do
for p in ${EXTRA_OECARGO_PATHS}; do
printf "\"%s\" " "$p"
done | sed -e 's/[ \n]+/,/g' -e 's/,$//' >>.cargo/config
echo "]" >>.cargo/config
+4 -3
View File
@@ -1,4 +1,4 @@
inherit rust
inherit cargo
SUMMARY = "Cargo downloads your Rust project's dependencies and builds your project"
HOMEPAGE = "http://crates.io"
SECTION = "devel"
@@ -13,7 +13,7 @@ LIC_FILES_CHKSUM ="\
file://LICENSE-APACHE;md5=1836efb2eb779966696f473ee8540542 \
file://LICENSE-THIRD-PARTY;md5=afbb7ae0aa70c8e437a007314eae5f3b \
"
SRCREV_FORMAT = "cargo"
SRCREV_FORMAT ?= "cargo"
PV .= "+git${SRCPV}"
S = "${WORKDIR}/git"
@@ -36,7 +36,8 @@ do_configure () {
"--datadir=${datadir}" \
"--infodir=${infodir}" \
"--mandir=${mandir}" \
"--libdir=${libdir}"
"--libdir=${libdir}" \
|| die "Could not configure cargo"
# cargo downloads a cargo snapshot to build itself using cargo, we need
# to override it's arch info.
+13
View File
@@ -0,0 +1,13 @@
SRCREV_cargo = "f936f3543fd1d4f2101cd937a4f52ce9f9676eae"
require cargo.inc
SRC_URI += " \
git://github.com/carllerche/curl-rust.git;protocol=http;name=curl-rust;destsuffix=curl-rust \
file://curl-rust/0001-curl-sys-avoid-explicitly-linking-in-openssl-If-it-.patch;patchdir=../curl-rust \
file://curl-rust//0001-openssl-sys-is-used-in-curl-rust-so-include-it-expli.patch;patchdir=../curl-rust \
"
SRCREV_curl-rust = "c1b96e146f6752353a1e84cca932c628e6bf73af"
SRCREV_FORMAT = "cargo_curl-rust"
EXTRA_OECARGO_PATHS = "${WORKDIR}/curl-rust"
@@ -0,0 +1,48 @@
From b5c97df71c3ed0a6a31281e679cb77440293ef55 Mon Sep 17 00:00:00 2001
From: Cody P Schafer <dev@codyps.com>
Date: Tue, 25 Nov 2014 11:50:28 -0500
Subject: [PATCH] curl-sys: avoid explicitly linking in openssl. If it is
needed, pkgconfig will pull it in
---
curl-sys/Cargo.toml | 14 --------------
curl-sys/lib.rs | 1 -
2 files changed, 15 deletions(-)
diff --git a/curl-sys/Cargo.toml b/curl-sys/Cargo.toml
index 20bb49a..80a320f 100644
--- a/curl-sys/Cargo.toml
+++ b/curl-sys/Cargo.toml
@@ -14,17 +14,3 @@ path = "lib.rs"
[dependencies.libz-sys]
git = "https://github.com/alexcrichton/libz-sys"
-
-# Unix platforms use OpenSSL for now to provide SSL functionality
-[target.i686-apple-darwin.dependencies.openssl-sys]
- git = "https://github.com/sfackler/rust-openssl"
-[target.x86_64-apple-darwin.dependencies.openssl-sys]
- git = "https://github.com/sfackler/rust-openssl"
-[target.i686-unknown-linux-gnu.dependencies.openssl-sys]
- git = "https://github.com/sfackler/rust-openssl"
-[target.x86_64-unknown-linux-gnu.dependencies.openssl-sys]
- git = "https://github.com/sfackler/rust-openssl"
-[target.i686-unknown-freebsd.dependencies.openssl-sys]
- git = "https://github.com/sfackler/rust-openssl"
-[target.x86_64-unknown-freebsd.dependencies.openssl-sys]
- git = "https://github.com/sfackler/rust-openssl"
diff --git a/curl-sys/lib.rs b/curl-sys/lib.rs
index bbfb12c..9cfbb23 100644
--- a/curl-sys/lib.rs
+++ b/curl-sys/lib.rs
@@ -3,7 +3,6 @@
extern crate libc;
extern crate "libz-sys" as libz;
-#[cfg(unix)] extern crate "openssl-sys" as openssl;
use libc::{c_void, c_int, c_char, c_uint, c_long};
--
2.1.3
@@ -0,0 +1,24 @@
From c8c54e266bad3e568f55caea4f061182a0d9fd23 Mon Sep 17 00:00:00 2001
From: Cody P Schafer <dev@codyps.com>
Date: Tue, 25 Nov 2014 12:26:48 -0500
Subject: [PATCH] openssl-sys is used in curl-rust, so include it explicitly
here
---
Cargo.toml | 3 +++
1 file changed, 3 insertions(+)
diff --git a/Cargo.toml b/Cargo.toml
index ba6e748..9e25cd1 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -10,3 +10,6 @@ git = "https://github.com/servo/rust-url"
[dependencies.curl-sys]
path = "curl-sys"
version = "*"
+
+[dependencies.openssl-sys]
+git = "https://github.com/sfackler/rust-openssl"
--
2.1.3