s4_include(path)
This macro is similar to M4 include
and M4sugar m4_include
macros: all expand to content of
the specified file. But there is some difference:
First, the most important, s4_include
expands to quoted content of the file:
⇐ {s4_include([include.m4])}
⇒ {# file: include.m4 (made from: test/include.m4.in) #
⇒
⇒ =m4_toupper([String])=
⇒
⇒ # end #
⇒ }
(Note: m4_toupper
macro is not expanded.)
m4_include
returns unquoted content, i. e. subject to further macro expansion:
⇐ {m4_include([include.m4])}
⇒ {# file: include.m4 (made from: test/include.m4.in) #
⇒
⇒ =STRING=
⇒
⇒ # end #
⇒ }
(Note: m4_toupper
macro is expanded to "STRING".)
Second, s4_include
does not respect M4 -I
option, while m4_include
does. (I would like to
respect the -I
option, but it is hardly possible.)
Third, s4_include
does not warn about agains multiple inclusions of the same file, while
m4_include
does. (However, it may change in the future.)