% ./autogen.sh
% ./configure
% make
% make install
の一連のcommands発行によって行われてきたが、cmakeやmeson & ninja採用のものも増えている。なお、Mozilla Firefoxのように規模の大きいprojectは独自のbuild system (mach)を持っていたりする。
Mesalibも数年前からmeson & ninjaによるbuildが推奨になっていたようで、最近になって./autogen.shを実行するとその旨表示されるようになった。慣れたものから変更するのはそれなりに抵抗があるのだが、今後を考えると公式に推奨されるものに「乗る」方が良いだろうと判断した。
そういえばMesalib以前にもmesonとninjaでbuildしたことがあるなと思い返してみたら、GithubのAtomとかChromiumがそうだった。
下準備
Debianの場合はmesonとninjaがpackageになっているのでinstallする。
% sudo aptitude install meson ninja
Mesalibのbuild (w/ meson & ninja)
最初にbuildのためのdirectoryを作る (eg. build/)
% meson setup build/
reconfigureしたい:
% meson setup --reconfigure build/
buildする:
% ninja -C build/
installする:
% sudo ninja -C build/
cleanする:
% ninja -C build/ clean
取り敢えず細かいoption指定とかをしなくて良いならこれで十分。
option指定 (w/ meson):
勿論option指定もできる。とりあえず、以前からの設定を引き継ぐ格好で以下のように指定してみている:
% meson setup --reconfigure build/ -Dgallium-drivers=iris,radeonsi,swrast -Dvulkan-drivers=intel,amd