A library containing some data types to describe makefiles.
Author: Michael Hanus
Version: May 2017
                showMakeFile
                  ::  [MakeElement] -> String   
                Shows a MakeFile
                as a string in standard makefile syntax.
               | 
              
            
A make file consists of a list of make elements.
              Type synonym: MakeFile = [MakeElement]
            
A data type for the description of an element of a make file.
Constructors:
DefineVariable
                    ::  String ->  [String] -> MakeElement
              Rule
                    ::  [SpecialTarget] ->  String ->  [String] ->  [String] -> MakeElement
              Comment
                    ::  String -> MakeElement
              Empty
                    :: MakeElement
              A data type to describe special targets.
Constructors:
PHONY
                    :: SpecialTarget
              NOTPARALLEL
                    :: SpecialTarget
              | 
                    
                     
                       
                      Shows a   |