[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

PSPP-BUG: [bug #60192] make -j4 routinely has issues

From: Friedrich Beckmann
Subject: PSPP-BUG: [bug #60192] make -j4 routinely has issues
Date: Sat, 9 Apr 2022 12:47:28 -0400 (EDT)

Follow-up Comment #10, bug #60192 (project pspp):

Removing the SUBDIRS variable results in replacing "all-recursive" with
"all-am", so already better. But for us this only means that the po directory
will not be build recursively. I had a look at the automake source here:



    my @local_headers = ();
    push @local_headers, '$(BUILT_SOURCES)'
      if var ('BUILT_SOURCES');
    foreach my $spec (@config_headers)
        my ($out, @ins) = split_config_file_spec ($spec);
        push @local_headers, basename ($out)
          if dirname ($out) eq $relative_dir;

    if (@local_headers)
        # We need to make sure config.h is built before we recurse.
        # We also want to make sure that built sources are built
        # before any ordinary 'all' targets are run.  We can't do this
        # by changing the order of dependencies to the "all" because
        # that breaks when using parallel makes.  Instead we handle
        # things explicitly.
        $output_all .= ("all: @local_headers"
                        . "\n\t"
                        . '$(MAKE) $(AM_MAKEFLAGS) '
                        . (var ('SUBDIRS') ? 'all-recursive' : 'all-am')
                        . "\n\n");
        depend ('.MAKE', 'all');
        $output_all .= "all: " . (var ('SUBDIRS')
                                  ? 'all-recursive' : 'all-am') . "\n\n";

which means that we must not have "local-headers". Getting rid of "config.h"
and other "BUILT_SOURCES" will result in a non-recursive setup. Conceptually
those "build sources" could be regular dependencies or am I wrong?


Reply to this item at:


  Message sent via Savannah

reply via email to

[Prev in Thread] Current Thread [Next in Thread]