Dependency restore mode and refactoring#39
Dependency restore mode and refactoring#39Fernthedev wants to merge 6 commits intofeat/static-shared-combinefrom
Conversation
- Use QPM.Package 1.0.0 - Properly support `dynamicLibOut` and `staticLibOut` - Store `libDependencyType` in `qpm.shared.json` - Refactor qpm qmod build for more flexibility - Refactor `qpm install` to use `dynamicLibOut` and/or `staticLibOut` - Allow choosing to restore header only, static or dynamic - No longer excluding `modloader` by default - Remove debug dynamic libraries - Remove `overrideSoName` - CMake `COMPILE_ID` now uses `qpm.json` id
|
What do you mean by |
|
this seems like a bad idea, some of the libraries, if they include debug symbols (not stripped) are 10x as large as the stripped version. example: BSML is 124 MB unstripped, and 5 MB stripped |
That's up to the discretion of the distributor in this instance, because maybe you think the consumers wouldn't need the baggage of those debug symbols. Keeping both in the current state seems reasonable but would have to be reworked in this PR, and am not sure it's as desirable as it sounds. |
This would allow you to specify for dependency restore, say, static linking flamingo as so: {
"id": "flamingo",
"version": "*",
"additionalData": {
"libDependencyType": "static"
}
} |
well you want the debug symbols somewhere, given that it makes debugging easier with the crash reporter mod. although you could argue that the crash reporter mod can just get the debug binary manually without qpm. for building with a mod it's obviously not required to exist |
dynamicLibOutandstaticLibOutlibDependencyTypeinqpm.shared.jsonqpm installto usedynamicLibOutand/orstaticLibOutmodloaderby defaultoverrideSoNameCOMPILE_IDnow usesqpm.jsonidqpmBecause of these changes, the following will cause existing packages (both for usage and restoring) to break.
dynamicLibOut, a path to the dynamic binarystaticLibOut, a path to the static binaryoverrideSoName, therefore CMakeidis now tied to mod id inqpm_defines.cmakesoto include debug symbols.qpmSupersedes #31