20 lines
		
	
	
		
			935 B
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			20 lines
		
	
	
		
			935 B
		
	
	
	
		
			Plaintext
		
	
	
	
| # Translate XCOMM into pound sign with sed, rather than passing -DXCOMM=XCOMM
 | |
| # to cpp, because that trick does not work on all ANSI C preprocessors.
 | |
| # Delete line numbers from the cpp output (-P is not portable, I guess).
 | |
| # Allow XCOMM to be preceded by whitespace and provide a means of generating
 | |
| # output lines with trailing backslashes.
 | |
| # Allow XHASH to always be substituted, even in cases where XCOMM isn't.
 | |
| 
 | |
| CPP_SED_MAGIC = $(SED) -e '/^\#  *[0-9][0-9]*  *.*$$/d' \
 | |
|                        -e '/^\#line  *[0-9][0-9]*  *.*$$/d' \
 | |
|                        -e '/^[ 	]*XCOMM$$/s/XCOMM/\#/' \
 | |
|                        -e '/^[ 	]*XCOMM[^a-zA-Z0-9_]/s/XCOMM/\#/' \
 | |
|                        -e '/^[ 	]*XHASH/s/XHASH/\#/' \
 | |
|                        -e '/XSLASHGLOB/s/XSLASHGLOB/\/\*/' \
 | |
|                        -e '/\@\@$$/s/\@\@$$/\\/'
 | |
| 
 | |
| SUFFIXES = .cpp
 | |
| 
 | |
| .cpp:
 | |
| 	$(AM_V_GEN)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@
 |