aprojfind - an extension to the Unix 'find' command for PowerAda projects
aprojfind -[hLNP] [project_path] [find_arguments | -S | -D ]
aprojfind uses the GNU find tool in conjunction with knowledge of the project hierarchy to locate files, directories, and sublibraries within the project which match certain criteria.
The find_arguments that may be provided are a subset of those supported by the GNU find command. In particular, those options that specify the output format such as
print0 are not supported. The goal is to provide the maximum flexibility, sometimes at the risk of good error recovery.
- Prints version, and command line help information..
- Shows only non-sublibrary directories
- Shows only files in local project (no shadows)
- Shows only newest of multiple shadows of a file
- Shows only project-relative names (implies -N)
- Shows only sublibrary directories
- options passed to find command
- The directory name of a path which includes the project root.
$POWERADA/bin/aprojfind - the aprojfind program image $POWERADA/tools/bin/gfind - the GNU find command
- This must be defined and indicate the powerada/ada95 directory in the PowerAda installation.
- Names a baselines file identifying aliases for baseline projects.
# find all files in the project that have execute permission aprojfind -type f -perm -100 # remove all the sublibraries in the working project: rm -r 'aprojfind -LS'
aprojfind doesn't do much checking of the find_options, but just passes them along to find. In particular, options which modify the output format will break aprojfind, which parses the output.
Also, see Problems and Questions at the beginning of this Appendix.