#
02c9895f |
|
02-Sep-2018 |
Kent McLeod <Kent.Mcleod@data61.csiro.au> |
CMake: Add missing dependency to CPPFile function
|
#
43b7bca8 |
|
21-Aug-2018 |
Adam Felizzi <Adam.Felizzi@data61.csiro.au> |
CMake: CPPFile EXACT_NAME creates a temp copy Modified the behaviour of the EXACT_INPUT option within the CPPFile helper function. Now named EXACT_NAME, the option copies the input file to a temporary file. The name of the temporary file is also passed in by the caller. This step in necessary in getting the CPP step to correctly depend on the targets given by the caller (through EXTRA_DEPS). Also updated the CPP generation of the kernel_all.i file to reflect the change.
|
#
639b7fbd |
|
23-Jul-2018 |
Kent McLeod <Kent.Mcleod@data61.csiro.au> |
CMake: Add get_absolute_list_source_or_binary This function checks CMAKE_CURRENT_LIST_DIR and then calls get_absolute_source_or_binary if the file wasn't found
|
#
b50c6a86 |
|
03-Apr-2018 |
Corey Lewis <corey.lewis@nicta.com.au> |
cmake: Use ABSOLUTE instead of REALPATH REALPATH was unnecessary and results in resolving symlinks in the target, although the working directory will not have its symlink resolved. This results in very strange paths from the base directory (which is the working directory) to the target.
|
#
ccac858d |
|
14-Feb-2018 |
Adrian Danis <Adrian.Danis@data61.csiro.au> |
cmake: Remove GenCPPCommand This helper was ugly when written and simply should not be used over the CPPFile helper.
|
#
a19a2b3b |
|
14-Feb-2018 |
Adrian Danis <Adrian.Danis@data61.csiro.au> |
cmake: CPPFile New helper for just pre-processing files This is a new version of GenCPPCommand that uses an OBJECT library intermediate to get cmake to do 'arbitrary' compilation (by adding the -E flag) where the result does not need to be linkable. The advantage of this over the GenCPPCommand version is there is no need for trying to manually invoke GCC with all the correct arguments lists.
|
#
118a7869 |
|
14-Feb-2018 |
Adrian Danis <Adrian.Danis@data61.csiro.au> |
cmake: get_absolute_source_or_binary is a function As a macro this helper would not operate as expected if output and input were defined as the same variable. Making a function and explicitly writing into the PARENT_SCOPE fixes this and also makes the code simpler
|
#
4b8a3e24 |
|
06-Feb-2018 |
Adrian Danis <Adrian.Danis@data61.csiro.au> |
config: Reset options to default when enabled This change makes values take on more intuitive and expected defaults when gradually configuring the kernel, either programatically or through the graphic interfaces
|
#
33192cd8 |
|
31-Jan-2018 |
Kent McLeod <Kent.Mcleod@data61.csiro.au> |
cmake config_choice: save options in cache var This is to make it possible to enumerate all config options instead of just the 'valid' ones that are saved as the STRINGS property.
|
#
9a89cbe4 |
|
14-Nov-2017 |
Adrian Danis <Adrian.Danis@data61.csiro.au> |
cmake: TOPLEVELTYPES declared as target property TOPLEVELTYPES is not intended to be configurable by the user, rather is a reflection on the types defined by the source. This changes the TOPLEVELTYPES argument to be a property, allowing it to be constructed as a generator expression when generating BF files. By being a property, and not something like a global property, it removes the need to ensure that additions to TOPLEVELTYPES are done prior to any bitfield target definitions.
|
#
a2c8462e |
|
14-Nov-2017 |
Adrian Danis <Adrian.Danis@data61.csiro.au> |
cmake: Expand lists in BF generation Uses the COMMAND_EXPAND_LISTS flag to allow for generator expressions in parameters to GenBFCommand. As lists are now being expanded the 'args' variable must also be quoted.
|
#
aa3fc06c |
|
02-Nov-2017 |
Adrian Danis <Adrian.Danis@data61.csiro.au> |
cmake: Make variables show up if previously hidden Previously if a variable had unmet dependencies and had been hidden, by being made an internal variable, it would not have been unhidden by the use of `option`. This emulates the behaviour of `option` that we were wanting, but additionally using `FORCE` to override the `INTERNAL` setting
|
#
24a69963 |
|
01-Nov-2017 |
Adrian Danis <Adrian.Danis@data61.csiro.au> |
cmake: Directly generate configuration files Uses file(GENERATE) to directly create the contents of generated configuration files instead of awkwardly using custom commands to echo the contents of multi line strings into files.
|
#
89fb678d |
|
01-Nov-2017 |
Adrian Danis <Adrian.Danis@data61.csiro.au> |
cmake: Invoke compilations without echo and xargs Newer versions of cmake provide a COMMAND_EXPAND_LISTS option that allows a quoted string, such as "a;b" to be given to a COMMAND parameter and have it expand into multiple arguments. Using this we can much more nicely generate some of our COMMAND invocations, at the cost of requiring a more recent cmake version
|
#
38cc67e8 |
|
01-Nov-2017 |
Gerwin Klein <gerwin.klein@data61.csiro.au> |
slightly more Mac friendly cmake commands Mac has BSD sed, not GNU sed; tr seems to be more portable.
|
#
3a48b9fa |
|
26-Oct-2017 |
Adrian Danis <Adrian.Danis@data61.csiro.au> |
cmake: Unset CACHE variables from the CACHE These variables were meant to be removed from the cache
|
#
777f1964 |
|
25-Oct-2017 |
Adrian Danis <Adrian.Danis@data61.csiro.au> |
cmake: Correctly set options to their DEFAULT_DISABLED values The config_option helper was previously using cmake_dependent_option, which supposedly took a value to set the option to in the case where it was disabled. However, this only sets the value in the current function context, and not the cache. I do not understand why this is the case and it seems to make that functionality completely useless. This commit simply does the dependency checking itself and correctly sets the disabled value.
|
#
eac4f6bf |
|
19-Sep-2017 |
Adrian Danis <Adrian.Danis@data61.csiro.au> |
proof: Defer theory dependencies to isabelle Instead of explicitly depending on Kernel_C.thy prior to generating proofs, this removes the dependency check and leaves isabelle to check the dependency upon import.
|
#
0b730720 |
|
16-Mar-2017 |
Adrian Danis <Adrian.Danis@data61.csiro.au> |
Add a CMake based build system This commit adds an alternate build system using CMake that operates indepenently of the existing Kconfig+Kbuild+make based build system
|