On Tue, Jul 2, 2013 at 4:41 PM, Daniel Schürmann <dasch...@mixxx.org> wrote:

> Hi RJ,
>
> Ah cool, Thank you!
>
> This looks like a git alias candidate.
>
> Or is it possible to make scons copy *_build to cache instead of move, if
> there is no previously saved cache/new_work?
>
>
Yea that's a good idea -- SCons could do this easily as it's moving the
stuff around if no *_build and .sconsign.dblite file exist for the new
branch.



> Kind regards,
>
> Daniel
>
>
>
>
> 2013/7/2 RJ Ryan <rr...@mixxx.org>
>
>> As of
>> https://github.com/mixxxdj/mixxx/commit/a47ae69cabbdabcec417e3b268a0d21fafccab1e:
>>
>> .sconsign.branch in the repository root now tells which branch the
>> *_build and .sconsign.dblite files relate to.
>>
>> If .sconsign.branch does not match git's current branch, *_build and
>> .sconsign.dblite are moved to cache/$oldbranch/ and files from
>> cache/$newbranch/ are moved to the root. So if you are on master, your
>> cache/master folder should be empty. I originally tried symlinks and
>> SCons.Environment.SConsignFile but that caused the strange build issues I
>> talk about in the commit message.
>>
>> If you switch to a new branch:
>> $ git checkout -b new_work
>>
>> You can do this:
>>
>> $ mkdir -p cache/new_work
>> $ cp -rf *_build cache/new_work/
>> $ cp .sconsign.dblite cache/new_work/sconsign.dblite
>>
>> (Note the file is .sconsign.dblite in the root but sconsign.dblite in the
>> cache/new_work folder. I probably should have made them the same name for
>> clarity).
>>
>> Then run scons. SCons will move the current *_build and .sconsign.dblite
>> to cache/master and then move the copies from cache/new_work/ to the root.
>> If this is not working for you check to make sure that when you are on a
>> branch (e.g. master) that cache/$branchname is totally empty because the
>> *_build folder and .sconsign.dblite should be in the root.
>>
>> If it's a quick throw-away branch you can also do:
>>
>> $ scons virtualize=0  (reuses existing .sconsign.dblite and *_build
>> folder in the root without moving anything around)
>>
>> and just do virtualize=1 when you switch back to master to turn on build
>> folder virtualization again.
>>
>> On Tue, Jul 2, 2013 at 3:01 PM, Daniel Schürmann <dasch...@mixxx.org>wrote:
>>
>>>  Hi all.
>>>
>>> Is there a way to avoid a complete rebuild when creating a new branch?
>>>
>>> If I do something like this:
>>> $ git checkout -b bugfix1
>>>
>>> scons does a complete rebuild even nothing has changed. This is a great
>>> annoying time eater for me.
>>>
>>> I have tried to copy move the cache/master to cache/bugfix1 but scons
>>> still wants a complete rebuild.
>>>
>>> Any ideas?
>>>
>>> Thank you,
>>>
>>> Daniel
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> ------------------------------------------------------------------------------
>>> This SF.net email is sponsored by Windows:
>>>
>>> Build for Windows Store.
>>>
>>> http://p.sf.net/sfu/windows-dev2dev
>>> _______________________________________________
>>> Get Mixxx, the #1 Free MP3 DJ Mixing software Today
>>> http://mixxx.org
>>>
>>>
>>> Mixxx-devel mailing list
>>> Mixxx-devel@lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/mixxx-devel
>>>
>>
>>
>
------------------------------------------------------------------------------
This SF.net email is sponsored by Windows:

Build for Windows Store.

http://p.sf.net/sfu/windows-dev2dev
_______________________________________________
Get Mixxx, the #1 Free MP3 DJ Mixing software Today
http://mixxx.org


Mixxx-devel mailing list
Mixxx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mixxx-devel

Reply via email to