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

case.build --cleanall does not clean all the mod files #1045

Closed
apcraig opened this issue Jan 25, 2017 · 10 comments
Closed

case.build --cleanall does not clean all the mod files #1045

apcraig opened this issue Jan 25, 2017 · 10 comments
Assignees

Comments

@apcraig
Copy link
Collaborator

apcraig commented Jan 25, 2017

when --cleanall (and I assume --clean) is called from case.build, there are some .mod files left around. I assume these are copies or something. for instance, I see .mod files in

bld/intel/mpich2/nodebug/nothreads/include
bld/lib/include
bld/intel/mpich2/nodebug/nothreads///c1a1l1i1o1r1g1w1e1/include

Just wanted to point that out in case there is something more that clean should do.

@jedwards4b
Copy link
Contributor

I don't think there is any negative issue associated with these .mod files if you see one please tell us.

@mvertens
Copy link
Contributor

mvertens commented Jan 25, 2017 via email

@jedwards4b
Copy link
Contributor

It's a little harder than it may appear - copies of .h and .mod files are copied from the individual bld obj directories to the general include directory. The clean command cleans the object directory but it doesn't know how to selectively clean the include directory (it would need to identify only the mod files that originated in the directory you are requesting to clean)

@apcraig
Copy link
Collaborator Author

apcraig commented Jan 26, 2017

Maybe cleanall should just remove the bld directory completely and clean can leave behind the extra copies of the mod files. That's just a suggestion. Most users will probably use cleanall. I suspect clean is only going to be used by experts that have an idea how the underlying build works and in that case, leaving the extra copies of the mod files seems ok.

@jedwards4b
Copy link
Contributor

Actually clean with no arguments cleans all the prognostic model obj directories and cleanall also cleans the support libraries (pio, mct, csm_share) - mostly you don't need to clean those and clean is sufficient for most users.

@gold2718
Copy link

@jedwards4b, I think you made @apcraig's point. There is already not much left after --cleanall but sometimes it is enough to mess up the rebuild. I always have had to remove the bld directory anyway and removing it does not cost much (if any) time on the rebuild so I second the motion that --cleanall removes the bld directory.

@jedwards4b
Copy link
Contributor

@gold2718 said " I always have had to remove the bld directory " what? why? If there is a real reproducible problem I want to fix it. Can any of you come up with a test case that indicates that the current tools are not sufficient, or is this an alternative truth?

@mvertens
Copy link
Contributor

mvertens commented Jan 26, 2017 via email

@rljacob
Copy link
Member

rljacob commented Jan 26, 2017

An option called "--cleanall" should clean all.

@apcraig
Copy link
Collaborator Author

apcraig commented Jan 26, 2017

Just adding a link to #1052 as the sharedlibroot is something that I wasn't entirely aware of before today, especially with regard to individual tests, and it may need to be considered in terms of how clean or cleanall work when using a test to carry out development.

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

6 participants