concurrencykit / ck

Concurrency primitives, safe memory reclamation mechanisms and non-blocking (including lock-free) data structures designed to aid in the research, design and implementation of high performance concurrent systems developed in C99+.
http://concurrencykit.org/
Other
2.34k stars 312 forks source link

Makefile dependency errors #211

Open Meiye-lj opened 10 months ago

Meiye-lj commented 10 months ago

Hi,

We recently conducted a study to detect build dependency errors, focusing on missing and redundant dependencies. Missing dependencies (MDs), are dependencies that are not declared in the build script but will be used in the full build. MDs prevent GNU Make from recompiling programs after they have been modified and regenerating all the targets that contain them, resulting in incorrect incremental builds Redundant dependencies (RDs), are dependencies that are declared in the build script but will not be used in the full build. RDs refer to static build dependencies which declare dependencies that are not the actual build dependencies of the target. RDs cause the build system to perform unnecessary incremental builds. In addition, RDs cause targets that could be executed in parallel to be executed sequentially, reducing the build efficiency. We analyze the actual software construction process and detect dependency errors. We have detected the following dependency errors in your public project. Please help us to check these dependency errors. Base on version of commit ID:0a72e4f For quick check: Target: ck_barrier_combining.o, missing dependencies of: /ck/include/ck_limits.h, /ck/include/spinlock/fas.h, /home/uu/WorkSpace/expproject/ck/include/spinlock/ticket.h, /ck/include/spinlock/anderson.h, /ck/include/ck_stddef.h, /ck/include/ck_backoff.h.

When we try to change these files, the ck_barrier_combining.o will not be rebuilt.

For all errors: dep_error_0a72e4f_5221ae2.csv