Вопросы по теме 'm4'

как разбить последний символ строки в m4
Я пытаюсь создать макрос для удаления последнего символа строки в m4, я пытаюсь сделать что-то вроде: define(`delete_last',substr(`$1',`0',eval(``len($1)'-1')))dnl Это тот, который был ближе всего к работе, но все же я не могу добиться его...
107 просмотров
m4
schedule 15.12.2022

m4 не анализирует локальные переменные
У меня проблема с макросом m4. Макрос define(BARRIER, ` #if defined USE_PTHREAD_BARRIERS barrier_wait(&$1,$2,$3); #elif defined (USE_CENTRALIZED_BARRIERS) central_barrier(&$1,$2,$3); #endif ') и в моем файле .C у меня есть...
223 просмотров
c m4
schedule 11.02.2023

Как использовать QT и GNU Autotools с помощью AutoTroll?
Я хотел бы использовать Autotools и QT4 вместе. Для этого я хотел бы использовать AutoTroll . Как говорится на веб-сайте, им должно быть очень легко пользоваться. К сожалению, я не смог этого сделать. У меня есть рабочий пример Hello World:...
644 просмотров
schedule 22.12.2022

Пожалуйста, объясните вложенное определение m4 в строку
В настоящее время я читаю книгу «Архитектура SPARC, программирование на языке ассемблера и C. Второе издание». Я дошел до места в книге, где я не понимаю или не могу понять определенную команду: define(loc, 0) define(sto, 'loc: 44 $1...
620 просмотров
schedule 24.09.2022

Как определить макрос M4, который принимает varargs?
Как определить макрос M4, который принимает переменное количество аргументов и обрабатывает каждый аргумент? Я просмотрел макросы "shift" и "foreach (из примеров)", но, похоже, не могу собрать свой собственный макрос, используя их. Спасибо за любую...
639 просмотров
m4
schedule 20.10.2022

Пользовательский макрос .m4 не работает с configure.ac
Я пытаюсь обновить загадочную научную программу F77 до современного мира, упростив ее установку с помощью сценария .configure. Однако это оказалось сложнее, чем рекламировалось. Программа, которую я с визгом и пинками тащу в 21 век, требует...
367 просмотров
schedule 13.06.2023

Тройная условная проверка с ifdef в M4
Я использую m4 в своем коде на Фортране для генерации определенного кода на основе флагов, определенных в моем файле параметров. Я очень мало знаю о предварительной обработке и, следовательно, не очень хорошо знаю M4. Я пытаюсь написать код, в...
795 просмотров
schedule 27.02.2023

Безопасная замена текста на m4, отключение новых определений
Учитывая файл «правил» и «входной» файл, я хотел бы обработать входной файл с помощью m4, используя правила, определенные в файле правил. Так, например, если файл правил содержит define(FOO, BAR)dnl и текстовый файл содержит FOO FOO...
766 просмотров
m4
schedule 03.02.2023

m4_include не расширяет свой аргумент?
Предположим тривиальное configure.ac : AC_INIT([foobar], 1.0) m4_define([foobar_m4], [foobar.m4]) m4_include(foobar_m4) с тривиальным foobar.m4 : AS_ECHO(["foobar.m4 was included"]) Запуск autoreconf производит: aclocal:...
537 просмотров
schedule 28.04.2023

Длина строки в препроцессоре M4
Таким образом, с помощью этого простого ввода define(foo, len($1)) foo(abcdef) Я получаю в качестве вывода: 2 Как я могу заставить это напечатать 5 вместо этого? Я не могу придумать какую-либо комбинацию кавычек, которая...
120 просмотров
schedule 15.05.2023

Как вставить версию на основе Git в проект, управляемый autoconf?
Как я могу назначить динамический номер версии на основе git проекту autoconf? Autoconf требует статического строкового аргумента для AC_INIT([Title],[version],[name]) В документации AC_INIT говорится, что можно использовать M4 для...
486 просмотров
schedule 23.03.2023

Как добавить префикс к каждой строке с m4
Обрабатываю программный файл (по сути ассемблер) с m4. Я могу подавить строки, используя changequote({,})dnl define({_SUPPRESSED}, )dnl _SUPPRESSED({ jan piet }) Теперь я хочу изменить строки на комментарий ассемблера, а не просто подавить...
149 просмотров
schedule 11.07.2022

M4 не расширяет все макросы в файле .m4
Я использую m4 для замены некоторых макросов цветами/и т. д., определенными во включенных файлах в моем файле конфигурации i3wm . $ m4 -I themes/gruvbox-dark config.m4 > config Это (отрывок) моей структуры каталогов для вышеуказанной...
233 просмотров
schedule 13.02.2024