Duncan Ogilvie
2437eb90fe
Minor improvements
...
- Drastically improve quality of generated CMake
- Fix a regression with recursive globbing in the root
- Automatically include CSharpUtilities when using CSharp
2 years ago
Duncan Ogilvie
697b638723
Fix warning on macos
2 years ago
Duncan Ogilvie
53c88ceafa
Actually generate the set(CMAKE_MSVC_RUNTIME_LIBRARY)
...
Closes #69 (nice)
2 years ago
Duncan Ogilvie
69d844a152
Refactor msvc-static to msvc-runtime
2 years ago
gmh5225
af9a117f50
Fix merge
2 years ago
gmh5225
5fe8220728
Merge branch 'feature-msvc-static' of https://github.com/gmh5225/cmkr into feature-msvc-static
2 years ago
gmh5225
28f541cd3c
[feature] add CMP0091
2 years ago
gmh5225
2f3fd7b95e
Merge branch 'main' into feature-msvc-static
2 years ago
Duncan Ogilvie
5af2385cc3
Fix the way target.headers is merged into target.sources
...
- It would crash if you did not specify target.sources
- Headers with condition would be merged incorrectly
2 years ago
gmh5225
981c48dbc5
[feature] msvc-static
2 years ago
Duncan Ogilvie
5b6d9c3826
Replace illegal characters in the project name with _ when doing cmkr init
2 years ago
Duncan Ogilvie
a90988b81a
Update the formatting to now allow functions on a single line
...
This makes it less annoying when the IDE is auto-formatting while you type
2 years ago
Peter Meerwald-Stadler
534f955827
error: fix warning, signedness of comparison
...
cmkr/src/error.cpp:23:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘long unsigned int’ [-Wsign-compare]
23 | assert(i >= 0 && i < (sizeof(err_string) / sizeof(*(err_string))));
2 years ago
Duncan Ogilvie
9cdd0f7344
Escape lists when generating commands
3 years ago
Duncan Ogilvie
e69cf4d2b9
Add install.optional flag
3 years ago
Duncan Ogilvie
9a82f8c796
Temporarily remove the crt-linkage and library-linkage options
...
These require a lot more work to integrate properly with vcpkg, reimplement triplet detection and set a custom triplet
3 years ago
Duncan Ogilvie
13255c68cf
Use FetchContent_MakeAvailable for vcpkg in case they add CMakeLists.txt
3 years ago
Duncan Ogilvie
50d4a905b6
Merge pull request #55 from ZehMatt/fix/#54
...
Fix #54 : Fix settings not being properly quoted
3 years ago
Duncan Ogilvie
232e49e087
Add support for vcpkg CRT and library linkage customization
3 years ago
ζeh Matt
7408d42160
Fix #54 : Fix settings not being properly quoted
3 years ago
Duncan Ogilvie
9b0f18ee94
Fix a bug in fetch-content generation
3 years ago
Duncan Ogilvie
4de1500bb3
Refactor cmake injection
3 years ago
Duncan Ogilvie
85370968f8
Improved fetch-content support
...
Closes #38
3 years ago
Duncan Ogilvie
06a4c04df6
Add support for 'shallow' in fetch-content
3 years ago
Duncan Ogilvie
fef2a0215b
Error when recursively globbing in the project root
...
Closes #48
3 years ago
Duncan Ogilvie
c713606fd4
Error when using an unknown key in the root of the TOML
...
[error] Unknown key 'fetch-cntent'
--> cmake.toml:2
|
2 | [fetch-cntent.blah]
| ~~~~~~~~~~~~
3 years ago
Duncan Ogilvie
fe9b6587a9
Error when trying to parse an empty cmake.toml file
3 years ago
Duncan Ogilvie
c778a5fe2b
Do not omit non-optional documentation in option()
3 years ago
cursey
6f8b07a801
Allow specifying install component name
3 years ago
Duncan Ogilvie
37ca385673
Show vcpkg version when configuring
3 years ago
Duncan Ogilvie
fb16cc34b1
Fix a regression with invalid names being generated in vcpkg.json
3 years ago
Duncan Ogilvie
d905be1d13
Final touches
3 years ago
cursey
bcbc9d2b20
Remove use of std::make_unique for C++11 compliance
3 years ago
cursey
05324f593b
Improve code reuse for target cmds
3 years ago
cursey
2b7ee72e86
Separate template parsing and generation
...
* Reuse type for specifying template to use
* Add support for template add-function
* Add support for template pass-sources-to-add-function
3 years ago
cursey
61d5e64d87
Fix parser expecting to always find templates
3 years ago
cursey
eed1e38407
Add support for target templates
3 years ago
Duncan Ogilvie
6c1e388391
Add root, x64 and x32 conditions
3 years ago
Duncan Ogilvie
459ebb14b5
Support conditions everywhere
...
Closes #36
3 years ago
cursey
18419297f4
Bootstrap Vcpkg prior to FetchContent
3 years ago
Duncan Ogilvie
fa3b7a346c
Emit options and settings before the project()
3 years ago
Duncan Ogilvie
dc852b9a2f
Run clang-format
3 years ago
cursey
66621a9818
Fix spacing
3 years ago
cursey
2cd8ad0f18
Add missing const
3 years ago
cursey
084cbd6159
Cleanup vcpkg.json generation a little
3 years ago
cursey
b4b0f533a9
Validate vcpkg features
3 years ago
cursey
0acc9b4e5a
Report the badly formed package name to the user
3 years ago
cursey
61dfb0eb60
Fix tabbing in vcpkg.json for packages that have features
3 years ago
cursey
3201fd052e
Add support for vcpkg package features
3 years ago
Duncan Ogilvie
88e9241e9f
Improve onboarding experience
...
Thanks Matthaus :give:
3 years ago
Duncan Ogilvie
04bf40a5a6
Generate resources/version.hpp with the project version
3 years ago
Duncan Ogilvie
bb7874a6df
Improve compilation times
...
Compilation with make went from 13 -> 10 seconds.
CMAKE_UNITY_BUILD went even lower to 6 seconds.
Closes #11
3 years ago
Duncan Ogilvie
91dbf2986e
Remove dependency on nlohmann json
3 years ago
Duncan Ogilvie
2bcf15c4ed
Add support for object libraries
...
Closes #34
3 years ago
Duncan Ogilvie
6a825e15a0
Slightly improve cmkr init #24
3 years ago
Duncan Ogilvie
6809e8da41
Refactor and add checking for conditions
3 years ago
Duncan Ogilvie
9f9934e9a5
Implemented checking of keys in conditions
3 years ago
Duncan Ogilvie
77f4bf7da0
Some minor fixes related to newlines and formatting
3 years ago
Duncan Ogilvie
09c9c28934
Initial implementation of TomlChecker
...
This is to error when the user specifies an invalid key.
Closes #31
3 years ago
Duncan Ogilvie
f02ccc2309
Refactor fetch-content to vector<Content>
3 years ago
Duncan Ogilvie
37e9a1f1a0
Merge pull request #33 from pmeerw/fix-linux
...
Ceating a directory with no name apparently fails on Linux, but silen…
3 years ago
Peter Meerwald-Stadler
156fc961ec
Ceating a directory with no name apparently fails on Linux, but silently succeeds on Windows
3 years ago
Peter Meerwald-Stadler
31cc1c9481
Avoid explicit number of error strings in cmkr_error_status()
3 years ago
Peter Meerwald-Stadler
19101cd726
Reduce scope of err_string; add missing error codes
3 years ago
Peter Meerwald-Stadler
8ebf69da7e
Use C++ includes
3 years ago
Duncan Ogilvie
7c7144b183
Also generate CMakeLists.txt when calling cmkr init
3 years ago
Duncan Ogilvie
07797988b5
Fix a critical bug in generate_resources.cmake
3 years ago
Duncan Ogilvie
285614e4c2
Automatically generate cmkr.cmake when missing
3 years ago
Duncan Ogilvie
a718dfd675
Inherit conditions from the parent project
3 years ago
Duncan Ogilvie
25da3171f0
Add default conditions for gcc/clang/msvc
3 years ago
Duncan Ogilvie
95907602b4
Do not allow in-tree builds per default
3 years ago
Duncan Ogilvie
760b2a8511
Show a nice error when specifying an invalid vcpkg package name
3 years ago
Duncan Ogilvie
264e4ace18
Fix bug checking the root path of subdirectories
3 years ago
Duncan Ogilvie
3cd84a9708
Add basic support for [subdir.mydir]
3 years ago
Duncan Ogilvie
9932e501ce
Rename files to make the project easier to navigate
3 years ago
Duncan Ogilvie
1b37dd76a5
Rename things to try to make the code more readable
3 years ago
Duncan Ogilvie
eaf03eb785
Add support for target condition
3 years ago
Duncan Ogilvie
2450cfb2c9
Implement conditional properties
...
Closes #8
3 years ago
Duncan Ogilvie
af3807ca2b
Add support for private- target options
3 years ago
Duncan Ogilvie
7b20d8c54c
Restore [vcpkg].version functionality and add a test + documentation
4 years ago
MoAlyousef
ffdedbdace
fixes
4 years ago
MoAlyousef
bb7a0bc0ed
signal failure to write a vcpkg.json file
4 years ago
MoAlyousef
a32caca8f0
fix fetching vcpkg
4 years ago
MoAlyousef
f565ad2af0
fix formatting, add check for project version in manifest mode
4 years ago
MoAlyousef
dc4b59f05d
prelim vcpkg manifest support
4 years ago
Duncan Ogilvie
64b58425e6
Add missing code generation for link-options
4 years ago
Duncan Ogilvie
d4f0cdf152
Allow test working directories with a relative path
4 years ago
Duncan Ogilvie
acd3688d16
Fix [fetch-content]
4 years ago
Duncan Ogilvie
9622334bf1
Switch to using target_sources instead of passing sources directly to add_xxx
4 years ago
Duncan Ogilvie
6ad29ef624
Allow conditional subdirs
4 years ago
Duncan Ogilvie
718c2c7527
Get rid of redundant name field in cmkr init
4 years ago
Duncan Ogilvie
34c12379c2
Add a check to see whether cmkr was run before pushing
4 years ago
Duncan Ogilvie
6395267e4b
Merge cmkrlib into the cmkr target
4 years ago
Duncan Ogilvie
c4673d59e2
Simplify default conditions
...
It was JustMagic's idea to add 'lunix'
4 years ago
Duncan Ogilvie
220dec6bbb
Merge pull request #18 from darknessxk/task/change-init-code
...
Task/change init code
4 years ago
darknessxk
fbd07c47bc
Added argument to target name
4 years ago
Duncan Ogilvie
17d4dc0555
Move all links to the new organization
4 years ago
Duncan Ogilvie
7cdf36f317
Initial support for conditional arguments
4 years ago
Duncan Ogilvie
bf14f069a7
Minor fixes (removed TODOs and rename checks)
4 years ago
Duncan Ogilvie
3b4bc919a1
Merge branch 'bootstrapper-upgrade'
4 years ago