* Add BOOT_VOLUME_PACKAGED boot volume message field name constant.
* register_boot_file_system():
- Now takes a BootVolume& parameter.
- If the boot volume is packaged, add that info to the boot volume
message.
* Add pread().
* Add Node::ReadLink() to read a symbolic link path.
* Add Directory::LookupDontTraverse() and make Lookup() non-abstract.
Lookup() is implemented via LookupDontTraverse() and Node::ReadLink().
* Adjust all FS implementations accordingly.
* Add a packagefs implementation. Unlike other FS implementations it
isn't a pseudo-module, but provides a function to explicitly mount a
package file (packagefs_mount_file()).
* Finish BootVolume::SetTo() implementation, mounting the package file
and replacing fSystemDirectory.
Now the boot loader can load the kernel and boot modules from a packaged
system. The kernel boots up to the point where the boot volume is
mounted.
Pull AttributeDataReader and FDDataReader implementations out of
DataReader.cpp into own source files. Thus we can avoid dependencies
(e.g. to fs_attr code) we don't need/want.
BootVolume is initialized from a root directory of a volume. It finds
the system directory, and -- not implemented yet -- mounts the system
package, if the system is packaged, replacing the system directory with
it. Adjusted several functionality (main(), the loader functions,
user_menu()) to use BootVolume instead of the root directory.
The HaikuPackage rule now sets the variable
HAIKU_CURRENTLY_BUILT_HAIKU_PACKAGE to the given package and all
*ToPackage rules use that instead of a parameter. This saves passing the
package in each of those rule invocations.
Move common code from AddDirectoryToHaikuImage/AddDirectoryToPackage to
AddDirectoryToContainer. AddDirectoryToPackage was incorrect, using an
incorrect search directory for the attribute files.
On a non-Haiku build platform map openat(), fstat(), and
FileDescriptorCloser to _kern_open(), _kern_read_stat(), and
BuildFileDescriptorCloser respectively, so symlinks can be opened and
stat()ed.
* Create rules (build/jam/PackageRules) and a script,
build_haiku_package, to build hpkg files.
* Move all rule invocations that copy files and created symlinks and
directories in the "system" directory from HaikuImage to
HaikuPackages, which creates a package "haiku.hpkg".
* build_haiku_image: Comment out adding the copyrights info to
AboutSystem for the moment.
PackageWriterImpl:
* Iterate through attributes using fs_read_attr_dir() instead of
readdir(). Makes it work correctly on the build platform.
* On the build platform look up the system licenses in their source
directory rather than based on find_directory().
Since USES_BE_API is set by default on all libroot_build sources, the
error.cpp
was broken, since it wouldn't be exempt from the error mapping. Define
the
BUILDING_HAIKU_ERROR_MAPPER for it directly in the Jamfile, now.
* Resolve TODO: HOST_GCC_BASE_FLAGS should not be included in
HOST_LDFLAGS. Enable adding "-fno-strict-aliasing -fno-tree-vrp"
accordingly.
* Fix handling of HOST_PLATFORM_IS_64_BIT and HAIKU_HOST_USE_32BIT: The
former does now state whether the platform is effectively treated as
64 bit platform, i.e. it actually is 64 bit and the 32 bit mode is
not enforced. HAIKU_HOST_USE_32BIT is now only set when the platform
is actually 64 bit, but 32 bit mode is enforced.
For the xattr/BSD (untyped) attribute backend implement fs_fopen_attr()
and fs_close_attr(). A new AttributeDescriptor is created. It is
currently used in write_pos() only.
* Map build variables HOST_CPU and HOST_ARCH to x86_64, if it they are
* x86 and
64 bit and define the __x86_64__ C macro instead of __INTEL__ in that
case.
* <OS.h>: Also handle __x86_64__.
This especially avoid bringing tracker windows up to front when staying idle
over a tracker window while holding down a button. This could happen when
hovering while still holding a scroll thumb of another overlapping window.
Fixes regression #7829 introduced in r41892
* Also properly reinitialise the cached dragMessage on B_EXITED_VIEW,
otherwise it would still think it is dragging and thus still pass through my
above fix.
I'd like to cleanup the drag message caching mechanism as it's not
pretty in my opinion. Possibly even adding it to BView.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42441 a95241bf-73f2-0310-859d-f6bbb57e9c96
- Keep track of the correct number of initial modes available.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42438 a95241bf-73f2-0310-859d-f6bbb57e9c96
trace view, but we have a call frame matching that function, then jump
to that frame in the stack trace view as well.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42437 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Since it now doesn't crash anymore; set it as default.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42436 a95241bf-73f2-0310-859d-f6bbb57e9c96
* I got the downsampling version completely wrong. It should now be much better.
* A small bug in the delta calculation sometimes caused an off-by-one read to the source and a crash of the media add-on server
Effect of this resampler can be heard very clearly using the following setup in Cortex :
* Demo Audio producer producing a sinewave at any frequency (sampling rate is hardcoded at 44100Hz)
* Audio output set to 48000 Hz
* system mixer in between
select either resampler in the mixer and you'll hear the difference immediately.
Should finally fix#1351.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42435 a95241bf-73f2-0310-859d-f6bbb57e9c96
exception table address at the wrong location, leading to totally bogus values
for the alignment factors and return register, which ultimately resulted in
failing to reconstruct the CFI. (.eh_frame Format reference:
http://refspecs.freestandards.org/LSB_3.0.0/LSB-Core-generic/LSB-Core-generic/ehframechpt.html )
Fixes#7818.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42434 a95241bf-73f2-0310-859d-f6bbb57e9c96