On 6 Feb 2014, at 14:28, John W. Eaton <address@hidden> wrote:
I guess I'm a bit confused about why they should be installed in
$(PREFIX)/$(TARGET)/bin if users are not expected to add that directory to
their PATH and Makefiles should be using names like $(TARGET)-gcc for cross
compiler tools.
What I'd like to be able to do is cross compile tools like gcc, bison, etc. and
install those tools in $(PREFIX)/$(TARGET)/bin along with all the other
packages that I'm cross compiling for Windows. That seems to conflict with
putting the cross compiler binaries themselves in $(PREFIX)/$(TARGET)/bin.
Adding:
--exec-prefix='$(PREFIX)/$(BUILD)' \
--bindir='$(PREFIX)/bin’
to binutils.mk seems to create a more logical layout, but I can’t achieve the
same for gcc (without digging too deeply into it’s configuration). A full mxe
install will also put other files in this location, some will be
arch-independent scripts, but some will be binaries that are harder to relocate
(pg_config from memory). The binaries intended to run on Windows can be
separated by their *.exe suffix, it’s not very clean, but may be sufficient.
Is there some other layout that makes sense? MXE can almost bootstrap it's
requirements and logically should be able to also produce a cross-compiled
toolchain in a single tree. The last few commits[1] give us a lot more
flexibility with directory layout and could be used (or extended) to achieve
this.