Skip to content
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

Open
wants to merge 4 commits into
base: master
Choose a base branch
from
Open

Conversation

diehlpk
Copy link

@diehlpk diehlpk commented May 17, 2024

First draft produced by during American group meeting.

diehlpk and others added 2 commits May 17, 2024 16:34
@diehlpk
Copy link
Author

diehlpk commented Jul 26, 2024

@vulder @jcvw The US group discussed this pull request in today's meeting and we would move it to tentatively ready. We would appreciate to get feedback from the European group.

@vulder vulder requested review from vulder and jcvw October 2, 2024 07:00
Copy link
Collaborator

@vulder vulder left a 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
Copy link
Collaborator

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?

@vulder vulder added Tentatively ready Ready for a final review in SG20 SG20-reviewed Reviewed by a SG20 meeting, ready to be merged after comment resolution. labels Oct 18, 2024
Comment on lines +18 to +20
Advanced --- Usage of build system to compile a library or
add external libraries as a dependencies

Copy link

@ronchaine ronchaine Oct 18, 2024

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

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

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?

@ronchaine
Copy link

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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
SG20-reviewed Reviewed by a SG20 meeting, ready to be merged after comment resolution. Tentatively ready Ready for a final review in SG20
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants