From 8c7387275bf145894fa9a217a1f19f59d5445e96 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Axel=20D=C3=B6rfler?= Date: Thu, 11 Sep 2003 17:49:03 +0000 Subject: [PATCH] Added support for BeOS; Handle.cpp uses read_pos() now, and will define that to pread() if read_pos() doesn't exist. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4621 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/tests/kernel/boot/loader/Handle.cpp | 10 ++++++++-- src/tests/kernel/boot/loader/Jamfile | 3 ++- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/src/tests/kernel/boot/loader/Handle.cpp b/src/tests/kernel/boot/loader/Handle.cpp index b027c4a2b1..d3487de075 100644 --- a/src/tests/kernel/boot/loader/Handle.cpp +++ b/src/tests/kernel/boot/loader/Handle.cpp @@ -13,6 +13,12 @@ #include +#ifndef HAVE_READ_POS +# define read_pos(fd, pos, buffer, size) pread(fd, buffer, size, pos) +# define write_pos(fd, pos, buffer, size) pwrite(fd, buffer, size, pos) +#endif + + Handle::Handle(int handle, bool takeOwnership) : fHandle(handle), @@ -49,14 +55,14 @@ Handle::SetHandle(int handle, bool takeOwnership) ssize_t Handle::ReadAt(void *cookie, off_t pos, void *buffer, size_t bufferSize) { - return pread(fHandle, buffer, bufferSize, pos); + return read_pos(fHandle, pos, buffer, bufferSize); } ssize_t Handle::WriteAt(void *cookie, off_t pos, const void *buffer, size_t bufferSize) { - return pwrite(fHandle, buffer, bufferSize, pos); + return write_pos(fHandle, pos, buffer, bufferSize); } diff --git a/src/tests/kernel/boot/loader/Jamfile b/src/tests/kernel/boot/loader/Jamfile index e631f18760..992d63d7bb 100644 --- a/src/tests/kernel/boot/loader/Jamfile +++ b/src/tests/kernel/boot/loader/Jamfile @@ -23,7 +23,8 @@ ObjectDefines if $(OS) = "LINUX" { # SubDirC++Flags -include /usr/include/stdio.h ; } else { - SubDirC++Flags -include /boot/develop/headers/posix/stdio.h ; +# SubDirC++Flags -include /boot/develop/headers/posix/stdio.h ; + SubDirC++Flags -DHAVE_READ_POS=1 ; } SimpleTest BootLoaderTest :