aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--backend/ninja/Ninja.cpp4
-rw-r--r--src/main.cpp4
2 files changed, 7 insertions, 1 deletions
diff --git a/backend/ninja/Ninja.cpp b/backend/ninja/Ninja.cpp
index 06345d9..6104d52 100644
--- a/backend/ninja/Ninja.cpp
+++ b/backend/ninja/Ninja.cpp
@@ -856,6 +856,9 @@ namespace backend
return buildResult;
}
+ // TODO: If tests are being run (sibs test) and root project is an executable, do not run compile (above code) as executable.
+ // Sibs test will compile root project as dynamic library so you end up compiling the project twice, first as an executable and then as a dynamic library.
+ // Even if the root project has been built before and there is cached object, it will take a few seconds to run compile
Result<bool> buildTestResult = buildTests(projectGeneratedBinary, config, savePath, dependencyExportIncludeDirs);
if(!buildTestResult)
return buildTestResult;
@@ -863,6 +866,7 @@ namespace backend
return Result<bool>::Ok(true);
}
+ // TODO: Add "c++" file extension, seems to be used in some places?
const _tinydir_char_t *sourceFileExtensions[] = { TINYDIR_STRING("c"), TINYDIR_STRING("cc"), TINYDIR_STRING("cpp"), TINYDIR_STRING("cxx") };
bool isSourceFile(tinydir_file *file)
{
diff --git a/src/main.cpp b/src/main.cpp
index dcc38d1..bd3171f 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -33,8 +33,10 @@ using namespace std::chrono;
// This can be done by specifying dependencies under [dependencies.platform] instead of [dependencies],
// for example for win32: [dependencies.win32]
-// TODO: When `install` command is added, the target executable and shared library dependencies should be put into
+// TODO: When `package` command is added, the target executable and shared library dependencies should be put into
// an archive to make the executable distributable (especially on windows). A GUI installer could then extract the archive.
+// On Linux we can use https://github.com/DEC05EBA/glibc_version_header to make the executable work on many distros
+// without compiling project from source on the end-users machine.
// TODO: Add optional dependencies [optional_dependencies]. Optional dependencies should also support platform specific dependencies [dependencies.cmake].
// Might need to make it possible to define variables if a dependency exists (or doesn't exist) because the code might have