[FreeBSD-users-jp 95897] Re: ports の Makefile で条件コンパイルを指定する方法
Tomoaki AOKI
junchoon @ dec.sakura.ne.jp
2016年 7月 20日 (水) 15:42:24 UTC
青木@名古屋です。
On Wed, 20 Jul 2016 20:46:00 +0900
User Ribbon <ribbon at ns.ribbon.or.jp> wrote:
> On Mon, Jul 18, 2016 at 08:38:40AM +0900, User Ribbon wrote:
>
> > > LANGUAGE_USA_CMAKE_ON= -DLANGUAGE=1
> > > LANGUAGE_ESP_CMAKE_ON= -DLANGUAGE=2
> > > LANGUAGE_DEU_CMAKE_ON= -DLANGUAGE=3
> > > 〜以下略〜
> > >
> > > という記述を追加すれば、LANGUAGE_USA が選ばれた時は -DLANGUAGE=1 が、
> > > LANGUAGE_ESP が選ばれた時は -DLANGUAGE=2 が CMAKE_ARGS に追加されます。
> > >
> > > 詳細は Porter's Handbook の以下の辺りを参照して下さい。
> > >
> > > https://www.freebsd.org/doc/en_US.ISO8859-1/books/porters-handbook/makefile-options.html#options-cmake_on
> >
> > この方法でうまく出来ました。ありがとうございました。
> >
> > portのメンテナに修正をお願いしようと思います。
>
> で、修正をお願いしたのですが、もっとほかにいい方法あるんじゃないの、
> と返されてしまいました。
>
> https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=211182
>
> OPTIONS_MULTIを使うと複数選択可能になっているので使えない、
> すべての言語に対するオプションを指定すると、Makefileを
> 手で直さなければならなくなるので無理ではないかと思います。
OPTIONS_RADIOだと複数の候補から1つだけ選択する形だったかと
思いますが、こういうのをお望みでしょうか?
例えばx11/xtermで使われていますが、OPTIONS_SINGLEとの違いは
「何も選ばない」という選択も可能なことですので、候補にする
オプションどれも選ばれなかった場合のフォールバック処理が楽かも
しれません。
※その他のパターンは/usr/ports/Mk/bsd.options.mkをご参照下さい。
場合によってはPorters Handbookを探るより手っ取り早いかも。
> ただ、
>
> slave port with SUFFIX
> -languages? Or slave ports for each -lang
>
> という記述があるのですが、ここが意味分かりません。
> Makefileの書き方に、slave port という書き方があるのでしょうか。
japanese/libreoffice(masterがeditors/libreoffice)や
x11/nvidia-driver-340(masterがx11/nvidia-driver)のような
ものがslave portです。
>
> ribbon
> _______________________________________________
> freebsd-users-jp at freebsd.org mailing list
> https://lists.freebsd.org/mailman/listinfo/freebsd-users-jp
> To unsubscribe, send any mail to "freebsd-users-jp-unsubscribe at freebsd.org"
>
--
青木 知明 [Tomoaki AOKI]
junchoon at dec.sakura.ne.jp
freebsd-users-jp メーリングリストの案内