Fusionado haikuports/haikuports con master

This commit is contained in:
Adrián Arroyo Calle
2014-03-01 13:00:08 +01:00
42 changed files with 1690 additions and 213 deletions

View File

@@ -1,7 +1,7 @@
SUMMARY="LibDSK is a library for manipulating disk image files"
HOMEPAGE="http://www.seasip.demon.co.uk/Unix/LibDsk/"
SRC_URI="http://www.seasip.info/Unix/LibDsk/libdsk-1.3.3.tar.gz"
REVISION="1"
REVISION="2"
ARCHITECTURES="x86 x86_gcc2"
SECONDARY_ARCHITECTURES="x86 x86_gcc2"
CHECKSUM_MD5="2cce41b4b1325d697183e34afcae2a9c"
@@ -9,7 +9,6 @@ CHECKSUM_MD5="2cce41b4b1325d697183e34afcae2a9c"
PROVIDES="
libdsk$secondaryArchSuffix = $portVersion
lib:libdsk$secondaryArchSuffix = $portVersion
devel:libdsk$secondaryArchSuffix = $portVersion
"
@@ -26,6 +25,14 @@ PROVIDES="$PROVIDES
"
fi
PROVIDES_devel="
devel:libdsk$secondaryArchSuffix = $portVersion
"
REQUIRES_devel="
libdsk$secondaryArchSuffix == $portVersion base
"
REQUIRES="
haiku$secondaryArchSuffix >= $haikuVersion
lib:libz$secondaryArchSuffix
@@ -59,6 +66,8 @@ INSTALL()
fi
prepareInstalledDevelLib libdsk
packageEntries devel $developDir
}
COPYRIGHT="2010 John Elliott"

View File

@@ -0,0 +1,63 @@
From 4656339211c608955f9dbbabf4c6a9456f20fd64 Mon Sep 17 00:00:00 2001
From: Jerome Duval <jerome.duval@gmail.com>
Date: Wed, 26 Feb 2014 17:02:49 +0000
Subject: Haiku: adapt configure for x86_64
* don't hardcode arch/cpu.
* define _POSIX_C_SOURCE for memalign.
diff --git a/configure b/configure
index 2f11a10..59ed591 100755
--- a/configure
+++ b/configure
@@ -583,7 +583,7 @@ Haiku)
sysconfdir="${prefix}/etc"
bindir="${prefix}"
confsuffix=""
- CFLAGS="-fno-pic -march=prescott -mtune=core2 $CFLAGS"
+ CFLAGS="$CFLAGS -D_POSIX_C_SOURCE"
QEMU_CFLAGS="-DB_USE_POSITIVE_POSIX_ERRORS $QEMU_CFLAGS"
LIBS="-lposix_error_mapper -lnetwork -lbe -lbsd -lgame -lmedia -lstdc++ $LIBS"
;;
--
1.8.3.4
From 8d6f0e83ae6e429a1407b991772e3be40df292a0 Mon Sep 17 00:00:00 2001
From: Jerome Duval <jerome.duval@gmail.com>
Date: Wed, 26 Feb 2014 17:19:05 +0000
Subject: Haiku: don't hardcode types.
diff --git a/include/fpu/softfloat.h b/include/fpu/softfloat.h
index a445506..f3927e2 100644
--- a/include/fpu/softfloat.h
+++ b/include/fpu/softfloat.h
@@ -55,24 +55,12 @@ these four paragraphs for those parts of this code that are retained.
| to the same as `int'.
*----------------------------------------------------------------------------*/
typedef uint8_t flag;
-#ifndef __HAIKU__
typedef uint8_t uint8;
typedef int8_t int8;
typedef unsigned int uint32;
typedef signed int int32;
typedef uint64_t uint64;
typedef int64_t int64;
-#else
-// Haiku types
-typedef signed char int8;
-typedef unsigned char uint8;
-typedef short int16;
-typedef unsigned short uint16;
-typedef long int32;
-typedef unsigned long uint32;
-typedef long long int64;
-typedef unsigned long long uint64;
-#endif
#define LIT64( a ) a##LL
#define INLINE static inline
--
1.8.3.4

View File

@@ -7,7 +7,9 @@ SRC_URI="git+https://github.com/mmlr/qemu-haiku.git#e57972be33c91222a580d47c68b1
COPYRIGHT="2003-2008 Fabrice Bellard"
LICENSE="GNU GPL v2"
REVISION="1"
ARCHITECTURES="x86"
ARCHITECTURES="x86 x86_64"
PATCHES="qemu-1.7.0.patchset"
PROVIDES="
qemu = $portVersion
@@ -59,6 +61,7 @@ BUILD_REQUIRES="
BUILD_PREREQUIRES="
haiku_devel >= $haikuVersion
cmd:awk
cmd:gcc
cmd:ld
cmd:make

View File

@@ -10,7 +10,7 @@ COPYRIGHT="1992-2013, Paul Falstad, Richard Coleman, Zoltán Hidvégi, Andrew Ma
SRC_URI="http://sourceforge.net/projects/zsh/files/zsh/5.0.2/zsh-5.0.2.tar.bz2"
CHECKSUM_MD5="b8f2ad691acf58b3252225746480dcad"
REVISION="1"
ARCHITECTURES="x86_gcc2 x86"
ARCHITECTURES="x86_gcc2 x86 x86_64"
PATCHES="zsh-5.0.2.patchset"
PROVIDES="
zsh = $portVersion compat >= 5
@@ -20,11 +20,11 @@ PROVIDES="
REQUIRES="
haiku >= $haikuVersion
lib:libncurses
lib:libpcre
lib:libpcre >= 1
"
BUILD_REQUIRES="
devel:libncurses
devel:libpcre
devel:libpcre >= 1
"
BUILD_PREREQUIRES="
haiku_devel >= $haikuVersion
@@ -35,7 +35,6 @@ BUILD_PREREQUIRES="
cmd:make
"
BUILD()
{
runConfigure ./configure

View File

@@ -15,15 +15,15 @@ COPYRIGHT="
"
SRC_URI="ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.33.tar.bz2"
CHECKSUM_MD5="21514018448ac10062ece7a668fca949"
REVISION="1"
REVISION="2"
ARCHITECTURES="x86_gcc2 x86 x86_64"
SECONDARY_ARCHITECTURES="x86 x86_gcc2"
PROVIDES="
libpcre${secondaryArchSuffix} = $portVersion
lib:libpcre${secondaryArchSuffix} = 1.2.1 compat >= 1
lib:libpcrecpp${secondaryArchSuffix} = 1.2.1 compat >= 1
lib:libpcreposix${secondaryArchSuffix} = 1.2.1 compat >= 1
lib:libpcrecpp${secondaryArchSuffix} = 0.0.1 compat >= 0
lib:libpcreposix${secondaryArchSuffix} = 0.0.2 compat >= 0
"
if [ -z "$secondaryArchSuffix" ];then
@@ -93,8 +93,8 @@ PROVIDES_devel="
libpcre${secondaryArchSuffix}_devel = $portVersion
cmd:pcre_config = $portVersion compat >= 8
devel:libpcre$secondaryArchSuffix = 1.2.1 compat >= 1
devel:libpcrecpp$secondaryArchSuffix = 1.2.1 compat >= 1
devel:libpcreposix$secondaryArchSuffix = 1.2.1 compat >= 1
devel:libpcrecpp$secondaryArchSuffix = 0.0.1 compat >= 0
devel:libpcreposix$secondaryArchSuffix = 0.0.2 compat >= 0
"
REQUIRES_devel="
libpcre$secondaryArchSuffix == $portVersion base

View File

@@ -0,0 +1,70 @@
SUMMARY="Perl5 Compatible Regular Expressions"
DESCRIPTION="
The PCRE library is a set of functions that implement regular expression
pattern matching using the same syntax and semantics as Perl 5. PCRE has
its own native API, as well as a set of wrapper functions that correspond
to the POSIX regular expression API. The PCRE library is free, even for
building proprietary software.
This package contains the native API.
"
HOMEPAGE="http://www.pcre.org/"
LICENSE="PCRE"
COPYRIGHT="
1997-2011 University of Cambridge
2007-2011, Google Inc. All rights reserved.
"
SRC_URI="http://sourceforge.net/projects/pcre/files/pcre/8.21/pcre-8.21.tar.bz2"
CHECKSUM_MD5="0a7b592bea64b7aa7f4011fc7171a730"
REVISION="6"
ARCHITECTURES="x86_gcc2 x86 x86_64"
SECONDARY_ARCHITECTURES="x86 x86_gcc2"
PROVIDES="
libpcre0${secondaryArchSuffix} = $portVersion
lib:libpcre${secondaryArchSuffix} = 0.0.1 compat >= 0
"
REQUIRES="
haiku$secondaryArchSuffix >= $haikuVersion
"
BUILD_REQUIRES="
"
BUILD_PREREQUIRES="
haiku${secondaryArchSuffix}_devel >= $haikuVersion
cmd:aclocal
cmd:autoconf
cmd:automake
cmd:gcc$secondaryArchSuffix
cmd:make
cmd:ld$secondaryArchSuffix
cmd:libtoolize
"
SOURCE_DIR="pcre-$portVersion"
BUILD()
{
libtoolize --force --copy --install
aclocal
autoconf
automake --add-missing
runConfigure ./configure \
--enable-utf8 \
--enable-unicode-properties \
--with-pic --disable-cpp --disable-static
make $jobArgs
}
INSTALL()
{
make install-exec-am
rm -Rf $binDir $libDir/libpcreposix* \
$libDir/libpcre.la $libDir/libpcre.so
}
TEST()
{
make check
}

View File

@@ -51,4 +51,5 @@ INSTALL()
# mkdir -p $prefix
# perl Makefile.pl -install $PREFIX=$prefix
# cp -r $portDir/example-descriptors $dataDir/abi-compliance-checker
:
}

View File

@@ -1,29 +0,0 @@
DESCRIPTION="Simple, high-reliability, distributed software configuration management"
HOMEPAGE="http://www.fossil-scm.org/"
SRC_URI="http://www.fossil-scm.org/download/fossil-src-20120317175325.tar.gz"
CHECKSUM_MD5="a7106450722e8477972d230fa535702f"
REVISION="3"
STATUS_HAIKU="stable"
DEPEND=""
BUILD()
{
cd fossil-src-20120317175325
./configure --prefix=`finddir B_COMMON_DIRECTORY`
make
}
INSTALL()
{
cd fossil-src-20120317175325
make install
}
TEST()
{
cd fossil-src-20120317175325
make test
}
LICENSE="BSD (2-clause)"
COPYRIGHT="2007 D. Richard Hipp"

View File

@@ -3,17 +3,17 @@ DESCRIPTION="
Simple, high-reliability, distributed software configuration management
"
HOMEPAGE="http://www.fossil-scm.org/"
SRC_URI="http://www.fossil-scm.org/download/fossil-src-20130911114349.tar.gz"
CHECKSUM_MD5="fa4ea3eb25d2a8cfb0edbd0c30c268b9"
SRC_URI="http://www.fossil-scm.org/download/fossil-src-20140127173344.tar.gz"
CHECKSUM_MD5="e123c15c9b82b8bed2f4d1c5f8e19f8c"
REVISION="1"
LICENSE="BSD (2-clause)"
COPYRIGHT="2007 D. Richard Hipp"
ARCHITECTURES="?x86_gcc2 ?x86 ?x86_64"
ARCHITECTURES="x86_gcc2 ?x86 ?x86_64"
PROVIDES="
fossil = $portVersion
cms:fossil = $portVersion
cmd:fossil = $portVersion
"
REQUIRES="
haiku >= $haikuVersion
@@ -31,7 +31,7 @@ BUILD_PREREQUIRES="
cmd:gcc
"
SOURCE_DIR="fossil-src-20130911114349"
SOURCE_DIR="fossil-src-20140127173344"
BUILD()
{

View File

@@ -1,20 +0,0 @@
--- fossil-src-20120317175325/src/main.c.org 2012-04-21 05:23:25.719847424 +0200
+++ fossil-src-20120317175325/src/main.c 2012-04-21 05:24:46.773062656 +0200
@@ -1625,7 +1625,7 @@
}
#if !defined(_WIN32)
-#if !defined(__DARWIN__) && !defined(__APPLE__)
+#if !defined(__DARWIN__) && !defined(__APPLE__) && !defined(__HAIKU__)
/*
** Search for an executable on the PATH environment variable.
** Return true (1) if found and false (0) if not found.
@@ -1721,7 +1721,7 @@
#if !defined(_WIN32)
/* Unix implementation */
if( isUiCmd ){
-#if !defined(__DARWIN__) && !defined(__APPLE__)
+#if !defined(__DARWIN__) && !defined(__APPLE__) && !defined(__HAIKU__)
zBrowser = db_get("web-browser", 0);
if( zBrowser==0 ){
static char *azBrowserProg[] = { "xdg-open", "gnome-open", "firefox" };

View File

@@ -0,0 +1,76 @@
SUMMARY="Find treasure and escape back to save the Goon Docks from demolition."
HOMEPAGE="http://www2.braingames.getput.com/goonies/"
LICENSE="GNU GPL v2"
COPYRIGHT="2006-2009 Brain Games"
SRC_URI="http://braingames.jorito.net/goonies/downloads/goonies.src_1.4.1528.tgz"
CHECKSUM_MD5="7c220958a0766fb716d2d0081c81e8bd"
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="
goonies = $portVersion
"
REQUIRES="
haiku$secondaryArchSuffix >= $haikuVersion
lib:libsdl$secondaryArchSuffix
lib:libSDL_image$secondaryArchSuffix
lib:libSDL_mixer$secondaryArchSuffix
# lib:libSDL_sound$secondaryArchSuffix
# lib:libSDL_ttf$secondaryArchSuffix
lib:libGLU$secondaryArchSuffix
"
BUILD_REQUIRES="
devel:libsdl$secondaryArchSuffix
devel:libSDL_image$secondaryArchSuffix
devel:libSDL_mixer$secondaryArchSuffix
# devel:libSDL_sound$secondaryArchSuffix
# devel:libSDL_ttf$secondaryArchSuffix
devel:libGLU$secondaryArchSuffix
"
BUILD_PREREQUIRES="
haiku${secondaryArchSuffix}_devel >= $haikuVersion
haiku_devel >= $haikuVersion
cmd:gcc$secondaryArchSuffix
cmd:ld$secondaryArchSuffix
cmd:make
"
PATCHES="goonies-$portVersion.patchset"
BUILD()
{
make $jobArgs
}
INSTALL()
{
installDir=$appsDir/"Goonies"
mkdir -p "$installDir"
make install PREFIX="$installDir" GAMEDIR="$installDir"
# cd "$installDir"
# echo -e "#!/bin/sh\n`cat roadfighter`" > roadfighter
addAppDeskbarSymlink "$installDir/goonies" "Goonies"
}
DESCRIPTION="
The action takes place in the sleepy seaside town of Cauldron Point - down in
an area known as the Goon Docks. The Goonies are a group of local kids - Mikey,
Brand, Mouth, Chunk and Data. One day they find an old treasure map in Mikey's
attic. Data figures that this must be the fabulous hidden treasure of the
notorious local pirate, One-Eyed Willy. The girls, Andy and Stef, join the
other Goonies and the adventure begins. But the secret underground tunnels they
are exploring are actually the hideout of the Fratelli Gang, and the Goonies
are soon trapped! The Goonies have a powerful ally on their side, however, in
the form of the huge and amiable Sloth.
When you play this game, you are Sloth! Can you help the Goonies find the
treasure and escape back to save the Goon Docks from demolition?
"

View File

@@ -0,0 +1,22 @@
From 0945ad6ec688efbc88d8adfb3a546085819b8d30 Mon Sep 17 00:00:00 2001
From: Adrien Destugues <pulkomandy@pulkomandy.tk>
Date: Tue, 28 Jan 2014 22:43:44 +0100
Subject: Use the right compiler.
diff --git a/build/linux/Makefile b/build/linux/Makefile
index df4bb3d..3ccca0c 100644
--- a/build/linux/Makefile
+++ b/build/linux/Makefile
@@ -56,7 +56,7 @@ OBJS = \
$(SRC)/Symbol.o $(SRC)/TheGooniesApp.o \
$(SRC)/TheGoonies.o $(SRC)/Vector.o
-CC = gcc
+CC = g++
CFLAGS = -g3 -O3 -Wno-write-strings `sdl-config --cflags` -I/usr/X11R6/include
LDFLAGS = `sdl-config --libs` -L/usr/X11R6/lib/ -lSDL_image -lSDL_mixer -lGL -lGLU
RM = rm -f
--
1.8.3.4

View File

@@ -0,0 +1,86 @@
From ba88fe1ad26fc936fcfece46929b4b1eebb091c1 Mon Sep 17 00:00:00 2001
From: Adrien Destugues <pulkomandy@pulkomandy.tk>
Date: Tue, 28 Jan 2014 20:36:56 +0100
Subject: remove hardcoded -lm and add -lnetwork.
diff --git a/src/Makefile b/src/Makefile
index a67cd14..8493bb9 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -53,6 +53,11 @@ EXTRA_LDFLAGS = -lnsl -lsocket -R$(XLIB_PATH)
PLATFORM = unix
endif
+ifeq ($(PLATFORM),haiku) # native compiling to Haiku
+EXTRA_LDFLAGS = -lnetwork
+PLATFORM = unix
+endif
+
ifeq ($(PLATFORM),macosx) # native compiling to Mac OS X
EXTRA_LDFLAGS = -lstdc++
PLATFORM = unix
@@ -163,7 +168,7 @@ OPTIONS = -O3 -Wall
endif
CFLAGS = $(OPTIONS) $(SYS_CFLAGS) $(EXTRA_CFLAGS) $(CONFIG)
-LDFLAGS = $(SYS_LDFLAGS) $(EXTRA_LDFLAGS) -lm
+LDFLAGS = $(SYS_LDFLAGS) $(EXTRA_LDFLAGS)
SRCS = main.c \
--
1.8.3.4
From 142ac2bc985591b85860f6fea82b5161fc4446e9 Mon Sep 17 00:00:00 2001
From: Adrien Destugues <pulkomandy@pulkomandy.tk>
Date: Tue, 28 Jan 2014 21:10:09 +0100
Subject: Store user files at the right place.
diff --git a/src/main.c b/src/main.c
index aaa3a5b..03723fb 100644
--- a/src/main.c
+++ b/src/main.c
@@ -13,6 +13,9 @@
#include "libgame/libgame.h"
+#include <FindDirectory.h>
+#include <sys/stat.h>
+
#include "main.h"
#include "init.h"
#include "game.h"
@@ -5588,11 +5591,27 @@ int main(int argc, char *argv[])
{
char * window_title_string = getWindowTitleString();
+#ifdef __HAIKU__
+ char datadir[256];
+ find_directory(B_USER_SETTINGS_DIRECTORY, 0, true, datadir, sizeof(datadir));
+ strcat(datadir,"/rocksndiamonds");
+ find_directory(B_USER_DIRECTORY, 0, true, datadir, sizeof(datadir));
+ char* ptr = datadir;
+ while(*ptr != 0) ptr++;
+ ptr++;
+ mkdir(ptr, 0770);
+ InitProgramInfo(argv[0], ptr, ptr,
+ PROGRAM_TITLE_STRING, window_title_string, ICON_TITLE_STRING,
+ X11_ICON_FILENAME, X11_ICONMASK_FILENAME, SDL_ICON_FILENAME,
+ MSDOS_POINTER_FILENAME,
+ COOKIE_PREFIX, FILENAME_PREFIX, GAME_VERSION_ACTUAL);
+#else
InitProgramInfo(argv[0], USERDATA_DIRECTORY, USERDATA_DIRECTORY_UNIX,
PROGRAM_TITLE_STRING, window_title_string, ICON_TITLE_STRING,
X11_ICON_FILENAME, X11_ICONMASK_FILENAME, SDL_ICON_FILENAME,
MSDOS_POINTER_FILENAME,
COOKIE_PREFIX, FILENAME_PREFIX, GAME_VERSION_ACTUAL);
+#endif
InitExitMessageFunction(DisplayExitMessage);
InitExitFunction(CloseAllAndExit);
--
1.8.3.4

View File

@@ -0,0 +1,71 @@
SUMMARY="Arcade style game in the style of Boulder Dash."
HOMEPAGE="http://www.artsoft.org/rocksndiamonds/"
LICENSE="GNU GPL v2"
COPYRIGHT="2001-2013 Artsoft Entertainment"
SRC_URI="http://www.artsoft.org/RELEASES/unix/rocksndiamonds/rocksndiamonds-3.3.1.2.tar.gz"
CHECKSUM_MD5="9fb7d125a314f55c5148c0e47f9ebb42"
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="
rocksndiamonds = $portVersion
app:rocksndiamonds = $portVersion
"
REQUIRES="
haiku$secondaryArchSuffix >= $haikuVersion
lib:libsdl$secondaryArchSuffix
lib:libsdl_image$secondaryArchSuffix
lib:libsdl_mixer$secondaryArchSuffix
lib:libsdl_net$secondaryArchSuffix
# lib:libz$secondaryArchSuffix
lib:libsmpeg$secondaryArchSuffix
"
BUILD_REQUIRES="
devel:libsdl$secondaryArchSuffix
devel:libsdl_image$secondaryArchSuffix
devel:libsdl_mixer$secondaryArchSuffix
devel:libsdl_net$secondaryArchSuffix
# devel:libz$secondaryArchSuffix
devel:libsmpeg$secondaryArchSuffix
"
BUILD_PREREQUIRES="
haiku${secondaryArchSuffix}_devel >= $haikuVersion
cmd:gcc$secondaryArchSuffix
cmd:ld$secondaryArchSuffix
cmd:make
"
PATCHES="rocksndiamonds-$portVersion.patchset"
BUILD()
{
# Parallel build doesn't work.
PLATFORM=haiku make sdl
}
INSTALL()
{
destdir=$appsDir/"Rocks'n'Diamonds"
mkdir -p $destdir
cp -r rocksndiamonds sounds graphics levels music $destdir
addAppDeskbarSymlink $destdir/rocksndiamonds "Rocks'n'Diamonds"
}
# ----- DESCRIPTION -----------------------------------------------------------
DESCRIPTION="
- network multiplayer games (upto 4 players)
- local multiplayer games (upto 4 players)
- soft scrolling with 50 frames per second
- freely customizable keyboard and joystick support
- stereo sound effects and music
- music modules and fullscreen in SDL version
- contains levels to play Boulder Dash, Emerald Mine and Sokoban
- lots of additional levels available (over 10.000)
"

View File

@@ -9,7 +9,7 @@ LICENSE="GNU GPL v2"
COPYRIGHT="2002-2004 Forgotten"
ARCHITECTURES="x86 ?x86_64"
if [ $effectiveArchitecture != x86_gcc2 ]; then
if [ $effectiveTargetArchitecture != x86_gcc2 ]; then
ARCHITECTURES="$ARCHITECTURES x86_gcc2"
fi
SECONDARY_ARCHITECTURES="x86 ?x86_64"

View File

@@ -0,0 +1,88 @@
SUMMARY="LÖVE is an *awesome* framework you can use to make 2D games in Lua."
DESCRIPTION="
Hi there! LÖVE is an *awesome* framework you can use to make 2D games in Lua.
It's free, open-source, and works on Windows, Mac OS X and Linux.
"
HOMEPAGE="http://love2d.org/"
SRC_URI="https://bitbucket.org/rude/love/downloads/love-0.9.0-linux-src.tar.gz"
CHECKSUM_MD5="6591752af4e33f521d616d9b048aa894"
REVISION="1"
LICENSE="Zlib"
COPYRIGHT="2010-2014 Löve"
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="
love$secondaryArchSuffix = $portVersion
cmd:love$secondaryArchSuffix = $portVersion
lib:liblove$secondaryArchSuffix = $portVersion
"
REQUIRES="
haiku$secondaryArchSuffix >= $haikuVersion
lib:libSDL2_2.0$secondaryArchSuffix
lib:libvorbis$secondaryArchSuffix
lib:libvorbisfile$secondaryArchSuffix
lib:libmodplug$secondaryArchSuffix >= 0.8.0
lib:libphysfs$secondaryArchSuffix
lib:libluajit_5.1$secondaryArchSuffix
lib:libopenal$secondaryArchSuffix
lib:libogg$secondaryArchSuffix
lib:libfreetype$secondaryArchSuffix
lib:libIL$secondaryArchSuffix
lib:libGL$secondaryArchSuffix
lib:libmpg123$secondaryArchSuffix
lib:libz$secondaryArchSuffix
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel >= $haikuVersion
devel:libSDL2$secondaryArchSuffix
devel:libvorbis$secondaryArchSuffix
devel:libvorbisfile$secondaryArchSuffix
devel:libmodplug$secondaryArchSuffix >= 0.8.0
devel:libphysfs$secondaryArchSuffix
devel:libluajit_5.1$secondaryArchSuffix
devel:libopenal$secondaryArchSuffix
devel:libogg$secondaryArchSuffix
devel:libfreetype$secondaryArchSuffix
devel:libIL$secondaryArchSuffix
devel:libGL$secondaryArchSuffix
devel:libmpg123$secondaryArchSuffix
devel:libz$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:make
cmd:gcc$secondaryArchSuffix
cmd:ld$secondaryArchSuffix
# cmd:libtoolize
cmd:pkg_config$secondaryArchSuffix
"
PATCHES="love-0.9.0.patchset"
BUILD()
{
runConfigure ./configure
make $jobArgs
}
INSTALL()
{
make install
prepareInstalledDevelLib liblove
packageEntries devel $developDir
}
PROVIDES_devel="
love${secondaryArchSuffix}_devel = $portVersion
devel:liblove$secondaryArchSuffix = $portVersion
"
REQUIRES_devel="
love$secondaryArchSuffix == $portVersion base
"

View File

@@ -0,0 +1,55 @@
From 42a0ac9d4b717dccdb1c6f3d9615b702255574d2 Mon Sep 17 00:00:00 2001
From: Adrien Destugues <pulkomandy@pulkomandy.tk>
Date: Tue, 28 Jan 2014 20:25:18 +0100
Subject: Hack Glee to compile (we don't need GLX!)
diff --git a/src/modules/graphics/opengl/GLee.c b/src/modules/graphics/opengl/GLee.c
index 789e189..850a87d 100644
--- a/src/modules/graphics/opengl/GLee.c
+++ b/src/modules/graphics/opengl/GLee.c
@@ -22418,7 +22418,7 @@ const char *__GLeeGetExtStrPlat( void )
if (wglGetExtensionsStringARB)
return (const char *)wglGetExtensionsStringARB(wglGetCurrentDC());
-#elif defined(__APPLE__) || defined(__APPLE_CC__)
+#elif defined(__APPLE__) || defined(__APPLE_CC__) || defined(__HAIKU__)
#else
Display *dpy=glXGetCurrentDisplay();
if(dpy)
diff --git a/src/modules/graphics/opengl/GLee.h b/src/modules/graphics/opengl/GLee.h
index 631cddc..42782ec 100644
--- a/src/modules/graphics/opengl/GLee.h
+++ b/src/modules/graphics/opengl/GLee.h
@@ -64,7 +64,9 @@
#define __glxext_h_ /* prevent glxext.h from being included */
#define GLX_GLXEXT_PROTOTYPES
#include <GL/gl.h>
- #include <GL/glx.h>
+ #ifndef __HAIKU__
+ #include <GL/glx.h>
+ #endif
#endif
#ifndef APIENTRY
@@ -1152,7 +1154,7 @@ GLEE_EXTERN GLboolean _GLEE_SGIX_igloo_interface;
DECLARE_HANDLE(HVIDEOINPUTDEVICENV);
#endif
-#elif defined(__APPLE__) || defined(__APPLE_CC__)
+#elif defined(__APPLE__) || defined(__APPLE_CC__) || defined(__HAIKU__)
/* Mac OS X */
@@ -23178,7 +23180,7 @@ GLEE_EXTERN GLboolean _GLEE_WGL_NV_video_output;
#define wglGetVideoInfoNV GLeeFuncPtr_wglGetVideoInfoNV
#endif
#endif
-#elif defined(__APPLE__) || defined(__APPLE_CC__)
+#elif defined(__APPLE__) || defined(__APPLE_CC__) || defined(__HAIKU__)
#else /* GLX */
/* Extension querying variables */
--
1.8.3.4

View File

@@ -29,6 +29,7 @@ BUILD_PREREQUIRES="
"
PATCHES="keymapswitcher-$portVersion.patchset"
PATCH()
{
# Fix makefile not to use BUILDHOME as an install dir variable.

View File

@@ -0,0 +1,21 @@
From 5b34e6a6930216d0855e58bebc168e6dc50f76cc Mon Sep 17 00:00:00 2001
From: Adrien Destugues <pulkomandy@pulkomandy.tk>
Date: Fri, 7 Feb 2014 15:24:16 +0100
Subject: Fix gcc2 build.
diff --git a/SettingsWindow.h b/SettingsWindow.h
index 251fb38..de49f94 100644
--- a/SettingsWindow.h
+++ b/SettingsWindow.h
@@ -78,6 +78,7 @@ class SettingsWindow: public BWindow
virtual void SelectionChanged();
virtual void MouseDown(BPoint point);
};
+ friend class KeymapOutlineListView;
class MoveButton : public BPictureButton
{
--
1.8.3.4

View File

@@ -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-2014 Apple Inc., Google Inc., et al"
LICENSE="
GNU LGPL v2
GNU LGPL v2.1
MIT
"
SRC_URI="https://github.com/haiku/webkit/archive/$portVersion.tar.gz"
CHECKSUM_MD5="8bb12e5a95e1ad7647e646f96d082253"
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
"

View File

@@ -6,49 +6,49 @@ customizable, and portable while capable of producing high-quality output \
"
HOMEPAGE="http://www.freetype.org"
LICENSE="FreeType"
COPYRIGHT="1996-2012 David Turner, Robert Wilhelm, Werner Lemberg, et al."
SRC_URI="http://download.savannah.gnu.org/releases/freetype/freetype-2.5.0.1.tar.bz2"
CHECKSUM_MD5="c72e9010b1d986d556fc0b2b5fcbf31a"
REVISION="1"
ARCHITECTURES="?x86_gcc2 ?x86 ?x86_64"
SECONDARY_ARCHITECTURES="?x86_gcc2 ?x86"
COPYRIGHT="1996-2013 David Turner, Robert Wilhelm, Werner Lemberg, et al."
SRC_URI="http://download.savannah.gnu.org/releases/freetype/freetype-2.5.2.tar.bz2"
CHECKSUM_MD5="10e8f4d6a019b124088d18bc26123a25"
REVISION="2"
ARCHITECTURES="x86_gcc2 x86 x86_64"
SECONDARY_ARCHITECTURES="x86_gcc2 x86"
PROVIDES="
freetype$secondaryArchSuffix = $portVersion
lib:libfreetype$secondaryArchSuffix = 6.8.1 compat >= 6
lib:libfreetype$secondaryArchSuffix = 6.11.1 compat >= 6
"
REQUIRES="
haiku$secondaryArchSuffix >= $haikuVersion
lib:libbz2$secondaryArchSuffix
lib:libz$secondaryArchSuffix >= 1
lib:libpng$secondaryArchSuffix
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel >= $haikuVersion
devel:libbz2$secondaryArchSuffix
devel:libz$secondaryArchSuffix
devel:libpng$secondaryArchSuffix
"
BUILD_PREREQUIRES="
haiku${secondaryArchSuffix}_devel >= $haikuVersion
haiku_devel >= $haikuVersion
cmd:aclocal
cmd:autoconf
cmd:automake
cmd:gcc$secondaryArchSuffix
cmd:ld$secondaryArchSuffix
cmd:libtoolize
cmd:libtool >= 2.4.2
cmd:make
devel:libpng
cmd:which
"
BUILD()
{
./autogen.sh
runConfigure ./configure --without-png
runConfigure ./configure
make $jobArgs
}
INSTALL()
{
mkdir -p $includeDir/freetype2/freetype/cache
mkdir -p $includeDir/freetype2/freetype/internal
make install
prepareInstalledDevelLibs libfreetype
@@ -66,7 +66,7 @@ INSTALL()
PROVIDES_devel="
freetype${secondaryArchSuffix}_devel = $portVersion
cmd:freetype_config${secondaryArchSuffix} = $portVersion
devel:libfreetype${secondaryArchSuffix} = 6.8.1 compat >= 6
devel:libfreetype${secondaryArchSuffix} = 6.11.1 compat >= 6
"
REQUIRES_devel="
freetype${secondaryArchSuffix} == $portVersion base

View File

@@ -11,7 +11,7 @@ on both libz and libjpeg.
HOMEPAGE="http://www.libsdl.org/projects/SDL_image"
SRC_URI="http://www.libsdl.org/projects/SDL_image/release/SDL_image-1.2.12.tar.gz"
CHECKSUM_MD5="a0f9098ebe5400f0bdc9b62e60797ecb"
REVISION="1"
REVISION="2"
LICENSE="Zlib"
COPYRIGHT="1997-2012 Sam Lantinga"
@@ -34,6 +34,7 @@ REQUIRES="
lib:libgif$secondaryArchSuffix
lib:libwebp$secondaryArchSuffix
lib:libGL$secondaryArchSuffix
lib:libz$secondaryArchSuffix
"
BUILD_REQUIRES="
@@ -44,6 +45,7 @@ BUILD_REQUIRES="
# devel:libtiff$secondaryArchSuffix
devel:libgif$secondaryArchSuffix
devel:libwebp$secondaryArchSuffix
devel:libz$secondaryArchSuffix
"
BUILD_PREREQUIRES="
@@ -53,7 +55,7 @@ BUILD_PREREQUIRES="
cmd:ld$secondaryArchSuffix
cmd:libtool
cmd:make
cmd:pkg_config
cmd:pkg_config$secondaryArchSuffix
cmd:sdl_config
"
@@ -65,7 +67,7 @@ BUILD()
aclocal --install -I acinclude
./autogen.sh
runConfigure ./configure \
--enable-bmp --enable-lbm --enable-pcx \
--enable-bmp --enable-lbm --enable-pcx --enable-png \
--enable-pnm --enable-tga --enable-xcf --enable-xpm --enable-xv \
--enable-gif --enable-jpg --disable-jpg-shared --enable-webp
make

View File

@@ -0,0 +1,52 @@
SUMMARY="Open Sound System"
DESCRIPTION="Open Sound System audio drivers"
HOMEPAGE="http://developer.opensound.com/"
LICENSE="BSD (2-clause)"
COPYRIGHT="1996-2008 Hannu Savolainen and Dev Mazumdar"
SRC_URI="git://opensound.git.sourceforge.net/gitroot/opensound/opensound"
REVISION="1"
#CHECKSUM_MD5=""
ARCHITECTURES="?x86_gcc2 ?x86"
PROVIDES="
opensound$secondaryArchSuffix = $portVersion
cmd:ossplay$secondaryArchSuffix
cmd:ossinfo$secondaryArchSuffix
cmd:ossmix$secondaryArchSuffix
cmd:ossphone$secondaryArchSuffix
cmd:ossrecord$secondaryArchSuffix
cmd:osstest$secondaryArchSuffix
cmd:savemixer$secondaryArchSuffix
cmd:vmixctl$secondaryArchSuffix
"
REQUIRES="
haiku$secondaryArchSuffix >= $haikuVersion
"
BUILD_PREREQUIRES="
haiku${secondaryArchSuffix}_devel >= $haikuVersion
cmd:gcc$secondaryArchSuffix
cmd:ld$secondaryArchSuffix
cmd:make
"
PATCHES="opensound-4.2_git.patchset"
GLOBAL_WRITABLE_FILES="settings/kernel/drivers directory keep-old"
BUILD()
{
mkdir -p build
cd build
../configure --config-midi=NO --config-vmix=NO
make
}
INSTALL()
{
cd build
make build SYSTEM_DIR=system
copyattr -d -r prototype/system/* $prefix/
copyattr -d -r prototype/home/config/settings/* $settingsDir/
}

View File

@@ -0,0 +1,197 @@
From f5c773104f0df79a24197a2d66b704c1001ccf6d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fran=C3=A7ois=20Revol?= <revol@free.fr>
Date: Sun, 23 Feb 2014 00:30:41 +0100
Subject: [PATCH 1/5] beos: make sure rejected card isn't uninitialized on
driver unload
Only mark a card available after having reserved the device in Haiku,
to make sure we don't leave ghost devices.
diff --git a/kernel/OS/BeOS/os_beos.c b/kernel/OS/BeOS/os_beos.c
index 08587c5..111e6b1 100644
--- a/kernel/OS/BeOS/os_beos.c
+++ b/kernel/OS/BeOS/os_beos.c
@@ -1057,7 +1057,6 @@ osdev_create (dev_info_t * dip, int dev_type, int instance, const char *nick,
osdev->dip = dip;
//osdev->osid = dip;
osdev->unloaded = 0;
- osdev->available = 1;
osdev->first_mixer = -1;
osdev->instance = instance;
osdev->dev_type = dev_type;
@@ -1096,6 +1095,8 @@ osdev_create (dev_info_t * dip, int dev_type, int instance, const char *nick,
return NULL;
}
+ osdev->available = 1;
+
/*
* Create the device handle
*/
--
1.8.3.4
From e446f041c4dee02c56ad57629861fb1884cf84a8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fran=C3=A7ois=20Revol?= <revol@free.fr>
Date: Sun, 23 Feb 2014 01:16:34 +0100
Subject: [PATCH 2/5] beos: Fix Haiku build
The spinlock type was changed to a struct so we now use an
initializer macro.
diff --git a/kernel/OS/BeOS/os_beos.h b/kernel/OS/BeOS/os_beos.h
index 1e8f0b5..31fd27e 100644
--- a/kernel/OS/BeOS/os_beos.h
+++ b/kernel/OS/BeOS/os_beos.h
@@ -171,6 +171,11 @@ extern int oss_create_uio (uio_t * uiop, char *buf, size_t count, uio_rw_t rw,
* Mutexes
*/
+/* Haiku defines a specific initializer now, BeOS just used 0. */
+#ifndef B_INITIALIZE_SPINLOCK
+#define B_INITIALIZE_SPINLOCK(spinlock) do { *spinlock = 0; } while (false)
+#endif
+
#ifdef MUTEX_CHECKS
/* Debugging version */
struct _oss_mutex_t
@@ -198,7 +203,7 @@ extern void debug_mutex_exit (oss_mutex_t * mutex, char *file, int line, oss_nat
#define MUTEX_EXIT(mutex, flags) debug_mutex_exit(&mutex, __FILE__, __LINE__, NULL)
#else
typedef spinlock oss_mutex_t;
-#define MUTEX_INIT(osdev, mutex, hier) { mutex = 0; }
+#define MUTEX_INIT(osdev, mutex, hier) B_INITIALIZE_SPINLOCK(&(mutex))
#define MUTEX_CLEANUP(mutex)
#define MUTEX_ENTER_IRQDISABLE(mutex, flags) \
{ \
--
1.8.3.4
From 3686b589095719be3f24b2dd6aea706f9b9a3877 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fran=C3=A7ois=20Revol?= <revol@free.fr>
Date: Sun, 23 Feb 2014 01:49:47 +0100
Subject: [PATCH 3/5] beos: Fix Haiku package
The kernel library symlink has moved in Haiku, check for it.
diff --git a/setup/BeOS/build.sh b/setup/BeOS/build.sh
index 045a599..4d10060 100644
--- a/setup/BeOS/build.sh
+++ b/setup/BeOS/build.sh
@@ -90,16 +90,23 @@ core=prototype/$BEOS_SYSTEM/add-ons/kernel/media/oss
# no midi yet
rm target/modules/oss_midiloop.o
+for k in /boot/develop/lib/x86/_KERNEL_ /boot/system/develop/lib/_KERNEL_; do
+ if [ -e "$k" ]; then
+ KERNEL="$k"
+ break
+ fi
+done
+
# try to build all in a single bin for now...
# driver_beos.o shouldn' be in, oh well...
# R5 has symbols like __ucmpdi2 but not Haiku, so use libgcc
-gcc -o $core target/objects/*.o target/modules/*.o -nostdlib -lgcc /boot/develop/lib/x86/_KERNEL_ || exit 1
+gcc -o $core target/objects/*.o target/modules/*.o -nostdlib -lgcc $KERNEL || exit 1
setvermime $core
# except the loader driver...
# using the same bin works in BeOS but not in Haiku.
drv=prototype/$BEOS_SYSTEM/add-ons/kernel/drivers/bin/${DRVPREFIX}loader
-gcc -o $drv target/objects/driver_beos.o -nostdlib /boot/develop/lib/x86/_KERNEL_ || exit 1
+gcc -o $drv target/objects/driver_beos.o -nostdlib $KERNEL || exit 1
setvermime $drv
rm -f devlist.txt
--
1.8.3.4
From 9af17237da3955bd579a87616d5914d3aa54b435 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fran=C3=A7ois=20Revol?= <revol@free.fr>
Date: Sun, 23 Feb 2014 01:51:10 +0100
Subject: [PATCH 4/5] beos: Avoid loading OSS too early at boot
Give precedence to the native driver, the /dev symlink was a hack
to force loading OSS earlier than native drivers.
diff --git a/setup/BeOS/build.sh b/setup/BeOS/build.sh
index 4d10060..ef22ec9 100644
--- a/setup/BeOS/build.sh
+++ b/setup/BeOS/build.sh
@@ -41,7 +41,9 @@ mkdir -p prototype/$BEOS_SYSTEM/add-ons/kernel/drivers/dev/audio/oss
#hack for now
mkdir -p prototype/$BEOS_SYSTEM/add-ons/kernel/drivers/dev/oss
ln -s ../../bin/${DRVPREFIX}loader prototype/$BEOS_SYSTEM/add-ons/kernel/drivers/dev/oss/
-ln -s ../bin/${DRVPREFIX}loader prototype/$BEOS_SYSTEM/add-ons/kernel/drivers/dev/
+# Avoid loading OSS too early at boot,
+# the media addon will probe /dev/audio/oss anyway
+#ln -s ../bin/${DRVPREFIX}loader prototype/$BEOS_SYSTEM/add-ons/kernel/drivers/dev/
#hack: install bins for now
mkdir -p prototype/home/config/bin
mkdir -p prototype/home/config/settings/kernel/drivers
--
1.8.3.4
From 288e5eeb0e37b5aae36f31781243769b4e5bed1e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fran=C3=A7ois=20Revol?= <revol@free.fr>
Date: Sun, 23 Feb 2014 02:32:05 +0100
Subject: [PATCH 5/5] beos: Allow installing into passed system directory
Since Haiku switched to package-management we can provide proper
packages that can be easily uninstalled.
The package will be built by haikuporter though for now.
diff --git a/setup/BeOS/build.sh b/setup/BeOS/build.sh
index ef22ec9..2fc0cd1 100644
--- a/setup/BeOS/build.sh
+++ b/setup/BeOS/build.sh
@@ -4,7 +4,9 @@
#BEOS_SYSTEM=beos/system
# to install as user addons
-BEOS_SYSTEM=home/config
+BEOS_SYSTEM=${SYSTEM_DIR:-home/config}
+ADDONS_DIR=$BEOS_SYSTEM/add-ons
+BIN_DIR=$BEOS_SYSTEM/bin
DRVPREFIX=oss_
@@ -36,7 +38,6 @@ mkdir -p prototype/$BEOS_SYSTEM/add-ons/kernel/media
#hack for now
#mkdir -p prototype/$BEOS_SYSTEM/add-ons/kernel/media/oss
mkdir -p prototype/$BEOS_SYSTEM/add-ons/kernel/drivers/bin
-mkdir -p prototype/$BEOS_SYSTEM/add-ons/kernel/drivers/dev/audio/multi
mkdir -p prototype/$BEOS_SYSTEM/add-ons/kernel/drivers/dev/audio/oss
#hack for now
mkdir -p prototype/$BEOS_SYSTEM/add-ons/kernel/drivers/dev/oss
@@ -45,9 +46,9 @@ ln -s ../../bin/${DRVPREFIX}loader prototype/$BEOS_SYSTEM/add-ons/kernel/drivers
# the media addon will probe /dev/audio/oss anyway
#ln -s ../bin/${DRVPREFIX}loader prototype/$BEOS_SYSTEM/add-ons/kernel/drivers/dev/
#hack: install bins for now
-mkdir -p prototype/home/config/bin
+mkdir -p prototype/$BIN_DIR
mkdir -p prototype/home/config/settings/kernel/drivers
-mkdir -p prototype/home/Desktop
+#mkdir -p prototype/home/Desktop
#cp $SRCDIR/include/soundcard.h prototype/usr/include/sys
@@ -57,8 +58,8 @@ mkdir -p prototype/home/Desktop
#cp $SRCDIR/kernel/framework/include/midiparser.h prototype/$OSSLIBDIR/include/
(cd target/bin; rm -f ossrecord; ln -s ossplay ossrecord)
-cp -f target/bin/* prototype/home/config/bin
-cp -f target/sbin/* prototype/home/config/bin
+cp -f target/bin/* prototype/$BIN_DIR/
+cp -f target/sbin/* prototype/$BIN_DIR/
#cp -R $SRCDIR/oss/* prototype/$OSSLIBDIR
--
1.8.3.4

View File

@@ -0,0 +1,115 @@
SUMMARY="A commandline-tool and library for downloading data from URLs"
HOMEPAGE="http://curl.haxx.se"
COPYRIGHT="1996-2014, Daniel Stenberg, <daniel@haxx.se>. All rights reserved."
LICENSE="Curl"
SRC_URI="http://curl.haxx.se/download/curl-7.35.0.tar.bz2"
CHECKSUM_MD5="c18fbdd031adb0529ae09fce399f2d10"
REVISION="1"
ARCHITECTURES="x86_gcc2 x86"
SECONDARY_ARCHITECTURES="x86_gcc2 x86"
PATCHES=""
PROVIDES="
curl$secondaryArchSuffix = $portVersion
lib:libcurl$secondaryArchSuffix = 4.2.0 compat >= 4
"
if [ -z "$secondaryArchSuffix" ]; then
PROVIDES="$PROVIDES
cmd:curl = $portVersion compat >= 7.16
"
fi
REQUIRES="
haiku$secondaryArchSuffix >= $haikuVersion
ca_root_certificates
lib:libssl$secondaryArchSuffix
lib:libz$secondaryArchSuffix
"
BUILD_REQUIRES="
devel:libssl$secondaryArchSuffix
devel:libz$secondaryArchSuffix
"
BUILD_PREREQUIRES="
haiku${secondaryArchSuffix}_devel >= $haikuVersion
cmd:autoconf
cmd:gcc$secondaryArchSuffix
cmd:ld$secondaryArchSuffix
cmd:libtoolize
cmd:make
"
BUILD()
{
certsInstallDir="$portPackageLinksDir/ca_root_certificates"
certsDir="$certsInstallDir/$relativeDataRootDir/ssl"
libtoolize --force --copy --install
autoconf
runConfigure ./configure \
--enable-ipv6 \
--with-ca-bundle="$certsDir/CARootCertificates.pem"
make $jobArgs
}
INSTALL()
{
make install
# prepare develop/lib
prepareInstalledDevelLibs libcurl
fixPkgconfig
# fix curl-config
fixDevelopLibDirReferences $binDir/curl-config
sed -i -e "s,--libexecdir=$developLibDir,--libexecdir=$libExecDir,g" \
-e "s,--libdir=$developLibDir,--libdir=$libDir,g" $binDir/curl-config
# install html documentation for curl
mkdir -p "$docDir"
install -c -m 644 "docs/curl.html" "$docDir"
# install html development documentation for libcurl
mkdir -p "$developDocDir"
for h in docs/libcurl/*.html; do
install -c -m 644 "$h" "$developDocDir"
done
# devel package
packageEntries devel \
$binDir/curl-config \
$developDir \
$manDir/man3
# Remove stuff we don't need in the secondary architecture base package.
if [ -n "$secondaryArchSuffix" ]; then
rm -rf $binDir
rm -rf $documentationDir
fi
}
TEST()
{
make check
}
DESCRIPTION="
Curl is a command line tool for transferring data with URL syntax, supporting \
DICT, FILE, FTP, FTPS, Gopher, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, \
POP3S, RTMP, RTSP, SCP, SFTP, SMTP, SMTPS, Telnet and TFTP. curl supports SSL \
certificates, HTTP POST, HTTP PUT, FTP uploading, HTTP form based upload, \
proxies, cookies, user+password authentication (Basic, Digest, NTLM, \
Negotiate, kerberos...), file transfer resume, proxy tunneling and a busload \
of other useful tricks.
"
# ----- devel package -------------------------------------------------------
PROVIDES_devel="
curl${secondaryArchSuffix}_devel = $portVersion
cmd:curl_config$secondaryArchSuffix = $portVersion compat >= 7.16
devel:libcurl$secondaryArchSuffix = 4.2.0 compat >= 4
"
REQUIRES_devel="
curl$secondaryArchSuffix == $portVersion base
"

View File

@@ -14,10 +14,11 @@ ssh-keyscan, ssh-keygen and sftp-server.
"
HOMEPAGE="http://www.openssh.com/"
LICENSE="OpenSSH"
COPYRIGHT="2005-2012 Tatu Ylonen et al."
#SRC_URI="http://openbsd.mirrorcatalogs.com/pub/OpenBSD/OpenSSH/portable/openssh-6.0p1.tar.gz"
SRC_URI="http://mindrot.org/openssh_snap/openssh-SNAP-20140127.tar.gz"
CHECKSUM_MD5="30c7abbc69179aea953cfc2d47e402bd"
COPYRIGHT="2005-2014 Tatu Ylonen et al."
SRC_URI="http://openbsd.mirrorcatalogs.com/pub/OpenBSD/OpenSSH/portable/openssh-6.5p1.tar.gz"
SRC_URI="http://openbsd.locaweb.com.br/pub/OpenBSD/OpenSSH/portable/openssh-6.5p1.tar.gz"
#SRC_URI="http://mindrot.org/openssh_snap/openssh-SNAP-20140127.tar.gz"
CHECKSUM_MD5="a084e7272b8cbd25afe0f5dce4802fef"
REVISION="1"
ARCHITECTURES="x86_gcc2 x86 x86_64"

View File

@@ -0,0 +1,50 @@
SUMMARY="A command-line program to download videos from various sites"
DESCRIPTION="
The program is usually invoked as youtube-dl followed by options and the video \
URL. Run 'youtube-dl --help' and get a summary of all options.
Some YouTube videos are served using Adobe's proprietary RTMP protocol, which \
imposes DRM restrictions and encrypts the connection. youtube-dl is not able \
to download these videos by itself.
"
HOMEPAGE="http://rg3.github.io/youtube-dl/index.html"
SRC_URI="https://yt-dl.org/downloads/2014.01.23.4/youtube-dl-2014.01.23.4.tar.gz"
CHECKSUM_MD5="d9e89ffc9ff572317151e22cac4b3a00"
REVISION="1"
LICENSE="Public Domain"
COPYRIGHT="2006-2014 Ricardo Garcia Gonzalez"
ARCHITECTURES="any"
PROVIDES="
youtube_dl = $portVersion
cmd:youtube_dl = $portVersion
"
REQUIRES="
haiku >= $haikuVersion
cmd:python
"
BUILD_REQUIRES="
haiku_devel >= $haikuVersion
"
BUILD_PREREQUIRES="
cmd:zip
"
SOURCE_DIR="youtube-dl"
BUILD()
{
zip -q youtube-dl youtube_dl/*.py youtube_dl/*/*.py
zip -q -j youtube-dl youtube_dl/__main__.py
echo '#!/bin/python' > youtube-dl
cat youtube-dl.zip >> youtube-dl
rm youtube-dl.zip
chmod a+x youtube-dl
}
INSTALL()
{
mkdir -p $binDir $manDir/man1
cp -a youtube-dl $binDir
cp -a youtube-dl.1 $manDir/man1
}

View File

@@ -0,0 +1,50 @@
SUMMARY="A command-line program to download videos from various sites"
DESCRIPTION="
The program is usually invoked as youtube-dl followed by options and the video \
URL. Run 'youtube-dl --help' and get a summary of all options.
Some YouTube videos are served using Adobe's proprietary RTMP protocol, which \
imposes DRM restrictions and encrypts the connection. youtube-dl is not able \
to download these videos by itself.
"
HOMEPAGE="http://rg3.github.io/youtube-dl/index.html"
SRC_URI="https://yt-dl.org/downloads/2014.02.08.2/youtube-dl-2014.02.08.2.tar.gz"
CHECKSUM_MD5="f596733308b25eb650c244cbc9428e19"
REVISION="1"
LICENSE="Public Domain"
COPYRIGHT="2006-2014 Ricardo Garcia Gonzalez"
ARCHITECTURES="any"
PROVIDES="
youtube_dl = $portVersion
cmd:youtube_dl = $portVersion
"
REQUIRES="
haiku >= $haikuVersion
cmd:python
"
BUILD_REQUIRES="
haiku_devel >= $haikuVersion
"
BUILD_PREREQUIRES="
cmd:zip
"
SOURCE_DIR="youtube-dl"
BUILD()
{
zip -q youtube-dl youtube_dl/*.py youtube_dl/*/*.py
zip -q -j youtube-dl youtube_dl/__main__.py
echo '#!/bin/python' > youtube-dl
cat youtube-dl.zip >> youtube-dl
rm youtube-dl.zip
chmod a+x youtube-dl
}
INSTALL()
{
mkdir -p $binDir $manDir/man1
cp -a youtube-dl $binDir
cp -a youtube-dl.1 $manDir/man1
}

View File

@@ -8,7 +8,7 @@ LICENSE="GNU GPL v2"
COPYRIGHT="2005 David Gibson, IBM Corporation"
REVISION="1"
ARCHITECTURES="x86"
ARCHITECTURES="x86 x86_64"
PROVIDES="
dtc = $portVersion

View File

@@ -1,32 +1,54 @@
DESCRIPTION="GNU utilities for finding files"
HOMEPAGE="http://www.gnu.org/software/findutils/"
SRC_URI="http://mirrors.usc.edu/pub/gnu/findutils/findutils-4.4.2.tar.gz"
REVISION="1"
STATUS_HAIKU="stable"
DEPEND=""
SUMMARY="Basic directory searching utilities"
DESCRIPTION="
GNU Findutils are typically used in conjunction with other programs to \
provide modular and powerful directory search and file locating \
capabilities to other commands.
The tools supplied with this package are:
find - search for files in a directory hierarchy
locate - list files in databases that match a pattern
updatedb - update a file name database
xargs - build and execute command lines from a standard input.
"
HOMEPAGE="http://www.gnu.org/software/findutils"
COPYRIGHT="1994-2011 Free Software Foundation, Inc."
LICENSE="GNU GPL v3"
SRC_URI="http://ftp.gnu.org/gnu/findutils/findutils-4.4.2.tar.gz"
CHECKSUM_MD5="351cc4adb07d54877fa15f75fb77d39f"
REVISION="1"
ARCHITECTURES="x86_gcc2 x86 x86_64"
PROVIDES="
findutils = $portVersion compat >= 4
cmd:find = $portVersion compat >= 4
cmd:locate = $portVersion compat >= 4
cmd:updatedb = $portVersion compat >= 4
cmd:xargs = $portVersion compat >= 4
"
REQUIRES="
haiku >= $haikuVersion
"
BUILD_PREREQUIRES="
haiku_devel >= $haikuVersion
cmd:gcc
cmd:ld
cmd:make
"
defineDebugInfoPackage findutils \
$binDir/find \
$binDir/locate \
$binDir/xargs
BUILD()
{
cd findutils-4.4.2
./import-gnulib.sh
libtoolize --force --copy --install
MANDIR=`finddir B_COMMON_DOCUMENTATION_DIRECTORY`/man
./configure --prefix=`finddir B_COMMON_DIRECTORY` \
--mandir=${MANDIR}
make
runConfigure ./configure \
--without-included-regex \
--disable-rpath --with-gnu-ld
make $jobArgs
}
INSTALL()
{
cd findutils-4.4.2
make install
rm $libDir/charset.alias
}
TEST()
{
cd findutils-4.4.2
make install
}
LICENSE="GNU GPL v3"
COPYRIGHT="1990-2010 Free Software Foundation, Inc."

View File

@@ -11,11 +11,11 @@ DESCRIPTION="
makes it possible to handle simple data-reformatting jobs with just a
few lines of code.
"
HOMEPAGE="http://www.gnu.org/software/coreutils"
HOMEPAGE="http://www.gnu.org/s/gawk"
SRC_URI="http://ftp.gnu.org/gnu/gawk/gawk-3.1.8.tar.bz2"
CHECKSUM_MD5="52b41c6c4418b3226dfb8f82076193bb"
REVISION="2"
ARCHITECTURES="x86_gcc2 x86"
ARCHITECTURES="x86_gcc2 x86 x86_64"
PROVIDES="
gawk = $portVersion compat >= 3
@@ -31,17 +31,19 @@ BUILD_PREREQUIRES="
haiku_devel >= $haikuVersion
cmd:gcc
cmd:ld
cmd:libtoolize
cmd:libtoolize
cmd:make
cmd:sed
cmd:sed
"
defineDebugInfoPackage gawk \
$binDir/gawk
BUILD()
{
libtoolize --force --copy --install
./configure $configureDirArgs
make
runConfigure ./configure
make $jobArgs
}
INSTALL()

View File

@@ -1,25 +0,0 @@
DESCRIPTION="GNU awk"
HOMEPAGE="http://www.gnu.org/software/coreutils"
SRC_URI="http://ftp.gnu.org/gnu/gawk/gawk-4.0.1.tar.gz"
CHECKSUM_MD5="bab2bda483e9f32be65b43b8dab39fa5"
STATUS_HAIKU="stable"
REVISION="1"
BUILD()
{
cd gawk-4.0.1
libtoolize --force --copy --install
./configure --prefix=`finddir B_COMMON_DIRECTORY` \
--datarootdir=`finddir B_COMMON_DATA_DIRECTORY` \
--libexecdir=`finddir B_COMMON_LIB_DIRECTORY` \
--mandir=`finddir B_COMMON_DOCUMENTATION_DIRECTORY`/man
make
}
INSTALL()
{
cd gawk-4.0.1
make install
}
LICENSE="GNU GPL v3"
COPYRIGHT="2012 Free Software Foundation, Inc."

View File

@@ -0,0 +1,67 @@
SUMMARY="A pattern scanning and processing language"
DESCRIPTION="
If you are like many computer users, you would frequently like to make
changes in various text files wherever certain patterns appear, or
extract data from parts of certain lines while discarding the rest. To
write a program to do this in a language such as C or Pascal is a
time-consuming inconvenience that may take many lines of code. The job
is easy with awk, especially the GNU implementation: gawk.
The awk utility interprets a special-purpose programming language that
makes it possible to handle simple data-reformatting jobs with just a
few lines of code.
"
HOMEPAGE="http://www.gnu.org/s/gawk"
SRC_URI="http://ftp.gnu.org/gnu/gawk/gawk-4.1.0.tar.gz"
CHECKSUM_MD5="13e02513105417818a31ef375f9f9f42"
REVISION="1"
ARCHITECTURES="x86_gcc2 x86 x86_64"
PATCHES="gawk-4.1.0.patchset"
PROVIDES="
gawk = $portVersion compat >= 4
cmd:awk = $portVersion compat >= 4
cmd:gawk = $portVersion compat >= 4
cmd:igawk = $portVersion compat >= 4
"
REQUIRES="
haiku >= $haikuVersion
"
BUILD_REQUIRES="
"
BUILD_PREREQUIRES="
haiku_devel >= $haikuVersion
cmd:aclocal
cmd:autoconf
cmd:automake
cmd:gcc
cmd:ld
cmd:libtoolize
cmd:make
cmd:makeinfo
cmd:sed
"
defineDebugInfoPackage gawk \
$binDir/gawk
BUILD()
{
libtoolize --force --copy --install
runConfigure ./configure \
--disable-rpath --with-gnu-ld
make $jobArgs
}
INSTALL()
{
make install
}
TEST()
{
make check
}
LICENSE="GNU GPL v3"
COPYRIGHT="1983-2013 Free Software Foundation, Inc."

View File

@@ -0,0 +1,28 @@
From e5661558712bbd6f1e688fb564732bd3ca80ac63 Mon Sep 17 00:00:00 2001
From: Jerome Duval <jerome.duval@gmail.com>
Date: Tue, 25 Feb 2014 19:38:04 +0000
Subject: avoids unsupported CFLAGS
diff --git a/extension/configure.ac b/extension/configure.ac
index 53ed588..d9b41f5 100644
--- a/extension/configure.ac
+++ b/extension/configure.ac
@@ -47,10 +47,10 @@ dnl AC_PROG_INSTALL
AC_SUBST([pkgextensiondir], ['${libdir}/gawk'])
-if test "$GCC" = yes
-then
- CFLAGS="$CFLAGS -Wall -Wextra"
-fi
+#if test "$GCC" = yes
+#then
+# CFLAGS="$CFLAGS -Wall -Wextra"
+#fi
AC_MSG_CHECKING([for special development options])
if test -f $srcdir/../.developing
--
1.8.3.4

View File

@@ -1,23 +1,52 @@
DESCRIPTION="Less is a free, open-source file pager."
HOMEPAGE="http://www.greenwoodsoftware.com/less/"
SRC_URI="http://www.greenwoodsoftware.com/less/less-451.tar.gz"
SUMMARY="Less is a free, open-source file pager."
DESCRIPTION="GNU less is a program similar to more, but which allows \
backward movement in the file as well as forward movement. Also, less \
does not have to read the entire input file before starting, so with \
large input files it starts up faster than text editors like vi. Less uses \
termcap (or terminfo on some systems), so it can run on a variety of \
terminals. There is even limited support for hardcopy terminals.
"
HOMEPAGE="http://www.gnu.org/software/less/"
SRC_URI="http://ftp.gnu.org/gnu/less/less-451.tar.gz"
CHECKSUM_MD5="765f082658002b2b46b86af4a0da1842"
REVISION="1"
STATUS_HAIKU="stable"
DEPEND=""
LICENSE="GNU GPL v3"
COPYRIGHT="1984-2012 Mark Nudelman"
REVISION="2"
ARCHITECTURES="x86_gcc2 x86 x86_64"
PROVIDES="
less = 451
cmd:less
"
REQUIRES="
haiku$secondaryArchSuffix >= $haikuVersion
lib:libncurses$secondaryArchSuffix
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel >= $haikuVersion
devel:libncurses$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:gcc$secondaryArchSuffix
cmd:make
cmd:ld$secondaryArchSuffix
cmd:autoconf
cmd:aclocal
"
PATCHES="less-451.patch"
BUILD()
{
cd less-451
autoreconf -fvi
./configure --prefix=`finddir B_COMMON_DIRECTORY` --with-editor=nano \
--mandir=`finddir B_COMMON_DOCUMENTATION_DIRECTORY`/man
autoconf
runConfigure ./configure --with-editor=nano
make
}
INSTALL()
{
cd less-451
make install DESTDIR="${DESTDIR}"
make install
}
LICENSE="GNU GPL v3"
COPYRIGHT="1984-2012 Mark Nudelman"

View File

@@ -17,7 +17,7 @@ SRC_URI="http://ftp.gnu.org/gnu/bison/bison-2.5.tar.gz"
CHECKSUM_MD5="687e1dcd29452789d34eaeea4c25abe4"
REVISION="1"
ARCHITECTURES="?x86"
ARCHITECTURES="?x86 x86_64"
PATCHES="bison-${portVersion}.patch"

View File

@@ -0,0 +1,157 @@
SUMMARY="C/C++ cross-compiler for target ${effectiveTargetMachineTriple}"
DESCRIPTION="
Standard compiler for x86 platform.
"
HOMEPAGE="http://gcc.gnu.org"
LICENSE="
GNU GPL v2
GNU LGPL v2
"
COPYRIGHT="1988-2013 Free Software Foundation, Inc."
SRC_URI="
git+file://$portBaseDir/../binutils/download/buildtools.git#66becd8fe7e99054b190c181b063933310718179
git+git://github.com/haiku/buildtools.git#66becd8fe7e99054b190c181b063933310718179
"
REVISION="2"
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="
gcc$secondaryArchSuffix = $portVersion compat >= 4
cmd:c++$secondaryArchSuffix = $portVersion compat >= 4
cmd:cc$secondaryArchSuffix = $portVersion compat >= 4
cmd:cpp$secondaryArchSuffix = $portVersion compat >= 4
cmd:g++$secondaryArchSuffix = $portVersion compat >= 4
cmd:gcc$secondaryArchSuffix = $portVersion compat >= 4
cmd:gcc_4.8.2$secondaryArchSuffix = $portVersion compat >= 4
cmd:gcov$secondaryArchSuffix = $portVersion compat >= 4
"
REQUIRES="
haiku$secondaryArchSuffix >= $haikuVersion
cmd:as$secondaryArchSuffix
"
BUILD_REQUIRES="
"
BUILD_PREREQUIRES="
haiku${secondaryArchSuffix}_devel >= $haikuVersion
cmd:autoconf
cmd:flex
cmd:gcc$secondaryArchSuffix
cmd:ld$secondaryArchSuffix
cmd:make
cmd:makeinfo
cmd:sed
cmd:strip
cmd:tar
"
SOURCE_DIR="gcc-$portVersion/gcc"
sourceDir=$(pwd)
relativeInstallDir="develop/tools$secondaryArchSubDir"
installDir="$prefix/$relativeInstallDir"
objectsDir=$(pwd)/../${portVersionedName}-obj
BUILD()
{
rm -rf $objectsDir
# Touch some files generated by bison, so that bison won't run to update
# them. Fixes issues with newer bison versions.
# And while at it, touch gperf target, too (as gperf may not be installed).
(cd $sourceDir/gcc; touch c-parse.c c-parse.h cexp.c cp/parse.c \
cp/parse.h c-gperf.h)
mkdir -p $objectsDir
cd $objectsDir
local additionalConfigureFlags
if [ -n "$secondaryArchSuffix" ]; then
additionalConfigureFlags="\
--with-hybrid-secondary=${effectiveTargetArchitecture}"
fi
if [ $effectiveTargetArchitecture == x86_64 ]; then
# disable multilib support, as x86_64 by default tries to build the
# 32-bit libraries, too, which fails as no 32-bit libroot is available
additionalConfigureFlags+=" --disable-multilib"
fi
CFLAGS="-O2 -U_FORTIFY_SOURCE" CXXFLAGS="-O2" "$sourceDir/configure" \
--build=$effectiveTargetMachineTriple \
--prefix=$installDir --libexecdir=$installDir/lib --mandir=$manDir \
--docdir=$docDir --enable-threads=posix \
--disable-nls --enable-shared --with-gnu-ld \
--enable-languages=c,c++ --enable-lto --enable-frame-pointer \
--with-pkgversion=$(echo $portVersion | cut -c 7-) \
$additionalConfigureFlags
make $jobArgs
}
INSTALL()
{
cd $objectsDir
make install-strip
make install-html
### HTML documentation ####################################
echo "Organizing HTML documentation..."
cd $docDir
for dir in gmp libquadmath mpc mpfr; do
mv ${dir}.html $dir
ln -s $dir/index.html ${dir}.html
done
### Strip #################################################
echo "Strip debug info"
cd $installDir
strip --strip-debug bin/*
for f in cc1 cc1plus collect2 lto1; do
strip --strip-debug lib/gcc/$effectiveTargetMachineTriple/*/$f
done
strip --strip-debug lib/*.a
### Disable ASLR ##########################################
echo "Add SYS:ENV attribute to disable ASLR"
cd $installDir
for f in bin/*; do
if [ -r "$f" ]; then
addattr SYS:ENV DISABLE_ASLR=1 $f
fi
done
for f in cc1 cc1plus collect2 lto1; do
addattr SYS:ENV DISABLE_ASLR=1 \
lib/gcc/$effectiveTargetMachineTriple/*/$f
done
### Symlinks ##############################################
echo "Creating required symlinks"
# create missing cc symlink
ln -sf gcc $installDir/bin/cc
# make all tools available via default paths
mkdir -p $binDir
for f in c++ cc cpp g++ gcc gcov; do
symlinkRelative -sfn $installDir/bin/$f $binDir
done
### Cleanup ###############################################
echo "Cleanup"
rm -rf $installDir/info
rm -rf $installDir/share
}

View File

@@ -10,7 +10,7 @@ COPYRIGHT="1999-2013 Brian Paul All Rights Reserved."
LICENSE="MIT"
SRC_URI="ftp://ftp.freedesktop.org/pub/mesa/10.0.2/MesaLib-10.0.2.tar.bz2"
CHECKSUM_MD5="8544c0ab3e438a08b5103421ea15b6d2"
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
@@ -98,11 +98,11 @@ INSTALL()
# swpipe renderer package
packageEntries swpipe \
"$addOnsDir/opengl/*Pipe"
"$addOnsDir/opengl/Software Pipe"
# swrast renderer package
packageEntries swrast \
"$addOnsDir/opengl/*Rasterizer"
"$addOnsDir/opengl/Software Rasterizer"
}
# ----- devel package -------------------------------------------------------

View File

@@ -11,7 +11,7 @@ LICENSE="MIT"
# remember to update SOURCE_DIR as well for the -X revision
SRC_URI="https://github.com/kallisti5/mesa/archive/7.9.2-5.tar.gz"
CHECKSUM_MD5="7e9aafbfffa04e14a57d450836d86bf1"
REVISION="5"
REVISION="6"
ARCHITECTURES="x86_gcc2"
if [ $effectiveTargetArchitecture != x86 ]; then
# x86_gcc2 is fine as primary target architecture as long as we're building
@@ -44,6 +44,8 @@ BUILD_PREREQUIRES="
cmd:sed
"
PATCHES="mesa-7.9.2.patchset"
SOURCE_DIR="mesa-7.9.2-5"
BUILD()

View File

@@ -1,13 +1,8 @@
From cc285772ce222f3672aa725dea18b52d9f94d2c2 Mon Sep 17 00:00:00 2001
From 880e1a26af698949add259ef80bc3e0e4aa55188 Mon Sep 17 00:00:00 2001
From: Alexander von Gluck IV <kallisti5@unixzen.com>
Date: Mon, 30 Dec 2013 23:49:06 -0600
Subject: [PATCH] haiku: Fix missing HaikuGL header paths
Subject: haiku: Fix missing HaikuGL header paths
---
src/gallium/targets/haiku-softpipe/SConscript | 1 +
src/gallium/targets/libgl-haiku/SConscript | 1 +
src/mesa/drivers/haiku/swrast/SConscript | 1 +
3 files changed, 3 insertions(+)
diff --git a/src/gallium/targets/haiku-softpipe/SConscript b/src/gallium/targets/haiku-softpipe/SConscript
index 40bf03c..16ce7cd 100644
@@ -48,10 +43,11 @@ index 71ce88e..ca0423e 100644
--
1.8.3.4
From 72e0f3de1f2df3407dbf257183c78bd3f81c1a12 Mon Sep 17 00:00:00 2001
From add021d06196b1250454496cb3fb5b39746e2739 Mon Sep 17 00:00:00 2001
From: Alexander von Gluck IV <kallisti5@unixzen.com>
Date: Tue, 31 Dec 2013 15:39:49 -0600
Subject: [PATCH] haiku libGL: Move from gallium target to src/hgl
Subject: haiku libGL: Move from gallium target to src/hgl
* The Haiku renderers need to link to libGL to function properly
in all usage contexts. As mesa drivers build before gallium
@@ -60,40 +56,6 @@ Subject: [PATCH] haiku libGL: Move from gallium target to src/hgl
* This is likely better as it mimics how glx is laid out ensuring
the Haiku libGL is better understood.
* All renderers properly link in libGL now.
---
src/SConscript | 5 +
src/gallium/SConscript | 1 -
src/gallium/targets/haiku-softpipe/SConscript | 2 +
src/gallium/targets/libgl-haiku/GLDispatcher.cpp | 72 ---
src/gallium/targets/libgl-haiku/GLDispatcher.h | 109 ----
src/gallium/targets/libgl-haiku/GLRenderer.cpp | 106 ----
.../targets/libgl-haiku/GLRendererRoster.cpp | 224 -------
src/gallium/targets/libgl-haiku/GLRendererRoster.h | 51 --
src/gallium/targets/libgl-haiku/GLView.cpp | 643 ---------------------
src/gallium/targets/libgl-haiku/SConscript | 35 --
src/hgl/GLDispatcher.cpp | 72 +++
src/hgl/GLDispatcher.h | 109 ++++
src/hgl/GLRenderer.cpp | 106 ++++
src/hgl/GLRendererRoster.cpp | 224 +++++++
src/hgl/GLRendererRoster.h | 51 ++
src/hgl/GLView.cpp | 643 +++++++++++++++++++++
src/hgl/SConscript | 36 ++
src/mesa/drivers/haiku/swrast/SConscript | 2 +
18 files changed, 1250 insertions(+), 1241 deletions(-)
delete mode 100644 src/gallium/targets/libgl-haiku/GLDispatcher.cpp
delete mode 100644 src/gallium/targets/libgl-haiku/GLDispatcher.h
delete mode 100644 src/gallium/targets/libgl-haiku/GLRenderer.cpp
delete mode 100644 src/gallium/targets/libgl-haiku/GLRendererRoster.cpp
delete mode 100644 src/gallium/targets/libgl-haiku/GLRendererRoster.h
delete mode 100644 src/gallium/targets/libgl-haiku/GLView.cpp
delete mode 100644 src/gallium/targets/libgl-haiku/SConscript
create mode 100644 src/hgl/GLDispatcher.cpp
create mode 100644 src/hgl/GLDispatcher.h
create mode 100644 src/hgl/GLRenderer.cpp
create mode 100644 src/hgl/GLRendererRoster.cpp
create mode 100644 src/hgl/GLRendererRoster.h
create mode 100644 src/hgl/GLView.cpp
create mode 100644 src/hgl/SConscript
diff --git a/src/SConscript b/src/SConscript
index 1465918..a24acea 100644
@@ -112,7 +74,7 @@ index 1465918..a24acea 100644
SConscript('mapi/vgapi/SConscript')
diff --git a/src/gallium/SConscript b/src/gallium/SConscript
index 6e27be2..32bbdbe 100644
index c68519d..7ba8070 100644
--- a/src/gallium/SConscript
+++ b/src/gallium/SConscript
@@ -119,7 +119,6 @@ if not env['embedded']:
@@ -2717,16 +2679,14 @@ index ca0423e..aef7300 100644
--
1.8.3.4
From fc7707b49c064f17ed345cf70e89e8dfa8a6738d Mon Sep 17 00:00:00 2001
From 23cc377e1ac5046aae825580033c8ec23e80d670 Mon Sep 17 00:00:00 2001
From: Alexander von Gluck IV <kallisti5@unixzen.com>
Date: Tue, 21 Jan 2014 18:40:22 +0000
Subject: [PATCH] hgl: atomic stores no longer need to be volatile
Subject: hgl: atomic stores no longer need to be volatile
* Our atomics were revamped to no longer require
volatile int pointers
---
include/HaikuGL/GLRenderer.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/include/HaikuGL/GLRenderer.h b/include/HaikuGL/GLRenderer.h
index 7ffcc34..02a438d 100644
@@ -2744,3 +2704,67 @@ index 7ffcc34..02a438d 100644
--
1.8.3.4
From bcf7efda26051f122039df4c33e301fc6de59974 Mon Sep 17 00:00:00 2001
From: Jerome Duval <jerome.duval@gmail.com>
Date: Wed, 12 Feb 2014 20:11:25 +0000
Subject: hgl: release add-ons on GLView destruction.
diff --git a/src/hgl/GLRendererRoster.cpp b/src/hgl/GLRendererRoster.cpp
index 1712a87..3833b2c 100644
--- a/src/hgl/GLRendererRoster.cpp
+++ b/src/hgl/GLRendererRoster.cpp
@@ -79,7 +79,14 @@ GLRendererRoster::GLRendererRoster(BGLView* view, ulong options)
GLRendererRoster::~GLRendererRoster()
{
-
+ RendererMap::iterator iterator = fRenderers.begin();
+ for (; iterator != fRenderers.end(); iterator++) {
+ struct renderer_item item = iterator->second;
+ image_id image = item.image;
+ item.renderer->Release();
+ // this will delete the renderer
+ unload_add_on(image);
+ }
}
@@ -91,6 +98,7 @@ GLRendererRoster::GetRenderer(int32 id)
return NULL;
struct renderer_item item = iterator->second;
+ item.renderer->Acquire();
return item.renderer;
}
@@ -105,7 +113,7 @@ GLRendererRoster::AddDefaultPaths()
B_SYSTEM_ADDONS_DIRECTORY,
};
- for (uint32 i = fSafeMode ? 4 : 0;
+ for (uint32 i = fSafeMode ? 3 : 0;
i < sizeof(paths) / sizeof(paths[0]); i++) {
BPath path;
status_t status = find_directory(paths[i], &path, true);
diff --git a/src/hgl/GLView.cpp b/src/hgl/GLView.cpp
index 9ae5b5c..477b430 100644
--- a/src/hgl/GLView.cpp
+++ b/src/hgl/GLView.cpp
@@ -57,8 +57,11 @@ BGLView::BGLView(BRect rect, const char* name, ulong resizingMode, ulong mode,
BGLView::~BGLView()
{
delete fClipInfo;
- if (fRenderer)
+ if (fRenderer) {
fRenderer->Release();
+ fRenderer = NULL;
+ }
+ delete fRoster;
}
--
1.8.3.4

View File

@@ -0,0 +1,88 @@
From 1c3d699120d0acdda3ad0d8a91d113c5d051b56d Mon Sep 17 00:00:00 2001
From: Alexander von Gluck IV <kallisti5@unixzen.com>
Date: Tue, 21 Jan 2014 18:40:22 +0000
Subject: hgl: atomic stores no longer need to be volatile
* Our atomics were revamped to no longer require
volatile int pointers
diff --git a/include/HaikuGL/GLRenderer.h b/include/HaikuGL/GLRenderer.h
index 7ffcc34..02a438d 100644
--- a/include/HaikuGL/GLRenderer.h
+++ b/include/HaikuGL/GLRenderer.h
@@ -61,7 +61,7 @@ private:
virtual status_t _Reserved_Renderer_3(int32, void *);
virtual status_t _Reserved_Renderer_4(int32, void *);
- volatile int32 fRefCount; // How much we're still usefull?
+ int32 fRefCount; // How much we're still usefull?
BGLView* fView; // Never forget who is the boss!
ulong fOptions; // Keep that tune in memory
BGLDispatcher* fDispatcher;// Our personal GL API call dispatcher
--
1.8.3.4
From fc10a0e496d3c8ea8a027b1807ad9cd7d1c4591d Mon Sep 17 00:00:00 2001
From: Jerome Duval <jerome.duval@gmail.com>
Date: Wed, 12 Feb 2014 20:11:25 +0000
Subject: hgl: release add-ons on GLView destruction.
diff --git a/src/hgl/libgl-haiku/GLRendererRoster.cpp b/src/hgl/libgl-haiku/GLRendererRoster.cpp
index 1712a87..3833b2c 100644
--- a/src/hgl/libgl-haiku/GLRendererRoster.cpp
+++ b/src/hgl/libgl-haiku/GLRendererRoster.cpp
@@ -79,7 +79,14 @@ GLRendererRoster::GLRendererRoster(BGLView* view, ulong options)
GLRendererRoster::~GLRendererRoster()
{
-
+ RendererMap::iterator iterator = fRenderers.begin();
+ for (; iterator != fRenderers.end(); iterator++) {
+ struct renderer_item item = iterator->second;
+ image_id image = item.image;
+ item.renderer->Release();
+ // this will delete the renderer
+ unload_add_on(image);
+ }
}
@@ -91,6 +98,7 @@ GLRendererRoster::GetRenderer(int32 id)
return NULL;
struct renderer_item item = iterator->second;
+ item.renderer->Acquire();
return item.renderer;
}
@@ -105,7 +113,7 @@ GLRendererRoster::AddDefaultPaths()
B_SYSTEM_ADDONS_DIRECTORY,
};
- for (uint32 i = fSafeMode ? 4 : 0;
+ for (uint32 i = fSafeMode ? 3 : 0;
i < sizeof(paths) / sizeof(paths[0]); i++) {
BPath path;
status_t status = find_directory(paths[i], &path, true);
diff --git a/src/hgl/libgl-haiku/GLView.cpp b/src/hgl/libgl-haiku/GLView.cpp
index 9ae5b5c..477b430 100644
--- a/src/hgl/libgl-haiku/GLView.cpp
+++ b/src/hgl/libgl-haiku/GLView.cpp
@@ -57,8 +57,11 @@ BGLView::BGLView(BRect rect, const char* name, ulong resizingMode, ulong mode,
BGLView::~BGLView()
{
delete fClipInfo;
- if (fRenderer)
+ if (fRenderer) {
fRenderer->Release();
+ fRenderer = NULL;
+ }
+ delete fRoster;
}
--
1.8.3.4

View File

@@ -15,7 +15,7 @@ COPYRIGHT="1987-1998 The Open Group
REVISION="1"
ARCHITECTURES="x86"
ARCHITECTURES="x86 x86_64"
SECONDARY_ARCHITECTURES="x86"
PROVIDES="