-
Notifications
You must be signed in to change notification settings - Fork 13
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add draft for build systems #93
base: master
Are you sure you want to change the base?
Conversation
Discussion with the US group
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice work and thanks for giving this topic a first version.
guidance where one can continue to investigate this topic in more depth._ | ||
|
||
* How to build libraries | ||
* Write a configuration file for your own library |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hmm, why is a config file for a lib advanced and out-of-scope while writing one for an executable is fine?
I personally thing that on a "main" level a student should be able to also setup and build libraries, or what complexities am I missing that this could not be asked for?
Advanced --- Usage of build system to compile a library or | ||
add external libraries as a dependencies | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Here it is said that "add external libraries as dependencies" is advanced, but it below it is discussed in main points to cover.
guidance where one can continue to investigate this topic in more depth._ | ||
|
||
* How to build libraries | ||
* Write a configuration file for your own library |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I do not think this should be advanced. One of the most common (and simplest) tasks is to write a build script that compiles part of your code as a library and then links it to an executable in the same project. In case of CMake, that it is even used as one of the first examples in its tutorial.
* Adding compiler flags | ||
* How to build Release and Debug builds | ||
* Linking external libraries to the C++ project | ||
* Support different operating systems, compilers, and architectures |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this needs a clarification, since in my eyes "Support different operating systems" can be interpreted to mean cross-compilation toolchain support, which I do not think is the point here?
Should there be a mention of handling of (unit) testing, probably in advanced, as that is often handled by the build system? Not sure if it is better to mention here or not. |
First draft produced by during American group meeting.