I do FDO (feedback-directed optimisation aka FDO aka PGO - Profile Guided Optimisation) in mine so I usually build first with fs defined as $ cat fs HandBrake$ ls -hĪUTHORS.markdown CODE_OF_CONDUCT.md CONTRIBUTING.md download gtk macosx pkg scripts THANKS.markdownīuild configure COPYING gccFDO libhb make preset SECURITY.md TRANSLATION.markdownīuild2 contrib fs graphics LICENSE NEWS.markdown README.markdown test win You can override the above by creating a text file configuration called " fs" in the root of the handbrake source folder (if you git cloned it, then the top folder of HandBrake where you basically do your git pull commands). But the latter can contain more! You can see the defaults by checking the report. Since we can't tell easily enough if the many modules are using one or the other or both, I tend to ensure whatever is in the first, is also in the latter. ![]() As you know with gcc, if there's a conflict between options, the last one is used. Which basically 'may' append extra compiler option flags after the former. configure -build=build -optimize=speedĪnother important key in that report is In my case, I chose to configure the build using "speed" previously. It is important to note, there's a hierarchy and inheritance to the above even within each report. Where you replace with the report you want. you can then access the reports by $ make On each line, first column above, you'll see each report. Report.var usage: make report.var name=VARNAME Report.gcc global gcc vars (inherited by module GCC) Let's say you're building HandBrake in a folder called "build" (like the value in the configure command above), then: $ cd. configure -build=build -optimize=speedĮ.g. To get a build directory, you would need to do an initial configuration via. To see how each contrib module is built, you can leverage the "make" reports for each contrib in the build or destination directory, before making them. Handbrake is just a front-end to a LOT of "crontrib". It is recommended to use the built-in configuration mechanism to set the gcc flags. Much of the procedure was deduced and experimented on from the notes described here.Īs described in the link above, using CFLAGS/CXXFLAGS is not recommended to steer the compilation or build. They can benchmark the effort after accomplishing it to prove the assertion. ![]() I answered an issue in GitHub similar to the question I asked and thought the answer would better serve the public with similar issues here at stackexchange, instead of being burried in a github issue ticket.Īlso the observed benefits would serve those willing to go through the effort as well and save them a lot of encode/transcode time. All of the Below was done against Handbrake v1.3.3.
0 Comments
Leave a Reply. |
Details
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |