[FFmpeg-trac] #6939(build system:reopened): make install clean regression

FFmpeg trac at avcodec.org
Fri Jan 24 23:23:36 EET 2020


#6939: make install clean regression
-------------------------------------+-------------------------------------
             Reporter:  cehoyos      |                    Owner:
                 Type:  defect       |                   Status:  reopened
             Priority:  important    |                Component:  build
                                     |  system
              Version:  git-master   |               Resolution:
             Keywords:  regression   |               Blocked By:
             Blocking:               |  Reproduced by developer:  0
Analyzed by developer:  0            |
-------------------------------------+-------------------------------------

Comment (by beastd):

 Wow, I finally understand what magic is happening here. At least I hope
 so.

 I wonder if those commits (the one quoted in the description and the
 similar one that came after):

 * cbe181c8e1611aaee2a85ab522e17b1322bdd4de
 * f960fd2fb1218d49866d0bf47cbf839233fb9904

 were really correct. I mean they completely disable the creation of
 `*.version` files if one of the make command's goals were config or
 anything that ends in clean.

 The `-include` is triggering the generation of the `*.version` files. To
 be exact the `DOSUBDIR`-loop in the main Makefile includes all library.mak
 for all sub directories which in turn includes the corresponding
 `lib<name>.version` which if it couldn't be included at first will be
 created and included.
 See [https://www.gnu.org/software/make/manual/html_node/Include.html GNU
 Make documenation for include].

 If the only advantage is to hide a few GEN lines, to not generate the
 .version files and saving around half a second for the degenerate case of
 invoking `make clean` on clean directories, I'm not sure we really need
 that. Not entirely sure about the config case. Is that goal for configure
 development? Or when do we need it? Or is it more of a convenience goal
 for re-configuring without having to re-create the command line one used
 in the build before?

--
Ticket URL: <https://trac.ffmpeg.org/ticket/6939#comment:4>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list