Blame sofort/core/modern.m4

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