summaryrefslogtreecommitdiff
path: root/usr.bin/make/parse.h
Commit message (Collapse)AuthorAgeFilesLines
* Remove old fmake. It wasn't built by default for some time. Users thatWarner Losh2015-06-161-86/+0
| | | | | | | | | | really need it can find it in the devel/fmake port or pkg install fmake. Note: This commit is orthogonal to the question 'can we fmake buildworld'. Differential Revision: https://reviews.freebsd.org/D2840 Notes: svn path=/head/; revision=284464
* Move the Boolean and ReturnStatus stuff from sprite.h to util.h andHartmut Brandt2005-05-131-1/+1
| | | | | | | | | get rid of sprite.h. Obtained from: DragonFlyBSD Notes: svn path=/head/; revision=146177
* Move the definitions of the OP_* constants from make.h into GNode.hHartmut Brandt2005-05-101-0/+18
| | | | | | | | | | | where they actually belong to. Move the definitions of the strings for special macros like "$*" from make.h to parse.h - they're used only in the parser. Submitted by: Max Okumoto <okumoto@ucsd.edu> (7.211) Notes: svn path=/head/; revision=146066
* Make shellPath and shellName static - they're used in job.c only.Hartmut Brandt2005-05-101-0/+8
| | | | | | | | | | Move definition of parsing error levels from make.h into parse.h. Patches: 7.202,7.203 Submitted by: Max Okumoto <okumoto@ucsd.edu> Notes: svn path=/head/; revision=146059
* Rework the directive parsing code. Instead of using a lot of strcmp()sHartmut Brandt2005-04-111-1/+0
| | | | | | | | | | | | | | | on every line that starts with a dot use a minimal perfect hash function and a single strcmp() on the first word after the dot to find out whether it is really a directive call and, if yes, which one. Then directly dispatch to a handler function for that directive (or fall through to the dependency handling code). This makes the directive parse a little bit more strict about the syntax: the directive word must be followed by a character that is not alphanumerical and not an underline (making .undefFOO illegal); .endif and .else can only be followed by comments. Notes: svn path=/head/; revision=144894
* Make the structure for handling the input stack local to the parseHartmut Brandt2005-03-301-15/+1
| | | | | | | | | | | | | | module. The only module accessing it (the current line number) was the condition module, so pass the current line number as a function argument. Centralize the pushing of new input sources into one function ParsePushInput() and rename the function handling the popping from ParseEOF() to ParsePopInput(). Make the entire thing a little bit clearer, by holding the current input source in the top element of the stack instead of using extra variables for this. Use a type-safe intrusive list for the input stack. Notes: svn path=/head/; revision=144341
* Clean up include files and file including. Split nonints.h into piecesHartmut Brandt2005-02-011-0/+75
that get included just where they are needed. All headers include the headers that they need to compile (just with an empty .c file). Sort includes alphabetically where apropriate and fix some duplicate commenting for struct Job, struct GNode and struct Shell by removing one version and inlining the comments into the structure declaration (the comments have been somewhat outdated). This patch does not contain functional changes (checked with md5). Submitted by: Max Okumoto <okumoto@ucsd.edu> Notes: svn path=/head/; revision=141104