I figured out why my the rustfmt commands in the build script for my rust program were reformatting certain .rs source code files repeatedly, including one that I was explicitly excluding from the command line. I was trying to pass each file to the rustfmt command individually, excluding the one that I need to format differently because it contains long lines of code.
As it turns out, the rustfmt command formats the file(s) specified on the command line as well as any files that those files reference, so it is not necessary to call rustfmt repeatedly or to pass all of the file paths on the command line. I do not think it is possible to exclude referenced files from formatting, but you can reformat those files afterwards.
To format all the files in a project requires a single short command.
cmd="time rustfmt -l -v ./src/main.rs ./src/lib.rs"
To reformat a specific file that has very long lines:
cmd="rustfmt -l -v --config max_width=2500 ./src/wsl/inv/invocablecategory.rs"