vector-of-bool
01928f27ae
Allow simple fs transformations on cloned repos for the catalog
4 lat temu
vector-of-bool
e43bb7915b
Migrate fully to new json5-based packaging
4 lat temu
vector-of-bool
66c2712ee4
Fix: Don't break paths to dependencies when the repo-dir is a relative path
4 lat temu
vector-of-bool
027b7b9a84
Default to static linking runtime libs with GCC and Clang
4 lat temu
vector-of-bool
c09558eb8d
`build-deps` now uses json5 as well
4 lat temu
vector-of-bool
69720f0a44
Very rudimentary template rendering, only accesses a small number of resources yet.
4 lat temu
vector-of-bool
b1e5315a9b
Early iteration of config-headers.
This is a very rudimentary version. All it does is copy and rename the
template header file and place it in the build directory in a special
subdirectory that is added as an #include-path.
There is some code duplication and cleanup necessary. There are a
few "magic strings" and "magic paths" that need to be removed as well.
4 lat temu
vector-of-bool
4157ce571e
Use json5 toolchain files
4 lat temu
vector-of-bool
5565294072
Update tests and docs to refer to library.json5
4 lat temu
vector-of-bool
8e7e83fedb
The `namespace` field is now required
4 lat temu
vector-of-bool
9f82212bdc
Transition to using JSON5 for package manifests
4 lat temu
vector-of-bool
07ca7e03d9
The `depends` key is optional in JSON import
4 lat temu
vector-of-bool
4cb09040ee
Bump dep version used in build-deps test to work on MSVC
5 lat temu
vector-of-bool
c481b92f94
Emit a libman index for build-deps
5 lat temu
vector-of-bool
b12bdf83ec
Separate type to record dependencies only
5 lat temu
vector-of-bool
cef6707c36
`build-deps` command to build a set of dependencies
5 lat temu
vector-of-bool
93ce3abbdf
Remove old build code
5 lat temu
vector-of-bool
6e471b7880
Cleanup for `library_plan`, and put executables in subdirs. (Required moving dds.main.cpp)
5 lat temu
vector-of-bool
a2b36cc5df
Downloading deps now takes place as part of the main build
5 lat temu
vector-of-bool
6dcfe381a5
Remove old `deps build` code
5 lat temu
vector-of-bool
8bf05a557d
Default-enable apps, tests, and warnings for the root project
5 lat temu
vector-of-bool
f9b4d5f85c
Fix up all tests to work with the catalog
5 lat temu
vector-of-bool
0d23ff3146
Put the obtained sdist in a useful location
5 lat temu
vector-of-bool
d3844017ff
New `get` for catalog, just a copy of old repo `get` for now
5 lat temu
vector-of-bool
66f7b534fd
New smoke tests for catalog operations
5 lat temu
vector-of-bool
147ced5c9a
Test cases for Catch2 integration
5 lat temu
vector-of-bool
85ae3b2150
Attach mtimes to individual deps, not files. Fixes a miscompile (!!)
Fix bug:
- Assume X and Y depend on Z
- X and Y both compile clean.
- A change is made to Z
- X and Y are now "out-of-date," and marked to compile.
- The change causes a failure in X, but Y still compiles clean.
- Because X compiles clean, the database will be updated and store the new mtime of Z!
- Attempting to compile again, the mtime of Z will not be considered "changed" since the last compile.
- X depends on Z, but Z is not marked "changed," and X will not be recompiled, even though it is still in a dirty state!
- Linking of X and Y produces wild results. UB. ORD NDR. Badness.
The fix is to have the edges in the graph between inputs and outputs
store the mtime of the input, rather than to store that mtime on the
file itself. Thus, each individual relationship between inputs and
outputs will track the "outdated-ness" of themselves.
This also adds a test which can correctly reproduce the issue in absense of the fix.
5 lat temu
vector-of-bool
329ec9848e
Fixup some stray refs to gcc-8
5 lat temu
vector-of-bool
b05153d5cf
Use gcc-9 in CI
5 lat temu
vector-of-bool
cbebbe1650
Use gcc-9 in CI
5 lat temu
vector-of-bool
409dc2c83e
Use package_id in remote package listings
5 lat temu
vector-of-bool
990e3503af
Incorporate the new package_id type, as use `@` as a name separator
5 lat temu
vector-of-bool
9b15738526
Fix windows: Can't replace an executable that is currently open
5 lat temu
vector-of-bool
fc98d9d859
End-to-end test to get, build, and use an external library
5 lat temu
vector-of-bool
8546a5722a
Automatic package generation from unchanged Git remotes
5 lat temu
vector-of-bool
1d49aabf3a
Test basic non-empty sdist creation
5 lat temu
vector-of-bool
16c06e8fe0
Refactor CI into reusable python modules
5 lat temu
vector-of-bool
e8462f2347
unused `pass`
5 lat temu
vector-of-bool
8aaa7d8f91
Test that downloads a remote package and uses it in an executable
5 lat temu
vector-of-bool
9034ce8b14
Fix passing lm path to DDS executable
5 lat temu
vector-of-bool
89db2af764
Use an HTTP URL to clone the git remote
5 lat temu
vector-of-bool
62b60c2dfe
New smoke tests based on pytest
5 lat temu
vector-of-bool
d64b24b9d3
Remove old tests
5 lat temu
vector-of-bool
648424cbce
library.dds is now required for sdist creation
5 lat temu
vector-of-bool
a439fbb96b
Fix tests to conform
5 lat temu
vector-of-bool
ab19007b62
More tests
5 lat temu
vector-of-bool
c8b432e4da
Fix macOS failing to generate an empty archive
5 lat temu
vector-of-bool
85ebd63bcf
Add `empty.test`
5 lat temu