Commit Graph
100 Commits
Author SHA1 Message Date
Axel Dörfler e548161b59 A Jamfile for the heapTest.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3644 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-24 18:11:25 +00:00
Axel Dörfler 4f621b0aa3 Jamfile to build the thing
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3643 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-24 18:10:19 +00:00
Axel Dörfler 1f001dfa88 A test application for the boot loader heap allocator.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3642 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-24 18:09:30 +00:00
Axel Dörfler 1b4a09278b A simple heap implementation for the boot loader - already tested, and working well.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3641 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-24 18:05:54 +00:00
Axel Dörfler c9b0bae94c Needed to compile the boot loader stuff under x86.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3640 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-24 17:27:07 +00:00
Axel Dörfler 59eb57ae58 Some work-in-progress headers that are needed to build the heap test.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3639 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-24 17:22:11 +00:00
Axel Dörfler f14bae95b6 Renamed "blocks" to "blocksRequested" in Inode::GrowStream() to make its
usage clearer. Also added a comment that explains why it's okay that
blocksNeeded and blocksRequested can be different.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3579 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-19 17:11:53 +00:00
Axel Dörfler 4a9d9dfa14 Added new RecursiveLock and RecursiveLocker classes.
Added file system global locking around creating, deleting, and renaming
inodes - that's not nice, but since we have only sequential journal access,
it won't hurt concurrency much. The locks are needed to prevent certain
things from happening like two threads could theoretically create the same
file twice (one of them would have failed, but relatively late in the process).
Anyway, a better locking scheme will be implemented at a later date, but maybe
not for R1.
Small cleanup.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3562 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-18 15:11:31 +00:00
Axel Dörfler 274e6fefaa Removed the new_vnode() timeout for busy vnodes.
Fixed the op-description send_notification() gives - notify_listener() now
only prints out the op value, since it will call send_notification() anyway.
The tracker doesn't try to query files on B_ATTR_CHANGED or when node == 0,
or name == NULL.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3560 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-18 00:01:12 +00:00
Axel Dörfler 55288b8eda Added a sys_open_entry_ref() call to the VFS layer.
Implemented the beginnings of a Tracker like mode in the fs_shell - started
and stopped using the new "tracker" command; it will get all notifications
the file system sends.
Right now it's very simple, it just opens the file, does a stat(), and closes
the file again, and guess what, I could reproduce our favourite problem with
it!! So it will be finally fixed in the next few days.
Some cleanups.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3559 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-17 22:02:23 +00:00
Axel Dörfler 154aaaf273 Removed B_NOT_SUPPORTED again - EOPNOTSUPP is a socket specific error code
and it should have read B_NOT_SUPPORTED_ON_SOCKET.
We could reintroduce it later (along with other missing network errors).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3552 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-17 00:38:45 +00:00
Axel Dörfler 9de96ae6c6 Changed new codes after suggestions from Ingo and Marcus.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3549 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-17 00:08:33 +00:00
Axel Dörfler dcec969499 get_driver_settings_string() now returns the new B_BUFFER_OVERFLOW code
if the buffer is too small for the settings string.
Added/changed some comments.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3548 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-16 22:17:09 +00:00
Axel Dörfler 68145d0df8 Added some new B_* names for existing POSIX error codes - please review.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3547 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-16 20:37:43 +00:00
Axel Dörfler 5133bded7f Fixed some warnings that occured with -Wall - the tests should be compiled
with this by default, like the whole project, too.
Removed the B_FILE_NAME_LENGTH definition, since our headers are now correct.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3546 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-16 19:56:33 +00:00
Axel Dörfler 4a893da100 Added a license to the top of the file.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3545 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-16 19:33:05 +00:00
Axel Dörfler 6ab6d0fda4 Changed one of the built-in settings strings to test the new '=' behaviour.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3544 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-16 17:13:56 +00:00
Axel Dörfler b1b0cf9114 The '=' symbol can now be used without surrounding white space: it will
be accepted between the parameter name and its first value - but it will
be added to any other values for compatibility reasons.
put_string() now correctly quotes strings if needed - the new put_chars()
function puts out a string unchanged (both only used internally anyway).
Added some comments.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3543 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-16 17:13:10 +00:00
Axel Dörfler 2c67210865 Added two more ToDo items so that I do not forget about them.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3531 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-15 21:14:27 +00:00
Axel Dörfler 33aa726c5a Added extra new driver_settings API calls.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3530 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-15 20:46:13 +00:00
Axel Dörfler 659b432cab Now also uses CHECK_MALLOC to enable memory checking instead of MALLOC_DEBUG
directly.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3529 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-15 20:27:53 +00:00
Axel Dörfler e5c72c1505 Added the memory checking support in the Jamfile; use "CHECK_MALLOC=1 jam"
to activate it.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3528 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-15 20:26:20 +00:00
Axel Dörfler 4a5e9fec88 Updated some comments.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3522 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-15 13:23:38 +00:00
Axel Dörfler 7862de2e87 Removed the old driver_settings.c file.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3521 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-15 13:22:50 +00:00
Axel Dörfler 5d25f8fb7b Added the new kernel_os_main.o to the kernel build.
Replaced the "hostname" app with the "tls_test" in the standard build.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3520 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-15 13:17:01 +00:00
Axel Dörfler 1907b4d0ca Added libroot/os/driver_settings.c to the build - this is now also part
of the new kernel_os_main.o object file.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3519 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-15 13:14:36 +00:00
Axel Dörfler 3e758cd63f Removed the core/driver_settings.c from the kernel build.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3518 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-15 13:13:24 +00:00
Axel Dörfler 25ce6eff93 Added a driver_settings test application. It parses all settings in
~/config/settings/kernel/drivers first, and then (re)parses some built-in
settings strings.
Use "-v" to enable verbose output.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3517 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-15 13:08:14 +00:00
Axel Dörfler 7fc8f0544e Fixed addition of empty parameters in certain situations.
Improved the output of get_driver_settings_string().
Small cleanup.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3516 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-15 13:03:49 +00:00
Axel Dörfler b959dda1b7 This replaces kernel/core/driver_settings.c - its functionality will now
be available to userland applications as well.
Furthermore, the API & grammar has been extended. There is now a '=' allowed
between the key and its values. Also, '\n' can now be replaced with ';'. These
changes allow flat driver_settings strings.
It doesn't work perfectly right now, but it's a start. A test application
will be added soon, the kernel file will be removed soon as well, and the
build updated.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3515 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-15 04:06:43 +00:00
Axel Dörfler 410faee318 Actually, I haven't started with this so early on...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3492 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-13 04:16:42 +00:00
Axel Dörfler 6836c3cb8c Add a first non-functional version of the default media theme.
Implemented all needed functionality in BMediaTheme to use this default
theme - it's currently disabled, though (or should be).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3491 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-13 03:56:28 +00:00
Axel Dörfler 1cbf8fa21b Add a first non-functional version of the default media theme.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3490 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-13 03:53:41 +00:00
Axel Dörfler f3df767f76 Added a BeOS compatible strdup() implementation; unlike other strdup()
implementations (and against its standard behaviour), it does now
handle a NULL string parameter gracefully.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3485 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-12 19:35:33 +00:00
Axel Dörfler 0c6fce04e6 Removed the BSD strdup() routine since it is not BeOS compatible.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3484 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-12 19:34:03 +00:00
Axel Dörfler 6b3445e288 Applied NewOS patch 17xx (its repository is currently down...): now sets
the fs register correctly - not that it should have much effect since it's
rarely used anyway (no reason to might be wrong, though) :)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3483 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-12 03:41:38 +00:00
Axel Dörfler 241ca61820 Fixed a stupid typo that got in in the last minute.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3482 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-12 02:49:51 +00:00
Axel Dörfler 9bf6c6c63d Work in progress of the BParameterWeb rework; almost every line has been
changed, sorry.
Fixed many bugs in the old implementation, this one is now also endian-aware,
is faster on many things, works with stampTV, ...
Cleaned up a lot, most of it now complies with our style guide. Added a bunch
of helper functions that makes the code much better (to read), and easier to
maintain.
It's not yet completed though - will do that soon.
Also still missing is any documentation about those classes - I will also
work on this.
The changes have to downsides, though:
- I broke compatibility with the R5 flattened format. It shouldn't be a big
  issue, since it was never thought to be put on disk - I will look into
  that, though.
- the previous implementation had a strange policy when the Unflatten()
  methods had reason to fail - it tried to read as much as possible instead
  of just failing and leaving an invalid object behind. The new implementation
  will just fail - the object you called Unflatten() from might not contain
  useful information after this, though.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3470 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-11 03:12:46 +00:00
Axel Dörfler c59538b901 Some cleanups, courtesy of Jack Burton.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3449 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-08 18:37:42 +00:00
Axel Dörfler 83d0693448 Added some debug output for unimplemented functionality. Cleaned up a bit,
but should probably rewritten - I think it's already too complex now to solve
that whole task.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3402 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-03 02:57:26 +00:00
Axel Dörfler 8ea8d0c2bb Fixed queries a bit more (maybe even completely...). In several situations,
the old attribute value wasn't evaluated at all.
Also, Index::Update() got a type code of zero, instead of the real value
in situations where this didn't make any sense.
Minor cleanup in kernel_interface.cpp.
New method Volume::CheckForLiveQuery() that checks if there is a live query
depending on the specified attribute - not yet implemented, but already used;
always returns "true" right now, which doesn't cause any harm but reducing
the speed lightly.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3394 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-01 02:55:33 +00:00
Axel Dörfler cca15c0166 Added a little more debug output in BPlusTree::Find().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3393 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-01 02:49:38 +00:00
Axel Dörfler 58453f3bbb Now sets the magic value in the check_control structure.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3382 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-29 01:04:22 +00:00
Axel Dörfler c3f10b4674 Added a simple magic field mechanism to make chkbfs calls a little more safe.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3381 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-29 01:02:18 +00:00
Axel Dörfler f2024b1158 Fixed debug output in bfs_setflags().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3379 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-28 23:12:18 +00:00
Axel Dörfler a9aa5ee181 Implemented bfs_setflags().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3367 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-28 01:56:24 +00:00
Axel Dörfler a13beecdee Removed the possibility to create a Semaphore object without specifying
a name - that's mostly done to:
1) force better fitting lock names
2) make the API consistent (the empty ReadWriteLock constructor doesn't
   initialize the lock anymore).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3366 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-28 01:34:18 +00:00
Axel Dörfler 20c74d7d25 Fixed reordering of initializer warning - should compile the fs_shell with
-Wall enabled...


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3365 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-28 01:32:40 +00:00
Axel Dörfler ae58716024 Fixed another bad bug caused by calling get_vnode() on a node currently
being constructed: bfs_read_node() created an Inode object independent from
the one set in new_vnode().
As a work-around (the new VFS layer will introduce some better methods here)
we are now using the bfs_inode.etc field as a pointer to our object - just
like BFS has thought to use this field. If bfs_read_vnode() has to wait for
the inode (because it is being constructed), it will use the "etc" pointer
and don't create it's own Inode object.
Almost all changes made change the API to take this case into account:
- new Inode constructor to be able to be created from a CachedBlock
- CachedBlock now has a Keep() method which suppresses the release_block()
  call when the object is destructed.
- a CachedBlock can now be constructed from the contents of another one (by
  calling the source's Keep() method).
- Inode::InitCheck() no longer checks the integrity of the bfs_inode - this
  is now done by bfs_inode::InitCheck() which is optionally called by the
  former (default).
- moved the inline CachedBlock methods out of the class definition (was
  too crowded to be readable).
- new Inode::Initialize() which is called by all Inode constructors
- an Inode object now sets a better name for its read/write lock.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3364 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-28 01:27:27 +00:00
Axel Dörfler 1d9fd63d3a The ReadWriteLock class now has an Initialize() method to initialize the
object after creation. This enables the Inode constructor to set a better
name for the lock.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3363 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-28 01:12:38 +00:00
Axel Dörfler 24d6529a93 Journal::LogBlocks() now calls cache_write() if the block is already in the
log entry - this is only necessary if the buffer is not the one of the
CachedBlock object.
Journal::TransactionDone() now properly aborts transactions if possible,
instead of just writing them to disk (does only work if the log entry
was not used by other transactions already).
Added a comment about how to speed up writing the log entries a bit more
(though it's not so easy to do, and might not be much faster).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3362 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-28 01:10:22 +00:00
Axel Dörfler 6c66b99b6b The fs-shell kernel's PANIC() now calls the userland debugger.
Fixed a wrong printf argument (block number is %Ld) in release_block().


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3361 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-28 01:04:53 +00:00
Axel Dörfler a476bfc5b1 Now waits for a whole second on the inode to become unbusy - just in case
there is a slow drive. Note, if the system is heavily used and the thread
waiting for the inode to become unbusy is a real time thread, that time
might be not enough - don't have a better solution at hand though (other
than waiting even longer).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3346 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-26 22:40:14 +00:00
Axel Dörfler 3cfd8472f9 Fixed the ominous "new_vnode() already exists with different cookie" bug,
thanks to Bruno for pointing me in the right direction (that has probably cost
him several hours of his life ;-))!
Yes, it was that complicated to fix it...


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3345 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-26 22:36:23 +00:00
Axel Dörfler b807dfb5b1 Updated the help text for "startquery" & "stopquery" to match reality better.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3335 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-26 02:19:06 +00:00
Axel Dörfler 6e14268838 The kernel now has support for setting port&token of a query.
The fs_shell is now able to start up to 10 concurrent live queries. Use
"stopquery" to stop them all or just one of them, "startquery" to initiate
one, and "lsquery" to display them all.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3334 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-26 02:16:54 +00:00
Axel Dörfler b0ff9520c0 The Jamfile now compiles with -fcheck-memory if MALLOC_DEBUG is set. Of course,
jam itself will also be checked then, which cries out loud for a better way to
do this. But hey, it works :-)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3333 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-26 02:14:03 +00:00
Axel Dörfler 470a60786e Updated the ToDo list; thanks to Ingo I know now a little bit more about
float/double queries :-)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3332 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-26 01:51:19 +00:00
Axel Dörfler 6ac535c5c5 Fixed another bad bug in the block allocator: the size of the last block
of the block bitmap could be computed wrong - this could cause all sorts
of errors like: overwriting data, creating the "new_vnode with different
cookie" problem, etc.
Should really be the last bug in that piece of code ;-P


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3331 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-26 01:50:34 +00:00
Axel Dörfler e1d37632bb Now takes changed function of Index::Update() into account - queries on
non-indexed attributes now finally work as they should.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3330 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-26 01:47:06 +00:00
Axel Dörfler ab47860c37 Index::SetTo() now sets fName even if the index initialization failed (for
whatever reason).
Index::Update() is now allowed to be called for those indices - in this case
it will just update all live queries.
Added some comments.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3329 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-26 01:45:09 +00:00
Axel Dörfler 09ed3db89a Some minor style changes/clean ups.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3328 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-26 01:43:14 +00:00
Axel Dörfler 917d37106e The startquery command now stops an eventually running query (which now
makes several live queries at once impossible :-).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3319 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-25 16:59:47 +00:00
Axel Dörfler a1fe805b79 new_vnode() now complains if the vnode already exists (and panics with when
it has a different data set).
Improved the kernel's PANIC() function (now accepts varargs).
sys_open_query() now has a flags field (that can be set to B_LIVE_QUERY).
The fs_shell now supports one live query; might be enhanced later to support
more than just one (concurrently).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3318 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-25 16:56:03 +00:00
Axel Dörfler 121a2e82c0 Really fixed build (while keeping the app in the build).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3277 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-21 03:35:56 +00:00
Axel Dörfler ff6ff33a9d Put spaces between "::" in the asm directive to let it compile in C++ mode.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3262 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-20 03:02:19 +00:00
Axel Dörfler 98cc804c5d Added KERNEL_C++FLAGS to define -fno-exceptions and -fno-rtti for kernel
objects automatically.
Also added a new OBOS_BOOT_LIB variable - might be changed again in the
future, though.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3254 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-18 16:16:09 +00:00
Axel Dörfler cb7bb042d1 Fixed a typo in the Jamfile that prevented "cpuinfo" to build.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3252 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-17 15:35:55 +00:00
Axel Dörfler 0f3a75138a Our endian.h header was still missing. Defines constants to determine the
platform's endian.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3251 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-17 15:26:18 +00:00
Axel Dörfler c77d826810 The updated BeBuild.h to deal with our current target platforms (which are
all gcc/ELF based).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3247 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-15 14:54:08 +00:00
Axel Dörfler 553f11cc8b The cpuinfo command is now locally built and added to the tree.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3238 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-13 15:26:28 +00:00
Axel Dörfler 897285de73 Removed x86 dependent "cpuinfo" command from the main build (it's now added
locally in the app/cpuinfo directory).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3237 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-13 15:25:04 +00:00
Axel Dörfler c0f5672484 Removed unused functions, the C++ extern "C" now spans over all functions.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3236 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-13 15:23:17 +00:00
Axel Dörfler 8f048d2b40 Added missing arch_*() functions, removed the (empty) atomic_*() definitions,
since they are implemented in the libroot's os/arch directory.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3235 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-13 15:20:47 +00:00
Axel Dörfler dd22481e7a The DEFINES variable doesn't contain the "D" from the option name (-D...).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3234 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-13 02:25:12 +00:00
Axel Dörfler 9cf09b95ed Now located in src/kernel/ldscripts.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3233 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-13 02:22:10 +00:00
Axel Dörfler 7058303f99 Added add-on.ld and moved kernel.ld to the correct location.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3232 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-13 02:21:16 +00:00
Axel Dörfler 976b0da0d6 Fixed some C++ build issues with fd.h.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3231 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-13 00:27:29 +00:00
Axel Dörfler b263fa5a63 Added Jamfile and fixed all warnings that popped up when compiling with -Wall.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3230 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-12 23:45:57 +00:00
Axel Dörfler c0f1a43053 Initial revision
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3226 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-12 23:11:21 +00:00
Axel Dörfler f48e0d551d Updated ld-script location.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3215 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-12 01:00:20 +00:00
Axel Dörfler e02284d547 Are now located in src/kernel/ldscripts.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3214 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-12 00:51:11 +00:00
Axel Dörfler 87ea713dec This file isn't used anymore (the config will be created by the build process).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3213 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-12 00:46:39 +00:00
Axel Dörfler a457ef3c93 Moved the ld-scripts all in one place, instead of spread all over the
repository.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3212 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-12 00:45:08 +00:00
Axel Dörfler 3d1d37bcc9 Added missing newline.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3211 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-12 00:40:54 +00:00
Axel Dörfler 1df8b22cb1 I don't know yet *why*, but the build fails when this header is guarded
against reinclusion - possibly because GCC's stdarg.h act differently
when certain symbols are defined.
Anyway, that fixes the issue for now.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3207 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-11 16:14:12 +00:00
Axel Dörfler d94f33a308 Accidently broke Jamfile in the last revision (missing comment).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3205 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-11 07:38:33 +00:00
Axel Dörfler db44cc624c Fixed a typo: don't use copy&paste...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3204 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-11 05:52:41 +00:00
Axel Dörfler 23d0f041d6 Added ldscripts for other kernel stuff.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3203 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-11 05:46:05 +00:00
Axel Dörfler ed6b39346e Added dumb implementations for system_time() and TLS: system_time() currently
just returns the contents of the time base register, and the TLS implementation
is only working correctly for single threaded applications. Enough for testing,
at least.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3202 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-11 05:44:12 +00:00
Axel Dörfler f45e90df37 Now accepts more PowerPC "standard" defines, which allows it to build here.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3201 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-11 03:15:41 +00:00
Axel Dörfler 14fcd1e5aa The cpuinfo app is only added to the x86 build for now.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3200 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-11 03:13:19 +00:00
Axel Dörfler f9959bb699 CFLAGS for the driver were dependent on the x86 architecture.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3199 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-11 03:05:46 +00:00
Axel Dörfler 035aa55650 Our stdarg.h header will now directly include the provided GCC header (and
don't do anything else anymore).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3198 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-11 02:58:23 +00:00
Axel Dörfler bc09b1bfc2 This stdarg.h header file is not needed at all.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3197 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-11 02:29:41 +00:00
Axel Dörfler 1f78a92b12 Implemented the atomic functions to get in touch with PPC assembly.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3196 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-11 02:17:54 +00:00
Axel Dörfler 060ea25f57 Fixed makeflop on PPC (applied NewOS change 1778).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3169 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-03 17:24:23 +00:00
Axel Dörfler c9882d9e80 TARGET_CPU can now be set externally if needed.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3168 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-03 17:01:03 +00:00
Axel Dörfler 1f622a7b2e The Jamrules now support different build platforms (at least in theory).
The PPC version can now be built - but of course, it doesn't work yet.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3167 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-03 16:39:41 +00:00
Axel Dörfler 7cbca7f74c boot headers have been moved.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3166 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-03 16:33:09 +00:00