[J-core] [musl] Re: [musl] updated cross-compiler build system
Szabolcs Nagy
nsz at port70.net
Sun May 1 17:55:22 EDT 2016
* Rich Felker <dalias at libc.org> [2016-05-01 13:15:55 -0400]:
> On Sun, May 01, 2016 at 05:38:04PM +0200, Szabolcs Nagy wrote:
> > changed $$(LC_ROOT) to $${LC_ROOT} because it seems to
> > be passed to bash in config.status (as $$(, \$( and $(
> > and the last one executes LC_ROOT as a command, this
> > might be an autoconf bug: it does not escape the args
> > correctly)
>
> I noticed that too but didn't get around to looking into the details
> since nothing broke. The whole point though is to _avoid_ it getting
> expanded in places like config.status -- I was trying to keep the
> absolute path to the top-level dir from getting saved anywhere in the
> build tree, so that it can safely be moved. Do you know if your change
> preserves this property?
>
the only difference i see is the --with-build-sysroot in
gcc -v output has abs path in my version, but otherwise
strings gcc |grep / has the same output.
> > for me make fails in bfd/doc despite MAKINFO=false, but
> > the export AM_MAKEFLAGS=INFO_DEPS= hack fixed it.
>
> Uhg, yes, I just installed texinfo on my VPS and forgot to check the
> case where it's missing.
>
this hack is not ok in general as Makefile.am might
have its own AM_MAKEFLAGS.
> > $(MAKE) -C ../src_linux headers_install ARCH=$$A \
> > CROSS_COMPILE=$(DESTDIR)$(OUTPUT)/$(TARGET)- \
> > INSTALL_HDR_PATH=$(DESTDIR)$(OUTPUT)/$(TARGET)
>
> AFAIK you don't need CROSS_COMPILE= to install headers, and in
> principle it shouldn't be there because the install targets are not
> intended to depend on each other. But you do need to install to a
> staging dir and then copy to the final dest; the broken
> headers_install target in Linux rm's the scsi headers (eew) provided
> by libc and fails to provide replacements.
>
i see
> > @@ -55,13 +55,13 @@ src_musl: | $(MUSL_SRCDIR)
> > ln -sf $(MUSL_SRCDIR) $@
> >
> > src_gmp: | $(GMP_SRCDIR)
> > - ln -sf "$(GMP_SRCDIR)" $@
> > + ln -sf $(GMP_SRCDIR) $@
> >
> > src_mpc: | $(MPC_SRCDIR)
> > - ln -sf "$(MPC_SRCDIR)" $@
> > + ln -sf $(MPC_SRCDIR) $@
> >
> > -src_mpfr: | $(GMP_SRCDIR)
> > - ln -sf "$(MPFR_SRCDIR)" $@
> > +src_mpfr: | $(MPFR_SRCDIR)
> > + ln -sf $(MPFR_SRCDIR) $@
>
> The dep was wrong, but the quoting was intentional, albeit untested.
> The idea was to make broken symlinks that would then ENOENT out if the
> caller does not want to provide these libs (i.e. wants to use the
> system ones). But apparently symlink(2) fails with ENOENT in this
> case, so I need a new solution...
i see
More information about the J-core
mailing list