Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

make distclean Misses Some Files #143

Open
insertinterestingnamehere opened this issue Oct 18, 2023 · 2 comments
Open

make distclean Misses Some Files #143

insertinterestingnamehere opened this issue Oct 18, 2023 · 2 comments

Comments

@insertinterestingnamehere
Copy link
Collaborator

As per https://www.gnu.org/prep/standards/html_node/Standard-Targets.html, make distclean should purge all the build files generated by both the configure and build steps, but after running it some files still remain. I'm not yet familiar enough with automake to know why this is happening. For now git clean -fdX (note the capitalized X) is working fine, but I'm creating this issue so I can come back and investigate later.

Here are the specific files it's missing:

.autogen-version
Makefile.in
aclocal.m4
config/compile
config/config.guess
config/config.sub
config/depcomp
config/install-sh
config/libtool.m4
config/ltmain.sh
config/ltoptions.m4
config/ltsugar.m4
config/ltversion.m4
config/lt~obsolete.m4
config/missing
config/test-driver
configure
include/Makefile.in
include/config.h.in
include/qthread/Makefile.in
man/Makefile.in
man/man3/Makefile.in
src/.deps/
src/Makefile.in
src/affinity/.deps/
src/alloc/.deps/
src/barrier/.deps/
src/ds/.deps/
src/ds/dictionary/.deps/
src/fastcontext/.deps/
src/net/.deps/
src/net/portals4/.deps/
src/patterns/.deps/
src/qtimer/.deps/
src/sincs/.deps/
src/syscalls/.deps/
src/threadqueues/.deps/
test/Makefile.in
test/basics/.deps/
test/basics/Makefile.in
test/benchmarks/Makefile.in
test/benchmarks/finepoints/Makefile.in
test/benchmarks/finepoints/partSendPrototype/.deps/
test/benchmarks/finepoints/partSendPrototype/Makefile.in
test/benchmarks/generic/.deps/
test/benchmarks/mantevo/Makefile.in
test/benchmarks/mantevo/hpccg/.deps/
test/benchmarks/mantevo/hpccg/Makefile.in
test/benchmarks/mt/.deps/
test/benchmarks/mtaap08/.deps/
test/benchmarks/pmea09/.deps/
test/benchmarks/sc12/.deps/
test/benchmarks/thesis/.deps/
test/benchmarks/uts/.deps/
test/features/.deps/
test/features/Makefile.in
test/multinode/.deps/
test/multinode/Makefile.in
test/stress/.deps/
test/stress/Makefile.in
test/utils/Makefile.in
test/utils/rng/.deps/
test/utils/rng/Makefile.in
@janciesko
Copy link
Collaborator

m4 files are created, either as a file or softlink, by autoconf and thus precede the ./configure and make steps. I think it is ok to preserve these files in case of make distclean is called. *.in files are input files and are part of the distribution. .deps could be removed as this a side step for tracking deps by make.

@insertinterestingnamehere
Copy link
Collaborator Author

Okay, this makes sense. Thanks for clarifying. Basically we want distclean to clear away everything except what's generated by the autogen script. This means leaving .m4 and .in files alone. I checked and the .deps directories are still created by the configure script and their contents are getting removed (correctly) by distclean. It's just the directories themselves that aren't getting removed.

Also, if I want the equivalent of a clean checkout of the repo, git actually is the correct tool for that, not make.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants