aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/GlobalLib.cpp39
1 files changed, 23 insertions, 16 deletions
diff --git a/src/GlobalLib.cpp b/src/GlobalLib.cpp
index 44652b8..cbd822e 100644
--- a/src/GlobalLib.cpp
+++ b/src/GlobalLib.cpp
@@ -124,21 +124,28 @@ namespace sibs
}
});
- // TODO: Create build path if it doesn't exist
- string debugBuildPath = packageDir + "/build/debug";
- Result<bool> buildFileResult = ninja.createBuildFile(sibsConfig.getPackageName(), sibsConfig.getDependencies(), debugBuildPath.c_str(), linkerFlagCallbackFunc);
- if(buildFileResult.isErr())
- return Result<string>::Err(buildFileResult.getErrMsg());
-
- Result<bool> buildResult = ninja.build(debugBuildPath.c_str());
- if(buildResult.isErr())
- return Result<string>::Err(buildResult.getErrMsg());
-
- string staticLibPath = debugBuildPath;
- staticLibPath += "/lib";
- staticLibPath += name;
- staticLibPath += ".a";
- linkerFlagCallbackFunc(staticLibPath);
- return Result<string>::Ok(staticLibPath);
+ if(ninja.getSourceFiles().empty())
+ {
+ return Result<string>::Ok("");
+ }
+ else
+ {
+ // TODO: Create build path if it doesn't exist
+ string debugBuildPath = packageDir + "/build/debug";
+ Result<bool> buildFileResult = ninja.createBuildFile(sibsConfig.getPackageName(), sibsConfig.getDependencies(), debugBuildPath.c_str(), linkerFlagCallbackFunc);
+ if (buildFileResult.isErr())
+ return Result<string>::Err(buildFileResult.getErrMsg());
+
+ Result<bool> buildResult = ninja.build(debugBuildPath.c_str());
+ if (buildResult.isErr())
+ return Result<string>::Err(buildResult.getErrMsg());
+
+ string staticLibPath = debugBuildPath;
+ staticLibPath += "/lib";
+ staticLibPath += name;
+ staticLibPath += ".a";
+ linkerFlagCallbackFunc(staticLibPath);
+ return Result<string>::Ok(staticLibPath);
+ }
}
} \ No newline at end of file