#
b0ee6dd6 |
|
21-Sep-2018 |
George Kulakowski <kulakowski@google.com> |
[build] Make a number of static libraries build with -fvisibility=hidden ZX-1895 #comment Test: CQ Change-Id: Id3252fcb1de5a6f6e1897da86fba92e2be9d0319
|
#
f3e2126c |
|
12-Sep-2017 |
Roland McGrath <mcgrathr@google.com> |
[zx] Magenta -> Zircon The Great Renaming is here! Change-Id: I3229bdeb2a3d0e40fb4db6fec8ca7d971fbffb94
|
#
e379d886 |
|
24-Jul-2017 |
Roland McGrath <mcgrathr@google.com> |
[build] Support AddressSanitizer userland build with USE_ASAN=true ASan builds by default go in build-$PROJECT-asan/. The buildall and run-magenta scripts do ASan builds with the -A switch. Code that is incompatible with sanitizer builds adds $(NO_SANITIZERS) to MODULE_COMPILEFLAGS. Everything else in userland gets built with ASan. Using USE_ASAN=true requires a Clang toolchain with the ASan runtime shared library, which will not land for a while yet. MG-71 # Enabled all-or-nothing USE_ASAN build switch for Magenta standalone. Change-Id: Ifc0628934c19affcb909b20f3cfdcc86ee54c2f9
|
#
eba99be8 |
|
25-May-2017 |
Mark Seaborn <mseaborn@google.com> |
[runtime] Remove mxr_once(), since it is unused pthread_once() can be used instead, and it's standard. Change-Id: I0166d5934117e0ba38e63083f1497cd5e5fa831d
|
#
5e5ef509 |
|
24-May-2017 |
George Kulakowski <kulakowski@google.com> |
[ulib][runtime] Remove unneeded sysinfo runtime functions libc can call the syscall itself. Change-Id: I98bd863bfca73063ebb1c136cc04212274033565
|
#
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
|
#
c8147e06 |
|
24-Feb-2017 |
Roland McGrath <mcgrathr@google.com> |
[build][userboot][ulib][runtime][musl] Support userland safe-stack build Add build machinery to enable safe-stack for user-mode code by default when building with Clang. Annotate code on the early startup path so it won't use the safe-stack ABI before the thread pointer and stacks are set up. Disable safe-stack entirely for everything that goes into userboot. Change-Id: Ifb1bc785bb0cc97164b937b3a32d5bfe26d67ef1
|
#
ffe5a0c1 |
|
19-Oct-2016 |
Roland McGrath <mcgrathr@google.com> |
[ulib][runtime][magenta] mx_strstatus -> mx_status_get_string Rename it to follow the syscall naming style, and put it in the vDSO rather than in libruntime, which is not exported outside the magenta build tree. Change-Id: I956e532f2c57913e3b654591592f7b7c1d489171
|
#
b0173e4e |
|
17-Oct-2016 |
Brian Swetland <swetland@google.com> |
[build] do not export libacpica.a and libruntime.a Change-Id: I9c66416dc73180a2a8444dc25d76830918d339a0
|
#
d9a11779 |
|
24-Aug-2016 |
George Kulakowski <kulakowski@google.com> |
[runtime] Remove deprecated mxr_process code The new interface (mxr_processargs) is now used everywhere, so this can be removed. Change-Id: I26507ffc8f55f43f4c5de2c17dc74c9ef612dcdf
|
#
ffd06b77 |
|
22-Aug-2016 |
George Kulakowski <kulakowski@google.com> |
[tls] Reintroduce ELF TLS into musl Change-Id: I87a7458387aa65b9d1534e51ad5f3abed8587af6
|
#
19043307 |
|
17-Aug-2016 |
George Kulakowski <kulakowski@google.com> |
[runtime][ddk] Move completion_t to ddk Change-Id: Id9516aefd4237d28144392979758ef284b92b44e
|
#
66a201f1 |
|
16-Aug-2016 |
Brian Swetland <swetland@frotz.net> |
[system] align license and license banners with Fuchsia This adjusts the Magenta userspace code to match the prevailing license in Fuchsia (three-clause BSD), using the same banner and license text. Change-Id: I6b6d79435c5dbaa32027888874849e4f47aaa7be
|
#
aadc4bb0 |
|
10-Aug-2016 |
Roland McGrath <mcgrathr@google.com> |
[ulib] [runtime] Add mxr_once_t This is the minimal runtime layer's version of C11's once_flag or POSIX's pthread_once_t. Change-Id: I80a49e0f4f09a60474a315a797df8d1e3c4b14b5
|
#
65be1de5 |
|
02-Aug-2016 |
Roland McGrath <mcgrathr@google.com> |
[ulib] [runtime] New <runtime/processargs.h> API This is a new API for handling the processargs bootstrap message that is clean and reentrant. Eventually this will supplant the old <runtime/process.h> API. So far only the dynamic linker's startup code uses it. Change-Id: Iaf1f6fb5e3a4c91ad9308802306febba9f435123
|
#
f9784c03 |
|
01-Aug-2016 |
Roland McGrath <mcgrathr@google.com> |
[ulib] [runtime] Add mxr_message_size helper This prettifies the standard use of mx_message_read for probing message size. Change-Id: I2246accc7bec59cfd27a4bd06843029a5ed1de02
|
#
c0a2d0ab |
|
18-Jul-2016 |
Roland McGrath <mcgrathr@google.com> |
[runtime] Don't build libruntime.so, mark functions hidden No longer build libruntime as a shared library. Instead, make the static library define all its symbols with hidden visibility so that it can be linked statically into a shared library without exporting any libruntime symbols. Change-Id: Iaca549cb69220ee5f62e4f95a4d4b9c3b80199b4
|
#
a732ad03 |
|
12-Jul-2016 |
Roland McGrath <mcgrathr@google.com> |
[magenta][runtime] Make libmagenta and libruntime freestanding libruntime should have no dependencies on anything but libmagenta. The -ffreestanding switch tells the compiler not to generate calls to standard libc functions (like memcpy or memset). The source code must avoid explicit dependencies on libc functions too. Change-Id: I83e259e37084a093ed72dc0ee0f539350f0a48f3
|
#
08aea769 |
|
12-Jul-2016 |
George Kulakowski <kulakowski@google.com> |
[ulib][runtime] Introduce mxr_completion_t for waiting and signalling Change-Id: I283ed515043078737b13f95f83f37a7904df7353
|
#
ab1c8134 |
|
08-Jul-2016 |
Brian Swetland <swetland@google.com> |
[build] build shared libraries and separate crt1.o - shared libraries are a work in progress, this change provides the core build machinery to support them - user library modules that declare a MODULE_SONAME cause a shared library to be built - user apps and libs may use MODULE_LIBS to depend on shared libs and MODULE_STATIC_LIBS to depend on static libs - MODULE_DEPS is currently converted to MODULE_STATIC_LIBS - libc is arranged to build a separate shared version but that is disabled at the moment due to build error - all of userspace is being build -fPIC for the moment - libruntime and libmagenta are configured to generate shared libraries - make the x86 -fno-pic only apply to KERNEL_COMPILEFLAGS Change-Id: Iccebe078ad18069a97173228d1476a5e95a2b879
|
#
ec1b9a8c |
|
22-Jun-2016 |
Brian Swetland <swetland@google.com> |
[build] generate build-*/sysroot/{include,lib,...} User libraries marked for export with MODULE_EXPORT := name are packaged up under sysroot/lib/lib<name>.a and their public headers are packaged under sysroot/include/... libc is a special case as its crt*.o is separated from the .a file to be standalone (so it may be linked first) and its headers are installed under sysroot/include/... The SYSROOT_MEGA_LIBC option (enabled for now) combines the listed libraries into one hugenormous libc.a, which is a gross violation of layering and symbol visibility, but simplifies the link arguments for the moment. Once we have shared libraries we can abandon this horror. Change-Id: I4d1c9cf379222cfafcaf3025c7243c3fbd1b0fd1
|
#
2684f7a9 |
|
14-Jun-2016 |
Ankur Mittal <anmittal@google.com> |
[ulib] Add system calls for getting processor count Added system call to get processor count. Change-Id: I0061d139e252a12876a0e7845a0a143c8c403d75
|
#
53b9e1c8 |
|
15-Jun-2016 |
The Fuchsia Authors <authors@fuchsia.local> |
[magenta] Initial commit
|