m4 не слушается расширения?

Я использую m4 для небольшой предварительной обработки текста здесь, и он ведет себя так, как я не понимаю.

Это часть, о которой идет речь:

ifdef(`TEST',
    define(`O_EXT', `.obj'),
    define(`O_EXT', `.o'))

Этот макрос будет всегда расширяться до .o, независимо от того, определено ли TEST (m4 -DTEST) или нет.

Что я делаю не так?


person polemon    schedule 24.08.2010    source источник


Ответы (1)


Вы не цитируете другие аргументы ifdef. Попробуй это:

ifdef(`TEST', `define(`O_EXT', `.obj')', `define(`O_EXT', `.o')')
person Jack Kelly    schedule 21.09.2010