mingw-cross-env-list
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Mingw-cross-env-list] Merging MXE Octave - first steps (was What ge


From: Volker Grabsch
Subject: Re: [Mingw-cross-env-list] Merging MXE Octave - first steps (was What gets compiled into DLL by libtool (licencing issues))
Date: Thu, 27 Feb 2014 06:59:11 +0100
User-agent: Mutt/1.5.21 (2010-09-15)

Hello Tony,

I'm not sure if these explainations about the lookup
rules are already part of the docs. If not, I'd suggest
to add them.


Regards,
Volker


Tony Theodore schrieb:
> 
> On 27 Feb 2014, at 06:20, John W. Eaton <address@hidden> wrote:
> 
> > On 02/26/2014 01:01 AM, Tony Theodore wrote:
> >> 
> >> On 26 Feb 2014, at 04:57, John W. Eaton <address@hidden> wrote:
> >> 
> >>> Also, mxe-octave is now using mingw-w64 for both 32- and 64-bit
> >>> systems so we aren't downloading binary bits for the mingw runtime
> >>> libraries.  Are you also headed in that direction?
> >> 
> >> No, we plan to support mingw.org for the foreseeable future, we’ll have 
> >> the new v4 soon and may keep the v3 around if people need it. I hear 
> >> anecdotes that some projects are no longer supporting mingw.org and if 
> >> that turns out to be true, then we can selectively disable the target. If 
> >> you only set the *-w64-* targets, it shouldn’t download the mingw.org 
> >> packages so this shouldn’t have any impact on people using a single 
> >> toolchain.
> > 
> > I'm not sure I understand.  Looking at gcc.mk in MXE, it appears that the 
> > only 32-bit option is mingw.org and downloading mingwrt libraries in binary 
> > form.  Is that correct?  If so, would you consider an option that allows 
> > building the 32-bit compiler from the mingw-w64 project sources?  Or is 
> > that already possible by using the right target for Make?
> 
> I thought I’d elaborate a little. The gcc builds rules are structured around 
> common snippets and substitutions:
> 
> define $(PKG)_BUILD_mingw-w64
>     # build standalone gcc
>     $($(PKG)_CONFIGURE)
>     ...
>     # build mingw-w64-crt
>     ...
>     @gcc-crt-config-opts@
>
>     $($(PKG)_POST_BUILD)
> endef
> 
> $(PKG)_BUILD_x86_64-w64-mingw32 = $(subst 
> @gcc-crt-config-opts@,--disable-lib32,$($(PKG)_BUILD_mingw-w64))
> $(PKG)_BUILD_i686-w64-mingw32   = $(subst 
> @gcc-crt-config-opts@,--disable-lib64,$($(PKG)_BUILD_mingw-w64))
> 
> The above is standard make, but there’s a new package rule lookup that 
> searches for rules in this order:
> 
> $(PKG)_BUILD_i686-w64-mingw32.shared.var1.var2
> $(PKG)_BUILD_i686-w64-mingw32.shared.var1
> $(PKG)_BUILD_i686-w64-mingw32.shared
> $(PKG)_BUILD_i686-w64-mingw32
> $(PKG)_BUILD
> $(PKG)_BUILD_SHARED
> 
> and also does the same for _DEPS, so we have more flexibility around 
> attaching meaning/profiles to var1, var2 etc and can fall back to common 
> rules. We’d use the same mechanism to build the mingw.org crt [1] or add 
> glibc in the future.
> 
> Cheers,
> 
> Tony
> 
> [1] 
> https://github.com/tonytheodore/mxe/blob/bf804bf15e246aa30809b214b5d051c3f90645e8/src/gcc.mk
> 
> 

-- 
Volker Grabsch
---<<(())>>---



reply via email to

[Prev in Thread] Current Thread [Next in Thread]