Skip to content

parallel build with gnu make 4.4 fails #3899

@haampie

Description

@haampie

I seem to get a build issue when using GNU make 4.4 with

'make' 'MAKE_NB_JOBS=0' 'ARCH=x86_64' 'TARGET=ZEN' 'USE_LOCKING=1' 'USE_OPENMP=1' 'USE_THREAD=1' 'libs' 'netlib' 'shared'

with -j16 at the top-level make (openblas is built with a recursive make; not sure if relevant) which fails after some time with

     29      Warning: Possible change of value in conversion from REAL(4) to INTEGER(4) at (1) [-Wconversion]
     30      sgebak.f:253:19:
     31      
     32        253 |                K = SCALE( I )
     33            |                   1
     34      Warning: Possible change of value in conversion from REAL(4) to INTEGER(4) at (1) [-Wconversion]
  >> 35      make[2]: *** No rule to make target '../libopenblas_zenp-r0.3.21.a', needed by '../libopenblas_zenp-r0.3.21.so'.  Stop.
     36      make[2]: Leaving directory '/tmp/user/spack-stage/spack-stage-openblas-0.3.21-rqvfhzdue2wzonslpabua3qssw7t6mu2/spack-src/exports'
  >> 37      make[1]: *** [Makefile:125: shared] Error 2
     38      make[1]: *** Waiting for unfinished jobs....
     39      /home/user/spack/lib/spack/env/gcc/gfortran -O2 -Wall -frecursive -fno-optimize-sibling-calls -m64 -fopenmp -fPIC -msse3 -msse4.1 -mavx -mavx2 -mavx2 -c -o sgebd2.o sgebd2.f
...

Is there anything that jumps out of the changelog that could explain this? https://lists.gnu.org/archive/html/info-gnu/2022-10/msg00008.html.

Maybe this?

Previously each target in a explicit grouped target rule was considered
individually: if the targets needed by the build were not out of date the
recipe was not run even if other targets in the group were out of date. Now
if any of the grouped targets are needed by the build, then if any of the
grouped targets are out of date the recipe is run and all targets in the
group are considered updated.

With GNU make 4.3 everything looks fine.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions