Cmake: Mungkin menghasilkan sistem build silang dari Linux?

Apakah mungkin menghasilkan sistem pembangunan pada satu platform untuk platform lain menggunakan cmake? Misalnya, dan kasus yang paling saya minati, apakah mungkin membuat sekumpulan file solusi Visual Studio, atau Makefile mingw32-make, atau file nmake, untuk proyek dari Linux?

Tujuannya adalah untuk membuat sesuatu yang analog dengan apa yang dihasilkan target make dist di automake. Namun, saya tidak memerlukannya sebanyak make dist, yaitu saya hanya ingin membuat file solusi seolah-olah saya menjalankan cmake di Windows.

Pengguna kemudian dapat membangun paket menggunakan sistem build yang dibuat di mesin mereka sendiri.

Jika bisa, bagaimana caranya? Cmake tidak melaporkan generator berbasis Windows tersedia di Linux.


person crobar    schedule 19.06.2015    source sumber


Jawaban (1)


Setelah penelitian lebih lanjut saya yakin jawaban atas pertanyaan saya adalah tidak. Alasannya adalah bahwa file makefile dan file solusi, dll. yang dihasilkan oleh cmake bergantung pada cmake itu sendiri, jalur yang dikodekan ke dalam file.

Salah satu solusi untuk windows mungkin adalah dengan menggabungkan cmake yang dapat dieksekusi dengan file Anda dan mengganti definisi CMAKE_COMMAND (misalnya) yang ditambahkan ke makefile dengan jalur ke versi cmake yang dibundel. Ini hanya sekedar saran, saya belum banyak mencoba atau bahkan menelitinya. Jika ya, kirimkan prosesnya sebagai komentar atau jawaban di sini.

person crobar    schedule 22.06.2015