Skip to content

afborchert/gcc-makedepend

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 

Repository files navigation

gcc-makedepend

This standalone Perl script provides the functionality of makedepend on base of the -MM option of gcc.

Synopsis

gcc-makedepend {-p prefix} [gcc or g++ options] {source}

Or, within a makefile, allowing you to update it with the command make depend:

.PHONY:         depend
depend: ;       gcc-makedepend $(CPPFLAGS) $(wildcard *.c)

Description

gcc-makedepend works like makedepend but is based upon the -MM option of gcc. This has the advantage that all standard include directories are considered including those which are not known to makedepend.

gcc-makedepend updates either makefile or Makefile, whatever is found first, by adding or updating the actual list of header file dependencies of all given sources.

Like makedepend, gcc-makedepend generates and honors the

# DO NOT DELETE

comment line within the to-be-updated makefile, i.e. if this line is found, all makefile lines behind it are considered to be a to-be-updated list of dependencies, and, if this line is not yet present, it will be generated together with the newly generated dependencies. In consequence, neither this line nor any makefile contents beyond this line should be touched except by gcc-makedepend.

The option -p allows to specify a prefix that will be prepended to all dependency lines output by gcc. This is useful if the target directory for output files is not the current directory. If multiple prefix options are given, each output line by gcc will be repeated for each prefix with the individual prefix applied.

History

This is not the first attempt to develop a gcc-based replacement of makedepend. Another solution named makedependgcc was previously developed by David Coppit which, however, diverts from the original makedepend invocation line, provides no error recovery with the danger of corrupting the to-be-updated makefile, and which does not come with a manual page. makedependgcc gave, however, the insight that the -M option of gcc can be used to avoid makedepend.

About

gcc-based clone of makedepend

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages