Releases: awslabs/aws-crt-builder
Releases · awslabs/aws-crt-builder
Fixes for test running and compiler export
Fixed case where config dict was replaced and env got out of sync (#19) * Fixed case where config dict was replaced and env got out of sync * All targets should specify the exe variable * Fixed how ctest is invoked, simplified test config * Skip CTest if there is no build dir (like aws-crt-python, etc)
Project vs class resolution fixes
v0.5.3 Fixed project lookup of classes when resolving source only projects (…
Minor bugfix
Make sure that Action exists before looking for its subclasses (#16) * Make sure that Action the class exists before looking for its subclasses * Re-added aws-crt-python/aws-crt-java sanity tests
FreeBSD support, arch aliases, full config tree merging
FreeBSD support and config compilation (#15) * Added support for FreeBSD * Added darwin -> macos aliases * Fleshed out arch/os aliases, normalize targets always * Added aliases for FreeBSD/OSX uname -m arch * Try harder to divine branch when github lies to us * Always normalize toolchain platform * Install docker in ubuntu image for cross compile * Make sanity tests check for platform normalization via armv8 * Make sure compiler installation happens at package installation time * Fixed where path shenanigans * Finally got the courage to just recursively process config trees * Resolve symlinks when looking up executables
Complete cross-compile support
Fixes found porting java/cpp/python (#14) * Removed toolchain dependence on env, and simplified arg parsing, always work from source_dir * Make sure docker images are re-generated for every PR to builder * base dirs off source_dir, not launch_dir * Fixed config mashing * Added output when selecting git branch * Reduced redundant cmake args * Removed redundant cmake_binaries option * Ensure that download script in docker images busts the cloudfront cache * Added util to API * Moved libcrypto to using python for download/tarball * Prevent GC from destroying our late loaded classes * Fixed env in cross-compile container * All S3 uploads have .pyz extension * Containers must download with .pyz extension * Scoped build_env, pre_build_env, and post_build_env to just those steps
Cross-compile support for ARM
Use cross-compile + qemu instead of buildx docker images (#12) * Use dockcross for cross compiling * Removed pushd/popd shenanigans, all commands take paths relative to launch dir/--build-dir now * Added script to produce cross-compiled libcrypto * Added imports to builder * Added cross compile to sanity tests * Re-enabled cached docker builds since we don't need buildx * Added support for debian * Allow build/test steps to contain action names * Fixed bug where local builds would be unable to find their installed deps * Added the ability for targets to export variables to other projects' configs with late binding * Made dependencies and consumers also late binding
GCC, Maven, ARM fixes
gcc package fixes, maven pre-caching, less docker builds (#13) * Fixed gcc compiler ending up in packages * Cut the default timeouts way down on maven operations to hopefully speed up retries on ARM hosts with shitty networking * ARM targets will pre-cache maven dependencies * Pull builder from cloudfront, don't rebuild images on builder changes * Updated README
Fixed libcrypto in docker images, added C++ support
Fixed libcrypto in docker containers, misc C++ fixes (#11) * Fixed how libcrypto and cmake are applied to images * Make sure packages/compiler_packages can be per-package tool * Added support for --branch argument to specify a specific branch * Fix to allow projects to empty out build/test steps * Use path to compiler for C/C++ when telling cmake * Re-enabled c++ compiler installation by default * Fixed package names for gcc packages
Recursive submodule checkout support
v0.4.4 Always checkout submodules recursively (#10)
ARM support, command line fixes
ARM Raspbian/Alpine/AL2 Images and package installation/CLI fixes (#9) * Added more knowledge of package managers * Fixed argument parsing FOR REAL THIS TIME * Added sanity test for both ways of running an action * Massive clean up of docker image stuff * Use make -j 3 on arm builds * Fixed sudo installs on manylinux * Always build images the same way * Switched all builds to using downloaded binaries for libcrypto * Use pre-compiled cmake binaries from S3 on manylinux * Added a short wait to retries * Fixed case where projects were not always re-resolved, resulting in a loss of path info * Added raspbian support/detection