Commit Graph

11401 Commits

Author SHA1 Message Date
Ingo Weinhold
5939c4d7a9 Added functions allocate_thread_id() and peek_next_thread_id() and a
threadID parameter to spawn_kernel_thread_etc(). It's now possible to
set the ID of a new thread. Used in team.c to make team ID and the ID of
the main thread equal.

Fascinatingly the two added functions prompt my compiler to issue
`missing prototype' warnings, although those are obviously there. It would
be nice if someone could solve that riddle.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11621 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-08 18:16:16 +00:00
Stefano Ceccherini
7730601a59 Implemented Get/SetLimits() and fixed scripting stuff
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11620 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-08 14:52:43 +00:00
Axel Dörfler
7f67a70cfe Now builds under Dano/Zeta as well.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11619 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-08 12:44:03 +00:00
Axel Dörfler
fa900c88f7 Fixed warnings.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11618 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-08 12:43:15 +00:00
Axel Dörfler
3f687b627a mkbfs now also writes a standard boot block to disk (works for images only).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11617 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-08 12:29:09 +00:00
Axel Dörfler
9fcf97f229 Added a binary copy of BFS's boot block code (as used in BeOS). This will
be used by our R5 mkbfs replacement for now, until someone replaced that
boot loader code :)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11616 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-08 01:39:44 +00:00
Ingo Weinhold
08f3210dcf Added empty implementations of tc{get,set}pgrp().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11615 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-07 22:07:26 +00:00
Ingo Weinhold
5141596a69 Added ffs().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11614 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-07 22:02:50 +00:00
Adi Oanca
d29c4f5287 Some objects must be destroyed on server quit.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11613 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-07 21:52:41 +00:00
Stefano Ceccherini
a85419eec3 That wasn't my day, obviously.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11612 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-07 12:47:13 +00:00
Stefano Ceccherini
e949e4cf18 As the semaphore acquisition is done "benaphore style", the semaphore should be created with an initial count of 0.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11611 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-07 11:04:46 +00:00
Stefano Ceccherini
20c7c2f958 Testing BChannelSlider showed that BChannelControl's implementation had some issues:
1. StuffValues returned B_BAD_INDEX for legal values. Fixed.
2. SetAllValue was needed. Implemented.
3. The constructor used memset() to initialize an array of int32 to 100. YUCK! That's a novice mistake (and that's my fault, obviously). Fixed.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11610 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-07 09:54:46 +00:00
Stefano Ceccherini
016e74b2c5 Fixed a crash on exit (Attached views are deleted automatically), finished some missing stuff, corrected some issues.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11609 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-07 08:45:18 +00:00
beveloper
6f9446b32a modified warning text
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11608 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-06 20:39:38 +00:00
Ingo Weinhold
99801d4a88 * Added variables KERNEL_C++_SUPPORT_LIBS and STL_HEADERS to aid support
for building under Linux.
* Tried to get the header setup into a shape that would allow us to build
  under Linux with gcc 3.x. But I give up for the moment. The C++ support
  headers don't seem to be separate from the STL headers, which makes it
  virtually impossible to use our STL together with gcc 3.x.
  Worse, I don't even think, how we build under BeOS at the moment is
  correct. The _G_config.h (glibc configuration) header is included from
  some public headers, but is itself not made available. This causes the
  R5 header to be used, which belongs to a completely different glibc
  version. But when building our libroot we use the new header. I wouldn't
  be surprised, if that could cause all kinds of subtle problems. Maybe
  even the STL string problem I encountered recently.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11607 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-06 17:03:29 +00:00
Ingo Weinhold
a8e00c29fe Add the newly introduced src/build/cpp_support.cpp to the sources when building under Linux.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11606 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-06 16:51:58 +00:00
Ingo Weinhold
8b737816c4 Added KERNEL_C++_SUPPORT_LIBS to the libs the kernel links against. Required under Linux.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11605 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-06 16:50:24 +00:00
Ingo Weinhold
a8bd76eb3f Required for the build under Linux. Defines dl_iterate_phdr() which is a Linux specific glibc dependency.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11604 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-06 16:49:13 +00:00
Ingo Weinhold
078898ebf8 Not longer needed.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11603 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-06 15:58:35 +00:00
Ingo Weinhold
61f6087c2a Define _GNU_SOURCE for GNU extensions.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11602 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-06 13:42:17 +00:00
Ingo Weinhold
9c523f7e48 * Added source for scripting support under Linux.
* Define _GNU_SOURCE for GNU extension.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11601 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-06 13:40:54 +00:00
Ingo Weinhold
0adb8b09ca Implemented fs_shell scripting under UNIX using UNIX sockets. Refactored
the platform independent code out of fs_shell_command_beos.cpp.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11600 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-06 13:39:17 +00:00
Ingo Weinhold
58183b99ff * dirent::d_dev is not POSIX. Use it only under BeOS.
* Make return value of implementations of Directory::GetNextEntry()
  match the base class version.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11599 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-06 13:36:25 +00:00
Ingo Weinhold
19de31b510 B_OK -> FS_OK
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11598 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-06 13:33:25 +00:00
Ingo Weinhold
76a14666e0 * As read_pos() and write_pos() are supposed to be platform functions,
they return the respective error codes.
* Fixed the open mode conversion function.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11597 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-06 13:32:33 +00:00
Ingo Weinhold
7d0617a836 Er, the last change was quite wrong. Correctly define O_NOTRAVERSE to O_NOFOLLOW, if available.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11596 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-06 13:31:26 +00:00
Ingo Weinhold
cc13340e9a Fixed struct stat conversion functions for non-BeOS.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11595 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-06 13:09:50 +00:00
Ingo Weinhold
16157ab59e ioctx::lock was not initialized properly.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11594 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-06 13:08:58 +00:00
Ingo Weinhold
875d890122 O_NOTRAVERSE is called O_NOFOLLOW under Linux.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11593 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-06 13:07:41 +00:00
Ingo Weinhold
b84eae0a6f Changed the script to make use of bfs_shell and fs_shell_command to
populate an image. The UserlandFS dependency is hereby gone.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11592 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-06 00:15:26 +00:00
Ingo Weinhold
6ff9fee56f Improved the output in case the command failed.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11591 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-06 00:13:39 +00:00
Ingo Weinhold
a34fce7356 Rewrote the mkdir command to support option -p and multiple directories.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11590 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-05 21:37:09 +00:00
Ingo Weinhold
6bc2ff3471 Reverted the kludge introduced to wrap the build platform fstat() and
switch to Axel's hack to just redefine the critical functions via macro
definition in the Jamfile.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11589 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-05 21:01:56 +00:00
Ingo Weinhold
0bd9d4d1c0 Added new source files xcp.cpp, path_util.cpp, stat_util.cpp.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11588 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-05 20:59:47 +00:00
Ingo Weinhold
4a91298cbb * Use our open mode flags and seek modes instead of the build platform
ones.
* Added listattr command.
* Added cd command. It can change the CWD of the emulated as well as of
  the host OS (prefix `:').
* Changed do_dir() to print symlinks with their target.
* Rewrote the rm command. It now support the options -r and -f
  and multiple files.
* Rewrote the symlink command (and renamed it to link, alias ln). It now
  supports creating hardlinks and understands the options -s and -f.
* Added command xcp, with support for options -r, -f, -d, and pretty
  close approximation of the shell command cp, save for the fact, that it
  copies attributes and can freely copy in the emulated and host OS
  (and between them, of course; prefix `:').

Now it should be possible to change makehdimage to use a scripted
bfs_shell instead of UserlandFS to build a HD image.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11587 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-05 20:58:58 +00:00
Ingo Weinhold
c5126c5985 * Write buffers should be const.
* Added sys_stat_attr().
* Added sys_open_attr_dir(). Extended the directory functions to be able
  to deal with attribute directories.
* Init the current directory, so we can use it (the support is there
  already).
* Use our open modes instead of the platform ones.
* Added O_NOTRAVERSE support to sys_open().


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11586 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-05 20:45:45 +00:00
Ingo Weinhold
e19f027e30 Change into the root dir of the FS directly after mounting.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11585 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-05 20:39:02 +00:00
Ingo Weinhold
f64fcd3794 attr_info -> my_attr_info
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11584 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-05 20:38:01 +00:00
Ingo Weinhold
3eb4c2e0cd We also need to take care of the open flags, seek constants and the
BeOS specific structure attr_info (it contains an off_t).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11583 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-05 20:37:04 +00:00
Ingo Weinhold
edbadbb0f3 * The build platform fstat() wrapper moved into stat_util.cpp/h.
* Added wrappers for open(), close(), and read_pos().


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11582 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-05 20:34:39 +00:00
Ingo Weinhold
d29e55d8ec Functions for converting between the build platform and emulated platform stat structures.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11581 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-05 20:32:40 +00:00
Ingo Weinhold
740f995468 Paths related utility functions.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11580 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-05 20:31:39 +00:00
Axel Dörfler
6f5d035e3a Temporarily fixed the build by commenting the two new files. They need
non-POSIX functions that we have disabled from the build. Not sure if
we really want to change that (ie making those functions public).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11579 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-05 14:13:55 +00:00
Axel Dörfler
979afc6fa4 Exchanged -no-fpic with -fno-pic - AFAICT these should be the same, but
GCC/ppc only understands the latter (more correct) version.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11578 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-05 14:11:02 +00:00
Axel Dörfler
7873a9806c Explicetly added top header directory to the search path to make it build again.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11577 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-05 13:52:05 +00:00
Axel Dörfler
61621fc546 Explicetly added top header directory to the search path in order to let
it compile (some recent change in the Jumrules must have revealed these
build errors).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11576 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-05 13:46:33 +00:00
Axel Dörfler
f51f1dda88 Fixed some weird includes (no need or even support to specify "posix" as part of the include path).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11575 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-05 13:37:13 +00:00
Jérôme Duval
f95d0b421a added a setpgrp impl
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11574 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-04 13:56:49 +00:00
Jérôme Duval
c4b73bfcd5 added setpgrp
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11573 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-04 13:55:43 +00:00
Stefano Ceccherini
2c323083e4 Implemented BChannelControl's InvokeChannel and Archive(). Actually this code was sitting somewhere on my hard driver for some time already...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11572 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-04 12:30:16 +00:00