[csw-maintainers] confused with build-global and build-isa...

Jake Goerzen jgoerzen at opencsw.org
Tue Feb 9 20:46:57 CET 2010


On Tue, Feb 9, 2010 at 5:38 AM, Dagobert Michelsen <dam at opencsw.org> wrote:
> Hi Jake,
>
> Am 08.02.2010 um 23:43 schrieb Sebastian Kayser:
>>
>> Jake Goerzen wrote on 08.02.2010 22:52:
>>>
>>> Hello, I want to copy a file from $FILEDIR/ to "where GAR extracted
>>> the source" for example:
>>>
>>> post-extract:
>>>       @cp $(FILEDIR)/Makefile $(WORKDIR)/Makefile
>>>       $(MAKECOOKIE)
>>>
>>>
>>> When I do this the file gets copied to
>>> work/solaris8-sparc/build-global.  however, the source was extracted
>>> to work/solaris8-sparc/build-isa-sparcv8/gkrellm-2.3.4/
>>>
>>> Isn't there a GAR variable that expands to the correct path?  I
>>> thought $WORKDIR was it?
>>
>> should be WORKSRC instead of WORKDIR (see [1]) and I usually use
>> post-extract-modulated, I am not quite sure whether the latter makes a
>> difference though. In case the problem persists, please submit the build
>> recipe so that others can have a look at it.
>
> The rationale is that post-<phase> is called after all modulations
> have been executed. The rule for that is then called post-<phase>-modulated.
> I have been thinking lately that the idea of allowing phase-wide rules
> are bad, mainly because of the independency of modultions to run separately
> and thus breaking sync points. I also talked about that during my
> presentation
> on SummerCamp 2009 in Oslo linked from here:
>  http://sourceforge.net/apps/trac/gar/wiki/Learning%20the%20details
>
> Additionally, everything from FILEDIR is either copied or unpacked to
> $(WORKDIR), so what you supposedly want is
>  cp $(WORKDIR)/Makefile $(WORKSRC)/Makefile

For me $(WORKDIR) expands to (work/solaris8-sparc/build-global) and
$(WORKSRC) expands to
(work/solaris8-sparc/build-global/gkrellm-2.3.4).  However GAR didn't
extract my source here.  GAR extracted my source in:

work/solaris8-sparc/build-isa-sparcv8/gkrellm-2.3.4

Notice build-isa-sparcv8 instead of build-global.  At the moment I
hacked this together and it works:

pre-configure-modulated:
        @cp $(FILEDIR)/Makefile $(WORKROOTDIR)/build-$(MODULATIONS)/$(GARNAME)-$
(GARVERSION)/Makefile
        @cp $(FILEDIR)/src.Makefile $(WORKROOTDIR)/build-$(MODULATIONS)/$(GARNAM
E)-$(GARVERSION)/src/Makefile
        @cp $(FILEDIR)/server.Makefile $(WORKROOTDIR)/build-$(MODULATIONS)/$(GAR
NAME)-$(GARVERSION)/server/Makefile


The full recipe is commited to GAR:
http://sourceforge.net/apps/trac/gar/browser/csw/mgar/pkg/gkrellm/trunk/Makefile


Thanks,
Jake


More information about the maintainers mailing list