Incremental rebuild
Forum rules
*******************************
Please be aware we are now using GitHub for issue tracking and feature requests.
- This section of the forum is now closed to new topics.
*******************************
*******************************
Please be aware we are now using GitHub for issue tracking and feature requests.
- This section of the forum is now closed to new topics.
*******************************
-
- Enlightened
- Posts: 103
- Joined: Sat Jan 18, 2014 12:12 am
Incremental rebuild
Hi,
Just curious when trying to compile handbrake using the instruction on the website for Windows I have only 2 options:
1. When a new checkout takes place it builds handbrake and all modules
2. If try to re run it again it asks me to use the --force option in configure or delete the build directory to rebuild it and it rebuilds ALL modules
Is there some way for it only to rebuild modules that have changed (like libavformat, aac etc may not have changed)?
Just curious when trying to compile handbrake using the instruction on the website for Windows I have only 2 options:
1. When a new checkout takes place it builds handbrake and all modules
2. If try to re run it again it asks me to use the --force option in configure or delete the build directory to rebuild it and it rebuilds ALL modules
Is there some way for it only to rebuild modules that have changed (like libavformat, aac etc may not have changed)?
Re: Incremental rebuild
If you want to rebuild libhb and the CLI and/or GUI, just use --force, it'll work fine.
If you want to rebuild a third-party library, you need to clean it first (then rebuild with --force). Do clean a library:
…where <contrib_name> is the name of the library as found in the contrib folder, for example:
If you want to rebuild a third-party library, you need to clean it first (then rebuild with --force). Do clean a library:
Code: Select all
cd build; make <contrib_name>.xclean; cd ..
Code: Select all
cd build; make x264.xclean; cd ..
-
- Enlightened
- Posts: 103
- Joined: Sat Jan 18, 2014 12:12 am
Re: Incremental rebuild
actually the opposite, I DON'T want to rebuild anything except what's changed. What would be the best way do that?
Re: Incremental rebuild
It's fully manual. Only clean the contribs that have changed. libhb and the UIs are always rebuilt, but it takes less than 5% of the overall build time.
-
- Enlightened
- Posts: 103
- Joined: Sat Jan 18, 2014 12:12 am
Re: Incremental rebuild
so using --force is the safest and fastest way right just to rebuild incremental changes after a svn checkout
Re: Incremental rebuild
Technically you can do:
…but re-configuring with --launch --force will give you a nice display of success/fail ands the duration of the rebuild.
Code: Select all
cd build; make
-
- Enlightened
- Posts: 103
- Joined: Sat Jan 18, 2014 12:12 am
Re: Incremental rebuild
right, I'm scripting it so the script will be:
Code: Select all
svn co svn://svn.handbrake.fr/HandBrake/trunk HandBrake
cd HandBrake
./configure --cross=i686-w64-mingw32 --launch-jobs=1 --launch --force
Re: Incremental rebuild
Erm, never tried to update an SVN checkout with a checkout command, usually one uses svn update…
-
- Enlightened
- Posts: 103
- Joined: Sat Jan 18, 2014 12:12 am
Re: Incremental rebuild
yeah I googled that one and I think it works after some recent svn changes, let see in the up coming changes if it works it'll show up in the builds
Re: Incremental rebuild
That being said, every time a contrib gets updated, you will have to clean it before rebuilding (else the contrib won't be rebuilt, and in case of API changes, linking may fail); as I said, it's almost fully manual.
-
- Enlightened
- Posts: 103
- Joined: Sat Jan 18, 2014 12:12 am
Re: Incremental rebuild
Hmm, any chance you have a script that does it all?
-
- Enlightened
- Posts: 103
- Joined: Sat Jan 18, 2014 12:12 am
Re: Incremental rebuild
Okay is there a guide to which all contribs are there as part of handbrake that need to be rebuilt?
-
- Enlightened
- Posts: 103
- Joined: Sat Jan 18, 2014 12:12 am
Re: Incremental rebuild
Actually what I'm doing now is deleting the build folder and then running the above configure command with the --force option. Wouldn't that work to rebuild all modules?
I'm also building ffmpeg using the ffmpeg build helpers script, that's pretty cool it automatically rebuilds all modules IF they have changed and doesn't rebuild if it hasn't. Would be cool to build a similar script for handbrake.
I'm also building ffmpeg using the ffmpeg build helpers script, that's pretty cool it automatically rebuilds all modules IF they have changed and doesn't rebuild if it hasn't. Would be cool to build a similar script for handbrake.
Re: Incremental rebuild
You have to check the SVN update log.ramitbhalla wrote:Okay is there a guide to which all contribs are there as part of handbrake that need to be rebuilt?