History log of /fuchsia/zircon/system/utest/dlfcn/rules.mk
Revision Date Author Comments
# 2485acfa 06-Apr-2018 Jeff Brown <jeffbrown@google.com>

[async] Tidy up the libasync API for tasks and receivers.

Remove flags fields and reserved storage.
Make the C++ wrappers friendlier.
Move the ops invokers into libasync.a itself in preparation for
adding versioning to the ops structure.
Add *_or_report_error() function variants which make it easier
to systematically handle errors while posting tasks or
enqueuing packets.
Removed the return value from task handlers to reduce confusion
around the lifetime of the task structure and remove an
unusual error handling scenario in case of a failure to
schedule a task to be repeated.
Pass the Task* to the handler for consistency with the C API.
Added some missing static library dependencies.
Reduce use of libfbl (except fbl/function.h).
Remove uses of private inheritance.

Change-Id: I7ccea5b68d6bccb2c7a236d112428c9b17fe8cdd


# 76df15cb 04-Apr-2018 Jeff Brown <jeffbrown@google.com>

[async] Move async-loop implementation to its own directory.

People keep getting confused by the relationship between async-loop
and the rest of the library. So let's fix it.

This change includes compatibility includes for loop.h to be removed
after upper layers are fixed to use the new paths.

Change-Id: I95c57be533fbd91468275bb2470890a4f10101eb


# 4a19c750 13-Feb-2018 Adam Barth <abarth@chromium.org>

[loader-service] Remove simple loader service

The "simple" version was used only for tests. Now we test the real code.
Removing the simple loader lets us simplify the real loader a bit.

Change-Id: I760fd06f430d156614f66c880d865882e8f286c8


# 1b4508c6 12-Feb-2018 Adam Barth <abarth@chromium.org>

[loader-service] Separate loader-service from launchpad

There's no particular reason to link the code for implementing the
shared library service into the library for launching executables.

This CL also removes the unused local shared library loader codepath,
which would secretly spin up a thread in your process to export your
namespace to processes you created if your parent didn't provide you
with a functional shared library loader service.

Change-Id: I0f2a31197df49831a7630ff72cf8a6a561c3dbd0


# 6408b1ec 06-Feb-2018 Adam Barth <abarth@google.com>

[ldmsg] Convert the loader service to FIDL wire format

Previously, the loader service used a hand-rolled protocol. Now the
protocol is specified in //zircon/system/public/zircon/loader.fidl.

Because this protocol is used by such low-level components (e.g.,
userboot and libc), we do not use generated code to implement the
protocol. Instead, we use a stand-alone library, ldmsg, which manually
encodes and decodes messages according to the wire format specified in
loader.fidl.

This CL also moves fidl/types.h into zircon/fidl.h because these type
definitions are now fundamental to the operation of the system. Putting
their definition in this location makes them easier to reference from
userboot and libc.

Change-Id: I9a7619b09b0ff543b8883ac53852ade9d5c033b6


# 39e49ee3 07-Feb-2018 Adam Barth <abarth@google.com>

Revert "[ldmsg] Convert the loader service to FIDL wire format"

This reverts commit 3ff2a3f316904d6acf709169fb12ee059231d5d9.

Additional review comments need to be addressed.

Original change's description:
> [ldmsg] Convert the loader service to FIDL wire format
>
> Previously, the loader service used a hand-rolled protocol. Now the
> protocol is specified in //zircon/system/public/zircon/loader.fidl.
>
> Because this protocol is used by such low-level components (e.g.,
> userboot and libc), we do not use generated code to implement the
> protocol. Instead, we use a stand-alone library, ldmsg, which manually
> encodes and decodes messages according to the wire format specified in
> loader.fidl.
>
> This CL also moves fidl/types.h into zircon/fidl.h because these type
> definitions are now fundamental to the operation of the system. Putting
> their definition in this location makes them easier to reference from
> userboot and libc.
>
> Change-Id: I806455813d3a397a2eff41badadf61c28812e328

TBR=kulakowski@google.com,swetland@google.com,abarth@google.com

Change-Id: I7ac90b53cdc152dc8cd892eb394ec7f641161ee9
No-Presubmit: true
No-Tree-Checks: true
No-Try: true


# 3ff2a3f3 06-Feb-2018 Adam Barth <abarth@google.com>

[ldmsg] Convert the loader service to FIDL wire format

Previously, the loader service used a hand-rolled protocol. Now the
protocol is specified in //zircon/system/public/zircon/loader.fidl.

Because this protocol is used by such low-level components (e.g.,
userboot and libc), we do not use generated code to implement the
protocol. Instead, we use a stand-alone library, ldmsg, which manually
encodes and decodes messages according to the wire format specified in
loader.fidl.

This CL also moves fidl/types.h into zircon/fidl.h because these type
definitions are now fundamental to the operation of the system. Putting
their definition in this location makes them easier to reference from
userboot and libc.

Change-Id: I806455813d3a397a2eff41badadf61c28812e328


# f3e2126c 12-Sep-2017 Roland McGrath <mcgrathr@google.com>

[zx] Magenta -> Zircon

The Great Renaming is here!

Change-Id: I3229bdeb2a3d0e40fb4db6fec8ca7d971fbffb94


# 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


# 8fdfaf23 23-Aug-2016 Brian Swetland <swetland@google.com>

[system] remove unneeded deps on libruntime

Change-Id: Ia612d777b36dada7fda112aa41a6d7a49a212da0


# 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


# 486eb2d2 09-Aug-2016 Roland McGrath <mcgrathr@google.com>

[ulib] [launchpad] Use mxr_mutex_t instead of C11 mtx_t

The low-level libraries like launchpad can't assume that their
callers will be using full-fledged C11 or POSIX threads. So don't
use standard synchronization methods, but only the ulib/runtime
layer instead.

Change-Id: Id861e56f78667249ec24910c9fc04514273bfe0b


# f82bdf3a 05-Aug-2016 Roland McGrath <mcgrathr@google.com>

[ulib] [musl] Add dlopen_vmo function

This adds a Magenta-specific extension to -ldl, declared in the
new header file <magenta/dlfcn.h>. The new function behaves like
dlopen, but takes a VM object handle instead of a file name.

Change-Id: Ia0748cf7b3e4c40ae0bf563f6d9f3182da04547b