Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
start [2021/09/27 17:40] devastart [2023/07/24 15:25] (current) – [About Ctor] deva
Line 6: Line 6:
 Well, wonder no more - **ctor** is here! Well, wonder no more - **ctor** is here!
  
-"'ctor" is an often used short-hand form of the word "constructor" referring to the class function that sets up the internals of an object in object oriented programming - so the intended pronunciation of "ctor" is "constructor".+"'ctor" is an often used short-hand form of the word "constructor" referring to the class function that sets up the internals of an object in object oriented programming - so the intended pronunciation of "ctor" is //constructor// but sometimes also referred to as //see-tor//.
  
 Ctor is a C++ based build system, making it possible to configure and build complex projects without writing a single line of non-C++. Ctor is a C++ based build system, making it possible to configure and build complex projects without writing a single line of non-C++.
  
 It aims towards the feature-richness found in auto-tools and beyond, but with a compilation speed rivalling that of raw makefiles. It aims towards the feature-richness found in auto-tools and beyond, but with a compilation speed rivalling that of raw makefiles.
 +
 +And the //only// dependency is a functioning C++ compiler!
  
 ======Get it====== ======Get it======
Line 42: Line 44:
 In the root of your project you can create your first ''ctor.cc'' build configuration file: In the root of your project you can create your first ''ctor.cc'' build configuration file:
 <code c++> <code c++>
-#include <libctor.h>+#include <ctor.h>
 namespace namespace
 { {
-BuildConfigurations myConfigs()+ctor::build_configurations myConfigs(const ctor::settings& settings)
 { {
   return   return
Line 52: Line 54:
         .target = "hello",  // output filename         .target = "hello",  // output filename
         .sources = { "hello.cc", "world.cc" }, // list of source files to compile         .sources = { "hello.cc", "world.cc" }, // list of source files to compile
-        // See libctor.h for more options+        // See ctor.h for more options
       }       }
     };     };
Line 64: Line 66:
 Now you just need to compile the ''ctor.cc'' file along with the ''libctor.a'' library: Now you just need to compile the ''ctor.cc'' file along with the ''libctor.a'' library:
 <code> <code>
-g++ ctor.cc -Llibctor/build -lctor -Ilibctor/src -pthread -o ctor+g++ -std=c++20 ctor.cc -Llibctor/build -lctor -Ilibctor/src -pthread -o ctor
 </code> </code>