ฉันรู้สึกสับสนโดยสิ้นเชิงกับวิธีการทำงานของ CMake ทุกครั้งที่ฉันคิดว่าฉันเริ่มเข้าใจวิธีการเขียน CMake มากขึ้นมันจะหายไปในตัวอย่างถัดไปที่ฉันอ่าน สิ่งที่ฉันอยากรู้คือฉันควรจัดโครงสร้างโครงการของฉันอย่างไรเพื่อให้ CMake ของฉันต้องการการบำรุงรักษาน้อยที่สุดในอนาคต ตัวอย่างเช่นฉันไม่ต้องการอัปเดต CMakeList.txt เมื่อฉันเพิ่มโฟลเดอร์ใหม่ในโครงสร้าง src ซึ่งทำงานเหมือนกับโฟลเดอร์ src อื่น ๆ ทั้งหมด
นี่เป็นวิธีที่ฉันจินตนาการถึงโครงสร้างโครงการของฉัน แต่โปรดเป็นเพียงตัวอย่างเท่านั้น หากวิธีที่แนะนำแตกต่างกันโปรดบอกฉันและบอกฉันว่าต้องทำอย่างไร
myProject
src/
module1/
module1.h
module1.cpp
module2/
[...]
main.cpp
test/
test1.cpp
resources/
file.png
bin
[execute cmake ..]
อย่างไรก็ตามสิ่งสำคัญคือโปรแกรมของฉันต้องรู้ว่าทรัพยากรอยู่ที่ไหน ฉันต้องการทราบวิธีการจัดการทรัพยากรที่แนะนำ ฉันไม่ต้องการเข้าถึงทรัพยากรของฉันด้วย "../resources/file.png"
For example I don't want to update my CMakeList.txt when I am adding a new folder in my src tree
คุณช่วยยกตัวอย่าง IDE ที่รวบรวมแหล่งข้อมูลโดยอัตโนมัติได้ไหม