Projek Meson yang bergantung kepada kekurangan dependensi
Pernahkah anda menemui situasi sedemikian: projek yang sangat baik tidak mempunyai fail meson.build
, dan pertahanan tidak akan menerima permintaan tarik anda (PR), atau menerimanya? Sebagai alternatif, projek anda perlu menambah dokumen lesen setiap kali anda membina, tetapi pertahanan enggan melakukan ini?
Jangan risau! Anda boleh menyelesaikan masalah ini dengan menambahkan patch git ke . subprojects/*.wrap
Sebagai contoh, dalam projek saya ONUR, saya lebih suka menggunakan alat HT HOYT dan bukannya perpustakaan GNOM GLIB yang besar, tetapi projek HT tidak mempunyai fail
meson.build
untuk projek ini tanpa label, konfigurasi
wrap-git
master
Pertama, muat turun meson sub -project: ./subprojects/ht.wrap
. Kemudian, tambahkan
<code>[wrap-git] directory=ht url=https://github.com/benhoyt/ht revision=master depth=1</code>
meson subprojects download
meson.build
Seterusnya, buat fail patch: ./subprojects/ht
<code># 创建一个空的 meson.build 文件 (如果需要,可以添加内容) touch ./subprojects/ht/meson.build </code>
<code class="language-bash">mkdir -pv subprojects/{packagecache,packagefiles} git -C ./subprojects/ht add meson.build git -C ./subprojects/ht diff --cached > ./subprojects/packagefiles/ht-meson.patch</code>
ht.wrap
<code class="language-bash">echo "diff_files = ht-meson.patch" >> ./subprojects/ht.wrap</code>
sumber yang berkaitan:
<code class="language-bash">meson subprojects purge --confirm meson subprojects download CC=gcc meson setup ./build --wipe -D b_sanitize=none -D buildtype=release meson compile -C ./build</code>
./build
Debian Sid/Gnu Guix/Swaywm/Waybar/Firefox
Atas ialah kandungan terperinci Meson: Menggunakan projek Git tanpa meson.build sebagai pergantungan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!