On Thu, Sep 01, 2016 at 11:34:55AM +0200, Sebastien Marie wrote:
> On Thu, Sep 01, 2016 at 10:17:34AM +0200, Antoine Jacoutot wrote:
> > > [...]
> > >
> > > Log message:
> > > Update to rust 1.11.0, from semarie@, thanks!
> > > All tests passing here.
> > 
> > Did not build here.
> > 
> > [...]
> > configure: CFG_ENABLE_LOCAL_RUST := 1 
> > configure: error: no local rust to use
> > ===> Exiting lang/rust with an error
> > which: rustc: Command not found.
> > *** Error 1 in lang/rust 
> > (/exopi-cvs/ports/infrastructure/mk/bsd.port.mk:2656 
> > '/exopi-obj/pobj/rust-1.11.0/build-amd64/.configure_done')
> > *** Error 1 in lang/rust 
> > (/exopi-cvs/ports/infrastructure/mk/bsd.port.mk:2397 'configure')
> > *** Error 1 in /exopi-cvs/ports (infrastructure/mk/bsd.port.subdir.mk:147 
> > 'configure')
> > Error: job failed 256
> > 
> 
> My bad.
> 
> The following diff should solve the issue.
> 
> When using --enable-local-rebuild option, the configure script will
> check the existence of rustc binary from the local-rust-root directory
> (/usr/local by default). It is the binary the build process will copy in
> stage0 directory.
> 
> With the diff, we explicity use the bootstrap directory for configuring.
> Note that we still we manually copying all the bootstrap files in
> post-configure, as the standard build system will *not* copy the
> libraries in lib/ which could be required to run rustc binary
> (libraries like libc.so used by bootstrapper).
> 
> I have only slightly tested the diff (checked it pass configure stage
> when rustc isn't already installed). I am currently rebuilding it with
> proot/dpb environment for futher testing.

Thanks ;-)
I committed it, so far so good.



> -- 
> Sebastien Marie
> 
> 
> Index: Makefile
> ===================================================================
> RCS file: /cvs/ports/lang/rust/Makefile,v
> retrieving revision 1.27
> diff -u -p -r1.27 Makefile
> --- Makefile  31 Aug 2016 08:33:19 -0000      1.27
> +++ Makefile  1 Sep 2016 09:22:13 -0000
> @@ -10,6 +10,7 @@ COMMENT-doc =               html documentation for ru
>  V =                  1.11.0
>  BV =                 1.11.0-20160819
>  DISTNAME =           rustc-${V}-src
> +REVISION =           0
>  
>  #RUST_HASH !=                echo -n ${V} | md5 | cut -c1-8
>  RUST_HASH =          39b92f95
> @@ -88,7 +89,8 @@ CONFIGURE_ARGS +=   --disable-valgrind-rpa
>  
>  # VERSION and BOOTSTRAP are same version
>  .if ${V} == ${BV:C/-[0-9]+$//}
> -CONFIGURE_ARGS +=    --enable-local-rebuild
> +CONFIGURE_ARGS +=    --enable-local-rebuild \
> +                     
> --local-rust-root="${WRKDIR}/rustc-bootstrap-${MACHINE_ARCH}-${BV}"
>  .endif
>  
>  CONFIGURE_ENV +=     ac_cv_header_execinfo_h=no
> @@ -111,7 +113,7 @@ pre-configure:
>  # - copy libestdc++ from MODGCC4 to specific directory
>  #   in order to disambiguate version linking (having multiple libestdc++
>  #   at build time)
> -# - copy bootstrap in stage0 (avoid downloading)
> +# - copy bootstrap in stage0 (permit copying bootstrapped libs in stage0)
>  post-configure:
>  .for _v in CFG_CURL CFG_GIT CFG_CLANG CFG_VALGRIND CFG_PERF CFG_ISCC \
>       CFG_JAVAC CFG_ANTLR4 CFG_BISON CFG_PANDOC CFG_GDB CFG_LLDB \

-- 
Antoine

Reply via email to