Commit Graph

50089 Commits

Author SHA1 Message Date
Pawel Dziepak
44c0c4d3d0 runtime_loader: add support for ELF based TLS
This patch introduces support of ELF based TLS handling with lazy allocation
and initalization of TLS block for each DSO and thread. The implementation
generally follows the official ABI except that generation counter in dtv
is in fact a pointer to Generation object that contains both generation
counter and size of the dtv. That simplified the implementation a bit, but
could be changed later. The ABI requirements regariding in memory position
of TLS block is not honoured what results in static TLS model being
unsupported. However, that should not be a problem as long as
"executables" in Haiku are in fact shared objects and optimizations which
require specific TLS block in memory layout are not possible anyway.
2014-05-04 04:00:17 +02:00
Pawel Dziepak
828ea2c47d headers/system: add ELF TLS related constants 2014-05-04 02:40:04 +02:00
Pawel Dziepak
bc472ab8f9 runtime_loader: add simple vector implementation
std::vector requires libstdc++ which may be unsafe to use in runtime_loader.
2014-05-04 02:40:04 +02:00
Pawel Dziepak
634bc98a3c libroot/x86[_64]: relax asm constraints in tls_*() functions 2014-05-04 02:40:04 +02:00
autonielx
e08c932315 Update translations from Pootle 2014-05-03 06:16:40 +02:00
Jessica Hamilton
24a8416ea7 Revert "Fix window behavior when default button is present"
With some testing, found that even with the second patch
provided in #10792, the behaviour is still inconsistent, so
reverting for now.

This reverts commit 273109e004.
2014-05-03 10:04:05 +12:00
Adrien Destugues
77b60d2222 Use std::stable_sort instead of mergesort.
* stable_sort is part of the C++ standard, and should work just as well.
2014-05-02 16:36:16 +02:00
Adrien Destugues
6df2ee73b3 Try to fix build on Linux.
* Linux is the only one of our supported build hosts to not have
mergesort. Provide an implementation that calls qsort, since the qsort
implementation in the glibc used by Linux uses a mergesort (!) for small
arrays.
2014-05-02 13:56:00 +02:00
Adrien Destugues
3dfdd43723 BGradient: preserve order of stops with same offset.
* Use merge sort, which is a stable sort, instead of the qsort used in
BList::SortItems
* This allows setting two stops with the same offset to create a sharp
color change in a gradient. This trick is used to create stripe patterns
with css gradients in some web pages.

Fixes #10733.
2014-05-02 11:46:37 +02:00
Oliver Tappe
590b95e96e Add variable noDownloads to build_haiku_image.
* If noDownloads is set, show an error when a download is requested.
2014-05-01 19:45:19 +02:00
Oliver Tappe
d1b21b4ad3 Improve build feature handling with HAIKU_NO_DOWNLOADS=1
* Adjust the respective rules such that with disabled downloads, only
  packages already available in the downloads folder will be considered
  as available build features.

This way, the build system will not for instance try to build
<kdebug>qrencode after a bootstrap, as that package is not yet
available.
2014-05-01 19:45:19 +02:00
Oliver Tappe
1a0cfb112b Minor cleanup: remove superfluous semicolon. 2014-05-01 19:45:18 +02:00
Adrien Destugues
0c271993cf Add libexecinfo.
This is a new WebKit dependency.
2014-05-01 19:09:25 +02:00
Adrien Destugues
5a7a181585 Add HaikuWebkit 1.3.1. 2014-05-01 18:48:04 +02:00
Adrien Destugues
076b4544e1 Add some links to the allwinner A10 docs. 2014-05-01 18:47:23 +02:00
Ingo Weinhold
fe28d36222 package daemon: Don't apply system package changes immediately
When a system package is going to be deactivated, activate/deactivate
the packages of the whole transaction only to the latest state.
Afterward latest state and active state will differ.
2014-05-01 18:18:37 +02:00
Ingo Weinhold
2dbf8167fe package daemon: Initial old packages state support
* VolumeState: Move locking to Volume.
* Package: Pull the file related functionality into new class
  PackageFile. A Package refers to a PackageFile. A PackageFile can be
  referenced by multiple Packages. PackageFiles are managed by the new
  PackageFileManager.
* CommitTransactionHandler: Clone the passed volume state.
* Volume now manages two VolumeStates: A state reflecting the currently
  active packages and the latest state (i.e. the one reflecting the
  situation of the packages directory). Usually the two are the same,
  unless an old state has been booted.
* The client interface hasn't been adjusted yet. Clients only see the
  latest state.
2014-05-01 18:18:37 +02:00
Alexander von Gluck IV
2354b8ac00 radeon_hd: Finish spread spectrum support
* This needs testing and is to remain disabled
  until we can test on several radeon_hd cards
  from multiple families
2014-05-01 09:45:06 -05:00
Alexander von Gluck IV
f01af94ff7 radeon_hd: Don't squash ss status_t into bool 2014-05-01 08:56:55 -05:00
Oliver Tappe
090144251d Fix #10804: package_daemon crashing in Volume destructor.
* use delete [] for fPackagesDirectories, as it has been allocated
  via array new
2014-05-01 14:48:59 +02:00
Oliver Tappe
aa2e5eca78 Add new configuration option --no-downloads.
* If --no-downloads has been given, Haiku will be built without
  trying to download anything, all required packages need to be put
  into the download folder manually (the build will stop on missing
  packages).
* As the required HaikuPorts repository can't be downloaded in this
  mode, a local repository is created during the build, which only
  contains the packages available in the downloads folder.

This is useful for building Haiku completely from source.
2014-05-01 13:03:43 +02:00
Oliver Tappe
3d9c3125ac Create packages_build folders per build type.
* The content of the preprocessed package-info files and the package
  contents depend on the build type, so we use a different folder for
  each build type.
2014-05-01 13:00:46 +02:00
Oliver Tappe
8c54af563c Whitespace cleanup in root and 'build' folder.
* Removed trailing whitespace and empty lines at top of files.
2014-05-01 12:55:41 +02:00
Murai Takashi
79895eed07 Fix gcc 4.9.0 build
Signed-off-by: Jérôme Duval <jerome.duval@gmail.com>
2014-04-29 22:01:34 +02:00
Adrien Destugues
1d09e9cee3 BScrollbar: remove unused field.
* Nothing ever reads fTargetName in the scrollbar code, so remove the
field.
* Frees one reserved slot, and a little memory, as the target name was
copied with strdup.
2014-04-29 16:46:00 +02:00
Adrien Destugues
8073fcbb39 Style fixesStyle fixes. 2014-04-29 11:25:58 +02:00
Adrien Destugues
8d250951a3 Fix ptrdiff_t limits introduced in r24654 (!)
* The ptrdiff_t limits are PTRDIFF_MIN and PTRDIFF_MAX, not PTDIFF_*.
* I could not find any non-Haiku reference to PTDIFF_*, so I guess
that's a mistake.
2014-04-29 10:26:23 +02:00
Adrien Destugues
c100e05085 Update vim syntax file for checksums
* Match the current trend of using CHECKSUM_SHA256 only.
* Re-wrap the keyword list to 80 columns.
2014-04-29 08:50:13 +02:00
Adrien Destugues
e1e77df2f3 Make gcc4 happy. 2014-04-29 08:14:22 +02:00
Adrien Destugues
5b172de123 Update some docs for the ARM port.
* Add info on Allwinner A10 SOCs, which may be a worthwile target.
* Add info about the Linaro QEmu for emulating the BeagleBoard.
* Add more TODOs for PM aftermath.
2014-04-28 22:24:04 +02:00
Adrien Destugues
554e207384 ShowImage: add feature to force original size.
* This is enabled by shift+click on the Original Size toolbar button.
* The button stays pressed as long as the feature is enabled. Clicking
it again disables it.
* When this is enabled, all images will be shown at original size,
instead of being scaled up or down to fit the window.
* This is not persistent, and only affects the current session/window.
2014-04-28 22:04:08 +02:00
Adrien Destugues
9494b43adc Revert attempt to fix stretch-to-window.
Turns out the option shouldn't do what I need. Let's add another option.
2014-04-28 22:04:06 +02:00
Adrien Destugues
711ffc4580 ShowImage: use BButton icon support.
* BIconButton is not needed anymore, now that BButton supports icons.
* Slight look changes. These buttons are a bit bigger, with extra
whitespace. I compensated this by reducing the insets and spacing, which
looks the same when no button is hovered, but a bit different when one
is, as the button frame is bigger. Maybe we need to tweak BButton to
have smaller margins like BIconButton did.
2014-04-28 22:04:03 +02:00
Kacper Kasper
273109e004 Fix window behavior when default button is present
* Don't intercept Enter key press in a window when there is default
button and another BControl focused.
* Current behavior was basically breaking every window using default
button. Even if there was a button focused (using Tab key), when Enter
was hit, default button handled the message, therefore instead of
i.e. 'Revert' 'Apply' was pressed.
* Fixes #10792.

Signed-off-by: Jessica Hamilton <jessica.l.hamilton@gmail.com>
2014-04-28 22:52:09 +12:00
Alexander von Gluck IV
c0b833b10a build: Fix raspberry_pi target board name. Not pi 2014-04-27 17:03:53 -05:00
Alexander von Gluck IV
1274874d1d docs: Cleanup beagle documentation a little 2014-04-27 17:03:53 -05:00
Adrien Destugues
2bd9c8a5f9 ShowImage: fix scale-to-fit behavior
* Fix the condition so that big images are fitted to the window on first
time only if the option is set.
* Small images are never stretched to the window size, as this isn't
very useful.

The interaction of this global setting with the zoom buttons is a bit
confusing. Should they be merged?
2014-04-27 18:03:05 +02:00
Adrien Destugues
cb2c4f8d44 Convert more printf to TRACE in media kit. 2014-04-27 18:03:03 +02:00
Jessica Hamilton
502882dbd9 configure: correct check for haikuporter from directory to file 2014-04-27 17:18:29 +12:00
Jessica Hamilton
3aece55571 Whitespace fixes. 2014-04-27 17:16:02 +12:00
Jessica Hamilton
f21045a772 Correct B_USER_BOOT_DIRECTORY path. Fixes #10070. 2014-04-27 15:45:40 +12:00
Arvind S Raj
39d444a339 Abort configure script if haikuports, haikuports cross and haikuporter directories do not exist.
Signed-off-by: Jessica Hamilton <jessica.l.hamilton@gmail.com>
2014-04-27 04:33:11 +12:00
Ingo Weinhold
333d4efe4f packagefs: Extend PACKAGE_FS_OPERATION_GET_PACKAGE_INFOS ioctl
Also return the package file names.
2014-04-26 15:34:18 +02:00
Ingo Weinhold
ba4c67b4b0 packagefs: Fix ioctl PACKAGE_FS_OPERATION_GET_VOLUME_INFO
... in case a larger buffer is provided.
2014-04-26 15:34:17 +02:00
Ingo Weinhold
c8dd5bbd94 package daemon: Retrieve all package directories from packagefs 2014-04-26 15:34:17 +02:00
Ingo Weinhold
7a3253f07c package daemon: Pass volume state CommitTransactionHandler
... and remove the getter from Volume again.
2014-04-26 15:34:17 +02:00
Ingo Weinhold
7a35d803d0 package daemon: Move pending job accounting back to Volume 2014-04-26 15:34:17 +02:00
Ingo Weinhold
fb53533e86 package daemon: CommitTransactionHandler: Use NotOwningEntryRef 2014-04-26 15:34:16 +02:00
Jérôme Duval
9225185b65 AddHeaderDirectoryToContainer: filters backup files.
* also leaves out .svn, now useless.
2014-04-26 11:47:34 +02:00
Jérôme Duval
53dd259b4d added tar.h posix header.
* based on http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/tar.h.html
2014-04-26 11:09:24 +02:00