autotools

checkターゲットを利用する

本当は先にテストを用意するんかな。とりあえずは UnitTest の話ではなく、実行ファイルのテスト。ずっと Makefile は手書き派だったので、こんな感じで書いてた。 test: $(TARGET) $(TARGET) --verbose -o testout testinで > make testまあ、単純。autotol…

AC_CHECK_DEFINE

久々にソースを VC でコンパイルするとエラーががが。PATH_MAX は POSIX 準拠なんだけれども、UNIXサブシステムを有効にしないと VC ではコンパイルすら通らないことに。まあ、PATH_MAX を使うことの是非はおいておいてorz。autotools の考え方は機能ベース…

configure.acに自前のライブラリを追加する続き

どうやら解釈が間違ってたみたいや。ローカルなマクロの処理は2個あって、一つは acinclude.m4 に書く方法。もう一つは m4/ ディレクトリを使ってその中にファイルを置いておく方法。 後者でやってみる m4 ディレクトリを作ってファイルを置く。xxx.m4 とで…

configure.acに自前のライブラリを追加する

google先生に聞いてみても今一ピンとこなかったので書いてみた。 configure.ac編集 AC_ARG_WITH([xxx], AC_HELP_STRING([--with-xxx@<:@=PATH@:>@], [PATH is path to 'xxx']), [WITH_XXX=$withval], [WITH_XXX=yes]) xxxって自前のライブラリを追加する。必須ライブラ</:@=path@:>…

flex/bisonを使うときのバッドノウハウ

autotools 自体がそいういのの固まりだっちゅうのはおいておいて。ylwrapが、flex の出力ファイル名が lex.yy.c だと思い込んでるので、lexer.ll としたときに途中でエラーになりやがる AM_LFLAGS = -olex.yy.c で、出力ファイル名を標準に戻す。C++のパーサ…

autotools で、flex/bisonを使うときの設定メモ

調べものしたり、発掘作業をしたのでメモ。configure.ac に以下を追加 AM_PROG_LEX AC_PROG_YACC c++で、コンパイルしたい場合は拡張子を ll/yy にしておく。Makefile.am に以下を追加 AM_YFLAGS = -d AM_LFLAGS = -8 名前を変えたい場合はファイル名を lexe…