Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
how [2022/02/25 20:45] – deva | how [2022/02/26 12:52] (current) – deva | ||
---|---|---|---|
Line 7: | Line 7: | ||
* '' | * '' | ||
* '' | * '' | ||
+ | * '' | ||
+ | * cross-compilation and tool-chain control | ||
* trixy self-re-invoke (after re-compilation) when configuration files change. | * trixy self-re-invoke (after re-compilation) when configuration files change. | ||
* tree of self-dependency weirdness: | * tree of self-dependency weirdness: | ||
Line 34: | Line 36: | ||
resolv tool-chain (compiler, linker, etc) and store in map: C | resolv tool-chain (compiler, linker, etc) and store in map: C | ||
run through externals and resolv them, store results in map: D | run through externals and resolv them, store results in map: D | ||
- | generate config cache .cc file with A, B, C and D</ | + | generate config cache .cc file with A, B, C and D |
- | * '' | + | Scenarios: |
- | * cross-compilation and tool-chain control | + | |
+ | 1. No ctor deps changed (normal run) | ||
+ | | ||
+ | OK | ||
+ | |||
+ | 2. a new configuration.cc has been generated (user called configure) | ||
+ | | ||
+ | * rebuild | ||
+ | OK | ||
+ | |||
+ | 3. one or more ctor.cc files changed (run with args) | ||
+ | * rebuild | ||
+ | | ||
+ | OK | ||
+ | |||
+ | 4. run with reconfigure (with other args) | ||
+ | " | ||
+ | | ||
+ | | ||
+ | | ||
+ | OK | ||
+ | </ | ||
* independent target compilation (with dependency deduction) | * independent target compilation (with dependency deduction) | ||
* '' | * '' | ||
Line 42: | Line 65: | ||
* '' | * '' | ||
* compilation-database (json) for c-lion and others | * compilation-database (json) for c-lion and others | ||
+ | |||
+ | * currently working on: | ||
+ | * external dependency flags with '' | ||
+ | * manual dependency | ||
+ | * automatic dependency deduction through searches | ||
* future work: | * future work: | ||
- | * external dependency | + | * more external dependency |
+ | * pkg-config | ||
+ | * conan | ||
+ | * pre-/ | ||
+ | * globbing | ||
+ | * custom target generation through external application (generators) | ||
+ | * lambda functions as generators | ||
* custom compilation configuration control through '' | * custom compilation configuration control through '' | ||
* '' | * '' | ||
* documentation :-) | * documentation :-) | ||