Menu

#317 automake should use 'subdir-objects' option

v1.2
closed-accepted
None
5
2014-08-29
2013-09-29
No

automake 1.14 is forcing to place object files in subdirectories:

automake-1.14: warning: possible forward-incompatibility.
automake-1.14: At least a source file is in a subdirectory, but the 'subdir-objects'
automake-1.14: automake option hasn't been enabled.  For now, the corresponding output
automake-1.14: object file(s) will be placed in the top-level directory.  However,
automake-1.14: this behaviour will change in future Automake versions: they will
automake-1.14: unconditionally cause object files to be placed in the same subdirectory
automake-1.14: of the corresponding sources.
automake-1.14: You are advised to start using 'subdir-objects' option throughout your
automake-1.14: project, to avoid future incompatibilities.

A straightforward fix has been applied in libspectrum ([r5046]) but there are some errors in fuse and fuse-utils when using the command `make distclean'. Apparently automake will not support compiling any file from the same directory from different Makefiles, so the building of compat library needs a refactor.

I've attached patches for fuse and fuse-utils. I'll commit these in a few weeks barring objections.

BTW, the later patch makes fuse-utils use automake in a non-recursive way, which is defended by some authors ([1]). libspectrum already uses the non-recursive method.

[1] http://miller.emu.id.au/pmiller/books/rmch/

2 Attachments

Related

Commit: [r5046]
Patches: #321

Discussion

  • Fredrick Meunier

    I did the non-recursive make for libspectrum and did one for Fuse at the time. I the restructure was slightly controversial at the time but that the libspectrum portion was committed when we encountered a build error it was able to resolve.

    I'd be happy to see the non-recursive version integrated.

     
    • Sergio Baldoví

      Sergio Baldoví - 2013-09-29

      I'd be happy to see the non-recursive version integrated.

      I think it would improve the build time of Fuse on Windows, but that's another battle.

       
  • Sergio Baldoví

    Sergio Baldoví - 2013-10-13
    • status: open --> pending-accepted
     
  • Sergio Baldoví

    Sergio Baldoví - 2013-10-13

    Thanks, committed by [r5055] and [r5056].

     

    Related

    Commit: [r5055]
    Commit: [r5056]

  • Sergio Baldoví

    Sergio Baldoví - 2013-11-17
    • status: pending-accepted --> closed-accepted
     

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.