Hai,
Saya ingin menggunakan file .h
dan .c.
dibuat oleh webservice dalam proyek saya, tetapi saya tidak ingin menyimpan setiap file baris ~ 10k dalam repo saya.
Apakah ada cara untuk menyertakan ini dan "membangun" melalui CMAKE dan membuat file yang diperlukan dibuat (mirip dengan GLFW)?
Terima kasih untuk proyek Anda
Iya itu mungkin. Buat subdirektori di proyek Anda dan tambahkan CMakeLists.txt
di dalamnya bersama dengan file:
cmake_minimum_required(VERSION 3.0)
project(Glad)
add_library(glad include/glad/glad.h src/glad.c)
target_include_directories(glad PUBLIC include/)
Kemudian di file CMakeLists.txt
masukkan:
add_subdirectory(glad/)
target_link_libraries(<your target> PRIVATE glad)
Atau semacam itu. Ada banyak cara untuk mencapai ini.
@Shimmen terima kasih atas penjelasannya!
Anda juga dapat melihat melalui masalah https://github.com/Dav1dde/glad/issues/174 di mana beberapa orang hebat menambahkan lebih banyak cara untuk melakukannya.
Secara pribadi saya akan menyertakan file yang dihasilkan, simbol harus diurutkan sehingga jika Anda meningkatkan file yang dihasilkan pada satu titik Anda akan mendapatkan sedikit perbedaan, juga itu berarti Anda tidak memiliki ketergantungan pada sumber daya eksternal dan Python.
Saya baru menyadari bahwa saya sama sekali tidak memberikan jawaban atas pertanyaan awal! Secara pribadi saya suka menyimpan hal-hal yang menyenangkan dari direktori sumber saya dan keluar dari langkah membangun eksekusi utama saya, jadi itulah yang dilakukan oleh contoh saya.
Saya akan menganggap ini dijawab, jika tidak silahkan buka kembali.
Saya mengerti itu tipikal untuk memasukkan file yang dihasilkan ke direktori include Anda, tetapi APAKAH ada cara untuk membuatnya saat membuat CMake?
Saya tidak berpikir membutuhkan Python itu masalah besar, itu tempat yang sangat umum. Memiliki pilihan itu setidaknya menyenangkan.
@DerekCresswell ya Anda dapat menjalankan generator pada sebuah build, ada CMakeLists.txt
di root repositori ini yang memungkinkan Anda untuk melakukannya (iirc melalui add_subdirectory
).
Saya juga telah mengerjakan happy2 yang memiliki CMakeLists.txt
dengan contoh di sini .
Komentar yang paling membantu
Iya itu mungkin. Buat subdirektori di proyek Anda dan tambahkan
CMakeLists.txt
di dalamnya bersama dengan file:Kemudian di file
CMakeLists.txt
masukkan:Atau semacam itu. Ada banyak cara untuk mencapai ini.