Commit Graph

2405 Commits

Author SHA1 Message Date
DarkWyrm cd5337c0a2 Lots of new stuff and tweaks to old specs.
DisplayDriver documentation incomplete.
ServerCursor docs nonexistent.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2442 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-12 22:51:01 +00:00
Axel Dörfler 75b2a820de Updated to be a bit more BeOS compatible (now calls B_INIT_BEFORE/AFTER_FUNCTION_NAME
instead of "INIT_BEFORE/AFTER_CTORS".
Uses the new runtime linker exports.
Note, this is not yet BeOS compatible (will need to have init/fini sections)!


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2441 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-12 17:22:45 +00:00
Axel Dörfler e6e5ebbc10 Added a comment about the "non-thread-safety" of gStatus (dlerror()).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2440 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-12 17:16:20 +00:00
Axel Dörfler 7dce97278f Implemented the unix dlfcn API; note, the RTLD_xxx modes are not yet supported
by the loader. dlerror() is not thread-safe.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2439 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-12 17:15:17 +00:00
Axel Dörfler eadb1c453a Now calls the __init__image() initializer function.
INIT_BEFORE_CTORS() is now called initialize_before() to be compatible
with BeOS start_dyn.o.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2438 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-12 17:13:32 +00:00
Axel Dörfler f9f3e26e3c Implemented the complete BeOS image API, added kernel image API syscalls,
added it to the build.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2437 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-12 17:11:53 +00:00
Axel Dörfler 0c79589d60 First set of changes to have a BeOS compatible runtime loader.
Added a simple locking strategy to the loader (didn't do any locking before),
it now uses a global recursive lock for the exported API.
Implemented all needed functionality for the BeOS image API.
Now registers images with the kernel.
Added several ToDo items.
Cleanups, and possibly more I've forgotten about.
(hope this works since the local diff does not?!)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2436 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-12 16:59:18 +00:00
Axel Dörfler 077020137d Just cleanups, commented out unused code.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2435 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-12 16:54:38 +00:00
Axel Dörfler 2a2cf1b8f5 Just some cleanups.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2434 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-12 16:53:36 +00:00
Axel Dörfler 9bbbc67386 Removed the export prototypes - this is now completely done in rldexport.c.
Now more dynmodule_id; it now uses the image_id directly.
Updated for the other changes to the functions.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2433 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-12 16:51:15 +00:00
Axel Dörfler 24154245f1 Fixed a comment.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2432 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-12 16:48:48 +00:00
Axel Dörfler f351df0829 Moved export stuff to rldexport.c, rldexport_init() is now also called.
Cleanups.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2431 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-12 16:48:09 +00:00
Axel Dörfler 0119ceeb8e Implemented the runtime linker export API.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2430 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-12 16:37:40 +00:00
Axel Dörfler c60685fcad Fixed parameter for get_nth_image_symbol().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2429 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-12 16:36:30 +00:00
Axel Dörfler 2700a953b9 Removed rldunix.c and rldbeos.c as they are no longer needed.
The runtime linker now exports the API in rldexport.c


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2428 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-12 16:32:30 +00:00
Axel Dörfler 1da55179ee thread_exit() now removes the registered images when the team goes down.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2427 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-12 16:30:09 +00:00
Axel Dörfler c8019cad42 Added support for the image queue in the team structure.
Adapted because of changing structure names (struct uspace_program_args).
Added comments, fill_team_info() now sets the team_info.image_count correctly.
Some cleanups and style changes.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2426 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-12 16:29:28 +00:00
Axel Dörfler 75dccdb63c Added the image API syscalls.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2425 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-12 16:27:03 +00:00
Axel Dörfler 598e865517 Added image.c to the build.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2424 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-12 16:26:39 +00:00
Axel Dörfler c679492034 Added a queue to the team structure for the registered images.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2423 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-12 16:25:04 +00:00
Axel Dörfler 29164895ac Must now include image.h directly.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2422 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-12 16:24:12 +00:00
Axel Dörfler 9edac21abd Removed the image_id type definition from ktypes.h.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2421 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-12 16:23:21 +00:00
Axel Dörfler ef6d88af27 Renamed "struct rld_export_t" to "struct rld_export", "struct uspace_prog_args_t"
to "struct uspace_program_args", prog_name & prog_path to program_name and
program_path.
Moved the MAGIC_APPNAME to a BeOS compatible MAGIG_APP_NAME from rld_priv.h
to this place.
Removed the dlxxx() exports in the rld_export structure - instead, they will
be implemented using the basic runtime linker API which is a slightly extended
version of the standard BeOS calls (load_add_on() has a "flags" paramater to
allow implementation of dlopen()).
Completed the export API to be able to completely support the BeOS API.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2420 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-12 16:22:09 +00:00
Axel Dörfler 30f9b99833 Added sys_ prototypes for the kernel image API syscalls.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2419 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-12 16:17:09 +00:00
Axel Dörfler 909f4951dd Added our dlfcn.h header - the RTLD_xxx constants may change, though.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2418 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-12 16:15:49 +00:00
Axel Dörfler 6cdae891c3 minor changes.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2417 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-12 16:10:28 +00:00
Axel Dörfler 49c987ef8d Added a macro to iterate through the kqueue.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2416 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-12 16:00:59 +00:00
Axel Dörfler 1c204d8bb9 Added syscalls for the image API.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2415 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-12 15:59:50 +00:00
Axel Dörfler 9c12864dfd Header for the kernel image API.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2414 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-12 15:59:12 +00:00
Axel Dörfler 515a4a6590 Implementation of the kernel part of the image API.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2413 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-12 15:58:08 +00:00
Ingo Weinhold 4a05764e4b Some smaller changes concerning the scanning of the settings file to make it behave more like BeOS.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2412 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-12 14:42:09 +00:00
Matthew Wilber bb87c791cb Cleaned up a few little things
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2411 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-11 15:56:02 +00:00
Matthew Wilber 755ac1744b Changes made due to renaming of R4xTranslator to FuncTranslator
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2410 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-11 13:56:45 +00:00
Matthew Wilber 27aa9660b3 renamed R4xTranslator.cpp to FuncTranslator.cpp
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2409 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-11 13:55:35 +00:00
Matthew Wilber b0837927f6 changed to reflect the name change of R4xTranslator.h to FuncTranslator.h
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2408 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-11 13:52:59 +00:00
Matthew Wilber 0ac173e420 renamed R4xTranslator.h to FuncTranslator.h
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2407 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-11 13:51:18 +00:00
Matthew Wilber d7e25ddc2b A beta tester reported that PackageBuilder failed to load when the OBOS libtranslation.so was used. This was because the
OBOS BBitmapStream was missing a protected function.  I implemented the protected function (SwapHeader) and changed the cl
ass to use it instead of the previous functions that I wrote to provide similar behavior.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2406 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-11 03:20:08 +00:00
Matthew Wilber 9f9e1f50fb A beta tester reported that PackageBuilder failed to load when the OBOS libtranslation.so was used. This was because the OBOS BBitmapStream was missing a protected function. I implemented the protected function (SwapHeader) and changed the class to use it instead of the previous functions that I wrote to provide similar behavior.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2405 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-11 03:19:28 +00:00
Stefano Ceccherini 5901730132 Added a doxygen_config file for the Support kit. I hope the storage kit will excuse me for stoling their file :)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2404 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-10 16:14:55 +00:00
Stefano Ceccherini 5235e06864 When you pass a negative number as Truncate() argument, the string is truncated to a length of 0 (before Truncate() just did nothing), because it makes more sense (there isn't any problem with R5 compatibility, because here R5's BString just crashed).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2403 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-10 16:10:00 +00:00
Axel Dörfler 1ff1332c77 The bootmaker now defaults to the endian of the host platform.
Fixed style issues.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2402 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-10 11:48:38 +00:00
Axel Dörfler d9f08d808d The empty string ("", length 0) will now be replaced with ("", length 1) in
queries, to let the BPlusTree::Find() method search for it (there can't be
any keys in the tree with length 0).
That means that the query 'META:url=""' will now return all files where the
attribute "META:url" is present but empty.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2401 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-10 11:14:07 +00:00
Axel Dörfler 3b7911f105 We now check in bfs_rename() if the new name is the same as the old name
in the same directory - in this case, we will return B_OK (as nothing has
to be done to fulfill the request), instead of B_BAD_VALUE which would
be thrown later in the process.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2400 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-10 11:08:51 +00:00
Stefano Ceccherini a8dee23ea0 A fix for a Replace function, some checks which makes the code
more robust, some style changes, some more comments.
Started to document the class with Doxygen comments.
(I made too many changes to keep the file local :)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2399 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-10 10:19:56 +00:00
Michael Phipps 8bd24c033e Moved Tests
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2398 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-10 01:20:51 +00:00
Michael Phipps f767d0eeab Changes due to better testing
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2397 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-10 01:19:16 +00:00
Michael Phipps cf7199ba56 Many changes due to enhanced testing.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2396 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-10 01:09:45 +00:00
beveloper d6379053ba Made time sources mode BeOS R5 conforming.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2395 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-09 17:54:20 +00:00
Stefano Ceccherini cfe8d4a743 one more test for ReplaceSet(char, char)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2394 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-09 14:00:47 +00:00
Axel Dörfler 4fff689f48 Some minor updates:
arch_cpu: could have used the TLS_SIZE macro in one place, removed
a now unused variable, assignments to tss_loaded are now booleans.
thread.c: added the new fields to _dump_thread_info().


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2393 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-08 09:27:55 +00:00