Bagikan melalui


Menentukan alat build kustom

Alat build kustom menyediakan sistem build dengan informasi yang diperlukan untuk membangun file input tertentu. Alat build kustom menentukan perintah untuk dijalankan, daftar file input, daftar file output yang dihasilkan oleh perintah, dan deskripsi opsional alat.

Untuk informasi umum tentang alat build kustom dan langkah-langkah build kustom, lihat Memahami Langkah Build Kustom dan Membangun Peristiwa.

Untuk menentukan alat build kustom

  1. Buka kotak dialog Halaman Properti proyek. Untuk informasi selengkapnya, lihat Mengatur pengkompilasi C++ dan membuat properti di Visual Studio.

  2. Pilih Properti Konfigurasi untuk mengaktifkan kotak Konfigurasi . Dalam kotak Konfigurasi , pilih konfigurasi yang ingin Anda tentukan alat build kustomnya.

  3. Di Penjelajah Solusi, pilih file input untuk alat build kustom.

    Jika folder Custom Build Tool tidak muncul, ekstensi file file yang Anda pilih dikaitkan dengan alat default. Misalnya, alat default untuk file .c dan .cpp adalah pengkompilasi. Untuk mengambil alih pengaturan alat default, di simpul Properti Konfigurasi, di folder Umum , di properti Jenis Item, pilih Alat Build Kustom. Pilih Terapkan dan simpul Custom Build Tool ditampilkan.

  4. Di simpul Custom Build Tool , di folder Umum , tentukan properti yang terkait dengan alat build kustom:

    • Dalam Dependensi Tambahan, tentukan file tambahan apa pun di luar yang alat build kustomnya sedang ditentukan (file yang terkait dengan alat build kustom secara implisit dianggap sebagai input ke alat). Memiliki file input tambahan bukanlah persyaratan untuk alat build kustom. Jika Anda memiliki lebih dari satu input tambahan, pisahkan dengan titik koma.

      Jika tanggal file Dependensi Tambahan lebih lambat dari file input, maka alat build kustom dijalankan. Jika semua file Dependensi Tambahan lebih lama dari file input, dan file input lebih lama dari file properti Output , maka alat build kustom tidak dijalankan.

      Misalnya, Anda memiliki alat build kustom yang mengambil MyInput.x sebagai input dan menghasilkan MyInput.cpp, dan myInput.x menyertakan file header, MyHeader.h. Anda dapat menentukan MyHeader.h sebagai dependensi input ke MyInput.x, dan sistem build akan membangun MyInput.cpp saat sudah kedaluarsa sehubungan dengan MyInput.x atau MyHeader.h.

      Dependensi input juga dapat memastikan bahwa alat build kustom Anda berjalan sesuai urutan yang Anda butuhkan. Dalam contoh sebelumnya, misalkan MyHeader.h sebenarnya adalah output dari alat build kustom. Karena MyHeader.h adalah dependensi dari MyInput.x, sistem build akan terlebih dahulu membangun Myheader.h sebelum menjalankan alat build kustom di MyInput.x.

    • Di Baris Perintah, tentukan perintah seolah-olah Anda menentukannya di prompt perintah. Tentukan perintah atau file batch yang valid, dan file input atau output yang diperlukan. Tentukan perintah batch panggilan sebelum nama file batch untuk menjamin bahwa semua perintah berikutnya dijalankan.

      Beberapa file input dan output dapat ditentukan secara simbolis dengan makro MSBuild. Untuk informasi tentang cara menentukan lokasi file, atau nama kumpulan file, lihat Makro umum untuk perintah dan properti build.

      Karena karakter '%' dicadangkan oleh MSBuild, jika Anda menentukan variabel lingkungan ganti setiap % karakter escape dengan urutan escape heksadesimal %25 . Misalnya, ganti %WINDIR% dengan %25WINDIR%25. MSBuild mengganti setiap urutan %25 dengan % karakter sebelum mengakses variabel lingkungan.

    • Di Deskripsi, masukkan pesan deskriptif tentang alat build kustom ini. Pesan dicetak ke jendela Output ketika sistem build memproses alat ini.

    • Di Output, tentukan nama file output. Ini adalah entri yang diperlukan; tanpa nilai untuk properti ini, alat build kustom tidak akan berjalan. Jika alat build kustom memiliki lebih dari satu output, pisahkan nama file dengan titik koma.

      Nama file output harus sama dengan yang ditentukan dalam properti Baris Perintah. Sistem build proyek akan mencari file dan memeriksa tanggalnya. Jika file output lebih lama dari file input atau jika file output tidak ditemukan, alat build kustom dijalankan. Jika semua file Dependensi Tambahan lebih lama dari file input, dan file input lebih lama dari file yang ditentukan dalam properti Output , alat build kustom tidak dijalankan.

Jika Anda ingin sistem build beroperasi pada file output yang dihasilkan oleh alat build kustom, Anda harus menambahkannya secara manual ke proyek. Alat build kustom akan memperbarui file selama build.

Contoh

Asumsikan bahwa Anda ingin menyertakan file bernama parser.l dalam proyek Anda. Anda memiliki penganalisis leksikal, lexer.exe, di jalur yang dapat dieksekusi. Anda ingin menggunakannya untuk memproses parser.l untuk menghasilkan file .c yang memiliki nama dasar yang sama (parser.c).

Pertama, tambahkan parser.l dan parser.c ke proyek. Jika file belum ada, tambahkan referensi ke file. Buat alat build kustom untuk parser.l dan masukkan yang berikut ini di properti Perintah :

lexer %(FullPath) .%(Filename).c

Perintah ini menjalankan penganalisis leksikal pada parser.l dan output parser.c ke direktori proyek.

Di properti Output, masukkan yang berikut ini:

.%(Filename).c

Saat Anda membangun proyek, sistem build membandingkan tanda waktu parser.l dan parser.c. Jika parser.l lebih baru, atau jika parser.c tidak ada, sistem build menjalankan nilai properti Baris Perintah untuk memperbarui parser.c. Karena parser.c juga ditambahkan ke proyek, sistem build kemudian mengkompilasi parser.c.

Baca juga

Makro umum untuk perintah dan properti build
Pemecahan Masalah Kustomisasi Build