#
a0672e5d |
|
02-May-2018 |
Roland McGrath <mcgrathr@google.com> |
[public][ulib][dev] Add __FALLTHROUGH macro for warning suppression GCC 7 enables -Wimplicit-fallthrough with -Wextra, so we'll get it. Clang has it available, so start using it and clean up code accordingly. The GCC feature will actually recognize some formulaic comments to suppress the warning. But there's also an explicit syntax, and C++17 added a standard one. So use that instead, via the new macro __FALLTHROUGH in <zircon/compiler.h>. TC-36 #comment Clean up code in preparation for more -Wimplicit-fallthrough Change-Id: I28309c91c32db1313d52f4255836c5ea687e141f
|
#
16656ae0 |
|
05-Apr-2017 |
Brian Swetland <swetland@google.com> |
[build] flatten the build Previously we treated kernel/, system/, and third_party/ as overlays on a shared namespace. This required the concept of "canonical" module names, and a lot of complexity to ensure that things didn't collide and the build worked. This change gets rid of that, no longer passes -I to make, so that include directives from our *.mk files do not magically wildcard across various paths, etc. The most user-visible change is that everywhere where a module name is specified (MODULE_DEPS, MODULE_LIBS, etc), full module names like kernel/lib/io or system/ulib/mxio must be used instead of previously-allowed "short" names like lib/io and ulib/mxio. The build output still has a similar shape, but the first segment of the module path (kernel/, system/, or third_party/) is no longer elided under $(BUILDDIR) Change-Id: I525aba1da1c86eb7a86007bddc669f7eeebfedd5
|
#
12242caa |
|
07-Mar-2017 |
Brian Swetland <swetland@google.com> |
[build][musl] refer to musl libc as ulib/c This makes the build rules and the intermediate output files easier to understand, without having to modify the path where musl libc lives. The biggest observeable difference is the build intermediate files: $ ls build-magenta-pc-x86-64/ulib/c config-module.h libc.abi.h libc.abi.stamp libc.so libc.so.id libc.so.strip libc.a libc.abi.o libc.a.opts libc.so.abi libc.so.opts third_party which previously were at build-magenta-pc-x86/ulib/musl and named libmusl.* and the replacing of ulib/musl with ulib/c in the library dependencies of all the rules.mk files (the vast bulk of this change) Change-Id: If9c5d522099d2c9ac5bdb666b8e67a2eb3d316ee
|