mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-27 22:03:31 +01:00
Merge branch 'maint-0.3.4'
This commit is contained in:
commit
028523c801
@ -31,8 +31,9 @@ TESTING_TOR_BINARY=$(top_builddir)/src/or/tor$(EXEEXT)
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
if USE_RUST
|
if USE_RUST
|
||||||
rust_ldadd=$(top_builddir)/src/rust/target/release/@TOR_RUST_STATIC_NAME@ \
|
## this MUST be $(), otherwise am__DEPENDENCIES will not track it
|
||||||
@TOR_RUST_EXTRA_LIBS@
|
rust_ldadd=$(top_builddir)/$(TOR_RUST_LIB_PATH) \
|
||||||
|
$(TOR_RUST_EXTRA_LIBS)
|
||||||
else
|
else
|
||||||
rust_ldadd=
|
rust_ldadd=
|
||||||
endif
|
endif
|
||||||
|
2
changes/rust_cross
Normal file
2
changes/rust_cross
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
o Minor feature (Rust, portability):
|
||||||
|
- Rust cross-compilation is now supported. Closes ticket 25895.
|
25
configure.ac
25
configure.ac
@ -443,6 +443,8 @@ fi
|
|||||||
|
|
||||||
AC_C_BIGENDIAN
|
AC_C_BIGENDIAN
|
||||||
|
|
||||||
|
AC_ARG_VAR([TOR_RUST_TARGET], [Rust target, must be specified when cross-compiling (HOST != BUILD). example: i686-pc-windows-gnu])
|
||||||
|
|
||||||
if test "x$enable_rust" = "xyes"; then
|
if test "x$enable_rust" = "xyes"; then
|
||||||
AC_ARG_VAR([RUSTC], [path to the rustc binary])
|
AC_ARG_VAR([RUSTC], [path to the rustc binary])
|
||||||
AC_CHECK_PROG([RUSTC], [rustc], [rustc],[no])
|
AC_CHECK_PROG([RUSTC], [rustc], [rustc],[no])
|
||||||
@ -508,12 +510,29 @@ if test "x$enable_rust" = "xyes"; then
|
|||||||
dnl For now both MSVC and MinGW rust libraries will output static libs with
|
dnl For now both MSVC and MinGW rust libraries will output static libs with
|
||||||
dnl the MSVC naming convention.
|
dnl the MSVC naming convention.
|
||||||
if test "$bwin32" = "true"; then
|
if test "$bwin32" = "true"; then
|
||||||
TOR_RUST_STATIC_NAME=tor_rust.lib
|
tor_rust_static_name=tor_rust.lib
|
||||||
else
|
else
|
||||||
TOR_RUST_STATIC_NAME=libtor_rust.a
|
tor_rust_static_name=libtor_rust.a
|
||||||
fi
|
fi
|
||||||
|
|
||||||
AC_SUBST(TOR_RUST_STATIC_NAME)
|
AC_CANONICAL_BUILD
|
||||||
|
|
||||||
|
if test -n "$TOR_RUST_TARGET"; then
|
||||||
|
if test "$host" = "$build"; then
|
||||||
|
AC_MSG_ERROR([HOST = BUILD is invalid if TOR_RUST_TARGET is specified, see configure --help for more information.])
|
||||||
|
fi
|
||||||
|
RUST_TARGET_PROP="target = '$TOR_RUST_TARGET'"
|
||||||
|
TOR_RUST_LIB_PATH="src/rust/target/$TOR_RUST_TARGET/release/$tor_rust_static_name"
|
||||||
|
else
|
||||||
|
if test "$host" != "$build"; then
|
||||||
|
AC_MSG_ERROR([TOR_RUST_TARGET must be specified when cross-compiling with Rust enabled.])
|
||||||
|
fi
|
||||||
|
RUST_TARGET_PROP=
|
||||||
|
TOR_RUST_LIB_PATH="src/rust/target/release/$tor_rust_static_name"
|
||||||
|
fi
|
||||||
|
|
||||||
|
AC_SUBST(RUST_TARGET_PROP)
|
||||||
|
AC_SUBST(TOR_RUST_LIB_PATH)
|
||||||
AC_SUBST(CARGO_ONLINE)
|
AC_SUBST(CARGO_ONLINE)
|
||||||
AC_SUBST(RUST_WARN)
|
AC_SUBST(RUST_WARN)
|
||||||
AC_SUBST(RUST_DL)
|
AC_SUBST(RUST_DL)
|
||||||
|
@ -7,5 +7,6 @@
|
|||||||
@RUST_DL@ [source.vendored-sources]
|
@RUST_DL@ [source.vendored-sources]
|
||||||
@RUST_DL@ directory = '@TOR_RUST_DEPENDENCIES@'
|
@RUST_DL@ directory = '@TOR_RUST_DEPENDENCIES@'
|
||||||
|
|
||||||
@RUST_WARN@ [build]
|
[build]
|
||||||
@RUST_WARN@ rustflags = [ "-D", "warnings" ]
|
@RUST_WARN@ rustflags = [ "-D", "warnings" ]
|
||||||
|
@RUST_TARGET_PROP@
|
||||||
|
@ -4,7 +4,7 @@ EXTRA_DIST +=\
|
|||||||
|
|
||||||
EXTRA_CARGO_OPTIONS=
|
EXTRA_CARGO_OPTIONS=
|
||||||
|
|
||||||
src/rust/target/release/@TOR_RUST_STATIC_NAME@: FORCE
|
@TOR_RUST_LIB_PATH@: FORCE
|
||||||
( cd "$(abs_top_builddir)/src/rust" ; \
|
( cd "$(abs_top_builddir)/src/rust" ; \
|
||||||
CARGO_TARGET_DIR="$(abs_top_builddir)/src/rust/target" \
|
CARGO_TARGET_DIR="$(abs_top_builddir)/src/rust/target" \
|
||||||
CARGO_HOME="$(abs_top_builddir)/src/rust" \
|
CARGO_HOME="$(abs_top_builddir)/src/rust" \
|
||||||
@ -22,7 +22,7 @@ distclean-rust:
|
|||||||
rm -rf "$(abs_top_builddir)/src/rust/registry"
|
rm -rf "$(abs_top_builddir)/src/rust/registry"
|
||||||
|
|
||||||
if USE_RUST
|
if USE_RUST
|
||||||
build-rust: src/rust/target/release/@TOR_RUST_STATIC_NAME@
|
build-rust: @TOR_RUST_LIB_PATH@
|
||||||
else
|
else
|
||||||
build-rust:
|
build-rust:
|
||||||
endif
|
endif
|
||||||
|
Loading…
Reference in New Issue
Block a user