sfeMovie is a simple C++ library that lets you play movies in SFML based applications. It relies on FFmpeg to read medias and remains consistent with SFML's naming conventions.
At the moment there are several limitations to the FFmpeg build:
On Windows running parallel make can make "make.exe" deadlock, so FFmpeg's build is always done with 1 job at a time
When using Makefiles as the sfeMovie generator, FFmpeg is built sequentially to avoid make job count issues if user does "make -jN" on sfeMovie which results in more than N parallel builds as "make.exe" doesn't forward this information to the submake used to build FFmpeg
For point 2, this is a drawback introduced when users tried to do "make -jN" and it failed. It guarantees that it doesn't fail anymore, but it slow down builds a lot on OS X and Linux when choosing Unix makefiles as generator. To fix it cleanly, we'd need to make sure the job count information is correctly forwarded to the submake process. The culprit looks to be the intermediate build_ffmpeg.sh script that lies between the user's make call and the FFmpeg's submake called by this script.
At the moment there are several limitations to the FFmpeg build:
For point 1, Mozilla suggests the use of PyMake: https://developer.mozilla.org/en-US/docs/Mozilla/Developer_guide/Mozilla_build_FAQ They also say this avoid "make.exe" deadlocks with parallel builds. So this could completely fit the needs, at the cost of one more dependency.
For point 2, this is a drawback introduced when users tried to do "make -jN" and it failed. It guarantees that it doesn't fail anymore, but it slow down builds a lot on OS X and Linux when choosing Unix makefiles as generator. To fix it cleanly, we'd need to make sure the job count information is correctly forwarded to the submake process. The culprit looks to be the intermediate build_ffmpeg.sh script that lies between the user's make call and the FFmpeg's submake called by this script.