The individual debug heap implementations are now exposed via a
structure of function pointers and a common frontend dispatches the
malloc and malloc_debug APIs through them.
The MALLOC_DEBUG environment variable can be used to select the guarded
heap by adding 'g', otherwise the debug heap is used as the default.
Consequently the separate libroot_guarded is not needed anymore and has
been removed.
To allow the use of environment variables this early, init_env_post_heap
has been added and the heap dependent atfork() moved there. This allowed
to fold the code of init_heap_post_env into init_heap so the former has
been removed.
* Add support for macports lib and headers dirs.
* Link libs change for Mac OS X for tool build.
Signed-off-by: Augustin Cavalier <waddlesplash@gmail.com>
* This directory is for services that are launched per user (in a user
context), but installed globally.
* This is now used for the default "user" configuration; before this was
put into ~/config/non-packaged/data/launch, which didn't really fit,
and has the huge disadvantage that it cannot be updated.
* Fixes part of #12227.
* Instead of launching Tracker/Deskbar directly, we now launch the
Login application.
* This will now start a new session for the selected user (the password
is currently ignored).
* When a user session is started, the launch_daemon forks, and the
child then restarts the LaunchDaemon application in user mode.
* It then registers itself with its parent, in order to resolve user
dependent services.
* Added a user launch file that will cause Tracker, and Deskbar to
start in the new session.
* Added initializing /tmp & /var/shared_memory to the launch_daemon.
* Moved clockconfig.cpp code into the launch_daemon.
* This follows systemd design; since those jobs are fixed, it doesn't
matter where you maintain them.
* The init jobs are BJobs, but the JobQueue is only used for that
one use for now. At a later time, I intend to put the job launching
in there, as well. BJob allows to represent the dependencies already.
* This is actually working already, although we cannot reproduce all
the features of the former Bootscript yet. This is without any
dependency support in launch_daemon.
* All shell activity like cleaning out /tmp, setting up the environment,
setting the time, etc. is not yet working.
* This enables a mechanism to profile almost the complete boot process
(starting with main2()), if SYSTEM_PROFILER is defined to 1.
* You can access the profiling data using "profile -r".
gcc2 only for the time being, as the other plattforms either
don't build or the resulting binary doesn't launch.
x86: "runtime_loader: Cannot open file libnetwork.so: No such file or directory"
It also refuses to build with haikuporter's -S option:
"POLICY ERROR: can't find used library "libstdc++.r4.so"
x64: "bash: ./Pe: cannot execute binary file: Not an executable"
And the same policy error with -S as x86.
Anyone feel free to fix that... :)