LINUX.ORG.RU

непонятно откуда берущийся define

 


0

1

bash я использую исключительно для скриптов, никакие интерактивности от него мне не требуются. поэтому при сборке всякие readline, history и прочие progcomp отключаются нафиг.

однако заметил, что в последнее время, если запущу bash в интерактивном режиме, для быстрой проверки различных синтаксических конструкций, это животное создает ~/.bash_history, хотя сохранение истории отключено.

при разборе полетов оказалось, что все историчности в коде отключаются конструкцией #if defined(HISTORY). в config.h есть закоментаренный #undef HISTORY. однако HISTORY все равно считается определенным и соотвественный код присутствует в бинаре. grep по исходникам нечего не показал, явных определений HISTORY кроме как в config.h.in/config.h нет. в выхлопе make тоже ничего криминального. помогло только явное добавление -UHISTORY в CFLAGS.

потому вопрос - а где еще эта препроцессорная гадость может определяться?

★★★★★

В ./configure укажи параметр --disable-history

В самих исходниках этого дефайна не будет, он должен появится где-то среди файлов, созданных ./configure

pathfinder ★★★★
()
Ответ на: комментарий от pathfinder

спасибо, кэп. но вопрос именно в том, что данная опция не работает

ananas ★★★★★
() автор топика

как оказалось, гадил разрешенный bang_history. добавление --disable-bang-history проблему решило.

ananas ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.