This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

CMakeLists.txt, Kconfig, proj.conf, sample.yaml

Hi

I'm trying to understand the files outside the main program. The files that are at the samples path. Like "CMakeLists.txt, Kconfig, proj.conf, sample.yaml etc". So from what I know, they are all necessary to the program to be built. But I have some doubts about how they are initialized and in what order. I think it starts when we press at segger "Open nRF Connect SDK Project" and we select the "CMakeLists.txt" file. This file will start the application  and define the dependencies. If I open this file, there's some includes that I'm a little bit confuse about what they do, and there's 

#NORDIC SDK APP START
target_sources(app PRIVATE src/main.c)
# NORDIC SDK APP END 

I was researching and from what I understood the above settings, an existing library target named app is configured to include the source file src/main.c. The PRIVATE keyword indicates that we are modifying the internals of how the library is being built. 

At proj.conf I notice that there are some configs necessaries to the program and related to the #includes or #defines at the main.c.

But I don't understand how it is called and how the other files that I mentioned upper works/are called. Can someone help me please providing more detailed info about all the 4 files?

Thank you in advance.With my best

Related