Requires HaikuPorts#7573 to be merged.
Closes #17836.
Smoke-tested on beta4 32 bits:
Gutenprint printer addon loads libgutenprint.so.9.5.0, shows new
printer models from where to choose from at "install new printer"
time, and "prints something" when using the Print-To-File transport.
Change-Id: Ia40dfd3c2163795e83c2cc173fd510d64c4bf6c9
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5969
Haiku-Format: Haiku-format Bot <no-reply+haikuformatbot@haiku-os.org>
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
Change-Id: I45b3fbe0b4ec014d185ea8c3ed8798ae316e54a9
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7554
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
Haiku-Format: Haiku-format Bot <no-reply+haikuformatbot@haiku-os.org>
Partial change, for testing on x86_64. You need to build with
-sHAIKU_NO_DOWNLOADS=1 and manually provide the needed packages in
generated/downloads.
Confirmed working on x86_64. Other platforms will need similar updates.
Change-Id: I81ca4b1d81bd18e64f50250970e00e0a072072d3
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7278
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
* Update bash to a less-buggy working native build.
* Add file for python3
* Add readline for bash
* Update xz_utils to a working native build.
Change-Id: Iedfcb8277b242ea43a2fd870850057429c6b09e0
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7528
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
It has been replaced by Noto as the default font for CJK characters and
is not referenced anywhere else anymore.
Change-Id: I9eb706531deb44395d71e0a04b0ec5e2f2dea230
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7499
Reviewed-by: nephele nephele <nep-git@packageloss.eu>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
* our ip modules don't support connect()/send(). Just use sendto().
* ping6 disappears, ping supports -4 or -6 to force IPv4 or IPv6
Change-Id: I1e982e354cc75d3a314c5bbbfffa0373e8f4d9af
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7427
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
* Non-x86 will likely break until they get an updated icu74
build-package
Change-Id: I5762d14f848e1c4e9b837e1dea9c1a54efa8401d
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7346
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
Requires multiple media server restarts to switch
outputs to it, but that's a known media services
problem (#12777 and #12776.)
Input doesn't work quite right with the hardware
I've been testing with, but that's also a known
problem it seems (#9951). Meanwhile, output
seems to work pretty well, once it gets going.
Also fix the broken DeskBar symlink for TV.
Change-Id: I23a9cc5cf3e3d0c6ae1608a3b96a37e9a8c431a2
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7362
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
* Rename the "tun" network device to "tunnel". FreeBSD calls theirs
"tuntap" but speaks of both TUN and TAP devices as interfaces for
tunnels. The other BSDs seem to do likewise.
* Fold the "tun" driver into the "tunnel" network device. The
network device now publishes entries in devfs when interfaces
are created, and unpublishes them when interfaces are destroyed.
This removes the need for the driver and device to communicate
through a file descriptor, and thus allows the receive queue
to be totally eliminated, massively simplifying that logic.
* Use standard net-stack FIFOs instead of TCP BufferQueue, which is
specialized to TCP's needs in far too many ways. Thanks to the
previous commit adding support for interrupting semaphore waits,
we can use the FIFO wait mechanisms, too.
* Restructure the TAP logic, and generate MAC addresses more like
Linux does.
* Actually set type = IFT_TUN, and use the "loopback" frame handler
instead of the "ethernet" frame handler. This allows significant
cleanup of the header handling logic.
* In TUN mode, reject packets that don't look like IP packets.
* Delete "tunconfig"; it was mostly stubs and is now unnecessary.
TUN mode tested and confirmed as working by kallisti5 with OpenVPN.
TAP mode partially tested, but not yet confirmed as working.
Fixes #18673.
Change-Id: Ibd803139474e8db556a4f567901da15ee4083621
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7143
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
The previous commits have cleaned all the remaining ones.
Change-Id: I6b12ba4f23779f3e2e4fd5a00c6acfaaeb50f4d6
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6804
Reviewed-by: Fredrik Holmqvist <fredrik.holmqvist@gmail.com>
* We might as well "try as hard as we can" to get build files.
* With this setting, DNS resolution errors count as retryable
errors. wget will retry to get files up to 20 times by default.
* Should improve build relability on less-than-ideal network
connections. (aka, a brief network disconnection shouldn't stop
a local build if possible)
Change-Id: I39652fafb5eee237c463e1b777b1057ee1d53db1
There are now some system headers (e.g. <stdatomic.h>) that have outright
different versions for C and C++ which are not compatible with each other.
Change-Id: Ibf797e0817f0fe4d5241424d7d06023b19888c02
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6991
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
* Replace count_low/count_high with bigtime_t fields plus an int32.
sizeof(spinlock) is now 32 bytes with the debug option enabled.
* Adjust and clean up all spinlock code to use the new fields.
* Fold DEBUG_SPINLOCK_LATENCIES into the new code. Remove the bootloader
option and other flags for it (these were not compiled in by default.)
The new code should be much easier to understand and also more powerful.
However, the information transmitted to userland isn't as useful now;
the KDL command output will have the interesting information.
(Things could be reworked to transmit more interesting information to
userland again if desired, but as this code clearly hadn't been compiled
for many years, as it referred to global spinlocks that have been gone
for a very long time.)
Change-Id: I2cb34078bfdc7604f288a297b6cd1aa7ff9cc512
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6943
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
This disables -Werror for the use of old GCC extensions listed here:
https://gcc.gnu.org/onlinedocs/gcc/Deprecated-Features.html
We do not apparently use any of those anymore (if we ever did). I think
this was accidentally enabled at the same time as
deprecated-declarations (which we still need, for example because we
still have some uses of auto_ptr).
Change-Id: I147276b42d9d066df56e8b135bc8fd885dc937a7
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6798
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
The main motivator is the update to GCC 13. As part of this, some of the other
dependencies have been updated as well.
Newly introduced:
- gawk on x68_64 (new dependency of texinfo)
- libjx (new dependency of haikuwebkit)
- openexr30 (new indirect dependency of haikuwebkit)
- brotli (new indirect dependency of haikuwebkit)
On x86_gcc2, some packages have switched to the modern GCC version:
- diffutils
- findutils
- libpsl
- tcpdump
Change-Id: Ic617b5b4af9eb34c0d28259a3c0ddbcc33f98a5d
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6772
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
They are not HID devices as they need special polling and interpreting. As
a result only descriptor is shared with other i2c HID devices. So it's easier
to have it as a separate driver.
Partially based on FreeBSD ietp driver
Change-Id: Iddc64d216eefeda235a1b15521cba9189dd2ffd8
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6660
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
busses/pci/x86: add
Other add-ons are in following commits.
Change-Id: I7a77bfaef0e8995917b4b54c8369d7075533ec26
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6220
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
* Assists on early boot platforms to install / upgrade when
no network is available.
* Doesn't introduce any additional dependencies
* Creates shine-though directories too.
Change-Id: I11dd207b2ffbae1768bab7a118a51034df238878
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6185
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
Tested-by: Automation <automation@haiku-os.org>
Reviewed-by: Fredrik Holmqvist <fredrik.holmqvist@gmail.com>
We shouldn't be doing these crazy things.
The only usage of this is the NextID rule which computes an unique
number by incrementing a variable. This is used for example to generate
names for the extra files used in xattr emulation.
But we certainly don't need multiplication, division, etc. That's better
done in scripts (Python, for example) in rule actions. So keep just
enough of this for NextID to work, and we could probably make it even
simpler.
Change-Id: Id06d4f5e236205203fe8d604de440753b63801bc
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6088
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Tested-by: Automation <automation@haiku-os.org>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
* We depend on FDT passed to the bootloader now
from EFI or u-boot via fdt_addr_r now
* We leave an fdt path within the boot partition
(for now) to allow / encourage users to optionally
plug in their own DTB's for troubleshooting. (only
on u-boot loader)
Change-Id: I3f2d81b60d46f388f333d5caa27aa77e6e36447d
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6081
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
Reviewed-by: X512 <danger_mail@list.ru>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Tested-by: Automation <automation@haiku-os.org>
Define a dedicated OnDiskData structure for each on-disk structure. This
must match the on-disk layout, except for endianness, which is handled
by _SwapEndian methods. These structure are "plain old data" so we can
use offsetof on them. They are wrapped in an easier to use C++ API.
This resolves a lot of problems with the previous code: warnings caused
by the use of offsetof as well as a much simpler instanciation of the
objects from on-disk data.
Also fixed another problem with UUIDs, where the UUIDs were handled by
pointers in a lot of place where it was not necessary. Use references
instead. The V4 structures which don't have an UUID will return a "null"
(zero-filled) one.
Change-Id: Ifb2bf6ab94906ca50410dd3446d3566615392ca2
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6021
Reviewed-by: Raghav Sharma <raghavself28@gmail.com>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
It was used only for playing CDs via SCSI commands, which is what
CDPlayer also did; but this is not really much supported anymore,
so CDPlayer was removed years ago, and now this is too.
Its source code lives on at HaikuArchives.
Fixes #18236.
the type lists are hardcoded for now.
Change-Id: Iae89046ee52d3812354de619bfd9625217479c49
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5597
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
This will allow proper operation of POSIX SHM API (shm_open etc.).
Now memory files are stored fully in memory and do not affect disk
storage (except swap if enabled).
Change-Id: Iae3ce1afa968df72e82198e598a273cbf7cb0269
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5802
Reviewed-by: Fredrik Holmqvist <fredrik.holmqvist@gmail.com>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Previously it was spread all around the tree, and was not defined
consistently for all boot objects (there were a number of boot modules
which did not define it, but did include headers which checked for it.)
Now, as it is handled in SetupBoot which is invoked for all boot objects,
it will be applied consistently throughout. We can thus drop the manual
additions of it from all Jamfiles.
the entropy source is read every second and pushed to the PRNG.
the PCI device is tested, not the ACPI.
Change-Id: I9bb6b21c7189b28a1d8a624d83b33ff6682152dc
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5825
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
tested on Zen2 (Ryzen 3 5300U)
This support was submitted in October for inclusion in Linux.
Haiku supports only two profiles. We could probably add some more, and let the driver says which it supports.
Change-Id: Id7754b445bc32a691d58a1e4af630351562abc22
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5826
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
* The if statements now "make sense"
* 1.4 GiB release images easily fit a "mini single layer DVD"
* Our source build is around 1.1GiB
* 200 MiB of "space" in our read-only image allows
a little room for live-media shenanigans
* Empty space is compressed anyway in release zip files
Change-Id: I5ad017e3f80d5977ca9604f5bf200684796fc7b9
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5818
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Change-Id: Ib21a3fb8c26a25d84b0b3dd298c22618a53cb7d1
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5817
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
Reviewed-by: Niels Sascha Reedijk <niels.reedijk@gmail.com>
They are now created from a separate repository and via HaikuPorts.
Since the HaikuPorts packages are not yet in the BuildPackageRepository,
the actual section that adds the packages is commented out (but it only
runs for release-* targets anyway.)
The "welcome", "userguide", and "quicktour" scripts, which are symlinked
from the desktop in release builds, are added to the Haiku package's
"regular" profile instead (they do not actually require the other packages
to be installed but will detect if they are not and launch the online
versions instead.)
Building EFI partition for 32-bit anyboot ISO image was disabled
in hrev52443 to fix issue #14656.
As haiku_loader.efi is now available for the x86 architecture
since hrev55917, we can re-enable building EFI system partition
for the 32-bit ISO.
We can also remove the build rules related to HAIKU_ANYBOOT_LEGACY
as it is not used any more.
Change-Id: I9c2c272bcd0f9c1a98ee6cea300374dc26b4818d
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5716
Reviewed-by: Fredrik Holmqvist <fredrik.holmqvist@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
* "egrep: warning: egrep is obsolescent; using grep -E"
* egrep on haiku is a shell script calling grep -E
* given the warnings in the latest egrep, lets get
ahead of the curve and migrate to grep -E
Change-Id: I0fc2b936c7a9c52f87caf97d8e9ac42516fee014
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5718
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
...as was already added to the regular (userland) StaticLibrary some
time ago. Shaves off double-digit percentages of the file size of
e.g. FreeBSD and OpenBSD network drivers.
compiler generates a warning regarding using offsetof() function on a non - POD type class
disabling Werror will not break build due to this warning
Change-Id: Ic72210f92a257e80ad8de9327892cfca7454076e
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5538
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
Newer versions of u-boot support EFI natively, which is what we
have been making use of instead.
There may be some use for the "native" u-boot loader still on PowerPC,
but otherwise the EFI support is much more advanced and even in u-boot
supports as or more features than "native" loaders, so there is no
reason to keep this around.