Commit Graph

48125 Commits

Author SHA1 Message Date
Pawel Dziepak
1f50d09018 kernel/util: Add bit hack utilities 2013-10-02 21:24:46 +02:00
Pawel Dziepak
26c3861891 x86[_64]: Fix some style issues 2013-10-02 21:18:56 +02:00
Pawel Dziepak
fa6f78aee7 x86[_64]: Use uint32 for maximum CPUID leaf number 2013-10-02 21:03:34 +02:00
Pawel Dziepak
c9b6f27d94 x86[_64]: Add CPU topology detection for AMD processors 2013-10-02 02:34:35 +02:00
Pawel Dziepak
f1644d9d0b x86[_64]: Set level shift by counting bits in mask 2013-10-02 01:55:07 +02:00
Pawel Dziepak
fafeda52ea x86[_64]: Do not return too soon from detectCPUTopology() 2013-10-02 01:49:10 +02:00
Pawel Dziepak
8ec897323e x86[_64]: Add CPU topology detection for Intel processors 2013-10-02 01:19:17 +02:00
Pawel Dziepak
4110b730db x86[_64]: Add support for CPUID sub-leaves
Some CPUID leaves may contain one or more sub-leaves accessed by setting
ECX to an appropriate value.
2013-10-01 20:31:18 +02:00
Pawel Dziepak
c48c3f88a9 build: Reenable debug mode for tarfs 2013-10-01 19:32:51 +02:00
Pawel Dziepak
ffd5393620 kernel/util: Make exit() available in bootloader as well 2013-10-01 19:31:48 +02:00
Adrien Destugues
94bf728825 Add more keywords, variables and functions 2013-10-01 18:54:59 +02:00
Adrien Destugues
7650931572 Rename parameters to avoid compile error
* warning: declaration of `signal' shadows global declaration
2013-10-01 17:17:28 +02:00
Adrien Destugues
37343ca1f6 Remove which command from default image
* This was a script relying on a working /etc/profile, which may not be
there
 * Instead, use GNU which, available as an haikuport recipe
 * Since the command does not seem to be needed for Haiku to run (and
also because I don't know how to do it), GNU which isn't in the default
 install.
 * Typing "which" in a terminal still works, as that uses an alias
defined directly in /etc/profile.
2013-10-01 16:32:21 +02:00
Pawel Dziepak
7aecb0b276 kernel/util: Make exit() available in kernel mode
Since we are using libraries originally intendent for user mode in kernel
mode providing them with some userland functions is inevitable. This
particular patch is to make zlib happy and able to call exit() when
its debug assertions fails.
2013-10-01 15:51:07 +02:00
Pawel Dziepak
d06885888d kits/support: Skip debug check in boot loader 2013-10-01 15:47:53 +02:00
Pawel Dziepak
1238bebddc build: Add stub _get_thread_info() needed by support/Referenceable.cpp
This is a step towards fixing #10042.

When DEBUG is set BReferenceable::~BReferenceable() performs some checks
ensuring that the object is destroyed correctly. These checks require
information on thread stack, which is obtained by get_thread_info().

_get_thread_info() stub is added (actually, readded) which always returns
B_ERROR. Moreover, the check in BReferenceable destructor is modified
so that it does not fail when get_thread_info() fails.
2013-10-01 15:06:17 +02:00
Julian Harnath
d46d383800 usb_disk: retry when usb disk not ready
* Resolves #10043
* Fixes a non-booting issue due to hrev46099
2013-09-30 22:32:48 -05:00
Alexander von Gluck IV
df0a1762ab usb_disk: fix line endings; no functional change
* Occurred in hrev46099
* Line endings dos2unix
* Remove extra lines at end of file
* Jerome! Get a better text editor :-)
2013-09-30 22:32:47 -05:00
Rene Gollent
88cd0fd25b HaikuDepot: improve progress tracking.
- PackageManager: Adjust progress listener interface to also supply
  the package name to the hook. Adjust implementors.

- PackageActions now get a pointer to the model. InstallPackageAction
  uses that to resolve the package name given in the download progress hook
  to the package currently being downloaded, and updates progress accordingly.
  Consequently, if one requests installation of a package that has dependencies,
  Depot now correctly updates the download progress status of those
  accordingly, rather than updating the original package repeatedly.
2013-09-30 23:07:45 -04:00
François Revol
8bf87f9341 Actually fix the build
Looks like I was too quick on previous commit.

It seems -pthread is actually not that much needed on Linux though...
although the manpage says "compile and link with -pthread". Go figure.

Now dlopen() uses RTLD_LAZY | RTLD_LOCAL for Linux, which seems
to work here.
2013-10-01 03:57:24 +02:00
François Revol
4135f9cde3 Fix build
Declare a HOST_PTHREAD_LINKFLAGS variable to hold the flags
required to link with pthreads, and use it for the solver addon.

Works on GNU/Linux, please test and fix for other platforms.
2013-10-01 02:37:54 +02:00
Oliver Tappe
bbecca8c24 Update libsolv and zlib packages for consolidation.
* only the source package are actually relevant, as the source paths
  within older versions of those source packages no longer match the
  expectations of the build system
2013-10-01 01:00:03 +02:00
Oliver Tappe
ec5bf7bdf8 Adjust paths in source packages to what haikuporter produces. 2013-10-01 01:00:02 +02:00
Ingo Weinhold
5fd3766e03 libroot_build: fs_darwin: fdopendir(): close FD on success
fdopendir() is supposed to consume the specified FD on success.
2013-09-30 21:41:56 +02:00
Niels Sascha Reedijk
f04f7042c5 Determine how to invoke sed with extended regexp
This will require re-running configure
2013-09-30 21:41:54 +02:00
Niels Sascha Reedijk
a69102a1f3 Add HOST_LIBSUPC++ to fix compilation on MacOS X 2013-09-30 21:41:50 +02:00
Niels Sascha Reedijk
57405de578 Always use dlopen and dlsym to load libsolv
Previous implementation used weak symbols on all platforms except Haiku. Mac OS X also does not support this use of weak symbols. In the discussion of #10028 it was decided that probably more platforms will have problems with this approach, so instead use the approach that always works.
2013-09-30 21:41:45 +02:00
Adrien Destugues
b617a7b410 Vim syntax files for haikuporter recipes. 2013-09-30 17:37:43 +02:00
François Revol
58c82e4fb7 Make sure the boot driver tgz doesn't overflow the boot floppy
At least on 68k it does. Seems to be ok on x86, for now...
2013-09-30 04:38:50 +02:00
François Revol
68bccdf6b4 M68K: More gcc options fixes 2013-09-30 04:21:41 +02:00
François Revol
4046c49f88 M68K: Account for extra parameter to create_area_etc()
Would have been nice to also fix 68k code... just sayin.
2013-09-30 04:15:27 +02:00
François Revol
835545cfd1 M68K: drop dupplicate strlen
Seems we have our own now.
2013-09-30 04:09:27 +02:00
François Revol
f7d6c2f8e5 M68K: Switch to new gcc options for specifying cpu
Latest gcc converts the old ones to the new ones anyway...
including when passing to gas, which of course is not new enough,
so we have to also force gcc to pass the old one around in one case.
2013-09-30 04:02:21 +02:00
François Revol
ddb1aa7353 revert 787843b
Restore the Clean action as "together".

Jam splits the args according to MAXLINE, which was too large.
2013-09-30 04:02:20 +02:00
Rene Gollent
a11cd14453 Cleanups. 2013-09-29 20:55:54 -04:00
François Revol
b019bb2f4f Add definitions for M68K repositories and package infos 2013-09-30 02:35:28 +02:00
François Revol
787843b286 Drop the together keyword on the Clean action
Since the PM merge we now have way too many targets,
here jam clean just fails in execve() due to too long arguments.

jam clean is now very verbose but at least it works.

Another option could be to override the Clean rule itself
to clean in batch by splitting the list...
Patches welcome.
2013-09-30 02:26:12 +02:00
Rene Gollent
6114dd1fc2 Clean up FreeBSD build support as suggested by Ingo. 2013-09-29 19:50:00 -04:00
Rene Gollent
3d97f9a0a9 package_daemon: Cleanups.
- Remove no longer needed context object, as well as dummy
  BDecisionProvider implementation, as the base class now does the same
  directly by default.
2013-09-29 19:31:34 -04:00
François Revol
55cc9f852a Add definitions for PPC repositories and package infos 2013-09-30 01:29:03 +02:00
Axel Dörfler
cf06f96628 libshared: Factored out driver settings class from net_server.
* The new class is called DriverSettingsMessageAdapter which can translate
  between a driver_settings file, and a BMessage.
* The net_server Settings class is now just using this class.
2013-09-30 01:13:13 +02:00
Axel Dörfler
8be52869c8 Minor style cleanup. 2013-09-30 01:13:12 +02:00
François Revol
5e0e2739c9 ARM: work around too many libgcc objects when linking libroot
jam fails in execve() trying to run the command due to
a too large arguments list because of the many objects in libgcc.

We split them into two intermediate objects,
then we link them to libroot.
2013-09-30 00:37:06 +02:00
Rene Gollent
4a3649a4ac libpackage_build: Fix build on FreeBSD.
FreeBSD's gcc doesn't include /usr/local/{include,lib} in its default
search paths, but libcurl gets installed there.
2013-09-29 17:51:23 -04:00
Rene Gollent
5ef03b1bda libpackage_build: Fix build on gcc2 haiku.
- gcc2 lacks the -iquote option, and side effects of some of the other flags
  we use with it during the build cause some of libcurl's includes to fail.
  This temporarily works around the problem until gcc2 can be suitably fixed.
2013-09-29 17:25:34 -04:00
Rene Gollent
47b36c83e9 HaikuDepot: Implement download progress handling.
- PackageManager: Add simple progress listener class for other parts
  of depot to use, which in turn is notified when the user interaction
  handler's download progress hook is called.

- InstallAction: Implement progress listener interface and add self
  as listener when initiating a package installation.

This gets basic download progress reporting working in Depot, but isn't
yet complete, as, with the current implementation it doesn't properly handle
any dependent packages that might get downloaded, since InstallAction currently
only knows about the package info that it's directly responsible for. Needs a
bit more work to handle that correctly.
2013-09-29 17:25:34 -04:00
Rene Gollent
647fb4ed35 HaikuDepot: Add download progress package state.
- Add accessors for storing/retrieving current download progress.
- Adjust PackageListView to be able to create a progress state from
  the download percentage.
2013-09-29 17:25:33 -04:00
Rene Gollent
493d13f0b4 libpackage: Add missing build dependency. 2013-09-29 17:25:33 -04:00
Rene Gollent
9345049af8 Package Kit: Implement progress notifications.
- BJobStateListener: Add progress state and corresponding hook.
- FetchFileJob: Notify job progress hook on libcurl notifications.
- UserInteractionHandler: Add hooks for download progress and checksum
  validation progress.
- PackageManager: inherit from JobStateListener and watch for job
  notifications for internally generated jobs. Forward to corresponding
  UserInteractionHandler hooks as needed.
- Adapt pkgman, HaikuDepot and package_daemon to above changes.
  Neither HaikuDepot nor package_daemon's progress hooks are wired up to
  do anything yet though.
2013-09-29 17:25:33 -04:00
Rene Gollent
fe39d2eb8d BPackageManager: Eliminate RequestHandler.
- Pull functionality back into package manager itself since the extra
  indirection doesn't really buy us anything in this case, as neither
  request that it handles requires a decision provider.
- Adjust pkgman and HaikuDepot accordingly.
2013-09-29 17:25:32 -04:00