From c0e626571cdc2ca8505afed56c8e1f6aef2dfdd0 Mon Sep 17 00:00:00 2001 From: Artur Jamro Date: Wed, 1 Jan 2014 10:41:02 +0000 Subject: [PATCH 01/33] Polished recipe for Torretor (it still needs more work) --- haiku-apps/torrentor/torrentor-0.0.5.recipe | 57 +++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 haiku-apps/torrentor/torrentor-0.0.5.recipe diff --git a/haiku-apps/torrentor/torrentor-0.0.5.recipe b/haiku-apps/torrentor/torrentor-0.0.5.recipe new file mode 100644 index 000000000..a2fbce145 --- /dev/null +++ b/haiku-apps/torrentor/torrentor-0.0.5.recipe @@ -0,0 +1,57 @@ +DESCRIPTION="Torrentor is a torrent client for the haiku operating system." +SUMMARY="Torrentor is a torrent client for the haiku operating system." +HOMEPAGE="https://github.com/Prodito/Torrentor" +SRC_URI="git+https://github.com/Prodito/Torrentor.git#c1fa0cb62963ec3c4980d99fb12e203789d9ab1a" +COPYRIGHT="2012 Guido Pola" +LICENSE="MIT" +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" +else + ARCHITECTURES="$ARCHITECTURES !x86_gcc2" +fi +SECONDARY_ARCHITECTURES="x86" + +PROVIDES=" + torrentor${secondaryArchSuffix} = $portVersion + app:torrentor${secondaryArchSuffix} = $portVersion" + +BUILD_PREREQUIRES=" + makefile_engine + curl${secondaryArchSuffix} + cmd:jam + cmd:gcc${secondaryArchSuffix} + cmd:make + cmd:mkdepend" + + +BUILD_REQUIRES=" + haiku${secondaryArchSuffix}_devel >= $haikuVersion + devel:libevent${secondaryArchSuffix} + devel:libssl${secondaryArchSuffix} + devel:libcurl${secondaryArchSuffix} + devel:libz${secondaryArchSuffix} # one of dependency needs it + " + +REQUIRES=" + haiku${secondaryArchSuffix} >= $haikuVersion + lib:libssl${secondaryArchSuffix} + lib:libcurl${secondaryArchSuffix} + lib:libevent${secondaryArchSuffix} + lib:libz${secondaryArchSuffix} + " + +BUILD() +{ + jam +} + +INSTALL() # just trying compile, code below doesn't have to work well +{ + mkdir -p $appsDir/Torrentor + cp Torrentor $appsDir/Torrentor/ + addAppDeskbarSymlink $appsDir/Torrentor/Torrentor +} From c7bbade4bb361eee6e27b309a615ecc01db5efcf Mon Sep 17 00:00:00 2001 From: Artur Jamro Date: Wed, 1 Jan 2014 18:59:00 +0000 Subject: [PATCH 02/33] Torrentor recipe file: cosmetic patch --- haiku-apps/torrentor/torrentor-0.0.5.recipe | 36 +++++++++++---------- 1 file changed, 19 insertions(+), 17 deletions(-) diff --git a/haiku-apps/torrentor/torrentor-0.0.5.recipe b/haiku-apps/torrentor/torrentor-0.0.5.recipe index a2fbce145..0cdb168e6 100644 --- a/haiku-apps/torrentor/torrentor-0.0.5.recipe +++ b/haiku-apps/torrentor/torrentor-0.0.5.recipe @@ -17,23 +17,7 @@ SECONDARY_ARCHITECTURES="x86" PROVIDES=" torrentor${secondaryArchSuffix} = $portVersion - app:torrentor${secondaryArchSuffix} = $portVersion" - -BUILD_PREREQUIRES=" - makefile_engine - curl${secondaryArchSuffix} - cmd:jam - cmd:gcc${secondaryArchSuffix} - cmd:make - cmd:mkdepend" - - -BUILD_REQUIRES=" - haiku${secondaryArchSuffix}_devel >= $haikuVersion - devel:libevent${secondaryArchSuffix} - devel:libssl${secondaryArchSuffix} - devel:libcurl${secondaryArchSuffix} - devel:libz${secondaryArchSuffix} # one of dependency needs it + app:torrentor${secondaryArchSuffix} = $portVersion " REQUIRES=" @@ -43,6 +27,24 @@ REQUIRES=" lib:libevent${secondaryArchSuffix} lib:libz${secondaryArchSuffix} " + +BUILD_REQUIRES=" + haiku${secondaryArchSuffix}_devel >= $haikuVersion + devel:libevent${secondaryArchSuffix} + devel:libssl${secondaryArchSuffix} + devel:libcurl${secondaryArchSuffix} + devel:libz${secondaryArchSuffix} + " + +BUILD_PREREQUIRES=" + makefile_engine + curl${secondaryArchSuffix} + cmd:jam + cmd:gcc${secondaryArchSuffix} + cmd:make + cmd:mkdepend + " + BUILD() { From 81ebb0e09236b1b9406b95fd67604a3ce9046bd8 Mon Sep 17 00:00:00 2001 From: Artur Jamro Date: Wed, 1 Jan 2014 21:48:50 +0000 Subject: [PATCH 03/33] Torrentor recipe: added better description --- haiku-apps/torrentor/torrentor-0.0.5.recipe | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/haiku-apps/torrentor/torrentor-0.0.5.recipe b/haiku-apps/torrentor/torrentor-0.0.5.recipe index 0cdb168e6..a1e1f8bd5 100644 --- a/haiku-apps/torrentor/torrentor-0.0.5.recipe +++ b/haiku-apps/torrentor/torrentor-0.0.5.recipe @@ -1,4 +1,9 @@ -DESCRIPTION="Torrentor is a torrent client for the haiku operating system." +DESCRIPTION=" +Torrentor is a torrent client for the Haiku operating system. \ +BitTorrent protocol is created for relieving servers and speed up \ +downloading files. Users are not downloading data directly from \ +server, but they are sending to and receiving it from themselves. +" SUMMARY="Torrentor is a torrent client for the haiku operating system." HOMEPAGE="https://github.com/Prodito/Torrentor" SRC_URI="git+https://github.com/Prodito/Torrentor.git#c1fa0cb62963ec3c4980d99fb12e203789d9ab1a" @@ -45,7 +50,6 @@ BUILD_PREREQUIRES=" cmd:mkdepend " - BUILD() { jam From e55f69e4c7f19a3b4a5727a6dd070f1a646a8fc8 Mon Sep 17 00:00:00 2001 From: munchausen Date: Thu, 9 Jan 2014 15:50:33 +0000 Subject: [PATCH 04/33] readline-6.2.recipe: bump revision to 4 --- sys-libs/readline/readline-6.2.recipe | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys-libs/readline/readline-6.2.recipe b/sys-libs/readline/readline-6.2.recipe index 8f3c0f185..ba1709192 100644 --- a/sys-libs/readline/readline-6.2.recipe +++ b/sys-libs/readline/readline-6.2.recipe @@ -15,7 +15,7 @@ COPYRIGHT="1989-2011 Free Software Foundation, Inc." LICENSE="GNU GPL v3" SRC_URI="ftp://ftp.gnu.org/gnu/readline/readline-6.2.tar.gz" CHECKSUM_MD5="67948acb2ca081f23359d0256e9a271c" -REVISION="3" +REVISION="4" ARCHITECTURES="x86_gcc2 x86 x86_64" SECONDARY_ARCHITECTURES="x86_gcc2 x86" From 9c55f414f8854a7e7ec59ed4d17d05950e11d095 Mon Sep 17 00:00:00 2001 From: Scott McCreary Date: Fri, 10 Jan 2014 03:13:40 -0800 Subject: [PATCH 05/33] WIP abi_compliance_checker, TODO-unravel the target directories --- .../abi_compliance_checker-1.98.3.recipe | 64 +++++++++++-------- 1 file changed, 39 insertions(+), 25 deletions(-) diff --git a/dev-util/abi_compliance_checker/abi_compliance_checker-1.98.3.recipe b/dev-util/abi_compliance_checker/abi_compliance_checker-1.98.3.recipe index 9638dace9..f03f7a762 100644 --- a/dev-util/abi_compliance_checker/abi_compliance_checker-1.98.3.recipe +++ b/dev-util/abi_compliance_checker/abi_compliance_checker-1.98.3.recipe @@ -1,16 +1,45 @@ +SUMMARY="binary & source-level backwards compatibility checker" DESCRIPTION=" -tool for checking backward binary and source-level compatibility of a C/C++ \ -library. +ABI Compliance Checker (ACC) is a tool for checking backward binary and \ +source-level compatibility of aC/C++ library. The tool checks header files \ +and shared libraries of old and new versions and analyzes changes in API and \ +ABI (ABI=API+compiler ABI) that may break binary and/or source compatibility. " HOMEPAGE="ispras.linuxbase.org/index.php/ABI_compliance_checker" SRC_URI="https://github.com/downloads/lvc/abi-compliance-checker/abi-compliance-checker-1.98.3.tar.gz" -REVISION="1" -STATUS_HAIKU="broken" -DEPEND="" CHECKSUM_MD5="e2ca96bf71b014eefa11fe10a6f7d1f6" +LICENSE="GNU GPL v2" +COPYRIGHT="2009-2010 The Linux Foundation + 2009-2011 Institute for System Programming, RAS + 2011-2012 Nokia Corporation and/or its subsidiary(-ies) + 2011-2012 ROSA Laboratory" +REVISION="1" + +ARCHITECTURES="?x86_gcc2 ?x86 ?x86_64" + +PROVIDES=" + abi_compliance_checker = $portVersion + " + +REQUIRES=" + haiku >= $haikuVersion + " + +BUILD_REQUIRES=" + haiku_devel >= $haikuVersion + " + +BUILD_PREREQUIRES=" + cmd:sed + cmd:gcc + cmd:make + perl + " + +SOURCE_DIR="abi-compliance-checker-1.98.3" + BUILD() { - cd abi-compliance-checker-1.98.3 sed -i 's/linux|freebsd|openbsd|netbsd/linux|freebsd|openbsd|netbsd|haiku/' Makefile.pl sed -i 's/$PREFIX\/share\/$TOOL_SNAME/$PREFIX\/data\/$TOOL_SNAME/' Makefile.pl sed -i 's/..\/share\/$TOOL_SNAME/..\/data\/$TOOL_SNAME/' Makefile.pl @@ -18,23 +47,8 @@ BUILD() INSTALL() { - cd abi-compliance-checker-1.98.3 - mkdir -p $DESTDIR/`finddir B_COMMON_DIRECTORY`/example-descriptors - perl Makefile.pl -install --prefix=`finddir B_COMMON_DIRECTORY` \ - --destdir=$DESTDIR - cp -r `haikuporter -t`/dev-util/abi-compliance-checker/example-descriptors \ - $DESTDIR/`finddir B_COMMON_DIRECTORY`/data/abi-compliance-checker +# TODO: Need to figure out what goes where, as this isn't working +# mkdir -p $prefix +# perl Makefile.pl -install $PREFIX=$prefix +# cp -r $portDir/example-descriptors $dataDir/abi-compliance-checker } - -TEST() -{ - cd abi-compliance-checker-1.98.3 -# make test -# make check -} - -LICENSE="GNU GPL v2" -COPYRIGHT="2009-2010 The Linux Foundation - 2009-2011 Institute for System Programming, RAS - 2011-2012 Nokia Corporation and/or its subsidiary(-ies) - 2011-2012 ROSA Laboratory" From 6b42a325440c7336b5fe7bf1da1414d4a37551a5 Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Fri, 10 Jan 2014 12:59:58 +0100 Subject: [PATCH 06/33] Add WIP recipes for libusb, avrdude, and lm4tools. These are not really working yet, but having the recipes around will help coordinating testing efforts. --- dev-embedded/avrdude/avrdude-6.0.1.recipe | 63 +++++++++++++++ dev-embedded/lm4tools/lm4tools-0.1.3.recipe | 58 ++++++++++++++ dev-libs/libusb/libusb-1.0.17.recipe | 88 +++++++++++++++++++++ 3 files changed, 209 insertions(+) create mode 100644 dev-embedded/avrdude/avrdude-6.0.1.recipe create mode 100644 dev-embedded/lm4tools/lm4tools-0.1.3.recipe create mode 100644 dev-libs/libusb/libusb-1.0.17.recipe diff --git a/dev-embedded/avrdude/avrdude-6.0.1.recipe b/dev-embedded/avrdude/avrdude-6.0.1.recipe new file mode 100644 index 000000000..28493ec1f --- /dev/null +++ b/dev-embedded/avrdude/avrdude-6.0.1.recipe @@ -0,0 +1,63 @@ +SUMMARY="AVRDUDE - AVR Downloader/UploaDEr" +DESCRIPTION=" +AVRDUDE is an utility to download/upload/manipulate the ROM and EEPROM contents +of AVR microcontrollers using the in-system programming technique (ISP). +" +HOMEPAGE="http://www.nongnu.org/avrdude/" +LICENSE=" + GNU GPL v2 + " +COPYRIGHT=" + 2003-2013 Brian S. Dean +" +SRC_URI="http://download.savannah.gnu.org/releases/avrdude/avrdude-6.0.1.tar.gz" +CHECKSUM_MD5="346ec2e46393a54ac152b95abf1d9850" +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" + +GLOBAL_WRITABLE_FILES=" + settings/avrdude.conf keep-old +" + +PROVIDES=" + avrdude = $portVersion + cmd:avrdude$secondaryArchSuffix = $portVersion + " + +REQUIRES=" + haiku$secondaryArchSuffix >= $haikuVersion + lib:libusb_1.0$secondaryArchSuffix + " +BUILD_REQUIRES=" + devel:libusb_1.0$secondaryArchSuffix + " +BUILD_PREREQUIRES=" + haiku${secondaryArchSuffix}_devel >= $haikuVersion + cmd:gcc$secondaryArchSuffix + cmd:ld$secondaryArchSuffix + cmd:automake + cmd:autoconf + cmd:make + cmd:yacc + cmd:flex + cmd:pkg_config$secondaryArchSuffix + " + +BUILD() +{ + aclocal + automake + runConfigure ./configure + make $jobArgs +} + +INSTALL() +{ + make install +} diff --git a/dev-embedded/lm4tools/lm4tools-0.1.3.recipe b/dev-embedded/lm4tools/lm4tools-0.1.3.recipe new file mode 100644 index 000000000..991bb5c94 --- /dev/null +++ b/dev-embedded/lm4tools/lm4tools-0.1.3.recipe @@ -0,0 +1,58 @@ +SUMMARY="Some tools which enable multi-platform development on the TI Stellaris Launchpad boards." +DESCRIPTION=" +Some tools which enable multi-platform development on the TI Stellaris +Launchpad boards. The Stellaris Launchpad is a low cost development board +created by Texas Instruments that comes with an ARM Cortex-M4F processor. +" +HOMEPAGE="https://github.com/utzig/lm4tools" +LICENSE=" + GNU GPL v2 + " +COPYRIGHT=" + 2012 Fabio Utzig + 2012 Peter Stuge +" +SRC_URI=" + git+https://github.com/utzig/lm4tools.git#1cfd813779b9eb717b15b0a1814bde8338899ff9 + " +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=" + lm4tools = $portVersion + cmd:lm4flash$secondaryArchSuffix = $portVersion + " + +REQUIRES=" + haiku$secondaryArchSuffix >= $haikuVersion + lib:libusb_1.0$secondaryArchSuffix + " +BUILD_REQUIRES=" + devel:libusb_1.0$secondaryArchSuffix + " +BUILD_PREREQUIRES=" + haiku${secondaryArchSuffix}_devel >= $haikuVersion + cmd:gcc$secondaryArchSuffix + cmd:ld$secondaryArchSuffix + cmd:make + cmd:pkg_config$secondaryArchSuffix + " + +BUILD() +{ + cd lm4flash + make $jobArgs CFLAGS=-D__APPLE__ +} + +INSTALL() +{ + cd lm4flash + mkdir -p $binDir + cp lm4flash $binDir +} diff --git a/dev-libs/libusb/libusb-1.0.17.recipe b/dev-libs/libusb/libusb-1.0.17.recipe new file mode 100644 index 000000000..5e07192fd --- /dev/null +++ b/dev-libs/libusb/libusb-1.0.17.recipe @@ -0,0 +1,88 @@ +SUMMARY="libusbx is a library that provides generic access to USB devices." +DESCRIPTION=" +libusbx is a library that provides generic access to USB devices. As a library, +it is meant to be used by developers, to facilitate the production of +applications that communicate with USB hardware. + +It is portable: Using a single cross-platform API, it provides access to USB +devices on Linux, OS X, Windows and OpenBSD. + +It is user-mode: No special privilege or elevation is required for the +application to communicate with a device. + +It is version-agnostic: All versions of the USB protocol, from 1.0 to 3.0 +(latest), are supported. +" +LICENSE="GNU LGPL v2.1" +COPYRIGHT=" +2001 Johannes Erdfelt +2007-2009 Daniel Drake +2010-2012 Peter Stuge +2008-2013 Nathan Hjelm +2009-2013 Pete Batard +2009-2013 Ludovic Rousseau +2010-2012 Michael Plante +2011-2013 Hans de Goede +2012-2013 Martin Pieuchot +2012-2013 Toby Gray +" +HOMEPAGE="http://libusbx.org/" +SRC_URI="git+git://github.com/pulkomandy/libusbx#c6f866b9914f266ab198a3313eba45e55c094024" +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=" + libusb$secondaryArchSuffix = $portVersion + lib:libusb_1.0$secondaryArchSuffix = $portVersion + " +REQUIRES=" + haiku$secondaryArchSuffix >= $haikuVersion + " +BUILD_REQUIRES=" + " +BUILD_PREREQUIRES=" + haiku${secondaryArchSuffix}_devel >= $haikuVersion + cmd:autoconf + cmd:automake + cmd:libtool + cmd:gcc$secondaryArchSuffix + cmd:ld$secondaryArchSuffix + cmd:make + cmd:sed + " + +BUILD() +{ + sh bootstrap.sh + runConfigure ./configure + make $jobArgs +} + +INSTALL() +{ + make install + + # set up the develop directory correctly + prepareInstalledDevelLibs libusb-1.0 + fixPkgconfig libusb-1.0 + + # devel package + packageEntries devel \ + $developDir +} + +# ----- devel package ------------------------------------------------------- + +PROVIDES_devel=" + libusb${secondaryArchSuffix}_devel = $portVersion + devel:libusb_1.0${secondaryArchSuffix} = $portVersion + " +REQUIRES_devel=" + libusb${secondaryArchSuffix} == $portVersion base + " From 28b9262b967ff644a70fafd8fb1a6edc8dcd0e0d Mon Sep 17 00:00:00 2001 From: 5HT Date: Fri, 10 Jan 2014 13:52:27 +0000 Subject: [PATCH 07/33] No need to copy images. I suggest install to system/apps because it is single file app. --- haiku-apps/chat/chat-20100903.recipe | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/haiku-apps/chat/chat-20100903.recipe b/haiku-apps/chat/chat-20100903.recipe index 4fa10ae7e..43ae6edd2 100644 --- a/haiku-apps/chat/chat-20100903.recipe +++ b/haiku-apps/chat/chat-20100903.recipe @@ -46,11 +46,7 @@ BUILD() INSTALL() { - mkdir -p $appsDir/chat - cp -r images $appsDir/chat/ - echo 'dir:' - pwd - cp src/Chat $appsDir/chat/Chat - - addAppDeskbarSymlink $appsDir/chat/Chat "Chat" + mkdir -p $appsDir + cp src/Chat $appsDir/Chat + addAppDeskbarSymlink $appsDir/Chat "Chat" } From 3dec453ea14fdb4e902771efaeccdb7d9f166722 Mon Sep 17 00:00:00 2001 From: Puck Meerburg Date: Fri, 10 Jan 2014 23:21:24 +0100 Subject: [PATCH 08/33] Add netcat recipe --- sys-apps/netcat/netcat-1.10.recipe | 40 +++++ sys-apps/netcat/patches/netcat-1.10.patchset | 176 +++++++++++++++++++ 2 files changed, 216 insertions(+) create mode 100644 sys-apps/netcat/netcat-1.10.recipe create mode 100644 sys-apps/netcat/patches/netcat-1.10.patchset diff --git a/sys-apps/netcat/netcat-1.10.recipe b/sys-apps/netcat/netcat-1.10.recipe new file mode 100644 index 000000000..0598f8c9d --- /dev/null +++ b/sys-apps/netcat/netcat-1.10.recipe @@ -0,0 +1,40 @@ +SUMMARY="A utility to read and write to network connections" +DESCRIPTION=" +Netcat is a simple utility which reads and writes data across network connections, \ +using the TCP or UDP protocol. +" +HOMEPAGE="http://nc110.sourceforge.net" +SRC_URI="svn://svn.code.sf.net/p/nc110/code/nc110" +LICENSE="Public Domain" +COPYRIGHT="1996 hobbit" +REVISION="1" + +ARCHITECTURES="x86_gcc2 x86 x86_64" +PATCHES="netcat-1.10.patchset" + +PROVIDES=" + netcat = $portVersion + cmd:nc = $portVersion + " +REQUIRES=" + haiku >= $haikuVersion + " +BUILD_REQUIRES=" + haiku_devel >= $haikuVersion + " +BUILD_PREREQUIRES=" + cmd:gcc + cmd:make + " + +BUILD() +{ + make clean + make haiku +} + +INSTALL() +{ + mkdir -p $binDir + cp nc $binDir +} diff --git a/sys-apps/netcat/patches/netcat-1.10.patchset b/sys-apps/netcat/patches/netcat-1.10.patchset new file mode 100644 index 000000000..639a8cd4f --- /dev/null +++ b/sys-apps/netcat/patches/netcat-1.10.patchset @@ -0,0 +1,176 @@ +From 933ba0887a6d06b8b0d8bcacb5fc0f546e121745 Mon Sep 17 00:00:00 2001 +From: Puck Meerburg +Date: Fri, 10 Jan 2014 23:12:29 +0100 +Subject: Fix Haiku build and add Haiku fixes + + +diff --git a/Makefile b/Makefile +index 99f2795..125dd6b 100644 +--- a/Makefile ++++ b/Makefile +@@ -69,6 +69,10 @@ aix: + linux: + make -e $(ALL) $(MFLAGS) XFLAGS='-DLINUX' STATIC=-static + ++# start with this for a new architecture, and see what breaks. ++haiku: ++ make -e $(ALL) $(MFLAGS) XFLAGS='-DHAIKU -lnetwork -lbind' STATIC=-static ++ + # irix 5.2, dunno 'bout earlier versions. If STATIC='-non_shared' doesn't + # work for you, null it out and yell at SGI for their STUPID default + # of apparently not installing /usr/lib/nonshared/*. Sheesh. +diff --git a/generic.h b/generic.h +index b3dd5f5..568e3b3 100644 +--- a/generic.h ++++ b/generic.h +@@ -42,6 +42,9 @@ + /* random() is generally considered better than rand() */ + #define HAVE_RANDOM + ++/* moved here to be able to turn it off per platform */ ++#define HAVE_BIND ++ + /* the srand48/lrand48/etc family is s'posedly even better */ + #define HAVE_RAND48 + /* bmc@telebase and others have suggested these macros if a box *does* have +@@ -360,6 +363,12 @@ There's a BIG swamp lurking where network code of any sort lives. + #undef HAVE_SELECT_X + #endif /* NeXTSTEP 3.2 motorola */ + ++/* Haiku contains this version of netcat by default, ++ and doesn't like res_init for some reason */ ++#ifdef HAIKU ++#undef HAVE_BIND ++#endif ++ + /* Make some "generic" assumptions if all else fails */ + #ifdef GENERIC + #undef HAVE_FLOCK +diff --git a/netcat.c b/netcat.c +index 3cab37d..37bc104 100644 +--- a/netcat.c ++++ b/netcat.c +@@ -31,7 +31,6 @@ + /* conditional includes -- a very messy section which you may have to dink + for your own architecture [and please send diffs...]: */ + /* #undef _POSIX_SOURCE /* might need this for something? */ +-#define HAVE_BIND /* ASSUMPTION -- seems to work everywhere! */ + #define HAVE_HELP /* undefine if you dont want the help text */ + /* #define ANAL /* if you want case-sensitive DNS matching */ + +@@ -158,6 +157,7 @@ USHORT o_random = 0; + USHORT o_udpmode = 0; + USHORT o_verbose = 0; + unsigned int o_wait = 0; ++unsigned int o_quittimeout = 0; + USHORT o_zero = 0; + /* o_tn in optional section */ + +@@ -170,6 +170,9 @@ USHORT o_zero = 0; + #define Debug(x) /* nil... */ + #endif + ++#ifdef HAVE_HELP ++void helpme(); ++#endif + + /* support routines -- the bulk of this thing. Placed in such an order that + we don't have to forward-declare anything: */ +@@ -224,6 +227,14 @@ void catch () + bail (" punt!"); + } + ++/* quitaftertimeout : ++ signal handler which quits after user given seconds after close of stdin */ ++void quitaftertimeout () ++{ ++ close(netfd); ++ exit(0); ++} ++ + /* timeout and other signal handling cruft */ + void tmtravel () + { +@@ -1171,15 +1182,19 @@ int readwrite (fd) + } /* select fuckup */ + /* if we have a timeout AND stdin is closed AND we haven't heard anything + from the net during that time, assume it's dead and close it too. */ +- if (rr == 0) { +- if (! FD_ISSET (0, ding1)) +- netretry--; /* we actually try a coupla times. */ +- if (! netretry) { +- if (o_verbose > 1) /* normally we don't care */ +- holler ("net timeout"); +- close (fd); +- return (0); /* not an error! */ ++/* we need this section if -q is not given, otherwise we don't quit if we ++ don't receive from net, we quit after timeout given with -q */ ++ if (o_quittimeout == 0) { ++ if (rr == 0) { ++ if (! FD_ISSET (0, ding1)) ++ netretry--; /* we actually try a coupla times. */ ++ if (! netretry) { ++ if (o_verbose > 1) /* normally we don't care */ ++ holler ("net timeout"); ++ close (fd); ++ return (0); /* not an error! */ + } ++ } + } /* select timeout */ + /* xxx: should we check the exception fds too? The read fds seem to give + us the right info, and none of the examples I found bothered. */ +@@ -1214,6 +1229,15 @@ Debug (("got %d from the net, errno %d", rr, errno)) + if (rr <= 0) { /* at end, or fukt, or ... */ + FD_CLR (0, ding1); /* disable and close stdin */ + close (0); ++ if (o_quittimeout > 0) { ++ if (o_verbose > 1) ++ fprintf (stderr, "STDIN closed, quit after %d seconds\n", o_quittimeout); ++ signal (SIGALRM, quitaftertimeout); ++ alarm (o_quittimeout); ++ // if -q argument is < 0 we don't trigger any signal and we also don't ++ // check for rr == 0 above, hence this is an infinite loop, essentially ++ // waiting forever on fd or net. ++ } + } else { + rzleft = rr; + zp = bigbuf_in; +@@ -1387,7 +1411,7 @@ main (argc, argv) + + /* If your shitbox doesn't have getopt, step into the nineties already. */ + /* optarg, optind = next-argv-component [i.e. flag arg]; optopt = last-char */ +- while ((x = getopt (argc, argv, "ae:g:G:hi:lno:p:rs:tuvw:z")) != EOF) { ++ while ((x = getopt (argc, argv, "ae:g:G:hi:lno:p:q:rs:tuvw:z")) != EOF) { + /* Debug (("in go: x now %c, optarg %x optind %d", x, optarg, optind)) */ + switch (x) { + case 'a': +@@ -1439,6 +1463,9 @@ main (argc, argv) + if (o_lport == 0) + bail ("invalid local port %s", optarg); + break; ++ case 'q': /* set the quit timeout */ ++ o_quittimeout = atoi(optarg); ++ break; + case 'r': /* randomize various things */ + o_random++; break; + case 's': /* local source address */ +@@ -1625,7 +1652,7 @@ Debug (("netfd %d from port %d to port %d", netfd, ourport, curport)) + #ifdef HAVE_HELP /* unless we wanna be *really* cryptic */ + /* helpme : + the obvious */ +-helpme() ++void helpme() + { + o_verbose = 1; + holler ("[v1.10]\n\ +@@ -1648,6 +1675,7 @@ options:"); + -n numeric-only IP addresses, no DNS\n\ + -o file hex dump of traffic\n\ + -p port local port number\n\ ++ -q timeout set timeout for connecting\n\ + -r randomize local and remote ports\n\ + -s addr local source address"); + #ifdef TELNET +-- +1.8.3.4 + From ddc5ea98aa6503066a4b89f675916ed330bb4072 Mon Sep 17 00:00:00 2001 From: Puck Meerburg Date: Sat, 11 Jan 2014 10:07:51 +0000 Subject: [PATCH 09/33] Remove make clean from build --- sys-apps/netcat/netcat-1.10.recipe | 1 - 1 file changed, 1 deletion(-) diff --git a/sys-apps/netcat/netcat-1.10.recipe b/sys-apps/netcat/netcat-1.10.recipe index 0598f8c9d..28b5fc59d 100644 --- a/sys-apps/netcat/netcat-1.10.recipe +++ b/sys-apps/netcat/netcat-1.10.recipe @@ -29,7 +29,6 @@ BUILD_PREREQUIRES=" BUILD() { - make clean make haiku } From 3fe8021c71179deeef190477744aae9d593a4ced Mon Sep 17 00:00:00 2001 From: Puck Meerburg Date: Sat, 11 Jan 2014 10:31:33 +0000 Subject: [PATCH 10/33] Move netcat recipe to net-analyzer --- {sys-apps => net-analyzer}/netcat/netcat-1.10.recipe | 2 +- {sys-apps => net-analyzer}/netcat/patches/netcat-1.10.patchset | 0 2 files changed, 1 insertion(+), 1 deletion(-) rename {sys-apps => net-analyzer}/netcat/netcat-1.10.recipe (92%) rename {sys-apps => net-analyzer}/netcat/patches/netcat-1.10.patchset (100%) diff --git a/sys-apps/netcat/netcat-1.10.recipe b/net-analyzer/netcat/netcat-1.10.recipe similarity index 92% rename from sys-apps/netcat/netcat-1.10.recipe rename to net-analyzer/netcat/netcat-1.10.recipe index 28b5fc59d..ab08dbdc3 100644 --- a/sys-apps/netcat/netcat-1.10.recipe +++ b/net-analyzer/netcat/netcat-1.10.recipe @@ -4,7 +4,7 @@ Netcat is a simple utility which reads and writes data across network connection using the TCP or UDP protocol. " HOMEPAGE="http://nc110.sourceforge.net" -SRC_URI="svn://svn.code.sf.net/p/nc110/code/nc110" +SRC_URI="svn://svn.code.sf.net/p/nc110/code/nc110#22" LICENSE="Public Domain" COPYRIGHT="1996 hobbit" REVISION="1" diff --git a/sys-apps/netcat/patches/netcat-1.10.patchset b/net-analyzer/netcat/patches/netcat-1.10.patchset similarity index 100% rename from sys-apps/netcat/patches/netcat-1.10.patchset rename to net-analyzer/netcat/patches/netcat-1.10.patchset From 21914ebcbbc5da8efa88da3175a63a930d0a5d4f Mon Sep 17 00:00:00 2001 From: Puck Meerburg Date: Sat, 11 Jan 2014 11:00:28 +0100 Subject: [PATCH 11/33] Fix x86 build --- net-analyzer/netcat/patches/netcat-1.10.patchset | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/net-analyzer/netcat/patches/netcat-1.10.patchset b/net-analyzer/netcat/patches/netcat-1.10.patchset index 639a8cd4f..6169f6d1f 100644 --- a/net-analyzer/netcat/patches/netcat-1.10.patchset +++ b/net-analyzer/netcat/patches/netcat-1.10.patchset @@ -1,20 +1,19 @@ -From 933ba0887a6d06b8b0d8bcacb5fc0f546e121745 Mon Sep 17 00:00:00 2001 +From ea019e9659fb07d24ec113afdb264c235f1683be Mon Sep 17 00:00:00 2001 From: Puck Meerburg -Date: Fri, 10 Jan 2014 23:12:29 +0100 -Subject: Fix Haiku build and add Haiku fixes +Date: Sat, 11 Jan 2014 10:56:27 +0100 +Subject: Add Haiku fixes diff --git a/Makefile b/Makefile -index 99f2795..125dd6b 100644 +index 99f2795..ce1ebe5 100644 --- a/Makefile +++ b/Makefile -@@ -69,6 +69,10 @@ aix: +@@ -69,6 +69,9 @@ aix: linux: make -e $(ALL) $(MFLAGS) XFLAGS='-DLINUX' STATIC=-static -+# start with this for a new architecture, and see what breaks. +haiku: -+ make -e $(ALL) $(MFLAGS) XFLAGS='-DHAIKU -lnetwork -lbind' STATIC=-static ++ make -e $(ALL) $(MFLAGS) XFLAGS='-DHAIKU -lnetwork' STATIC=-static + # irix 5.2, dunno 'bout earlier versions. If STATIC='-non_shared' doesn't # work for you, null it out and yell at SGI for their STUPID default From 553b67980a1dfa2f38549adac3f3b0eb904f179d Mon Sep 17 00:00:00 2001 From: Yourself Date: Sun, 12 Jan 2014 10:54:08 +0000 Subject: [PATCH 12/33] Update fftw for PM --- sci-libs/fftw/fftw-3.2.2.recipe | 46 +++++++++++++++++++++++++++------ 1 file changed, 38 insertions(+), 8 deletions(-) diff --git a/sci-libs/fftw/fftw-3.2.2.recipe b/sci-libs/fftw/fftw-3.2.2.recipe index 78768e63d..bbee624cc 100644 --- a/sci-libs/fftw/fftw-3.2.2.recipe +++ b/sci-libs/fftw/fftw-3.2.2.recipe @@ -1,23 +1,53 @@ +SUMMARY="Fast C library for the Discrete Fourier Transform" DESCRIPTION="Fast C library for the Discrete Fourier Transform" HOMEPAGE="http://www.fftw.org/" SRC_URI="http://www.fftw.org/fftw-3.2.2.tar.gz" CHECKSUM_MD5="b616e5c91218cc778b5aa735fefb61ae" +LICENSE="GNU GPL v2" +COPYRIGHT=" + 2003, 2007-2008 Matteo Frigo + 2003, 2007-2008 Massachusetts Institute of Technology + " REVISION="1" -STATUS_HAIKU="untested" -DEPEND="" +ARCHITECTURES="x86 x86_gcc2" +SECONDARY_ARCHITECTURES="x86_gcc2 x86" + +PROVIDES=" + lib:libfftw$secondaryArchSuffix = $portVersion + cmd:fftw_wisdom + cmd:fftw_wisdom_to_conf + " + +REQUIRES=" + haiku$secondaryArchSuffix >= $haikuVersion + " + +BUILD_REQUIRES=" + haiku${secondaryArchSuffix}_devel >= $haikuVersion + " + +BUILD_PREREQUIRES=" + cmd:gcc$secondaryArchSuffix + cmd:ld$secondaryArchSuffix + cmd:make + " + BUILD() { - cd fftw-3.2.2 - ./configure --prefix=`finddir B_COMMON_DIRECTORY` + runConfigure ./configure make } INSTALL() { - cd fftw-3.2.2 make install + prepareInstalledDevelLib libfftw3 + packageEntries devel $developDir } -LICENSE="GNU GPL v2" -COPYRIGHT="2003, 2007-2008 Matteo Frigo - 2003, 2007-2008 Massachusetts Institute of Technology" +PROVIDES_devel=" + devel:libfftw$secondaryArchSuffix = $portVersion + " +REQUIRES_devel=" + lib:libfftw$secondaryArchSuffix == $portVersion base + " From 8f73946d6b57b4ab58e1151ba3aaa2889b911be6 Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Sun, 12 Jan 2014 14:01:13 +0100 Subject: [PATCH 13/33] Add Maelstrom. Blast the asteroids! --- games-action/maelstrom/maelstrom-3.0.6.recipe | 75 +++++++++++++++++++ .../patches/maelstrom-3.0.6.patchset | 24 ++++++ 2 files changed, 99 insertions(+) create mode 100644 games-action/maelstrom/maelstrom-3.0.6.recipe create mode 100644 games-action/maelstrom/patches/maelstrom-3.0.6.patchset diff --git a/games-action/maelstrom/maelstrom-3.0.6.recipe b/games-action/maelstrom/maelstrom-3.0.6.recipe new file mode 100644 index 000000000..bbf3c5ad0 --- /dev/null +++ b/games-action/maelstrom/maelstrom-3.0.6.recipe @@ -0,0 +1,75 @@ +SUMMARY="Blast the Asteroids!" +DESCRIPTION=" +You pilot your ship through the dreaded \"Maelstrom\" asteroid belt -- suddenly +your best friend thrusts towards you and fires, directly at your cockpit. You +raise your shields just in time, and the battle is joined. + +The deadliest stretch of space known to mankind has just gotten deadlier. +Everywhere massive asteroids jostle for a chance to crush your ship, and deadly +shinobi fighter patrols pursue you across the asteroid belt. But the deadliest +of them all is your sister ship, assigned to you on patrol. The pilot, trained +by your own Navy, battle hardened by months in the Maelstrom, is equipped with +a twin of your own ship and intimate knowledge of your tactics. + +The lovely Stratocaster R&R facility never sounded so good, but as you fire +full thrusters to dodge the latest barrage you begin to think you'll never get +home... +" +HOMEPAGE="http://www.libsdl.org/projects/Maelstrom" +COPYRIGHT="Copyright (C) 1996-2005 Sam Lantinga" +LICENSE="GNU GPL v2" +SRC_URI="http://www.libsdl.org/projects/Maelstrom/src/Maelstrom-$portVersion.tar.gz" +CHECKSUM_MD5="96aa6359538a6bd60b4198a792de578b" +REVISION="1" +ARCHITECTURES="x86_gcc2 x86" +SECONDARY_ARCHITECTURES="x86" + +PROVIDES=" + maelstrom$secondaryArchSuffix = $portVersion + app:Maelstrom + " +REQUIRES=" + haiku$secondaryArchSuffix >= $haikuVersion + lib:libsdl$secondaryArchSuffix + lib:libSDL_net$secondaryArchSuffix + " +BUILD_REQUIRES=" + devel:libsdl$secondaryArchSuffix + devel:libSDL_net$secondaryArchSuffix + " +BUILD_PREREQUIRES=" + haiku${secondaryArchSuffix}_devel >= $haikuVersion + cmd:autom4te + cmd:gcc$secondaryArchSuffix + cmd:ld$secondaryArchSuffix + cmd:make + cmd:nasm + cmd:libtoolize + " +SOURCE_DIR="Maelstrom-$portVersion" +PATCHES="maelstrom-$portVersion.patchset" + +BUILD() +{ + libtoolize --force --copy --install + aclocal + touch NEWS AUTHORS ChangeLog # Yeah, automake needs all this stuff... + automake --add-missing + autoconf + + export LDFLAGS=-lnetwork + export CPPFLAGS=-D__BEOS__ + runConfigure --omit-dirs "docDir dataRootDir" ./configure + make $jobArgs +} + +INSTALL() +{ + make install + rm -rf $appsDir + mv $prefix/games $appsDir + + cp Maelstrom Maelstrom-netd $appsDir/Maelstrom/ + + addAppDeskbarSymlink $appsDir/Maelstrom/Maelstrom Maelstrom +} diff --git a/games-action/maelstrom/patches/maelstrom-3.0.6.patchset b/games-action/maelstrom/patches/maelstrom-3.0.6.patchset new file mode 100644 index 000000000..d857f160c --- /dev/null +++ b/games-action/maelstrom/patches/maelstrom-3.0.6.patchset @@ -0,0 +1,24 @@ +From 0aac53a13823ba5d1025006650115865a75944d4 Mon Sep 17 00:00:00 2001 +From: Adrien Destugues +Date: Sun, 12 Jan 2014 13:27:13 +0100 +Subject: Add haiku support to configure script. + + +diff --git a/configure.in b/configure.in +index 0170f4b..4f99f3f 100644 +--- a/configure.in ++++ b/configure.in +@@ -33,6 +33,10 @@ case "$target" in + MATHLIB="" + INETLIB="" + ;; ++ *-*-haiku*) ++ MATHLIB="" ++ INETLIB="-lnetwork" ++ ;; + *-*-darwin*) + MATHLIB="" + INETLIB="" +-- +1.8.3.4 + From 7fa00793136d725464a513f9d3b7f781e0f5f934 Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Sun, 12 Jan 2014 14:01:46 +0100 Subject: [PATCH 14/33] SDL_Net: add the libGL dependency. --- media-libs/sdl_net/sdl_net-1.2.8.recipe | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/media-libs/sdl_net/sdl_net-1.2.8.recipe b/media-libs/sdl_net/sdl_net-1.2.8.recipe index d632021e9..4eb98598b 100644 --- a/media-libs/sdl_net/sdl_net-1.2.8.recipe +++ b/media-libs/sdl_net/sdl_net-1.2.8.recipe @@ -7,7 +7,7 @@ SRC_URI="http://www.libsdl.org/projects/SDL_net/release/SDL_net-1.2.8.tar.gz" CHECKSUM_MD5="20e64e61d65662db66c379034f11f718" LICENSE="Zlib" COPYRIGHT="1997-2012 Sam Lantinga" -REVISION="1" +REVISION="2" ARCHITECTURES="x86 x86_gcc2" SECONDARY_ARCHITECTURES="x86_gcc2 x86 x86_64" @@ -19,7 +19,8 @@ PROVIDES=" REQUIRES=" haiku$secondaryArchSuffix >= $haikuVersion - libsdl$secondaryArchSuffix + lib:libsdl$secondaryArchSuffix + lib:libGL$secondaryArchSuffix " BUILD_REQUIRES=" From 5fbd54c756ea1fd6715ac5025dc820aea15dea32 Mon Sep 17 00:00:00 2001 From: Yourself Date: Sun, 12 Jan 2014 13:49:59 +0000 Subject: [PATCH 15/33] Add libconfuse --- dev-libs/confuse/confuse-2.7.recipe | 74 ++++++++++++++++++++++ dev-libs/confuse/licenses/ISC | 13 ++++ dev-libs/confuse/patches/confuse-2.7.patch | 12 ++++ 3 files changed, 99 insertions(+) create mode 100644 dev-libs/confuse/confuse-2.7.recipe create mode 100644 dev-libs/confuse/licenses/ISC create mode 100644 dev-libs/confuse/patches/confuse-2.7.patch diff --git a/dev-libs/confuse/confuse-2.7.recipe b/dev-libs/confuse/confuse-2.7.recipe new file mode 100644 index 000000000..14aa171b5 --- /dev/null +++ b/dev-libs/confuse/confuse-2.7.recipe @@ -0,0 +1,74 @@ +SUMMARY="libConfuse - a configuration file parser library" +DESCRIPTION=" +libConfuse is a configuration file parser library, licensed under the terms of \ +the ISC license, and written in C. It supports sections and (lists of) values \ +(strings, integers, floats, booleans or other sections), as well as some other \ +features (such as single/double-quoted strings, environment variable expansion, \ +functions and nested include statements). It makes it very easy to add \ +configuration file capability to a program using a simple API. +The goal of libConfuse is not to be the configuration file parser library with \ +a gazillion of features. Instead, it aims to be easy to use and quick to \ +integrate with your code. libConfuse was called libcfg before, but its name was \ +changed to not confuse itself with other similar libraries. +" +HOMEPAGE="http://www.nongnu.org/confuse/" +SRC_URI="http://savannah.nongnu.org/download/confuse/confuse-2.7.tar.gz" +CHECKSUM_MD5="45932fdeeccbb9ef4228f1c1a25e9c8f" +LICENSE="ISC" +COPYRIGHT="2002,2003,2007 Martin Hedenfalk" +REVISION="1" +ARCHITECTURES="x86 x86_gcc2" +SECONDARY_ARCHITECTURES="x86_gcc2 x86" +PATCHES="confuse-2.7.patch" + +PROVIDES=" + lib:libconfuse$secondaryArchSuffix = $portVersion + " + +REQUIRES=" + haiku$secondaryArchSuffix >= $haikuVersion + libiconv$secondaryArchSuffix + " + +BUILD_REQUIRES=" + haiku${secondaryArchSuffix}_devel >= $haikuVersion + libiconv${secondaryArchSuffic}_devel + " + +BUILD_PREREQUIRES=" + gettext$secondaryArchSuffix + cmd:gcc$secondaryArchSuffix + cmd:ld$secondaryArchSuffix + cmd:libtoolize + cmd:autom4te + cmd:aclocal + cmd:autoconf + cmd:automake + cmd:make + " + +BUILD() +{ + aclocal + libtoolize -fci + autoconf + automake --add-missing + runConfigure ./configure + make +} + +INSTALL() +{ + make install + prepareInstalledDevelLib libconfuse + packageEntries devel $developDir +} + +PROVIDES_devel=" + libconfuse${secondaryArchSuffix}_devel = $portVersion + devel:libconfuse$secondaryArchSuffix = $portVersion + " + +REQUIRES_devel=" + lib:libconfuse$secondaryArchSuffix == $portVersion base + " diff --git a/dev-libs/confuse/licenses/ISC b/dev-libs/confuse/licenses/ISC new file mode 100644 index 000000000..499a08df7 --- /dev/null +++ b/dev-libs/confuse/licenses/ISC @@ -0,0 +1,13 @@ +Copyright (c) 2002,2003,2007 Martin Hedenfalk + +Permission to use, copy, modify, and distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, 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 diff --git a/dev-libs/confuse/patches/confuse-2.7.patch b/dev-libs/confuse/patches/confuse-2.7.patch new file mode 100644 index 000000000..8c8255870 --- /dev/null +++ b/dev-libs/confuse/patches/confuse-2.7.patch @@ -0,0 +1,12 @@ +diff -Naur confuse-2.7/configure.ac confuse-2.7-haiku/configure.ac +--- confuse-2.7/configure.ac 2010-02-22 00:27:44.009961472 +0000 ++++ confuse-2.7-haiku/configure.ac 2014-01-12 12:40:30.637796352 +0000 +@@ -6,7 +6,7 @@ + AC_CONFIG_AUX_DIR(support) + AM_MAINTAINER_MODE + AM_INIT_AUTOMAKE +-AM_CONFIG_HEADER(config.h) ++AC_CONFIG_HEADERS(config.h) + AC_CONFIG_SRCDIR(src/confuse.c) + + # Checks for programs. From 3d9a2a6c95f559e5b8016962828f358ced837c0b Mon Sep 17 00:00:00 2001 From: Yourself Date: Sun, 12 Jan 2014 14:29:10 +0000 Subject: [PATCH 16/33] Add proper description for fftw --- sci-libs/fftw/fftw-3.2.2.recipe | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/sci-libs/fftw/fftw-3.2.2.recipe b/sci-libs/fftw/fftw-3.2.2.recipe index bbee624cc..c360c865f 100644 --- a/sci-libs/fftw/fftw-3.2.2.recipe +++ b/sci-libs/fftw/fftw-3.2.2.recipe @@ -1,5 +1,18 @@ SUMMARY="Fast C library for the Discrete Fourier Transform" -DESCRIPTION="Fast C library for the Discrete Fourier Transform" +DESCRIPTION=" +FFTW is a C subroutine library for computing the discrete Fourier transform \ +(DFT) in one or more dimensions, of arbitrary input size, and of both real and \ +complex data (as well as of even/odd data, i.e. the discrete cosine/sine \ +transforms or DCT/DST). We believe that FFTW, which is free software, should \ +become the FFT library of choice for most applications. +Our benchmarks, performed on on a variety of platforms, show that FFTW's \ +performance is typically superior to that of other publicly available FFT \ +software, and is even competitive with vendor-tuned codes. In contrast to \ +vendor-tuned codes, however, FFTW's performance is portable: the same program \ +will perform well on most architectures without modification. Hence the name, \ +FFTW, which stands for the somewhat whimsical title of Fastest Fourier \ +Transform in the West. +" HOMEPAGE="http://www.fftw.org/" SRC_URI="http://www.fftw.org/fftw-3.2.2.tar.gz" CHECKSUM_MD5="b616e5c91218cc778b5aa735fefb61ae" From ea94c6827f6ad33dac01ff73e569fc6e58b090e2 Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Sun, 12 Jan 2014 17:44:44 +0100 Subject: [PATCH 17/33] Turn LZO into working recipe. --- dev-libs/lzo/lzo-2.06.recipe | 62 +++++++++++++++++++++++++++++++----- 1 file changed, 54 insertions(+), 8 deletions(-) diff --git a/dev-libs/lzo/lzo-2.06.recipe b/dev-libs/lzo/lzo-2.06.recipe index 0828119ae..75ed95ee7 100644 --- a/dev-libs/lzo/lzo-2.06.recipe +++ b/dev-libs/lzo/lzo-2.06.recipe @@ -1,28 +1,74 @@ -DESCRIPTION="An extremely fast compression and decompression library" +SUMMARY="LZO is a portable lossless data compression library written in ANSI C." +DESCRIPTION=" +LZO is a data compression library which is suitable for data de-/compression in +real-time. This means it favours speed over compression ratio. + +LZO is written in ANSI C. Both the source code and the compressed data format +are designed to be portable across platforms. + +LZO implements a number of algorithms with the following features: +* Decompression is simple and *very* fast. +* Requires no memory for decompression. +* Compression is pretty fast. +* Requires 64 kB of memory for compression. +* Allows you to dial up extra compression at a speed cost in the compressor. + The speed of the decompressor is not reduced. +* Includes compression levels for generating pre-compressed data which achieve + a quite competitive compression ratio. +* There is also a compression level which needs only 8 kB for compression. +* Algorithm is thread safe. +* Algorithm is lossless. +* LZO supports overlapping compression and in-place decompression. +" HOMEPAGE="http://www.oberhumer.com/opensource/lzo/" SRC_URI="http://www.oberhumer.com/opensource/lzo/download/lzo-2.06.tar.gz" CHECKSUM_MD5="95380bd4081f85ef08c5209f4107e9f8" REVISION="1" -STATUS_HAIKU="stable" -DEPEND="" +ARCHITECTURES="x86_gcc2 x86" +SECONDARY_ARCHITECTURES="x86" + +PROVIDES=" + lzo$secondaryArchSuffix = $portVersion + lib:liblzo2$secondaryArchSuffix + " + +REQUIRES=" + haiku$secondaryArchSuffix >= $haikuVersion + " + +BUILD_PREREQUIRES=" + haiku${secondaryArchSuffix}_devel >= $haikuVersion + cmd:gcc$secondaryArchSuffix + cmd:make + " + BUILD() { - cd lzo-2.06 - ./configure --prefix=`finddir B_COMMON_DIRECTORY` - make + runConfigure ./configure + make $jobArgs } INSTALL() { - cd lzo-2.06 make install + + prepareInstalledDevelLib liblzo2 + packageEntries devel $developDir } TEST() { - cd lzo-2.06 make check } +PROVIDES_devel=" + lzo${secondaryArchSuffix}_devel = $portVersion + devel:liblzo2$secondaryArchSuffix + " + +REQUIRES_devel=" + lzo$secondaryArchSuffix == $portVersion base + " + LICENSE="GNU GPL v2" COPYRIGHT="1996-2011 Markus F.X.J Oberhumer" From afdee0e32fd68f987f9a4425f3217c8d4c88e84b Mon Sep 17 00:00:00 2001 From: Yourself Date: Sun, 12 Jan 2014 17:36:28 +0000 Subject: [PATCH 18/33] Fix building shared lib for confuse --- dev-libs/confuse/confuse-2.7.recipe | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dev-libs/confuse/confuse-2.7.recipe b/dev-libs/confuse/confuse-2.7.recipe index 14aa171b5..5b0e29149 100644 --- a/dev-libs/confuse/confuse-2.7.recipe +++ b/dev-libs/confuse/confuse-2.7.recipe @@ -53,7 +53,7 @@ BUILD() libtoolize -fci autoconf automake --add-missing - runConfigure ./configure + runConfigure ./configure --enable-shared make } From 5d75466825f61b102787d8c5ee453470c69de063 Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Sun, 12 Jan 2014 18:37:58 +0100 Subject: [PATCH 19/33] OpenTTD: add 1.3.3 recipe, remove older non-recipe. --- games-simulation/openttd/openttd-1.2.3.recipe | 32 -------- games-simulation/openttd/openttd-1.3.3.recipe | 79 +++++++++++++++++++ .../openttd/patches/openttd-1.3.3.patchset | 27 +++++++ 3 files changed, 106 insertions(+), 32 deletions(-) delete mode 100644 games-simulation/openttd/openttd-1.2.3.recipe create mode 100644 games-simulation/openttd/openttd-1.3.3.recipe create mode 100644 games-simulation/openttd/patches/openttd-1.3.3.patchset diff --git a/games-simulation/openttd/openttd-1.2.3.recipe b/games-simulation/openttd/openttd-1.2.3.recipe deleted file mode 100644 index 4f92f7b00..000000000 --- a/games-simulation/openttd/openttd-1.2.3.recipe +++ /dev/null @@ -1,32 +0,0 @@ -DESCRIPTION="OpenTTD is a clone of Transport Tycoon Deluxe" -MESSAGE="This port requires gcc4. You require game graphics/sound files to use this port" -HOMEPAGE="http://www.openttd.org" -SRC_URI="http://binaries.openttd.org/releases/1.2.3/openttd-1.2.3-source.tar.xz" -CHECKSUM_MD5="e1cf40f7c29f8f4b3e96c21626db241d" -REVISION="1" -STATUS_HAIKU="unstable" -DEPEND="media-libs/libsdl, - zlib, - xz-utils, - pkgconfig, - lzo" - -BUILD() -{ - cd openttd-1.2.3 - ./configure --prefix=`finddir B_COMMON_DIRECTORY` - make -} - -INSTALL() -{ - cd openttd-1.2.3 - make install - cp -R bundle /boot/apps - mv /boot/apps/bundle /boot/apps/OpenTTD\ 1.2.3 -} - -# no TEST script available - -COPYRIGHT="2005-2013 OpenTTD Team" -LICENSE="GNU GPL v2" diff --git a/games-simulation/openttd/openttd-1.3.3.recipe b/games-simulation/openttd/openttd-1.3.3.recipe new file mode 100644 index 000000000..a8ca3d275 --- /dev/null +++ b/games-simulation/openttd/openttd-1.3.3.recipe @@ -0,0 +1,79 @@ +SUMMARY="OpenTTD is a clone of Transport Tycoon Deluxe" +DESCRIPTION=" +OpenTTD is an open source simulation game based upon the popular Microprose +game \"Transport Tycoon Deluxe\", written by Chris Sawyer. It attempts to mimic +the original game as closely as possible while extending it with new features. +" +HOMEPAGE="http://www.openttd.org" +SRC_URI="http://binaries.openttd.org/releases/$portVersion/openttd-$portVersion-source.tar.xz" +CHECKSUM_MD5="97855877328d61d6c01833c8748a5b96" +REVISION="1" +ARCHITECTURES="x86" +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=" + openttd = $portVersion + " + +REQUIRES=" + haiku$secondaryArchSuffix >= $haikuVersion + lib:libsdl$secondaryArchSuffix + lib:libz$secondaryArchSuffix + lib:liblzma$secondaryArchSuffix + lib:liblzo2$secondaryArchSuffix + + openttd_gfx + openttd_snd + openttd_msx + " + +BUILD_REQUIRES=" + haiku${secondaryArchSuffix}_devel >= $haikuVersion + devel:libsdl$secondaryArchSuffix + devel:libz$secondaryArchSuffix + devel:liblzma$secondaryArchSuffix + devel:liblzo2$secondaryArchSuffix + " + +BUILD_PREREQUIRES=" + cmd:gcc$secondaryArchSuffix + cmd:git + cmd:make + cmd:pkg_config$secondaryArchSuffix + " + +PATCHES="openttd-$portVersion.patchset" +BUILD() +{ + export includeDir=/system/$relativeIncludeDir + # Non-autotools script, can't use runConfigure. + ./configure --prefix=$prefix --binary-dir=$relativeAppsDir \ + --data-dir=$relativeDataDir/openttd --doc-dir=$relativeDocDir/openttd \ + --man-dir=$relativeManDir --icon-dir=trash --menu-dir=trash + make +} + +INSTALL() +{ + make install + # The install script leaves some mess all around, let's clean it up... + rm -r $prefix/trash + rm -r $prefix/16x16 + rm -r $prefix/32x32 + rm -r $prefix/48x48 + rm -r $prefix/64x64 + rm -r $prefix/128x128 + rm -r $prefix/256x256 + + addAppDeskbarSymlink $appsDir/openttd "Transport Tycoon Deluxe" +} + +# no TEST script available + +COPYRIGHT="2005-2013 OpenTTD Team" +LICENSE="GNU GPL v2" diff --git a/games-simulation/openttd/patches/openttd-1.3.3.patchset b/games-simulation/openttd/patches/openttd-1.3.3.patchset new file mode 100644 index 000000000..174dbc4c0 --- /dev/null +++ b/games-simulation/openttd/patches/openttd-1.3.3.patchset @@ -0,0 +1,27 @@ +From 0d2515090adbf1ed589046047727ce9a088c0db2 Mon Sep 17 00:00:00 2001 +From: Adrien Destugues +Date: Sun, 12 Jan 2014 18:36:42 +0100 +Subject: Hack to avoid hardcoded library search path. + +Makes it possible to find zlib when building as an hybrid package. + +diff --git a/config.lib b/config.lib +index 2dc14a8..215705d 100644 +--- a/config.lib ++++ b/config.lib +@@ -2597,10 +2597,10 @@ detect_library() { + fi + fi + if [ -z "$res" ] && [ "$os" = "HAIKU" ]; then +- eval "$2=`ls -1 /boot/common/include/$4*.h 2>/dev/null | egrep \"\/$5\$\"`" ++ eval "$2=`ls -1 $includeDir/$4*.h 2>/dev/null | egrep \"\/$5\$\"`" + eval "res=\$$2" + if [ -z "$res" ]; then +- log 2 " trying /boot/common/include/$4$5... no" ++ log 2 " trying $includeDir/$4$5... no" + fi + fi + +-- +1.8.3.4 + From 9a9f45b24e305b34a3b84abee1ed9aefce0d6416 Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Sun, 12 Jan 2014 19:34:40 +0100 Subject: [PATCH 20/33] Fix pkg-config file for liblzma. --- app-arch/xz_utils/xz_utils-5.0.4.recipe | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/app-arch/xz_utils/xz_utils-5.0.4.recipe b/app-arch/xz_utils/xz_utils-5.0.4.recipe index bfe52c453..36adc8046 100644 --- a/app-arch/xz_utils/xz_utils-5.0.4.recipe +++ b/app-arch/xz_utils/xz_utils-5.0.4.recipe @@ -8,7 +8,7 @@ LICENSE=" GNU GPL v3 " COPYRIGHT="2005-2012 Lasse Collin" -REVISION="2" +REVISION="3" ARCHITECTURES="x86 x86_64" if [ $effectiveTargetArchitecture != x86_gcc2 ]; then # x86_gcc2 is fine as primary target architecture as long as we're building @@ -88,6 +88,7 @@ INSTALL() cp "$portDir/additional-files/xz_utils-expander-rules" \ "$expanderRulesDir/xz_utils" + fixPkgconfig liblzma prepareInstalledDevelLibs liblzma } From 2ac5272201116654037f818816c94bcec871f624 Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Sun, 12 Jan 2014 20:20:18 +0100 Subject: [PATCH 21/33] OpenTTD: add recipes for the base data sets. It's now possible to play the game without original Transport Tycoon Deluxe datafiles. --- games-simulation/openttd/openttd-1.3.3.recipe | 4 +- .../openttd_gfx/openttd_gfx-0.4.7.recipe | 44 +++++++++++++++++++ .../openttd_msx/openttd_msx-0.3.1.recipe | 44 +++++++++++++++++++ .../openttd_sfx/openttd_sfx-0.2.3.recipe | 44 +++++++++++++++++++ 4 files changed, 134 insertions(+), 2 deletions(-) create mode 100644 games-simulation/openttd_gfx/openttd_gfx-0.4.7.recipe create mode 100644 games-simulation/openttd_msx/openttd_msx-0.3.1.recipe create mode 100644 games-simulation/openttd_sfx/openttd_sfx-0.2.3.recipe diff --git a/games-simulation/openttd/openttd-1.3.3.recipe b/games-simulation/openttd/openttd-1.3.3.recipe index a8ca3d275..81ce799cf 100644 --- a/games-simulation/openttd/openttd-1.3.3.recipe +++ b/games-simulation/openttd/openttd-1.3.3.recipe @@ -28,7 +28,7 @@ REQUIRES=" lib:liblzo2$secondaryArchSuffix openttd_gfx - openttd_snd + openttd_sfx openttd_msx " @@ -55,7 +55,7 @@ BUILD() ./configure --prefix=$prefix --binary-dir=$relativeAppsDir \ --data-dir=$relativeDataDir/openttd --doc-dir=$relativeDocDir/openttd \ --man-dir=$relativeManDir --icon-dir=trash --menu-dir=trash - make + make $jobArgs } INSTALL() diff --git a/games-simulation/openttd_gfx/openttd_gfx-0.4.7.recipe b/games-simulation/openttd_gfx/openttd_gfx-0.4.7.recipe new file mode 100644 index 000000000..3ae056d67 --- /dev/null +++ b/games-simulation/openttd_gfx/openttd_gfx-0.4.7.recipe @@ -0,0 +1,44 @@ +SUMMARY="OpenTTD - free graphics files" +DESCRIPTION=" +OpenTTD is an open source simulation game based upon the popular Microprose +game \"Transport Tycoon Deluxe\", written by Chris Sawyer. It attempts to mimic +the original game as closely as possible while extending it with new features. + +This package provides free to use graphics file. You can use them if you don't +have the files from the original Transport Tycoon Deluxe game. +" +HOMEPAGE="http://www.openttd.org" +SRC_URI="http://binaries.openttd.org/extra/opengfx/$portVersion/opengfx-$portVersion-all.zip" +CHECKSUM_MD5="7709afafb1e6429ee517a5c93a03316c" +REVISION="1" +ARCHITECTURES="x86_gcc2 x86" + +SOURCE_DIR="opengfx-$portVersion" +PROVIDES=" + openttd_gfx = $portVersion + " + +#REQUIRES=" +# " + +#BUILD_REQUIRES=" +# " + +#BUILD_PREREQUIRES=" +# " + +BUILD() +{ + echo "Nothing to build!" +} + +INSTALL() +{ + mkdir -p $dataDir/openttd/baseset/opengfx + cp * $dataDir/openttd/baseset/opengfx +} + +# no TEST script available + +COPYRIGHT="2005-2013 OpenTTD Team" +LICENSE="GNU GPL v2" diff --git a/games-simulation/openttd_msx/openttd_msx-0.3.1.recipe b/games-simulation/openttd_msx/openttd_msx-0.3.1.recipe new file mode 100644 index 000000000..3b185eb09 --- /dev/null +++ b/games-simulation/openttd_msx/openttd_msx-0.3.1.recipe @@ -0,0 +1,44 @@ +SUMMARY="OpenTTD - free music files" +DESCRIPTION=" +OpenTTD is an open source simulation game based upon the popular Microprose +game \"Transport Tycoon Deluxe\", written by Chris Sawyer. It attempts to mimic +the original game as closely as possible while extending it with new features. + +This package provides free to use music files. You can use them if you don't +have the files from the original Transport Tycoon Deluxe game. +" +HOMEPAGE="http://www.openttd.org" +SRC_URI="http://binaries.openttd.org/extra/openmsx/$portVersion/openmsx-$portVersion-all.zip" +CHECKSUM_MD5="858b79d44aea6de5e15d9d1439e86cc3" +REVISION="1" +ARCHITECTURES="x86_gcc2 x86" + +SOURCE_DIR="openmsx-$portVersion" +PROVIDES=" + openttd_msx = $portVersion + " + +#REQUIRES=" +# " + +#BUILD_REQUIRES=" +# " + +#BUILD_PREREQUIRES=" +# " + +BUILD() +{ + echo "Nothing to build!" +} + +INSTALL() +{ + mkdir -p $dataDir/openttd/baseset/openmsx + cp * $dataDir/openttd/baseset/openmsx +} + +# no TEST script available + +COPYRIGHT="2005-2013 OpenTTD Team" +LICENSE="GNU GPL v2" diff --git a/games-simulation/openttd_sfx/openttd_sfx-0.2.3.recipe b/games-simulation/openttd_sfx/openttd_sfx-0.2.3.recipe new file mode 100644 index 000000000..3e1b50e53 --- /dev/null +++ b/games-simulation/openttd_sfx/openttd_sfx-0.2.3.recipe @@ -0,0 +1,44 @@ +SUMMARY="OpenTTD - free sound files" +DESCRIPTION=" +OpenTTD is an open source simulation game based upon the popular Microprose +game \"Transport Tycoon Deluxe\", written by Chris Sawyer. It attempts to mimic +the original game as closely as possible while extending it with new features. + +This package provides free to use sound files. You can use them if you don't +have the files from the original Transport Tycoon Deluxe game. +" +HOMEPAGE="http://www.openttd.org" +SRC_URI="http://binaries.openttd.org/extra/opensfx/$portVersion/opensfx-$portVersion-all.zip" +CHECKSUM_MD5="3605b82f24153500c8a1804e4420168a" +REVISION="1" +ARCHITECTURES="x86_gcc2 x86" + +SOURCE_DIR="opensfx-$portVersion" +PROVIDES=" + openttd_sfx = $portVersion + " + +#REQUIRES=" +# " + +#BUILD_REQUIRES=" +# " + +#BUILD_PREREQUIRES=" +# " + +BUILD() +{ + echo "Nothing to build!" +} + +INSTALL() +{ + mkdir -p $dataDir/openttd/baseset/opensfx + cp * $dataDir/openttd/baseset/opensfx +} + +# no TEST script available + +COPYRIGHT="2005-2013 OpenTTD Team" +LICENSE="GNU GPL v2" From c6a97c79f720a859e4fcf7eb4834da3abdcc782f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adri=C3=A1n=20Arroyo=20Calle?= Date: Sun, 12 Jan 2014 20:01:58 +0000 Subject: [PATCH 22/33] Changes to OpenTTD recipe --- games-simulation/openttd/openttd-1.3.3.recipe | 2 +- games-simulation/openttd_gfx/openttd_gfx-0.4.7.recipe | 4 ++-- games-simulation/openttd_msx/openttd_msx-0.3.1.recipe | 4 ++-- games-simulation/openttd_sfx/openttd_sfx-0.2.3.recipe | 4 ++-- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/games-simulation/openttd/openttd-1.3.3.recipe b/games-simulation/openttd/openttd-1.3.3.recipe index 81ce799cf..7431f4476 100644 --- a/games-simulation/openttd/openttd-1.3.3.recipe +++ b/games-simulation/openttd/openttd-1.3.3.recipe @@ -70,7 +70,7 @@ INSTALL() rm -r $prefix/128x128 rm -r $prefix/256x256 - addAppDeskbarSymlink $appsDir/openttd "Transport Tycoon Deluxe" + addAppDeskbarSymlink $appsDir/openttd "OpenTTD" } # no TEST script available diff --git a/games-simulation/openttd_gfx/openttd_gfx-0.4.7.recipe b/games-simulation/openttd_gfx/openttd_gfx-0.4.7.recipe index 3ae056d67..4037b43c4 100644 --- a/games-simulation/openttd_gfx/openttd_gfx-0.4.7.recipe +++ b/games-simulation/openttd_gfx/openttd_gfx-0.4.7.recipe @@ -11,7 +11,7 @@ HOMEPAGE="http://www.openttd.org" SRC_URI="http://binaries.openttd.org/extra/opengfx/$portVersion/opengfx-$portVersion-all.zip" CHECKSUM_MD5="7709afafb1e6429ee517a5c93a03316c" REVISION="1" -ARCHITECTURES="x86_gcc2 x86" +ARCHITECTURES="any" SOURCE_DIR="opengfx-$portVersion" PROVIDES=" @@ -29,7 +29,7 @@ PROVIDES=" BUILD() { - echo "Nothing to build!" + true } INSTALL() diff --git a/games-simulation/openttd_msx/openttd_msx-0.3.1.recipe b/games-simulation/openttd_msx/openttd_msx-0.3.1.recipe index 3b185eb09..4e4c492c1 100644 --- a/games-simulation/openttd_msx/openttd_msx-0.3.1.recipe +++ b/games-simulation/openttd_msx/openttd_msx-0.3.1.recipe @@ -11,7 +11,7 @@ HOMEPAGE="http://www.openttd.org" SRC_URI="http://binaries.openttd.org/extra/openmsx/$portVersion/openmsx-$portVersion-all.zip" CHECKSUM_MD5="858b79d44aea6de5e15d9d1439e86cc3" REVISION="1" -ARCHITECTURES="x86_gcc2 x86" +ARCHITECTURES="any" SOURCE_DIR="openmsx-$portVersion" PROVIDES=" @@ -29,7 +29,7 @@ PROVIDES=" BUILD() { - echo "Nothing to build!" + true } INSTALL() diff --git a/games-simulation/openttd_sfx/openttd_sfx-0.2.3.recipe b/games-simulation/openttd_sfx/openttd_sfx-0.2.3.recipe index 3e1b50e53..fad2ce4d4 100644 --- a/games-simulation/openttd_sfx/openttd_sfx-0.2.3.recipe +++ b/games-simulation/openttd_sfx/openttd_sfx-0.2.3.recipe @@ -11,7 +11,7 @@ HOMEPAGE="http://www.openttd.org" SRC_URI="http://binaries.openttd.org/extra/opensfx/$portVersion/opensfx-$portVersion-all.zip" CHECKSUM_MD5="3605b82f24153500c8a1804e4420168a" REVISION="1" -ARCHITECTURES="x86_gcc2 x86" +ARCHITECTURES="any" SOURCE_DIR="opensfx-$portVersion" PROVIDES=" @@ -29,7 +29,7 @@ PROVIDES=" BUILD() { - echo "Nothing to build!" + true } INSTALL() From 346ac372ccf790db17f4ef2f2a436745c5f077bf Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Sun, 12 Jan 2014 21:47:13 +0100 Subject: [PATCH 23/33] Add XRick recipe. --- .../xrick/patches/xrick-021212.patchset | 30 ++++++++++ games-arcade/xrick/xrick-021212.recipe | 55 +++++++++++++++++++ 2 files changed, 85 insertions(+) create mode 100644 games-arcade/xrick/patches/xrick-021212.patchset create mode 100644 games-arcade/xrick/xrick-021212.recipe diff --git a/games-arcade/xrick/patches/xrick-021212.patchset b/games-arcade/xrick/patches/xrick-021212.patchset new file mode 100644 index 000000000..3f130c1d8 --- /dev/null +++ b/games-arcade/xrick/patches/xrick-021212.patchset @@ -0,0 +1,30 @@ +From 1989e5b49aa41dee60c76b0951fea2dd8b1b2251 Mon Sep 17 00:00:00 2001 +From: Adrien Destugues +Date: Sun, 12 Jan 2014 21:32:19 +0100 +Subject: Look for the datafile next to the executable. + +XRick can be run from Deskbar or Tracker this way. + +diff --git a/src/xrick.c b/src/xrick.c +index 38d4e26..870adc7 100644 +--- a/src/xrick.c ++++ b/src/xrick.c +@@ -25,8 +25,13 @@ main(int argc, char *argv[]) + sys_init(argc, argv); + if (sysarg_args_data) + data_setpath(sysarg_args_data); +- else +- data_setpath("data.zip"); ++ else { ++ const char* basename = dirname(argv[0]); ++ char* datapath = malloc(strlen(basename) + strlen("/data.zip") + 1); ++ strcpy(datapath, basename); ++ strcat(datapath, "/data.zip"); ++ data_setpath(datapath); ++ } + game_run(); + data_closepath(); + sys_shutdown(); +-- +1.8.3.4 + diff --git a/games-arcade/xrick/xrick-021212.recipe b/games-arcade/xrick/xrick-021212.recipe new file mode 100644 index 000000000..bef842bcb --- /dev/null +++ b/games-arcade/xrick/xrick-021212.recipe @@ -0,0 +1,55 @@ +SUMMARY="xrick is a clone of Rick Dangerous." +HOMEPAGE="http://www.bigorno.net/xrick" +LICENSE="xrick" +COPYRIGHT="2000-2006 Bigorno.net" +SRC_URI="http://www.bigorno.net/xrick/xrick-021212.tgz" +CHECKSUM_MD5="615190051481266710cb43ecd1fe930c" +REVISION="1" +ARCHITECTURES="x86_gcc2" + +PROVIDES=" + xrick = $portVersion + app:xrick = $portVersion + " + +REQUIRES=" + haiku$secondaryArchSuffix >= $haikuVersion + lib:libsdl$secondaryArchSuffix + lib:libz$secondaryArchSuffix + " +BUILD_REQUIRES=" + devel:libsdl$secondaryArchSuffix + devel:libz$secondaryArchSuffix + " +BUILD_PREREQUIRES=" + haiku${secondaryArchSuffix}_devel >= $haikuVersion + haiku_devel >= $haikuVersion + cmd:gcc$secondaryArchSuffix + cmd:ld$secondaryArchSuffix + cmd:make + " + +PATCHES="xrick-$portVersion.patchset" +BUILD() +{ + make $jobArgs +} + +INSTALL() +{ + mkdir -p $appsDir/XRick + cp xrick $appsDir/XRick + cp data.zip $appsDir/XRick + addAppDeskbarSymlink $appsDir/XRick/xrick "Rick Dangerous" +} + +# ----- DESCRIPTION ----------------------------------------------------------- + +DESCRIPTION=" +Remember Rick Dangerous? + +Way before Lara Croft, back in the 1980's and early 1990's, Rick Dangerous was +the Indiana Jones of computer games, running away from rolling rocks, avoiding +traps, from South America to a futuristic missile base via Egypt and the +Schwarzendumpf castle. +" From 9a28cf36d21b499447aa0fa4344868ed393af9f1 Mon Sep 17 00:00:00 2001 From: Ed Robbins Date: Sun, 12 Jan 2014 22:23:00 +0000 Subject: [PATCH 24/33] Add libftdi recipe --- dev-embedded/libftdi/libftdi-1.0.recipe | 84 +++++++++++++++++++ .../libftdi/patches/libftdi-1.0.patch | 39 +++++++++ 2 files changed, 123 insertions(+) create mode 100644 dev-embedded/libftdi/libftdi-1.0.recipe create mode 100644 dev-embedded/libftdi/patches/libftdi-1.0.patch diff --git a/dev-embedded/libftdi/libftdi-1.0.recipe b/dev-embedded/libftdi/libftdi-1.0.recipe new file mode 100644 index 000000000..461b23291 --- /dev/null +++ b/dev-embedded/libftdi/libftdi-1.0.recipe @@ -0,0 +1,84 @@ +SUMMARY="libFTDI is an open source library to talk to FTDI chips" +DESCRIPTION=" +libFTDI is an open source library to talk to FTDI chips: FT232BM, FT245BM, \ +FT2232C, FT2232D, FT245R and FT232H including the popular bitbang mode. The \ +library is linked with your program in userspace, no kernel driver required. +libFTDI works perfectly with Linux, Windows, MacOS X and BSD variants thanks to \ +libusb. +" +HOMEPAGE="http://www.intra2net.com/en/developer/libftdi/index.php" +SRC_URI="http://www.intra2net.com/en/developer/libftdi/download/libftdi1-1.0.tar.bz2" +CHECKSUM_MD5="e02dd77ee10b82b5edfbb8c199185bbf" +LICENSE=" + GNU LGPL v2.1 + GNU GPL v2 + " +COPYRIGHT="2003-2013 Intra2net AG and the libftdi developers" +REVISION="1" +ARCHITECTURES="x86 x86_gcc2" +SECONDARY_ARCHITECTURES="x86_gcc2 x86" +SOURCE_DIR="libftdi1-$portVersion" +PATCHES="libftdi-1.0.patch" + +PROVIDES=" + libftdi1$secondaryArchSuffix = $portVersion + lib:libftdi1$secondaryArchSuffix = $portVersion + cmd:ftdi_eeprom$secondaryArchSuffix + cmd:libftdi1_config$secondaryArchSuffix + " + +REQUIRES=" + haiku$secondaryArchSuffix >= $haikuVersion + lib:libconfuse$secondaryArchSuffix >= 2.5 + libusb$secondaryArchSuffix >= 1.0 + " + +BUILD_REQUIRES=" + haiku${secondaryArchSuffix}_devel >= $haikuVersion + libconfuse${secondaryArchSuffix}_devel >= 2.5 + libusb${secondaryArchSuffix}_devel + " + +BUILD_PREREQUIRES=" + cmd:gcc$secondaryArchSuffix + cmd:ld$secondaryArchSuffix + cmd:cmake + cmd:make + " + +BUILD() +{ + rm -rf build + mkdir build + cd build + cmake -DCMAKE_INSTALL_PREFIX:PATH=$prefix \ + -DLIBUSB_INCLUDE_DIR=/system/$relativeIncludeDir/libusb-1.0 \ + -DConfuse_INCLUDE_DIRS=/system/$relativeIncludeDir \ + -DConfuse_LIBRARY_DIRS=/system/$relativeDevelopLibDir \ + -DConfuse_LIBRARIES="libconfuse.so" \ + -DConfuse_FOUND=TRUE \ + -DLIBUSB="libusb-1.0.so" \ + -DLIB_SUFFIX=$secondaryArchSubDir \ + -DBIN_SUFFIX=$secondaryArchSubDir \ + -DINC_SUFFIX=$secondaryArchSubDir \ + .. + make +} + +INSTALL() +{ + cd build + make install + prepareInstalledDevelLib libftdi1 + fixPkgconfig + packageEntries devel $developDir +} + +PROVIDES_devel=" + libftdi1${secondaryArchSuffix}_devel = $portVersion + devel:libftdi1$secondaryArchSuffix = $portVersion + " + +REQUIRES_devel=" + lib:libftdi1$secondaryArchSuffix == $portVersion base + " diff --git a/dev-embedded/libftdi/patches/libftdi-1.0.patch b/dev-embedded/libftdi/patches/libftdi-1.0.patch new file mode 100644 index 000000000..3f29560be --- /dev/null +++ b/dev-embedded/libftdi/patches/libftdi-1.0.patch @@ -0,0 +1,39 @@ +diff -Naur libftdi1-1.0/CMakeLists.txt libftdi1-1.0-haiku/CMakeLists.txt +--- libftdi1-1.0/CMakeLists.txt 2013-01-29 13:21:38.038273024 +0000 ++++ libftdi1-1.0-haiku/CMakeLists.txt 2014-01-12 22:10:44.125566976 +0000 +@@ -166,7 +166,7 @@ + if ( UNIX ) + configure_file ( libftdi1-config.in ${CMAKE_CURRENT_BINARY_DIR}/libftdi1-config @ONLY ) + install ( PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/libftdi1-config +- DESTINATION bin ) ++ DESTINATION bin${BIN_SUFFIX} ) + + # config script install path + if ( NOT DEFINED LIBFTDI_CMAKE_CONFIG_DIR ) +diff -Naur libftdi1-1.0/ftdi_eeprom/CMakeLists.txt libftdi1-1.0-haiku/ftdi_eeprom/CMakeLists.txt +--- libftdi1-1.0/ftdi_eeprom/CMakeLists.txt 2013-01-29 13:21:38.042991616 +0000 ++++ libftdi1-1.0-haiku/ftdi_eeprom/CMakeLists.txt 2014-01-12 22:11:26.599523328 +0000 +@@ -28,9 +28,9 @@ + + add_executable(ftdi_eeprom main.c) + target_link_libraries(ftdi_eeprom ftdi1) +- target_link_libraries(ftdi_eeprom ${Confuse_LIBRARIES}) ++ target_link_libraries(ftdi_eeprom ${Confuse_LIBRARIES} ${LIBUSB}) + +- install(TARGETS ftdi_eeprom DESTINATION bin) ++ install(TARGETS ftdi_eeprom DESTINATION bin${BIN_SUFFIX}) + + else(Confuse_FOUND) + message(STATUS "libConfuse not found, won't build ftdi_eeprom") +diff -Naur libftdi1-1.0/src/CMakeLists.txt libftdi1-1.0-haiku/src/CMakeLists.txt +--- libftdi1-1.0/src/CMakeLists.txt 2013-01-29 13:21:38.044826624 +0000 ++++ libftdi1-1.0-haiku/src/CMakeLists.txt 2014-01-12 21:54:24.677117952 +0000 +@@ -51,7 +51,7 @@ + ) + + install( FILES ${c_headers} +- DESTINATION include/${PROJECT_NAME} ++ DESTINATION develop/headers${INC_SUFFIX}/${PROJECT_NAME} + COMPONENT headers + ) + From e2281ef32d0e908aa9b1ceeb19f8ffd8a64217d0 Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Mon, 13 Jan 2014 09:06:28 +0100 Subject: [PATCH 25/33] Add HaikuWebkit 1.2.3 recipe. Sources are now downloaded from github using the "release" feature which genrates a tar.gz archive from a tag. --- .../haikuwebkit/haikuwebkit-1.2.3.recipe | 100 ++++++++++++++++++ 1 file changed, 100 insertions(+) create mode 100644 haiku-libs/haikuwebkit/haikuwebkit-1.2.3.recipe diff --git a/haiku-libs/haikuwebkit/haikuwebkit-1.2.3.recipe b/haiku-libs/haikuwebkit/haikuwebkit-1.2.3.recipe new file mode 100644 index 000000000..0c0c48c53 --- /dev/null +++ b/haiku-libs/haikuwebkit/haikuwebkit-1.2.3.recipe @@ -0,0 +1,100 @@ +SUMMARY="Open source web browser engine" +DESCRIPTION=" +WebKit is an open source web browser engine. WebKit is also the name of the \ +Mac OS X system framework version of the engine that's used by Safari, \ +Dashboard, Mail, and many other OS X applications. WebKit's HTML and \ +JavaScript code began as a branch of the KHTML and KJS libraries from KDE. +" +HOMEPAGE="http://www.webkit.org/" +COPYRIGHT="1998-2012 Apple Inc., Google Inc., et al" +LICENSE=" + GNU LGPL v2 + GNU LGPL v2.1 + MIT + " +SRC_URI="https://github.com/haiku/webkit/archive/1.2.3.tar.gz" +CHECKSUM_MD5="07068bc8afa6038b6f34a6931d11f4ef" +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=" + haikuwebkit$secondaryArchSuffix = $portVersion + lib:libWebKit$secondaryArchSuffix = $portVersion + " +REQUIRES=" + haiku$secondaryArchSuffix >= $haikuVersion + lib:libicuuc$secondaryArchSuffix + lib:libjpeg$secondaryArchSuffix + lib:libpng$secondaryArchSuffix + lib:libsqlite3$secondaryArchSuffix + lib:libxml2$secondaryArchSuffix + lib:libxslt$secondaryArchSuffix + lib:libz$secondaryArchSuffix + " + +BUILD_REQUIRES=" + haiku${secondaryArchSuffix}_devel >= $haikuVersion + haiku_devel >= $haikuVersion + devel:libicuuc$secondaryArchSuffix + devel:libjpeg$secondaryArchSuffix + devel:libpng$secondaryArchSuffix + devel:libsqlite3$secondaryArchSuffix + devel:libxml2$secondaryArchSuffix + devel:libxslt$secondaryArchSuffix + devel:libz$secondaryArchSuffix + " +BUILD_PREREQUIRES=" + cmd:pkg_config + cmd:flex + cmd:bison + cmd:gcc$secondaryArchSuffix + cmd:gperf + cmd:ld$secondaryArchSuffix + cmd:m4 + cmd:make + cmd:perl + cmd:python + cmd:cmake + cmd:ruby + " + +SOURCE_DIR="webkit-$portVersion" + +BUILD() +{ + export PKG_CONFIG_LIBDIR="`finddir B_SYSTEM_DIRECTORY`/$relativeDevelopLibDir/pkgconfig" + Tools/Scripts/build-webkit --haiku --no-webkit2 \ + --cmakeargs="-DCMAKE_INSTALL_PREFIX=$prefix" +} + +INSTALL() +{ + cd WebKitBuild/Release + make install + + rm $developLibDir/* + prepareInstalledDevelLibs libWebKit + + # devel package + packageEntries devel \ + $developDir +} + +# ----- devel package ------------------------------------------------------- + +PROVIDES_devel=" + haikuwebkit${secondaryArchSuffix}_devel = $portVersion + devel:libjavascriptcore$secondaryArchSuffix = $portVersion + devel:libwebcore$secondaryArchSuffix = $portVersion + devel:libWebKit$secondaryArchSuffix = $portVersion + devel:libwtf$secondaryArchSuffix = $portVersion + " +REQUIRES_devel=" + haikuwebkit$secondaryArchSuffix == $portVersion base + " From 33783491bc54efb9eb1b6941dadcf527e9e0ed39 Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Mon, 13 Jan 2014 09:07:08 +0100 Subject: [PATCH 26/33] Add the xrick license I forgot to commit earlier. --- games-arcade/xrick/licenses/xrick | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 games-arcade/xrick/licenses/xrick diff --git a/games-arcade/xrick/licenses/xrick b/games-arcade/xrick/licenses/xrick new file mode 100644 index 000000000..dfa22afca --- /dev/null +++ b/games-arcade/xrick/licenses/xrick @@ -0,0 +1,14 @@ +I have written the xrick code. However, graphics and maps and sounds are by the +authors of the original Rick Dangerous game, and "Rick Dangerous" remains a +trademark of its owners (Core Design) who have yet to reply to my emails. + +This makes it a bit difficult to formally release the whole code, including +data for graphics and maps and sounds, under the terms of licences such as the +GNU General Public License. So the code is released in the spirit of the GNU +GPL. Whatever that means. Do what you want with it, but please let me know. I +hate it when I discover xrick has been ported to the FooDoo GameSphereTM and I +was not even aware of it. + +This program is distributed in the hope that it will be useful, but WITHOUT ANY +WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A +PARTICULAR PURPOSE. From 60e33cc615814619ee72a7f73b49e29a1c09a011 Mon Sep 17 00:00:00 2001 From: Ed Robbins Date: Mon, 13 Jan 2014 12:44:19 +0000 Subject: [PATCH 27/33] Fix libftdi to build libftdi++ --- dev-embedded/libftdi/libftdi-1.0.recipe | 5 ++++ .../libftdi/patches/libftdi-1.0.patch | 24 ++++++++++++++----- 2 files changed, 23 insertions(+), 6 deletions(-) diff --git a/dev-embedded/libftdi/libftdi-1.0.recipe b/dev-embedded/libftdi/libftdi-1.0.recipe index 461b23291..4b751dc26 100644 --- a/dev-embedded/libftdi/libftdi-1.0.recipe +++ b/dev-embedded/libftdi/libftdi-1.0.recipe @@ -23,6 +23,7 @@ PATCHES="libftdi-1.0.patch" PROVIDES=" libftdi1$secondaryArchSuffix = $portVersion lib:libftdi1$secondaryArchSuffix = $portVersion + lib:libftdipp1$secondaryArchSuffix = $portVersion cmd:ftdi_eeprom$secondaryArchSuffix cmd:libftdi1_config$secondaryArchSuffix " @@ -31,12 +32,14 @@ REQUIRES=" haiku$secondaryArchSuffix >= $haikuVersion lib:libconfuse$secondaryArchSuffix >= 2.5 libusb$secondaryArchSuffix >= 1.0 + boost$secondaryArchSuffix " BUILD_REQUIRES=" haiku${secondaryArchSuffix}_devel >= $haikuVersion libconfuse${secondaryArchSuffix}_devel >= 2.5 libusb${secondaryArchSuffix}_devel + boost_devel$secondaryArchSuffix " BUILD_PREREQUIRES=" @@ -70,6 +73,7 @@ INSTALL() cd build make install prepareInstalledDevelLib libftdi1 + prepareInstalledDevelLib libftdipp1 fixPkgconfig packageEntries devel $developDir } @@ -77,6 +81,7 @@ INSTALL() PROVIDES_devel=" libftdi1${secondaryArchSuffix}_devel = $portVersion devel:libftdi1$secondaryArchSuffix = $portVersion + devel:libftdipp1$secondaryArchSuffix = $portVersion " REQUIRES_devel=" diff --git a/dev-embedded/libftdi/patches/libftdi-1.0.patch b/dev-embedded/libftdi/patches/libftdi-1.0.patch index 3f29560be..e906886ea 100644 --- a/dev-embedded/libftdi/patches/libftdi-1.0.patch +++ b/dev-embedded/libftdi/patches/libftdi-1.0.patch @@ -1,6 +1,6 @@ diff -Naur libftdi1-1.0/CMakeLists.txt libftdi1-1.0-haiku/CMakeLists.txt ---- libftdi1-1.0/CMakeLists.txt 2013-01-29 13:21:38.038273024 +0000 -+++ libftdi1-1.0-haiku/CMakeLists.txt 2014-01-12 22:10:44.125566976 +0000 +--- libftdi1-1.0/CMakeLists.txt 2013-01-29 13:21:38.000262144 +0000 ++++ libftdi1-1.0-haiku/CMakeLists.txt 2014-01-13 12:26:59.005505024 +0000 @@ -166,7 +166,7 @@ if ( UNIX ) configure_file ( libftdi1-config.in ${CMAKE_CURRENT_BINARY_DIR}/libftdi1-config @ONLY ) @@ -11,8 +11,8 @@ diff -Naur libftdi1-1.0/CMakeLists.txt libftdi1-1.0-haiku/CMakeLists.txt # config script install path if ( NOT DEFINED LIBFTDI_CMAKE_CONFIG_DIR ) diff -Naur libftdi1-1.0/ftdi_eeprom/CMakeLists.txt libftdi1-1.0-haiku/ftdi_eeprom/CMakeLists.txt ---- libftdi1-1.0/ftdi_eeprom/CMakeLists.txt 2013-01-29 13:21:38.042991616 +0000 -+++ libftdi1-1.0-haiku/ftdi_eeprom/CMakeLists.txt 2014-01-12 22:11:26.599523328 +0000 +--- libftdi1-1.0/ftdi_eeprom/CMakeLists.txt 2013-01-29 13:21:38.004718592 +0000 ++++ libftdi1-1.0-haiku/ftdi_eeprom/CMakeLists.txt 2014-01-13 12:26:59.008912896 +0000 @@ -28,9 +28,9 @@ add_executable(ftdi_eeprom main.c) @@ -25,9 +25,21 @@ diff -Naur libftdi1-1.0/ftdi_eeprom/CMakeLists.txt libftdi1-1.0-haiku/ftdi_eepro else(Confuse_FOUND) message(STATUS "libConfuse not found, won't build ftdi_eeprom") +diff -Naur libftdi1-1.0/ftdipp/CMakeLists.txt libftdi1-1.0-haiku/ftdipp/CMakeLists.txt +--- libftdi1-1.0/ftdipp/CMakeLists.txt 2013-01-29 13:21:38.005242880 +0000 ++++ libftdi1-1.0-haiku/ftdipp/CMakeLists.txt 2014-01-13 12:32:43.713293824 +0000 +@@ -51,7 +51,7 @@ + COMPONENT staticlibs + ) + install( FILES ${cpp_headers} +- DESTINATION include/${PROJECT_NAME} ++ DESTINATION develop/headers${INC_SUFFIX}/${PROJECT_NAME} + COMPONENT headers + ) + endif(${UNIX}) diff -Naur libftdi1-1.0/src/CMakeLists.txt libftdi1-1.0-haiku/src/CMakeLists.txt ---- libftdi1-1.0/src/CMakeLists.txt 2013-01-29 13:21:38.044826624 +0000 -+++ libftdi1-1.0-haiku/src/CMakeLists.txt 2014-01-12 21:54:24.677117952 +0000 +--- libftdi1-1.0/src/CMakeLists.txt 2013-01-29 13:21:38.006553600 +0000 ++++ libftdi1-1.0-haiku/src/CMakeLists.txt 2014-01-13 12:26:59.012058624 +0000 @@ -51,7 +51,7 @@ ) From 39a1b2a7e164153d04e8bf44ae0e2e7682432a4b Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Mon, 13 Jan 2014 20:34:54 +0100 Subject: [PATCH 28/33] gettext: Fix policy warnings. --- sys-devel/gettext/gettext-0.18.1.1.recipe | 25 ++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/sys-devel/gettext/gettext-0.18.1.1.recipe b/sys-devel/gettext/gettext-0.18.1.1.recipe index 1a6cb99f5..666aaf74e 100644 --- a/sys-devel/gettext/gettext-0.18.1.1.recipe +++ b/sys-devel/gettext/gettext-0.18.1.1.recipe @@ -35,8 +35,31 @@ PROVIDES=" devel:libintl$secondaryArchSuffix = 8.1.1 compat >= 8 lib:libasprintf$secondaryArchSuffix = 0.0.0 compat >= 0 lib:libgettextlib_0.18.1$secondaryArchSuffix = $portVersion - lib:libgettextpo = 0.5.1$secondaryArchSuffix compat >= 0 + lib:libgettextpo$secondaryArchSuffix = 0.5.1 compat >= 0 lib:libgettextsrc_0.18.1$secondaryArchSuffix = $portVersion + cmd:autopoint$secondaryArchSuffix + cmd:envsubst$secondaryArchSuffix + cmd:gettext$secondaryArchSuffix + cmd:gettext.sh$secondaryArchSuffix + cmd:gettextize$secondaryArchSuffix + cmd:msgattrib$secondaryArchSuffix + cmd:msgcat$secondaryArchSuffix + cmd:msgcmp$secondaryArchSuffix + cmd:msgcomm$secondaryArchSuffix + cmd:msgconv$secondaryArchSuffix + cmd:msgen$secondaryArchSuffix + cmd:msgexec$secondaryArchSuffix + cmd:msgfilter$secondaryArchSuffix + cmd:msgfmt$secondaryArchSuffix + cmd:msggrep$secondaryArchSuffix + cmd:msginit$secondaryArchSuffix + cmd:msgmerge$secondaryArchSuffix + cmd:msgunfmt$secondaryArchSuffix + cmd:msguniq$secondaryArchSuffix + cmd:ngettext$secondaryArchSuffix + cmd:recode_sr_latin$secondaryArchSuffix + cmd:xgettext$secondaryArchSuffix + " if [ -z "$secondaryArchSuffix" ]; then PROVIDES="$PROVIDES From 0cc4ae724897de7e5a3d4d3280f7934f46fb269d Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Mon, 13 Jan 2014 20:36:32 +0100 Subject: [PATCH 29/33] CMake: fix search path for freetype2 includes. --- .../cmake/patches/cmake-2.8.11.2.patchset | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/dev-util/cmake/patches/cmake-2.8.11.2.patchset b/dev-util/cmake/patches/cmake-2.8.11.2.patchset index b443ac74e..2fd8b4d02 100644 --- a/dev-util/cmake/patches/cmake-2.8.11.2.patchset +++ b/dev-util/cmake/patches/cmake-2.8.11.2.patchset @@ -1847,3 +1847,26 @@ index bb0ca91..91577d6 100644 -- 1.8.3.4 + +From bef51860a4e8f12504d8fbd9f421624932f927ad Mon Sep 17 00:00:00 2001 +From: Adrien Destugues +Date: Mon, 13 Jan 2014 20:35:48 +0100 +Subject: FindFreetype: fix search path. + + +diff --git a/Modules/FindFreetype.cmake b/Modules/FindFreetype.cmake +index 1df2399..31346a0 100644 +--- a/Modules/FindFreetype.cmake ++++ b/Modules/FindFreetype.cmake +@@ -61,7 +61,7 @@ find_path(FREETYPE_INCLUDE_DIR_freetype2 freetype/config/ftheader.h + /usr/local/X11R6 + /usr/local/X11 + /usr/freeware +- PATH_SUFFIXES include/freetype2 include ++ PATH_SUFFIXES include/freetype2 include freetype2 + ) + + find_library(FREETYPE_LIBRARY +-- +1.8.3.4 + From 8c0b79229710ba617819b3e02dbe5d051cc98878 Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Mon, 13 Jan 2014 20:38:30 +0100 Subject: [PATCH 30/33] Confuse: fix typos and policy warnings. --- dev-libs/confuse/confuse-2.7.recipe | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/dev-libs/confuse/confuse-2.7.recipe b/dev-libs/confuse/confuse-2.7.recipe index 5b0e29149..755cbf8b9 100644 --- a/dev-libs/confuse/confuse-2.7.recipe +++ b/dev-libs/confuse/confuse-2.7.recipe @@ -27,12 +27,13 @@ PROVIDES=" REQUIRES=" haiku$secondaryArchSuffix >= $haikuVersion - libiconv$secondaryArchSuffix + lib:libiconv$secondaryArchSuffix + lib:libintl$secondaryArchSuffix " BUILD_REQUIRES=" haiku${secondaryArchSuffix}_devel >= $haikuVersion - libiconv${secondaryArchSuffic}_devel + devel:libiconv$secondaryArchSuffix " BUILD_PREREQUIRES=" From b50de044e88719d93072807c9e0202c8fb83ae10 Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Mon, 13 Jan 2014 22:16:07 +0100 Subject: [PATCH 31/33] Add luajit. This is source-compatible with lua-5.1, but faster! There is also a separate native interface with less overhead. --- dev-lang/luajit/luajit-2.0.2.recipe | 59 +++++++++++++++++++ dev-lang/luajit/patches/luajit-2.0.2.patchset | 31 ++++++++++ 2 files changed, 90 insertions(+) create mode 100644 dev-lang/luajit/luajit-2.0.2.recipe create mode 100644 dev-lang/luajit/patches/luajit-2.0.2.patchset diff --git a/dev-lang/luajit/luajit-2.0.2.recipe b/dev-lang/luajit/luajit-2.0.2.recipe new file mode 100644 index 000000000..410c85c92 --- /dev/null +++ b/dev-lang/luajit/luajit-2.0.2.recipe @@ -0,0 +1,59 @@ +SUMMARY="LuaJIT is a Just-In-Time Compiler (JIT) for the Lua programming language." +HOMEPAGE="http://luajit.org/luajit.html" +SRC_URI="http://luajit.org/download/LuaJIT-$portVersion.tar.gz" +CHECKSUM_MD5="112dfb82548b03377fbefbba2e0e3a5b" +REVISION="1" +ARCHITECTURES="x86 x86_gcc2" +SECONDARY_ARCHITECTURES="x86" +PROVIDES=" + luajit$secondaryArchSuffix = $portVersion compat >= 5.1 + lib:libluajit_5.1$secondaryArchSuffix = $portVersion compat >= 2 + cmd:luajit_$portVersion$secondaryArchSuffix + cmd:luajit$secondaryArchSuffix + " + +REQUIRES=" + haiku$secondaryArchSuffix >= $haikuVersion + " +BUILD_PREREQUIRES=" + haiku${secondaryArchSuffix}_devel >= $haikuVersion + cmd:make + cmd:gcc$secondaryArchSuffix + " + +PROVIDES_devel=" + luajit${secondaryArchSuffix}_devel = $portVersion compat >= 5.1 + devel:libluajit_5.1$secondaryArchSuffix = $portVersion compat >= 2 + " + +REQUIRES_devel=" + luajit$secondaryArchSuffix == $portVersion base + " + +PATCHES="luajit-$portVersion.patchset" + +SOURCE_DIR="LuaJIT-$portVersion" +BUILD() +{ + # Use amalg target as recommended on luajit homepage to get better performance + make $jobArgs amalg PREFIX=$prefix +} + +INSTALL() +{ + make install PREFIX=$prefix INSTALL_LIB="$libDir" INSTALL_BIN="$binDir" \ + INSTALL_INC="$includeDir" INSTALL_SHARE="$dataDir" \ + INSTALL_MAN="$manDir/man1" INSTALL_LMOD="$dataDir/lua/5.1" + + ln -s $libDir/libluajit-5.1.so.2.0.2 $libDir/libluajit-5.1.so.2 + prepareInstalledDevelLib libluajit-5.1 + packageEntries devel $developDir +} +LICENSE="MIT" +COPYRIGHT="2005-2013, Mike Pall" +DESCRIPTION=" +LuaJIT is a Just-In-Time Compiler (JIT) for the Lua programming language. + +Lua is a powerful, dynamic and light-weight programming language. It may be \ +embedded or used as a general-purpose, stand-alone language. +" diff --git a/dev-lang/luajit/patches/luajit-2.0.2.patchset b/dev-lang/luajit/patches/luajit-2.0.2.patchset new file mode 100644 index 000000000..322537f46 --- /dev/null +++ b/dev-lang/luajit/patches/luajit-2.0.2.patchset @@ -0,0 +1,31 @@ +From 1e25583ec6480560263118a34c5b5ad86f3e9aca Mon Sep 17 00:00:00 2001 +From: Adrien Destugues +Date: Sun, 12 Jan 2014 22:49:01 +0100 +Subject: Remove hardcoded -lm. + + +diff --git a/src/Makefile b/src/Makefile +index 999e280..27fc411 100644 +--- a/src/Makefile ++++ b/src/Makefile +@@ -198,7 +198,7 @@ TARGET_DYNXLDOPTS= + TARGET_LFSFLAGS= -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE + TARGET_XCFLAGS= $(TARGET_LFSFLAGS) -U_FORTIFY_SOURCE + TARGET_XLDFLAGS= +-TARGET_XLIBS= -lm ++#TARGET_XLIBS= -lm + TARGET_TCFLAGS= $(CCOPTIONS) $(TARGET_XCFLAGS) $(TARGET_FLAGS) $(TARGET_CFLAGS) + TARGET_ACFLAGS= $(CCOPTIONS) $(TARGET_XCFLAGS) $(TARGET_FLAGS) $(TARGET_CFLAGS) + TARGET_ALDFLAGS= $(LDOPTIONS) $(TARGET_XLDFLAGS) $(TARGET_FLAGS) $(TARGET_LDFLAGS) +@@ -351,7 +351,7 @@ endif + ############################################################################## + + MINILUA_O= host/minilua.o +-MINILUA_LIBS= -lm ++#MINILUA_LIBS= -lm + MINILUA_T= host/minilua + MINILUA_X= $(MINILUA_T) + +-- +1.8.3.4 + From 55aef436fb4f20d82904184246b98f5f90e52694 Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Mon, 13 Jan 2014 22:28:39 +0100 Subject: [PATCH 32/33] Add CorsixTH (Theme Hospital engine). There seem to be some problem with audio (horrible clicking in videos, music plays at 2x speed). Needs original game data files. --- .../corsix_th/corsix_th-0.30.recipe | 74 ++++++++++++++++++ .../corsix_th/patches/corsix_th-0.30.patchset | 77 +++++++++++++++++++ 2 files changed, 151 insertions(+) create mode 100644 games-simulation/corsix_th/corsix_th-0.30.recipe create mode 100644 games-simulation/corsix_th/patches/corsix_th-0.30.patchset diff --git a/games-simulation/corsix_th/corsix_th-0.30.recipe b/games-simulation/corsix_th/corsix_th-0.30.recipe new file mode 100644 index 000000000..2a900a1f3 --- /dev/null +++ b/games-simulation/corsix_th/corsix_th-0.30.recipe @@ -0,0 +1,74 @@ +SUMMARY="Open source clone of Theme Hospital" +DESCRIPTION=" +CorsixTH aims to reimplement the game engine of Theme Hospital, and be able to +load the original game data files. This means that you will need a purchased +copy of Theme Hospital, or a copy of the demo, in order to use CorsixTH. After +most of the original engine has been reimplemented in open source code, the +project will serve as a base from which extensions and improvements to the +original game can be made. +" +HOMEPAGE="http://github.com/CorsixTH" +SRC_URI="https://github.com/CorsixTH/CorsixTH/archive/v$portVersion.tar.gz" +CHECKSUM_MD5="4557a02d61d7001c1c08960e30c417d7" +REVISION="1" +ARCHITECTURES="x86" +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=" + corsix_th = $portVersion + " + +REQUIRES=" + haiku$secondaryArchSuffix >= $haikuVersion + lib:libsdl$secondaryArchSuffix + lib:libsdl_mixer$secondaryArchSuffix + lib:libavcodec$secondaryArchSuffix + lib:libluajit_5.1$secondaryArchSuffix + lib:libfreetype$secondaryArchSuffix + " + +BUILD_REQUIRES=" + haiku${secondaryArchSuffix}_devel >= $haikuVersion + devel:libsdl$secondaryArchSuffix + devel:libsdl_mixer$secondaryArchSuffix + devel:libavcodec$secondaryArchSuffix + devel:libluajit_5.1$secondaryArchSuffix + devel:libfreetype$secondaryArchSuffix + " + +BUILD_PREREQUIRES=" + cmd:gcc$secondaryArchSuffix + cmd:git + cmd:make + cmd:cmake + cmd:pkg_config$secondaryArchSuffix + " + +SOURCE_DIR="CorsixTH-$portVersion" +PATCHES="corsix_th-$portVersion.patchset" +BUILD() +{ + cmake . -DLUA_LIBRARY=/system/$relativeLibDir/libluajit-5.1.so.2.0.2 \ + -DCMAKE_INSTALL_PREFIX=$appsDir + cd CorsixTH + make $jobArgs +} + +INSTALL() +{ + touch CorsixTH/LICENSE.txt + make install + + addattr -f Icon_Haiku -t "'VICN'" "BEOS:ICON" $appsDir/CorsixTH/CorsixTH + addAppDeskbarSymlink $appsDir/CorsixTH/CorsixTH "Corsix Theme Hospital" +} + +# no TEST script available + +COPYRIGHT="2005-2013 Corsix" +LICENSE="MIT" diff --git a/games-simulation/corsix_th/patches/corsix_th-0.30.patchset b/games-simulation/corsix_th/patches/corsix_th-0.30.patchset new file mode 100644 index 000000000..fdfd773ba --- /dev/null +++ b/games-simulation/corsix_th/patches/corsix_th-0.30.patchset @@ -0,0 +1,77 @@ +From 6ffdc30a00c95287e9e42fc65462bbcb17b7cff2 Mon Sep 17 00:00:00 2001 +From: Adrien Destugues +Date: Mon, 13 Jan 2014 21:36:21 +0100 +Subject: Fix config file path. + + +diff --git a/CorsixTH/Lua/config_finder.lua b/CorsixTH/Lua/config_finder.lua +index 5de4dfb..c643f65 100644 +--- a/CorsixTH/Lua/config_finder.lua ++++ b/CorsixTH/Lua/config_finder.lua +@@ -35,7 +35,7 @@ if pathsep == "\\" then + config_path = os.getenv("AppData") or ourpath + else + -- Linux, OS X, etc. +- config_path = os.getenv("XDG_CONFIG_HOME") or pathconcat(os.getenv("HOME") or "~", ".config") ++ config_path = os.getenv("XDG_CONFIG_HOME") or pathconcat(os.getenv("HOME") or "~", "config/settings") + end + if config_path ~= ourpath then + config_path = pathconcat(config_path, "CorsixTH") +-- +1.8.3.4 + + +From d2181fb6daaf3b434de528caaaf25c4da8bcb29d Mon Sep 17 00:00:00 2001 +From: Adrien Destugues +Date: Mon, 13 Jan 2014 21:36:49 +0100 +Subject: Add vector icon. + + +diff --git a/Icon_Haiku b/Icon_Haiku +new file mode 100644 +index 0000000000000000000000000000000000000000..e33288c7f66a04b72128533415302926dd613c58 +GIT binary patch +literal 9704 +zcmeHM&u5&Lcu|R06Rn9SFLF?0Jox;4W_EUGx3hJmJQ`ysneN-qe0RRz +z`Fy|M+3!yG?i=YJ*tch=Kr5iPa@xVigeYRXBO`-b`CLJ)7ybPs`#8r>_Yzfe6~u-Z +z{}vPcjInhXGx3G3LR`O3$xl_96AiHlDHp5WfE+bytF%_Vhyq4v)!i64WmrWm;sl;_ +zQSuQUUT-MjWd=v&bFY!Ol>{ycClpeQz_ +z@K=HHS>l63LvkM8zlpBq*(`DDWj`O`er2*ICk$)VrkDymzlo8n<)lya31RlDWhqti +zd`H1x`k$w)2EGpiYGa~+M#f9kdeGo~4`_2?{uq|!%KRpn&So;d8TX^;^t{Qu#;1Xs +z%xnC6;3o6L*#}^cjrrFiTry9Ct6|V+#MF=W3ULFS*X^L5zx8zh_x!D|=5J!AEXT~b +zICi7gaGg1*73iy0ps%;8NV&efn$n@e@L@}Z(4m4`2%UyETtny{$g-Is#NXS|JJHP$ +z(s&neGlVog1l$ZEHK!2A<9X7_`+9`S5ZZv7U0iN=97CcEEb6m}19oAitsdkxE1-O4 +zmq>AKQY^~r+$gTY6)T}wXI++Jji10uO^P-C18|dK;_Q22k1b0XGQ{&J*6BIl3wQSk +z!Rt-*v*?THOgCQ5-;~j^%&5^wPG9+q`khHr3Y!n#ZbeC&wog+kbX1OJ(o{U|7(*k4 +zmBkQK_aJ&UhBVF>n;AnI{|2}jL&Vv4!X8@;?TPTb7^1(q!!F`l#+9+5uXF^viE)gw +zdaE~gXDvU_XT(lB6{whLj|OY3q_&$`Q0r0@T!ed8vfa?#CG>2lX#53?nW3WbL%{hv +zTaLX2%oZvaBHT4p7zPXt^1ppKm)ivGu1ia%UGTr=UZ$x4h>oteOZq*Xku +zGjWD3KhMpLfP9f(?m7j0g6eb7KInWJ7_BX0OL%Fp??tZkS@e_m!F{0!t9ZCaoc(kB +zQSuLn14D!S-jFt4%fY{kaOs6oSUV!6WpT$Fw%AqJu*6V0&VH;x41WGxikc%J-) +zO}|QA)NN}=F-Cj!#z|%Ud3LlQ}c+tB9zZp!2NN2xRI*P+k2ngZfY%)~0T*-_#h67>Mc9bWvRfnazhiim& +zmem91$P=%ex%S(Rn>{g`m8KV{*>P^r6Fr%^EX5~qJnQ-6LQHyo>4ewt4tsU4Iag{_ +zEA^Uuda^QW8<;Pjk9w&?u6&w~ +zagwCu(=k4igP)D?B*vL(ag1{*@vhA??=HD@Ct-fa9rJ;sV=lq+b~$DX=FW3W7shOk +znFMZg3{T)}IA1=*6UT7YrH)~xBpowW36Ev{a{YHs@ynIVA8#H0YWPxjbp1l(c(x?O +za2eP6R%@udmN4;4!98I>Ug8(t#0hg4^~87>O#5S5$58AJ?PTvcCd?-=s9g!enlCS5 +zp2CL^cF>WCu`*3EV3z|Bn&sNIAOSnOUH1HsBgxCnOk#8XBiWqb*>~^{(@~T +zrPZG>o3CUN#Kr}3S+}FK+J<@ZN~`B0UD?uV9`@Kut1G~1Th>`$=HNd@c;YOsXsNTf +z)5?GNb*&XxE(KQSf2P1XiwJPZfQyKLc5O?1cjj$NPh!lrEqTCgksjvYrz1RxbS&Hw +z>C7tiukF<I@`h??ntWyO$7a=%)?hu`u+{>W&5rG + +literal 0 +HcmV?d00001 + +-- +1.8.3.4 + From 9092b244ad342e1ecdbf5f49d0ee5bd42d620853 Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Mon, 13 Jan 2014 22:33:32 +0100 Subject: [PATCH 33/33] SDL: remove useless patchsets. --- media-libs/libsdl/patches/libsdl-1.2.14.patch | 64 ----- .../libsdl/patches/libsdl-1.2.15.patchset | 34 ++- media-libs/libsdl/patches/libsdl-2.0.0.patch | 39 --- .../libsdl/patches/libsdl_x86-1.2.15.patchset | 249 ------------------ 4 files changed, 29 insertions(+), 357 deletions(-) delete mode 100644 media-libs/libsdl/patches/libsdl-1.2.14.patch delete mode 100644 media-libs/libsdl/patches/libsdl-2.0.0.patch delete mode 100644 media-libs/libsdl/patches/libsdl_x86-1.2.15.patchset diff --git a/media-libs/libsdl/patches/libsdl-1.2.14.patch b/media-libs/libsdl/patches/libsdl-1.2.14.patch deleted file mode 100644 index b9278756d..000000000 --- a/media-libs/libsdl/patches/libsdl-1.2.14.patch +++ /dev/null @@ -1,64 +0,0 @@ -diff -r 5002d6aeb85c libsdl-1.2.14/nclude/begin_code.h ---- SDL-1.2.14/include/begin_code.h Fri Jul 09 17:19:18 2010 +0200 -+++ SDL-1.2.14-haiku/include/begin_code.h Fri Sep 17 14:58:26 2010 +0000 -@@ -43,7 +43,7 @@ - #ifndef DECLSPEC - # if defined(__BEOS__) || defined(__HAIKU__) - # if defined(__GNUC__) --# define DECLSPEC __declspec(dllexport) -+# define DECLSPEC - # else - # define DECLSPEC __declspec(export) - # endif -diff -r 31b0f2e06e3c src/main/beos/SDL_BeApp.cc ---- SDL-1.2.14/src/main/beos/SDL_BeApp.cc Sun Apr 25 20:16:38 2010 -0400 -+++ SDL-1.2.14-haiku/src/main/beos/SDL_BeApp.cc Sun Jun 06 08:55:47 2010 +0000 -@@ -39,13 +39,15 @@ - - static int StartBeApp(void *unused) - { -+ if(!be_app) { - BApplication *App; - - App = new BApplication("application/x-SDL-executable"); - - App->Run(); - delete App; -- return(0); -+ } -+ return(0); - } - - /* Initialize the Be Application, if it's not already started */ -@@ -86,7 +88,7 @@ - ++SDL_BeAppActive; - - /* The app is running, and we're ready to go */ -- return(0); -+ return(0); - } - - /* Quit the Be Application, if there's nothing left to do */ -diff -r 31b0f2e06e3c src/video/bwindow/SDL_sysvideo.cc ---- SDL-1.2.14/src/video/bwindow/SDL_sysvideo.cc Sun Apr 25 20:16:38 2010 -0400 -+++ SDL-1.2.14-haiku/src/video/bwindow/SDL_sysvideo.cc Sun Jun 06 08:55:47 2010 +0000 -@@ -57,7 +57,6 @@ - static void BE_FreeHWSurface(_THIS, SDL_Surface *surface); - - static int BE_ToggleFullScreen(_THIS, int fullscreen); --static SDL_Overlay *BE_CreateYUVOverlay(_THIS, int width, int height, Uint32 format, SDL_Surface *display); - - /* OpenGL functions */ - #if SDL_VIDEO_OPENGL -diff -r 31b0f2e06e3c src/video/bwindow/SDL_sysyuv.h ---- SDL-1.2.14/src/video/bwindow/SDL_sysyuv.h Sun Apr 25 20:16:38 2010 -0400 -+++ SDL-1.2.14-haiku/src/video/bwindow/SDL_sysyuv.h Sun Jun 06 08:55:47 2010 +0000 -@@ -62,7 +62,7 @@ - }; - - extern BBitmap * BE_GetOverlayBitmap(BRect bounds, color_space cs); --SDL_Overlay* BE_CreateYUVOverlay(_THIS, int width, int height, Uint32 format, SDL_Surface* display); -+extern SDL_Overlay* BE_CreateYUVOverlay(_THIS, int width, int height, Uint32 format, SDL_Surface* display); - extern int BE_LockYUVOverlay(_THIS, SDL_Overlay* overlay); - extern void BE_UnlockYUVOverlay(_THIS, SDL_Overlay* overlay); - extern int BE_DisplayYUVOverlay(_THIS, SDL_Overlay* overlay, SDL_Rect* src, SDL_Rect* dst); diff --git a/media-libs/libsdl/patches/libsdl-1.2.15.patchset b/media-libs/libsdl/patches/libsdl-1.2.15.patchset index d36d015a9..fa82bad92 100644 --- a/media-libs/libsdl/patches/libsdl-1.2.15.patchset +++ b/media-libs/libsdl/patches/libsdl-1.2.15.patchset @@ -1,4 +1,4 @@ -From 59cfb52a4c0564e1713c37be2ae6026f9e4e76a9 Mon Sep 17 00:00:00 2001 +From ca09de99c346e44cdd1f578848b4958067b5fb06 Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Fri, 22 Nov 2013 23:38:56 +0100 Subject: Remove Alsa and ESD detection @@ -36,7 +36,7 @@ index 08c8e1e..84d9a55 100644 1.8.3.4 -From b2657c374826ed213072b5e80263f59a42e76faf Mon Sep 17 00:00:00 2001 +From 735586f7d0600476b0b02206daa76926193da957 Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Fri, 22 Nov 2013 23:39:26 +0100 Subject: Fix samples vs bytes issues @@ -67,7 +67,7 @@ index de635f8..7faf571 100644 1.8.3.4 -From 847264a916bb4b9e3bfa1ff8217beed67b37b8a4 Mon Sep 17 00:00:00 2001 +From 164201f49d1310bdd229feaf33c1f0e988a89f49 Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Fri, 22 Nov 2013 23:40:12 +0100 Subject: Various fixes to the video code @@ -147,7 +147,7 @@ index c32b661..a26f18b 100644 1.8.3.4 -From 6a8dccbefe9522f65a07177441a93251cfcc8d9f Mon Sep 17 00:00:00 2001 +From ae129e6505148189a3d73fc085f20e214c0d6446 Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Sat, 23 Nov 2013 11:59:00 +0100 Subject: Actually fix the sample vs bytes problem in audio driver. @@ -201,7 +201,7 @@ index 7faf571..300bf03 100644 1.8.3.4 -From 112569083122d8d14b2571aaf2b73483ce3738db Mon Sep 17 00:00:00 2001 +From 9b20d4dc8a3f5d607623b5d8b2c4ce14e830f4c8 Mon Sep 17 00:00:00 2001 From: Chris Roberts Date: Sun, 22 Dec 2013 18:37:30 -0700 Subject: Remove Haiku from specialized DECLSPEC definition @@ -223,3 +223,27 @@ index 27e2f7b..d5e2f1f 100644 -- 1.8.3.4 + +From 09ba1fa7eccef32323c9987bdd4742bca6e9dfbc Mon Sep 17 00:00:00 2001 +From: Adrien Destugues +Date: Sun, 5 Jan 2014 17:22:10 +0100 +Subject: Change prefix from "be" to "os" for OpenGL includes + +Accomodate the new OpenGL kit that doesn't have the "be" symlink. + +diff --git a/src/video/bwindow/SDL_BWin.h b/src/video/bwindow/SDL_BWin.h +index f2b19a2..2cb94ee 100644 +--- a/src/video/bwindow/SDL_BWin.h ++++ b/src/video/bwindow/SDL_BWin.h +@@ -31,7 +31,7 @@ + #include + #if SDL_VIDEO_OPENGL + #include "SDL_opengl.h" +-#include ++#include + #endif + #include + +-- +1.8.3.4 + diff --git a/media-libs/libsdl/patches/libsdl-2.0.0.patch b/media-libs/libsdl/patches/libsdl-2.0.0.patch deleted file mode 100644 index dae2a97bf..000000000 --- a/media-libs/libsdl/patches/libsdl-2.0.0.patch +++ /dev/null @@ -1,39 +0,0 @@ -diff -Naur SDL2-2.0.0/include/begin_code.h SDL2-2.0.0-haiku/include/begin_code.h ---- SDL2-2.0.0/include/begin_code.h 2013-08-11 21:57:54.011796480 -0500 -+++ SDL2-2.0.0-haiku/include/begin_code.h 2013-08-19 15:12:06.654049280 -0500 -@@ -35,13 +35,7 @@ - - /* Some compilers use a special export keyword */ - #ifndef DECLSPEC --# if defined(__BEOS__) || defined(__HAIKU__) --# if defined(__GNUC__) --# define DECLSPEC __declspec(dllexport) --# else --# define DECLSPEC __declspec(export) --# endif --# elif defined(__WIN32__) -+# if defined(__WIN32__) - # ifdef __BORLANDC__ - # ifdef BUILD_SDL - # define DECLSPEC -@@ -54,6 +48,8 @@ - # else - # if defined(__GNUC__) && __GNUC__ >= 4 - # define DECLSPEC __attribute__ ((visibility("default"))) -+# elif defined(__GNUC__) && __GNUC__ >= 2 -+# define DECLSPEC __declspec(dllexport) - # else - # define DECLSPEC - # endif -diff -Naur SDL2-2.0.0/src/main/beos/SDL_BApp.h SDL2-2.0.0-haiku/src/main/beos/SDL_BApp.h ---- SDL2-2.0.0/src/main/beos/SDL_BApp.h 2013-08-11 21:57:54.058982400 -0500 -+++ SDL2-2.0.0-haiku/src/main/beos/SDL_BApp.h 2013-08-19 15:10:50.412876800 -0500 -@@ -371,7 +371,7 @@ - - - /* Members */ -- vector _window_map; /* Keeps track of SDL_Windows by index-id*/ -+ std::vector _window_map; /* Keeps track of SDL_Windows by index-id*/ - - display_mode *_saved_mode; - BGLView *_current_context; diff --git a/media-libs/libsdl/patches/libsdl_x86-1.2.15.patchset b/media-libs/libsdl/patches/libsdl_x86-1.2.15.patchset deleted file mode 100644 index fa82bad92..000000000 --- a/media-libs/libsdl/patches/libsdl_x86-1.2.15.patchset +++ /dev/null @@ -1,249 +0,0 @@ -From ca09de99c346e44cdd1f578848b4958067b5fb06 Mon Sep 17 00:00:00 2001 -From: Adrien Destugues -Date: Fri, 22 Nov 2013 23:38:56 +0100 -Subject: Remove Alsa and ESD detection - -These will fail on Haiku, and we don't need them anyway. - -diff --git a/configure.in b/configure.in -index 08c8e1e..84d9a55 100644 ---- a/configure.in -+++ b/configure.in -@@ -361,7 +361,7 @@ CheckALSA() - AC_HELP_STRING([--enable-alsa], [support the ALSA audio API [[default=yes]]]), - , enable_alsa=yes) - if test x$enable_audio = xyes -a x$enable_alsa = xyes; then -- AM_PATH_ALSA(0.9.0, have_alsa=yes, have_alsa=no) -+ have_alsa=no - # Restore all flags from before the ALSA detection runs - CFLAGS="$alsa_save_CFLAGS" - LDFLAGS="$alsa_save_LDFLAGS" -@@ -460,7 +460,7 @@ CheckESD() - AC_HELP_STRING([--enable-esd], [support the Enlightened Sound Daemon [[default=yes]]]), - , enable_esd=yes) - if test x$enable_audio = xyes -a x$enable_esd = xyes; then -- AM_PATH_ESD(0.2.8, have_esd=yes, have_esd=no) -+ have_esd=no - if test x$have_esd = xyes; then - AC_ARG_ENABLE(esd-shared, - AC_HELP_STRING([--enable-esd-shared], [dynamically load ESD audio support [[default=yes]]]), -@@ -2963,3 +2963,4 @@ AC_OUTPUT([ - : >build-deps - if test x"$MAKE" = x; then MAKE=make; fi; $MAKE depend - ]) -+AC_CONFIG_MACRO_DIR([acinclude]) --- -1.8.3.4 - - -From 735586f7d0600476b0b02206daa76926193da957 Mon Sep 17 00:00:00 2001 -From: Adrien Destugues -Date: Fri, 22 Nov 2013 23:39:26 +0100 -Subject: Fix samples vs bytes issues - -This was particularly noticeable in Milkytracker (SDL version) and -Hivelytracker, where all the audio timing relies on the buffer being -played during the right time. - -diff --git a/src/audio/baudio/SDL_beaudio.cc b/src/audio/baudio/SDL_beaudio.cc -index de635f8..7faf571 100644 ---- a/src/audio/baudio/SDL_beaudio.cc -+++ b/src/audio/baudio/SDL_beaudio.cc -@@ -199,11 +199,11 @@ int BE_OpenAudio(_THIS, SDL_AudioSpec *spec) - return (-1); - } - -- format.buffer_size = spec->samples; -- - /* Calculate the final parameters for this audio specification */ - SDL_CalculateAudioSpec(spec); - -+ format.buffer_size = spec->samples; -+ - /* Subscribe to the audio stream (creates a new thread) */ - { sigset_t omask; - SDL_MaskSignals(&omask); --- -1.8.3.4 - - -From 164201f49d1310bdd229feaf33c1f0e988a89f49 Mon Sep 17 00:00:00 2001 -From: Adrien Destugues -Date: Fri, 22 Nov 2013 23:40:12 +0100 -Subject: Various fixes to the video code - -* Do not center the window each time it is resized -* Do not reset video mode if we didn't enter fullscreen -* remove annoying debug print - -diff --git a/src/video/bwindow/SDL_sysvideo.cc b/src/video/bwindow/SDL_sysvideo.cc -index c32b661..a26f18b 100644 ---- a/src/video/bwindow/SDL_sysvideo.cc -+++ b/src/video/bwindow/SDL_sysvideo.cc -@@ -406,6 +406,7 @@ static int BE_SetFullScreen(_THIS, SDL_Surface *screen, int fullscreen) - { - // printf("SetFullScreen(%d)\n", fullscreen); - BScreen bscreen; -+ static bool firstTime = true; - - // SetFullSscreen() does not work as expected if called in a window - // that was never shown. This is probably a bug in the Haiku Game Kit that needs -@@ -425,6 +426,8 @@ static int BE_SetFullScreen(_THIS, SDL_Surface *screen, int fullscreen) - int width = screen->w; - int height = screen->h; - -+ bool wasFullScreen = SDL_Win->IsFullScreen(); -+ - if (fullscreen) { - // Set resolution to the closest available one that matches the - // current SDL resolution. -@@ -444,7 +447,8 @@ static int BE_SetFullScreen(_THIS, SDL_Surface *screen, int fullscreen) - } else { - // Reset to the previous known resolution as we are now in window - // mode. -- bscreen.SetMode(&saved_mode); -+ if(wasFullScreen) -+ bscreen.SetMode(&saved_mode); - } - - // Effectivelly set/reset full screen mode. If we are already in -@@ -456,14 +460,6 @@ static int BE_SetFullScreen(_THIS, SDL_Surface *screen, int fullscreen) - // printf("Going windowed\n"); - SDL_Win->SetFullScreen(fullscreen); - -- // Calculate offsets for centering the window (in window mode) and for -- // dentering the bitmap (in full screen mode). -- BRect bounds = bscreen.Frame(); -- bounds.PrintToStream(); -- int32 cx = (bounds.IntegerWidth() - width)/2; -- int32 cy = (bounds.IntegerHeight() - height)/2; -- -- // printf ("cx = %d, cy = %d\n", cx, cy); - if (!SDL_Win->IsFullScreen()) { - // printf("Doing not fullscreen stuff.\n"); - // We are not in full screen mode, so we want to change the window -@@ -471,10 +467,18 @@ static int BE_SetFullScreen(_THIS, SDL_Surface *screen, int fullscreen) - SDL_Win->ResizeTo(width, height); - - // And also center the window and reset the drawing offset. -- SDL_Win->MoveTo(cx, cy); -+ if(firstTime || wasFullScreen) { -+ SDL_Win->CenterOnScreen(); -+ firstTime = false; -+ } - SDL_Win->SetXYOffset(0, 0); - } else { -- // printf("Doing fullscreen stuff."); -+ // Calculate offsets for centering the bitmap. -+ -+ BRect bounds = bscreen.Frame(); -+ int cx = (bounds.Width() - width) / 2; -+ int cy = (bounds.Height() - height) / 2; -+ - // Center the bitmap whenever we are in full screen mode. - SDL_Win->SetXYOffset(cx, cy); - } --- -1.8.3.4 - - -From ae129e6505148189a3d73fc085f20e214c0d6446 Mon Sep 17 00:00:00 2001 -From: Adrien Destugues -Date: Sat, 23 Nov 2013 11:59:00 +0100 -Subject: Actually fix the sample vs bytes problem in audio driver. - - -diff --git a/src/audio/baudio/SDL_beaudio.cc b/src/audio/baudio/SDL_beaudio.cc -index 7faf571..300bf03 100644 ---- a/src/audio/baudio/SDL_beaudio.cc -+++ b/src/audio/baudio/SDL_beaudio.cc -@@ -161,25 +161,30 @@ int BE_OpenAudio(_THIS, SDL_AudioSpec *spec) - format.byte_order = B_MEDIA_LITTLE_ENDIAN; - format.frame_rate = (float) spec->freq; - format.channel_count = spec->channels; /* !!! FIXME: support > 2? */ -+ int samplesize = 1; - while ((!valid_datatype) && (test_format)) { - valid_datatype = 1; - spec->format = test_format; - switch (test_format) { - case AUDIO_S8: - format.format = media_raw_audio_format::B_AUDIO_CHAR; -+ samplesize = 1; - break; - - case AUDIO_U8: - format.format = media_raw_audio_format::B_AUDIO_UCHAR; -+ samplesize = 1; - break; - - case AUDIO_S16LSB: - format.format = media_raw_audio_format::B_AUDIO_SHORT; -+ samplesize = 2; - break; - - case AUDIO_S16MSB: - format.format = media_raw_audio_format::B_AUDIO_SHORT; - format.byte_order = B_MEDIA_BIG_ENDIAN; -+ samplesize = 2; - break; - - default: -@@ -202,7 +207,7 @@ int BE_OpenAudio(_THIS, SDL_AudioSpec *spec) - /* Calculate the final parameters for this audio specification */ - SDL_CalculateAudioSpec(spec); - -- format.buffer_size = spec->samples; -+ format.buffer_size = spec->samples * spec->channels * samplesize; - - /* Subscribe to the audio stream (creates a new thread) */ - { sigset_t omask; --- -1.8.3.4 - - -From 9b20d4dc8a3f5d607623b5d8b2c4ce14e830f4c8 Mon Sep 17 00:00:00 2001 -From: Chris Roberts -Date: Sun, 22 Dec 2013 18:37:30 -0700 -Subject: Remove Haiku from specialized DECLSPEC definition - - -diff --git a/include/begin_code.h b/include/begin_code.h -index 27e2f7b..d5e2f1f 100644 ---- a/include/begin_code.h -+++ b/include/begin_code.h -@@ -41,7 +41,7 @@ - * Some compilers use a special export keyword - */ - #ifndef DECLSPEC --# if defined(__BEOS__) || defined(__HAIKU__) -+# if defined(__BEOS__) - # if defined(__GNUC__) - # define DECLSPEC - # else --- -1.8.3.4 - - -From 09ba1fa7eccef32323c9987bdd4742bca6e9dfbc Mon Sep 17 00:00:00 2001 -From: Adrien Destugues -Date: Sun, 5 Jan 2014 17:22:10 +0100 -Subject: Change prefix from "be" to "os" for OpenGL includes - -Accomodate the new OpenGL kit that doesn't have the "be" symlink. - -diff --git a/src/video/bwindow/SDL_BWin.h b/src/video/bwindow/SDL_BWin.h -index f2b19a2..2cb94ee 100644 ---- a/src/video/bwindow/SDL_BWin.h -+++ b/src/video/bwindow/SDL_BWin.h -@@ -31,7 +31,7 @@ - #include - #if SDL_VIDEO_OPENGL - #include "SDL_opengl.h" --#include -+#include - #endif - #include - --- -1.8.3.4 -