Blame sofort/core/modern.m4

164b65
dnl modern.m4: a modern and simple framework for using the m4 macro language
164b65
dnl
164b65
dnl This file is covered by COPYING.SOFORT.
164b65
dnl
164b65
dnl 1) make all standard m4 builtins m4_ prefixed.
164b65
dnl 2) set the left-bracket and right-bracket symbols the begin-quote and end-quote strings.
164b65
dnl 3) make a single underscore symbol the equivalent of the standard dnl builtin.
367821
dnl 4) provide the m4_toupper(), m4_tolower(), and m4_pathvar() macros.
367821
dnl 5) provide the m4_srclist() and m4_srcitem() macros.
367821
dnl 6) provide the m4_fillerdots(), m4_fillerdash(), and m4_fillerline() macros.
367821
dnl 7) provide the m4_whitespace() and m4_spacealign() macros.
367821
dnl 8) provide the m4_alignlen(), m4_leftalign(), and m4_rightalign() macros.
367821
dnl 9) provide the m4_tab(), m4_tabtab(), and m4_tabtabtab() macros.
164b65
dnl
164b65
divert(-1)
164b65
164b65
define(m4_changecom,defn(`changecom'))
164b65
define(m4_changequote,defn(`changequote'))
164b65
define(m4_decr,defn(`decr'))
164b65
define(m4_define,defn(`define'))
164b65
define(m4_defn,defn(`defn'))
164b65
define(m4_divert,defn(`divert'))
164b65
define(m4_divnum,defn(`divnum'))
164b65
define(m4_dnl,defn(`dnl'))
164b65
define(m4_dumpdef,defn(`dumpdef'))
164b65
define(m4_errprint,defn(`errprint'))
164b65
define(m4_eval,defn(`eval'))
164b65
define(m4_ifdef,defn(`ifdef'))
164b65
define(m4_ifelse,defn(`ifelse'))
164b65
define(m4_include,defn(`include'))
164b65
define(m4_incr,defn(`incr'))
164b65
define(m4_index,defn(`index'))
164b65
define(m4_len,defn(`len'))
164b65
define(m4_m4exit,defn(`m4exit'))
164b65
define(m4_m4wrap,defn(`m4wrap'))
164b65
define(m4_maketemp,defn(`maketemp'))
164b65
define(m4_mkstemp,defn(`mkstemp'))
164b65
define(m4_popdef,defn(`popdef'))
164b65
define(m4_pushdef,defn(`pushdef'))
164b65
define(m4_shift,defn(`shift'))
164b65
define(m4_sinclude,defn(`sinclude'))
164b65
define(m4_substr,defn(`substr'))
164b65
define(m4_syscmd,defn(`syscmd'))
164b65
define(m4_sysval,defn(`sysval'))
164b65
define(m4_traceoff,defn(`traceoff'))
164b65
define(m4_traceon,defn(`traceon'))
164b65
define(m4_translit,defn(`translit'))
164b65
define(m4_undefine,defn(`undefine'))
164b65
define(m4_undivert,defn(`undivert'))
164b65
164b65
m4_changequote([,])
164b65
164b65
m4_undefine([changecom])
164b65
m4_undefine([changequote])
164b65
m4_undefine([decr])
164b65
m4_undefine([define])
164b65
m4_undefine([defn])
164b65
m4_undefine([divert])
164b65
m4_undefine([divnum])
164b65
m4_undefine([dnl])
164b65
m4_undefine([dumpdef])
164b65
m4_undefine([errprint])
164b65
m4_undefine([eval])
164b65
m4_undefine([ifdef])
164b65
m4_undefine([ifelse])
164b65
m4_undefine([include])
164b65
m4_undefine([incr])
164b65
m4_undefine([index])
164b65
m4_undefine([len])
164b65
m4_undefine([m4exit])
164b65
m4_undefine([m4wrap])
164b65
m4_undefine([maketemp])
164b65
m4_undefine([mkstemp])
164b65
m4_undefine([popdef])
164b65
m4_undefine([pushdef])
164b65
m4_undefine([shift])
164b65
m4_undefine([sinclude])
164b65
m4_undefine([substr])
164b65
m4_undefine([syscmd])
164b65
m4_undefine([sysval])
164b65
m4_undefine([traceoff])
164b65
m4_undefine([traceon])
164b65
m4_undefine([translit])
164b65
m4_undefine([undefine])
164b65
m4_undefine([undivert])
164b65
545901
m4_define([_],m4_defn([m4_dnl]))
545901
367821
m4_define([m4_toupper],[m4_translit([[$1]],[[abcdefghijklmnopqrstuvwxyz]],[[ABCDEFGHIJKLMNOPQRSTUVWXYZ]])])
367821
m4_define([m4_tolower],[m4_translit([[$1]],[[ABCDEFGHIJKLMNOPQRSTUVWXYZ]],[[abcdefghijklmnopqrstuvwxyz]])])
76d3a6
m4_define([m4_pathvar],[m4_translit(m4_toupper([[$1]]),[/-],[__])])
367821
367821
m4_define([m4_srclist],[[$1] = \])
367821
m4_define([m4_srcitem],[m4_tab[$1] \])
367821
367821
m4_define([m4_fillerdots],[................................])
367821
m4_define([m4_fillerdash],[--------------------------------])
367821
m4_define([m4_fillerline],[m4_fillerdots[]m4_fillerdots[]m4_fillerdots[]])
367821
367821
m4_define([m4_whitespace],[m4_translit(m4_fillerdots,[[.]],[[ ]])])
367821
m4_define([m4_spacealign],[m4_translit(m4_fillerline,[[.]],[[ ]])])
367821
367821
m4_define([m4_alignlen],[m4_eval([$1]-m4_len([$2]))])
367821
m4_define([m4_leftalign],[m4_substr(m4_spacealign,0,m4_alignlen([$1],[$2]))[$2]])
367821
m4_define([m4_rightalign],[[$2]m4_substr(m4_spacealign,0,m4_alignlen([$1],[$2]))])
367821
367821
367821
m4_define([m4_tab],_
367821
	[$1]))
367821
367821
m4_define([m4_tabtab],_
367821
		[$1])
367821
367821
m4_define([m4_tabtabtab],_
367821
			[$1])
545901
164b65
m4_divert(0)_