@@ -25,11 +25,12 @@ Advanced --- Usage of build system to compile a library or
2525_ Why is this important?_
2626_ Why do we want to learn/teach this topic?_
2727
28- * Building complex C++ projects by hand or writing Make files is tricky
28+ * Building complex C++ projects by hand is tricky
2929* Build systems can help to resolve dependencies
3030* Build systems can help do distribute C++ code and help other to compile the code
3131* Build systems can help to find and include libraries as dependencies
32- * All major C++ projects are distributed with build systems
32+ * Build systems faciliate project management
33+ * All major C++ projects are distributed with build systems
3334
3435### Topic introduction
3536
@@ -43,7 +44,7 @@ Build systems are used to configure, build, and install complex C++ projects.
4344#### Background/Required Knowledge
4445
4546A student:
46- * Should know about build systems
47+ * Should know how to compile and link C++ programs
4748
4849
4950#### Student outcomes
@@ -55,8 +56,8 @@ _Max 5 items._
5556A student should be able to:
5657
57581 . To explain what a build system is
58- 2 . Know that a build systems resolves dependencies
59- 3 . Know that a build system support cross-platform compilation
59+ 2 . To explain a build systems resolves dependencies
60+ 3 . To explain a build system supports compilation for different operating systems and architectures
6061
6162#### Caveats
6263
6970
7071_ This section lists important details for each point._
7172
72- * Mention that many build systems are available for C++.
73+ * Mention that many build systems are available for C++
7374* Mention benefits and challenges
75+ * Build system help to only compile the C++ files with code changes and not the complete project
7476
7577### Main: Usage of build system to compile a executable
7678
@@ -82,8 +84,10 @@ _This section lists important details for each point._
8284
8385A student should be able to:
8486
85- 1 . Write a configuration file to compile a C++ program with a main method
86- 2 . Use the build system to generate the executable
87+ 1 . Download a C++ package and build the package
88+ 2 . Write a configuration file to compile a C++ executable
89+ 3 . Pass compiler options via the build system
90+ 4 . Use the build system to generate the executable
8791
8892#### Caveats
8993
@@ -96,15 +100,16 @@ not easily transferable.
96100* Adding include paths to header files
97101* Adding compiler flags
98102* How to build Release and Debug builds
103+ * Linking external libraries to the C++ project
104+ * Support different operating systems, compilers, and architectures
99105
100106
101107### Advanced
102108
103109_ These are important topics that are not expected to be covered but provide
104110guidance where one can continue to investigate this topic in more depth._
105111
106- * How to build libraries
107- * How to include libraries to the executable
108- * How to find external libraries and include them
109- * How to add support for different compilers
110- * How to add support for different operating systems
112+ * How to build libraries
113+ * Write a configuration file for your own library
114+ * How to have external libraries be downloaded during the build process
115+
0 commit comments