From 289d99a6606c753cb7f48e0c4b2b3a9a1c0e353c Mon Sep 17 00:00:00 2001 From: extrowerk Date: Sun, 7 Dec 2014 01:21:24 +0000 Subject: [PATCH 01/48] Haiku SDL port recipe. It build and run, but have minor problems. --- .../homeworld_sdl/homeworld_sdl-0.6.recipe | 74 +++++ .../homeworld_sdl/licenses/RE-INC-EULA | 261 ++++++++++++++++++ 2 files changed, 335 insertions(+) create mode 100644 games-strategy/homeworld_sdl/homeworld_sdl-0.6.recipe create mode 100644 games-strategy/homeworld_sdl/licenses/RE-INC-EULA diff --git a/games-strategy/homeworld_sdl/homeworld_sdl-0.6.recipe b/games-strategy/homeworld_sdl/homeworld_sdl-0.6.recipe new file mode 100644 index 000000000..8b688b187 --- /dev/null +++ b/games-strategy/homeworld_sdl/homeworld_sdl-0.6.recipe @@ -0,0 +1,74 @@ +SUMMARY="Homeworld is a space real-time strategy computer game." +DESCRIPTION=" +Homeworld is a real-time strategy computer \ +game, set and played in a 3D space environment. \ +Developed by Relic Entertainment, it was released \ +for the PC in 1998 to worldwide acclaim, winning \ +multiple awards for its novel gameplay and strong \ +single-player story. Relic Entertainment later released \ +the source code to the public under licence. +" +HOMEPAGE="http://www.homeworldsdl.org/" +COPYRIGHT="1999-2000 Sierra On-Line, Inc." +LICENSE="RE-INC-EULA" +SRC_URI="git+https://bitbucket.org/extrowerk/homeworld-sdl-haiku.git" +REVISION="1" +ARCHITECTURES="x86_gcc2 x86" +SECONDARY_ARCHITECTURES="x86" + +PROVIDES=" + homeworld_sdl$secondaryArchSuffix = $portVersion + app:homeworld_sdl$secondaryArchSuffix = $portVersion + " + +REQUIRES=" + haiku$secondaryArchSuffix >= $haikuVersion + lib:libsdl$secondaryArchSuffix + lib:libGL$secondaryArchSuffix + lib:libglu$secondaryArchSuffix + #lib:mesa_swrast + " +BUILD_REQUIRES=" + haiku${secondaryArchSuffix}_devel >= $haikuVersion + devel:libsdl$secondaryArchSuffix + devel:libglu$secondaryArchSuffix + " +BUILD_PREREQUIRES=" + cmd:gcc$secondaryArchSuffix + cmd:ld$secondaryArchSuffix + cmd:make + cmd:autoconf + cmd:aclocal + cmd:libtool + cmd:yacc$secondaryArchSuffix + cmd:flex + " + +SOURCE_DIR="homeworld-sdl-haiku" + +BUILD() +{ + cd Haiku + echo "Bootstrapping Homewold_SDL" + bash ./bootstrap + echo "Configuring Homeworld_SDL" + runConfigure ../configure -C --bindir=$appsDir/Homeworld_SDL + echo "Building Homeworld_SDL" + make $jobArgs +} + +INSTALL() +{ + cd Haiku/src + echo "Striping debug symbols" + strip homeworld + echo "Creating bin directory for packaging Homeworld_SDL" + mkdir -p $appsDir/Homeworld_SDL + echo "Moving binary into the bin directory" + cp homeworld $appsDir/Homeworld_SDL/homeworld_sdl + cd .. + unzip ./Haiku_Extra/Homeworld_Haiku_Start.sh.zip + cp Homeworld_Haiku_Start.sh $appsDir/Homeworld_SDL/Start_Homeworld_SDL.sh + echo "Adding Homeworld_SDL to the Deskbar" + addAppDeskbarSymlink $appsDir/Start_Homeworld_SDL.sh Homeworld_SDL +} diff --git a/games-strategy/homeworld_sdl/licenses/RE-INC-EULA b/games-strategy/homeworld_sdl/licenses/RE-INC-EULA new file mode 100644 index 000000000..38dcd1ff2 --- /dev/null +++ b/games-strategy/homeworld_sdl/licenses/RE-INC-EULA @@ -0,0 +1,261 @@ +Homeworld © 1999-2000 Sierra On-Line, Inc. All Rights Reserved. +Homeworld is a registered trademark, and Sierra and Sierra Studios are +registered trademarks of Sierra On-Line, Inc. Relic is a trademark of Relic +Entertainment, Inc. + +------------------------------------------------------------------------------ + +This port of Homeworld is based on the original Homeworld source code released +by Relic Entertainment through the Relic Developers Network. It has been +edited for content and formatted to fit your OS. + +The original Homeworld source code in its entirety is available from the Relic +Developers Network website at http://www.relic.com/rdn/ + +This file contains a copy of the end-user license agreement presented with the +Homeworld source code from the Relic Developers Network. If you are using a +pre-built version of Homeworld, other pre-built libraries have been included +with the distribution which utilize their own licenses (particularly the GPL +and LGPL). Copies of these licenses have been included in additional +"COPYING_*" files with the pre-built package. + +Simple DirectMedia Layer (SDL) is licensed under the LGPL. The source code to +SDL is available at http://www.libsdl.org/ + +Headers for Glide 2 have also been thrown into the source package. They are +taken from the open-source Glide 2 library, which is licensed under the 3dfx +Glide General Public License. A copy of the license is included in the +"include/glide2" directory in the source package. + +------------------------------------------------------------------------------ + + Relic Entertainment Inc. TM + + END-USER LICENSE AGREEMENT FOR + RELIC ENTERTAINMENT INC. ("RELIC") SOFTWARE + + IMPORTANT-READ CAREFULLY: + + +This RELIC End-User License Agreement (the "Agreement") is a legal agreement +between you (either an individual or a single entity) and RELIC, for the use +of one or more elements of RELIC proprietary software, which may at RELIC's +discretion include computer code related to Homeworld 1 TM, tools or other +material related to creating content related to Homeworld 2 TM and/or +Impossible Creatures TM including without limitation associated media, printed +materials, and "online" or electronic documentation (individually or +collectively referred to as the "SOFTWARE PRODUCT"). The SOFTWARE PRODUCT may +also include any updates and supplements to the original SOFTWARE PRODUCT +provided to you by RELIC. Any software provided along with the SOFTWARE +PRODUCT that is associated with a separate end-user license agreement is +licensed to you under the terms of that license agreement. + +BY CLICKING "AGREE" BELOW, AND/OR BY INSTALLING, COPYING, DOWNLOADING, +ACCESSING OR OTHERWISE USING THE SOFTWARE PRODUCT, YOU AGREE TO BE BOUND BY +THE TERMS OF THIS AGREEMENT. IF YOU DO NOT AGREE TO THE TERMS OF THIS +AGREEMENT, DO NOT INSTALL OR USE THE SOFTWARE PRODUCT. + +This Agreement is made by and between you (the "LICENSEE") and RELIC. + +WHEREAS, RELIC is a game development company that owns certain tools, game +engines and other technology used to develop interactive entertainment +software games; and + +WHEREAS, LICENSEE wishes to utilize the SOFTWARE PRODUCT for non-commercial +purposes in accordance with the terms set forth herein; and + +WHEREAS, LICENSEE wishes to license from RELIC and RELIC wishes to license to +LICENSEE, the SOFTWARE PRODUCT and other information as deemed from time to +time appropriate by RELIC, all on the terms set forth herein; + +NOW, THEREFORE, in consideration of the mutual promises made herein, the +receipt and sufficiency of which is hereby acknowledged, the parties agree as +follows: + + +1. License + +1.1 License Grant. Provided that the LICENSEE complies with the terms set +forth herein, RELIC hereby grants LICENSEE a limited purpose, nonexclusive, +royalty-free, terminable, worldwide, non-transferable license to: + + (a) use, reproduce and modify the SOFTWARE PRODUCT and the MODIFIED SOFTWARE +(as defined in section 2.1) solely for non-commercial purposes; and + + (b) distribute the SOFTWARE PRODUCT and the MODIFIED SOFTWARE, solely for +non-commercial purposes, and only to registered members of RDN-RELIC +Developer's Network who have agreed to abide by the terms of this Agreement. + +For greater certainty, the term "for non-commercial purposes" as used in this +Agreement means that the use, reproduction, modification and/or distribution +of the SOFTWARE PRODUCT and/or MODIFIED SOFTWARE must be made free of any and +all charges or payments and, without limitation, must not entitle, directly or +indirectly, the LICENSEE, any related parties or third parties to receive any +financial consideration or compensation related to such use, reproduction, +modification and/or distribution. + +1.2 Updates. RELIC may from time to time, in its sole discretion, and without +any obligation on the part of RELIC, provide updates, error corrections, and +future versions of SOFTWARE PRODUCT to LICENSEE. Upon delivery, such updates, +error corrections and future versions shall be deemed part of the SOFTWARE +PRODUCT, as applicable, and governed by the terms and conditions of this +Agreement. + +1.3 Reservation of Rights. RELIC reserves all rights not explicitly granted +herein. + +1.4 Indemnity. LICENSEE hereby agrees that it is solely responsible for any +and all liability, claims, damages or losses arising, directly or indirectly, +from any and all LICENSEE use, reproduction, modification and distribution of +the SOFTWARE PRODUCT. LICENSEE shall defend, indemnify, and hold harmless +RELIC, its officers, directors, employees and agents against any and all +claims, damages, losses, or liabilities whatsoever arising out of LICENSEE's +use, reproduction, modification and/or distribution of the SOFTWARE PRODUCT. + +1.5 Trademarks. LICENSEE acknowledges and agrees that this Agreement does not +grant LICENSEE any right to use any trademarks or trade names of RELIC or +their licensors. All such marks shall remain the property of the respective +owner. + + +2. Intellectual Property + +2.1 Ownership. The LICENSEE acknowledges and agrees that if the SOFTWARE +PROGRAM is improved, modified, developed or otherwise amended by the LICENSEE +("MODIFIED SOFTWARE") the LICENSEE shall have, save and except for the limited +license granted to the LICENSEE pursuant to the terms and conditions of this +Agreement, no right, title or interest in and to the MODIFIED SOFTWARE as +modified or altered, whether modified by the LICENSEE or RELIC and whether or +not such modifications are authorized pursuant to this Agreement. +Specifically, the LICENSEE hereby assigns all right, title and interest +arising out of any such MODIFIED SOFTWARE to RELIC or any other entity as +RELIC shall require and the LICENSEE will execute such further and other +documents and do such further and other acts as may be necessary, in the sole +opinion of RELIC, to transfer all such right, title and interest in and to the +MODIFIED SOFTWARE from the LICENSEE to RELIC. If, to the extent that it may +be deemed that an assignment or grant of right under this section cannot be +made until after relevant works are in existence, the LICENSEE's acceptance of +the terms and conditions of this Agreement shall constitute an irrevocable +assignment of all right, title and interest in and to all complete or +incomplete works that make up the MODIFIED SOFTWARE. The LICENSEE hereby +irrevocably waives in whole any and all moral rights arising under the +Copyright Act (Canada), as amended from time to time, or other similar +legislation in any jurisdiction or at common law, which the LICENSEE may have +in the MODIFIED SOFTWARE. + + +3. Term + +3.1 Term. This Agreement shall become effective as of the date LICENSEE +downloads or installs the SOFTWARE PRODUCT and shall expire five (5) years +after such date. + +3.2 Termination. RELIC may, at its sole discretion and authority, terminate +this Agreement immediately upon notice including without limitation notice via +email to LICENSEE. The Agreement will terminate automatically upon LICENSEE's +breach of any term of this Agreement. Any notice sent or transmitted by RELIC +to the LICENSEE's last known or registered address will be deemed to have been +sent by RELIC and received by LICENSEE one (1) day after such sending or +transmission by RELIC. In the event that this Agreement is terminated for any +reason, the LICENSEE shall immediately and permanently cease use, +reproduction, modification or distribution of the SOFTWARE PRODUCT and +MODIFIED SOFTWARE and will destroy any and all software, code, associated +media and printed materials related to, directly or indirectly, the SOFTWARE +PRODUCT and/or the MODIFIED SOFTWARE. + +3.3 Survival. Sections 1.4, 1.5, 2.1, 3.2, 3.3, 4.1, 4.2, 5.1 and 7 shall +survive any expiration or termination of this Agreement. + + +4. Disclaimers, Warranties and Limitation of Liability + +4.1 NO WARRANTIES. RELIC AND ITS SUPPLIERS DISCLAIM ANY AND ALL WARRANTIES +WITH RESPECT TO THE SOFTWARE PRODUCT, EITHER EXPRESS OR IMPLIED, INCLUDING, +BUT NOT LIMITED TO, IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE. THE LICENSEE ACKNOWLEDGES THAT IT HAS NOT RELIED ON ANY +WARRANTY MADE BY RELIC OR ITS SUPPLIERS. THE SOFTWARE PRODUCT IS PROVIDED ON +AN "AS IS" BASIS WITH NO WARRANTY, EXPRESS OR IMPLIED AND RELIC HAS NO +OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS OR +MODIFICATIONS WITH RESPECT TO THE SOFTWARE PRODUCT TO THE LICENSEE. + +4.2 LIMITATION OF LIABILITY. IN NO EVENT SHALL RELIC OR ITS SUPPLIERS BE +LIABLE FOR ANY DAMAGES SUFFERED OR INCURRED BY THE LICENSEE OR ANY OTHER +PERSON OR ENTITY INCLUDING, WITHOUT LIMITATION, ANY SPECIAL, INCIDENTAL, +INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES WHATSOEVER (INCLUDING, WITHOUT +LIMITATION, DAMAGES FOR LOSS OF BUSINESS PROFITS, LOSS OF REVENUE, BUSINESS +INTERRUPTION, LOSS OF BUSINESS INFORMATION, OR ANY OTHER PECUNIARY LOSS) +ARISING OUT OF THE USE OF OR INABILITY TO USE THE SOFTWARE PRODUCT, EVEN IF +RELIC HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. + + +5. + +5.1 COPYRIGHT. All title and copyrights in and to the SOFTWARE PRODUCT +(including but not limited to any images, photographs, animations, video, +audio, music, text, and "applets" incorporated into the SOFTWARE PRODUCT), the +accompanying printed materials, and any copies of the SOFTWARE PRODUCT are +owned by RELIC or its suppliers. All title and intellectual property rights +in and to the content which may be accessed through use of the SOFTWARE +PRODUCT is the property of the respective content owner and may be protected +by applicable copyright or other intellectual property laws and treaties. +This Agreement grants LICENSEE no rights to use such content. If this +SOFTWARE PRODUCT contains documentation, which is provided only in electronic +form, LICENSEE may print one copy of such electronic documentation. LICENSEE +may not copy the printed materials accompanying the SOFTWARE PRODUCT. + +5.2 COPY PROTECTION. Use of the SOFTWARE PRODUCT may require additional RELIC +software for use of the SOFTWARE PRODUCT which may employ copy protection +technology to prevent the unauthorized copying of the SOFTWARE PRODUCT and/or +additional RELIC software. It is illegal to make unauthorized copies of the +SOFTWARE PRODUCT and/or additional RELIC software or circumvent any copy protection technology employed by RELIC. + + +6. No Exclusivity + +Nothing in this Agreement nor the license of the SOFTWARE PRODUCT shall +constitute or imply any promise to or intention to make any purchase of +products or services by either party or its affiliated companies or any +commitment by either party or its affiliated companies with respect to the +present or future marketing of any product or service or any commitment to +enter into any other business relationship. + + +7. General + +7.1 Modification. No amendment or modification of this Agreement shall be +valid or binding on RELIC unless made in writing and signed on behalf of RELIC +by its respective duly authorized officers or representatives. RELIC may, +without notice to the LICENSEE, modify, alter or vary the terms of this +Agreement without the consent of the LICENSEE, however, such modification, +alteration or variance shall be displayed on the RELIC website located at +www.relic.com . + +7.2 Assignment. LICENSEE may not assign this Agreement without the prior +written consent of RELIC. Subject to the limitations set forth in this +Agreement, this Agreement will inure to the benefit of and be binding upon the +parties, their successors and permitted assigns. + +7.3 Separation of Components. The SOFTWARE PRODUCT is licensed as a single +product. Its component parts may not be separated for use license, +distribution or replacement by the LICENSEE. + +7.4 Severability. If any provision of this Agreement shall be held by a court +of competent jurisdiction to be illegal, invalid or unenforceable, the +remaining provisions will not be affected and will be deemed to be in full +force and effect. + +7.5 Governing Law, Jurisdiction and Venue. This Agreement shall be governed by +the laws of the Province of British Columbia. Each of the parties hereto +submits and attorns to the exclusive jurisdiction and venue in the provincial +and federal courts sitting in Vancouver, BC. + +7.6 Entire Agreement. This Agreement constitutes the entire understanding +between the parties hereto and supersedes all previous communications, +representations and understandings, oral or written, between the parties, with +respect to the subject matter of this Agreement. + +7.7 The LICENSEE agrees that RELIC would be irreparably injured by breach of +this Agreement by LICENSEE and that RELIC shall be entitled to equitable +relief, including injunctive relief and specific performance, in addition to +any and all monetary damages, in the event of any breach of the provisions of +this Agreement by the LICENSEE. From 3398528464ff03c023294ae33bc4c19f9cdaea0f Mon Sep 17 00:00:00 2001 From: Nolan Clark Date: Sun, 7 Dec 2014 08:55:41 -0600 Subject: [PATCH 02/48] Created recipe for ParaType 1.0 --- media-fonts/paratype/paratype-1.0.recipe | 39 ++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 media-fonts/paratype/paratype-1.0.recipe diff --git a/media-fonts/paratype/paratype-1.0.recipe b/media-fonts/paratype/paratype-1.0.recipe new file mode 100644 index 000000000..af546807b --- /dev/null +++ b/media-fonts/paratype/paratype-1.0.recipe @@ -0,0 +1,39 @@ +SUMMARY="ParaType font collection for languages of Russia" +DESCRIPTION="ParaType is a font collection designed for use with minority \ +languages of Russia." +HOMEPAGE="http://www.paratype.com/public" +SRC_URI_1="http://www.paratype.com/uni/public/PTSansOFL.zip" +SRC_URI_2="http://www.paratype.com/uni/public/PTSerifOFL.zip" +SRC_URI_3="http://www.paratype.com/uni/public/PTMonoOFL.zip" +CHECKSUM_SHA256_1="57448741b709c5f022127134ffd49506e3925242bd06f73a039e070765d1d637" +CHECKSUM_SHA256_2="e7a2a27ed0481d20973f0d3b589362d055269082e3fc4d96f81dacd58bad8dcc" +CHECKSUM_SHA256_3="e34e729f9509cf85acc52caadf68e96db90457b7164ba45719967d53e7a20dcc" +LICENSE="SIL Open Font License v1.1" +COPYRIGHT="2009 ParaType" +REVISION="1" +SOURCE_DIR="" + +ARCHITECTURES="any" +DISABLE_SOURCE_PACKAGE="yes" + +PROVIDES=" + paratype = $portVersion + " + +REQUIRES="" +BUILD_REQUIRES="" +BUILD_PREREQUIRES="coreutils" + +BUILD() +{ + true +} + +INSTALL() +{ + mkdir -p $fontsDir/paratype + cp *.ttf $fontsDir/paratype + cp ../sources-2/*.ttf $fontsDir/paratype + cp ../sources-3/*.ttf $fontsDir/paratype +} + From f6656913b148fc1159376ec38b194b9789119e0a Mon Sep 17 00:00:00 2001 From: Josef Gajdusek Date: Sun, 7 Dec 2014 18:17:48 +0100 Subject: [PATCH 03/48] Add recipe for VirtualBeLive --- .../virtualbelive-20140718.recipe | 46 +++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 haiku-apps/virtualbelive/virtualbelive-20140718.recipe diff --git a/haiku-apps/virtualbelive/virtualbelive-20140718.recipe b/haiku-apps/virtualbelive/virtualbelive-20140718.recipe new file mode 100644 index 000000000..485ac883d --- /dev/null +++ b/haiku-apps/virtualbelive/virtualbelive-20140718.recipe @@ -0,0 +1,46 @@ +SUMMARY="Video editing software." +DESCRIPTION=" +VirtualBeLive is a software for video editing. It supports basic transitions, \ +cutting and a few effects. +" +HOMEPAGE="https://github.com/HaikuArchives/VirtualBeLive" +SRC_URI="git+https://github.com/HaikuArchives/VirtualBeLive#23bea51" +REVISION="1" +LICENSE="Public Domain" +COPYRIGHT="Public Domain" + +ARCHITECTURES="x86_gcc2" + +PROVIDES=" + virtualbelive = $portVersion + app:VirtualBeLive = $portVersion + " + +REQUIRES=" + haiku >= $haikuVersion + " + +BUILD_PREREQUIRES=" + makefile_engine + cmd:mkdepend + cmd:make + cmd:g++ + cmd:xres + cmd:grep + " + +BUILD_REQUIRES=" + haiku_devel >= $haikuVersion + " + +BUILD() +{ + make $jobArgs OBJ_DIR=objects +} + +INSTALL() +{ + mkdir -p $appsDir + cp objects/VirtualBeLive $appsDir/VirtualBeLive + addAppDeskbarSymlink $appsDir/VirtualBeLive +} From abf6937f1a32f88fd7b14ad90238def12c44e3c7 Mon Sep 17 00:00:00 2001 From: Radu Toma Date: Sun, 7 Dec 2014 17:20:17 +0000 Subject: [PATCH 04/48] Updated recipe file for beezer, removing the patch. --- haiku-apps/beezer/beezer-0.99.hg.recipe | 8 +-- .../beezer/patches/beezer-0.99.hg.patch | 57 ------------------- 2 files changed, 2 insertions(+), 63 deletions(-) delete mode 100644 haiku-apps/beezer/patches/beezer-0.99.hg.patch diff --git a/haiku-apps/beezer/beezer-0.99.hg.recipe b/haiku-apps/beezer/beezer-0.99.hg.recipe index 599cc74c2..2ef33aedc 100644 --- a/haiku-apps/beezer/beezer-0.99.hg.recipe +++ b/haiku-apps/beezer/beezer-0.99.hg.recipe @@ -12,7 +12,7 @@ COPYRIGHT=" 2009 Ramshankar (aka Teknomancer) 2011-2012 Chris Roberts " -REVISION="2" +REVISION="3" ARCHITECTURES="x86_gcc2 x86 ?x86_64" PROVIDES=" @@ -29,15 +29,11 @@ BUILD_REQUIRES=" " BUILD_PREREQUIRES=" - cmd:cmake >= 2.8 + cmd:cmake cmd:gcc cmd:make " -PATCHES=" - beezer-0.99.hg.patch - " - BUILD() { cd Source diff --git a/haiku-apps/beezer/patches/beezer-0.99.hg.patch b/haiku-apps/beezer/patches/beezer-0.99.hg.patch deleted file mode 100644 index 638f8e7e2..000000000 --- a/haiku-apps/beezer/patches/beezer-0.99.hg.patch +++ /dev/null @@ -1,57 +0,0 @@ -From 3728835e4083c862c9b03dd5ffdb5941f34f9da5 Mon Sep 17 00:00:00 2001 -From: Luke -Date: Sun, 1 Dec 2013 12:22:29 +0000 -Subject: [PATCH] Remove references to B_COMMON_ - ---- - Source/Archiver/Archiver.cpp | 13 +------------ - Source/Beezer/FSUtils/FSUtils.cpp | 2 +- - 2 files changed, 2 insertions(+), 13 deletions(-) - -diff --git a/Source/Archiver/Archiver.cpp b/Source/Archiver/Archiver.cpp -index c272333..7b57313 100644 ---- a/Source/Archiver/Archiver.cpp -+++ b/Source/Archiver/Archiver.cpp -@@ -625,7 +625,7 @@ status_t Archiver::SetComment(char* commentStr, const char* tempDirPath) - bool Archiver::IsBinaryFound(char* filePath, const char* fileName) const - { - // Check if the given fileName exists in the given dir, if so copy the full path of fileName to filePath -- // Path priority /workers -> B_SYSTEM_BIN_DIRECTORY -> B_COMMON_BIN_DIRECTORY -+ // Path priority /workers -> B_SYSTEM_BIN_DIRECTORY - BPath binPath; - app_info appInfo; - be_app->GetAppInfo(&appInfo); -@@ -652,17 +652,6 @@ bool Archiver::IsBinaryFound(char* filePath, const char* fileName) const - } - } - -- if (find_directory(B_COMMON_BIN_DIRECTORY, &binPath) == B_OK) -- { -- binPath.Append(fileName); -- BEntry entry(binPath.Path(), true); -- if (entry.Exists()) -- { -- strcpy(filePath, binPath.Path()); -- return true; -- } -- } -- - // TODO full search of $PATH - - filePath = '\0'; -diff --git a/Source/Beezer/FSUtils/FSUtils.cpp b/Source/Beezer/FSUtils/FSUtils.cpp -index a651c58..8fbb01d 100644 ---- a/Source/Beezer/FSUtils/FSUtils.cpp -+++ b/Source/Beezer/FSUtils/FSUtils.cpp -@@ -177,7 +177,7 @@ BString CreateTempDirectory(const char* prefix, BDirectory** createdDir, bool cr - prefixStr << prefix << "_"; - - BPath tmpPath; -- find_directory(B_COMMON_TEMP_DIRECTORY, &tmpPath, true); -+ find_directory(B_SYSTEM_TEMP_DIRECTORY, &tmpPath, true); - BString tempDirName = tempnam(const_cast(tmpPath.Path()), const_cast(prefixStr.String())); - - // Further random the dir name (the below number is a prime) --- -1.8.3.4 - From 18927245f72d36699ef0600be0d6b3c5b863c6dd Mon Sep 17 00:00:00 2001 From: Nolan Clark Date: Sat, 6 Dec 2014 16:40:24 -0600 Subject: [PATCH 05/48] Created recipe for ahem-1.0 --- media-fonts/ahem/ahem-1.0.recipe | 46 ++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 media-fonts/ahem/ahem-1.0.recipe diff --git a/media-fonts/ahem/ahem-1.0.recipe b/media-fonts/ahem/ahem-1.0.recipe new file mode 100644 index 000000000..215eef282 --- /dev/null +++ b/media-fonts/ahem/ahem-1.0.recipe @@ -0,0 +1,46 @@ +SUMMARY="A font developed to help test writers develop predictable tests" +DESCRIPTION="The Ahem font was developed by Todd Fahrner to help test writers \ +develop predictable tests. The font's em square is exactly square. \ +Its ascent and descent is exactly the size of the em square. This \ +means that the font's extent is exactly the same as its line-height, \ +meaning that it can be exactly aligned with padding, borders, margins, \ +and so forth. +The font's alphabetic baseline is 0.2em above its bottom, and 0.8em \ +below its top. The font has an x-height of 0.8em. +The font has four glyphs: + \'X\' U+0058 A square exactly 1em in height and width. + \'p\' U+0070 A rectangle exactly 0.2em high, 1em wide, and aligned so \ + that its top is flush with the baseline. + \'É\' U+00C9 A rectangle exactly 0.8em high, 1em wide, and aligned so \ + that its bottom is flush with the baseline. + \' \' U+0020 A transparent space exactly 1em high and wide. +Most other US-ASCII characters in the font have the same glyph as X." +HOMEPAGE="http://github.com/Kozea/Ahem" +SRC_URI="https://github.com/Kozea/Ahem/archive/1.0.tar.gz" +CHECKSUM_SHA256="bae33954780217ea0e8e517f51e5a84c525ff22b39a508d50ab49e2d5cef7530" +LICENSE="Public Domain" +COPYRIGHT="Late-90s Todd Fahrner" +REVISION="1" +SOURCE_DIR="Ahem-1.0" + +ARCHITECTURES="any" +DISABLE_SOURCE_PACKAGE="yes" + +PROVIDES=" + ahem = $portVersion + " + +REQUIRES="" +BUILD_REQUIRES="" +BUILD_PREREQUIRES="coreutils" + +BUILD() +{ + true +} + +INSTALL() +{ + mkdir -p $fontsDir/ahem + cp Ahem.ttf README $fontsDir/ahem +} From f69810294a98c2141ed26a0392b24c13b8dd7933 Mon Sep 17 00:00:00 2001 From: Nolan Clark Date: Sun, 7 Dec 2014 10:36:52 -0600 Subject: [PATCH 06/48] Created recipe for Symbola 7.12 --- media-fonts/symbola/symbola-7.18.recipe | 30 +++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 media-fonts/symbola/symbola-7.18.recipe diff --git a/media-fonts/symbola/symbola-7.18.recipe b/media-fonts/symbola/symbola-7.18.recipe new file mode 100644 index 000000000..ffa56b1af --- /dev/null +++ b/media-fonts/symbola/symbola-7.18.recipe @@ -0,0 +1,30 @@ +SUMMARY="Unicode font for ancient scripts" +DESCRIPTION="Basic Latin, Greek, Cyrillic, and many Symbol blocks of The \ +Unicode Standard, Version 7.0" +HOMEPAGE="http://users.teilar.gr/~g1951d" +SRC_URI="http://users.teilar.gr/~g1951d/Symbola.zip" +CHECKSUM_SHA256="4e98df630002a95da59970916cab05a2229874066871f12f2ad0b547b9c260b6" +LICENSE="Public Domain" +COPYRIGHT="None" +REVISION="1" + +ARCHITECTURES="any" +DISABLE_SOURCE_PACKAGE="yes" + +PROVIDES="symbola = $portVersion" +REQUIRES="" +BUILD_REQUIRES="" +BUILD_PREREQUIRES="coreutils" + +SOURCE_DIR="" + +BUILD() +{ + true +} + +INSTALL() +{ + mkdir -p $fontsDir/ttfonts + cp *.ttf $fontsDir/ttfonts +} From f339f4302652699ccd7098bfe62f35564e1fcbfd Mon Sep 17 00:00:00 2001 From: Chirayu Desai Date: Sun, 7 Dec 2014 18:19:26 +0000 Subject: [PATCH 07/48] Add recipe for python package pathtools --- .../pathtools/python_pathtools-0.1.2.recipe | 56 +++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 dev-python/pathtools/python_pathtools-0.1.2.recipe diff --git a/dev-python/pathtools/python_pathtools-0.1.2.recipe b/dev-python/pathtools/python_pathtools-0.1.2.recipe new file mode 100644 index 000000000..744a02110 --- /dev/null +++ b/dev-python/pathtools/python_pathtools-0.1.2.recipe @@ -0,0 +1,56 @@ +SUMMARY="HTTP library for human beings" +DESCRIPTION=" + Requests is an Apache2 Licensed HTTP library, written in Python, \ + for human beings. +" +HOMEPAGE=" + http://python-requests.org/ + http://pypi.python.org/pypi/requests + " +SRC_URI="https://pypi.python.org/packages/source/p/pathtools/pathtools-0.1.2.tar.gz" +CHECKSUM_SHA256="7c35c5421a39bb82e58018febd90e3b6e5db34c5443aaaf742b3f33d4655f1c0" +LICENSE="MIT" +COPYRIGHT="2010 Yesudeep Mangalapilly" +REVISION="1" + +ARCHITECTURES="x86 x86_gcc2 x86_64" + +SOURCE_DIR="pathtools-$portVersion" + +PROVIDES=" + python_pathtools = $portVersion + " + +REQUIRES=" + haiku >= $haikuVersion + cmd:python + " + +BUILD_REQUIRES=" + haiku_devel >= $haikuVersion + python_setuptools + " + +BUILD_PREREQUIRES=" + cmd:python + cmd:gcc + " + +BUILD() +{ + $portPackageLinksDir/cmd~python/bin/python setup.py build +} + +INSTALL() +{ + # GENERIC: all python_setuptools-based installs need this + python=$portPackageLinksDir/cmd~python/bin/python + pythonVersion=$($python --version 2>&1 | sed 's/Python //' | head -c3) + installLocation=$prefix/lib/python$pythonVersion/vendor-packages/ + export PYTHONPATH=$installLocation:$PYTHONPATH + mkdir -p $installLocation + + $python setup.py install \ + --single-version-externally-managed \ + --root=/ --prefix=$prefix +} From dab97cdb95d391f27a17d2aae3b236f1cfa00e11 Mon Sep 17 00:00:00 2001 From: Jim Date: Sun, 7 Dec 2014 10:52:33 -0800 Subject: [PATCH 08/48] Add recipe for ReName! Tracker add-on --- haiku-apps/rename/rename-3.9.0.recipe | 50 +++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 haiku-apps/rename/rename-3.9.0.recipe diff --git a/haiku-apps/rename/rename-3.9.0.recipe b/haiku-apps/rename/rename-3.9.0.recipe new file mode 100644 index 000000000..73eece9e7 --- /dev/null +++ b/haiku-apps/rename/rename-3.9.0.recipe @@ -0,0 +1,50 @@ +SUMMARY="A Tracker add-on that provides you with a way to rename multiple files at once." +DESCRIPTION=" +ReName! is a Tracker Add-On for HAIKU users. It provides you with a way to\ +rename multiple files at once. ReName! allows you to add, remove or change file\ +extensions. It also allows you to change the capitialization of your files, and\ +do a search and replace on your file names. ReName! also allows you to prepend\ +or append text to multiple file names! +" +HOMEPAGE="https://github.com/bbjimmy/ReName_for_HAIKU" +SRC_URI="https://github.com/bbjimmy/ReName_for_HAIKU/archive/1.0.tar.gz" +CHECKSUM_SHA512="f13f3a022dab3305c35af0a149711e9e304b00082835115aea3ca8eafa7026cf15613e8f932466e16050dc8282fdcdc16ea3b0d4dc257db09442e16a69c939ae" +SOURCE_DIR="ReName_for_HAIKU-1.0" +REVISION="1" +LICENSE="Public Domain" +COPYRIGHT=" + FlipSide Software + " +ARCHITECTURES="x86_gcc2 x86 ?x86_64" + +PROVIDES=" + rename= $portVersion + app:rename = $portVersion + " +REQUIRES=" + haiku >= $haikuVersion + " +BUILD_PREREQUIRES=" + cmd:gcc + cmd:make + makefile_engine + " +BUILD_REQUIRES=" + haiku_devel >= $haikuVersion + " + +BUILD() +{ + cd source + make $jobArgs BUILDHOME=`finddir B_SYSTEM_DEVELOP_DIRECTORY` +} + +INSTALL() +{ + mkdir -p $addOnsDir/Tracker + cp source/ReName $addOnsDir/Tracker/ReName! + mkdir -p $documentationDir/ReName + cd documentation + cp -r * $documentationDir/ReName + +} From 5f23c2ec2168aab1e3248bf0f2aa4d4bb584ad78 Mon Sep 17 00:00:00 2001 From: Augustin Cavalier Date: Sun, 7 Dec 2014 14:43:40 -0500 Subject: [PATCH 09/48] Create recipe for ScriptureGuide. --- .../scriptureguide-0.9.0.recipe | 69 +++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 haiku-apps/scriptureguide/scriptureguide-0.9.0.recipe diff --git a/haiku-apps/scriptureguide/scriptureguide-0.9.0.recipe b/haiku-apps/scriptureguide/scriptureguide-0.9.0.recipe new file mode 100644 index 000000000..bc9b61c41 --- /dev/null +++ b/haiku-apps/scriptureguide/scriptureguide-0.9.0.recipe @@ -0,0 +1,69 @@ +SUMMARY="Bible study tool that supports a wide variety of Bibles and commentaries" +DESCRIPTION="ScriptureGuide is a Bible study tool. It supports all of the \ +features you'd expect: search, setting the font, taking notes, etc. Through \ +the accompanying ScriptureGuideManager app, you can download hundereds of free \ +copies of various Bibles, commentaries, and related books." +COPYRIGHT="2014 ScriptureGuide Team" +LICENSE="GNU GPL v2" +HOMEPAGE="https://github.com/HaikuArchives/ScriptureGuide" +SRC_URI="https://github.com/HaikuArchives/ScriptureGuide/archive/v0.9.0.tar.gz" +CHECKSUM_SHA256="63b36186eaf4be130f333e62fa0fb283dbff90149a14763e96c157d9950777b5" +SOURCE_DIR="ScriptureGuide-$portVersion" +REVISION="1" + +ARCHITECTURES="x86 ?x86_64" +if [ $effectiveTargetArchitecture != x86_gcc2 ]; then + # x86_gcc2 is fine as primary target architecture as long as we're building + # for a different secondary architecture. + ARCHITECTURES="$ARCHITECTURES x86_gcc2" +fi +SECONDARY_ARCHITECTURES="x86" + +PROVIDES=" + scriptureguide$secondaryArchSuffix = $portVersion + app:ScriptureGuide = $portVersion + app:ScriptureGuideManager = $portVersion + " + +REQUIRES=" + haiku$secondaryArchSuffix >= $haikuVersion + cmd:awk + cmd:wget + cmd:unzip + lib:libsword$secondaryArchSuffix + lib:libz$secondaryArchSuffix + icu$secondaryArchSuffix + " + +BUILD_REQUIRES=" + haiku${secondaryArchSuffix}_devel >= $haikuVersion + devel:libsword$secondaryArchSuffix + devel:libz$secondaryArchSuffix + icu${secondaryArchSuffix}_devel + " + +BUILD_PREREQUIRES=" + makefile_engine + cmd:gcc$secondaryArchSuffix + cmd:ld$secondaryArchSuffix + cmd:make + cmd:mkdepend + " + +BUILD() +{ + cd ScriptureGuide + make $jobArgs + cd ../ScriptureGuideManager + make $jobArgs +} + +INSTALL() +{ + mkdir -p $appsDir + cp -R App $appsDir + mv $appsDir/App $appsDir/ScriptureGuide + + addAppDeskbarSymlink $appsDir/ScriptureGuide/ScriptureGuide + addAppDeskbarSymlink $appsDir/ScriptureGuide/ScriptureGuideManager +} From 202040fb154ec9268e2e73d9e0037a2891295bf7 Mon Sep 17 00:00:00 2001 From: Chirayu Desai Date: Sun, 7 Dec 2014 19:49:17 +0000 Subject: [PATCH 10/48] Add recipe for python package argh --- dev-python/argh/python_argh-0.26.1.recipe | 55 +++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 dev-python/argh/python_argh-0.26.1.recipe diff --git a/dev-python/argh/python_argh-0.26.1.recipe b/dev-python/argh/python_argh-0.26.1.recipe new file mode 100644 index 000000000..7bde69c3b --- /dev/null +++ b/dev-python/argh/python_argh-0.26.1.recipe @@ -0,0 +1,55 @@ +SUMMARY="An unobtrusive argparse wrapper with natural syntax" +DESCRIPTION="Building a command-line interface? \ +Found yourself uttering "argh!" while struggling with the API of argparse? \ +Don't like the complexity but need the power? +Argh is a smart wrapper for argparse. Argparse is a very powerful tool; \ +Argh just makes it easy to use." +HOMEPAGE="https://pypi.python.org/pypi/argh" + +SRC_URI="https://pypi.python.org/packages/source/a/argh/argh-0.26.1.tar.gz" +CHECKSUM_SHA256="06a7442cb9130fb8806fe336000fcf20edf1f2f8ad205e7b62cec118505510db" +LICENSE="GNU LGPL v3" +COPYRIGHT="2010—2014 Andrey Mikhaylenko and contributors" +REVISION="1" + +ARCHITECTURES="x86 x86_gcc2 x86_64" + +SOURCE_DIR="argh-$portVersion" + +PROVIDES=" + python_argh = $portVersion + " + +REQUIRES=" + haiku >= $haikuVersion + cmd:python + " + +BUILD_REQUIRES=" + haiku_devel >= $haikuVersion + python_setuptools + " + +BUILD_PREREQUIRES=" + cmd:python + cmd:gcc + " + +BUILD() +{ + $portPackageLinksDir/cmd~python/bin/python setup.py build +} + +INSTALL() +{ + # GENERIC: all python_setuptools-based installs need this + python=$portPackageLinksDir/cmd~python/bin/python + pythonVersion=$($python --version 2>&1 | sed 's/Python //' | head -c3) + installLocation=$prefix/lib/python$pythonVersion/vendor-packages/ + export PYTHONPATH=$installLocation:$PYTHONPATH + mkdir -p $installLocation + + $python setup.py install \ + --single-version-externally-managed \ + --root=/ --prefix=$prefix +} From db3e615d60793101a0557b2cc1b982cfbc97ec6d Mon Sep 17 00:00:00 2001 From: Chirayu Desai Date: Sun, 7 Dec 2014 18:10:43 +0000 Subject: [PATCH 11/48] Add recipe for python package watchdog --- .../watchdog/python_watchdog-0.8.2.recipe | 58 +++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 dev-python/watchdog/python_watchdog-0.8.2.recipe diff --git a/dev-python/watchdog/python_watchdog-0.8.2.recipe b/dev-python/watchdog/python_watchdog-0.8.2.recipe new file mode 100644 index 000000000..3b9e47d3f --- /dev/null +++ b/dev-python/watchdog/python_watchdog-0.8.2.recipe @@ -0,0 +1,58 @@ +SUMMARY="Filesystem events monitoring" +DESCRIPTION="Python API and shell utilities to monitor file system events." +HOMEPAGE="https://pypi.python.org/pypi/watchdog" + +SRC_URI="https://pypi.python.org/packages/source/w/watchdog/watchdog-0.8.2.tar.gz" +CHECKSUM_SHA256="33a9ab3ce2e6b1aca4d2a50752231668d69bdba4ab096d9742195ccfbef1e023" +LICENSE="Apache v2" +COPYRIGHT=" + 2011 Yesudeep Mangalapilly + 2012 Google, Inc. + " +REVISION="1" + +ARCHITECTURES="x86 x86_gcc2 x86_64" + +SOURCE_DIR="watchdog-$portVersion" + +PROVIDES=" + python_watchdog = $portVersion + cmd:watchmedo + " + +REQUIRES=" + haiku >= $haikuVersion + cmd:python + python_argh + python_pathtools + python_pyyaml + " + +BUILD_REQUIRES=" + haiku_devel >= $haikuVersion + python_setuptools + " + +BUILD_PREREQUIRES=" + cmd:python + cmd:gcc + " + +BUILD() +{ + $portPackageLinksDir/cmd~python/bin/python setup.py build +} + +INSTALL() +{ + # GENERIC: all python_setuptools-based installs need this + python=$portPackageLinksDir/cmd~python/bin/python + pythonVersion=$($python --version 2>&1 | sed 's/Python //' | head -c3) + installLocation=$prefix/lib/python$pythonVersion/vendor-packages/ + export PYTHONPATH=$installLocation:$PYTHONPATH + mkdir -p $installLocation + + $python setup.py install \ + --single-version-externally-managed \ + --root=/ --prefix=$prefix +} From b50aeae0f9691f3448e38dd072e9ed4ff97cc7cd Mon Sep 17 00:00:00 2001 From: George White Date: Sat, 6 Dec 2014 09:30:33 +0000 Subject: [PATCH 12/48] Fix Scrittore recipe --- haiku-apps/scrittore/licenses/Scintilla | 20 +++++++++++++ haiku-apps/scrittore/scrittore-git.recipe | 36 +++++++++++++++++++++++ 2 files changed, 56 insertions(+) create mode 100644 haiku-apps/scrittore/licenses/Scintilla create mode 100644 haiku-apps/scrittore/scrittore-git.recipe diff --git a/haiku-apps/scrittore/licenses/Scintilla b/haiku-apps/scrittore/licenses/Scintilla new file mode 100644 index 000000000..cbe25b2fc --- /dev/null +++ b/haiku-apps/scrittore/licenses/Scintilla @@ -0,0 +1,20 @@ +License for Scintilla and SciTE + +Copyright 1998-2003 by Neil Hodgson + +All Rights Reserved + +Permission to use, copy, modify, and distribute this software and its +documentation for any purpose and without fee is hereby granted, +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in +supporting documentation. + +NEIL HODGSON DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS +SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY +AND FITNESS, IN NO EVENT SHALL NEIL HODGSON BE LIABLE FOR ANY +SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE +OR PERFORMANCE OF THIS SOFTWARE. \ No newline at end of file diff --git a/haiku-apps/scrittore/scrittore-git.recipe b/haiku-apps/scrittore/scrittore-git.recipe new file mode 100644 index 000000000..adb4634a7 --- /dev/null +++ b/haiku-apps/scrittore/scrittore-git.recipe @@ -0,0 +1,36 @@ +SUMMARY="A Scintilla-based text editor." +DESCRIPTION="Based on the popular framework for code highlighting, Scrittore provides a simplistic programmer's text editor." +REVISION="1" +LICENSE="Scintilla" +SRC_URI="git+https://github.com/HaikuArchives/Scrittore.git" +COPYRIGHT=" + 1998-2003 Scintilla authors. + 2011-2013 Haiku authors. + " + +HOMEPAGE="https://github.com/HaikuArchives/Scrittore" +PROVIDES=" + Scrittore + app:Scrittore + " + +ARCHITECTURES="x86 !x86_64 ?arm ?ppc" + +BUILD_PREREQUIRES=" + cmd:make + cmd:g++ + haiku_devel + " + +BUILD() +{ + cd scintilla/haiku + make +} + +INSTALL() +{ + mkdir -p $appsDir + cp bin/scintilla-haiku $appsDir/Scrittore + addAppDeskbarSymlink $appsDir/Scrittore +} From 7add47a1624a95009b5a5a5bb8ecd2a3b6462a8a Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Sun, 7 Dec 2014 21:05:01 +0100 Subject: [PATCH 13/48] libffi: latest version is broken on gcc2 * Needs C99 complex numbers support. * This is confusing GCI students for a week as haikuporter always tries (and fails) to update this. --- dev-libs/libffi/libffi-3.2.1.recipe | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dev-libs/libffi/libffi-3.2.1.recipe b/dev-libs/libffi/libffi-3.2.1.recipe index e5b624282..80d18f53f 100644 --- a/dev-libs/libffi/libffi-3.2.1.recipe +++ b/dev-libs/libffi/libffi-3.2.1.recipe @@ -6,8 +6,8 @@ HOMEPAGE="http://sourceware.org/libffi" LICENSE="MIT" REVISION="2" -ARCHITECTURES="x86_gcc2 x86 x86_64" -SECONDARY_ARCHITECTURES="x86_gcc2 x86" +ARCHITECTURES="!x86_gcc2 x86 x86_64" +SECONDARY_ARCHITECTURES="!x86_gcc2 x86" SRC_URI="ftp://sourceware.org/pub/libffi/libffi-$portVersion.tar.gz" CHECKSUM_SHA256="d06ebb8e1d9a22d19e38d63fdb83954253f39bedc5d46232a05645685722ca37" From 0110b908a18e6a87be9215c6d400ae45a9b556bb Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Sun, 7 Dec 2014 21:07:21 +0100 Subject: [PATCH 14/48] zip: depend on libz. There is no need for zip to reimplement libz when it is available (and it autodetects that) --- app-arch/zip/zip-3.0.recipe | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app-arch/zip/zip-3.0.recipe b/app-arch/zip/zip-3.0.recipe index ab36b1ce5..9680e4ed4 100644 --- a/app-arch/zip/zip-3.0.recipe +++ b/app-arch/zip/zip-3.0.recipe @@ -24,8 +24,10 @@ PROVIDES=" " REQUIRES=" haiku >= $haikuVersion + lib:libz " BUILD_REQUIRES=" + devel:libz " BUILD_PREREQUIRES=" haiku_devel >= $haikuVersion From af0f17d4e58292f6d34ddb51e6aca774b8b1e972 Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Sun, 7 Dec 2014 21:08:19 +0100 Subject: [PATCH 15/48] visualboyadvance: nasm doesn't need to be built for secondary arch. --- games-emulation/visualboyadvance/visualboyadvance-1.8.recipe | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/games-emulation/visualboyadvance/visualboyadvance-1.8.recipe b/games-emulation/visualboyadvance/visualboyadvance-1.8.recipe index 29173fec3..ffd5e7a50 100644 --- a/games-emulation/visualboyadvance/visualboyadvance-1.8.recipe +++ b/games-emulation/visualboyadvance/visualboyadvance-1.8.recipe @@ -34,7 +34,7 @@ BUILD_REQUIRES=" devel:libpng$secondaryArchSuffix " BUILD_PREREQUIRES=" - cmd:nasm$secondaryArchSuffix + cmd:nasm cmd:make cmd:gcc$secondaryArchSuffix cmd:ld$secondaryArchSuffix From f7ef39ac2f5839964e069297cb9dad96caa51ccd Mon Sep 17 00:00:00 2001 From: Yourself Date: Sun, 7 Dec 2014 21:57:58 +0000 Subject: [PATCH 16/48] Fix libidl recipe to build correctly on x86 --- dev-libs/libidl/libidl-0.6.8.recipe | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/dev-libs/libidl/libidl-0.6.8.recipe b/dev-libs/libidl/libidl-0.6.8.recipe index af0895bf4..d4fdc63d1 100644 --- a/dev-libs/libidl/libidl-0.6.8.recipe +++ b/dev-libs/libidl/libidl-0.6.8.recipe @@ -12,8 +12,13 @@ CHECKSUM_SHA256="50e8f7674815e42a6e8be32610838d9b7da91b3043784d2b69d17b79c7203e7 COPYRIGHT="1998-1999 Andrew T. Veliath" LICENSE="GNU LGPL v2" REVISION="1" -ARCHITECTURES="x86 ?x86_gcc2" -SECONDARY_ARCHITECTURES="x86 ?x86_gcc2" +ARCHITECTURES="x86" +if [ $effectiveTargetArchitecture != x86_gcc2 ]; then + ARCHITECTURES="x86_gcc2 $ARCHITECTURES" +else + ARCHITECTURES="!x86_gcc2 $ARCHITECTURES" +fi +SECONDARY_ARCHITECTURES="x86" PROVIDES=" libidl$secondaryArchSuffix = $portVersion From 344495df26dba7de8e4e9b660f1774d5bfba5e59 Mon Sep 17 00:00:00 2001 From: Yourself Date: Sun, 7 Dec 2014 22:16:35 +0000 Subject: [PATCH 17/48] Add missing $secondaryArchSuffix --- dev-libs/libidl/libidl-0.6.8.recipe | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dev-libs/libidl/libidl-0.6.8.recipe b/dev-libs/libidl/libidl-0.6.8.recipe index d4fdc63d1..e5c3ed859 100644 --- a/dev-libs/libidl/libidl-0.6.8.recipe +++ b/dev-libs/libidl/libidl-0.6.8.recipe @@ -28,7 +28,7 @@ PROVIDES=" REQUIRES=" haiku$secondaryArchSuffix >= $haikuVersion - lib:libglib + lib:libglib$secondaryArchSuffix " BUILD_REQUIRES=" From f1ac0bdfd658dd0a1857824bef2e8c0ce4da596a Mon Sep 17 00:00:00 2001 From: Yourself Date: Sun, 7 Dec 2014 22:19:09 +0000 Subject: [PATCH 18/48] Fix glib to build correctly on x86 --- dev-libs/glib/glib-1.2.10.recipe | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/dev-libs/glib/glib-1.2.10.recipe b/dev-libs/glib/glib-1.2.10.recipe index 2e34bc13b..d63a721d4 100644 --- a/dev-libs/glib/glib-1.2.10.recipe +++ b/dev-libs/glib/glib-1.2.10.recipe @@ -22,8 +22,13 @@ COPYRIGHT="1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald REVISION="1" -ARCHITECTURES="?x86_gcc2 x86" -SECONDARY_ARCHITECTURES="?x86_gcc2 x86" +ARCHITECTURES="x86" +if [ $effectiveTargetArchitecture != x86_gcc2 ]; then + ARCHITECTURES="x86_gcc2 $ARCHITECTURES" +else + ARCHITECTURES="!x86_gcc2 $ARCHITECTURES" +fi +SECONDARY_ARCHITECTURES="x86" PROVIDES=" glib$secondaryArchSuffix = $portVersion compat >= 1 From de9e437af75d5476998f4f0a40c0c8c50b7b4919 Mon Sep 17 00:00:00 2001 From: Alexander von Gluck IV Date: Mon, 8 Dec 2014 01:44:04 +0000 Subject: [PATCH 19/48] indent: Make proper 2.2.10 recipe from old bep --- dev-util/indent/indent-2.2.10.recipe | 78 ++++++++++++++++++++++++++++ dev-util/indent/indent-2.2.11.recipe | 39 -------------- 2 files changed, 78 insertions(+), 39 deletions(-) create mode 100644 dev-util/indent/indent-2.2.10.recipe delete mode 100644 dev-util/indent/indent-2.2.11.recipe diff --git a/dev-util/indent/indent-2.2.10.recipe b/dev-util/indent/indent-2.2.10.recipe new file mode 100644 index 000000000..8330b4660 --- /dev/null +++ b/dev-util/indent/indent-2.2.10.recipe @@ -0,0 +1,78 @@ +SUMMARY="Indent program source files" +DESCRIPTION="The indent program can be used to make code easier to read. + It can also convert from one style of writing C to another. indent + understands a substantial amount about the syntax of C, but it also + attempts to cope with incomplete and misformed syntax. + " +HOMEPAGE="https://www.gnu.org/software/indent/" +REVISION="2" +ARCHITECTURES="x86 x86_gcc2" +LICENSE="GNU GPL v3" +COPYRIGHT="Copyright (c) 1999, 2000 Carlo Wood. All rights reserved. + Copyright (c) 1994, 1996, 1997 Joseph Arceneaux. All rights reserved. + Copyright (c) 1992, 2002, 2008 Free Software Foundation, Inc. All rights reserved. + Copyright (c) 1980 The Regents of the University of California. + Copyright (c) 1976 Board of Trustees of the University of Illinois. All rights reserved. + Copyright (c) 1985 Sun Microsystems, Inc.1998-2000 The Santa Cruz Operation + " + +SRC_URI="http://mirror.keystealth.org/gnu/indent/indent-2.2.10.tar.gz" +CHECKSUM_SHA256="8a9b41be5bfcab5d8c1be74204b10ae78789fc3deabea0775fdced8677292639" + +ARCHITECTURES="x86 x86_64 arm ppc" + +PROVIDES=" + indent = $portVersion + cmd:indent = $portVersion + cmd:texinfo2man = $portVersion + " + +REQUIRES=" + haiku >= $haikuVersion + lib:libiconv$secondaryArchSuffix + lib:libintl$secondaryArchSuffix + " + +BUILD_REQUIRES=" + haiku${secondaryArchSuffix}_devel >= $haikuVersion + gettext$secondaryArchSuffix + " + +BUILD_PREREQUIRES=" + haiku_devel >= $haikuVersion + cmd:aclocal + cmd:autoconf + cmd:automake + cmd:autopoint + cmd:autoreconf + cmd:awk + cmd:gcc + cmd:ld + cmd:libtoolize + cmd:make + cmd:find + " + +BUILD() +{ + libtoolize --force --copy --install + ./bootstrap + runConfigure ./configure + make $jobArgs +} + +INSTALL() +{ + make install + + # Clean up improperly placed documentation + mkdir -p $docDir/html + mv $prefix/doc/indent/* $docDir/html/ + rm -rf $prefix/doc +} + +TEST() +{ + make test + make check +} diff --git a/dev-util/indent/indent-2.2.11.recipe b/dev-util/indent/indent-2.2.11.recipe deleted file mode 100644 index bcc2e7068..000000000 --- a/dev-util/indent/indent-2.2.11.recipe +++ /dev/null @@ -1,39 +0,0 @@ -DESCRIPTION="Indent program source files" -HOMEPAGE="http://indent.isidore-it.eu/beautify.html" -SRC_URI="http://indent.isidore-it.eu/indent-2.2.11.tar.gz" -REVISION="1" -STATUS_HAIKU="stable" -DEPEND="sys-devel/gettext >= 0.17 - net-misc/rsync >= 3.0.7 - app-text/texi2html >= 1.82" -CHECKSUM_MD5="98beafca62472805a3739d3867d5d70f" -BUILD() -{ - cd indent-2.2.11 - libtoolize --force --copy --install - ./bootstrap - ./configure --prefix=`finddir B_COMMON_DIRECTORY` - make -} - -INSTALL() -{ - cd indent-2.2.11 - make install DESTDIR=${DESTDIR} -} - -TEST() -{ - cd indent-2.2.11 -# make test -# make check -} - -LICENSE="BSD (3-clause)" -COPYRIGHT="1999-2000 Carlo Wood. All rights reserved - 1994, 1996-1997 Joseph Arceneaux All rights reserved. - 1992, 2002, 2008 Free Software Foundation, Inc. All rights reserved. - 1985 Sun Microsystems, Inc. - 1980 The Regents of the University of California. - 1976 Board of Trustees of the University of Illinois. All rights reserved. - " From ff36f5eb631dbae321ff8e88f7c26ec370aeda28 Mon Sep 17 00:00:00 2001 From: Jim Saxton Date: Mon, 8 Dec 2014 05:18:50 +0000 Subject: [PATCH 20/48] rename-3.9.0.recipe edited online with Bitbucket add date --- haiku-apps/rename/rename-3.9.0.recipe | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/haiku-apps/rename/rename-3.9.0.recipe b/haiku-apps/rename/rename-3.9.0.recipe index 73eece9e7..0ad131b77 100644 --- a/haiku-apps/rename/rename-3.9.0.recipe +++ b/haiku-apps/rename/rename-3.9.0.recipe @@ -13,7 +13,7 @@ SOURCE_DIR="ReName_for_HAIKU-1.0" REVISION="1" LICENSE="Public Domain" COPYRIGHT=" - FlipSide Software + 2000 FlipSide Software " ARCHITECTURES="x86_gcc2 x86 ?x86_64" From 6bcec41dba0ccf7db9e4508c36c6d03b5cb19aeb Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Mon, 8 Dec 2014 08:52:08 +0100 Subject: [PATCH 21/48] VL-Gothic: update to current version. --- .../vl_gothic/vl_gothic-20141206.recipe | 43 +++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 media-fonts/vl_gothic/vl_gothic-20141206.recipe diff --git a/media-fonts/vl_gothic/vl_gothic-20141206.recipe b/media-fonts/vl_gothic/vl_gothic-20141206.recipe new file mode 100644 index 000000000..08ba3b550 --- /dev/null +++ b/media-fonts/vl_gothic/vl_gothic-20141206.recipe @@ -0,0 +1,43 @@ +SUMMARY="A modern gothic font including Japanese, as well as Latin and Greek glyphs" +DESCRIPTION="This package includes the VL Gothic (monospace) and VL PGothic \ +(proportional) fonts. Originally developed for the Vine Linux project, they \ +include glyphs suitable for rendering Japanese text, as well as Latin and Greek \ +alphabets. +The fonts are based on the M+ fonts and the Sazanami fonts." +HOMEPAGE="http://vlgothic.dicey.org/" +SRC_URI="http://sourceforge.jp/frs/redir.php?m=jaist&f=%2Fvlgothic%2F62375%2FVLGothic-20141206.tar.xz" +CHECKSUM_SHA256="982040db2f9cb73d7c6ab7d9d163f2ed46d1180f330c9ba2fae303649bf8102d" +LICENSE="BSD (3-clause) + M+ Fonts Project + Sazanami Gothic Font +" +COPYRIGHT="1990-2003 Wada Laboratory, the University of Tokyo. +2003-2004 Electronic Font Open Laboratory (/efont/). +2002-2014 M+ FONTS PROJECT +2006-2014 Daisuke SUZUKI . +2006-2014 Project Vine . +" +REVISION="1" + +ARCHITECTURES="any" +DISABLE_SOURCE_PACKAGE=yes + +PROVIDES="vl_gothic = $portVersion" +REQUIRES="" +BUILD_REQUIRES="" +BUILD_PREREQUIRES="coreutils" + +SOURCE_DIR="VLGothic" + +BUILD() +{ + true +} + +INSTALL() +{ + FONTDIR=$fontsDir/ttfonts/ + mkdir -p ${FONTDIR} + cp VL-Gothic-Regular.ttf ${FONTDIR} + cp VL-PGothic-Regular.ttf ${FONTDIR} +} From 30fd75c0d885388c76fe2b2450325987669170bb Mon Sep 17 00:00:00 2001 From: Theodore Kokkoris Date: Mon, 8 Dec 2014 12:39:39 +0000 Subject: [PATCH 22/48] Mark libidl as working on x86_gcc2 --- dev-libs/libidl/libidl-0.6.8.recipe | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/dev-libs/libidl/libidl-0.6.8.recipe b/dev-libs/libidl/libidl-0.6.8.recipe index e5c3ed859..aa7268aa0 100644 --- a/dev-libs/libidl/libidl-0.6.8.recipe +++ b/dev-libs/libidl/libidl-0.6.8.recipe @@ -12,13 +12,8 @@ CHECKSUM_SHA256="50e8f7674815e42a6e8be32610838d9b7da91b3043784d2b69d17b79c7203e7 COPYRIGHT="1998-1999 Andrew T. Veliath" LICENSE="GNU LGPL v2" REVISION="1" -ARCHITECTURES="x86" -if [ $effectiveTargetArchitecture != x86_gcc2 ]; then - ARCHITECTURES="x86_gcc2 $ARCHITECTURES" -else - ARCHITECTURES="!x86_gcc2 $ARCHITECTURES" -fi -SECONDARY_ARCHITECTURES="x86" +ARCHITECTURES="x86_gcc2 x86" +SECONDARY_ARCHITECTURES="x86_gcc2 x86" PROVIDES=" libidl$secondaryArchSuffix = $portVersion From d3b61d4ee024c481effcf2135599841baa2289b8 Mon Sep 17 00:00:00 2001 From: Theodore Kokkoris Date: Mon, 8 Dec 2014 12:43:12 +0000 Subject: [PATCH 23/48] Mark glib as working on x86_gcc2 --- dev-libs/glib/glib-1.2.10.recipe | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/dev-libs/glib/glib-1.2.10.recipe b/dev-libs/glib/glib-1.2.10.recipe index d63a721d4..92be8b050 100644 --- a/dev-libs/glib/glib-1.2.10.recipe +++ b/dev-libs/glib/glib-1.2.10.recipe @@ -22,13 +22,8 @@ COPYRIGHT="1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald REVISION="1" -ARCHITECTURES="x86" -if [ $effectiveTargetArchitecture != x86_gcc2 ]; then - ARCHITECTURES="x86_gcc2 $ARCHITECTURES" -else - ARCHITECTURES="!x86_gcc2 $ARCHITECTURES" -fi -SECONDARY_ARCHITECTURES="x86" +ARCHITECTURES="x86_gcc2 x86" +SECONDARY_ARCHITECTURES="x86_gcc2 x86" PROVIDES=" glib$secondaryArchSuffix = $portVersion compat >= 1 From 67f51d9ce77a38ace5b672a68e93d316c4d2c6b8 Mon Sep 17 00:00:00 2001 From: Augustin Cavalier Date: Mon, 8 Dec 2014 09:42:01 -0500 Subject: [PATCH 24/48] ScriptureGuide: fix character limit. --- haiku-apps/scriptureguide/scriptureguide-0.9.0.recipe | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/haiku-apps/scriptureguide/scriptureguide-0.9.0.recipe b/haiku-apps/scriptureguide/scriptureguide-0.9.0.recipe index bc9b61c41..c059d28ec 100644 --- a/haiku-apps/scriptureguide/scriptureguide-0.9.0.recipe +++ b/haiku-apps/scriptureguide/scriptureguide-0.9.0.recipe @@ -1,4 +1,4 @@ -SUMMARY="Bible study tool that supports a wide variety of Bibles and commentaries" +SUMMARY="Bible study tool that supports a wide variety of Bibles" DESCRIPTION="ScriptureGuide is a Bible study tool. It supports all of the \ features you'd expect: search, setting the font, taking notes, etc. Through \ the accompanying ScriptureGuideManager app, you can download hundereds of free \ @@ -9,7 +9,7 @@ HOMEPAGE="https://github.com/HaikuArchives/ScriptureGuide" SRC_URI="https://github.com/HaikuArchives/ScriptureGuide/archive/v0.9.0.tar.gz" CHECKSUM_SHA256="63b36186eaf4be130f333e62fa0fb283dbff90149a14763e96c157d9950777b5" SOURCE_DIR="ScriptureGuide-$portVersion" -REVISION="1" +REVISION="2" ARCHITECTURES="x86 ?x86_64" if [ $effectiveTargetArchitecture != x86_gcc2 ]; then From 62eef8856f78637b49b0e0d10ae164261e704869 Mon Sep 17 00:00:00 2001 From: Josef Gajdusek Date: Mon, 8 Dec 2014 12:06:14 +0100 Subject: [PATCH 25/48] Add recipe for LibSVM --- sci-libs/libsvm/libsvm-v320.recipe | 97 ++++++++++++++++++++++++++++++ 1 file changed, 97 insertions(+) create mode 100644 sci-libs/libsvm/libsvm-v320.recipe diff --git a/sci-libs/libsvm/libsvm-v320.recipe b/sci-libs/libsvm/libsvm-v320.recipe new file mode 100644 index 000000000..8fa9e9b65 --- /dev/null +++ b/sci-libs/libsvm/libsvm-v320.recipe @@ -0,0 +1,97 @@ +SUMMARY="Library for Support Vector Machines" +DESCRIPTION=" +Libsvm is a simple, easy-to-use, and efficient software for SVM \ +classification and regression. It solves C-SVM classification, nu-SVM \ +classification, one-class-SVM, epsilon-SVM regression, and nu-SVM \ +regression. It also provides an automatic model selection tool for \ +C-SVM classification." +HOMEPAGE="http://www.csie.ntu.edu.tw/~cjlin/libsvm/" +SRC_URI="git+https://github.com/cjlin1/libsvm#8f3d96e" +REVISION="1" +LICENSE="BSD (3-clause)" +COPYRIGHT="2000-2014 Chih-Chung Chang and Chih-Jen Lin" + +ARCHITECTURES="x86_gcc2 x86 x86_64" + +PROVIDES=" + libsvm = $portVersion + lib:libsvm + " + +REQUIRES=" + haiku >= $haikuVersion + lib:libstdc++ + " + +BUILD_PREREQUIRES=" + haiku >= $haikuVersion + cmd:make + cmd:gcc + cmd:g++ + cmd:sed + " + +BUILD_REQUIRES=" + haiku_devel + " + +PATCH() +{ + sed -e 's/-lm//g' -i Makefile +} + +BUILD() +{ + make lib $jobArgs + make $jobArgs +} + +INSTALL() +{ + mkdir -p $binDir + mkdir -p $libDir + mkdir -p $includeDir + + cp svm-train $binDir/svm-train + cp svm-predict $binDir/svm-predict + cp svm-scale $binDir/svm-scale + cp tools/checkdata.py $binDir/svm-checkdata + cp tools/subset.py $binDir/svm-subset + cp tools/easy.py $binDir/svm-easy + cp tools/grid.py $binDir/svm-grid + packageEntries tools $binDir + + cp libsvm.so.2 $libDir + cp svm.h $includeDir + prepareInstalledDevelLibs libsvm + packageEntries devel $developDir +} + +# ----- devel package ------------------------------------------------------- + +PROVIDES_devel=" + libsvm_devel = $portVersion + devel:libsvm + " + +REQUIRES_devel=" + libsvm == $portVersion base + " +# ----- tools package ------------------------------------------------------- + +PROVIDES_tools=" + libsvm_tools = $portVersion + cmd:svm_train + cmd:svm_predict + cmd:svm_scale + cmd:svm_checkdata + cmd:svm_subset + cmd:svm_easy + cmd:svm_grid + " + +REQUIRES_tools=" + haiku >= $haikuVersion + lib:libstdc++ + cmd:python + " From 5ff517360f20e2efb4a8043774f3c1d63464e691 Mon Sep 17 00:00:00 2001 From: Chirayu Desai Date: Sun, 7 Dec 2014 10:37:03 +0000 Subject: [PATCH 26/48] Add recipe for python package urllib3 --- .../urllib3/python_urllib3-1.9.1.recipe | 64 +++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 dev-python/urllib3/python_urllib3-1.9.1.recipe diff --git a/dev-python/urllib3/python_urllib3-1.9.1.recipe b/dev-python/urllib3/python_urllib3-1.9.1.recipe new file mode 100644 index 000000000..c2542de60 --- /dev/null +++ b/dev-python/urllib3/python_urllib3-1.9.1.recipe @@ -0,0 +1,64 @@ +SUMMARY="HTTP library with thread-safe connection pooling, file post, and more." +DESCRIPTION=" +- Re-use the same socket connection for multiple requests + (HTTPConnectionPool and HTTPSConnectionPool) + (with optional client-side certificate verification). +- File posting (encode_multipart_formdata). +- Built-in redirection and retries (optional). +- Supports gzip and deflate decoding. +- Thread-safe and sanity-safe. +- Works with AppEngine, gevent, and eventlib. +- Tested on Python 2.6+, Python 3.2+, and PyPy, with 100% unit test coverage. +- Small and easy to understand codebase perfect for extending and building upon. + For a more comprehensive solution, have a look at \ + Requests which is also powered by urllib3 +" +HOMEPAGE=" + http://urllib3.readthedocs.org/ + https://pypi.python.org/pypi/urllib3 + " +SRC_URI="https://github.com/shazow/urllib3/archive/1.9.1.tar.gz" +CHECKSUM_SHA256="baf4dbc6d78f4a7bb28a44d3772cd8f3b24df5282f5cb72f3d85106aa06cf2a3" +LICENSE="MIT" +COPYRIGHT="2008-2014 Andrey Petrov and contributors" +REVISION="1" + +ARCHITECTURES="x86 x86_gcc2 x86_64" + +SOURCE_DIR="urllib3-$portVersion" + +PROVIDES=" + python_urllib3 = $portVersion + " + +REQUIRES=" + haiku >= $haikuVersion + cmd:python + " + +BUILD_REQUIRES=" + haiku_devel >= $haikuVersion + " + +BUILD_PREREQUIRES=" + cmd:python + cmd:gcc + " + +BUILD() +{ + $portPackageLinksDir/cmd~python/bin/python setup.py build +} + +INSTALL() +{ + # GENERIC: all python_setuptools-based installs need this + python=$portPackageLinksDir/cmd~python/bin/python + pythonVersion=$($python --version 2>&1 | sed 's/Python //' | head -c3) + installLocation=$prefix/lib/python$pythonVersion/vendor-packages/ + export PYTHONPATH=$installLocation:$PYTHONPATH + mkdir -p $installLocation + + $python setup.py install \ + --prefix=$prefix +} From bc14024c7b492ca4864cd9a54fbd5acc3df54aac Mon Sep 17 00:00:00 2001 From: Chirayu Desai Date: Mon, 8 Dec 2014 17:10:23 +0000 Subject: [PATCH 27/48] Add recipe for python package pyyaml --- dev-python/pyyaml/python_pyyaml-3.11.recipe | 65 +++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 dev-python/pyyaml/python_pyyaml-3.11.recipe diff --git a/dev-python/pyyaml/python_pyyaml-3.11.recipe b/dev-python/pyyaml/python_pyyaml-3.11.recipe new file mode 100644 index 000000000..a740e1018 --- /dev/null +++ b/dev-python/pyyaml/python_pyyaml-3.11.recipe @@ -0,0 +1,65 @@ +SUMMARY="YAML parser and emitter for Python" +DESCRIPTION=" +YAML is a data serialization format designed for human readability \ +and interaction with scripting languages. \ +PyYAML is a YAML parser and emitter for Python. + +PyYAML features a complete YAML 1.1 parser, Unicode support, \ +pickle support, capable extension API, and sensible error messages. \ +PyYAML supports standard YAML tags and \ +provides Python-specific tags that allow to represent an arbitrary Python object. + +PyYAML is applicable for a broad range of tasks from \ +complex configuration files to object serialization and persistance. +" +HOMEPAGE=" + http://pyyaml.org/ + http://pypi.python.org/pypi/PyYAML + " +SRC_URI="https://pypi.python.org/packages/source/P/PyYAML/PyYAML-3.11.tar.gz" +CHECKSUM_SHA256="c36c938a872e5ff494938b33b14aaa156cb439ec67548fcab3535bb78b0846e8" +LICENSE="MIT" +COPYRIGHT="2006 Kirill Simonov" +REVISION="1" + +ARCHITECTURES="x86 x86_gcc2 x86_64" + +SOURCE_DIR="PyYAML-$portVersion" + +PROVIDES=" + python_pyyaml = $portVersion + " + +REQUIRES=" + haiku >= $haikuVersion + cmd:python + " + +BUILD_REQUIRES=" + haiku_devel >= $haikuVersion + cmd:sed + python_setuptools + " + +BUILD_PREREQUIRES=" + cmd:python + cmd:gcc + " + +BUILD() +{ + $portPackageLinksDir/cmd~python/bin/python setup.py build +} + +INSTALL() +{ + # GENERIC: all python_setuptools-based installs need this + python=$portPackageLinksDir/cmd~python/bin/python + pythonVersion=$($python --version 2>&1 | sed 's/Python //' | head -c3) + installLocation=$prefix/lib/python$pythonVersion/vendor-packages/ + export PYTHONPATH=$installLocation:$PYTHONPATH + mkdir -p $installLocation + + $python setup.py install \ + --prefix=$prefix +} From a1687f73f74ec413d25a31ae51d8cf0bbad70591 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fran=C3=A7ois=20Revol?= Date: Mon, 8 Dec 2014 20:20:43 +0100 Subject: [PATCH 28/48] python_pyyaml: Add TODO about libyaml optional dependency --- dev-python/pyyaml/python_pyyaml-3.11.recipe | 1 + 1 file changed, 1 insertion(+) diff --git a/dev-python/pyyaml/python_pyyaml-3.11.recipe b/dev-python/pyyaml/python_pyyaml-3.11.recipe index a740e1018..484baa4ee 100644 --- a/dev-python/pyyaml/python_pyyaml-3.11.recipe +++ b/dev-python/pyyaml/python_pyyaml-3.11.recipe @@ -35,6 +35,7 @@ REQUIRES=" cmd:python " +#TODO: eventually depend on http://pyyaml.org/wiki/LibYAML BUILD_REQUIRES=" haiku_devel >= $haikuVersion cmd:sed From da63812c83b7f3d26cf0588bfe8a5c5ff99b3618 Mon Sep 17 00:00:00 2001 From: Vale Tolpegin Date: Mon, 8 Dec 2014 20:08:38 +0000 Subject: [PATCH 29/48] Updated to new format for GCI --- haiku-apps/rez/rez-108.recipe | 40 +++++++++++++++++++++++------------ 1 file changed, 27 insertions(+), 13 deletions(-) diff --git a/haiku-apps/rez/rez-108.recipe b/haiku-apps/rez/rez-108.recipe index d4d1ce2c4..205aa265b 100644 --- a/haiku-apps/rez/rez-108.recipe +++ b/haiku-apps/rez/rez-108.recipe @@ -1,24 +1,38 @@ -DESCRIPTION="rez" -HOMEPAGE="http://dev.osdrawer.net/projects/sum-it" -SRC_URI="svn+http://svn.osdrawer.net/sum-it/rez#108" +DESCRIPTION="Rez is a resource compiler similar to rc. Its main use is compiling the Sum-it spreadsheet. +New applications should consider using rc instead, but Rez may still be useful to compile some old apps from the BeOS days" +SUMMARY="The Rez resource compiler" +HOMEPAGE="https://github.com/DarkmatterVale/OpenSumIt" +SRC_URI="https://github.com/DarkmatterVale/OpenSumIt/archive/v1.1.1.tar.gz" +SOURCE_DIR="OpenSumIt-1.1.1" REVISION="1" -STATUS_HAIKU="stable" -DEPEND="" -#CHECKSUM_MD5="" +BUILD_REQUIRES=" + haiku${secondaryArchSuffix}_devel >= $haikuVersion + " +BUILD_PREREQUIRES=" + haiku >= $haikuVersion + cmd:make + cmd:flex + cmd:bison + cmd:cc + " +CHECKSUM_SHA256="" +ARCHITECTURES="!x86 x86_gcc2" +PROVIDES=" + rez = $portVersion + " BUILD() { - cd rez-108 + cd rez make } INSTALL() { - cd rez-108 - BIN_DIR=`finddir B_COMMON_BIN_DIRECTORY` - mkdir -p ${DESTDIR}${BIN_DIR} - cp rez ${DESTDIR}${BIN_DIR}/rez + mkdir -p $binDir + cp rez/rez $binDir } -#LICENSE="" -#COPYRIGHT="" +LICENSE="BSD (4-clause)" +COPYRIGHT="1996-1998, 2000 Hekkelman Programmatuur B.V. All rights reserved. + 1999-2000 Tim Vernum. All rights reserved." \ No newline at end of file From f8f1eaf9d4ddf1f5fd26e2519b80b5b4f8b64e7b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fran=C3=A7ois=20Revol?= Date: Mon, 8 Dec 2014 21:42:51 +0100 Subject: [PATCH 30/48] watchdog: rename recipe from python_watchdog --- .../{python_watchdog-0.8.2.recipe => watchdog-0.8.2.recipe} | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename dev-python/watchdog/{python_watchdog-0.8.2.recipe => watchdog-0.8.2.recipe} (97%) diff --git a/dev-python/watchdog/python_watchdog-0.8.2.recipe b/dev-python/watchdog/watchdog-0.8.2.recipe similarity index 97% rename from dev-python/watchdog/python_watchdog-0.8.2.recipe rename to dev-python/watchdog/watchdog-0.8.2.recipe index 3b9e47d3f..71bf25565 100644 --- a/dev-python/watchdog/python_watchdog-0.8.2.recipe +++ b/dev-python/watchdog/watchdog-0.8.2.recipe @@ -16,7 +16,7 @@ ARCHITECTURES="x86 x86_gcc2 x86_64" SOURCE_DIR="watchdog-$portVersion" PROVIDES=" - python_watchdog = $portVersion + watchdog = $portVersion cmd:watchmedo " From c776a6713b5430f8c8c1af419e23f887c416c343 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fran=C3=A7ois=20Revol?= Date: Mon, 8 Dec 2014 21:45:23 +0100 Subject: [PATCH 31/48] pathtools: rename recipe from python_pathtools --- .../{python_pathtools-0.1.2.recipe => pathtools-0.1.2.recipe} | 2 +- dev-python/watchdog/watchdog-0.8.2.recipe | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) rename dev-python/pathtools/{python_pathtools-0.1.2.recipe => pathtools-0.1.2.recipe} (97%) diff --git a/dev-python/pathtools/python_pathtools-0.1.2.recipe b/dev-python/pathtools/pathtools-0.1.2.recipe similarity index 97% rename from dev-python/pathtools/python_pathtools-0.1.2.recipe rename to dev-python/pathtools/pathtools-0.1.2.recipe index 744a02110..0cda667d2 100644 --- a/dev-python/pathtools/python_pathtools-0.1.2.recipe +++ b/dev-python/pathtools/pathtools-0.1.2.recipe @@ -18,7 +18,7 @@ ARCHITECTURES="x86 x86_gcc2 x86_64" SOURCE_DIR="pathtools-$portVersion" PROVIDES=" - python_pathtools = $portVersion + pathtools = $portVersion " REQUIRES=" diff --git a/dev-python/watchdog/watchdog-0.8.2.recipe b/dev-python/watchdog/watchdog-0.8.2.recipe index 71bf25565..67170ceb5 100644 --- a/dev-python/watchdog/watchdog-0.8.2.recipe +++ b/dev-python/watchdog/watchdog-0.8.2.recipe @@ -24,7 +24,7 @@ REQUIRES=" haiku >= $haikuVersion cmd:python python_argh - python_pathtools + pathtools python_pyyaml " From 6e7d2bfcb8902da5626f889fe059cb99e5f6fcd4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fran=C3=A7ois=20Revol?= Date: Mon, 8 Dec 2014 21:47:08 +0100 Subject: [PATCH 32/48] argh: rename recipe from python_argh --- .../argh/{python_argh-0.26.1.recipe => argh-0.26.1.recipe} | 2 +- dev-python/watchdog/watchdog-0.8.2.recipe | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) rename dev-python/argh/{python_argh-0.26.1.recipe => argh-0.26.1.recipe} (98%) diff --git a/dev-python/argh/python_argh-0.26.1.recipe b/dev-python/argh/argh-0.26.1.recipe similarity index 98% rename from dev-python/argh/python_argh-0.26.1.recipe rename to dev-python/argh/argh-0.26.1.recipe index 7bde69c3b..954eabb67 100644 --- a/dev-python/argh/python_argh-0.26.1.recipe +++ b/dev-python/argh/argh-0.26.1.recipe @@ -17,7 +17,7 @@ ARCHITECTURES="x86 x86_gcc2 x86_64" SOURCE_DIR="argh-$portVersion" PROVIDES=" - python_argh = $portVersion + argh = $portVersion " REQUIRES=" diff --git a/dev-python/watchdog/watchdog-0.8.2.recipe b/dev-python/watchdog/watchdog-0.8.2.recipe index 67170ceb5..bfb07b90c 100644 --- a/dev-python/watchdog/watchdog-0.8.2.recipe +++ b/dev-python/watchdog/watchdog-0.8.2.recipe @@ -23,7 +23,7 @@ PROVIDES=" REQUIRES=" haiku >= $haikuVersion cmd:python - python_argh + argh pathtools python_pyyaml " From f3f31d07db79595459cf33dc46144e0a1eee9b69 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fran=C3=A7ois=20Revol?= Date: Mon, 8 Dec 2014 21:48:51 +0100 Subject: [PATCH 33/48] pyyaml: rename recipe from python_pyyaml --- .../pyyaml/{python_pyyaml-3.11.recipe => pyyaml-3.11.recipe} | 2 +- dev-python/watchdog/watchdog-0.8.2.recipe | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) rename dev-python/pyyaml/{python_pyyaml-3.11.recipe => pyyaml-3.11.recipe} (98%) diff --git a/dev-python/pyyaml/python_pyyaml-3.11.recipe b/dev-python/pyyaml/pyyaml-3.11.recipe similarity index 98% rename from dev-python/pyyaml/python_pyyaml-3.11.recipe rename to dev-python/pyyaml/pyyaml-3.11.recipe index 484baa4ee..19ad24e4c 100644 --- a/dev-python/pyyaml/python_pyyaml-3.11.recipe +++ b/dev-python/pyyaml/pyyaml-3.11.recipe @@ -27,7 +27,7 @@ ARCHITECTURES="x86 x86_gcc2 x86_64" SOURCE_DIR="PyYAML-$portVersion" PROVIDES=" - python_pyyaml = $portVersion + pyyaml = $portVersion " REQUIRES=" diff --git a/dev-python/watchdog/watchdog-0.8.2.recipe b/dev-python/watchdog/watchdog-0.8.2.recipe index bfb07b90c..bf2ef3f52 100644 --- a/dev-python/watchdog/watchdog-0.8.2.recipe +++ b/dev-python/watchdog/watchdog-0.8.2.recipe @@ -25,7 +25,7 @@ REQUIRES=" cmd:python argh pathtools - python_pyyaml + pyyaml " BUILD_REQUIRES=" From 7adcee439ac9b333884f181abea08320f51d7fb7 Mon Sep 17 00:00:00 2001 From: Vale Tolpegin Date: Mon, 8 Dec 2014 21:55:09 +0000 Subject: [PATCH 34/48] Updated URLs --- haiku-apps/rez/rez-108.recipe | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/haiku-apps/rez/rez-108.recipe b/haiku-apps/rez/rez-108.recipe index 205aa265b..be9e7cf6c 100644 --- a/haiku-apps/rez/rez-108.recipe +++ b/haiku-apps/rez/rez-108.recipe @@ -1,8 +1,8 @@ DESCRIPTION="Rez is a resource compiler similar to rc. Its main use is compiling the Sum-it spreadsheet. New applications should consider using rc instead, but Rez may still be useful to compile some old apps from the BeOS days" SUMMARY="The Rez resource compiler" -HOMEPAGE="https://github.com/DarkmatterVale/OpenSumIt" -SRC_URI="https://github.com/DarkmatterVale/OpenSumIt/archive/v1.1.1.tar.gz" +HOMEPAGE="https://github.com/HaikuArchives/Rez/releases/tag/v1.1.1" +SRC_URI="https://github.com/HaikuArchives/Rez/releases/tag/v1.1.1.tar.gz" SOURCE_DIR="OpenSumIt-1.1.1" REVISION="1" BUILD_REQUIRES=" From db95a2e4d0b4bf12068d4c4a978d6c6df8660337 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fran=C3=A7ois=20Revol?= Date: Mon, 8 Dec 2014 23:06:11 +0100 Subject: [PATCH 35/48] antiword: fix data search path --- app-text/antiword/patches/antiword-0.37.patch | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app-text/antiword/patches/antiword-0.37.patch b/app-text/antiword/patches/antiword-0.37.patch index 117c4e06a..52efc88a0 100644 --- a/app-text/antiword/patches/antiword-0.37.patch +++ b/app-text/antiword/patches/antiword-0.37.patch @@ -6,7 +6,7 @@ diff -Naur antiword-0.37/antiword.h antiword-0.37-haiku/antiword.h #define ANTIWORD_DIR "antiword" #define FONTNAMES_FILE "fontnames" +#elif defined(__haiku) -+#define GLOBAL_ANTIWORD_DIR "/boot/common/data/antiword" ++#define GLOBAL_ANTIWORD_DIR "/boot/system/data/antiword" +#define ANTIWORD_DIR "antiword" +#define FONTNAMES_FILE "fontnames" #elif defined(__CYGMING__) From 10e8693868b5e7c6680479ff9fda9759fdfbc412 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fran=C3=A7ois=20Revol?= Date: Mon, 8 Dec 2014 23:11:57 +0100 Subject: [PATCH 36/48] antiword: disable DEBUG build This should prevent the verbose output --- app-text/antiword/patches/antiword-0.37.patch | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app-text/antiword/patches/antiword-0.37.patch b/app-text/antiword/patches/antiword-0.37.patch index 52efc88a0..2873294b8 100644 --- a/app-text/antiword/patches/antiword-0.37.patch +++ b/app-text/antiword/patches/antiword-0.37.patch @@ -28,7 +28,7 @@ diff -Naur antiword-0.37/Makefile.haiku antiword-0.37-haiku/Makefile.haiku +INSTALL_DATA = $(INSTALL) + +# must be equal to DEBUG or NDEBUG -+DB = DEBUG ++DB = NDEBUG +# Optimization: -O or debugging: -g +OPT = -O2 + From 9e7192421ffdbc29103845803de096770bdc6f16 Mon Sep 17 00:00:00 2001 From: Vale Tolpegin Date: Tue, 9 Dec 2014 00:05:49 +0000 Subject: [PATCH 37/48] Updated .recipe to fix any remaining bugs and add SHA256 checksum --- haiku-apps/rez/rez-108.recipe | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/haiku-apps/rez/rez-108.recipe b/haiku-apps/rez/rez-108.recipe index be9e7cf6c..d51350265 100644 --- a/haiku-apps/rez/rez-108.recipe +++ b/haiku-apps/rez/rez-108.recipe @@ -1,13 +1,17 @@ DESCRIPTION="Rez is a resource compiler similar to rc. Its main use is compiling the Sum-it spreadsheet. New applications should consider using rc instead, but Rez may still be useful to compile some old apps from the BeOS days" SUMMARY="The Rez resource compiler" -HOMEPAGE="https://github.com/HaikuArchives/Rez/releases/tag/v1.1.1" -SRC_URI="https://github.com/HaikuArchives/Rez/releases/tag/v1.1.1.tar.gz" -SOURCE_DIR="OpenSumIt-1.1.1" + +HOMEPAGE="https://github.com/HaikuArchives/Rez/archive/v1.0" +SRC_URI="https://github.com/HaikuArchives/Rez/archive/v1.0.tar.gz" +SOURCE_DIR="Rez-1.0" + REVISION="1" + BUILD_REQUIRES=" haiku${secondaryArchSuffix}_devel >= $haikuVersion " + BUILD_PREREQUIRES=" haiku >= $haikuVersion cmd:make @@ -15,22 +19,25 @@ BUILD_PREREQUIRES=" cmd:bison cmd:cc " -CHECKSUM_SHA256="" + +CHECKSUM_SHA256="a2e41044ad34302abef5ccaf2f86b16e7bf658c96ab337935cee5b6228597afa" + ARCHITECTURES="!x86 x86_gcc2" + PROVIDES=" rez = $portVersion + app:rez = $portVersion " BUILD() { - cd rez - make + make $jobArgs } INSTALL() { mkdir -p $binDir - cp rez/rez $binDir + cp rez $binDir } LICENSE="BSD (4-clause)" From a9f79212b558c9e36e31db7503be55fe76402fd6 Mon Sep 17 00:00:00 2001 From: Vale Tolpegin Date: Tue, 9 Dec 2014 00:22:35 +0000 Subject: [PATCH 38/48] Moved LICENSE and COPYRIGHT to the top --- haiku-apps/rez/rez-108.recipe | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/haiku-apps/rez/rez-108.recipe b/haiku-apps/rez/rez-108.recipe index d51350265..180bec5ab 100644 --- a/haiku-apps/rez/rez-108.recipe +++ b/haiku-apps/rez/rez-108.recipe @@ -2,6 +2,10 @@ DESCRIPTION="Rez is a resource compiler similar to rc. Its main use is compiling New applications should consider using rc instead, but Rez may still be useful to compile some old apps from the BeOS days" SUMMARY="The Rez resource compiler" +LICENSE="BSD (4-clause)" +COPYRIGHT="1996-1998, 2000 Hekkelman Programmatuur B.V. All rights reserved. + 1999-2000 Tim Vernum. All rights reserved." + HOMEPAGE="https://github.com/HaikuArchives/Rez/archive/v1.0" SRC_URI="https://github.com/HaikuArchives/Rez/archive/v1.0.tar.gz" SOURCE_DIR="Rez-1.0" @@ -38,8 +42,4 @@ INSTALL() { mkdir -p $binDir cp rez $binDir -} - -LICENSE="BSD (4-clause)" -COPYRIGHT="1996-1998, 2000 Hekkelman Programmatuur B.V. All rights reserved. - 1999-2000 Tim Vernum. All rights reserved." \ No newline at end of file +} \ No newline at end of file From 3e1aefa06d8fe638bc9eed6531a0f8a8bfd4003f Mon Sep 17 00:00:00 2001 From: Alexander von Gluck IV Date: Tue, 9 Dec 2014 00:56:58 +0000 Subject: [PATCH 39/48] astyle: Port version 2.05 --- .../{astyle-2.03.recipe => astyle-2.05.recipe} | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) rename dev-util/astyle/{astyle-2.03.recipe => astyle-2.05.recipe} (85%) diff --git a/dev-util/astyle/astyle-2.03.recipe b/dev-util/astyle/astyle-2.05.recipe similarity index 85% rename from dev-util/astyle/astyle-2.03.recipe rename to dev-util/astyle/astyle-2.05.recipe index c9e945f34..4d3794786 100644 --- a/dev-util/astyle/astyle-2.03.recipe +++ b/dev-util/astyle/astyle-2.05.recipe @@ -5,13 +5,18 @@ re-formats C / C++ / C# / Java source files. It can be used from a command \ line, or it can be incorporated as classes in another C++ program. " HOMEPAGE="http://astyle.sourceforge.net" -SRC_URI="http://sourceforge.net/projects/astyle/files/astyle/astyle%202.03/astyle_2.03_linux.tar.gz" -CHECKSUM_SHA256="22b5249a0b8c9fab3b3bcd467abcb3c6b4a78458b528028634a83dca4c6ca389" +SRC_URI="http://sourceforge.net/projects/astyle/files/astyle/astyle%20${portVersion}/astyle_${portVersion}_linux.tar.gz" +CHECKSUM_SHA256="da34eb1f8f12e6f50f1cf674944c0db70c91b203008e11be0f57aa8267823a39" LICENSE="GNU LGPL v3" -COPYRIGHT="1998-2002 by Tal Davidson - 2006-2013 Jim Pattee" + +COPYRIGHT=" +1998-2002 by Tal Davidson \ +2006-2013 Jim Pattee +" + REVISION="1" -ARCHITECTURES="x86" +ARCHITECTURES="x86 x86_64 arm ppc" + if [ $effectiveTargetArchitecture != x86_gcc2 ]; then # x86_gcc2 is fine as primary target architecture as long as we're building # for a different secondary architecture. From 83448e7b76f00decb6224ccd7a54af0b8c57e61d Mon Sep 17 00:00:00 2001 From: Vale Tolpegin Date: Tue, 9 Dec 2014 01:27:36 +0000 Subject: [PATCH 40/48] Updated DESCRIPTION line lengths --- haiku-apps/rez/rez-108.recipe | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/haiku-apps/rez/rez-108.recipe b/haiku-apps/rez/rez-108.recipe index 180bec5ab..0cfa263fe 100644 --- a/haiku-apps/rez/rez-108.recipe +++ b/haiku-apps/rez/rez-108.recipe @@ -1,5 +1,6 @@ -DESCRIPTION="Rez is a resource compiler similar to rc. Its main use is compiling the Sum-it spreadsheet. -New applications should consider using rc instead, but Rez may still be useful to compile some old apps from the BeOS days" +DESCRIPTION="Rez is a resource compiler similar to rc. Its main use is compiling\ +the Sum-it spreadsheet. New applications should consider using rc instead, but\ +Rez may still be useful to compile some old apps from the BeOS days" SUMMARY="The Rez resource compiler" LICENSE="BSD (4-clause)" From b31f7c7fbd3c5f6e5982223c83235d87e733e15e Mon Sep 17 00:00:00 2001 From: Vale Tolpegin Date: Tue, 9 Dec 2014 12:59:46 +0000 Subject: [PATCH 41/48] Added cmd:rez and removed app:rez --- haiku-apps/rez/rez-108.recipe | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/haiku-apps/rez/rez-108.recipe b/haiku-apps/rez/rez-108.recipe index 0cfa263fe..c919dbfe7 100644 --- a/haiku-apps/rez/rez-108.recipe +++ b/haiku-apps/rez/rez-108.recipe @@ -31,7 +31,7 @@ ARCHITECTURES="!x86 x86_gcc2" PROVIDES=" rez = $portVersion - app:rez = $portVersion + cmd:rez = $portVersion " BUILD() From 1ec06144c54ef1f04a0335a5d88b3f12bc4a7657 Mon Sep 17 00:00:00 2001 From: Vale Tolpegin Date: Tue, 9 Dec 2014 13:00:54 +0000 Subject: [PATCH 42/48] Updated rez --- haiku-apps/sum_it/sum_it-0.2beta.recipe | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/haiku-apps/sum_it/sum_it-0.2beta.recipe b/haiku-apps/sum_it/sum_it-0.2beta.recipe index 99f9e1f97..bd7f8307e 100644 --- a/haiku-apps/sum_it/sum_it-0.2beta.recipe +++ b/haiku-apps/sum_it/sum_it-0.2beta.recipe @@ -27,6 +27,7 @@ BUILD_PREREQUIRES=" cmd:gcc cmd:flex cmd:bison + cmd:rez " BUILD() @@ -35,12 +36,7 @@ BUILD() BE_C_COMPILER=gcc make DEBUG=0 PATH=`pwd`:$PATH popd - - - pushd rez - BE_C_COMPILER=gcc make DEBUG=0 - PATH=`pwd`:$PATH - popd + cd sum-it BE_C_COMPILER=gcc make DEBUG=0 From 837d9e3cfef43f81bae06a513e3666336d6e4de1 Mon Sep 17 00:00:00 2001 From: Vale Tolpegin Date: Tue, 9 Dec 2014 13:23:27 +0000 Subject: [PATCH 43/48] Added haiku >= $haikuVersion --- haiku-apps/rez/rez-108.recipe | 1 + 1 file changed, 1 insertion(+) diff --git a/haiku-apps/rez/rez-108.recipe b/haiku-apps/rez/rez-108.recipe index c919dbfe7..259c972a5 100644 --- a/haiku-apps/rez/rez-108.recipe +++ b/haiku-apps/rez/rez-108.recipe @@ -15,6 +15,7 @@ REVISION="1" BUILD_REQUIRES=" haiku${secondaryArchSuffix}_devel >= $haikuVersion + haiku >= $haikuVersion " BUILD_PREREQUIRES=" From a9fba5ea4e6cb648a76640b9650c0a155d38a605 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fran=C3=A7ois=20Revol?= Date: Tue, 9 Dec 2014 16:56:26 +0100 Subject: [PATCH 44/48] urllib3: rename recipe from python_urllib3 --- .../{python_urllib3-1.9.1.recipe => urllib3-1.9.1.recipe} | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename dev-python/urllib3/{python_urllib3-1.9.1.recipe => urllib3-1.9.1.recipe} (98%) diff --git a/dev-python/urllib3/python_urllib3-1.9.1.recipe b/dev-python/urllib3/urllib3-1.9.1.recipe similarity index 98% rename from dev-python/urllib3/python_urllib3-1.9.1.recipe rename to dev-python/urllib3/urllib3-1.9.1.recipe index c2542de60..50bbe7846 100644 --- a/dev-python/urllib3/python_urllib3-1.9.1.recipe +++ b/dev-python/urllib3/urllib3-1.9.1.recipe @@ -28,7 +28,7 @@ ARCHITECTURES="x86 x86_gcc2 x86_64" SOURCE_DIR="urllib3-$portVersion" PROVIDES=" - python_urllib3 = $portVersion + urllib3 = $portVersion " REQUIRES=" From 5b5079c2230628398e321a7573ac63875315af75 Mon Sep 17 00:00:00 2001 From: Chirayu Desai Date: Fri, 5 Dec 2014 17:30:10 +0000 Subject: [PATCH 45/48] python_setuptools: Add compile-time depedency on sed command --- dev-python/python_setuptools/python_setuptools-5.3.recipe | 1 + 1 file changed, 1 insertion(+) diff --git a/dev-python/python_setuptools/python_setuptools-5.3.recipe b/dev-python/python_setuptools/python_setuptools-5.3.recipe index f4b5afb01..8ec7dde6f 100644 --- a/dev-python/python_setuptools/python_setuptools-5.3.recipe +++ b/dev-python/python_setuptools/python_setuptools-5.3.recipe @@ -27,6 +27,7 @@ BUILD_REQUIRES="" BUILD_PREREQUIRES=" haiku_devel >= $haikuVersion cmd:python + cmd:sed " BUILD() From 71313a5dcddb8b5c7c77947fff86ec9b0f953819 Mon Sep 17 00:00:00 2001 From: Chirayu Desai Date: Fri, 5 Dec 2014 17:30:24 +0000 Subject: [PATCH 46/48] Add recipe for orphilia_dropbox * Based off http://bb.haikuports.org/haikuports/issue/61/orphilia-wip-recipe-needs-to-be-added-to --- .../orphilia_dropbox-1.recipe | 76 +++++++++++++++++++ 1 file changed, 76 insertions(+) create mode 100644 haiku-apps/orphilia_dropbox/orphilia_dropbox-1.recipe diff --git a/haiku-apps/orphilia_dropbox/orphilia_dropbox-1.recipe b/haiku-apps/orphilia_dropbox/orphilia_dropbox-1.recipe new file mode 100644 index 000000000..3b49e9f17 --- /dev/null +++ b/haiku-apps/orphilia_dropbox/orphilia_dropbox-1.recipe @@ -0,0 +1,76 @@ +DESCRIPTION="Orphilia is an open-source Dropbox client written in Python. \ +Project's main goal is to provide an open-source desktop Dropbox client for \ +platforms, that aren't supported (for example, Haiku). Orphilia is \ +script-based which makes it platform-independent. It's written using \ +Dropbox SDK from here, which has been integrated \ +into Orphilia's source code and is not required for installation." +SUMMARY="Open-source Dropbox client." +HOMEPAGE="https://github.com/ksiazkowicz/orphilia-dropbox" +SRC_URI="git+https://github.com/ksiazkowicz/orphilia-dropbox.git#f692f26793a48e2742f12c20767f0f22a9ff39af" +REVISION="1" +ARCHITECTURES="x86_gcc2 ?x86 ?x86_64" + +# Should be called after activating package +#POST_INSTALL_SCRIPTS=" +# \"orphilia.py --configuration\" +# " + +PROVIDES=" + orphilia_dropbox = $portVersion + cmd:orphilia_haiku_notify = $portVersion + cmd:orphilia.py = $portVersion + " + +BUILD_PREREQUIRES=" + haiku_devel >= $haikuVersion + cmd:gcc + cmd:python + cmd:sed + " + + +BUILD_REQUIRES=" + haiku_devel >= $haikuVersion + python_setuptools + " + +REQUIRES=" + pathtools + python_setuptools + urllib3 + watchdog + cmd:python + " + +COPYRIGHT="2011-2014 Maciej Janiszewski" +LICENSE="MIT" + +BUILD() +{ + python build.py +} + +INSTALL() +{ + # GENERIC: all python_setuptools-based installs need this + export PATH="$portPackageLinksDir/cmd~python/bin:$PATH" + pythonVersion=$(python --version 2>&1 | sed 's/Python //' | head -c3) + installLocation=$prefix/lib/python$pythonVersion/vendor-packages/ + export PYTHONPATH=$installLocation:$PYTHONPATH + mkdir -p $installLocation + + cd built/dependencies + python setup.py install \ + --single-version-externally-managed \ + --root=/ --prefix=$prefix + cd ../.. + + mkdir -p $installLocation/orphilia_dropbox + cp -R built/* $installLocation/orphilia_dropbox + + mkdir -p $binDir + + # create symlink which could be directly accessed + ln -s $installLocation/orphilia_dropbox/notify/haiku-notify $binDir/orphilia_haiku-notify + ln -s $installLocation/orphilia_dropbox/orphilia.py $binDir/orphilia.py +} From 7a1c9c2b6af554767e6498e60fe2f5863a310794 Mon Sep 17 00:00:00 2001 From: Sergei Reznikov Date: Tue, 9 Dec 2014 19:34:47 +0300 Subject: [PATCH 47/48] VirtualBox guest additions: update to the latest version --- ...albox_guest_additions-4.3.53_svn.patchset} | 2092 +++++++++-------- ...rtualbox_guest_additions-4.3.53_svn.recipe | 48 +- 2 files changed, 1081 insertions(+), 1059 deletions(-) rename app-emulation/virtualbox-guest-additions/patches/{vbox-4.3.53_svn.patch => virtualbox_guest_additions-4.3.53_svn.patchset} (87%) diff --git a/app-emulation/virtualbox-guest-additions/patches/vbox-4.3.53_svn.patch b/app-emulation/virtualbox-guest-additions/patches/virtualbox_guest_additions-4.3.53_svn.patchset similarity index 87% rename from app-emulation/virtualbox-guest-additions/patches/vbox-4.3.53_svn.patch rename to app-emulation/virtualbox-guest-additions/patches/virtualbox_guest_additions-4.3.53_svn.patchset index da8183198..3880e39ab 100644 --- a/app-emulation/virtualbox-guest-additions/patches/vbox-4.3.53_svn.patch +++ b/app-emulation/virtualbox-guest-additions/patches/virtualbox_guest_additions-4.3.53_svn.patchset @@ -1,8 +1,14 @@ -Index: trunk/Config.kmk -=================================================================== ---- trunk/Config.kmk (revision 51740) -+++ trunk/Config.kmk (working copy) -@@ -1365,7 +1365,7 @@ +From ddbf13536ae03b14c3c8b985b7ebbcafd41fe6d5 Mon Sep 17 00:00:00 2001 +From: Sergei Reznikov +Date: Tue, 2 Dec 2014 14:59:12 +0300 +Subject: Haiku support + + +diff --git a/Config.kmk b/Config.kmk +index 738c808..8a4d0af 100644 +--- a/Config.kmk ++++ b/Config.kmk +@@ -1372,7 +1372,7 @@ ifndef VBOX_GCC_TOOL VBOX_GCC_TOOL := GXX4MACHO else ifeq ($(KBUILD_TARGET),haiku) # Haiku shouldn't pass '-r' to the linker by default @@ -11,7 +17,7 @@ Index: trunk/Config.kmk else ifeq ($(KBUILD_TARGET),solaris) VBOX_GCC_TOOL := GXX3PLAIN VBOX_GCC32_TOOL := GXX3PLAIN -@@ -1506,8 +1506,14 @@ +@@ -1513,8 +1513,14 @@ VBOX_GCC_WARN_PEDANTIC = -Wshadow $(VBOX_GCC_WARN) -Wno-long-long ifdef VBOX_WITH_MASOCHISTIC_WARNINGS VBOX_GCC_WARN_PEDANTIC += -Wunused-variable -Wunused-function -Wunused-label -Wunused-parameter endif @@ -28,7 +34,7 @@ Index: trunk/Config.kmk ifeq ($(KBUILD_TARGET),win) VBOX_C_CXX_FLAGS_NO_UNUSED_PARAMETERS = #-Wdxxxx else -@@ -2771,17 +2777,18 @@ +@@ -2842,17 +2848,18 @@ ifeq ($(KBUILD_HOST),haiku) # @param 1 The file to add resources to. # @param 2 The resource files. # @param 3 The target name. @@ -56,7 +62,7 @@ Index: trunk/Config.kmk VBOX_HAIKU_XRES_SETVER_CMDS ?= $(if $(eq $(tool_do),LINK_PROGRAM),$(call VBOX_HAIKU_XRES_SETVER_FN,$(out),$($(target)_RSRCS),$(target)),) endif -@@ -3508,7 +3515,7 @@ +@@ -3598,7 +3605,7 @@ endif # FreeBSD ifeq ($(KBUILD_TARGET),haiku) ## The Haiku include directories @@ -65,7 +71,7 @@ Index: trunk/Config.kmk TEMPLATE_VBOXR0DRV_TOOL = $(VBOX_GCC_TOOL) TEMPLATE_VBOXR0DRV_LDTOOL = $(VBOX_GCC_TOOL) -@@ -3519,13 +3526,13 @@ +@@ -3609,13 +3616,13 @@ TEMPLATE_VBOXR0DRV_LDFLAGS = -shared -no-undefined -dc -dy -lroot -r TEMPLATE_VBOXR0DRV_CFLAGS = -fno-PIC \ $(VBOX_GCC_WARN) -Wstrict-prototypes $(VBOX_GCC_Wno-pointer-sign) -Wno-sign-compare \ $(VBOX_GCC_fno-stack-protector) $(VBOX_GCC_R0_OPT) $(VBOX_GCC_R0_FP) -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration @@ -82,7 +88,7 @@ Index: trunk/Config.kmk -Wformat \ -O2 -nodefaultlibs -fno-omit-frame-pointer -fno-strict-aliasing -fno-common -fno-exceptions -fno-rtti TEMPLATE_VBOXR0DRV_CXXFLAGS.x86 = $(TEMPLATE_VBOXR0DRV_CFLAGS.x86) -fno-exceptions -fno-rtti -@@ -3628,7 +3635,9 @@ +@@ -3723,7 +3730,9 @@ ifeq ($(KBUILD_TARGET),win) else # the gcc guys TEMPLATE_VBOXR3EXE_TOOL = $(VBOX_GCC_TOOL) TEMPLATE_VBOXR3EXE_CXXFLAGS = -g $(VBOX_GCC_pipe) $(VBOX_GCC_PEDANTIC_CXX) $(VBOX_GCC_Wno-variadic-macros) $(VBOX_GCC_OPT) $(VBOX_GCC_FP) -fno-strict-aliasing $(VBOX_GCC_fvisibility-hidden) $(VBOX_GCC_fvisibility-inlines-hidden) @@ -92,7 +98,7 @@ Index: trunk/Config.kmk TEMPLATE_VBOXR3EXE_CXXFLAGS.amd64 = -m64 TEMPLATE_VBOXR3EXE_CXXFLAGS.sparc32 = -m32 TEMPLATE_VBOXR3EXE_CXXFLAGS.sparc64 = -m64 -@@ -3650,7 +3659,9 @@ +@@ -3745,7 +3754,9 @@ TEMPLATE_VBOXR3EXE_OBJCXXFLAGS.x86 = $(TEMPLATE_VBOXR3EXE_CXXFLAGS.x86) TEMPLATE_VBOXR3EXE_OBJCXXFLAGS.amd64 = $(TEMPLATE_VBOXR3EXE_CXXFLAGS.amd64) TEMPLATE_VBOXR3EXE_OBJCXXFLAGS.debug = $(TEMPLATE_VBOXR3EXE_CXXFLAGS.debug) TEMPLATE_VBOXR3EXE_OBJCXXFLAGS.kprofile= $(TEMPLATE_VBOXR3EXE_CXXFLAGS.kprofile) @@ -102,7 +108,7 @@ Index: trunk/Config.kmk TEMPLATE_VBOXR3EXE_LDFLAGS.amd64 = -m64 TEMPLATE_VBOXR3EXE_LDFLAGS.sparc32 = -m32 TEMPLATE_VBOXR3EXE_LDFLAGS.sparc64 = -m64 -@@ -3676,9 +3687,11 @@ +@@ -3771,9 +3782,11 @@ TEMPLATE_VBOXR3EXE_LDFLAGS.darwin.x86 = -read_only_relocs suppress TEMPLATE_VBOXR3EXE_CXXFLAGS := $(filter-out -pedantic,$(TEMPLATE_VBOXR3EXE_CXXFLAGS)) -fdollars-in-identifiers # annoying gcc option precedence. endif else ifeq ($(KBUILD_TARGET),haiku) @@ -116,7 +122,7 @@ Index: trunk/Config.kmk TEMPLATE_VBOXR3EXE_LIBPATH += \ /boot/common/lib # Haiku uses PIC by default... -@@ -4887,7 +4900,9 @@ +@@ -5024,7 +5037,9 @@ else # (gcc of some kind ) TEMPLATE_VBoxBldProg_TOOL = GXX3 TEMPLATE_VBoxBldProg_CFLAGS = -g $(VBOX_GCC_pipe) $(VBOX_GCC_PEDANTIC_C) $(VBOX_GCC_Wno-variadic-macros) @@ -126,7 +132,7 @@ Index: trunk/Config.kmk TEMPLATE_VBoxBldProg_CFLAGS.sparc32 = -m32 TEMPLATE_VBoxBldProg_CFLAGS.amd64 = -m64 TEMPLATE_VBoxBldProg_CFLAGS.sparc64 = -m64 -@@ -4895,7 +4910,9 @@ +@@ -5032,7 +5047,9 @@ TEMPLATE_VBoxBldProg_CFLAGS.release = -O2 -fno-omit-frame-pointer -fno-stri TEMPLATE_VBoxBldProg_CFLAGS.profile = $(TEMPLATE_VBoxBldProg_CXXFLAGS.profile) TEMPLATE_VBoxBldProg_CFLAGS.kprofile = $(TEMPLATE_VBoxBldProg_CXXFLAGS.kprofile) TEMPLATE_VBoxBldProg_CXXFLAGS = -g $(VBOX_GCC_pipe) $(VBOX_GCC_PEDANTIC_CXX) $(VBOX_GCC_Wno-variadic-macros) @@ -136,7 +142,7 @@ Index: trunk/Config.kmk TEMPLATE_VBoxBldProg_CXXFLAGS.sparc32 = -m32 TEMPLATE_VBoxBldProg_CXXFLAGS.amd64 = -m64 TEMPLATE_VBoxBldProg_CXXFLAGS.sparc64 = -m64 -@@ -4914,7 +4931,9 @@ +@@ -5051,7 +5068,9 @@ TEMPLATE_VBoxBldProg_OBJCXXFLAGS.amd64 = $(TEMPLATE_VBoxBldProg_CXXFLAGS.amd64 TEMPLATE_VBoxBldProg_OBJCXXFLAGS.release = $(TEMPLATE_VBoxBldProg_CXXFLAGS.release) TEMPLATE_VBoxBldProg_OBJCXXFLAGS.profile = $(TEMPLATE_VBoxBldProg_CXXFLAGS.profile) TEMPLATE_VBoxBldProg_OBJCXXFLAGS.kprofile= $(TEMPLATE_VBoxBldProg_CXXFLAGS.kprofile) @@ -146,7 +152,7 @@ Index: trunk/Config.kmk TEMPLATE_VBoxBldProg_LDFLAGS.sparc32 = -m32 TEMPLATE_VBoxBldProg_LDFLAGS.amd64 = -m64 TEMPLATE_VBoxBldProg_LDFLAGS.sparc64 = -m64 -@@ -4956,7 +4975,7 @@ +@@ -5093,7 +5112,7 @@ TEMPLATE_VBoxBldProg_LDFLAGS.darwin = $(VBOX_DARWIN_DEF_SDK_LDFLAGS) endif TEMPLATE_VBoxBldProg_LIBS = else ifeq ($(KBUILD_HOST),haiku) @@ -155,970 +161,11 @@ Index: trunk/Config.kmk TEMPLATE_VBoxBldProg_LIBS = network iconv TEMPLATE_VBoxBldProg_LIBPATH += \ /boot/common/lib -Index: trunk/src/VBox/Additions/haiku/VBoxMouse/Makefile.kmk -=================================================================== ---- trunk/src/VBox/Additions/haiku/VBoxMouse/Makefile.kmk (revision 51740) -+++ trunk/src/VBox/Additions/haiku/VBoxMouse/Makefile.kmk (working copy) -@@ -52,7 +52,7 @@ - # R1 will need gcc2-built input_server add-ons. - - PROGRAMS += VBoxMouse --VBoxMouse_TEMPLATE = VBOXGUESTR3EXE -+VBoxMouse_TEMPLATE = NewVBoxGuestR3Exe - VBoxMouse_DEFS = VBOX_WITH_HGCM LOG_TO_BACKDOOR - VBoxMouse_DEFS += LOG_ENABLED - VBoxMouse_INCS = ../include -@@ -67,7 +67,7 @@ - /system/servers/input_server - - PROGRAMS += VBoxMouseFilter --VBoxMouseFilter_TEMPLATE = VBOXGUESTR3EXE -+VBoxMouseFilter_TEMPLATE = NewVBoxGuestR3Exe - VBoxMouseFilter_DEFS = VBOX_WITH_HGCM LOG_TO_BACKDOOR - VBoxMouseFilter_DEFS += LOG_ENABLED - VBoxMouseFilter_INCS = ../include -Index: trunk/src/VBox/Additions/haiku/VBoxTray/VBoxGuestApplication.cpp -=================================================================== ---- trunk/src/VBox/Additions/haiku/VBoxTray/VBoxGuestApplication.cpp (revision 51740) -+++ trunk/src/VBox/Additions/haiku/VBoxTray/VBoxGuestApplication.cpp (working copy) -@@ -75,6 +75,7 @@ - status_t err; - - err = VBoxGuestDeskbarView::AddToDeskbar(); -+ printf("error 0x%08lx\n", err); - LogFlow(("VBoxGuestDeskbarView::ReadyToRun: AddToDeskbar returned 0x%08lx\n", err)); - exit(0); - } -Index: trunk/src/VBox/Additions/haiku/VBoxTray/Makefile.kmk -=================================================================== ---- trunk/src/VBox/Additions/haiku/VBoxTray/Makefile.kmk (revision 51740) -+++ trunk/src/VBox/Additions/haiku/VBoxTray/Makefile.kmk (working copy) -@@ -51,7 +51,7 @@ - # single bin will cause problems loading gcc4 binary from a gcc2-built Deskbar! - - PROGRAMS += VBoxTray --VBoxTray_TEMPLATE = VBOXGUESTR3EXE -+VBoxTray_TEMPLATE = NewVBoxGuestR3Exe - VBoxTray_DEFS = VBOX_WITH_HGCM LOG_TO_BACKDOOR - VBoxTray_DEFS += LOG_ENABLED - VBoxTray_INCS = ../include -Index: trunk/src/VBox/Additions/haiku/VBoxTray/VBoxGuestDeskbarView.cpp -=================================================================== ---- trunk/src/VBox/Additions/haiku/VBoxTray/VBoxGuestDeskbarView.cpp (revision 51740) -+++ trunk/src/VBox/Additions/haiku/VBoxTray/VBoxGuestDeskbarView.cpp (working copy) -@@ -47,6 +47,7 @@ - * Header Files * - *******************************************************************************/ - #include -+#include - #include - #include - #include -@@ -83,7 +84,8 @@ - VBoxGuestDeskbarView::VBoxGuestDeskbarView() - : BView(BRect(0, 0, 15, 15), VIEWNAME, B_FOLLOW_NONE, - B_WILL_DRAW | B_NAVIGABLE), -- fIcon(NULL), fClipboardService(NULL), fDisplayService(NULL) -+ fIcon(NULL), fInitStatus(B_NO_INIT), -+ fClipboardService(NULL), fDisplayService(NULL) - { - _Init(); - } -@@ -91,7 +93,8 @@ - - VBoxGuestDeskbarView::VBoxGuestDeskbarView(BMessage *archive) - : BView(archive), -- fIcon(NULL) -+ fIcon(NULL), fInitStatus(B_NO_INIT), -+ fClipboardService(NULL), fDisplayService(NULL) - { - archive->PrintToStream(); - _Init(archive); -@@ -106,7 +109,13 @@ - fClipboardService->Disconnect(); - delete fClipboardService; - } -- VbglR3Term(); -+ if (fDisplayService) -+ { -+ //fDisplayService->Disconnect(); -+ delete fDisplayService; -+ } -+ if (fInitStatus == B_OK) -+ VbglR3Term(); - } - - -@@ -165,8 +174,10 @@ - void VBoxGuestDeskbarView::DetachedFromWindow() - { - BMessage message(B_QUIT_REQUESTED); -- fClipboardService->MessageReceived(&message); -- fDisplayService->MessageReceived(&message); -+ if (fClipboardService) -+ fClipboardService->MessageReceived(&message); -+ if (fDisplayService) -+ fDisplayService->MessageReceived(&message); - } - - -@@ -197,7 +208,7 @@ - if (message->what == B_QUIT_REQUESTED) - RemoveFromDeskbar(); - else -- BHandler::MessageReceived(message); -+ BView::MessageReceived(message); - } - - -@@ -217,7 +228,9 @@ - return err; - - BPath p(&info.ref); -- return deskbar.AddItem(&info.ref); -+ printf("%s:%s\n", __FUNCTION__, p.Path()); -+ int32 id; -+ return deskbar.AddItem(&info.ref, &id); - } - - -@@ -260,14 +273,15 @@ - fIcon = BTranslationUtils::GetBitmap(&mem); - } - -- int rc = RTR3InitDll(RTR3INIT_FLAGS_UNOBTRUSIVE); -+ int rc = RTR3InitDll(RTR3INIT_FLAGS_SUPLIB | RTR3INIT_FLAGS_UNOBTRUSIVE | RTR3INIT_FLAGS_UTF8_ARGV); - if (RT_SUCCESS(rc)) - { - rc = VbglR3Init(); - if (RT_SUCCESS(rc)) - { - fClipboardService = new VBoxClipboardService(); -- fDisplayService = new VBoxDisplayService(); -+ //fDisplayService = new VBoxDisplayService(); -+ fInitStatus = B_OK; - } - else - LogRel(("VBoxGuestDeskbarView::_init VbglR3Init failed. rc=%d\n", rc)); -@@ -278,8 +292,10 @@ - } - - -+extern "C" { - RTDECL(BView*) instantiate_deskbar_item() - { -+ printf("%s()\n", __FUNCTION__); - return new VBoxGuestDeskbarView(); - } -- -+} // C -Index: trunk/src/VBox/Additions/haiku/VBoxTray/VBoxGuestDeskbarView.h -=================================================================== ---- trunk/src/VBox/Additions/haiku/VBoxTray/VBoxGuestDeskbarView.h (revision 51740) -+++ trunk/src/VBox/Additions/haiku/VBoxTray/VBoxGuestDeskbarView.h (working copy) -@@ -88,6 +88,7 @@ - status_t _Init(BMessage *archive = NULL); - BBitmap *fIcon; - -+ status_t fInitStatus; - VBoxClipboardService *fClipboardService; - VBoxDisplayService *fDisplayService; - }; -Index: trunk/src/VBox/Additions/haiku/SharedFolders/lock.h -=================================================================== ---- trunk/src/VBox/Additions/haiku/SharedFolders/lock.h (revision 51740) -+++ trunk/src/VBox/Additions/haiku/SharedFolders/lock.h (working copy) -@@ -64,7 +64,7 @@ - const char* name; - struct rw_lock_waiter* waiters; - thread_id holder; -- vint32 count; -+ int32 count; - int32 owner_count; - int16 active_readers; - // Only > 0 while a writer is waiting: number -Index: trunk/src/VBox/Additions/haiku/SharedFolders/vboxsf.c -=================================================================== ---- trunk/src/VBox/Additions/haiku/SharedFolders/vboxsf.c (revision 51740) -+++ trunk/src/VBox/Additions/haiku/SharedFolders/vboxsf.c (working copy) -@@ -55,6 +55,7 @@ - - status_t init_module(void) - { -+ int rc; - #if 0 - /* @todo enable this soon */ - int rc = get_module(VBOXGUEST_MODULE_NAME, (module_info **)&g_VBoxGuest); -@@ -98,7 +99,10 @@ - return B_ERROR; - } - -- if (RT_FAILURE(vboxInit())) -+ rc = vboxInit(); -+ dprintf("rc=%d\n", rc); -+ if (RT_FAILURE(rc)) -+ //if (RT_FAILURE(vboxInit())) - { - dprintf("vboxInit failed\n"); - return B_ERROR; -@@ -136,6 +140,7 @@ - - PSHFLSTRING make_shflstring(const char* const s) - { -+ PSHFLSTRING rv; - int len = strlen(s); - if (len > 0xFFFE) - { -@@ -143,7 +148,7 @@ - return NULL; - } - -- PSHFLSTRING rv = malloc(sizeof(SHFLSTRING) + len); -+ rv = malloc(sizeof(SHFLSTRING) + len); - if (!rv) - return NULL; - -@@ -194,12 +199,14 @@ - - PSHFLSTRING build_path(vboxsf_vnode* dir, const char* const name) - { -+ size_t len; -+ PSHFLSTRING rv; - dprintf("*** build_path(%p, %p)\n", dir, name); - if (!dir || !name) - return NULL; - -- size_t len = dir->path->u16Length + strlen(name) + 1; -- PSHFLSTRING rv = malloc(sizeof(SHFLSTRING) + len); -+ len = dir->path->u16Length + strlen(name) + 1; -+ rv = malloc(sizeof(SHFLSTRING) + len); - if (rv) - { - strcpy(rv->String.utf8, dir->path->String.utf8); -@@ -214,6 +221,10 @@ - - status_t mount(fs_volume *volume, const char *device, uint32 flags, const char *args, ino_t *_rootVnodeID) - { -+ PSHFLSTRING sharename; -+ vboxsf_volume* vbsfvolume; -+ int rv; -+ - if (device) - { - dprintf(FS_NAME ": trying to mount a real device as a vbox share is silly\n"); -@@ -222,16 +233,17 @@ - - dprintf(FS_NAME ": mount(%s)\n", args); - -- PSHFLSTRING sharename = make_shflstring(args); -+ sharename = make_shflstring(args); - -- vboxsf_volume* vbsfvolume = malloc(sizeof(vboxsf_volume)); -+ vbsfvolume = malloc(sizeof(vboxsf_volume)); - volume->private_volume = vbsfvolume; -- int rv = vboxCallMapFolder(&g_clientHandle, sharename, &(vbsfvolume->map)); -+ rv = vboxCallMapFolder(&g_clientHandle, sharename, &(vbsfvolume->map)); - free(sharename); - - if (rv == 0) - { - vboxsf_vnode* root_vnode; -+ status_t rs; - - PSHFLSTRING name = make_shflstring(""); - if (!name) -@@ -240,7 +252,7 @@ - return B_NO_MEMORY; - } - -- status_t rs = vboxsf_new_vnode(&vbsfvolume->map, name, name, &root_vnode); -+ rs = vboxsf_new_vnode(&vbsfvolume->map, name, name, &root_vnode); - dprintf(FS_NAME ": allocated %p (path=%p name=%p)\n", root_vnode, root_vnode->path, root_vnode->name); - - if (rs != B_OK) -@@ -323,12 +335,13 @@ - vboxsf_volume* volume = _volume->private_volume; - vboxsf_vnode* vnode = _vnode->private_node; - SHFLCREATEPARMS params; -+ int rc; - - RT_ZERO(params); - params.Handle = SHFL_HANDLE_NIL; - params.CreateFlags = SHFL_CF_DIRECTORY | SHFL_CF_ACT_OPEN_IF_EXISTS | SHFL_CF_ACT_FAIL_IF_NEW | SHFL_CF_ACCESS_READ; - -- int rc = vboxCallCreate(&g_clientHandle, &volume->map, vnode->path, ¶ms); -+ rc = vboxCallCreate(&g_clientHandle, &volume->map, vnode->path, ¶ms); - if (RT_SUCCESS(rc)) - { - if (params.Result == SHFL_FILE_EXISTS && params.Handle != SHFL_HANDLE_NIL) -@@ -358,17 +371,23 @@ - status_t vboxsf_read_dir_1(vboxsf_volume* volume, vboxsf_vnode* vnode, vboxsf_dir_cookie* cookie, - struct dirent* buffer, size_t bufferSize) - { -+ PSHFLSTRING name1; -+ int rv; -+ vboxsf_vnode* new_vnode; -+ size_t size; -+ - dprintf("%p, %d, %p\n", cookie, cookie->has_more_files, cookie->buffer); - if (!cookie->has_more_files) - return B_ENTRY_NOT_FOUND; - - if (!cookie->buffer) - { -+ int rc; - cookie->buffer_length = 16384; - cookie->buffer_start = cookie->buffer = malloc(cookie->buffer_length); - -- int rc = vboxCallDirInfo(&g_clientHandle, &volume->map, cookie->handle, cookie->path, 0, cookie->index, -- &cookie->buffer_length, cookie->buffer, &cookie->num_files); -+ rc = vboxCallDirInfo(&g_clientHandle, &volume->map, cookie->handle, cookie->path, 0, cookie->index, -+ &cookie->buffer_length, cookie->buffer, &cookie->num_files); - - if (rc != 0 && rc != VERR_NO_MORE_FILES) - { -@@ -393,15 +412,14 @@ - return B_BUFFER_OVERFLOW; - } - -- PSHFLSTRING name1 = clone_shflstring(&cookie->buffer->name); -+ name1 = clone_shflstring(&cookie->buffer->name); - if (!name1) - { - dprintf(FS_NAME ": make_shflstring() failed\n"); - return B_NO_MEMORY; - } - -- vboxsf_vnode* new_vnode; -- int rv = vboxsf_new_vnode(&volume->map, build_path(vnode, name1->String.utf8), name1, &new_vnode); -+ rv = vboxsf_new_vnode(&volume->map, build_path(vnode, name1->String.utf8), name1, &new_vnode); - if (rv != B_OK) - { - dprintf(FS_NAME ": vboxsf_new_vnode() failed\n"); -@@ -415,7 +433,7 @@ - buffer->d_reclen = sizeof(struct dirent) + cookie->buffer->name.u16Length; - strncpy(buffer->d_name, cookie->buffer->name.String.utf8, NAME_MAX); - -- size_t size = offsetof(SHFLDIRINFO, name.String) + cookie->buffer->name.u16Size; -+ size = offsetof(SHFLDIRINFO, name.String) + cookie->buffer->name.u16Size; - cookie->buffer = ((void*)cookie->buffer + size); - cookie->index++; - -@@ -504,22 +522,24 @@ - - status_t vboxsf_lookup(fs_volume* _volume, fs_vnode* dir, const char* name, ino_t* _id) - { -- dprintf(FS_NAME ": lookup %s\n", name); - vboxsf_volume* volume = _volume->private_volume; - SHFLCREATEPARMS params; -+ PSHFLSTRING path; -+ int rc; -+ dprintf(FS_NAME ": lookup %s\n", name); - - RT_ZERO(params); - params.Handle = SHFL_HANDLE_NIL; - params.CreateFlags = SHFL_CF_LOOKUP | SHFL_CF_ACT_FAIL_IF_NEW; - -- PSHFLSTRING path = build_path(dir->private_node, name); -+ path = build_path(dir->private_node, name); - if (!path) - { - dprintf(FS_NAME ": make_shflstring() failed\n"); - return B_NO_MEMORY; - } - -- int rc = vboxCallCreate(&g_clientHandle, &volume->map, path, ¶ms); -+ rc = vboxCallCreate(&g_clientHandle, &volume->map, path, ¶ms); - if (RT_SUCCESS(rc)) - { - if (params.Result == SHFL_FILE_EXISTS) -@@ -600,11 +620,12 @@ - { - vboxsf_volume* volume = _volume->private_volume; - vboxsf_vnode* vnode = _vnode->private_node; -+ SHFLCREATEPARMS params; -+ int rc; -+ vboxsf_file_cookie* cookie; - - dprintf(FS_NAME ": open %s (mode=%x)\n", vnode->path->String.utf8, openMode); - -- SHFLCREATEPARMS params; -- - RT_ZERO(params); - params.Handle = SHFL_HANDLE_NIL; - -@@ -637,14 +658,14 @@ - params.CreateFlags |= SHFL_CF_ACT_OPEN_IF_EXISTS; - } - -- int rc = vboxCallCreate(&g_clientHandle, &volume->map, vnode->path, ¶ms); -+ rc = vboxCallCreate(&g_clientHandle, &volume->map, vnode->path, ¶ms); - if (!RT_SUCCESS(rc)) - { - dprintf("vboxCallCreate returned %d\n", rc); - return vbox_err_to_haiku_err(rc); - } - -- vboxsf_file_cookie* cookie = malloc(sizeof(vboxsf_file_cookie)); -+ cookie = malloc(sizeof(vboxsf_file_cookie)); - if (!cookie) - { - dprintf("couldn't allocate file cookie\n"); -@@ -665,6 +686,9 @@ - vboxsf_volume* volume = _volume->private_volume; - - SHFLCREATEPARMS params; -+ PSHFLSTRING path; -+ int rc; -+ vboxsf_file_cookie* cookie; - - RT_ZERO(params); - params.Handle = SHFL_HANDLE_NIL; -@@ -698,8 +722,8 @@ - params.CreateFlags |= SHFL_CF_ACT_OPEN_IF_EXISTS; - } - -- PSHFLSTRING path = build_path(_dir->private_node, name); -- int rc = vboxCallCreate(&g_clientHandle, &volume->map, path, ¶ms); -+ path = build_path(_dir->private_node, name); -+ rc = vboxCallCreate(&g_clientHandle, &volume->map, path, ¶ms); - - if (!RT_SUCCESS(rc)) - { -@@ -708,7 +732,7 @@ - return vbox_err_to_haiku_err(rc); - } - -- vboxsf_file_cookie* cookie = malloc(sizeof(vboxsf_file_cookie)); -+ cookie = malloc(sizeof(vboxsf_file_cookie)); - if (!cookie) - { - dprintf("couldn't allocate file cookie\n"); -@@ -761,13 +785,16 @@ - vboxsf_volume* volume = _volume->private_volume; - vboxsf_vnode* vnode = _vnode->private_node; - vboxsf_file_cookie* cookie = _cookie; -+ uint32_t l; -+ void* other_buffer; -+ int rc; - - if (*length > 0xFFFFFFFF) - *length = 0xFFFFFFFF; - -- uint32_t l = *length; -- void* other_buffer = malloc(l); /* @todo map the user memory into kernel space here for efficiency */ -- int rc = vboxCallRead(&g_clientHandle, &volume->map, cookie->handle, pos, &l, other_buffer, false); -+ l = *length; -+ other_buffer = malloc(l); /* @todo map the user memory into kernel space here for efficiency */ -+ rc = vboxCallRead(&g_clientHandle, &volume->map, cookie->handle, pos, &l, other_buffer, false); - memcpy(buffer, other_buffer, l); - free(other_buffer); - -@@ -782,14 +809,17 @@ - vboxsf_volume* volume = _volume->private_volume; - vboxsf_vnode* vnode = _vnode->private_node; - vboxsf_file_cookie* cookie = _cookie; -+ uint32_t l; -+ void* other_buffer; -+ int rc; - - if (*length > 0xFFFFFFFF) - *length = 0xFFFFFFFF; - -- uint32_t l = *length; -- void* other_buffer = malloc(l); /* @todo map the user memory into kernel space here for efficiency */ -+ l = *length; -+ other_buffer = malloc(l); /* @todo map the user memory into kernel space here for efficiency */ - memcpy(other_buffer, buffer, l); -- int rc = vboxCallWrite(&g_clientHandle, &volume->map, cookie->handle, pos, &l, other_buffer, false); -+ rc = vboxCallWrite(&g_clientHandle, &volume->map, cookie->handle, pos, &l, other_buffer, false); - free(other_buffer); - - *length = l; -@@ -807,6 +837,8 @@ - status_t vboxsf_create_dir(fs_volume *_volume, fs_vnode *parent, const char *name, int perms) - { - vboxsf_volume* volume = _volume->private_volume; -+ PSHFLSTRING path; -+ int rc; - - SHFLCREATEPARMS params; - params.Handle = 0; -@@ -814,8 +846,8 @@ - params.CreateFlags = SHFL_CF_DIRECTORY | SHFL_CF_ACT_CREATE_IF_NEW | - SHFL_CF_ACT_FAIL_IF_EXISTS | SHFL_CF_ACCESS_READ; - -- PSHFLSTRING path = build_path(parent->private_node, name); -- int rc = vboxCallCreate(&g_clientHandle, &volume->map, path, ¶ms); -+ path = build_path(parent->private_node, name); -+ rc = vboxCallCreate(&g_clientHandle, &volume->map, path, ¶ms); - free(path); - /** @todo r=ramshankar: we should perhaps also check rc here and change - * Handle initialization from 0 to SHFL_HANDLE_NIL. */ -@@ -879,9 +911,10 @@ - PSHFLSTRING target = make_shflstring(path); - PSHFLSTRING linkpath = build_path(dir->private_node, name); - SHFLFSOBJINFO stuff; -+ int rc; - RT_ZERO(stuff); - -- int rc = vboxCallSymlink(&g_clientHandle, &volume->map, linkpath, target, &stuff); -+ rc = vboxCallSymlink(&g_clientHandle, &volume->map, linkpath, target, &stuff); - - free(target); - free(linkpath); -Index: trunk/src/VBox/Additions/common/VBoxGuest/VBoxGuest-haiku.c -=================================================================== ---- trunk/src/VBox/Additions/common/VBoxGuest/VBoxGuest-haiku.c (revision 51740) -+++ trunk/src/VBox/Additions/common/VBoxGuest/VBoxGuest-haiku.c (working copy) -@@ -69,6 +69,7 @@ - #include - - #define MODULE_NAME VBOXGUEST_MODULE_NAME -+#define DO_LOG 1 - - /* - * IRQ related functions. -@@ -302,9 +303,10 @@ - */ - static int32 VBoxGuestHaikuISR(void *pvState) - { -+ bool fOurIRQ; - LogFlow((MODULE_NAME ":VBoxGuestHaikuISR pvState=%p\n", pvState)); - -- bool fOurIRQ = VBoxGuestCommonISR(&g_DevExt); -+ fOurIRQ = VBoxGuestCommonISR(&g_DevExt); - if (fOurIRQ) - return B_HANDLED_INTERRUPT; - return B_UNHANDLED_INTERRUPT; -@@ -313,9 +315,10 @@ - - void VBoxGuestNativeISRMousePollEvent(PVBOXGUESTDEVEXT pDevExt) - { -+ status_t err = B_OK; -+ - LogFlow((MODULE_NAME "::NativeISRMousePollEvent:\n")); - -- status_t err = B_OK; - //dprintf(MODULE_NAME ": isr mouse\n"); - - /* -Index: trunk/src/VBox/Additions/common/VBoxGuest/VBoxDev-haiku.c -=================================================================== ---- trunk/src/VBox/Additions/common/VBoxGuest/VBoxDev-haiku.c (revision 51740) -+++ trunk/src/VBox/Additions/common/VBoxGuest/VBoxDev-haiku.c (working copy) -@@ -191,11 +191,14 @@ - */ - static status_t VBoxGuestHaikuIOCtl(void *cookie, uint32 op, void *data, size_t len) - { -+ int rc = B_OK; -+ void *pvBuf = NULL; -+ size_t cbDataReturned; -+ - PVBOXGUESTSESSION pSession = (PVBOXGUESTSESSION)cookie; -+ dprintf(DRIVER_NAME ":VBoxGuestHaikuIOCtl cookie=%p op=0x%08x data=%p len=%lu)\n", cookie, op, data, len); - Log((DRIVER_NAME ":VBoxGuestHaikuIOCtl cookie=%p op=0x%08x data=%p len=%lu)\n", cookie, op, data, len)); - -- int rc = B_OK; -- - /* - * Validate the input. - */ -@@ -223,7 +226,6 @@ - /* - * Read the request. - */ -- void *pvBuf = NULL; - if (RT_LIKELY(len > 0)) - { - pvBuf = RTMemTmpAlloc(len); -@@ -238,6 +240,7 @@ - if (RT_UNLIKELY(rc < 0)) - { - RTMemTmpFree(pvBuf); -+ dprintf(DRIVER_NAME ":VBoxGuestHaikuIOCtl: user_memcpy failed; pvBuf=%p data=%p op=%d. rc=%d\n", pvBuf, data, op, rc); - LogRel((DRIVER_NAME ":VBoxGuestHaikuIOCtl: user_memcpy failed; pvBuf=%p data=%p op=%d. rc=%d\n", pvBuf, data, op, rc)); - return EFAULT; - } -@@ -253,7 +256,6 @@ - /* - * Process the IOCtl. - */ -- size_t cbDataReturned; - rc = VBoxGuestCommonIOCtl(op, &g_DevExt, pSession, pvBuf, len, &cbDataReturned); - if (RT_SUCCESS(rc)) - { -@@ -268,6 +270,7 @@ - rc = user_memcpy(data, pvBuf, cbDataReturned); - if (RT_UNLIKELY(rc < 0)) - { -+ dprintf(DRIVER_NAME ":VBoxGuestHaikuIOCtl: user_memcpy failed; pvBuf=%p pArg=%p Cmd=%lu. rc=%d\n", pvBuf, data, op, rc); - Log((DRIVER_NAME ":VBoxGuestHaikuIOCtl: user_memcpy failed; pvBuf=%p pArg=%p Cmd=%lu. rc=%d\n", pvBuf, data, op, rc)); - rc = EFAULT; - } -@@ -275,6 +278,7 @@ - } - else - { -+ dprintf(DRIVER_NAME ":VBoxGuestHaikuIOCtl: VBoxGuestCommonIOCtl failed. rc=%d\n", rc); - Log((DRIVER_NAME ":VBoxGuestHaikuIOCtl: VBoxGuestCommonIOCtl failed. rc=%d\n", rc)); - rc = EFAULT; - } -@@ -297,6 +301,7 @@ - { - PVBOXGUESTSESSION pSession = (PVBOXGUESTSESSION)cookie; - status_t err = B_OK; -+ uint32_t u32CurSeq; - - switch (event) - { -@@ -308,7 +313,7 @@ - - RTSpinlockAcquire(g_DevExt.SessionSpinlock); - -- uint32_t u32CurSeq = ASMAtomicUoReadU32(&g_DevExt.u32MousePosChangedSeq); -+ u32CurSeq = ASMAtomicUoReadU32(&g_DevExt.u32MousePosChangedSeq); - if (pSession->u32MousePosChangedSeq != u32CurSeq) - { - pSession->u32MousePosChangedSeq = u32CurSeq; -@@ -388,11 +393,12 @@ - static status_t VBoxGuestHaikuRead(void *cookie, off_t position, void *data, size_t *numBytes) - { - PVBOXGUESTSESSION pSession = (PVBOXGUESTSESSION)cookie; -+ uint32_t u32CurSeq; - - if (*numBytes == 0) - return B_OK; - -- uint32_t u32CurSeq = ASMAtomicUoReadU32(&g_DevExt.u32MousePosChangedSeq); -+ u32CurSeq = ASMAtomicUoReadU32(&g_DevExt.u32MousePosChangedSeq); - if (pSession->u32MousePosChangedSeq != u32CurSeq) - { - pSession->u32MousePosChangedSeq = u32CurSeq; -Index: trunk/src/VBox/Runtime/r3/haiku/rtProcInitExePath-haiku.cpp -=================================================================== ---- trunk/src/VBox/Runtime/r3/haiku/rtProcInitExePath-haiku.cpp (revision 51740) -+++ trunk/src/VBox/Runtime/r3/haiku/rtProcInitExePath-haiku.cpp (working copy) -@@ -31,6 +31,7 @@ - #ifdef RT_OS_HAIKU - # include - #endif -+#include - - #include - #include -@@ -51,6 +52,7 @@ - */ - status = get_next_image_info(0, &Cookie, &ImageInfo); - AssertReturn((status == B_OK), VERR_INTERNAL_ERROR); -+fprintf(stderr, "p='%s'\n", ImageInfo.name); - - int rc = rtPathFromNativeCopy(pszPath, MIN(cchPath, MAXPATHLEN), ImageInfo.name, NULL); - AssertMsgRCReturn(rc, ("rc=%Rrc pszLink=\"%s\"\nhex: %.*Rhxs\n", rc, pszPath, MIN(cchPath, MAXPATHLEN), pszPath), rc); -Index: trunk/src/VBox/Runtime/r3/posix/utf8-posix.cpp -=================================================================== ---- trunk/src/VBox/Runtime/r3/posix/utf8-posix.cpp (revision 51740) -+++ trunk/src/VBox/Runtime/r3/posix/utf8-posix.cpp (working copy) -@@ -173,7 +173,7 @@ - iconv_t hIconv = (iconv_t)*phIconv; - if (hIconv == (iconv_t)-1) - { --#ifdef RT_OS_SOLARIS -+#if defined(RT_OS_HAIKU) || defined(RT_OS_SOLARIS) - /* Solaris doesn't grok empty codeset strings, so help it find the current codeset. */ - if (!*pszInputCS) - pszInputCS = rtStrGetLocaleCodeset(); -@@ -304,7 +304,7 @@ - /* - * Create conversion object. - */ --#ifdef RT_OS_SOLARIS -+#if defined(RT_OS_HAIKU) || defined(RT_OS_SOLARIS) - /* Solaris doesn't grok empty codeset strings, so help it find the current codeset. */ - if (!*pszInputCS) - pszInputCS = rtStrGetLocaleCodeset(); -Index: trunk/src/VBox/Runtime/r0drv/haiku/semfastmutex-r0drv-haiku.c -=================================================================== ---- trunk/src/VBox/Runtime/r0drv/haiku/semfastmutex-r0drv-haiku.c (revision 51740) -+++ trunk/src/VBox/Runtime/r0drv/haiku/semfastmutex-r0drv-haiku.c (working copy) -@@ -57,10 +57,13 @@ - - RTDECL(int) RTSemFastMutexCreate(PRTSEMFASTMUTEX phFastMtx) - { -+ PRTSEMFASTMUTEXINTERNAL pThis; -+ - AssertCompile(sizeof(RTSEMFASTMUTEXINTERNAL) > sizeof(void *)); -+ dprintf("phFastMtx: %p\n", phFastMtx); - AssertPtrReturn(phFastMtx, VERR_INVALID_POINTER); - -- PRTSEMFASTMUTEXINTERNAL pThis = (PRTSEMFASTMUTEXINTERNAL)RTMemAllocZ(sizeof(*pThis)); -+ pThis = (PRTSEMFASTMUTEXINTERNAL)RTMemAllocZ(sizeof(*pThis)); - if (RT_UNLIKELY(!pThis)) - return VERR_NO_MEMORY; - -Index: trunk/src/VBox/Runtime/r0drv/haiku/semevent-r0drv-haiku.c -=================================================================== ---- trunk/src/VBox/Runtime/r0drv/haiku/semevent-r0drv-haiku.c (revision 51740) -+++ trunk/src/VBox/Runtime/r0drv/haiku/semevent-r0drv-haiku.c (working copy) -@@ -66,12 +66,15 @@ - - RTDECL(int) RTSemEventCreateEx(PRTSEMEVENT phEventSem, uint32_t fFlags, RTLOCKVALCLASS hClass, const char *pszNameFmt, ...) - { -+ PRTSEMEVENTINTERNAL pThis; -+ - AssertCompile(sizeof(RTSEMEVENTINTERNAL) > sizeof(void *)); - AssertReturn(!(fFlags & ~(RTSEMEVENT_FLAGS_NO_LOCK_VAL | RTSEMEVENT_FLAGS_BOOTSTRAP_HACK)), VERR_INVALID_PARAMETER); - Assert(!(fFlags & RTSEMEVENT_FLAGS_BOOTSTRAP_HACK) || (fFlags & RTSEMEVENT_FLAGS_NO_LOCK_VAL)); -+ dprintf("phEventSem: %p\n", phEventSem); - AssertPtrReturn(phEventSem, VERR_INVALID_POINTER); - -- PRTSEMEVENTINTERNAL pThis = (PRTSEMEVENTINTERNAL)RTMemAllocZ(sizeof(*pThis)); -+ pThis = (PRTSEMEVENTINTERNAL)RTMemAllocZ(sizeof(*pThis)); - if (!pThis) - return VERR_NO_MEMORY; - -Index: trunk/src/VBox/Runtime/r0drv/haiku/alloc-r0drv-haiku.c -=================================================================== ---- trunk/src/VBox/Runtime/r0drv/haiku/alloc-r0drv-haiku.c (revision 51740) -+++ trunk/src/VBox/Runtime/r0drv/haiku/alloc-r0drv-haiku.c (working copy) -@@ -44,10 +44,12 @@ - */ - int rtR0MemAllocEx(size_t cb, uint32_t fFlags, PRTMEMHDR *ppHdr) - { -+ PRTMEMHDR pHdr; -+ - if (RT_UNLIKELY(fFlags & RTMEMHDR_FLAG_ANY_CTX)) - return VERR_NOT_SUPPORTED; - -- PRTMEMHDR pHdr = (PRTMEMHDR)malloc(cb + sizeof(*pHdr)); -+ pHdr = (PRTMEMHDR)malloc(cb + sizeof(*pHdr)); - if (RT_UNLIKELY(!pHdr)) - { - LogRel(("rtR0MemAllocEx(%u, %#x) failed\n",(unsigned)cb + sizeof(*pHdr), fFlags)); -@@ -75,6 +77,9 @@ - - RTR0DECL(void *) RTMemContAlloc(PRTCCPHYS pPhys, size_t cb) RT_NO_THROW - { -+ void *pv; -+ area_id area; -+ - /* - * Validate input. - */ -@@ -87,8 +92,7 @@ - * memory that's always below 4GB. - */ - cb = RT_ALIGN_Z(cb, PAGE_SIZE); -- void *pv; -- area_id area = create_area("VirtualBox Contig Alloc", &pv, B_ANY_KERNEL_ADDRESS, cb, B_32_BIT_CONTIGUOUS, -+ area = create_area("VirtualBox Contig Alloc", &pv, B_ANY_KERNEL_ADDRESS, cb, B_32_BIT_CONTIGUOUS, - B_READ_AREA | B_WRITE_AREA); - if (area >= 0) - { -@@ -112,9 +116,10 @@ - RT_ASSERT_PREEMPTIBLE(); - if (pv) - { -+ area_id area; - Assert(cb > 0); - -- area_id area = area_for(pv); -+ area = area_for(pv); - if (area >= B_OK) - delete_area(area); - else -Index: trunk/src/VBox/Runtime/r0drv/haiku/semeventmulti-r0drv-haiku.c -=================================================================== ---- trunk/src/VBox/Runtime/r0drv/haiku/semeventmulti-r0drv-haiku.c (revision 51740) -+++ trunk/src/VBox/Runtime/r0drv/haiku/semeventmulti-r0drv-haiku.c (working copy) -@@ -76,7 +76,7 @@ - pThis->u32Magic = RTSEMEVENTMULTI_MAGIC; - pThis->cRefs = 1; - pThis->SemId = create_sem(0, "IPRT Semaphore Event Multi"); -- if (pThis->SemId < B_OK) -+ if (pThis->SemId >= B_OK) - { - set_sem_owner(pThis->SemId, B_SYSTEM_TEAM); - *phEventMultiSem = pThis; -Index: trunk/src/VBox/Runtime/r0drv/haiku/semmutex-r0drv-haiku.c -=================================================================== ---- trunk/src/VBox/Runtime/r0drv/haiku/semmutex-r0drv-haiku.c (revision 51740) -+++ trunk/src/VBox/Runtime/r0drv/haiku/semmutex-r0drv-haiku.c (working copy) -@@ -65,16 +65,19 @@ - - RTDECL(int) RTSemMutexCreate(PRTSEMMUTEX phMutexSem) - { -+ PRTSEMMUTEXINTERNAL pThis; -+ - AssertCompile(sizeof(RTSEMMUTEXINTERNAL) > sizeof(void *)); -+ dprintf("phMutexSem: %p\n", phMutexSem); - AssertPtrReturn(phMutexSem, VERR_INVALID_POINTER); - -- PRTSEMMUTEXINTERNAL pThis = (PRTSEMMUTEXINTERNAL)RTMemAllocZ(sizeof(*pThis)); -+ pThis = (PRTSEMMUTEXINTERNAL)RTMemAllocZ(sizeof(*pThis)); - if (RT_UNLIKELY(!pThis)) - return VERR_NO_MEMORY; - - pThis->u32Magic = RTSEMMUTEX_MAGIC; - pThis->SemId = create_sem(0, "IPRT Mutex Semaphore"); -- if (pThis->SemId < B_OK) -+ if (pThis->SemId >= B_OK) - { - pThis->OwnerId = -1; - pThis->cRecursion = 0; -@@ -215,7 +218,7 @@ - if (--pThis->cRecursion == 0) - { - pThis->OwnerId == -1; -- release_sem(pThis->SemId); -+ release_sem_etc(pThis->SemId, 1, B_DO_NOT_RESCHEDULE); - } - - return VINF_SUCCESS; -Index: trunk/src/VBox/Runtime/r0drv/haiku/RTLogWriteDebugger-r0drv-haiku.c -=================================================================== ---- trunk/src/VBox/Runtime/r0drv/haiku/RTLogWriteDebugger-r0drv-haiku.c (revision 51740) -+++ trunk/src/VBox/Runtime/r0drv/haiku/RTLogWriteDebugger-r0drv-haiku.c (working copy) -@@ -36,6 +36,7 @@ - RTDECL(void) RTLogWriteDebugger(const char *pch, size_t cb) - { - /** @todo implement this */ -+ dprintf("%.*s", (int)cb, pch); - /*kprintf("%.*s", (int)cb, pch);*/ - return; - } -Index: trunk/src/VBox/Runtime/r0drv/haiku/memobj-r0drv-haiku.c -=================================================================== ---- trunk/src/VBox/Runtime/r0drv/haiku/memobj-r0drv-haiku.c (revision 51740) -+++ trunk/src/VBox/Runtime/r0drv/haiku/memobj-r0drv-haiku.c (working copy) -@@ -153,13 +153,15 @@ - static int rtR0MemObjNativeAllocArea(PPRTR0MEMOBJINTERNAL ppMem, size_t cb, - bool fExecutable, RTR0MEMOBJTYPE type, RTHCPHYS PhysHighest, size_t uAlignment) - { -- NOREF(fExecutable); -- - int rc; - void *pvMap = NULL; - const char *pszName = NULL; - uint32 addressSpec = B_ANY_KERNEL_ADDRESS; - uint32 fLock = ~0U; -+ PRTR0MEMOBJHAIKU pMemHaiku; -+ -+ NOREF(fExecutable); -+ - LogFlowFunc(("ppMem=%p cb=%u, fExecutable=%s, type=%08x, PhysHighest=%RX64 uAlignment=%u\n", ppMem,(unsigned)cb, - fExecutable ? "true" : "false", type, PhysHighest,(unsigned)uAlignment)); - -@@ -201,7 +203,6 @@ - } - - /* Create the object. */ -- PRTR0MEMOBJHAIKU pMemHaiku; - pMemHaiku = (PRTR0MEMOBJHAIKU)rtR0MemObjNew(sizeof(RTR0MEMOBJHAIKU), type, NULL, cb); - if (RT_UNLIKELY(!pMemHaiku)) - return VERR_NO_MEMORY; -@@ -277,11 +278,13 @@ - - int rtR0MemObjNativeEnterPhys(PPRTR0MEMOBJINTERNAL ppMem, RTHCPHYS Phys, size_t cb, uint32_t uCachePolicy) - { -+ PRTR0MEMOBJHAIKU pMemHaiku; -+ - AssertReturn(uCachePolicy == RTMEM_CACHE_POLICY_DONT_CARE, VERR_NOT_SUPPORTED); - LogFlowFunc(("ppMem=%p Phys=%08x cb=%u uCachePolicy=%x\n", ppMem, Phys,(unsigned)cb, uCachePolicy)); - - /* Create the object. */ -- PRTR0MEMOBJHAIKU pMemHaiku = (PRTR0MEMOBJHAIKU)rtR0MemObjNew(sizeof(*pMemHaiku), RTR0MEMOBJTYPE_PHYS, NULL, cb); -+ pMemHaiku = (PRTR0MEMOBJHAIKU)rtR0MemObjNew(sizeof(*pMemHaiku), RTR0MEMOBJTYPE_PHYS, NULL, cb); - if (!pMemHaiku) - return VERR_NO_MEMORY; - -@@ -311,15 +314,16 @@ - static int rtR0MemObjNativeLockInMap(PPRTR0MEMOBJINTERNAL ppMem, void *pvStart, size_t cb, uint32_t fAccess, - RTR0PROCESS R0Process, int fFlags) - { -- NOREF(fAccess); - int rc; - team_id TeamId = B_SYSTEM_TEAM; -+ PRTR0MEMOBJHAIKU pMemHaiku; -+ NOREF(fAccess); - - LogFlowFunc(("ppMem=%p pvStart=%p cb=%u fAccess=%x R0Process=%d fFlags=%x\n", ppMem, pvStart, cb, fAccess, R0Process, - fFlags)); - - /* Create the object. */ -- PRTR0MEMOBJHAIKU pMemHaiku = (PRTR0MEMOBJHAIKU)rtR0MemObjNew(sizeof(*pMemHaiku), RTR0MEMOBJTYPE_LOCK, pvStart, cb); -+ pMemHaiku = (PRTR0MEMOBJHAIKU)rtR0MemObjNew(sizeof(*pMemHaiku), RTR0MEMOBJTYPE_LOCK, pvStart, cb); - if (RT_UNLIKELY(!pMemHaiku)) - return VERR_NO_MEMORY; - -@@ -605,10 +609,11 @@ - team_id TeamId = B_SYSTEM_TEAM; - physical_entry aPhysMap[2]; - int32 cPhysMap = 2; /** @todo r=ramshankar: why not use RT_ELEMENTS? */ -+ void *pb; - - if (pMemHaiku->Core.u.Lock.R0Process != NIL_RTR0PROCESS) - TeamId = (team_id)pMemHaiku->Core.u.Lock.R0Process; -- void *pb = pMemHaiku->Core.pv + (iPage << PAGE_SHIFT); -+ pb = pMemHaiku->Core.pv + (iPage << PAGE_SHIFT); - - rc = get_memory_map_etc(TeamId, pb, B_PAGE_SIZE, aPhysMap, &cPhysMap); - if (rc < B_OK || cPhysMap < 1) -Index: trunk/src/VBox/Runtime/r0drv/haiku/spinlock-r0drv-haiku.c -=================================================================== ---- trunk/src/VBox/Runtime/r0drv/haiku/spinlock-r0drv-haiku.c (revision 51740) -+++ trunk/src/VBox/Runtime/r0drv/haiku/spinlock-r0drv-haiku.c (working copy) -@@ -66,14 +66,15 @@ - - RTDECL(int) RTSpinlockCreate(PRTSPINLOCK pSpinlock, uint32_t fFlags, const char *pszName) - { -+ PRTSPINLOCKINTERNAL pSpinlockInt; - RT_ASSERT_PREEMPTIBLE(); - NOREF(pszName); - - /* - * Allocate. - */ -- AssertCompile(sizeof(RTSPINLOCKINTERNAL) > sizeof(void *)); -- PRTSPINLOCKINTERNAL pSpinlockInt = (PRTSPINLOCKINTERNAL)RTMemAllocZ(sizeof(*pSpinlockInt)); -+// AssertCompile(sizeof(RTSPINLOCKINTERNAL) > sizeof(void *)); -+ pSpinlockInt = (PRTSPINLOCKINTERNAL)RTMemAllocZ(sizeof(*pSpinlockInt)); - if (RT_UNLIKELY(!pSpinlockInt)) - return VERR_NO_MEMORY; - -Index: trunk/src/VBox/Runtime/Makefile.kmk -=================================================================== ---- trunk/src/VBox/Runtime/Makefile.kmk (revision 51740) -+++ trunk/src/VBox/Runtime/Makefile.kmk (working copy) -@@ -1062,7 +1062,6 @@ - r3/posix/fs3-posix.cpp \ - r3/posix/ldrNative-posix.cpp \ - r3/posix/rtmempage-exec-mmap-heap-posix.cpp \ -- r3/posix/rtmemlocked-posix.cpp \ - r3/posix/path-posix.cpp \ - r3/posix/path2-posix.cpp \ - r3/posix/pathhost-posix.cpp \ -Index: trunk/src/VBox/Runtime/VBox/log-vbox.cpp -=================================================================== ---- trunk/src/VBox/Runtime/VBox/log-vbox.cpp (revision 51740) -+++ trunk/src/VBox/Runtime/VBox/log-vbox.cpp (working copy) -@@ -492,6 +492,11 @@ - RTLogFlags(pLogger, "enabled unbuffered tid"); - pLogger->fDestFlags |= RTLOGDEST_DEBUGGER | RTLOGDEST_STDOUT; - # endif -+# if 1 /* vboxdrv logging - ATTENTION: this is what we're referring to guys! Change to '# if 1'. */ -+ RTLogGroupSettings(pLogger, "+all"); -+ RTLogFlags(pLogger, "enabled unbuffered tid"); -+ pLogger->fDestFlags |= RTLOGDEST_DEBUGGER | RTLOGDEST_STDOUT; -+# endif - } - #endif /* IN_RING0 */ - return g_pLogger = RT_SUCCESS(rc) ? pLogger : NULL; -Index: trunk/configure -=================================================================== ---- trunk/configure (revision 51740) -+++ trunk/configure (working copy) -@@ -417,6 +417,9 @@ +diff --git a/configure b/configure +index e8415ac..cb46f77 100755 +--- a/configure ++++ b/configure +@@ -417,6 +417,9 @@ check_gcc() elif [ $cc_maj -eq 4 -a $cc_min -eq 0 -a "$OS" = "darwin" ]; then log_success "found version $cc_ver" # gcc-4.0 is allowed for Darwin only @@ -1128,7 +175,7 @@ Index: trunk/configure elif [ $cc_maj -lt 3 \ -o \( $cc_maj -eq 3 -a $cc_min -lt 2 \) \ -o \( $cc_maj -eq 4 -a $cc_min -lt 1 -a "$OS" != "darwin" \) \ -@@ -2652,6 +2655,12 @@ +@@ -2652,6 +2655,12 @@ if [ $OSE -ge 1 ]; then else cnf_append "VBOX_WITH_LINUX_ADDITIONS" "" fi @@ -1141,23 +188,10 @@ Index: trunk/configure echo >> $CNF fi -Index: trunk/include/iprt/cpp/autores.h -=================================================================== ---- trunk/include/iprt/cpp/autores.h (revision 51740) -+++ trunk/include/iprt/cpp/autores.h (working copy) -@@ -51,7 +51,7 @@ - } - - /** Specialisation of RTAutoResNil for RTFILE */ --template <> -+template - inline RTFILE RTAutoResNil(void) - { - return NIL_RTFILE; -Index: trunk/include/iprt/cdefs.h -=================================================================== ---- trunk/include/iprt/cdefs.h (revision 51740) -+++ trunk/include/iprt/cdefs.h (working copy) +diff --git a/include/iprt/cdefs.h b/include/iprt/cdefs.h +index c1f7cf0..efb98bf 100644 +--- a/include/iprt/cdefs.h ++++ b/include/iprt/cdefs.h @@ -1142,7 +1142,7 @@ * @param type The return type of the function declaration. * @remarks Use sparsely and with care. Don't use this macro on C++ methods. @@ -1167,11 +201,24 @@ Index: trunk/include/iprt/cdefs.h # define DECL_FORCE_INLINE(type) __attribute__((__always_inline__)) DECLINLINE(type) #elif defined(_MSC_VER) # define DECL_FORCE_INLINE(type) __forceinline type -Index: trunk/include/iprt/types.h -=================================================================== ---- trunk/include/iprt/types.h (revision 51740) -+++ trunk/include/iprt/types.h (working copy) -@@ -149,6 +149,13 @@ +diff --git a/include/iprt/cpp/autores.h b/include/iprt/cpp/autores.h +index 0edad23..217d555 100644 +--- a/include/iprt/cpp/autores.h ++++ b/include/iprt/cpp/autores.h +@@ -51,7 +51,7 @@ inline T RTAutoResNil(void) + } + + /** Specialisation of RTAutoResNil for RTFILE */ +-template <> ++template + inline RTFILE RTAutoResNil(void) + { + return NIL_RTFILE; +diff --git a/include/iprt/types.h b/include/iprt/types.h +index a58e072..31ab2a3 100644 +--- a/include/iprt/types.h ++++ b/include/iprt/types.h +@@ -150,6 +150,13 @@ RT_C_DECLS_END # undef false # undef true # undef bool @@ -1185,7 +232,7 @@ Index: trunk/include/iprt/types.h # else # include # include -@@ -206,8 +213,13 @@ +@@ -207,8 +214,13 @@ typedef uint8_t bool; # ifndef __bool_true_false_are_defined typedef _Bool bool; # endif @@ -1200,33 +247,11 @@ Index: trunk/include/iprt/types.h # undef bool # endif typedef _Bool bool; -Index: trunk/src/libs/kStuff/kStuff/include/k/kDefs.h -=================================================================== ---- trunk/src/libs/kStuff/kStuff/include/k/kDefs.h (revision 66) -+++ trunk/src/libs/kStuff/kStuff/include/k/kDefs.h (working copy) -@@ -60,8 +60,10 @@ - #define K_OS_SOLARIS 9 - /** Windows. */ - #define K_OS_WINDOWS 10 -+/** Haiku */ -+#define K_OS_HAIKU 11 - /** The max K_OS_* value (exclusive). */ --#define K_OS_MAX 11 -+#define K_OS_MAX 12 - /** @} */ - - /** @def K_OS -@@ -82,6 +84,8 @@ - # define K_OS K_OS_DRAGONFLY - # elif defined(__FreeBSD__) /*??*/ - # define K_OS K_OS_FREEBSD -+# elif defined(__HAIKU__) -+# define K_OS K_OS_HAIKU - # elif defined(__gnu_linux__) - # define K_OS K_OS_LINUX - # elif defined(__NetBSD__) /*??*/ ---- /dev/null 2014-07-01 06:17:57.378104000 +0200 -+++ trunk/kBuild/tools/GCC2.kmk 2014-01-13 18:20:19.486539264 +0100 +diff --git a/kBuild/tools/GCC2.kmk b/kBuild/tools/GCC2.kmk +new file mode 100644 +index 0000000..3b64888 +--- /dev/null ++++ b/kBuild/tools/GCC2.kmk @@ -0,0 +1,352 @@ +# $Id: GCC2.kmk 2541 2011-08-03 09:51:30Z bird $ +## @file @@ -1580,8 +605,11 @@ Index: trunk/src/libs/kStuff/kStuff/include/k/kDefs.h + endif +endef + ---- /dev/null 2014-07-01 06:17:57.378104000 +0200 -+++ trunk/kBuild/tools/GCC2PLAIN.kmk 2014-01-13 18:20:48.054001664 +0100 +diff --git a/kBuild/tools/GCC2PLAIN.kmk b/kBuild/tools/GCC2PLAIN.kmk +new file mode 100644 +index 0000000..c63f35c +--- /dev/null ++++ b/kBuild/tools/GCC2PLAIN.kmk @@ -0,0 +1,320 @@ +# $Id: GCC2PLAIN.kmk 2545 2011-09-13 19:09:05Z bird $ +## @file @@ -1903,8 +931,11 @@ Index: trunk/src/libs/kStuff/kStuff/include/k/kDefs.h + $(foreach lib,$(libs), $(if $(findstring $(lib),$(subst /,x,$(lib))), -l$(patsubst lib%,%,$(lib)), $(lib))) +endef + ---- /dev/null 2014-07-01 06:17:57.378104000 +0200 -+++ trunk/kBuild/tools/GXX2.kmk 2014-01-13 18:20:37.267911168 +0100 +diff --git a/kBuild/tools/GXX2.kmk b/kBuild/tools/GXX2.kmk +new file mode 100644 +index 0000000..012cb9c +--- /dev/null ++++ b/kBuild/tools/GXX2.kmk @@ -0,0 +1,352 @@ +# $Id: GXX2.kmk 2541 2011-08-03 09:51:30Z bird $ +## @file @@ -2258,8 +1289,11 @@ Index: trunk/src/libs/kStuff/kStuff/include/k/kDefs.h + endif +endef + ---- /dev/null 2014-07-01 06:17:57.378104000 +0200 -+++ trunk/kBuild/tools/GXX2PLAIN.kmk 2014-01-13 18:20:43.542113792 +0100 +diff --git a/kBuild/tools/GXX2PLAIN.kmk b/kBuild/tools/GXX2PLAIN.kmk +new file mode 100644 +index 0000000..2ab0b73 +--- /dev/null ++++ b/kBuild/tools/GXX2PLAIN.kmk @@ -0,0 +1,320 @@ +# $Id: GXX2PLAIN.kmk 2545 2011-09-13 19:09:05Z bird $ +## @file @@ -2581,3 +1615,987 @@ Index: trunk/src/libs/kStuff/kStuff/include/k/kDefs.h + $(foreach lib,$(libs), $(if $(findstring $(lib),$(subst /,x,$(lib))), -l$(patsubst lib%,%,$(lib)), $(lib))) +endef + +diff --git a/src/VBox/Additions/common/VBoxGuest/VBoxDev-haiku.c b/src/VBox/Additions/common/VBoxGuest/VBoxDev-haiku.c +index 4d344e8..9486778 100644 +--- a/src/VBox/Additions/common/VBoxGuest/VBoxDev-haiku.c ++++ b/src/VBox/Additions/common/VBoxGuest/VBoxDev-haiku.c +@@ -191,11 +191,14 @@ static status_t VBoxGuestHaikuFree(void *cookie) + */ + static status_t VBoxGuestHaikuIOCtl(void *cookie, uint32 op, void *data, size_t len) + { ++ int rc = B_OK; ++ void *pvBuf = NULL; ++ size_t cbDataReturned; ++ + PVBOXGUESTSESSION pSession = (PVBOXGUESTSESSION)cookie; ++ dprintf(DRIVER_NAME ":VBoxGuestHaikuIOCtl cookie=%p op=0x%08x data=%p len=%lu)\n", cookie, op, data, len); + Log((DRIVER_NAME ":VBoxGuestHaikuIOCtl cookie=%p op=0x%08x data=%p len=%lu)\n", cookie, op, data, len)); + +- int rc = B_OK; +- + /* + * Validate the input. + */ +@@ -223,7 +226,6 @@ static status_t VBoxGuestHaikuIOCtl(void *cookie, uint32 op, void *data, size_t + /* + * Read the request. + */ +- void *pvBuf = NULL; + if (RT_LIKELY(len > 0)) + { + pvBuf = RTMemTmpAlloc(len); +@@ -238,6 +240,7 @@ static status_t VBoxGuestHaikuIOCtl(void *cookie, uint32 op, void *data, size_t + if (RT_UNLIKELY(rc < 0)) + { + RTMemTmpFree(pvBuf); ++ dprintf(DRIVER_NAME ":VBoxGuestHaikuIOCtl: user_memcpy failed; pvBuf=%p data=%p op=%d. rc=%d\n", pvBuf, data, op, rc); + LogRel((DRIVER_NAME ":VBoxGuestHaikuIOCtl: user_memcpy failed; pvBuf=%p data=%p op=%d. rc=%d\n", pvBuf, data, op, rc)); + return EFAULT; + } +@@ -253,7 +256,6 @@ static status_t VBoxGuestHaikuIOCtl(void *cookie, uint32 op, void *data, size_t + /* + * Process the IOCtl. + */ +- size_t cbDataReturned; + rc = VBoxGuestCommonIOCtl(op, &g_DevExt, pSession, pvBuf, len, &cbDataReturned); + if (RT_SUCCESS(rc)) + { +@@ -268,6 +270,7 @@ static status_t VBoxGuestHaikuIOCtl(void *cookie, uint32 op, void *data, size_t + rc = user_memcpy(data, pvBuf, cbDataReturned); + if (RT_UNLIKELY(rc < 0)) + { ++ dprintf(DRIVER_NAME ":VBoxGuestHaikuIOCtl: user_memcpy failed; pvBuf=%p pArg=%p Cmd=%lu. rc=%d\n", pvBuf, data, op, rc); + Log((DRIVER_NAME ":VBoxGuestHaikuIOCtl: user_memcpy failed; pvBuf=%p pArg=%p Cmd=%lu. rc=%d\n", pvBuf, data, op, rc)); + rc = EFAULT; + } +@@ -275,6 +278,7 @@ static status_t VBoxGuestHaikuIOCtl(void *cookie, uint32 op, void *data, size_t + } + else + { ++ dprintf(DRIVER_NAME ":VBoxGuestHaikuIOCtl: VBoxGuestCommonIOCtl failed. rc=%d\n", rc); + Log((DRIVER_NAME ":VBoxGuestHaikuIOCtl: VBoxGuestCommonIOCtl failed. rc=%d\n", rc)); + rc = EFAULT; + } +@@ -297,6 +301,7 @@ static status_t VBoxGuestHaikuSelect(void *cookie, uint8 event, uint32 ref, sele + { + PVBOXGUESTSESSION pSession = (PVBOXGUESTSESSION)cookie; + status_t err = B_OK; ++ uint32_t u32CurSeq; + + switch (event) + { +@@ -308,7 +313,7 @@ static status_t VBoxGuestHaikuSelect(void *cookie, uint8 event, uint32 ref, sele + + RTSpinlockAcquire(g_DevExt.SessionSpinlock); + +- uint32_t u32CurSeq = ASMAtomicUoReadU32(&g_DevExt.u32MousePosChangedSeq); ++ u32CurSeq = ASMAtomicUoReadU32(&g_DevExt.u32MousePosChangedSeq); + if (pSession->u32MousePosChangedSeq != u32CurSeq) + { + pSession->u32MousePosChangedSeq = u32CurSeq; +@@ -388,11 +393,12 @@ static status_t VBoxGuestHaikuWrite(void *cookie, off_t position, const void *da + static status_t VBoxGuestHaikuRead(void *cookie, off_t position, void *data, size_t *numBytes) + { + PVBOXGUESTSESSION pSession = (PVBOXGUESTSESSION)cookie; ++ uint32_t u32CurSeq; + + if (*numBytes == 0) + return B_OK; + +- uint32_t u32CurSeq = ASMAtomicUoReadU32(&g_DevExt.u32MousePosChangedSeq); ++ u32CurSeq = ASMAtomicUoReadU32(&g_DevExt.u32MousePosChangedSeq); + if (pSession->u32MousePosChangedSeq != u32CurSeq) + { + pSession->u32MousePosChangedSeq = u32CurSeq; +diff --git a/src/VBox/Additions/common/VBoxGuest/VBoxGuest-haiku.c b/src/VBox/Additions/common/VBoxGuest/VBoxGuest-haiku.c +index b3617b9..847c334 100644 +--- a/src/VBox/Additions/common/VBoxGuest/VBoxGuest-haiku.c ++++ b/src/VBox/Additions/common/VBoxGuest/VBoxGuest-haiku.c +@@ -69,6 +69,7 @@ + #include + + #define MODULE_NAME VBOXGUEST_MODULE_NAME ++#define DO_LOG 1 + + /* + * IRQ related functions. +@@ -301,9 +302,10 @@ static status_t VBoxGuestHaikuDetach(void) + */ + static int32 VBoxGuestHaikuISR(void *pvState) + { ++ bool fOurIRQ; + LogFlow((MODULE_NAME ":VBoxGuestHaikuISR pvState=%p\n", pvState)); + +- bool fOurIRQ = VBoxGuestCommonISR(&g_DevExt); ++ fOurIRQ = VBoxGuestCommonISR(&g_DevExt); + if (fOurIRQ) + return B_HANDLED_INTERRUPT; + return B_UNHANDLED_INTERRUPT; +@@ -312,9 +314,10 @@ static int32 VBoxGuestHaikuISR(void *pvState) + + void VBoxGuestNativeISRMousePollEvent(PVBOXGUESTDEVEXT pDevExt) + { ++ status_t err = B_OK; ++ + LogFlow((MODULE_NAME "::NativeISRMousePollEvent:\n")); + +- status_t err = B_OK; + //dprintf(MODULE_NAME ": isr mouse\n"); + + /* +diff --git a/src/VBox/Additions/haiku/SharedFolders/lock.h b/src/VBox/Additions/haiku/SharedFolders/lock.h +index b2f428a..c86d6ab 100644 +--- a/src/VBox/Additions/haiku/SharedFolders/lock.h ++++ b/src/VBox/Additions/haiku/SharedFolders/lock.h +@@ -64,7 +64,7 @@ typedef struct rw_lock { + const char* name; + struct rw_lock_waiter* waiters; + thread_id holder; +- vint32 count; ++ int32 count; + int32 owner_count; + int16 active_readers; + // Only > 0 while a writer is waiting: number +diff --git a/src/VBox/Additions/haiku/SharedFolders/vboxsf.c b/src/VBox/Additions/haiku/SharedFolders/vboxsf.c +index c4eec30..012f66b 100644 +--- a/src/VBox/Additions/haiku/SharedFolders/vboxsf.c ++++ b/src/VBox/Additions/haiku/SharedFolders/vboxsf.c +@@ -55,6 +55,7 @@ static fs_vnode_ops vboxsf_vnode_ops; + + status_t init_module(void) + { ++ int rc; + #if 0 + /* @todo enable this soon */ + int rc = get_module(VBOXGUEST_MODULE_NAME, (module_info **)&g_VBoxGuest); +@@ -98,7 +99,10 @@ status_t init_module(void) + return B_ERROR; + } + +- if (RT_FAILURE(vboxInit())) ++ rc = vboxInit(); ++ dprintf("rc=%d\n", rc); ++ if (RT_FAILURE(rc)) ++ //if (RT_FAILURE(vboxInit())) + { + dprintf("vboxInit failed\n"); + return B_ERROR; +@@ -136,6 +140,7 @@ void uninit_module(void) + + PSHFLSTRING make_shflstring(const char* const s) + { ++ PSHFLSTRING rv; + int len = strlen(s); + if (len > 0xFFFE) + { +@@ -143,7 +148,7 @@ PSHFLSTRING make_shflstring(const char* const s) + return NULL; + } + +- PSHFLSTRING rv = malloc(sizeof(SHFLSTRING) + len); ++ rv = malloc(sizeof(SHFLSTRING) + len); + if (!rv) + return NULL; + +@@ -194,12 +199,14 @@ PSHFLSTRING concat_cstr_shflstring(const char* const s1, PSHFLSTRING s2) + + PSHFLSTRING build_path(vboxsf_vnode* dir, const char* const name) + { ++ size_t len; ++ PSHFLSTRING rv; + dprintf("*** build_path(%p, %p)\n", dir, name); + if (!dir || !name) + return NULL; + +- size_t len = dir->path->u16Length + strlen(name) + 1; +- PSHFLSTRING rv = malloc(sizeof(SHFLSTRING) + len); ++ len = dir->path->u16Length + strlen(name) + 1; ++ rv = malloc(sizeof(SHFLSTRING) + len); + if (rv) + { + strcpy(rv->String.utf8, dir->path->String.utf8); +@@ -214,6 +221,10 @@ PSHFLSTRING build_path(vboxsf_vnode* dir, const char* const name) + + status_t mount(fs_volume *volume, const char *device, uint32 flags, const char *args, ino_t *_rootVnodeID) + { ++ PSHFLSTRING sharename; ++ vboxsf_volume* vbsfvolume; ++ int rv; ++ + if (device) + { + dprintf(FS_NAME ": trying to mount a real device as a vbox share is silly\n"); +@@ -222,16 +233,17 @@ status_t mount(fs_volume *volume, const char *device, uint32 flags, const char * + + dprintf(FS_NAME ": mount(%s)\n", args); + +- PSHFLSTRING sharename = make_shflstring(args); ++ sharename = make_shflstring(args); + +- vboxsf_volume* vbsfvolume = malloc(sizeof(vboxsf_volume)); ++ vbsfvolume = malloc(sizeof(vboxsf_volume)); + volume->private_volume = vbsfvolume; +- int rv = vboxCallMapFolder(&g_clientHandle, sharename, &(vbsfvolume->map)); ++ rv = vboxCallMapFolder(&g_clientHandle, sharename, &(vbsfvolume->map)); + free(sharename); + + if (rv == 0) + { + vboxsf_vnode* root_vnode; ++ status_t rs; + + PSHFLSTRING name = make_shflstring(""); + if (!name) +@@ -240,7 +252,7 @@ status_t mount(fs_volume *volume, const char *device, uint32 flags, const char * + return B_NO_MEMORY; + } + +- status_t rs = vboxsf_new_vnode(&vbsfvolume->map, name, name, &root_vnode); ++ rs = vboxsf_new_vnode(&vbsfvolume->map, name, name, &root_vnode); + dprintf(FS_NAME ": allocated %p (path=%p name=%p)\n", root_vnode, root_vnode->path, root_vnode->name); + + if (rs != B_OK) +@@ -323,12 +335,13 @@ status_t vboxsf_open_dir(fs_volume* _volume, fs_vnode* _vnode, void** _cookie) + vboxsf_volume* volume = _volume->private_volume; + vboxsf_vnode* vnode = _vnode->private_node; + SHFLCREATEPARMS params; ++ int rc; + + RT_ZERO(params); + params.Handle = SHFL_HANDLE_NIL; + params.CreateFlags = SHFL_CF_DIRECTORY | SHFL_CF_ACT_OPEN_IF_EXISTS | SHFL_CF_ACT_FAIL_IF_NEW | SHFL_CF_ACCESS_READ; + +- int rc = vboxCallCreate(&g_clientHandle, &volume->map, vnode->path, ¶ms); ++ rc = vboxCallCreate(&g_clientHandle, &volume->map, vnode->path, ¶ms); + if (RT_SUCCESS(rc)) + { + if (params.Result == SHFL_FILE_EXISTS && params.Handle != SHFL_HANDLE_NIL) +@@ -358,17 +371,23 @@ status_t vboxsf_open_dir(fs_volume* _volume, fs_vnode* _vnode, void** _cookie) + status_t vboxsf_read_dir_1(vboxsf_volume* volume, vboxsf_vnode* vnode, vboxsf_dir_cookie* cookie, + struct dirent* buffer, size_t bufferSize) + { ++ PSHFLSTRING name1; ++ int rv; ++ vboxsf_vnode* new_vnode; ++ size_t size; ++ + dprintf("%p, %d, %p\n", cookie, cookie->has_more_files, cookie->buffer); + if (!cookie->has_more_files) + return B_ENTRY_NOT_FOUND; + + if (!cookie->buffer) + { ++ int rc; + cookie->buffer_length = 16384; + cookie->buffer_start = cookie->buffer = malloc(cookie->buffer_length); + +- int rc = vboxCallDirInfo(&g_clientHandle, &volume->map, cookie->handle, cookie->path, 0, cookie->index, +- &cookie->buffer_length, cookie->buffer, &cookie->num_files); ++ rc = vboxCallDirInfo(&g_clientHandle, &volume->map, cookie->handle, cookie->path, 0, cookie->index, ++ &cookie->buffer_length, cookie->buffer, &cookie->num_files); + + if (rc != 0 && rc != VERR_NO_MORE_FILES) + { +@@ -393,15 +412,14 @@ status_t vboxsf_read_dir_1(vboxsf_volume* volume, vboxsf_vnode* vnode, vboxsf_di + return B_BUFFER_OVERFLOW; + } + +- PSHFLSTRING name1 = clone_shflstring(&cookie->buffer->name); ++ name1 = clone_shflstring(&cookie->buffer->name); + if (!name1) + { + dprintf(FS_NAME ": make_shflstring() failed\n"); + return B_NO_MEMORY; + } + +- vboxsf_vnode* new_vnode; +- int rv = vboxsf_new_vnode(&volume->map, build_path(vnode, name1->String.utf8), name1, &new_vnode); ++ rv = vboxsf_new_vnode(&volume->map, build_path(vnode, name1->String.utf8), name1, &new_vnode); + if (rv != B_OK) + { + dprintf(FS_NAME ": vboxsf_new_vnode() failed\n"); +@@ -415,7 +433,7 @@ status_t vboxsf_read_dir_1(vboxsf_volume* volume, vboxsf_vnode* vnode, vboxsf_di + buffer->d_reclen = sizeof(struct dirent) + cookie->buffer->name.u16Length; + strncpy(buffer->d_name, cookie->buffer->name.String.utf8, NAME_MAX); + +- size_t size = offsetof(SHFLDIRINFO, name.String) + cookie->buffer->name.u16Size; ++ size = offsetof(SHFLDIRINFO, name.String) + cookie->buffer->name.u16Size; + cookie->buffer = ((void*)cookie->buffer + size); + cookie->index++; + +@@ -504,22 +522,24 @@ status_t vboxsf_read_fs_info(fs_volume* _volume, struct fs_info* info) + + status_t vboxsf_lookup(fs_volume* _volume, fs_vnode* dir, const char* name, ino_t* _id) + { +- dprintf(FS_NAME ": lookup %s\n", name); + vboxsf_volume* volume = _volume->private_volume; + SHFLCREATEPARMS params; ++ PSHFLSTRING path; ++ int rc; ++ dprintf(FS_NAME ": lookup %s\n", name); + + RT_ZERO(params); + params.Handle = SHFL_HANDLE_NIL; + params.CreateFlags = SHFL_CF_LOOKUP | SHFL_CF_ACT_FAIL_IF_NEW; + +- PSHFLSTRING path = build_path(dir->private_node, name); ++ path = build_path(dir->private_node, name); + if (!path) + { + dprintf(FS_NAME ": make_shflstring() failed\n"); + return B_NO_MEMORY; + } + +- int rc = vboxCallCreate(&g_clientHandle, &volume->map, path, ¶ms); ++ rc = vboxCallCreate(&g_clientHandle, &volume->map, path, ¶ms); + if (RT_SUCCESS(rc)) + { + if (params.Result == SHFL_FILE_EXISTS) +@@ -600,11 +620,12 @@ status_t vboxsf_open(fs_volume* _volume, fs_vnode* _vnode, int openMode, void** + { + vboxsf_volume* volume = _volume->private_volume; + vboxsf_vnode* vnode = _vnode->private_node; ++ SHFLCREATEPARMS params; ++ int rc; ++ vboxsf_file_cookie* cookie; + + dprintf(FS_NAME ": open %s (mode=%x)\n", vnode->path->String.utf8, openMode); + +- SHFLCREATEPARMS params; +- + RT_ZERO(params); + params.Handle = SHFL_HANDLE_NIL; + +@@ -637,14 +658,14 @@ status_t vboxsf_open(fs_volume* _volume, fs_vnode* _vnode, int openMode, void** + params.CreateFlags |= SHFL_CF_ACT_OPEN_IF_EXISTS; + } + +- int rc = vboxCallCreate(&g_clientHandle, &volume->map, vnode->path, ¶ms); ++ rc = vboxCallCreate(&g_clientHandle, &volume->map, vnode->path, ¶ms); + if (!RT_SUCCESS(rc)) + { + dprintf("vboxCallCreate returned %d\n", rc); + return vbox_err_to_haiku_err(rc); + } + +- vboxsf_file_cookie* cookie = malloc(sizeof(vboxsf_file_cookie)); ++ cookie = malloc(sizeof(vboxsf_file_cookie)); + if (!cookie) + { + dprintf("couldn't allocate file cookie\n"); +@@ -665,6 +686,9 @@ status_t vboxsf_create(fs_volume* _volume, fs_vnode* _dir, const char *name, int + vboxsf_volume* volume = _volume->private_volume; + + SHFLCREATEPARMS params; ++ PSHFLSTRING path; ++ int rc; ++ vboxsf_file_cookie* cookie; + + RT_ZERO(params); + params.Handle = SHFL_HANDLE_NIL; +@@ -698,8 +722,8 @@ status_t vboxsf_create(fs_volume* _volume, fs_vnode* _dir, const char *name, int + params.CreateFlags |= SHFL_CF_ACT_OPEN_IF_EXISTS; + } + +- PSHFLSTRING path = build_path(_dir->private_node, name); +- int rc = vboxCallCreate(&g_clientHandle, &volume->map, path, ¶ms); ++ path = build_path(_dir->private_node, name); ++ rc = vboxCallCreate(&g_clientHandle, &volume->map, path, ¶ms); + + if (!RT_SUCCESS(rc)) + { +@@ -708,7 +732,7 @@ status_t vboxsf_create(fs_volume* _volume, fs_vnode* _dir, const char *name, int + return vbox_err_to_haiku_err(rc); + } + +- vboxsf_file_cookie* cookie = malloc(sizeof(vboxsf_file_cookie)); ++ cookie = malloc(sizeof(vboxsf_file_cookie)); + if (!cookie) + { + dprintf("couldn't allocate file cookie\n"); +@@ -761,13 +785,16 @@ status_t vboxsf_read(fs_volume* _volume, fs_vnode* _vnode, void* _cookie, off_t + vboxsf_volume* volume = _volume->private_volume; + vboxsf_vnode* vnode = _vnode->private_node; + vboxsf_file_cookie* cookie = _cookie; ++ uint32_t l; ++ void* other_buffer; ++ int rc; + + if (*length > 0xFFFFFFFF) + *length = 0xFFFFFFFF; + +- uint32_t l = *length; +- void* other_buffer = malloc(l); /* @todo map the user memory into kernel space here for efficiency */ +- int rc = vboxCallRead(&g_clientHandle, &volume->map, cookie->handle, pos, &l, other_buffer, false); ++ l = *length; ++ other_buffer = malloc(l); /* @todo map the user memory into kernel space here for efficiency */ ++ rc = vboxCallRead(&g_clientHandle, &volume->map, cookie->handle, pos, &l, other_buffer, false); + memcpy(buffer, other_buffer, l); + free(other_buffer); + +@@ -782,14 +809,17 @@ status_t vboxsf_write(fs_volume* _volume, fs_vnode* _vnode, void* _cookie, off_t + vboxsf_volume* volume = _volume->private_volume; + vboxsf_vnode* vnode = _vnode->private_node; + vboxsf_file_cookie* cookie = _cookie; ++ uint32_t l; ++ void* other_buffer; ++ int rc; + + if (*length > 0xFFFFFFFF) + *length = 0xFFFFFFFF; + +- uint32_t l = *length; +- void* other_buffer = malloc(l); /* @todo map the user memory into kernel space here for efficiency */ ++ l = *length; ++ other_buffer = malloc(l); /* @todo map the user memory into kernel space here for efficiency */ + memcpy(other_buffer, buffer, l); +- int rc = vboxCallWrite(&g_clientHandle, &volume->map, cookie->handle, pos, &l, other_buffer, false); ++ rc = vboxCallWrite(&g_clientHandle, &volume->map, cookie->handle, pos, &l, other_buffer, false); + free(other_buffer); + + *length = l; +@@ -807,6 +837,8 @@ status_t vboxsf_write_stat(fs_volume *volume, fs_vnode *vnode, const struct stat + status_t vboxsf_create_dir(fs_volume *_volume, fs_vnode *parent, const char *name, int perms) + { + vboxsf_volume* volume = _volume->private_volume; ++ PSHFLSTRING path; ++ int rc; + + SHFLCREATEPARMS params; + params.Handle = 0; +@@ -814,8 +846,8 @@ status_t vboxsf_create_dir(fs_volume *_volume, fs_vnode *parent, const char *nam + params.CreateFlags = SHFL_CF_DIRECTORY | SHFL_CF_ACT_CREATE_IF_NEW | + SHFL_CF_ACT_FAIL_IF_EXISTS | SHFL_CF_ACCESS_READ; + +- PSHFLSTRING path = build_path(parent->private_node, name); +- int rc = vboxCallCreate(&g_clientHandle, &volume->map, path, ¶ms); ++ path = build_path(parent->private_node, name); ++ rc = vboxCallCreate(&g_clientHandle, &volume->map, path, ¶ms); + free(path); + /** @todo r=ramshankar: we should perhaps also check rc here and change + * Handle initialization from 0 to SHFL_HANDLE_NIL. */ +@@ -879,9 +911,10 @@ status_t vboxsf_create_symlink(fs_volume* _volume, fs_vnode* dir, const char* na + PSHFLSTRING target = make_shflstring(path); + PSHFLSTRING linkpath = build_path(dir->private_node, name); + SHFLFSOBJINFO stuff; ++ int rc; + RT_ZERO(stuff); + +- int rc = vboxCallSymlink(&g_clientHandle, &volume->map, linkpath, target, &stuff); ++ rc = vboxCallSymlink(&g_clientHandle, &volume->map, linkpath, target, &stuff); + + free(target); + free(linkpath); +diff --git a/src/VBox/Additions/haiku/VBoxMouse/Makefile.kmk b/src/VBox/Additions/haiku/VBoxMouse/Makefile.kmk +index 0423daa..6b88540 100644 +--- a/src/VBox/Additions/haiku/VBoxMouse/Makefile.kmk ++++ b/src/VBox/Additions/haiku/VBoxMouse/Makefile.kmk +@@ -52,7 +52,7 @@ include $(KBUILD_PATH)/subheader.kmk + # R1 will need gcc2-built input_server add-ons. + + PROGRAMS += VBoxMouse +-VBoxMouse_TEMPLATE = VBOXGUESTR3EXE ++VBoxMouse_TEMPLATE = NewVBoxGuestR3Exe + VBoxMouse_DEFS = VBOX_WITH_HGCM LOG_TO_BACKDOOR + VBoxMouse_DEFS += LOG_ENABLED + VBoxMouse_INCS = ../include +@@ -67,7 +67,7 @@ VBoxMouse_LIBS = \ + /system/servers/input_server + + PROGRAMS += VBoxMouseFilter +-VBoxMouseFilter_TEMPLATE = VBOXGUESTR3EXE ++VBoxMouseFilter_TEMPLATE = NewVBoxGuestR3Exe + VBoxMouseFilter_DEFS = VBOX_WITH_HGCM LOG_TO_BACKDOOR + VBoxMouseFilter_DEFS += LOG_ENABLED + VBoxMouseFilter_INCS = ../include +diff --git a/src/VBox/Additions/haiku/VBoxTray/Makefile.kmk b/src/VBox/Additions/haiku/VBoxTray/Makefile.kmk +index a79a82e..130cfd9 100644 +--- a/src/VBox/Additions/haiku/VBoxTray/Makefile.kmk ++++ b/src/VBox/Additions/haiku/VBoxTray/Makefile.kmk +@@ -51,7 +51,7 @@ include $(KBUILD_PATH)/subheader.kmk + # single bin will cause problems loading gcc4 binary from a gcc2-built Deskbar! + + PROGRAMS += VBoxTray +-VBoxTray_TEMPLATE = VBOXGUESTR3EXE ++VBoxTray_TEMPLATE = NewVBoxGuestR3Exe + VBoxTray_DEFS = VBOX_WITH_HGCM LOG_TO_BACKDOOR + VBoxTray_DEFS += LOG_ENABLED + VBoxTray_INCS = ../include +diff --git a/src/VBox/Additions/haiku/VBoxTray/VBoxGuestApplication.cpp b/src/VBox/Additions/haiku/VBoxTray/VBoxGuestApplication.cpp +index 0690ff3..6cdee5a 100644 +--- a/src/VBox/Additions/haiku/VBoxTray/VBoxGuestApplication.cpp ++++ b/src/VBox/Additions/haiku/VBoxTray/VBoxGuestApplication.cpp +@@ -75,6 +75,7 @@ void VBoxGuestApplication::ReadyToRun() + status_t err; + + err = VBoxGuestDeskbarView::AddToDeskbar(); ++ printf("error 0x%08lx\n", err); + LogFlow(("VBoxGuestDeskbarView::ReadyToRun: AddToDeskbar returned 0x%08lx\n", err)); + exit(0); + } +diff --git a/src/VBox/Additions/haiku/VBoxTray/VBoxGuestDeskbarView.cpp b/src/VBox/Additions/haiku/VBoxTray/VBoxGuestDeskbarView.cpp +index 1da72bc..56246a2 100644 +--- a/src/VBox/Additions/haiku/VBoxTray/VBoxGuestDeskbarView.cpp ++++ b/src/VBox/Additions/haiku/VBoxTray/VBoxGuestDeskbarView.cpp +@@ -47,6 +47,7 @@ + * Header Files * + *******************************************************************************/ + #include ++#include + #include + #include + #include +@@ -83,7 +84,8 @@ our_image(image_info& image) + VBoxGuestDeskbarView::VBoxGuestDeskbarView() + : BView(BRect(0, 0, 15, 15), VIEWNAME, B_FOLLOW_NONE, + B_WILL_DRAW | B_NAVIGABLE), +- fIcon(NULL), fClipboardService(NULL), fDisplayService(NULL) ++ fIcon(NULL), fInitStatus(B_NO_INIT), ++ fClipboardService(NULL), fDisplayService(NULL) + { + _Init(); + } +@@ -91,7 +93,8 @@ VBoxGuestDeskbarView::VBoxGuestDeskbarView() + + VBoxGuestDeskbarView::VBoxGuestDeskbarView(BMessage *archive) + : BView(archive), +- fIcon(NULL) ++ fIcon(NULL), fInitStatus(B_NO_INIT), ++ fClipboardService(NULL), fDisplayService(NULL) + { + archive->PrintToStream(); + _Init(archive); +@@ -106,7 +109,13 @@ VBoxGuestDeskbarView::~VBoxGuestDeskbarView() + fClipboardService->Disconnect(); + delete fClipboardService; + } +- VbglR3Term(); ++ if (fDisplayService) ++ { ++ //fDisplayService->Disconnect(); ++ delete fDisplayService; ++ } ++ if (fInitStatus == B_OK) ++ VbglR3Term(); + } + + +@@ -165,8 +174,10 @@ void VBoxGuestDeskbarView::AttachedToWindow() + void VBoxGuestDeskbarView::DetachedFromWindow() + { + BMessage message(B_QUIT_REQUESTED); +- fClipboardService->MessageReceived(&message); +- fDisplayService->MessageReceived(&message); ++ if (fClipboardService) ++ fClipboardService->MessageReceived(&message); ++ if (fDisplayService) ++ fDisplayService->MessageReceived(&message); + } + + +@@ -197,7 +208,7 @@ void VBoxGuestDeskbarView::MessageReceived(BMessage *message) + if (message->what == B_QUIT_REQUESTED) + RemoveFromDeskbar(); + else +- BHandler::MessageReceived(message); ++ BView::MessageReceived(message); + } + + +@@ -217,7 +228,9 @@ status_t VBoxGuestDeskbarView::AddToDeskbar(bool force) + return err; + + BPath p(&info.ref); +- return deskbar.AddItem(&info.ref); ++ printf("%s:%s\n", __FUNCTION__, p.Path()); ++ int32 id; ++ return deskbar.AddItem(&info.ref, &id); + } + + +@@ -260,14 +273,15 @@ status_t VBoxGuestDeskbarView::_Init(BMessage *archive) + fIcon = BTranslationUtils::GetBitmap(&mem); + } + +- int rc = RTR3InitDll(RTR3INIT_FLAGS_UNOBTRUSIVE); ++ int rc = RTR3InitDll(RTR3INIT_FLAGS_SUPLIB | RTR3INIT_FLAGS_UNOBTRUSIVE | RTR3INIT_FLAGS_UTF8_ARGV); + if (RT_SUCCESS(rc)) + { + rc = VbglR3Init(); + if (RT_SUCCESS(rc)) + { + fClipboardService = new VBoxClipboardService(); +- fDisplayService = new VBoxDisplayService(); ++ //fDisplayService = new VBoxDisplayService(); ++ fInitStatus = B_OK; + } + else + LogRel(("VBoxGuestDeskbarView::_init VbglR3Init failed. rc=%d\n", rc)); +@@ -278,8 +292,10 @@ status_t VBoxGuestDeskbarView::_Init(BMessage *archive) + } + + ++extern "C" { + RTDECL(BView*) instantiate_deskbar_item() + { ++ printf("%s()\n", __FUNCTION__); + return new VBoxGuestDeskbarView(); + } +- ++} // C +diff --git a/src/VBox/Additions/haiku/VBoxTray/VBoxGuestDeskbarView.h b/src/VBox/Additions/haiku/VBoxTray/VBoxGuestDeskbarView.h +index 2bd4bc5..d4842d9 100644 +--- a/src/VBox/Additions/haiku/VBoxTray/VBoxGuestDeskbarView.h ++++ b/src/VBox/Additions/haiku/VBoxTray/VBoxGuestDeskbarView.h +@@ -88,6 +88,7 @@ class VBoxGuestDeskbarView : public BView + status_t _Init(BMessage *archive = NULL); + BBitmap *fIcon; + ++ status_t fInitStatus; + VBoxClipboardService *fClipboardService; + VBoxDisplayService *fDisplayService; + }; +diff --git a/src/VBox/Runtime/VBox/log-vbox.cpp b/src/VBox/Runtime/VBox/log-vbox.cpp +index dc10c4a..9010890 100644 +--- a/src/VBox/Runtime/VBox/log-vbox.cpp ++++ b/src/VBox/Runtime/VBox/log-vbox.cpp +@@ -423,7 +423,7 @@ RTDECL(PRTLOGGER) RTLogDefaultInit(void) + + # else /* IN_GUEST */ + /* The user destination is backdoor logging. */ +- rc = RTLogCreate(&pLogger, 0, NULL, "VBOX_LOG", RT_ELEMENTS(g_apszGroups), &g_apszGroups[0], RTLOGDEST_USER, "VBox.log"); ++ rc = RTLogCreate(&pLogger, 0, NULL, "VBOX_LOG", RT_ELEMENTS(g_apszGroups), &g_apszGroups[0], RTLOGDEST_USER, "VirtualBox.log"); + # endif /* IN_GUEST */ + + #else /* IN_RING0 */ +@@ -492,6 +492,11 @@ RTDECL(PRTLOGGER) RTLogDefaultInit(void) + RTLogFlags(pLogger, "enabled unbuffered tid"); + pLogger->fDestFlags |= RTLOGDEST_DEBUGGER | RTLOGDEST_STDOUT; + # endif ++# if 1 /* vboxdrv logging - ATTENTION: this is what we're referring to guys! Change to '# if 1'. */ ++ RTLogGroupSettings(pLogger, "+all"); ++ RTLogFlags(pLogger, "enabled unbuffered tid"); ++ pLogger->fDestFlags |= RTLOGDEST_DEBUGGER | RTLOGDEST_STDOUT; ++# endif + } + #endif /* IN_RING0 */ + return g_pLogger = RT_SUCCESS(rc) ? pLogger : NULL; +diff --git a/src/VBox/Runtime/r0drv/haiku/RTLogWriteDebugger-r0drv-haiku.c b/src/VBox/Runtime/r0drv/haiku/RTLogWriteDebugger-r0drv-haiku.c +index e301aa8..d47e7c6 100644 +--- a/src/VBox/Runtime/r0drv/haiku/RTLogWriteDebugger-r0drv-haiku.c ++++ b/src/VBox/Runtime/r0drv/haiku/RTLogWriteDebugger-r0drv-haiku.c +@@ -36,6 +36,7 @@ + RTDECL(void) RTLogWriteDebugger(const char *pch, size_t cb) + { + /** @todo implement this */ ++ dprintf("%.*s", (int)cb, pch); + /*kprintf("%.*s", (int)cb, pch);*/ + return; + } +diff --git a/src/VBox/Runtime/r0drv/haiku/alloc-r0drv-haiku.c b/src/VBox/Runtime/r0drv/haiku/alloc-r0drv-haiku.c +index 7617aaf..d1fae9a 100644 +--- a/src/VBox/Runtime/r0drv/haiku/alloc-r0drv-haiku.c ++++ b/src/VBox/Runtime/r0drv/haiku/alloc-r0drv-haiku.c +@@ -44,10 +44,12 @@ + */ + int rtR0MemAllocEx(size_t cb, uint32_t fFlags, PRTMEMHDR *ppHdr) + { ++ PRTMEMHDR pHdr; ++ + if (RT_UNLIKELY(fFlags & RTMEMHDR_FLAG_ANY_CTX)) + return VERR_NOT_SUPPORTED; + +- PRTMEMHDR pHdr = (PRTMEMHDR)malloc(cb + sizeof(*pHdr)); ++ pHdr = (PRTMEMHDR)malloc(cb + sizeof(*pHdr)); + if (RT_UNLIKELY(!pHdr)) + { + LogRel(("rtR0MemAllocEx(%u, %#x) failed\n",(unsigned)cb + sizeof(*pHdr), fFlags)); +@@ -75,6 +77,9 @@ void rtR0MemFree(PRTMEMHDR pHdr) + + RTR0DECL(void *) RTMemContAlloc(PRTCCPHYS pPhys, size_t cb) RT_NO_THROW + { ++ void *pv; ++ area_id area; ++ + /* + * Validate input. + */ +@@ -87,8 +92,7 @@ RTR0DECL(void *) RTMemContAlloc(PRTCCPHYS pPhys, size_t cb) RT_NO_THROW + * memory that's always below 4GB. + */ + cb = RT_ALIGN_Z(cb, PAGE_SIZE); +- void *pv; +- area_id area = create_area("VirtualBox Contig Alloc", &pv, B_ANY_KERNEL_ADDRESS, cb, B_32_BIT_CONTIGUOUS, ++ area = create_area("VirtualBox Contig Alloc", &pv, B_ANY_KERNEL_ADDRESS, cb, B_32_BIT_CONTIGUOUS, + B_READ_AREA | B_WRITE_AREA); + if (area >= 0) + { +@@ -112,9 +116,10 @@ RTR0DECL(void) RTMemContFree(void *pv, size_t cb) RT_NO_THROW + RT_ASSERT_PREEMPTIBLE(); + if (pv) + { ++ area_id area; + Assert(cb > 0); + +- area_id area = area_for(pv); ++ area = area_for(pv); + if (area >= B_OK) + delete_area(area); + else +diff --git a/src/VBox/Runtime/r0drv/haiku/memobj-r0drv-haiku.c b/src/VBox/Runtime/r0drv/haiku/memobj-r0drv-haiku.c +index 83dac1d..984e973 100644 +--- a/src/VBox/Runtime/r0drv/haiku/memobj-r0drv-haiku.c ++++ b/src/VBox/Runtime/r0drv/haiku/memobj-r0drv-haiku.c +@@ -153,13 +153,15 @@ int rtR0MemObjNativeFree(RTR0MEMOBJ pMem) + static int rtR0MemObjNativeAllocArea(PPRTR0MEMOBJINTERNAL ppMem, size_t cb, + bool fExecutable, RTR0MEMOBJTYPE type, RTHCPHYS PhysHighest, size_t uAlignment) + { +- NOREF(fExecutable); +- + int rc; + void *pvMap = NULL; + const char *pszName = NULL; + uint32 addressSpec = B_ANY_KERNEL_ADDRESS; + uint32 fLock = ~0U; ++ PRTR0MEMOBJHAIKU pMemHaiku; ++ ++ NOREF(fExecutable); ++ + LogFlowFunc(("ppMem=%p cb=%u, fExecutable=%s, type=%08x, PhysHighest=%RX64 uAlignment=%u\n", ppMem,(unsigned)cb, + fExecutable ? "true" : "false", type, PhysHighest,(unsigned)uAlignment)); + +@@ -201,7 +203,6 @@ static int rtR0MemObjNativeAllocArea(PPRTR0MEMOBJINTERNAL ppMem, size_t cb, + } + + /* Create the object. */ +- PRTR0MEMOBJHAIKU pMemHaiku; + pMemHaiku = (PRTR0MEMOBJHAIKU)rtR0MemObjNew(sizeof(RTR0MEMOBJHAIKU), type, NULL, cb); + if (RT_UNLIKELY(!pMemHaiku)) + return VERR_NO_MEMORY; +@@ -277,11 +278,13 @@ int rtR0MemObjNativeAllocPhysNC(PPRTR0MEMOBJINTERNAL ppMem, size_t cb, RTHCPHYS + + int rtR0MemObjNativeEnterPhys(PPRTR0MEMOBJINTERNAL ppMem, RTHCPHYS Phys, size_t cb, uint32_t uCachePolicy) + { ++ PRTR0MEMOBJHAIKU pMemHaiku; ++ + AssertReturn(uCachePolicy == RTMEM_CACHE_POLICY_DONT_CARE, VERR_NOT_SUPPORTED); + LogFlowFunc(("ppMem=%p Phys=%08x cb=%u uCachePolicy=%x\n", ppMem, Phys,(unsigned)cb, uCachePolicy)); + + /* Create the object. */ +- PRTR0MEMOBJHAIKU pMemHaiku = (PRTR0MEMOBJHAIKU)rtR0MemObjNew(sizeof(*pMemHaiku), RTR0MEMOBJTYPE_PHYS, NULL, cb); ++ pMemHaiku = (PRTR0MEMOBJHAIKU)rtR0MemObjNew(sizeof(*pMemHaiku), RTR0MEMOBJTYPE_PHYS, NULL, cb); + if (!pMemHaiku) + return VERR_NO_MEMORY; + +@@ -311,15 +314,16 @@ int rtR0MemObjNativeEnterPhys(PPRTR0MEMOBJINTERNAL ppMem, RTHCPHYS Phys, size_t + static int rtR0MemObjNativeLockInMap(PPRTR0MEMOBJINTERNAL ppMem, void *pvStart, size_t cb, uint32_t fAccess, + RTR0PROCESS R0Process, int fFlags) + { +- NOREF(fAccess); + int rc; + team_id TeamId = B_SYSTEM_TEAM; ++ PRTR0MEMOBJHAIKU pMemHaiku; ++ NOREF(fAccess); + + LogFlowFunc(("ppMem=%p pvStart=%p cb=%u fAccess=%x R0Process=%d fFlags=%x\n", ppMem, pvStart, cb, fAccess, R0Process, + fFlags)); + + /* Create the object. */ +- PRTR0MEMOBJHAIKU pMemHaiku = (PRTR0MEMOBJHAIKU)rtR0MemObjNew(sizeof(*pMemHaiku), RTR0MEMOBJTYPE_LOCK, pvStart, cb); ++ pMemHaiku = (PRTR0MEMOBJHAIKU)rtR0MemObjNew(sizeof(*pMemHaiku), RTR0MEMOBJTYPE_LOCK, pvStart, cb); + if (RT_UNLIKELY(!pMemHaiku)) + return VERR_NO_MEMORY; + +@@ -605,10 +609,11 @@ RTHCPHYS rtR0MemObjNativeGetPagePhysAddr(PRTR0MEMOBJINTERNAL pMem, size_t iPage) + team_id TeamId = B_SYSTEM_TEAM; + physical_entry aPhysMap[2]; + int32 cPhysMap = 2; /** @todo r=ramshankar: why not use RT_ELEMENTS? */ ++ void *pb; + + if (pMemHaiku->Core.u.Lock.R0Process != NIL_RTR0PROCESS) + TeamId = (team_id)pMemHaiku->Core.u.Lock.R0Process; +- void *pb = pMemHaiku->Core.pv + (iPage << PAGE_SHIFT); ++ pb = pMemHaiku->Core.pv + (iPage << PAGE_SHIFT); + + rc = get_memory_map_etc(TeamId, pb, B_PAGE_SIZE, aPhysMap, &cPhysMap); + if (rc < B_OK || cPhysMap < 1) +diff --git a/src/VBox/Runtime/r0drv/haiku/semevent-r0drv-haiku.c b/src/VBox/Runtime/r0drv/haiku/semevent-r0drv-haiku.c +index 9000aef..b94af77 100644 +--- a/src/VBox/Runtime/r0drv/haiku/semevent-r0drv-haiku.c ++++ b/src/VBox/Runtime/r0drv/haiku/semevent-r0drv-haiku.c +@@ -66,12 +66,15 @@ RTDECL(int) RTSemEventCreate(PRTSEMEVENT phEventSem) + + RTDECL(int) RTSemEventCreateEx(PRTSEMEVENT phEventSem, uint32_t fFlags, RTLOCKVALCLASS hClass, const char *pszNameFmt, ...) + { ++ PRTSEMEVENTINTERNAL pThis; ++ + AssertCompile(sizeof(RTSEMEVENTINTERNAL) > sizeof(void *)); + AssertReturn(!(fFlags & ~(RTSEMEVENT_FLAGS_NO_LOCK_VAL | RTSEMEVENT_FLAGS_BOOTSTRAP_HACK)), VERR_INVALID_PARAMETER); + Assert(!(fFlags & RTSEMEVENT_FLAGS_BOOTSTRAP_HACK) || (fFlags & RTSEMEVENT_FLAGS_NO_LOCK_VAL)); ++ dprintf("phEventSem: %p\n", phEventSem); + AssertPtrReturn(phEventSem, VERR_INVALID_POINTER); + +- PRTSEMEVENTINTERNAL pThis = (PRTSEMEVENTINTERNAL)RTMemAllocZ(sizeof(*pThis)); ++ pThis = (PRTSEMEVENTINTERNAL)RTMemAllocZ(sizeof(*pThis)); + if (!pThis) + return VERR_NO_MEMORY; + +diff --git a/src/VBox/Runtime/r0drv/haiku/semeventmulti-r0drv-haiku.c b/src/VBox/Runtime/r0drv/haiku/semeventmulti-r0drv-haiku.c +index 2e4fc31..b0cf6ce 100644 +--- a/src/VBox/Runtime/r0drv/haiku/semeventmulti-r0drv-haiku.c ++++ b/src/VBox/Runtime/r0drv/haiku/semeventmulti-r0drv-haiku.c +@@ -76,7 +76,7 @@ RTDECL(int) RTSemEventMultiCreateEx(PRTSEMEVENTMULTI phEventMultiSem, uint32_t + pThis->u32Magic = RTSEMEVENTMULTI_MAGIC; + pThis->cRefs = 1; + pThis->SemId = create_sem(0, "IPRT Semaphore Event Multi"); +- if (pThis->SemId < B_OK) ++ if (pThis->SemId >= B_OK) + { + set_sem_owner(pThis->SemId, B_SYSTEM_TEAM); + *phEventMultiSem = pThis; +diff --git a/src/VBox/Runtime/r0drv/haiku/semfastmutex-r0drv-haiku.c b/src/VBox/Runtime/r0drv/haiku/semfastmutex-r0drv-haiku.c +index 3b28b1a..1c66df5 100644 +--- a/src/VBox/Runtime/r0drv/haiku/semfastmutex-r0drv-haiku.c ++++ b/src/VBox/Runtime/r0drv/haiku/semfastmutex-r0drv-haiku.c +@@ -57,10 +57,13 @@ typedef struct RTSEMFASTMUTEXINTERNAL + + RTDECL(int) RTSemFastMutexCreate(PRTSEMFASTMUTEX phFastMtx) + { ++ PRTSEMFASTMUTEXINTERNAL pThis; ++ + AssertCompile(sizeof(RTSEMFASTMUTEXINTERNAL) > sizeof(void *)); ++ dprintf("phFastMtx: %p\n", phFastMtx); + AssertPtrReturn(phFastMtx, VERR_INVALID_POINTER); + +- PRTSEMFASTMUTEXINTERNAL pThis = (PRTSEMFASTMUTEXINTERNAL)RTMemAllocZ(sizeof(*pThis)); ++ pThis = (PRTSEMFASTMUTEXINTERNAL)RTMemAllocZ(sizeof(*pThis)); + if (RT_UNLIKELY(!pThis)) + return VERR_NO_MEMORY; + +diff --git a/src/VBox/Runtime/r0drv/haiku/semmutex-r0drv-haiku.c b/src/VBox/Runtime/r0drv/haiku/semmutex-r0drv-haiku.c +index 9e8f3ba..5d238d4 100644 +--- a/src/VBox/Runtime/r0drv/haiku/semmutex-r0drv-haiku.c ++++ b/src/VBox/Runtime/r0drv/haiku/semmutex-r0drv-haiku.c +@@ -65,16 +65,19 @@ typedef struct RTSEMMUTEXINTERNAL + + RTDECL(int) RTSemMutexCreate(PRTSEMMUTEX phMutexSem) + { ++ PRTSEMMUTEXINTERNAL pThis; ++ + AssertCompile(sizeof(RTSEMMUTEXINTERNAL) > sizeof(void *)); ++ dprintf("phMutexSem: %p\n", phMutexSem); + AssertPtrReturn(phMutexSem, VERR_INVALID_POINTER); + +- PRTSEMMUTEXINTERNAL pThis = (PRTSEMMUTEXINTERNAL)RTMemAllocZ(sizeof(*pThis)); ++ pThis = (PRTSEMMUTEXINTERNAL)RTMemAllocZ(sizeof(*pThis)); + if (RT_UNLIKELY(!pThis)) + return VERR_NO_MEMORY; + + pThis->u32Magic = RTSEMMUTEX_MAGIC; + pThis->SemId = create_sem(0, "IPRT Mutex Semaphore"); +- if (pThis->SemId < B_OK) ++ if (pThis->SemId >= B_OK) + { + pThis->OwnerId = -1; + pThis->cRecursion = 0; +@@ -215,7 +218,7 @@ RTDECL(int) RTSemMutexRelease(RTSEMMUTEX hMutexSem) + if (--pThis->cRecursion == 0) + { + pThis->OwnerId == -1; +- release_sem(pThis->SemId); ++ release_sem_etc(pThis->SemId, 1, B_DO_NOT_RESCHEDULE); + } + + return VINF_SUCCESS; +diff --git a/src/VBox/Runtime/r0drv/haiku/spinlock-r0drv-haiku.c b/src/VBox/Runtime/r0drv/haiku/spinlock-r0drv-haiku.c +index d60e8cc..cd044cf 100644 +--- a/src/VBox/Runtime/r0drv/haiku/spinlock-r0drv-haiku.c ++++ b/src/VBox/Runtime/r0drv/haiku/spinlock-r0drv-haiku.c +@@ -66,14 +66,15 @@ typedef struct RTSPINLOCKINTERNAL + + RTDECL(int) RTSpinlockCreate(PRTSPINLOCK pSpinlock, uint32_t fFlags, const char *pszName) + { ++ PRTSPINLOCKINTERNAL pSpinlockInt; + RT_ASSERT_PREEMPTIBLE(); + NOREF(pszName); + + /* + * Allocate. + */ +- AssertCompile(sizeof(RTSPINLOCKINTERNAL) > sizeof(void *)); +- PRTSPINLOCKINTERNAL pSpinlockInt = (PRTSPINLOCKINTERNAL)RTMemAllocZ(sizeof(*pSpinlockInt)); ++// AssertCompile(sizeof(RTSPINLOCKINTERNAL) > sizeof(void *)); ++ pSpinlockInt = (PRTSPINLOCKINTERNAL)RTMemAllocZ(sizeof(*pSpinlockInt)); + if (RT_UNLIKELY(!pSpinlockInt)) + return VERR_NO_MEMORY; + +diff --git a/src/VBox/Runtime/r3/haiku/rtProcInitExePath-haiku.cpp b/src/VBox/Runtime/r3/haiku/rtProcInitExePath-haiku.cpp +index ca7d829..99afe4e 100644 +--- a/src/VBox/Runtime/r3/haiku/rtProcInitExePath-haiku.cpp ++++ b/src/VBox/Runtime/r3/haiku/rtProcInitExePath-haiku.cpp +@@ -31,6 +31,7 @@ + #ifdef RT_OS_HAIKU + # include + #endif ++#include + + #include + #include +@@ -51,6 +52,7 @@ DECLHIDDEN(int) rtProcInitExePath(char *pszPath, size_t cchPath) + */ + status = get_next_image_info(0, &Cookie, &ImageInfo); + AssertReturn((status == B_OK), VERR_INTERNAL_ERROR); ++fprintf(stderr, "p='%s'\n", ImageInfo.name); + + int rc = rtPathFromNativeCopy(pszPath, MIN(cchPath, MAXPATHLEN), ImageInfo.name, NULL); + AssertMsgRCReturn(rc, ("rc=%Rrc pszLink=\"%s\"\nhex: %.*Rhxs\n", rc, pszPath, MIN(cchPath, MAXPATHLEN), pszPath), rc); +diff --git a/src/VBox/Runtime/r3/posix/utf8-posix.cpp b/src/VBox/Runtime/r3/posix/utf8-posix.cpp +index c5c1607..f3e6d59 100644 +--- a/src/VBox/Runtime/r3/posix/utf8-posix.cpp ++++ b/src/VBox/Runtime/r3/posix/utf8-posix.cpp +@@ -173,7 +173,7 @@ static int rtstrConvertCached(const void *pvInput, size_t cbInput, const char *p + iconv_t hIconv = (iconv_t)*phIconv; + if (hIconv == (iconv_t)-1) + { +-#ifdef RT_OS_SOLARIS ++#if defined(RT_OS_HAIKU) || defined(RT_OS_SOLARIS) + /* Solaris doesn't grok empty codeset strings, so help it find the current codeset. */ + if (!*pszInputCS) + pszInputCS = rtStrGetLocaleCodeset(); +@@ -304,7 +304,7 @@ static int rtStrConvertUncached(const void *pvInput, size_t cbInput, const char + /* + * Create conversion object. + */ +-#ifdef RT_OS_SOLARIS ++#if defined(RT_OS_HAIKU) || defined(RT_OS_SOLARIS) + /* Solaris doesn't grok empty codeset strings, so help it find the current codeset. */ + if (!*pszInputCS) + pszInputCS = rtStrGetLocaleCodeset(); +diff --git a/src/libs/kStuff/kStuff/include/k/kDefs.h b/src/libs/kStuff/kStuff/include/k/kDefs.h +index 0f2215f..064d62d 100644 +--- a/src/libs/kStuff/kStuff/include/k/kDefs.h ++++ b/src/libs/kStuff/kStuff/include/k/kDefs.h +@@ -60,8 +60,10 @@ + #define K_OS_SOLARIS 9 + /** Windows. */ + #define K_OS_WINDOWS 10 ++/** Haiku */ ++#define K_OS_HAIKU 11 + /** The max K_OS_* value (exclusive). */ +-#define K_OS_MAX 11 ++#define K_OS_MAX 12 + /** @} */ + + /** @def K_OS +@@ -82,6 +84,8 @@ + # define K_OS K_OS_DRAGONFLY + # elif defined(__FreeBSD__) /*??*/ + # define K_OS K_OS_FREEBSD ++# elif defined(__HAIKU__) ++# define K_OS K_OS_HAIKU + # elif defined(__gnu_linux__) + # define K_OS K_OS_LINUX + # elif defined(__NetBSD__) /*??*/ +-- +1.8.3.4 + diff --git a/app-emulation/virtualbox-guest-additions/virtualbox_guest_additions-4.3.53_svn.recipe b/app-emulation/virtualbox-guest-additions/virtualbox_guest_additions-4.3.53_svn.recipe index e78aa103a..b95af61af 100644 --- a/app-emulation/virtualbox-guest-additions/virtualbox_guest_additions-4.3.53_svn.recipe +++ b/app-emulation/virtualbox-guest-additions/virtualbox_guest_additions-4.3.53_svn.recipe @@ -8,8 +8,7 @@ This package contains the VirtualBox kernel modules and user-space \ tools for Haiku guests. " HOMEPAGE="http://www.virtualbox.org/" -SRC_URI="svn+http://www.virtualbox.org/svn/vbox/trunk#51740" -#CHECKSUM_SHA256="" +SRC_URI="svn+http://www.virtualbox.org/svn/vbox/trunk#53373" #TODO:check user manual for full list COPYRIGHT="2003-2014 Oracle Corporation." #TODO:check user manual for full list @@ -17,7 +16,7 @@ LICENSE=" GNU GPL v2 CDDL v1 " -REVISION="1" +REVISION="2" ARCHITECTURES="x86_gcc2 x86 x86_64" PROVIDES=" @@ -27,15 +26,12 @@ PROVIDES=" cmd:VBoxTray$secondaryArchSuffix = $portVersion " -PATCHES="vbox-$portVersion.patch" - REQUIRES=" haiku$secondaryArchSuffix >= $haikuVersion openssl$secondaryArchSuffix >= 1.0.0 lib:libiconv$secondaryArchSuffix lib:libz$secondaryArchSuffix lib:libpng$secondaryArchSuffix -# lib:libstdc++$secondaryArchSuffix lib:libcurl$secondaryArchSuffix " @@ -52,6 +48,7 @@ BUILD_PREREQUIRES=" haiku_x86 >= $haikuVersion haiku${secondaryArchSuffix}_devel >= $haikuVersion cmd:mkisofs + cmd:grep cmd:gcc$secondaryArchSuffix cmd:ld$secondaryArchSuffix cmd:sed @@ -59,6 +56,8 @@ BUILD_PREREQUIRES=" cmd:yasm " +PATCHES="virtualbox_guest_additions-$portVersion.patchset" + BUILD() { # use the checked-out kBuild for now @@ -71,23 +70,28 @@ BUILD() INSTALL() { - op="out/haiku.x86/strict" - ap=$op/bin/additions + cd out/haiku.x86/strict/bin/additions + mkdir -p $addOnsDir/kernel/{generic,drivers/bin,drivers/dev/misc} - tad="$addOnsDir" - tbd="$binDir" + cp vboxguest $addOnsDir/kernel/generic + cp vboxdev $addOnsDir/kernel/drivers/bin + ln -fs ../../bin/vboxdev $addOnsDir/kernel/drivers/dev/misc - mkdir -p "$tad/kernel/generic" - mkdir -p "$tad/kernel/drivers/bin" - cp $ap/vboxguest "$tad/kernel/generic/" - cp $ap/vboxdev "$tad/kernel/drivers/bin/" - mkdir -p "$tad/kernel/drivers/dev/misc" - ln -fs ../../bin/vboxdev "$tad/kernel/drivers/dev/misc/" - mkdir -p "$tad/kernel/file_systems" - #cp $ap/vboxsf "$tad/kernel/file_systems/" +# mkdir -p $addOnsDir/kernel/file_systems +# cp vboxsf $addOnsDir/kernel/file_systems - mkdir -p "$tbd" - cp $ap/VBoxControl "$tbd/" - cp $ap/VBoxService "$tbd/" - cp $ap/VBoxTray "$tbd/" +# mkdir -p $addOnsDir/{input_server/filters,input_server/devices} +# cp VBoxMouseFilter $addOnsDir/input_server/filters +# cp VBoxMouse $addOnsDir/input_server/devices + +# mkdir -p $addOnsDir/{accelerants,kernel/drivers/dev/graphics} +# cp vboxvideo $addOnsDir/kernel/drivers/bin +# ln -fs ../../bin/vboxvideo $addOnsDir/kernel/drivers/dev/graphics +# cp vboxvideo.accelerant $addOnsDir/accelerants +# + mkdir -p $binDir + cp VBoxControl $binDir + cp VBoxService $binDir + cp VBoxTray $binDir } + From ada2c2fd70ba8d39a4c57d1ff95b5092b6369fc1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kamil=20Krzy=C5=BCanowski?= Date: Tue, 9 Dec 2014 16:59:39 +0000 Subject: [PATCH 48/48] Added awk to ODE's prerequires. --- dev-games/ode/ode-0.12.recipe | 1 + 1 file changed, 1 insertion(+) diff --git a/dev-games/ode/ode-0.12.recipe b/dev-games/ode/ode-0.12.recipe index f9129d0d0..09da5fc0d 100644 --- a/dev-games/ode/ode-0.12.recipe +++ b/dev-games/ode/ode-0.12.recipe @@ -36,6 +36,7 @@ BUILD_PREREQUIRES=" cmd:mkdepend cmd:gcc$secondaryArchSuffix cmd:ld$secondaryArchSuffix + cmd:awk " PATCHES="ode-0.12.patch"