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] setting PKGS does not work


From: Tony Theodore
Subject: Re: [Mingw-cross-env-list] setting PKGS does not work
Date: Thu, 10 May 2012 00:22:10 +1000

On 09/05/2012, at 7:55 PM, Moritz Bunkus wrote:

> Hey,
> 
> alright, setting PKGS does not work on current git master without a
> settings.mk, and my Makefile-Fu is not strong enough to fix it:
> 
> [0 address@hidden (official) ~/prog/video/mingw/cross-git] make
> PKGS='binutils gcc gcc-gmp gcc-mpc gcc-mpfr w32api mingwrt'
> [create settings.mk]
> [build]    gcc
> 
> Failed to build package gcc!
> ------------------------------------------------------------
> make[1]: Entering directory `/home/mosu/prog/video/mingw/cross-git'
> make[1]: warning: jobserver unavailable: using -j1.  Add `+' to parent
> make rule.
> Makefile:199: *** Unknown archive format:
> /home/mosu/prog/video/mingw/cross-git/pkg/.  Stop.
> ...
> 
> (Note that I've downloaded the packages before, therefore that step is
> not listed here)

Hi Mo,

I'm probably not being clear on targets vs variables - mostly because Make 
continues to twist my mind whenever I look into it, and I'm not sure there is a 
real difference :-)

I don't know what the above error is about, but the invocation I was thinking 
of is:

make gcc  gcc_VERSION=x.y.z gcc_CHECKSUM=a1b2c3...
      ^         ^                  ^
    target   variable           variable

When you specify PKGS, you are changing a variable that will potentially mess 
up Make's dependency resolution. Note the target is somewhat orthogonal to the 
variables, you can place a line like:

make -C /path/to/mxe qt wxwidgets gcc_VERSION=4.6.2 
gcc_CHECKSUM=691974613b1c1f15ed0182ec539fa54a12dd6f93

in any shell script (or at the command line), and it will (download and) build:

 -qt, wxwidgets (and all dependencies) - the targets set by the Makefile
 -using gcc 4.6.2 - the over-ridden variables

I may not be explaining it well, but try the above command (with nothing but 
JOBS and/or SOURCEFORGE_MIRROR in settings.mk). The reason I like this approach 
is that you can keep your own minor customisations completely separate. In the 
past, I've often used Volker's "Makefile" as general purpose 
fetch-checksum-build-log tool; it excels at this.

Cheers,

Tony




reply via email to

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