Merged haikuports/haikuports into master

This commit is contained in:
humdinger
2013-12-25 10:03:31 +01:00
42 changed files with 1876 additions and 984 deletions

View File

@@ -7,7 +7,7 @@ resource app_version {
minor = 0,
variety = B_APPV_ALPHA,
internal = 4,
internal = 5,
short_info = "Qt password manager",
long_info = ""

View File

@@ -18,7 +18,7 @@ Especially someone who generates passwords frequently will appreciate
this feature.
"
HOMEPAGE="http://www.keepassx.org/"
SRC_URI="git+https://github.com/keepassx/keepassx.git#755241df5c"
SRC_URI="git+https://github.com/keepassx/keepassx.git#2.0-alpha5"
COPYRIGHT="
2010-2012, Felix Geyer
2011-2012, Florian Geyer
@@ -63,7 +63,7 @@ BUILD_PREREQUIRES="
cmd:xres
"
PATCHES="keepassx-2.0a4.git.patchset"
PATCHES="keepassx-2.0a5.patchset"
BUILD()
{

View File

@@ -0,0 +1,65 @@
SUMMARY="QEmacs editor"
DESCRIPTION="QEmacs (for Quick Emacs), a very small but powerful UNIX editor.
It has features that even big editors lack :
- Full screen editor with an Emacs look and feel with all Emacs common features.
- Full UTF8 support.
- WYSIWYG HTML/XML/CSS2 mode graphical editing.
- WYSIWYG DocBook.
- C mode: coloring with immediate update. Emacs like auto-indent.
- Shell mode, Hexadecimal editing...
The provided qemacs-pe2qe script converts your Pe color settings to the Qemacs syntax."
HOMEPAGE="http://bellard.org/qemacs/"
SRC_URI="cvs://:pserver:anonymous@cvs.savannah.nongnu.org:/sources/qemacs/qemacs"
#CHECKSUM_MD5=""
REVISION="1"
LICENSE="GNU LGPL v2.1"
COPYRIGHT="2000-2003 Fabrice Bellard"
ARCHITECTURES="?x86_gcc2 ?x86 ?x86_64"
SECONDARY_ARCHITECTURES="?x86_gcc2 ?x86"
PROVIDES="
qemacs$secondaryArchSuffix = $portVersion
app:qemacs$secondaryArchSuffix = $portVersion
cmd:qemacs$secondaryArchSuffix = $portVersion
cmd:qe$secondaryArchSuffix = $portVersion
cmd:html2png$secondaryArchSuffix = $portVersion
cmd:qemacs_pe2qe$secondaryArchSuffix = $portVersion
"
REQUIRES="
haiku$secondaryArchSuffix >= $haikuVersion
lib:libpng$secondaryArchSuffix
lib:libjpeg$secondaryArchSuffix
# lib:libavcodec$secondaryArchSuffix
# lib:libavformat$secondaryArchSuffix
"
BUILD_REQUIRES="
devel:libpng$secondaryArchSuffix
# devel:libavcodec$secondaryArchSuffix
# devel:libavformat$secondaryArchSuffix
"
BUILD_PREREQUIRES="
haiku${secondaryArchSuffix}_devel >= $haikuVersion
cmd:which
cmd:make
cmd:gcc$secondaryArchSuffix
cmd:ld$secondaryArchSuffix
cmd:texi2html
"
BUILD()
{
./configure --prefix=$prefix --datadir=$dataDir --mandir=$manDir
make
}
INSTALL()
{
make install
install -m 755 haiku-pe2qe.sh $binDir/qemacs-pe2qe
addAppDeskbarSymlink $binDir/qe QEmacs
}

View File

@@ -40,7 +40,7 @@ CHECKSUM_MD5_11="18d15dfd71117daadb332af003d08212"
SRC_URI_12="http://ports-space.haiku-files.org/source/openjdk/jdk7-jaxws2_2_4-b03-2011_05_27.zip#noarchive"
CHECKSUM_MD5_12="2f5b829ade70f67fe272d0b322e3e702"
REVISION="1"
REVISION="2"
ARCHITECTURES="x86 !x86_gcc2"
DISABLE_SOURCE_PACKAGE=yes
@@ -91,12 +91,14 @@ REQUIRES="
haiku >= $haikuVersion
lib:libfreetype
lib:libiconv
lib:libz
"
BUILD_REQUIRES="
haiku_devel >= $haikuVersion
devel:libfreetype
devel:libiconv
devel:libz
"
BUILD_PREREQUIRES="
@@ -154,7 +156,7 @@ BUILD()
# set up environment
export ALT_BOOTDIR=${OPENJDK_DIR}/j2sdk-image
export ALT_JDK_IMPORT_PATH=$ALT_BOOTDIR
export ALT_JDK_IMPORT_PATH=$ALT_BOOTDIR
export ANT=${OPENJDK_DIR}/ant
export ALT_OUTPUTDIR=${OPENJDK_DIR}/output
export LANG=C
@@ -169,6 +171,8 @@ export ALT_JDK_IMPORT_PATH=$ALT_BOOTDIR
export ALLOW_DOWNLOADS=false
export USE_EXTERNAL_ZLIB=true
# Build.
cd jdk
make

View File

@@ -1,4 +1,4 @@
From 5cca79ee50fbf704e67d337a16adf66877a976cd Mon Sep 17 00:00:00 2001
From 255d3c92d7bf021c109a7ef7a0376fcbf7cb9ac5 Mon Sep 17 00:00:00 2001
From: Ingo Weinhold <ingo_weinhold@gmx.de>
Date: Sat, 9 Nov 2013 02:30:27 +0100
Subject: Defs-haiku.gmk: Fix Haiku specific *_PATH variables
@@ -67,7 +67,7 @@ index c1cc440..134e128 100644
1.8.3.4
From cab8b76a94407e51e0a9c665b53f28588e003a8b Mon Sep 17 00:00:00 2001
From 9e2dcc26b19f2fa0694ee7608c74ad3716054679 Mon Sep 17 00:00:00 2001
From: Ingo Weinhold <ingo_weinhold@gmx.de>
Date: Sat, 9 Nov 2013 02:35:20 +0100
Subject: PLATFORM_API_HaikuOS_PCM.cpp: Fix SoundConsumer include
@@ -91,7 +91,7 @@ index ec111fc..d69c6a9 100644
1.8.3.4
From f8a888057bba2123556300ca7cb200ff6b0f3186 Mon Sep 17 00:00:00 2001
From 645161b7ecc348da7f94ddac74277a9569321f6b Mon Sep 17 00:00:00 2001
From: Ingo Weinhold <ingo_weinhold@gmx.de>
Date: Sat, 9 Nov 2013 14:52:36 +0100
Subject: Fix freetype paths for Haiku
@@ -116,7 +116,7 @@ index a478f97..c0dc0d0 100644
1.8.3.4
From aad23df8dd37db1f0b5c3cd82cb90bb3f23e303f Mon Sep 17 00:00:00 2001
From daedb42f69c0c3b4a39e4ea354a53799c89265ab Mon Sep 17 00:00:00 2001
From: Ingo Weinhold <ingo_weinhold@gmx.de>
Date: Sat, 9 Nov 2013 14:53:56 +0100
Subject: HaikuFontManager: Use BPathFinder API to find font dirs
@@ -165,7 +165,7 @@ index a645d00..66af9ab 100644
1.8.3.4
From dcfb77462ec97c8b72c746dcb3d18bf2d488fe62 Mon Sep 17 00:00:00 2001
From 7052c7beb2d10b40f35ac6c4868cb238d3b0d7db Mon Sep 17 00:00:00 2001
From: Ingo Weinhold <ingo_weinhold@gmx.de>
Date: Tue, 26 Nov 2013 17:50:46 +0100
Subject: Make use of $ORIGIN in rpath now supported in Haiku
@@ -234,7 +234,7 @@ index bb0db1e..74e744e 100644
1.8.3.4
From d71b1d303b0b6681b76c7557eec6e581734e0a7c Mon Sep 17 00:00:00 2001
From c0578bc31277c67e94d8a8d71f7e47db49d0ec37 Mon Sep 17 00:00:00 2001
From: Ingo Weinhold <ingo_weinhold@gmx.de>
Date: Wed, 4 Dec 2013 03:23:53 +0100
Subject: make/java/java/Makefile: Missing generated classes
@@ -257,3 +257,194 @@ index 93878e6..bd94e8f 100644
--
1.8.3.4
From e730fb5a7d27fdc3f9213f2d75ad5ef5519e20c4 Mon Sep 17 00:00:00 2001
From: Ingo Weinhold <ingo_weinhold@gmx.de>
Date: Sun, 22 Dec 2013 21:21:11 +0100
Subject: Add support for using an external zlib
To enable it, USE_EXTERNAL_ZLIB must be set to true. EXTERNAL_ZLIB_LIB
and EXTERNAL_ZLIB_HEADERS_PATH can be set to the library to link
against and the headers path respectively. The former defaults to
"-lz".
diff --git a/make/com/sun/java/pack/Makefile b/make/com/sun/java/pack/Makefile
index 22e0b69..ce28479 100644
--- a/make/com/sun/java/pack/Makefile
+++ b/make/com/sun/java/pack/Makefile
@@ -70,9 +70,14 @@ ifeq ($(STANDALONE),true)
$(ZIPOBJDIR)/inftrees.$(OBJECT_SUFFIX) \
$(ZIPOBJDIR)/inffast.$(OBJECT_SUFFIX)
- ZINCLUDE=-I$(SHARE_SRC)/native/java/util/zip/zlib-$(ZLIB_VERSION)
- OTHER_CXXFLAGS += $(ZINCLUDE)
- LDDFLAGS += $(ZIPOBJS)
+ ifeq ($(USE_EXTERNAL_ZLIB), true)
+ OTHER_CXXFLAGS += $(EXTERNAL_ZLIB_CPPFLAGS)
+ LDDFLAGS += $(EXTERNAL_ZLIB_LIB)
+ else
+ ZINCLUDE=-I$(SHARE_SRC)/native/java/util/zip/zlib-$(ZLIB_VERSION)
+ OTHER_CXXFLAGS += $(ZINCLUDE)
+ LDDFLAGS += $(ZIPOBJS)
+ endif
else
OTHER_CXXFLAGS += -DNO_ZLIB -DUNPACK_JNI
OTHER_LDLIBS += $(JVMLIB)
diff --git a/make/common/Defs.gmk b/make/common/Defs.gmk
index c0dc0d0..07849f3 100644
--- a/make/common/Defs.gmk
+++ b/make/common/Defs.gmk
@@ -210,6 +210,21 @@ ZLIB_VERSION = 1.2.3
#
+# External zlib support
+#
+ifeq ($(USE_EXTERNAL_ZLIB), true)
+ ifndef EXTERNAL_ZLIB_LIB
+ EXTERNAL_ZLIB_LIB = -lz
+ endif
+ ifdef EXTERNAL_ZLIB_HEADERS_PATH
+ EXTERNAL_ZLIB_CPPFLAGS = -I$(EXTERNAL_ZLIB_HEADERS_PATH)
+ else
+ EXTERNAL_ZLIB_CPPFLAGS =
+ endif
+endif
+
+
+#
# Localizations for the different parts of the product beyond English
#
diff --git a/make/java/jli/Makefile b/make/java/jli/Makefile
index 3e5994d..5500e73 100644
--- a/make/java/jli/Makefile
+++ b/make/java/jli/Makefile
@@ -69,13 +69,17 @@ FILES_c = \
parse_manifest.c \
version_comp.c \
wildcard.c \
- jli_util.c \
- inflate.c \
- inftrees.c \
- inffast.c \
- zadler32.c \
- zcrc32.c \
- zutil.c
+ jli_util.c
+
+ifneq ($(USE_EXTERNAL_ZLIB), true)
+ FILES_c += \
+ inflate.c \
+ inftrees.c \
+ inffast.c \
+ zadler32.c \
+ zcrc32.c \
+ zutil.c
+endif
ifneq ($(PLATFORM), windows)
FILES_c += ergo.c
@@ -131,7 +135,12 @@ endif
OTHER_INCLUDES += -I$(LAUNCHER_SHARE_SRC)
OTHER_INCLUDES += -I$(LAUNCHER_PLATFORM_SRC)
-OTHER_INCLUDES += -I$(ZIP_SRC)
+
+ifeq ($(USE_EXTERNAL_ZLIB), true)
+ OTHER_INCLUDES += $(EXTERNAL_ZLIB_CPPFLAGS)
+else
+ OTHER_INCLUDES += -I$(ZIP_SRC)
+endif
#
# Library to compile.
@@ -164,6 +173,13 @@ library:: $(STATIC_LIBRARY)
endif # PLATFORM
#
-# Add to ambient vpath so we pick up the library files
+# Add to ambient vpath so we pick up the library files. When using an external
+# zlib, add the library instead of the sources.
#
-vpath %.c $(LAUNCHER_SHARE_SRC) $(ZIP_SRC) $(LAUNCHER_PLATFORM_SRC)
+vpath %.c $(LAUNCHER_SHARE_SRC) $(LAUNCHER_PLATFORM_SRC)
+
+ifeq ($(USE_EXTERNAL_ZLIB), true)
+ LDLIBS += $(EXTERNAL_ZLIB_LIB)
+else
+ vpath %.c $(ZIP_SRC)
+endif
diff --git a/make/java/zip/FILES_c.gmk b/make/java/zip/FILES_c.gmk
index 6664887..97c6d3f 100644
--- a/make/java/zip/FILES_c.gmk
+++ b/make/java/zip/FILES_c.gmk
@@ -29,16 +29,20 @@ FILES_c = \
Deflater.c \
Inflater.c \
ZipFile.c \
- zip_util.c \
- compress.c \
- deflate.c \
- gzio.c \
- infback.c \
- inffast.c \
- inflate.c \
- inftrees.c \
- trees.c \
- uncompr.c \
- zadler32.c \
- zcrc32.c \
- zutil.c
+ zip_util.c
+
+ifneq ($(USE_EXTERNAL_ZLIB), true)
+ FILES_c += \
+ compress.c \
+ deflate.c \
+ gzio.c \
+ infback.c \
+ inffast.c \
+ inflate.c \
+ inftrees.c \
+ trees.c \
+ uncompr.c \
+ zadler32.c \
+ zcrc32.c \
+ zutil.c
+endif
diff --git a/make/java/zip/Makefile b/make/java/zip/Makefile
index 906e7e8..15b2d45 100644
--- a/make/java/zip/Makefile
+++ b/make/java/zip/Makefile
@@ -74,14 +74,24 @@ else
CPPFLAGS += -UDEBUG
endif
-CPPFLAGS += -I$(SHARE_SRC)/native/java/util/zip/zlib-$(ZLIB_VERSION)
+ifeq ($(USE_EXTERNAL_ZLIB), true)
+ CPPFLAGS += $(EXTERNAL_ZLIB_CPPFLAGS)
+else
+ CPPFLAGS += -I$(SHARE_SRC)/native/java/util/zip/zlib-$(ZLIB_VERSION)
+endif
+
CPPFLAGS += -I$(SHARE_SRC)/native/java/io
CPPFLAGS += -I$(PLATFORM_SRC)/native/java/io
#
-# Add to ambient vpath so we pick up the library files
+# Add to ambient vpath so we pick up the library files. When using an external
+# zlib, add the library instead.
#
-vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/zlib-$(ZLIB_VERSION)
+ifeq ($(USE_EXTERNAL_ZLIB), true)
+ LDLIBS += $(EXTERNAL_ZLIB_LIB)
+else
+ vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/zlib-$(ZLIB_VERSION)
+endif
#
# Link to JVM library for JVM_Zip* functions
--
1.8.3.4

View File

@@ -1,26 +0,0 @@
DESCRIPTION="boost"
HOMEPAGE="http://www.boost.org/"
SRC_URI="http://sourceforge.net/projects/boost/files/boost/1.42.0/boost_1_42_0.tar.bz2/download"
CHECKSUM_MD5="7bf3b4eb841b62ffb0ade2b82218ebe6"
REVISION="1"
STATUS_HAIKU="broken"
MESSAGE="This port only builds with gcc4. Use 'setgcc gcc4' before building."
DEPEND=""
BUILD()
{
cd boost_1_42_0
./bootstrap.sh --prefix=`finddir B_COMMON_DIRECTORY`
./bjam --prefix=`finddir B_COMMON_DIRECTORY` \
--libdir=/boot/common/lib \
--includedir=/boot/common/include \
variant=release \
link=shared \
threading=single \
runtime-link=shared
}
INSTALL()
{
cd boost_1_42_0
./bjam install
}

View File

@@ -1,52 +0,0 @@
DESCRIPTION="boost"
HOMEPAGE="http://www.boost.org/"
SRC_URI="http://sourceforge.net/projects/boost/files/boost/1.50.0/boost_1_50_0.tar.bz2/download"
CHECKSUM_MD5="52dd00be775e689f55a987baebccc462"
REVISION="1"
STATUS_HAIKU="stable"
MESSAGE="This port only builds with gcc4. Use 'setgcc gcc4' before building."
DEPEND="boehm-gc"
BUILD()
{
cd boost_1_50_0
./bootstrap.sh \
--without-icu \
--prefix=`finddir B_COMMON_DIRECTORY` \
--exec-prefix=`finddir B_COMMON_BIN_DIRECTORY` \
--libdir=`finddir B_COMMON_LIB_DIRECTORY` \
--includedir=`finddir B_COMMON_HEADERS_DIRECTORY`
./bjam \
-sICU_PATH=`finddir B_COMMON_DIRECTORY` \
-sICONV_PATH=`finddir B_COMMON_DIRECTORY` \
-d2 \
--without-mpi \
--prefix=`finddir B_COMMON_DIRECTORY` \
--exec-prefix=`finddir B_COMMON_BIN_DIRECTORY` \
--libdir=`finddir B_COMMON_LIB_DIRECTORY` \
--includedir=`finddir B_COMMON_HEADERS_DIRECTORY` \
--enable-threads=posix \
--enable-thread-local-alloc \
--enable-parallel-mark \
inlining=on \
linkflags=-L`finddir B_COMMON_LIB_DIRECTORY` \
threading=multi \
variant=release \
link=shared \
runtime-link=shared
}
INSTALL()
{
cd boost_1_50_0
./bjam install \
-d2 \
--prefix=${DESTDIR}/`finddir B_COMMON_DIRECTORY` \
#--exec-prefix=${DESTDIR}/`finddir B_COMMON_BIN_DIRECTORY` \
#--libdir=${DESTDIR}/`finddir B_COMMON_LIB_DIRECTORY` \
#--includedir=${DESTDIR}/`finddir B_COMMON_HEADERS_DIRECTORY` \
inlining=on \
--without-mpi
}
LICENSE="Boost v1.0"
COPYRIGHT="1998-2011 Beman Dawes, David Abrahams, Rene Rivera, et al."

View File

@@ -1,52 +0,0 @@
DESCRIPTION="boost"
HOMEPAGE="http://www.boost.org/"
SRC_URI="http://sourceforge.net/projects/boost/files/boost/1.53.0/boost_1_53_0.tar.bz2/download"
CHECKSUM_MD5="a00d22605d5dbcfb4c9936a9b35bc4c2"
REVISION="1"
STATUS_HAIKU="broken"
MESSAGE="This port only builds with gcc4. Use 'setgcc gcc4' before building."
DEPEND="boehm-gc"
BUILD()
{
cd boost_1_53_0
./bootstrap.sh \
--without-icu \
--prefix=`finddir B_COMMON_DIRECTORY` \
--exec-prefix=`finddir B_COMMON_BIN_DIRECTORY` \
--libdir=`finddir B_COMMON_LIB_DIRECTORY` \
--includedir=`finddir B_COMMON_HEADERS_DIRECTORY`
./bjam \
-sICU_PATH=`finddir B_COMMON_DIRECTORY` \
-sICONV_PATH=`finddir B_COMMON_DIRECTORY` \
-d2 \
--without-mpi \
--prefix=`finddir B_COMMON_DIRECTORY` \
--exec-prefix=`finddir B_COMMON_BIN_DIRECTORY` \
--libdir=`finddir B_COMMON_LIB_DIRECTORY` \
--includedir=`finddir B_COMMON_HEADERS_DIRECTORY` \
--enable-threads=posix \
--enable-thread-local-alloc \
--enable-parallel-mark \
inlining=on \
linkflags=-L`finddir B_COMMON_LIB_DIRECTORY` \
threading=multi \
variant=release \
link=shared \
runtime-link=shared
}
INSTALL()
{
cd boost_1_53_0
./bjam install \
-d2 \
--prefix=${DESTDIR}/`finddir B_COMMON_DIRECTORY` \
#--exec-prefix=${DESTDIR}/`finddir B_COMMON_BIN_DIRECTORY` \
#--libdir=${DESTDIR}/`finddir B_COMMON_LIB_DIRECTORY` \
#--includedir=${DESTDIR}/`finddir B_COMMON_HEADERS_DIRECTORY` \
inlining=on \
--without-mpi
}
LICENSE="Boost v1.0"
COPYRIGHT="1998-2013 Beman Dawes, David Abrahams, Rene Rivera, et al."

View File

@@ -7,7 +7,7 @@ DESCRIPTION="
"
SUMMARY="Boost is a set of libraries for the C++ programming language."
HOMEPAGE="http://www.boost.org/"
SRC_URI="http://sourceforge.net/projects/boost/files/boost/1.55.0/boost_1_55_0.tar.bz2/download"
SRC_URI="http://sourceforge.net/projects/boost/files/boost/1.55.0/boost_1_55_0.tar.bz2"
CHECKSUM_MD5="d6eef4b4cacb2183f2bf265a5a03a354"
REVISION="1"
LICENSE="Boost v1.0"
@@ -17,20 +17,31 @@ if [ $effectiveTargetArchitecture != x86_gcc2 ]; then
ARCHITECTURES="$ARCHITECTURES x86_gcc2"
fi
SECONDARY_ARCHITECTURES="x86 ?x86_64"
SOURCE_DIR="boost_1_55_0"
PATCHES="
boost-1.55.0.patch
type_traits.patch
"
PATCHES="boost-1.55.0.patchset"
PROVIDES="
lib:boost = 1.55.0
"
REQUIRES="
haiku$secondaryArchSuffix >= $haikuVersion
lib:libiconv$secondaryArchSuffix
lib:libbz2$secondaryArchSuffix
lib:libz$secondaryArchSuffix
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel >= $haikuVersion
devel:libiconv$secondaryArchSuffix
devel:libbz2$secondaryArchSuffix
devel:libz$secondaryArchSuffix
"
BUILD_PREREQUIRES="
boehm_gc
libiconv
libiconv_devel
cmd:gcc$secondaryArchSuffix
cmd:ld$secondaryArchSuffix
cmd:jam
@@ -38,18 +49,6 @@ BUILD_PREREQUIRES="
cmd:make
binutils
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel >= $haikuVersion
devel:libiconv
devel:libbz2
devel:libz
"
REQUIRES="
lib:libiconv
lib:libbz2
lib:libz
"
BUILD()
{
@@ -117,154 +116,199 @@ INSTALL()
PROVIDES_devel="
boost_devel$secondaryArchSuffix = $portVersion
"
REQUIRES_devel="
haiku$secondaryArchSuffix >= $haikuVersion
"
"
PROVIDES_atomic="
boost_atomic$secondaryArchSuffix = $portVersion
"
"
REQUIRES_atomic="
haiku$secondaryArchSuffix >= $haikuVersion
"
"
PROVIDES_chrono="
boost_chrono$secondaryArchSuffix = $portVersion
"
"
REQUIRES_chrono="
haiku$secondaryArchSuffix >= $haikuVersion
boost_system$secondaryArchSuffix == $portVersion
"
"
PROVIDES_context="
boost_context$secondaryArchSuffix = $portVersion
"
"
REQUIRES_context="
haiku$secondaryArchSuffix >= $haikuVersion
"
"
PROVIDES_coroutine="
boost_coroutine$secondaryArchSuffix = $portVersion
"
"
REQUIRES_coroutine="
boost_context$secondaryArchSuffix == $portVersion
"
"
PROVIDES_date_time="
boost_date_time$secondaryArchSuffix = $portVersion
"
"
REQUIRES_date_time="
haiku$secondaryArchSuffix >= $haikuVersion
"
"
PROVIDES_exception="
boost_exception$secondaryArchSuffix = $portVersion
"
"
REQUIRES_exception="
haiku$secondaryArchSuffix >= $haikuVersion
"
"
PROVIDES_filesystem="
boost_filesystem$secondaryArchSuffix = $portVersion
"
"
REQUIRES_filesystem="
haiku$secondaryArchSuffix >= $haikuVersion
boost_system$secondaryArchSuffix == $portVersion
lib:libz$secondaryArchSuffix
lib:libbz2$secondaryArchSuffix
"
"
PROVIDES_graph="
boost_graph$secondaryArchSuffix = $portVersion
"
"
REQUIRES_graph="
haiku$secondaryArchSuffix >= $haikuVersion
boost_regex$secondaryArchSuffix == $portVersion
"
"
PROVIDES_iostreams="
boost_iostreams$secondaryArchSuffix = $portVersion
"
"
REQUIRES_iostreams="
haiku$secondaryArchSuffix >= $haikuVersion
"
"
PROVIDES_locale="
boost_locale$secondaryArchSuffix = $portVersion
"
"
REQUIRES_locale="
haiku$secondaryArchSuffix >= $haikuVersion
boost_chrono$secondaryArchSuffix == $portVersion
boost_system$secondaryArchSuffix == $portVersion
boost_thread$secondaryArchSuffix == $portVersion
"
"
PROVIDES_log="
boost_log$secondaryArchSuffix = $portVersion
"
"
REQUIRES_log="
haiku$secondaryArchSuffix >= $haikuVersion
boost_chrono$secondaryArchSuffix == $portVersion
boost_system$secondaryArchSuffix == $portVersion
boost_date_time$secondaryArchSuffix == $portVersion
boost_thread$secondaryArchSuffix == $portVersion
"
"
PROVIDES_math="
boost_math$secondaryArchSuffix = $portVersion
"
"
REQUIRES_math="
haiku$secondaryArchSuffix >= $haikuVersion
"
"
PROVIDES_program_options="
boost_program_options$secondaryArchSuffix = $portVersion
"
"
REQUIRES_program_options="
haiku$secondaryArchSuffix >= $haikuVersion
"
"
PROVIDES_random="
boost_random$secondaryArchSuffix = $portVersion
"
"
REQUIRES_random="
haiku$secondaryArchSuffix >= $haikuVersion
"
"
PROVIDES_regex="
boost_regex$secondaryArchSuffix = $portVersion
"
"
REQUIRES_regex="
haiku$secondaryArchSuffix >= $haikuVersion
"
"
PROVIDES_serialization="
boost_serialization$secondaryArchSuffix = $portVersion
"
"
REQUIRES_serialization="
haiku$secondaryArchSuffix >= $haikuVersion
"
"
PROVIDES_signals="
boost_signals$secondaryArchSuffix = $portVersion
"
"
REQUIRES_signals="
haiku$secondaryArchSuffix >= $haikuVersion
"
"
PROVIDES_system="
boost_system$secondaryArchSuffix = $portVersion
"
"
REQUIRES_system="
haiku$secondaryArchSuffix >= $haikuVersion
"
"
PROVIDES_test="
boost_test$secondaryArchSuffix = $portVersion
"
"
REQUIRES_test="
haiku$secondaryArchSuffix >= $haikuVersion
"
"
PROVIDES_thread="
boost_thread$secondaryArchSuffix = $portVersion
"
"
REQUIRES_thread="
haiku$secondaryArchSuffix >= $haikuVersion
boost_system$secondaryArchSuffix == $portVersion
boost_chrono$secondaryArchSuffix == $portVersion
"
"
PROVIDES_timer="
boost_timer$secondaryArchSuffix = $portVersion
"
"
REQUIRES_timer="
haiku$secondaryArchSuffix >= $haikuVersion
boost_chrono$secondaryArchSuffix == $portVersion
boost_system$secondaryArchSuffix == $portVersion
"
"
PROVIDES_wave="
boost_wave$secondaryArchSuffix = $portVersion
"
"
REQUIRES_wave="
haiku$secondaryArchSuffix >= $haikuVersion
boost_chrono$secondaryArchSuffix == $portVersion
@@ -272,4 +316,4 @@ REQUIRES_wave="
boost_filesystem$secondaryArchSuffix == $portVersion
boost_system$secondaryArchSuffix == $portVersion
boost_thread$secondaryArchSuffix == $portVersion
"
"

View File

@@ -1,225 +0,0 @@
diff -Naur boost_1_42_0/boost/config/platform/haiku.hpp boost_1_42_0-haiku/boost/config/platform/haiku.hpp
--- boost_1_42_0/boost/config/platform/haiku.hpp 1970-01-01 00:00:00.000000000 +0000
+++ boost_1_42_0-haiku/boost/config/platform/haiku.hpp 2010-04-23 02:22:35.100925440 +0000
@@ -0,0 +1,27 @@
+//  (C) Copyright John Maddock 2001.
+//  Use, modification and distribution are subject to the
+//  Boost Software License, Version 1.0. (See accompanying file
+//  LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+
+//  See http://www.boost.org for most recent version.
+
+//  Haiku specific config options:
+
+#define BOOST_PLATFORM "Haiku"
+
+#define BOOST_NO_INTRINSIC_WCHAR_T
+#define BOOST_HAS_UNISTD_H
+
+#define BOOST_HAS_BETHREADS
+
+#ifndef BOOST_DISABLE_THREADS
+# define BOOST_HAS_THREADS
+#endif
+
+//
+// thread API's not auto detected:
+//
+#define BOOST_HAS_GETTIMEOFDAY
+
+// boilerplate code:
+#include <boost/config/posix_features.hpp>
diff -Naur boost_1_42_0/boost/config/select_platform_config.hpp boost_1_42_0-haiku/boost/config/select_platform_config.hpp
--- boost_1_42_0/boost/config/select_platform_config.hpp 2009-05-30 11:16:25.057409536 +0000
+++ boost_1_42_0-haiku/boost/config/select_platform_config.hpp 2010-04-23 02:22:24.092798976 +0000
@@ -41,6 +41,10 @@
// win32:
# define BOOST_PLATFORM_CONFIG "boost/config/platform/win32.hpp"
+#elif defined(__HAIKU__)
+// Haiku
+# define BOOST_PLATFORM_CONFIG "boost/config/platform/haiku.hpp" 
+
#elif defined(__BEOS__)
// BeOS
# define BOOST_PLATFORM_CONFIG "boost/config/platform/beos.hpp"
diff -Naur boost_1_42_0/boost/config/stdlib/libstdcpp3.hpp boost_1_42_0-haiku/boost/config/stdlib/libstdcpp3.hpp
--- boost_1_42_0/boost/config/stdlib/libstdcpp3.hpp 2009-05-30 11:16:25.057671680 +0000
+++ boost_1_42_0-haiku/boost/config/stdlib/libstdcpp3.hpp 2010-04-23 02:23:34.217841664 +0000
@@ -31,7 +31,7 @@
#ifdef __GLIBCXX__ // gcc 3.4 and greater:
# if defined(_GLIBCXX_HAVE_GTHR_DEFAULT) \
- || defined(_GLIBCXX__PTHREADS)
+ || defined(_GLIBCXX__PTHREADS) || defined(__HAIKU__)
//
// If the std lib has thread support turned on, then turn it on in Boost
// as well. We do this because some gcc-3.4 std lib headers define _REENTANT
diff -Naur boost_1_42_0/boost/thread/thread_time.hpp boost_1_42_0-haiku/boost/thread/thread_time.hpp
--- boost_1_42_0/boost/thread/thread_time.hpp 2008-06-18 13:01:08.030408704 +0000
+++ boost_1_42_0-haiku/boost/thread/thread_time.hpp 2010-04-23 02:24:59.809500672 +0000
@@ -17,6 +17,9 @@
inline system_time get_system_time()
{
+#ifndef BOOST_DATE_TIME_HAS_HIGH_PRECISION_CLOCK
+# error "High precision clock not supported on this platform"
+#endif
return boost::date_time::microsec_clock<system_time>::universal_time();
}
diff -Naur boost_1_42_0/tools/build/v2/tools/builtin.jam boost_1_42_0-haiku/tools/build/v2/tools/builtin.jam
--- boost_1_42_0/tools/build/v2/tools/builtin.jam 2009-10-28 07:47:51.000786432 +0000
+++ boost_1_42_0-haiku/tools/build/v2/tools/builtin.jam 2010-04-23 02:26:20.131596288 +0000
@@ -39,7 +39,7 @@
.os-names = aix bsd cygwin darwin freebsd hpux iphone linux netbsd
- openbsd osf qnx qnxnto sgi solaris unix unixware windows
+ openbsd osf qnx qnxnto sgi solaris unix unixware windows haiku
elf # Not actually an OS -- used for targeting bare metal where
# object format is ELF. This catches both -elf and -eabi gcc
# targets and well as other compilers targeting ELF. It is not
@@ -77,6 +77,7 @@
case MACOSX : host-os = darwin ;
case KFREEBSD : host-os = freebsd ;
case LINUX : host-os = linux ;
+ case HAIKU : host-os = haiku ;
case SUNOS :
ECHO "SunOS is not a supported operating system." ;
ECHO "We believe last version of SunOS was released in 1992, " ;
diff -Naur boost_1_42_0/tools/build/v2/tools/gcc.jam boost_1_42_0-haiku/tools/build/v2/tools/gcc.jam
--- boost_1_42_0/tools/build/v2/tools/gcc.jam 2009-10-28 07:47:51.003145728 +0000
+++ boost_1_42_0-haiku/tools/build/v2/tools/gcc.jam 2010-04-23 02:28:40.680001536 +0000
@@ -858,7 +858,7 @@
# Differs from 'link' above only by -shared.
actions link.dll bind LIBRARIES
{
- "$(CONFIG_COMMAND)" -L"$(LINKPATH)" -Wl,$(RPATH_OPTION:E=-R)$(SPACE)-Wl,"$(RPATH)" "$(.IMPLIB-COMMAND)$(<[1])" -o "$(<[-1])" $(HAVE_SONAME)-Wl,$(SONAME_OPTION)$(SPACE)-Wl,$(<[-1]:D=) -shared $(START-GROUP) "$(>)" "$(LIBRARIES)" $(FINDLIBS-ST-PFX) -l$(FINDLIBS-ST) $(FINDLIBS-SA-PFX) -l$(FINDLIBS-SA) $(END-GROUP) $(OPTIONS) $(USER_OPTIONS)
+ "$(CONFIG_COMMAND)" -L"$(LINKPATH)" -Wl,$(RPATH_OPTION:E=-R)$(SPACE)-Wl,"$(RPATH)" "$(.IMPLIB-COMMAND)$(<[1])" -o "$(<[-1])" $(HAVE_SONAME)-Wl,$(SONAME_OPTION)$(SPACE)-Wl,$(<[-1]:D=) -nostart -Wl,-shared $(START-GROUP) "$(>)" "$(LIBRARIES)" $(FINDLIBS-ST-PFX) -l$(FINDLIBS-ST) $(FINDLIBS-SA-PFX) -l$(FINDLIBS-SA) $(END-GROUP) $(OPTIONS) $(USER_OPTIONS)
}
rule setup-threading ( targets * : sources * : properties * )
@@ -889,6 +889,10 @@
{
# BeOS has no threading options, so do not set anything here.
}
+ case haiku :
+ {
+ # pthread.
+ }
case *bsd :
{
option = -pthread ;
diff -Naur boost_1_42_0/tools/jam/src/Jambase boost_1_42_0-haiku/tools/jam/src/Jambase
--- boost_1_42_0/tools/jam/src/Jambase 2009-01-10 19:42:28.047185920 +0000
+++ boost_1_42_0-haiku/tools/jam/src/Jambase 2010-04-23 02:31:10.925106176 +0000
@@ -849,6 +849,18 @@
NOARSCAN ?= true ;
STDHDRS ?= /boot/develop/headers/posix ;
}
+else if $(OS) = HAIKU
+{
+ BINDIR ?= /boot/common/bin ;
+ CC ?= gcc ;
+ C++ ?= $(CC) ;
+ FORTRAN ?= "" ;
+ LIBDIR ?= /boot/common/lib ;
+ LINK ?= gcc ;
+ LINKLIBS ?= -lnetwork ;
+ NOARSCAN ?= true ;
+ STDHDRS ?= /boot/develop/headers/posix ;
+}
else if $(UNIX)
{
switch $(OS)
diff -Naur boost_1_42_0/tools/jam/src/boehm_gc/config.guess boost_1_42_0-haiku/tools/jam/src/boehm_gc/config.guess
--- boost_1_42_0/tools/jam/src/boehm_gc/config.guess 2007-08-11 05:53:37.019922944 +0000
+++ boost_1_42_0-haiku/tools/jam/src/boehm_gc/config.guess 2010-04-23 02:33:06.863502336 +0000
@@ -1199,6 +1199,9 @@
BePC:BeOS:*:*) # BeOS running on Intel PC compatible.
echo i586-pc-beos
exit ;;
+ BePC:Haiku:*:*) # Haiku running on Intel PC compatible.
+ echo i586-pc-haiku
+ exit ;;
SX-4:SUPER-UX:*:*)
echo sx4-nec-superux${UNAME_RELEASE}
exit ;;
diff -Naur boost_1_42_0/tools/jam/src/boehm_gc/include/private/gcconfig.h boost_1_42_0-haiku/tools/jam/src/boehm_gc/include/private/gcconfig.h
--- boost_1_42_0/tools/jam/src/boehm_gc/include/private/gcconfig.h 2007-08-11 05:53:37.032243712 +0000
+++ boost_1_42_0-haiku/tools/jam/src/boehm_gc/include/private/gcconfig.h 2010-04-23 02:34:09.906231808 +0000
@@ -215,6 +215,11 @@
# define BEOS
# define mach_type_known
# endif
+# if defined(__HAIKU__) && defined(_X86_)
+# define I386
+# define HAIKU
+# define mach_type_known
+# endif
# if defined(LINUX) && (defined(i386) || defined(__i386__))
# define I386
# define mach_type_known
@@ -1014,6 +1019,13 @@
extern int etext[];
# define DATASTART ((ptr_t)((((word) (etext)) + 0xfff) & ~0xfff))
# endif
+# ifdef HAIKU
+# define OS_TYPE "HAIKU"
+# include <OS.h>
+# define GETPAGESIZE() B_PAGE_SIZE
+ extern int etext[];
+# define DATASTART ((ptr_t)((((word) (etext)) + 0xfff) & ~0xfff))
+# endif
# ifdef SOLARIS
# define OS_TYPE "SOLARIS"
extern int _etext[], _end[];
diff -Naur boost_1_42_0/tools/jam/src/fileunix.c boost_1_42_0-haiku/tools/jam/src/fileunix.c
--- boost_1_42_0/tools/jam/src/fileunix.c 2009-01-10 19:42:28.045613056 +0000
+++ boost_1_42_0-haiku/tools/jam/src/fileunix.c 2010-04-23 02:34:44.754712576 +0000
@@ -80,6 +80,7 @@
# if defined( OS_QNX ) || \
defined( OS_BEOS ) || \
+ defined( OS_HAIKU ) || \
defined( OS_MPEIX )
# define NO_AR
# define HAVE_AR
diff -Naur boost_1_42_0/tools/jam/src/jam.h boost_1_42_0-haiku/tools/jam/src/jam.h
--- boost_1_42_0/tools/jam/src/jam.h 2009-01-10 19:42:28.046923776 +0000
+++ boost_1_42_0-haiku/tools/jam/src/jam.h 2010-04-23 02:35:27.411828224 +0000
@@ -234,6 +234,11 @@
#define OS_BEOS
#define NO_VFORK
#endif
+#ifdef __HAIKU__
+ #define unix
+ #define OSMINOR "OS=HAIKU"
+ #define OS_HAIKU
+#endif
#ifdef __bsdi__
#define OSMINOR "OS=BSDI"
#define OS_BSDI
diff -Naur boost_1_42_0/tools/jam/src/jambase.c boost_1_42_0-haiku/tools/jam/src/jambase.c
--- boost_1_42_0/tools/jam/src/jambase.c 2009-01-10 19:42:28.047448064 +0000
+++ boost_1_42_0-haiku/tools/jam/src/jambase.c 2010-04-23 02:36:46.935329792 +0000
@@ -554,6 +554,18 @@
"NOARSCAN ?= true ;\n",
"STDHDRS ?= /boot/develop/headers/posix ;\n",
"}\n",
+"else if $(OS) = HAIKU\n",
+"{\n",
+"BINDIR ?= /boot/common/bin ;\n",
+"CC ?= gcc ;\n",
+"C++ ?= $(CC) ;\n",
+"FORTRAN ?= \"\" ;\n",
+"LIBDIR ?= /boot/common/lib ;\n",
+"LINK ?= gcc ;\n",
+"LINKLIBS ?= -lnetwork ;\n",
+"NOARSCAN ?= true ;\n",
+"STDHDRS ?= /boot/develop/headers/posix ;\n",
+"}\n",
"else if $(UNIX)\n",
"{\n",
"switch $(OS)\n",

View File

@@ -1,337 +0,0 @@
diff -Naur boost_1_50_0/boost/config/platform/haiku.hpp boost_1_50_0-haiku/boost/config/platform/haiku.hpp
--- boost_1_50_0/boost/config/platform/haiku.hpp 1970-01-01 01:00:00.000000000 +0100
+++ boost_1_50_0-haiku/boost/config/platform/haiku.hpp 2012-08-16 01:16:44.000000000 +0200
@@ -0,0 +1,27 @@
+//  (C) Copyright John Maddock 2001.
+//  Use, modification and distribution are subject to the
+//  Boost Software License, Version 1.0. (See accompanying file
+//  LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+
+//  See http://www.boost.org for most recent version.
+
+//  Haiku specific config options:
+
+#define BOOST_PLATFORM "Haiku"
+
+#define BOOST_NO_INTRINSIC_WCHAR_T
+#define BOOST_HAS_UNISTD_H
+
+#define BOOST_HAS_BETHREADS
+
+#ifndef BOOST_DISABLE_THREADS
+# define BOOST_HAS_THREADS
+#endif
+
+//
+// thread API's not auto detected:
+//
+#define BOOST_HAS_GETTIMEOFDAY
+
+// boilerplate code:
+#include <boost/config/posix_features.hpp>
diff -Naur boost_1_50_0/boost/config/select_platform_config.hpp boost_1_50_0-haiku/boost/config/select_platform_config.hpp
--- boost_1_50_0/boost/config/select_platform_config.hpp 2011-10-10 13:50:55.047185920 +0200
+++ boost_1_50_0-haiku/boost/config/select_platform_config.hpp 2012-08-16 13:32:04.000000000 +0200
@@ -41,6 +41,10 @@
// win32:
# define BOOST_PLATFORM_CONFIG "boost/config/platform/win32.hpp"
+#elif defined(__HAIKU__)
+// Haiku
+# define BOOST_PLATFORM_CONFIG "boost/config/platform/haiku.hpp"
+
#elif defined(__BEOS__)
// BeOS
# define BOOST_PLATFORM_CONFIG "boost/config/platform/beos.hpp"
diff -Naur boost_1_50_0/boost/config/stdlib/libstdcpp3.hpp boost_1_50_0-haiku/boost/config/stdlib/libstdcpp3.hpp
--- boost_1_50_0/boost/config/stdlib/libstdcpp3.hpp 2012-05-15 13:57:21.047972352 +0200
+++ boost_1_50_0-haiku/boost/config/stdlib/libstdcpp3.hpp 2012-08-16 15:22:26.000000000 +0200
@@ -35,7 +35,8 @@
# if defined(_GLIBCXX_HAVE_GTHR_DEFAULT) \
|| defined(_GLIBCXX__PTHREADS) \
|| defined(_GLIBCXX_HAS_GTHREADS) \
- || defined(_WIN32)
+ || defined(_WIN32) \
+ || defined(__HAIKU__)
//
// If the std lib has thread support turned on, then turn it on in Boost
// as well. We do this because some gcc-3.4 std lib headers define _REENTANT
diff -Naur boost_1_50_0/boost/thread/detail/platform.hpp boost_1_50_0-haiku/boost/thread/detail/platform.hpp
--- boost_1_50_0/boost/thread/detail/platform.hpp 2012-05-22 19:03:15.043253760 +0200
+++ boost_1_50_0-haiku/boost/thread/detail/platform.hpp 2012-08-16 23:24:30.135266304 +0200
@@ -34,6 +34,8 @@
# define BOOST_THREAD_WIN32
#elif defined(__BEOS__)
# define BOOST_THREAD_BEOS
+#elif defined(__HAIKU__)
+# define BOOST_THREAD_BEOS
#elif defined(macintosh) || defined(__APPLE__) || defined(__APPLE_CC__)
# define BOOST_THREAD_MACOS
# define BOOST_THREAD_WAIT_BUG boost::posix_time::microseconds(1000)
diff -Naur boost_1_50_0/tools/build/v2/engine/boehm_gc/dyn_load.c boost_1_50_0-haiku/tools/build/v2/engine/boehm_gc/dyn_load.c
--- boost_1_50_0/tools/build/v2/engine/boehm_gc/dyn_load.c 2011-06-06 22:36:21.020185088 +0200
+++ boost_1_50_0-haiku/tools/build/v2/engine/boehm_gc/dyn_load.c 2012-08-16 13:10:40.000000000 +0200
@@ -64,7 +64,7 @@
!defined(AIX) && !defined(SCO_ELF) && !defined(DGUX) && \
!(defined(FREEBSD) && defined(__ELF__)) && \
!(defined(NETBSD) && defined(__ELF__)) && !defined(HURD) && \
- !defined(DARWIN) && !defined(CYGWIN32)
+ !defined(DARWIN) && !defined(CYGWIN32) !(defined(HAIKU)
--> We only know how to find data segments of dynamic libraries for the
--> above. Additional SVR4 variants might not be too
--> hard to add.
@@ -82,6 +82,10 @@
# define ELFSIZE ARCH_ELFSIZE
#endif
+#if defined(HAIKU)
+
+#endif
+
#if defined(LINUX) && defined(__ELF__) || defined(SCO_ELF) || \
(defined(FREEBSD) && defined(__ELF__)) || defined(DGUX) || \
(defined(NETBSD) && defined(__ELF__)) || defined(HURD)
@@ -216,7 +220,8 @@
#if defined(LINUX) && defined(__ELF__) || defined(SCO_ELF) || \
(defined(FREEBSD) && defined(__ELF__)) || defined(DGUX) || \
- (defined(NETBSD) && defined(__ELF__)) || defined(HURD)
+ (defined(NETBSD) && defined(__ELF__)) || defined(HURD) || \
+ defined(HAIKU)
#ifdef USE_PROC_FOR_LIBRARIES
diff -Naur boost_1_50_0/tools/build/v2/engine/boehm_gc/include/gc_config_macros.h boost_1_50_0-haiku/tools/build/v2/engine/boehm_gc/include/gc_config_macros.h
--- boost_1_50_0/tools/build/v2/engine/boehm_gc/include/gc_config_macros.h 2011-06-06 22:36:21.022282240 +0200
+++ boost_1_50_0-haiku/tools/build/v2/engine/boehm_gc/include/gc_config_macros.h 2012-08-16 13:17:27.000000000 +0200
@@ -45,7 +45,8 @@
|| defined(GC_AIX_THREADS) \
|| defined(GC_LINUX_THREADS) \
|| defined(GC_NETBSD_THREADS) \
- || defined(GC_GNU_THREADS))
+ || defined(GC_GNU_THREADS)) \
+ || defined(GC_HAIKU_THREADS)
# define _REENTRANT
/* Better late than never. This fails if system headers that */
/* depend on this were previously included. */
@@ -62,6 +63,7 @@
# if defined(GC_SOLARIS_THREADS) || defined(GC_FREEBSD_THREADS) || \
defined(GC_IRIX_THREADS) || defined(GC_LINUX_THREADS) || \
defined(GC_HPUX_THREADS) || defined(GC_OSF1_THREADS) || \
+ defined(GC_HAIKU_THREADS) || \
defined(GC_DGUX386_THREADS) || defined(GC_DARWIN_THREADS) || \
defined(GC_AIX_THREADS) || defined(GC_NETBSD_THREADS) || \
(defined(GC_WIN32_THREADS) && defined(__CYGWIN32__)) || \
diff -Naur boost_1_50_0/tools/build/v2/engine/boehm_gc/include/gc.h boost_1_50_0-haiku/tools/build/v2/engine/boehm_gc/include/gc.h
--- boost_1_50_0/tools/build/v2/engine/boehm_gc/include/gc.h 2011-06-06 22:36:21.022020096 +0200
+++ boost_1_50_0-haiku/tools/build/v2/engine/boehm_gc/include/gc.h 2012-08-16 13:12:51.000000000 +0200
@@ -494,7 +494,7 @@
/* of compilers. */
/* This may also be desirable if it is possible but expensive to */
/* retrieve the call chain. */
-#if (defined(__linux__) || defined(__NetBSD__) || defined(__OpenBSD__) \
+#if (defined(__linux__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(__HAIKU__) \
|| defined(__FreeBSD__) || defined(__DragonFly__)) & !defined(GC_CAN_SAVE_CALL_STACKS)
# define GC_ADD_CALLER
# if __GNUC__ >= 3 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 95)
diff -Naur boost_1_50_0/tools/build/v2/engine/boehm_gc/include/private/gcconfig.h boost_1_50_0-haiku/tools/build/v2/engine/boehm_gc/include/private/gcconfig.h
--- boost_1_50_0/tools/build/v2/engine/boehm_gc/include/private/gcconfig.h 2011-06-06 22:36:21.024117248 +0200
+++ boost_1_50_0-haiku/tools/build/v2/engine/boehm_gc/include/private/gcconfig.h 2012-08-16 13:49:16.000000000 +0200
@@ -215,6 +215,11 @@
# define BEOS
# define mach_type_known
# endif
+# if defined(__HAIKU__) && defined(_X86_)
+# define I386
+# define HAIKU
+# define mach_type_known
+# endif
# if defined(LINUX) && (defined(i386) || defined(__i386__))
# define I386
# define mach_type_known
@@ -1014,6 +1019,13 @@
extern int etext[];
# define DATASTART ((ptr_t)((((word) (etext)) + 0xfff) & ~0xfff))
# endif
+# ifdef HAIKU
+# define OS_TYPE "HAIKU"
+# include <OS.h>
+# define GETPAGESIZE() B_PAGE_SIZE
+ extern int etext[];
+# define DATASTART ((ptr_t)((((word) (etext)) + 0xfff) & ~0xfff))
+# endif
# ifdef SOLARIS
# define OS_TYPE "SOLARIS"
extern int _etext[], _end[];
diff -Naur boost_1_50_0/tools/build/v2/engine/boehm_gc/os_dep.c boost_1_50_0-haiku/tools/build/v2/engine/boehm_gc/os_dep.c
--- boost_1_50_0/tools/build/v2/engine/boehm_gc/os_dep.c 2011-06-06 22:36:21.030408704 +0200
+++ boost_1_50_0-haiku/tools/build/v2/engine/boehm_gc/os_dep.c 2012-08-16 13:52:23.000000000 +0200
@@ -777,6 +777,16 @@
# endif /* BEOS */
+# ifdef HAIKU
+# include <OS.h>
+ptr_t GC_get_main_stack_base(void){
+ thread_info th;
+ get_thread_info(find_thread(NULL),&th);
+ return th.stack_end;
+}
+# endif /* HAIKU */
+
+
# ifdef OS2
ptr_t GC_get_main_stack_base(void)
@@ -1095,7 +1105,7 @@
#endif /* FREEBSD_STACKBOTTOM */
-#if !defined(BEOS) && !defined(AMIGA) && !defined(MSWIN32) \
+#if !defined(BEOS) && !defined(HAIKU) && !defined(AMIGA) && !defined(MSWIN32) \
&& !defined(MSWINCE) && !defined(OS2) && !defined(NOSYS) && !defined(ECOS) \
&& !defined(CYGWIN32)
@@ -1154,7 +1164,7 @@
# endif /* STACKBOTTOM */
}
-# endif /* ! AMIGA, !OS 2, ! MS Windows, !BEOS, !NOSYS, !ECOS */
+# endif /* ! AMIGA, !OS 2, ! MS Windows, !BEOS, !HAIKU, !NOSYS, !ECOS */
#if defined(GC_LINUX_THREADS) && !defined(HAVE_GET_STACK_BASE)
diff -Naur boost_1_50_0/tools/build/v2/engine/fileunix.c boost_1_50_0-haiku/tools/build/v2/engine/fileunix.c
--- boost_1_50_0/tools/build/v2/engine/fileunix.c 2012-04-26 05:35:55.037224448 +0200
+++ boost_1_50_0-haiku/tools/build/v2/engine/fileunix.c 2012-08-16 13:54:03.000000000 +0200
@@ -81,6 +81,7 @@
# if defined( OS_QNX ) || \
defined( OS_BEOS ) || \
+ defined( OS_HAIKU ) || \
defined( OS_MPEIX )
# define NO_AR
# define HAVE_AR
diff -Naur boost_1_50_0/tools/build/v2/engine/jam.h boost_1_50_0-haiku/tools/build/v2/engine/jam.h
--- boost_1_50_0/tools/build/v2/engine/jam.h 2012-06-06 06:00:21.039059456 +0200
+++ boost_1_50_0-haiku/tools/build/v2/engine/jam.h 2012-08-16 13:57:51.000000000 +0200
@@ -151,6 +151,11 @@
#define OS_BEOS
#define NO_VFORK
#endif
+#ifdef __HAIKU__
+ #define unix
+ #define OSMINOR "OS=HAIKU"
+ #define OS_HAIKU
+#endif
#ifdef __bsdi__
#define OSMINOR "OS=BSDI"
#define OS_BSDI
diff -Naur boost_1_50_0/tools/build/v2/engine/jambase.c boost_1_50_0-haiku/tools/build/v2/engine/jambase.c
--- boost_1_50_0/tools/build/v2/engine/jambase.c 2011-06-06 22:36:21.039321600 +0200
+++ boost_1_50_0-haiku/tools/build/v2/engine/jambase.c 2012-08-16 14:03:05.000000000 +0200
@@ -548,6 +548,18 @@
"NOARSCAN ?= true ;\n",
"STDHDRS ?= /boot/develop/headers/posix ;\n",
"}\n",
+"else if $(OS) = HAIKU\n",
+"{\n",
+"BINDIR ?= /boot/common/bin ;\n",
+"CC ?= gcc ;\n",
+"C++ ?= $(CC) ;\n",
+"FORTRAN ?= \"\" ;\n",
+"LIBDIR ?= /boot/common/lib ;\n",
+"LINK ?= gcc ;\n",
+"LINKLIBS ?= -lnetwork ;\n",
+"NOARSCAN ?= true ;\n",
+"STDHDRS ?= /boot/develop/headers/posix ;\n",
+"}\n",
"else if $(OS) = BEOS\n",
"{\n",
"BINDIR ?= /boot/apps ;\n",
diff -Naur boost_1_50_0/tools/build/v2/tools/builtin.jam boost_1_50_0-haiku/tools/build/v2/tools/builtin.jam
--- boost_1_50_0/tools/build/v2/tools/builtin.jam 2011-06-06 22:36:21.022020096 +0200
+++ boost_1_50_0-haiku/tools/build/v2/tools/builtin.jam 2012-08-16 15:57:04.000000000 +0200
@@ -40,7 +40,7 @@
.os-names = aix bsd cygwin darwin freebsd hpux iphone linux netbsd
- openbsd osf qnx qnxnto sgi solaris unix unixware windows
+ openbsd osf qnx qnxnto sgi solaris unix unixware windows haiku
elf # Not actually an OS -- used for targeting bare metal where
# object format is ELF. This catches both -elf and -eabi gcc
# targets and well as other compilers targeting ELF. It is not
@@ -75,6 +75,7 @@
case COHERENT : host-os = unix ;
case DRAGONFLYBSD : host-os = bsd ;
case IRIX : host-os = sgi ;
+ case HAIKU : host-os = haiku ;
case MACOSX : host-os = darwin ;
case KFREEBSD : host-os = freebsd ;
case LINUX : host-os = linux ;
diff -Naur boost_1_50_0/tools/build/v2/tools/builtin.py boost_1_50_0-haiku/tools/build/v2/tools/builtin.py
--- boost_1_50_0/tools/build/v2/tools/builtin.py 2012-04-26 05:35:55.022020096 +0200
+++ boost_1_50_0-haiku/tools/build/v2/tools/builtin.py 2012-08-16 15:59:13.000000000 +0200
@@ -103,6 +103,7 @@
elif host_os == 'MACOSX': host_os = 'darwin'
elif host_os == 'KFREEBSD': host_os = 'freebsd'
elif host_os == 'LINUX': host_os = 'linux'
+ elif host_os == 'HAIKU': host_os = 'haiku'
else: host_os = 'unix'
return host_os.lower()
diff -Naur boost_1_50_0/tools/build/v2/tools/gcc.jam boost_1_50_0-haiku/tools/build/v2/tools/gcc.jam
--- boost_1_50_0/tools/build/v2/tools/gcc.jam 2012-04-26 05:35:55.025165824 +0200
+++ boost_1_50_0-haiku/tools/build/v2/tools/gcc.jam 2012-08-16 13:40:12.000000000 +0200
@@ -1050,6 +1050,10 @@
case beos :
{
# BeOS has no threading options, so do not set anything here.
+ }
+ case haiku :
+ {
+ option = ;
}
case *bsd :
{
@@ -1067,7 +1071,7 @@
}
case * :
{
- option = -pthread ;
+ option = -pthreads ;
libs = rt ;
}
}
diff -Naur boost_1_50_0/tools/build/v2/tools/gcc.py boost_1_50_0-haiku/tools/build/v2/tools/gcc.py
--- boost_1_50_0/tools/build/v2/tools/gcc.py 2012-04-26 05:35:55.025165824 +0200
+++ boost_1_50_0-haiku/tools/build/v2/tools/gcc.py 2012-08-16 15:06:53.000000000 +0200
@@ -675,6 +675,9 @@
elif host_os_name == 'BeOS':
# BeOS has no threading options, don't set anything here.
pass
+ elif host_os_name == 'Haiku':
+ flags('gcc', 'OPTIONS', ['<threading>multi'], ['-lroot'])
+ # there is no -lrt on HAIKU
elif host_os_name.endswith('BSD'):
flags('gcc', 'OPTIONS', ['<threading>multi'], ['-pthread'])
# there is no -lrt on BSD
diff -Naur boost_1_50_0/tools/build/v2/tools/python.jam boost_1_50_0-haiku/tools/build/v2/tools/python.jam
--- boost_1_50_0/tools/build/v2/tools/python.jam 2012-04-26 05:35:55.029097984 +0200
+++ boost_1_50_0-haiku/tools/build/v2/tools/python.jam 2012-08-16 15:52:51.000000000 +0200
@@ -648,13 +648,14 @@
case qnx* : return ;
case darwin : return ;
case windows : return ;
+ case haiku : return ;
case hpux : return <library>rt ;
case *bsd : return <library>pthread <toolset>gcc:<library>util ;
case aix : return <library>pthread <library>dl ;
- case * : return <library>pthread <library>dl
+ case * : return ; <library>pthread <library>dl
<toolset>gcc:<library>util <toolset-intel:platform>linux:<library>util ;
}
}

View File

@@ -1,6 +1,14 @@
diff -urN boost_1_53_0/boost/config/platform/haiku.hpp boost_1_53_0-haiku/boost/config/platform/haiku.hpp
--- boost_1_53_0/boost/config/platform/haiku.hpp 1969-12-31 16:00:00.000000000 -0800
+++ boost_1_53_0-haiku/boost/config/platform/haiku.hpp 2013-03-28 00:49:51.271056896 -0700
From f194ab93c5c29020d5f0f4915b1f554645986587 Mon Sep 17 00:00:00 2001
From: Scott McCreary <scottmc2@gmail.com>
Date: Sun, 22 Dec 2013 10:01:12 -0800
Subject: applying patch boost-1.55.0.patch
diff --git a/boost/config/platform/haiku.hpp b/boost/config/platform/haiku.hpp
new file mode 100644
index 0000000..1b15c7e
--- /dev/null
+++ b/boost/config/platform/haiku.hpp
@@ -0,0 +1,27 @@
+//  (C) Copyright John Maddock 2001.
+//  Use, modification and distribution are subject to the
@@ -29,9 +37,10 @@ diff -urN boost_1_53_0/boost/config/platform/haiku.hpp boost_1_53_0-haiku/boost/
+
+// boilerplate code:
+#include <boost/config/posix_features.hpp>
diff -urN boost_1_53_0/boost/config/select_platform_config.hpp boost_1_53_0-haiku/boost/config/select_platform_config.hpp
--- boost_1_53_0/boost/config/select_platform_config.hpp 2011-10-10 04:50:55.036175872 -0700
+++ boost_1_53_0-haiku/boost/config/select_platform_config.hpp 2013-03-28 00:40:07.746586112 -0700
diff --git a/boost/config/select_platform_config.hpp b/boost/config/select_platform_config.hpp
index 2af61d2..5052d85 100644
--- a/boost/config/select_platform_config.hpp
+++ b/boost/config/select_platform_config.hpp
@@ -41,6 +41,10 @@
// win32:
# define BOOST_PLATFORM_CONFIG "boost/config/platform/win32.hpp"
@@ -43,22 +52,24 @@ diff -urN boost_1_53_0/boost/config/select_platform_config.hpp boost_1_53_0-haik
#elif defined(__BEOS__)
// BeOS
# define BOOST_PLATFORM_CONFIG "boost/config/platform/beos.hpp"
diff -urN boost_1_53_0/boost/config/stdlib/libstdcpp3.hpp boost_1_53_0-haiku/boost/config/stdlib/libstdcpp3.hpp
--- boost_1_53_0/boost/config/stdlib/libstdcpp3.hpp 2012-07-15 08:59:05.036700160 -0700
+++ boost_1_53_0-haiku/boost/config/stdlib/libstdcpp3.hpp 2013-03-28 00:40:17.162267136 -0700
@@ -35,7 +35,8 @@
# if defined(_GLIBCXX_HAVE_GTHR_DEFAULT) \
diff --git a/boost/config/stdlib/libstdcpp3.hpp b/boost/config/stdlib/libstdcpp3.hpp
index 976ab76..66bc96d 100644
--- a/boost/config/stdlib/libstdcpp3.hpp
+++ b/boost/config/stdlib/libstdcpp3.hpp
@@ -36,7 +36,8 @@
|| defined(_GLIBCXX__PTHREADS) \
|| defined(_GLIBCXX_HAS_GTHREADS) \
- || defined(_WIN32)
+ || defined(_WIN32) \
|| defined(_WIN32) \
- || defined(_AIX)
+ || defined(_AIX) \
+ || defined(__HAIKU__)
//
// If the std lib has thread support turned on, then turn it on in Boost
// as well. We do this because some gcc-3.4 std lib headers define _REENTANT
diff -urN boost_1_53_0/boost/thread/detail/platform.hpp boost_1_53_0-haiku/boost/thread/detail/platform.hpp
--- boost_1_53_0/boost/thread/detail/platform.hpp 2012-07-08 22:55:01.064225280 -0700
+++ boost_1_53_0-haiku/boost/thread/detail/platform.hpp 2013-03-28 00:40:28.586153984 -0700
diff --git a/boost/thread/detail/platform.hpp b/boost/thread/detail/platform.hpp
index 1f33b1a..1b8917c 100644
--- a/boost/thread/detail/platform.hpp
+++ b/boost/thread/detail/platform.hpp
@@ -34,6 +34,8 @@
# define BOOST_THREAD_WIN32
#elif defined(__BEOS__)
@@ -68,10 +79,11 @@ diff -urN boost_1_53_0/boost/thread/detail/platform.hpp boost_1_53_0-haiku/boost
#elif defined(macintosh) || defined(__APPLE__) || defined(__APPLE_CC__)
# define BOOST_THREAD_MACOS
//# define BOOST_THREAD_WAIT_BUG boost::posix_time::microseconds(1000)
diff -urN boost_1_53_0/tools/build/v2/engine/boehm_gc/dyn_load.c boost_1_53_0-haiku/tools/build/v2/engine/boehm_gc/dyn_load.c
--- boost_1_53_0/tools/build/v2/engine/boehm_gc/dyn_load.c 2011-06-06 13:36:21.029360128 -0700
+++ boost_1_53_0-haiku/tools/build/v2/engine/boehm_gc/dyn_load.c 2013-03-28 00:40:38.863240192 -0700
@@ -64,7 +64,7 @@
diff --git a/tools/build/v2/engine/boehm_gc/dyn_load.c b/tools/build/v2/engine/boehm_gc/dyn_load.c
index 36968ba..e725bdc 100644
--- a/tools/build/v2/engine/boehm_gc/dyn_load.c
+++ b/tools/build/v2/engine/boehm_gc/dyn_load.c
@@ -64,7 +64,7 @@ static int (*GC_has_static_roots)(const char *, void *, size_t);
!defined(AIX) && !defined(SCO_ELF) && !defined(DGUX) && \
!(defined(FREEBSD) && defined(__ELF__)) && \
!(defined(NETBSD) && defined(__ELF__)) && !defined(HURD) && \
@@ -80,7 +92,7 @@ diff -urN boost_1_53_0/tools/build/v2/engine/boehm_gc/dyn_load.c boost_1_53_0-ha
--> We only know how to find data segments of dynamic libraries for the
--> above. Additional SVR4 variants might not be too
--> hard to add.
@@ -82,6 +82,10 @@
@@ -82,6 +82,10 @@ static int (*GC_has_static_roots)(const char *, void *, size_t);
# define ELFSIZE ARCH_ELFSIZE
#endif
@@ -91,7 +103,7 @@ diff -urN boost_1_53_0/tools/build/v2/engine/boehm_gc/dyn_load.c boost_1_53_0-ha
#if defined(LINUX) && defined(__ELF__) || defined(SCO_ELF) || \
(defined(FREEBSD) && defined(__ELF__)) || defined(DGUX) || \
(defined(NETBSD) && defined(__ELF__)) || defined(HURD)
@@ -216,7 +220,8 @@
@@ -216,7 +220,8 @@ void GC_register_dynamic_libraries()
#if defined(LINUX) && defined(__ELF__) || defined(SCO_ELF) || \
(defined(FREEBSD) && defined(__ELF__)) || defined(DGUX) || \
@@ -101,9 +113,23 @@ diff -urN boost_1_53_0/tools/build/v2/engine/boehm_gc/dyn_load.c boost_1_53_0-ha
#ifdef USE_PROC_FOR_LIBRARIES
diff -urN boost_1_53_0/tools/build/v2/engine/boehm_gc/include/gc_config_macros.h boost_1_53_0-haiku/tools/build/v2/engine/boehm_gc/include/gc_config_macros.h
--- boost_1_53_0/tools/build/v2/engine/boehm_gc/include/gc_config_macros.h 2011-06-06 13:36:21.031719424 -0700
+++ boost_1_53_0-haiku/tools/build/v2/engine/boehm_gc/include/gc_config_macros.h 2013-03-28 00:40:49.546045952 -0700
diff --git a/tools/build/v2/engine/boehm_gc/include/gc.h b/tools/build/v2/engine/boehm_gc/include/gc.h
index cc95088..590a868 100644
--- a/tools/build/v2/engine/boehm_gc/include/gc.h
+++ b/tools/build/v2/engine/boehm_gc/include/gc.h
@@ -494,7 +494,7 @@ GC_API void * GC_malloc_atomic_ignore_off_page(size_t lb);
/* of compilers. */
/* This may also be desirable if it is possible but expensive to */
/* retrieve the call chain. */
-#if (defined(__linux__) || defined(__NetBSD__) || defined(__OpenBSD__) \
+#if (defined(__linux__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(__HAIKU__) \
|| defined(__FreeBSD__) || defined(__DragonFly__)) & !defined(GC_CAN_SAVE_CALL_STACKS)
# define GC_ADD_CALLER
# if __GNUC__ >= 3 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 95)
diff --git a/tools/build/v2/engine/boehm_gc/include/gc_config_macros.h b/tools/build/v2/engine/boehm_gc/include/gc_config_macros.h
index 66abf0b..797eddd 100644
--- a/tools/build/v2/engine/boehm_gc/include/gc_config_macros.h
+++ b/tools/build/v2/engine/boehm_gc/include/gc_config_macros.h
@@ -45,7 +45,8 @@
|| defined(GC_AIX_THREADS) \
|| defined(GC_LINUX_THREADS) \
@@ -122,21 +148,10 @@ diff -urN boost_1_53_0/tools/build/v2/engine/boehm_gc/include/gc_config_macros.h
defined(GC_DGUX386_THREADS) || defined(GC_DARWIN_THREADS) || \
defined(GC_AIX_THREADS) || defined(GC_NETBSD_THREADS) || \
(defined(GC_WIN32_THREADS) && defined(__CYGWIN32__)) || \
diff -urN boost_1_53_0/tools/build/v2/engine/boehm_gc/include/gc.h boost_1_53_0-haiku/tools/build/v2/engine/boehm_gc/include/gc.h
--- boost_1_53_0/tools/build/v2/engine/boehm_gc/include/gc.h 2011-06-06 13:36:21.031195136 -0700
+++ boost_1_53_0-haiku/tools/build/v2/engine/boehm_gc/include/gc.h 2013-03-28 00:40:57.427556864 -0700
@@ -494,7 +494,7 @@
/* of compilers. */
/* This may also be desirable if it is possible but expensive to */
/* retrieve the call chain. */
-#if (defined(__linux__) || defined(__NetBSD__) || defined(__OpenBSD__) \
+#if (defined(__linux__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(__HAIKU__) \
|| defined(__FreeBSD__) || defined(__DragonFly__)) & !defined(GC_CAN_SAVE_CALL_STACKS)
# define GC_ADD_CALLER
# if __GNUC__ >= 3 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 95)
diff -urN boost_1_53_0/tools/build/v2/engine/boehm_gc/include/private/gcconfig.h boost_1_53_0-haiku/tools/build/v2/engine/boehm_gc/include/private/gcconfig.h
--- boost_1_53_0/tools/build/v2/engine/boehm_gc/include/private/gcconfig.h 2011-06-06 13:36:21.034078720 -0700
+++ boost_1_53_0-haiku/tools/build/v2/engine/boehm_gc/include/private/gcconfig.h 2013-03-28 00:41:08.074448896 -0700
diff --git a/tools/build/v2/engine/boehm_gc/include/private/gcconfig.h b/tools/build/v2/engine/boehm_gc/include/private/gcconfig.h
index 20f35bc..7e798a7 100644
--- a/tools/build/v2/engine/boehm_gc/include/private/gcconfig.h
+++ b/tools/build/v2/engine/boehm_gc/include/private/gcconfig.h
@@ -215,6 +215,11 @@
# define BEOS
# define mach_type_known
@@ -163,10 +178,11 @@ diff -urN boost_1_53_0/tools/build/v2/engine/boehm_gc/include/private/gcconfig.h
# ifdef SOLARIS
# define OS_TYPE "SOLARIS"
extern int _etext[], _end[];
diff -urN boost_1_53_0/tools/build/v2/engine/boehm_gc/os_dep.c boost_1_53_0-haiku/tools/build/v2/engine/boehm_gc/os_dep.c
--- boost_1_53_0/tools/build/v2/engine/boehm_gc/os_dep.c 2011-06-06 13:36:21.039583744 -0700
+++ boost_1_53_0-haiku/tools/build/v2/engine/boehm_gc/os_dep.c 2013-03-28 00:41:17.561774592 -0700
@@ -777,6 +777,16 @@
diff --git a/tools/build/v2/engine/boehm_gc/os_dep.c b/tools/build/v2/engine/boehm_gc/os_dep.c
index bb8fa08..a7edf72 100644
--- a/tools/build/v2/engine/boehm_gc/os_dep.c
+++ b/tools/build/v2/engine/boehm_gc/os_dep.c
@@ -777,6 +777,16 @@ ptr_t GC_get_main_stack_base(void){
# endif /* BEOS */
@@ -183,7 +199,7 @@ diff -urN boost_1_53_0/tools/build/v2/engine/boehm_gc/os_dep.c boost_1_53_0-haik
# ifdef OS2
ptr_t GC_get_main_stack_base(void)
@@ -1095,7 +1105,7 @@
@@ -1095,7 +1105,7 @@ ptr_t GC_get_main_stack_base(void)
#endif /* FREEBSD_STACKBOTTOM */
@@ -192,7 +208,7 @@ diff -urN boost_1_53_0/tools/build/v2/engine/boehm_gc/os_dep.c boost_1_53_0-haik
&& !defined(MSWINCE) && !defined(OS2) && !defined(NOSYS) && !defined(ECOS) \
&& !defined(CYGWIN32)
@@ -1154,7 +1164,7 @@
@@ -1154,7 +1164,7 @@ ptr_t GC_get_main_stack_base(void)
# endif /* STACKBOTTOM */
}
@@ -201,21 +217,27 @@ diff -urN boost_1_53_0/tools/build/v2/engine/boehm_gc/os_dep.c boost_1_53_0-haik
#if defined(GC_LINUX_THREADS) && !defined(HAVE_GET_STACK_BASE)
diff -urN boost_1_53_0/tools/build/v2/engine/fileunix.c boost_1_53_0-haiku/tools/build/v2/engine/fileunix.c
--- boost_1_53_0/tools/build/v2/engine/fileunix.c 2012-04-25 20:35:55.046399488 -0700
+++ boost_1_53_0-haiku/tools/build/v2/engine/fileunix.c 2013-03-28 00:41:26.497549312 -0700
@@ -81,6 +81,7 @@
diff --git a/tools/build/v2/engine/fileunix.c b/tools/build/v2/engine/fileunix.c
index bff3a42..1f60be2 100644
--- a/tools/build/v2/engine/fileunix.c
+++ b/tools/build/v2/engine/fileunix.c
@@ -80,7 +80,10 @@ struct ar_hdr /* archive file member header - printable ascii */
};
#endif
# if defined( OS_QNX ) || \
defined( OS_BEOS ) || \
-#if defined( OS_QNX ) || defined( OS_BEOS ) || defined( OS_MPEIX )
+# if defined( OS_QNX ) || \
+ defined( OS_BEOS ) || \
+ defined( OS_HAIKU ) || \
defined( OS_MPEIX )
+ defined( OS_MPEIX )
# define NO_AR
# define HAVE_AR
diff -urN boost_1_53_0/tools/build/v2/engine/jam.h boost_1_53_0-haiku/tools/build/v2/engine/jam.h
--- boost_1_53_0/tools/build/v2/engine/jam.h 2012-06-05 21:00:21.048234496 -0700
+++ boost_1_53_0-haiku/tools/build/v2/engine/jam.h 2013-03-28 00:41:36.127139840 -0700
@@ -151,6 +151,11 @@
#endif
diff --git a/tools/build/v2/engine/jam.h b/tools/build/v2/engine/jam.h
index 86ad0e8..7c0bb69 100644
--- a/tools/build/v2/engine/jam.h
+++ b/tools/build/v2/engine/jam.h
@@ -125,6 +125,11 @@
#define OS_BEOS
#define NO_VFORK
#endif
@@ -227,10 +249,11 @@ diff -urN boost_1_53_0/tools/build/v2/engine/jam.h boost_1_53_0-haiku/tools/buil
#ifdef __bsdi__
#define OSMINOR "OS=BSDI"
#define OS_BSDI
diff -urN boost_1_53_0/tools/build/v2/engine/jambase.c boost_1_53_0-haiku/tools/build/v2/engine/jambase.c
--- boost_1_53_0/tools/build/v2/engine/jambase.c 2011-06-06 13:36:21.048496640 -0700
+++ boost_1_53_0-haiku/tools/build/v2/engine/jambase.c 2013-03-28 00:41:44.670040064 -0700
@@ -548,6 +548,18 @@
diff --git a/tools/build/v2/engine/jambase.c b/tools/build/v2/engine/jambase.c
index b15282b..5a127a1 100644
--- a/tools/build/v2/engine/jambase.c
+++ b/tools/build/v2/engine/jambase.c
@@ -548,6 +548,18 @@ char *jambase[] = {
"NOARSCAN ?= true ;\n",
"STDHDRS ?= /boot/develop/headers/posix ;\n",
"}\n",
@@ -249,19 +272,20 @@ diff -urN boost_1_53_0/tools/build/v2/engine/jambase.c boost_1_53_0-haiku/tools/
"else if $(OS) = BEOS\n",
"{\n",
"BINDIR ?= /boot/apps ;\n",
diff -urN boost_1_53_0/tools/build/v2/tools/builtin.jam boost_1_53_0-haiku/tools/build/v2/tools/builtin.jam
--- boost_1_53_0/tools/build/v2/tools/builtin.jam 2011-06-06 13:36:21.033816576 -0700
+++ boost_1_53_0-haiku/tools/build/v2/tools/builtin.jam 2013-03-28 00:41:54.663748608 -0700
@@ -40,7 +40,7 @@
diff --git a/tools/build/v2/tools/builtin.jam b/tools/build/v2/tools/builtin.jam
index 176de13..1c3466f 100644
--- a/tools/build/v2/tools/builtin.jam
+++ b/tools/build/v2/tools/builtin.jam
@@ -41,7 +41,7 @@ import generate ;
.os-names = aix bsd cygwin darwin freebsd hpux iphone linux netbsd
- openbsd osf qnx qnxnto sgi solaris unix unixware windows
+ openbsd osf qnx qnxnto sgi solaris unix unixware windows haiku
elf # Not actually an OS -- used for targeting bare metal where
# object format is ELF. This catches both -elf and -eabi gcc
# targets and well as other compilers targeting ELF. It is not
@@ -75,6 +75,7 @@
.os-names = aix bsd cygwin darwin freebsd hpux iphone linux netbsd openbsd osf
- qnx qnxnto sgi solaris unix unixware windows
+ qnx qnxnto sgi solaris unix unixware windows haiku
elf # Not actually an OS -- used for targeting bare metal where object
# format is ELF. This catches both -elf and -eabi gcc targets and well
# as other compilers targeting ELF. It is not clear how often we need
@@ -76,6 +76,7 @@ local rule default-host-os ( )
case COHERENT : host-os = unix ;
case DRAGONFLYBSD : host-os = bsd ;
case IRIX : host-os = sgi ;
@@ -269,10 +293,11 @@ diff -urN boost_1_53_0/tools/build/v2/tools/builtin.jam boost_1_53_0-haiku/tools
case MACOSX : host-os = darwin ;
case KFREEBSD : host-os = freebsd ;
case LINUX : host-os = linux ;
diff -urN boost_1_53_0/tools/build/v2/tools/builtin.py boost_1_53_0-haiku/tools/build/v2/tools/builtin.py
--- boost_1_53_0/tools/build/v2/tools/builtin.py 2012-04-25 20:35:55.034078720 -0700
+++ boost_1_53_0-haiku/tools/build/v2/tools/builtin.py 2013-03-28 00:42:04.759693312 -0700
@@ -103,6 +103,7 @@
diff --git a/tools/build/v2/tools/builtin.py b/tools/build/v2/tools/builtin.py
index 35c1a40..c430fad 100644
--- a/tools/build/v2/tools/builtin.py
+++ b/tools/build/v2/tools/builtin.py
@@ -103,6 +103,7 @@ def default_host_os():
elif host_os == 'MACOSX': host_os = 'darwin'
elif host_os == 'KFREEBSD': host_os = 'freebsd'
elif host_os == 'LINUX': host_os = 'linux'
@@ -280,33 +305,28 @@ diff -urN boost_1_53_0/tools/build/v2/tools/builtin.py boost_1_53_0-haiku/tools/
else: host_os = 'unix'
return host_os.lower()
diff -urN boost_1_53_0/tools/build/v2/tools/gcc.jam boost_1_53_0-haiku/tools/build/v2/tools/gcc.jam
--- boost_1_53_0/tools/build/v2/tools/gcc.jam 2012-04-25 20:35:55.037224448 -0700
+++ boost_1_53_0-haiku/tools/build/v2/tools/gcc.jam 2013-03-28 00:42:15.700710912 -0700
@@ -1050,6 +1050,10 @@
case beos :
{
# BeOS has no threading options, so do not set anything here.
+ }
+ case haiku :
+ {
+ option = ;
}
case *bsd :
{
@@ -1067,7 +1071,7 @@
}
case * :
{
- option = -pthread ;
+ option = -pthreads ;
libs = rt ;
}
diff --git a/tools/build/v2/tools/gcc.jam b/tools/build/v2/tools/gcc.jam
index ef90f05..2de76cf 100644
--- a/tools/build/v2/tools/gcc.jam
+++ b/tools/build/v2/tools/gcc.jam
@@ -1029,10 +1029,11 @@ rule setup-threading ( targets * : sources * : properties * )
case cygwin : option = -mthreads ;
case solaris : option = -pthreads ; libs = rt ;
case beos : # No threading options.
+ case haiku : option = ;
case *bsd : option = -pthread ; # There is no -lrt on BSD.
case sgi : # gcc on IRIX does not support multi-threading.
case darwin : # No threading options.
- case * : option = -pthread ; libs = rt ;
+ case * : option = -pthreads ; libs = rt ;
}
diff -urN boost_1_53_0/tools/build/v2/tools/gcc.py boost_1_53_0-haiku/tools/build/v2/tools/gcc.py
--- boost_1_53_0/tools/build/v2/tools/gcc.py 2012-04-25 20:35:55.037224448 -0700
+++ boost_1_53_0-haiku/tools/build/v2/tools/gcc.py 2013-03-28 00:42:26.814219264 -0700
@@ -675,6 +675,9 @@
if $(option)
diff --git a/tools/build/v2/tools/gcc.py b/tools/build/v2/tools/gcc.py
index c2f3b02..4f60d22 100644
--- a/tools/build/v2/tools/gcc.py
+++ b/tools/build/v2/tools/gcc.py
@@ -677,6 +677,9 @@ elif bjam.variable('UNIX'):
elif host_os_name == 'BeOS':
# BeOS has no threading options, don't set anything here.
pass
@@ -316,10 +336,11 @@ diff -urN boost_1_53_0/tools/build/v2/tools/gcc.py boost_1_53_0-haiku/tools/buil
elif host_os_name.endswith('BSD'):
flags('gcc', 'OPTIONS', ['<threading>multi'], ['-pthread'])
# there is no -lrt on BSD
diff -urN boost_1_53_0/tools/build/v2/tools/python.jam boost_1_53_0-haiku/tools/build/v2/tools/python.jam
--- boost_1_53_0/tools/build/v2/tools/python.jam 2012-04-25 20:35:55.041156608 -0700
+++ boost_1_53_0-haiku/tools/build/v2/tools/python.jam 2013-03-28 00:42:37.560463872 -0700
@@ -648,13 +648,14 @@
diff --git a/tools/build/v2/tools/python.jam b/tools/build/v2/tools/python.jam
index d48bb78..070f5d2 100644
--- a/tools/build/v2/tools/python.jam
+++ b/tools/build/v2/tools/python.jam
@@ -639,13 +639,14 @@ local rule system-library-dependencies ( target-os )
case qnx* : return ;
case darwin : return ;
case windows : return ;
@@ -330,8 +351,53 @@ diff -urN boost_1_53_0/tools/build/v2/tools/python.jam boost_1_53_0-haiku/tools/
case aix : return <library>pthread <library>dl ;
- case * : return <library>pthread <library>dl
+ case * : return ; <library>pthread <library>dl
- case * : return <library>pthread <library>dl
+ case * : return ; <library>pthread <library>dl
<toolset>gcc:<library>util <toolset-intel:platform>linux:<library>util ;
}
}
--
1.8.3.4
From 0d11043b05a45a1bc8091387ba45f1fe41fe2e55 Mon Sep 17 00:00:00 2001
From: Scott McCreary <scottmc2@gmail.com>
Date: Sun, 22 Dec 2013 10:01:23 -0800
Subject: applying patch type_traits.patch
diff --git a/boost/config/platform/haiku.hpp b/boost/config/platform/haiku.hpp
index 1b15c7e..9a3becd 100644
--- a/boost/config/platform/haiku.hpp
+++ b/boost/config/platform/haiku.hpp
@@ -9,18 +9,26 @@
#define BOOST_PLATFORM "Haiku"
-#define BOOST_NO_INTRINSIC_WCHAR_T
#define BOOST_HAS_UNISTD_H
+#define GLIBC_HAVE_LONG_LONG
+#define BOOST_HAS_STDINT_H
+#define BOOST_HASH_NO_EXTENSIONS
#define BOOST_HAS_BETHREADS
#ifndef BOOST_DISABLE_THREADS
# define BOOST_HAS_THREADS
#endif
+#define BOOST_NO_CXX11_HDR_TYPE_TRAITS
+#define BOOST_NO_CXX11_ATOMIC_SMART_PTR
+#define BOOST_NO_CXX11_STATIC_ASSERT
+#define BOOST_NO_CXX11_VARIADIC_MACROS
//
// thread API's not auto detected:
//
+#define BOOST_HAS_SCHED_YIELD
+#define BOOST_HAS_PTHREAD_YIELD
#define BOOST_HAS_GETTIMEOFDAY
// boilerplate code:
--
1.8.3.4

View File

@@ -11,19 +11,23 @@ COPYRIGHT="2004 Sharif FarsiWeb, Inc
1999,2000 Dov Grobgeld"
ARCHITECTURES="x86_gcc2 x86"
SECONDARY_ARCHITECTURES="x86_gcc2 x86"
PROVIDES="
fribidi = $portVersion
cmd:fribidi = 0.19.5 compat >= 0.19
lib:libfribidi = 0.3.4 compat >= 0
fribidi$secondaryArchSuffix = $portVersion
cmd:fribidi$secondaryArchSuffix = 0.19.5 compat >= 0.19
lib:libfribidi$secondaryArchSuffix = 0.3.4 compat >= 0
"
REQUIRES="
haiku$secondaryArchSuffix >= $haikuVersion
"
BUILD_REQUIRES="
"
BUILD_PREREQUIRES="
haiku${secondaryArchSuffix}_devel >= $haikuVersion
"
BUILD_PREREQUIRES="
cmd:aclocal
cmd:autoconf
cmd:automake
@@ -32,13 +36,14 @@ BUILD_PREREQUIRES="
cmd:libtoolize
cmd:make
"
PATCH()
{
sed -i 's/PKG_CHECK_MODULES(GLIB,$GLIB_PACKAGE >= $GLIB_MINVERSION/#/' configure.ac
sed -i 's/FRIBIDI_USE_GLIB=1/FRIBIDI_USE_GLIB=0/' configure.ac
sed -i 's/FRIBIDI_USE_GLIB=0)/#/' configure.ac
}
BUILD()
{
libtoolize --force --copy --install
@@ -70,10 +75,11 @@ TEST()
# ----- devel package -------------------------------------------------------
PROVIDES_devel="
fribidi_devel = $portVersion
devel:libfribidi = 0.3.4 compat >= 0
devel:fribidi = 0.19.5 compat >= 0.19
fribidi${secondaryArchSuffix}_devel = $portVersion
devel:libfribidi$secondaryArchSuffix = 0.3.4 compat >= 0
devel:fribidi$secondaryArchSuffix = 0.19.5 compat >= 0.19
"
REQUIRES_devel="
fribidi == $portVersion base
fribidi$secondaryArchSuffix == $portVersion base
"

View File

@@ -0,0 +1,47 @@
DESCRIPTION="Gnulib is a source code library that provides basic functionality to programs and libraries.
Many software packages make use of Gnulib to avoid reinventing the portability wheel.
Gnulib is intended to be the canonical source for most of the important “portability” and/or common files for software projects.
These are files intended to be shared at the source level; Gnulib is not a typical library meant to be installed and linked against. Thus, unlike most projects, Gnulib does not normally generate a source tarball distribution; instead, developers grab modules directly from the source repository."
SUMMARY="Gnulib is a library of common routines intended to be shared at the source level"
HOMEPAGE="http://www.gnu.org/software/gnulib"
SRC_URI="git+git://git.savannah.gnu.org/gnulib.git"
REVISION="1"
ARCHITECTURES="x86_gcc2 ?x86 ?x86_64"
SECONDARY_ARCHITECTURES="x86_gcc2 ?x86"
LICENSE="GNULIB"
COPYRIGHT="1985-2013 Free Software Foundation."
PROVIDES="
gnulib = $portVersion
cmd:gnulib_tool$secondaryArchSuffix = $portVersion
"
REQUIRES="
haiku >= $haikuVersion
"
BUILD_REQUIRES="" # No build, no requirements
BUILD_PREREQUIRES="" # No build, no requirements
BUILD()
{
# Nothing to build
exit 0
}
INSTALL()
{
# Try to install gnulib-tool
mkdir -p $dataDir/gnulib $binDir
cp gnulib-tool $dataDir/gnulib/gnulib_tool # Fix binary name in help
cp -R check-copyright check-module posix-modules build-aux config doc lib m4 modules tests top $dataDir/gnulib
ln -s $dataDir/gnulib/gnulib_tool $binDir/gnulib_tool
}
TEST()
{
make check
}

View File

@@ -1,24 +0,0 @@
DESCRIPTION="Gnulib is a library of common routines intended to be shared at the source level"
HOMEPAGE="http://www.gnu.org/software/gnulib"
SRC_URI="git+git://git.savannah.gnu.org/gnulib.git"
REVISION="1"
STATUS_HAIKU="stable"
DEPEND=""
#CHECKSUM_MD5=""
BUILD()
{
echo "gnulib isn't meant to be built."
}
INSTALL()
{
echo "gnulib isn't meant to be installed."
}
TEST()
{
make check
}
LICENSE="GNULIB"
COPYRIGHT="1985-2011 Free Software Foundation."

View File

@@ -4,7 +4,7 @@ HOMEPAGE="http://sourceforge.net/projects/dragonmemory/"
SRC_URI="http://cznic.dl.sourceforge.net/project/dragonmemory/DragonMemory-source.tgz"
SRC_URI2="http://heanet.dl.sourceforge.net/project/dragonmemory/DragonMemory-source.tgz"
REVISION="1"
ARCHITECTURES="x86_gcc2 ?x86 ?x86_64"
ARCHITECTURES="!x86_gcc2 !x86 !x86_64"
SOURCE_DIR="DragonMemory"
PROVIDES="

View File

@@ -1,33 +0,0 @@
--- ../configure 2010-05-09 16:25:03.000524288 +0000
+++ configure-new 2013-12-14 00:36:47.137887744 +0000
@@ -232,7 +232,7 @@
Haiku|BeOS)
check_sdl
check_sdl_mixer
- [ -z "$PREFIX" ] && PREFIX="/boot/apps/rezerwar"
+ [ -z "$PREFIX" ] && PREFIX="data"
[ -z "$TARGET" ] && TARGET="$PREFIX"
TARGET_BIN="$TARGET"
TARGET_DOC="$TARGET"
--- ../src/main.c 2010-05-09 16:25:03.002097152 +0000
+++ main-new.c 2013-12-13 23:59:59.994312192 +0000
@@ -32,7 +32,8 @@
#endif
#include "SDL.h"
-
+#include <unistd.h>
+#include <libgen.h>
#include "rezerwar.h"
#include "config.h"
@@ -231,7 +232,8 @@
bool loop = true;
char *path;
SDL_Joystick *js;
-
+ // For tracker
+ chdir(dirname(av[0]));
/* Version number only */
if (has_flag(ac, av, "-v")) {
printf("%s\n", VERSION);

View File

@@ -0,0 +1,68 @@
From 4daa17a279a72f67e7ca9414e3be6ef6d95c21ad Mon Sep 17 00:00:00 2001
From: Chris Roberts <cpr420@gmail.com>
Date: Sun, 22 Dec 2013 19:53:37 -0700
Subject: applying patch rezerwar-0.4.2.patch
diff --git a/configure b/configure
index 7933d69..623bd32 100755
--- a/configure
+++ b/configure
@@ -232,7 +232,7 @@ Debug)
Haiku|BeOS)
check_sdl
check_sdl_mixer
- [ -z "$PREFIX" ] && PREFIX="/boot/apps/rezerwar"
+ [ -z "$PREFIX" ] && PREFIX="data"
[ -z "$TARGET" ] && TARGET="$PREFIX"
TARGET_BIN="$TARGET"
TARGET_DOC="$TARGET"
diff --git a/src/main.c b/src/main.c
index ffc8a06..3132672 100644
--- a/src/main.c
+++ b/src/main.c
@@ -32,7 +32,8 @@
#endif
#include "SDL.h"
-
+#include <unistd.h>
+#include <libgen.h>
#include "rezerwar.h"
#include "config.h"
@@ -231,7 +232,8 @@ main(int ac, char **av)
bool loop = true;
char *path;
SDL_Joystick *js;
-
+ // For tracker
+ chdir(dirname(av[0]));
/* Version number only */
if (has_flag(ac, av, "-v")) {
printf("%s\n", VERSION);
--
1.8.3.4
From 8fcb551ba8ea30777bf83db46a163c24f3308a06 Mon Sep 17 00:00:00 2001
From: Chris Roberts <cpr420@gmail.com>
Date: Sun, 22 Dec 2013 19:54:31 -0700
Subject: Enable sound fx
diff --git a/configure b/configure
index 623bd32..10584ec 100755
--- a/configure
+++ b/configure
@@ -239,7 +239,6 @@ Haiku|BeOS)
TARGET_DATA="$TARGET"
CFG_DATAPATH="$TARGET"
CFG_CFGPATH=".rezerwar"
- CFG_NOSOUND=1
MK_EXTRAOBJS="strsep.o"
;;
Win32|MINGW32*)
--
1.8.3.4

View File

@@ -35,13 +35,11 @@ BUILD_PREREQUIRES="
cmd:sdl_config$secondaryArchSuffix
"
PATCHES="
rezerwar-0.4.2.patch
"
PATCHES="rezerwar-0.4.2.patchset"
BUILD()
{
configure
./configure
make
}
@@ -53,4 +51,4 @@ INSTALL()
cp src/rezerwar $appsDir/rezerwar/rezerwar
addAppDeskbarSymlink $appsDir/rezerwar/rezerwar "Rezerwar"
}
}

View File

@@ -0,0 +1,45 @@
SUMMARY="Save image files as ASCII text art"
DESCRIPTION="
The AalibTranslator for Haiku allows you to save image files as
ASCII text art.
"
HOMEPAGE="https://github.com/noryb009/AalibTranslator/"
SRC_URI="git://github.com/noryb009/AalibTranslator.git#e69df6765106af986454611fa2c960e0ecdb1562"
LICENSE="MIT"
COPYRIGHT="2013 Luke (noryb009)"
REVISION="1"
ARCHITECTURES="x86_gcc2 ?x86 ?x86_64"
PROVIDES="
aalibtranslator = $portVersion
app:aalibtranslator = $portVersion
"
REQUIRES="
haiku >= $haikuVersion
lib:libaa
"
BUILD_REQUIRES="
haiku_devel >= $haikuVersion
devel:libaa
"
BUILD_PREREQUIRES="
cmd:gcc
makefile_engine
cmd:make
cmd:mkdepend
"
BUILD()
{
make \
BUILDHOME=`finddir B_SYSTEM_DEVELOP_DIRECTORY` \
TARGET_DIR=.
}
INSTALL()
{
mkdir -p $addOnsDir/Translators
cp AALIBTranslator $addOnsDir/Translators
}

View File

@@ -6,12 +6,12 @@ DESCRIPTION="
"
HOMEPAGE="http://blogpositive.puckipedia.com"
SRC_URI="git://github.com/puckipedia/BlogPositive.git#tags/v0.1.0"
REVISION="1"
REVISION="2"
LICENSE="MIT"
COPYRIGHT="2013 :Puck Meerburg"
ARCHITECTURES="x86 x86_gcc2 ?x86_64"
ARCHITECTURES="x86 x86_gcc2 x86_64"
PROVIDES="
blogpositive = $portVersion

View File

@@ -0,0 +1,52 @@
SUMMARY="The one blog app to rule them all!"
DESCRIPTION="
Want to blog, but WebPositive isn't quick enough?
Now you can use the new blog app: BlogPositive!
It can connect to Wordpress and LiveJournal blogs for now.
"
HOMEPAGE="http://blogpositive.puckipedia.com"
SRC_URI="git://github.com/puckipedia/BlogPositive.git#tags/v0.2.0"
REVISION="1"
LICENSE="MIT"
COPYRIGHT="2013 :Puck Meerburg"
ARCHITECTURES="x86 x86_gcc2 x86_64"
PROVIDES="
blogpositive = $portVersion
app:blogpositive = $portVersion
"
REQUIRES="
lib:libcurl
lib:libz
haiku >= $haikuVersion
"
BUILD_PREREQUIRES="
makefile_engine
cmd:g++
cmd:xres
cmd:mkdepend
"
BUILD_REQUIRES="
devel:libcurl
devel:libz
haiku_devel >= $haikuVersion
"
USER_SETTINGS_FILES="
settings/BlogPositive directory
"
BUILD()
{
make
make bindcatalogs
}
INSTALL()
{
make install INSTALL_DIR=$appsDir
addAppDeskbarSymlink $appsDir/BlogPositive
}

View File

@@ -0,0 +1,46 @@
DESCRIPTION="Cherry Blossom is a 100% native application. Cherry Blossom uses Haiku specific APIs for handling media, so if Haiku can play your media files, then Cherry Blossom will also be able to play your files."
SUMMARY="Cherry Blossom is media player for the Haiku Operating System."
HOMEPAGE="http://gitorious.org/cherry-blossom/"
SRC_URI="git+http://gitorious.org/cherry-blossom/cherry-blossom.git"
REVISION="1"
ARCHITECTURES="x86_gcc2 ?x86 ?x86_64"
LICENSE="MIT"
COPYRIGHT="2010 Bryce Groff"
PROVIDES="
cherry_blosom = $portVersion
app:cherry_blosom = $portVersion
"
REQUIRES="
haiku >= $haikuVersion
"
BUILD_REQUIRES="
haiku_devel >= $haikuVersion
taglib_devel
"
BUILD_PREREQUIRES="
makefile_engine
cmd:gcc
cmd:make
cmd:mkdepend
"
PATCHES="cherry_blossom-1.0.patch"
BUILD()
{
make OBJ_DIR=objects \
BUILDHOME=`finddir B_SYSTEM_DEVELOP_DIRECTORY`
}
INSTALL()
{
mkdir -p ${appsDir}
cp -a objects/Cherry_Blossom $appsDir
addAppDeskbarSymlink ${appsDir}/Cherry_Blossom
}

View File

@@ -0,0 +1,36 @@
diff --git a/makefile b/makefile
new file mode 100644
index 0000000..d134de0
--- /dev/null
+++ b/makefile
@@ -0,0 +1,30 @@
+NAME= Cherry_Blossom
+
+TYPE= APP
+
+SRCS= interface/DrawingTidbits.cpp \
+interface/PositionToolTip.cpp \
+interface/TransportButton.cpp \
+interface/PeakView.cpp \
+interface/SeekSlider.cpp \
+interface/VolumeSlider.cpp \
+views/AlbumView.cpp \
+views/ControlView.cpp \
+views/MusicView.cpp \
+views/SearchView.cpp \
+views/ArtistView.cpp \
+views/GenreView.cpp \
+views/PlayListView.cpp \
+views/SongView.cpp \
+CherryBlossom.cpp \
+CherryBlossomWindow.cpp \
+
+SYSTEM_INCLUDE_PATHS = /boot/system/develop/headers/private/interface/ \
+ /boot/system/develop/headers/private/shared/
+
+
+LIBS= be locale tag
+
+APP_VERSION = 1.0
+
+include $(BUILDHOME)/etc/makefile-engine

View File

@@ -0,0 +1,47 @@
SUMMARY="A tool to retro-fit looks and layout of existing folders"
DESCRIPTION="If you want your folders to have a certain icon, set of columns, backgrounds, pergaps even some default content,
FolderShaper lets you chnage all that in a snap. Create a perfect folder, add it as a foldershaper template, then drop your
folders on FolderShaper and select the template from the pop-up menu."
HOMEPAGE="https://github.com/HaikuArchives/FolderShaper"
SRC_URI="git://github.com/HaikuArchives/FolderShaper.git"
REVISION="1"
LICENSE="Public Domain"
COPYRIGHT="2005 Jonas Sundström"
ARCHITECTURES="x86 x86_gcc2"
PROVIDES="
foldershaper = $portVersion
app:foldershaper = $portVersion
addon:foldershaper = $portVersion
"
REQUIRES="
haiku >= $haikuVersion
"
BUILD_REQUIRES="
haiku_devel >= $haikuVersion
"
BUILD_PREREQUIRES="
makefile_engine
cmd:gcc
cmd:make
cmd:mkdepend
"
BUILD()
{
cd Source
make
}
INSTALL()
{
cd Source
make install INSTALL_DIR=$appsDir/FolderShaper
mkdir -p $addOnsDir/Tracker
ln -s $appsDir/FolderShaper/FolderShaper $addOnsDir/Tracker
addAppDeskbarSymlink $appsDir/FolderShaper/FolderShaper "FolderShaper"
cp ../README $appsDir/FolderShaper/README
}

View File

@@ -0,0 +1,147 @@
From 24da7eed9c8cd793d4f873100584b70ea11d4458 Mon Sep 17 00:00:00 2001
From: Luke <noryb009@gmail.com>
Date: Sat, 7 Dec 2013 13:04:48 +0000
Subject: [PATCH] Add makefile
---
src/makefile | 128 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 128 insertions(+)
create mode 100644 src/makefile
diff --git a/src/makefile b/src/makefile
new file mode 100644
index 0000000..c6df5ad
--- /dev/null
+++ b/src/makefile
@@ -0,0 +1,128 @@
+## BeOS Generic Makefile v2.3 ##
+
+## Fill in this file to specify the project being created, and the referenced
+## makefile-engine will do all of the hard work for you. This handles both
+## Intel and PowerPC builds of the BeOS and Haiku.
+
+## Application Specific Settings ---------------------------------------------
+
+# specify the name of the binary
+NAME=Randomizer
+
+# specify the type of binary
+# APP: Application
+# SHARED: Shared library or add-on
+# STATIC: Static library archive
+# DRIVER: Kernel Driver
+TYPE=APP
+
+# add support for new Pe and Eddie features
+# to fill in generic makefile
+
+#%{
+# @src->@
+
+# specify the source files to use
+# full paths or paths relative to the makefile can be included
+# all files, regardless of directory, will have their object
+# files created in the common object directory.
+# Note that this means this makefile will not work correctly
+# if two source files with the same name (source.c or source.cpp)
+# are included from different directories. Also note that spaces
+# in folder names do not work well with this makefile.
+SRCS=App.cpp AppView.cpp AppWindow.cpp Generator.cpp main.cpp \
+RandoBox.cpp RandoMenuBar.cpp RandoTextView.cpp
+
+# specify the resource definition files to use
+# full path or a relative path to the resource file can be used.
+RDEFS=
+
+# specify the resource files to use.
+# full path or a relative path to the resource file can be used.
+# both RDEFS and RSRCS can be defined in the same makefile.
+RSRCS=Randomizer.rsrc
+
+# @<-src@
+#%}
+
+# end support for Pe and Eddie
+
+# specify additional libraries to link against
+# there are two acceptable forms of library specifications
+# - if your library follows the naming pattern of:
+# libXXX.so or libXXX.a you can simply specify XXX
+# library: libbe.so entry: be
+#
+# - if your library does not follow the standard library
+# naming scheme you need to specify the path to the library
+# and it's name
+# library: my_lib.a entry: my_lib.a or path/my_lib.a
+LIBS=be $(STDCPPLIBS)
+
+# specify additional paths to directories following the standard
+# libXXX.so or libXXX.a naming scheme. You can specify full paths
+# or paths relative to the makefile. The paths included may not
+# be recursive, so include all of the paths where libraries can
+# be found. Directories where source files are found are
+# automatically included.
+LIBPATHS=
+
+# additional paths to look for system headers
+# thes use the form: #include <header>
+# source file directories are NOT auto-included here
+SYSTEM_INCLUDE_PATHS =
+
+# additional paths to look for local headers
+# thes use the form: #include "header"
+# source file directories are automatically included
+LOCAL_INCLUDE_PATHS =
+
+# specify the level of optimization that you desire
+# NONE, SOME, FULL
+OPTIMIZE=
+
+# specify any preprocessor symbols to be defined. The symbols will not
+# have their values set automatically; you must supply the value (if any)
+# to use. For example, setting DEFINES to "DEBUG=1" will cause the
+# compiler option "-DDEBUG=1" to be used. Setting DEFINES to "DEBUG"
+# would pass "-DDEBUG" on the compiler's command line.
+DEFINES=
+
+# specify special warning levels
+# if unspecified default warnings will be used
+# NONE = supress all warnings
+# ALL = enable all warnings
+WARNINGS =
+
+# specify whether image symbols will be created
+# so that stack crawls in the debugger are meaningful
+# if TRUE symbols will be created
+SYMBOLS =
+
+# specify debug settings
+# if TRUE will allow application to be run from a source-level
+# debugger. Note that this will disable all optimzation.
+DEBUGGER =
+
+# specify additional compiler flags for all files
+COMPILER_FLAGS =
+
+# specify additional linker flags
+LINKER_FLAGS =
+
+# specify the version of this particular item
+# (for example, -app 3 4 0 d 0 -short 340 -long "340 "`echo -n -e '\302\251'`"1999 GNU GPL")
+# This may also be specified in a resource.
+APP_VERSION =
+
+# (for TYPE == DRIVER only) Specify desired location of driver in the /dev
+# hierarchy. Used by the driverinstall rule. E.g., DRIVER_PATH = video/usb will
+# instruct the driverinstall rule to place a symlink to your driver's binary in
+# ~/add-ons/kernel/drivers/dev/video/usb, so that your driver will appear at
+# /dev/video/usb when loaded. Default is "misc".
+DRIVER_PATH =
+
+TARGET_DIR = .
+
+## include the makefile-engine
+include $(BUILDHOME)/etc/makefile-engine
--
1.8.3.4

View File

@@ -0,0 +1,52 @@
SUMMARY="A random symbol sequence generator"
DESCRIPTION="
Randomizer is a random symbol sequence generator. You can create
sequences of any given length, and control what characters are used.
This program can be used for many purposes, such as for generating
random passwords or random numbers.
"
HOMEPAGE="https://code.google.com/p/randomizer/"
SRC_URI="svn+http://randomizer.googlecode.com/svn/trunk/@r12"
LICENSE="MIT"
COPYRIGHT="2005-2009 Sergey S. Kazenyuk"
REVISION="1"
ARCHITECTURES="x86_gcc2 ?x86 ?x86_64"
PROVIDES="
randomizer = $portVersion
app:randomizer = $portVersion
"
REQUIRES="
haiku >= $haikuVersion
"
BUILD_REQUIRES="
haiku_devel >= $haikuVersion
"
BUILD_PREREQUIRES="
cmd:gcc
makefile_engine
cmd:make
cmd:mkdepend
"
PATCHES="
randomizer-1.0.0b1.patch
"
SRC_FILENAME="download"
BUILD()
{
cd src
make BUILDHOME=`finddir B_SYSTEM_DEVELOP_DIRECTORY`
}
INSTALL()
{
mkdir -p $appsDir
cp src/Randomizer $appsDir
addAppDeskbarSymlink $appsDir/Randomizer
}

View File

@@ -0,0 +1,53 @@
SUMMARY="A PNG optimizer, making PNG files smaller"
DESCRIPTION="
OptiPNG is a PNG optimizer, recompressing PNG files so they
become smaller, without losing any information. Additionally,
OptiPNG can convert other image formats, such as BMP,
GIF, PNM and TIFF, to PNG files.
"
HOMEPAGE="http://optipng.sourceforge.net/"
SRC_URI="http://prdownloads.sourceforge.net/optipng/optipng-0.7.4.tar.gz"
CHECKSUM_MD5="8853d89aaf859065e95dcdf98b6bed73"
LICENSE="Zlib"
COPYRIGHT="2001-2012 Cosmin Truta"
REVISION="2"
ARCHITECTURES="x86_gcc2 x86 ?x86_64"
PROVIDES="
optipng$secondaryArchSuffix = $portVersion
cmd:optipng$secondaryArchSuffix = $portVersion
"
REQUIRES="
haiku$secondaryArchSuffix >= $haikuVersion
lib:libpng
lib:libz
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel >= $haikuVersion
devel:libpng
devel:libz
"
BUILD_PREREQUIRES="
cmd:ar
cmd:gcc$secondaryArchSuffix
cmd:make
cmd:ranlib
"
PATCHES="optipng-0.7.4.patchset"
BUILD()
{
./configure -bindir=$binDir -mandir=$manDir \
-with-system-libpng \
-with-system-zlib
make
}
INSTALL()
{
make install
}

View File

@@ -0,0 +1,45 @@
From 9aeb37585d609791981ff00956a99d54a9bf446e Mon Sep 17 00:00:00 2001
From: Chris Roberts <cpr420@gmail.com>
Date: Mon, 23 Dec 2013 12:13:23 -0700
Subject: applying patch optipng-0.7.4.patch
diff --git a/configure b/configure
index 5437b74..f7087fe 100755
--- a/configure
+++ b/configure
@@ -305,7 +305,7 @@ sed_config="
s#@ARFLAGS@#${ARFLAGS-cru}#g
s#@RANLIB@#${RANLIB-ranlib}#g
s#@LIBS@#${LIBS-}#g
- s#@LIBM@#${LIBM--lm}#g
+ s#@LIBM@#${LIBM-}#g
s#@LIBZ@#${LIBZ--lz}#g
s#@LIBPNG@#${LIBPNG--lpng}#g
s#@DIFF@#${DIFF-diff -b -u}#g
--
1.8.3.4
From 02727f980a432201225b91c51f7f76fad3d12cca Mon Sep 17 00:00:00 2001
From: Chris Roberts <cpr420@gmail.com>
Date: Mon, 23 Dec 2013 12:16:17 -0700
Subject: Remove Wextra from CFLAGS to make gcc2 happy
diff --git a/configure b/configure
index f7087fe..f3bca47 100755
--- a/configure
+++ b/configure
@@ -192,7 +192,7 @@ rm -f $test.c $test.o
if test $gccish -ne 0
then
CC="${CC-$cc}"
- CFLAGS="${CFLAGS--O2 -Wall -Wextra}"
+ CFLAGS="${CFLAGS--O2 -Wall}"
else
CC="${CC-cc}"
CFLAGS="${CFLAGS--O}"
--
1.8.3.4

View File

@@ -5,7 +5,7 @@ SRC_URI="http://sourceforge.net/projects/mikmod/files/libmikmod/3.3.3/libmikmod-
CHECKSUM_MD5="0e0f9bce8f8e598ca292b41e0ae385c8"
LICENSE="GNU LGPL v2.1"
COPYRIGHT="1998-2004 Jean-Paul Mikkers, Jake Stine, Frank Loemker, Steve McIntyre, Peter Amstutz, and Miodrag Vallat."
REVISION="1"
REVISION="2"
ARCHITECTURES="x86_gcc2 x86 x86_64"
SECONDARY_ARCHITECTURES="x86_gcc2 x86 x86_64"
@@ -69,5 +69,5 @@ PROVIDES_devel="
"
REQUIRES_devel="
libmikmod == $portVersion base
libmikmod$secondaryArchSuffix == $portVersion base
"

View File

@@ -3,7 +3,7 @@ DESCRIPTION="Simple Direct Media Layer is a cross-platform development library d
HOMEPAGE="http://www.libsdl.org/"
SRC_URI="http://www.libsdl.org/release/SDL-1.2.15.tar.gz"
CHECKSUM_MD5="9d96df8417572a2afb781a7c4c811a85"
REVISION="1"
REVISION="2"
LICENSE="GNU LGPL v2.1"
COPYRIGHT="1997-2012 Sam Lantinga"

View File

@@ -1,4 +1,4 @@
From db1b7894554a9d3460483d278b8dd50595e43135 Mon Sep 17 00:00:00 2001
From 59cfb52a4c0564e1713c37be2ae6026f9e4e76a9 Mon Sep 17 00:00:00 2001
From: Adrien Destugues <pulkomandy@pulkomandy.tk>
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 4243b5c80de7a51abb05d6f4eb5a82984607024e Mon Sep 17 00:00:00 2001
From b2657c374826ed213072b5e80263f59a42e76faf Mon Sep 17 00:00:00 2001
From: Adrien Destugues <pulkomandy@pulkomandy.tk>
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 03c94f6b8dbaec508da9ec16fecbb3411f70c0c7 Mon Sep 17 00:00:00 2001
From 847264a916bb4b9e3bfa1ff8217beed67b37b8a4 Mon Sep 17 00:00:00 2001
From: Adrien Destugues <pulkomandy@pulkomandy.tk>
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 b0294206194d97e8bb8a69a214e4c8bd3311ed03 Mon Sep 17 00:00:00 2001
From 6a8dccbefe9522f65a07177441a93251cfcc8d9f Mon Sep 17 00:00:00 2001
From: Adrien Destugues <pulkomandy@pulkomandy.tk>
Date: Sat, 23 Nov 2013 11:59:00 +0100
Subject: Actually fix the sample vs bytes problem in audio driver.
@@ -200,3 +200,26 @@ index 7faf571..300bf03 100644
--
1.8.3.4
From 112569083122d8d14b2571aaf2b73483ce3738db Mon Sep 17 00:00:00 2001
From: Chris Roberts <cpr420@gmail.com>
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

View File

@@ -1,11 +1,11 @@
SUMMARY="sdl_mixer is a simple multi-channel audio mixer library. It supports any number of simultaneously playing channels of 16 bit stereo audio, plus a single channel of music, mixed by the popular FLAC, MikMoD MOD, Timidity MIDI, Ogg Vorbis, and SMPEG MP3 libraries."
DESCRIPTION="Simple Direct Layer Mixer Library"
SUMMARY="Simple Direct Layer Mixer Library"
DESCRIPTION="sdl_mixer is a simple multi-channel audio mixer library. It supports any number of simultaneously playing channels of 16 bit stereo audio, plus a single channel of music, mixed by the popular FLAC, MikMoD MOD, Timidity MIDI, Ogg Vorbis, and SMPEG MP3 libraries."
HOMEPAGE="http://www.libsdl.org/projects/SDL_mixer/"
SRC_URI="http://www.libsdl.org/projects/SDL_mixer/release/SDL_mixer-1.2.12.tar.gz"
CHECKSUM_MD5="e03ff73d77a55e3572ad0217131dc4a1"
LICENSE="Zlib"
COPYRIGHT="1997-2012 Sam Lantinga"
REVISION="1"
REVISION="2"
ARCHITECTURES="x86_gcc2 x86 x86_64"
SECONDARY_ARCHITECTURES="x86_gcc2 x86"
@@ -13,7 +13,9 @@ SECONDARY_ARCHITECTURES="x86_gcc2 x86"
PROVIDES="
sdl_mixer$secondaryArchSuffix = $portVersion compat >= 1.2
lib:libSDL_mixer$secondaryArchSuffix = 1.2_0.12.0 compat >= 1.2_0
lib:libSDL_mixer_1.2$secondaryArchSuffix = 0.12.0 compat >= 0
lib:libSDL_mixer_1.2$secondaryArchSuffix = 0.12.0 compat >= 0
cmd:playwave$secondaryArchSuffix
cmd:playmus$secondaryArchSuffix
"
REQUIRES="
@@ -62,8 +64,9 @@ BUILD()
libtoolize --force --copy --install
aclocal --force --install -I acinclude
autoconf
runConfigure ./configure
make
runConfigure ./configure \
SMPEG_CONFIG=smpeg_config$secondaryArchSuffix
make $jobArgs
}
INSTALL()

View File

@@ -60,7 +60,8 @@ INSTALL()
{
make install
prepareInstalledDevelLibs libsmpeg
prepareInstalledDevelLibs libsmpeg \
libsmpeg-0.4
fixDevelopLibDirReferences $binDir/smpeg-config
fixPkgconfig

View File

@@ -0,0 +1,61 @@
SUMMARY="Minicom is a menu driven communications program."
DESCRIPTION="
Minicom is a menu driven communications program.
It emulates ANSI and VT102 terminals.
It has a dialing directory and auto zmodem download.
"
HOMEPAGE="https://alioth.debian.org/projects/minicom/"
SRC_URI="https://alioth.debian.org/frs/download.php/file/3869/minicom-2.6.2.tar.gz"
CHECKSUM_MD5="203c56c4b447f45e2301b0cc4e83da3c"
COPYRIGHT="
1991,1992,1993,1994,1995,1996 Miquel van Smoorenburg."
LICENSE="GNU GPL v2"
REVISION="1"
ARCHITECTURES="x86 x86_64"
SECONDARY_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
PROVIDES="
minicom$secondaryArchSuffix = $portVersion
cmd:minicom$secondaryArchSuffix = $portVersion
cmd:xminicom$secondaryArchSuffix = $portVersion
cmd:ascii_xfr$secondaryArchSuffix = $portVersion
cmd:runscript$secondaryArchSuffix = $portVersion
"
REQUIRES="
haiku$secondaryArchSuffix >= $haikuVersion
lib:libiconv$secondaryArchSuffix
lib:libncurses$secondaryArchSuffix
"
BUILD_REQUIRES="
devel:libiconv$secondaryArchSuffix
devel:libncurses$secondaryArchSuffix
"
BUILD_PREREQUIRES="
haiku${secondaryArchSuffix}_devel >= $haikuVersion
cmd:autoconf
cmd:make
cmd:gcc$secondaryArchSuffix
cmd:ld$secondaryArchSuffix
"
BUILD()
{
LOCKDIR=`finddir B_USER_SETTINGS_DIRECTORY`/serial
mkdir -p $LOCKDIR
CFLAGS="-DTIOCM_CAR=TIOCM_CD -lnetwork" runConfigure ./configure \
--enable-lock-dir=$LOCKDIR
make $jobArgs
}
INSTALL()
{
make install
}

View File

@@ -0,0 +1,81 @@
DESCRIPTION="
Rock-solid, full-featured Jabber/XMPP client library, written in clean
ANSI C++
"
SUMMARY="Full-featured Jabber/XMPP client library, written in clean ANSI C++"
HOMEPAGE="http://camaya.net/gloox/"
LICENSE="GNU GPL v2"
COPYRIGHT="2002-2012 Jakob Schröter"
SRC_URI="http://camaya.net/download/gloox-1.0.9.tar.bz2"
CHECKSUM_MD5="48fc9aa5210c2a1ce253751a4d38e19c"
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_gcc2 x86"
PATCHES="gloox-1.0.9.patch"
PROVIDES="
gloox$secondaryArchSuffix = $portVersion
lib:libgloox$secondaryArchSuffix = $portVersion
"
REQUIRES="
haiku$secondaryArchSuffix >= $haikuVersion
lib:libssl$secondaryArchSuffix
lib:libcrypto$secondaryArchSuffix
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel >= $haikuVersion
devel:libssl$secondaryArchSuffix
devel:libcrypto$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:gcc$secondaryArchSuffix
cmd:make
cmd:libtoolize
cmd:aclocal
cmd:autoconf
cmd:automake
"
BUILD()
{
libtoolize --force --copy --install
aclocal
autoconf
automake
runConfigure ./configure
make
}
INSTALL()
{
make install
# prepare development lib links
prepareInstalledDevelLib libgloox
# devel package
packageEntries devel $developDir
}
TEST()
{
make check
}
# ----- devel package -------------------------------------------------------
PROVIDES_devel="
gloox${secondaryArchSuffix}_devel = $portVersion
devel:libgloox$secondaryArchSuffix = $portVersion
"
REQUIRES_devel="
gloox$secondaryArchSuffix == $portVersion base
"

View File

@@ -0,0 +1,90 @@
diff --git a/configure.ac b/configure.ac
index 402c399..20555ba 100644
--- a/configure.ac
+++ b/configure.ac
@@ -7,7 +7,7 @@ AC_CONFIG_SRCDIR(src/gloox.cpp)
AM_INIT_AUTOMAKE(AC_PACKAGE_NAME, AC_PACKAGE_VERSION)
dnl create a config.h file (Automake will add -DHAVE_CONFIG_H)
-AM_CONFIG_HEADER(config.h.unix)
+AC_CONFIG_HEADER(config.h.unix)
AC_SUBST(VERSION)
@@ -326,8 +326,8 @@ AC_MSG_RESULT($getaddrinfo)
dnl Checks for header files.
AC_HEADER_STDC
-AC_CHECK_HEADERS(unistd.h strings.h errno.h arpa/nameser.h)
-AC_CHECK_FUNCS(setsockopt,,[AC_CHECK_LIB(socket,setsockopt)])
+AC_CHECK_HEADERS(unistd.h wchar.h string.h cstring.h strings.h errno.h arpa/nameser.h)
+AC_CHECK_FUNCS(setsockopt,,[AC_CHECK_LIB(network,setsockopt)])
dnl Checks for typedefs, structures, and compiler characteristics.
AC_C_CONST
diff --git a/src/connectiontcpbase.cpp b/src/connectiontcpbase.cpp
index 2da70c0..b28f8e8 100644
--- a/src/connectiontcpbase.cpp
+++ b/src/connectiontcpbase.cpp
@@ -10,7 +10,17 @@
This software is distributed without any warranty.
*/
+#if defined HAVE_STRING_H
+#include <string.h>
+#endif
+
+#if defined HAVE_WCHAR_H
+#include <wchar.h>
+#endif
+#if __GNUC__ > 3
+#include <cstring>
+#endif
#include "gloox.h"
diff --git a/src/connectiontcpserver.cpp b/src/connectiontcpserver.cpp
index 68c8f7b..236ce8e 100644
--- a/src/connectiontcpserver.cpp
+++ b/src/connectiontcpserver.cpp
@@ -10,7 +10,17 @@
This software is distributed without any warranty.
*/
+#if defined HAVE_STRING_H
+#include <string.h>
+#endif
+
+#if defined HAVE_WCHAR_H
+#include <wchar.h>
+#endif
+#if __GNUC__ > 3
+#include <cstring>
+#endif
#include "gloox.h"
diff --git a/src/dns.cpp b/src/dns.cpp
index fd72c57..e03d99a 100644
--- a/src/dns.cpp
+++ b/src/dns.cpp
@@ -10,6 +10,17 @@
This software is distributed without any warranty.
*/
+#if defined HAVE_STRING_H
+#include <string.h>
+#endif
+
+#if defined HAVE_WCHAR_H
+#include <wchar.h>
+#endif
+
+#if __GNUC__ > 3
+#include <cstring>
+#endif
#include "config.h"

View File

@@ -8,9 +8,9 @@ REVISION="1"
CHECKSUM_MD5="40564e1dc390f9844f1711c08b08e391"
ARCHITECTURES="!x86 !x86_64"
if [ $effectiveTargetArchitecture != x86_gcc2 ]; then
ARCHITECTURES="$ARCHITECTURES x86_gcc2"
ARCHITECTURES="$ARCHITECTURES !x86_gcc2"
fi
SECONDARY_ARCHITECTURES="x86"
SECONDARY_ARCHITECTURES="!x86"
PROVIDES="
llvm$secondaryArchSuffix = $portVersion

View File

@@ -7,9 +7,9 @@ DESCRIPTION="Mesa is an open-source implementation of the OpenGL specification.
HOMEPAGE="http://www.mesa3d.org/"
COPYRIGHT="1999-2013 Brian Paul All Rights Reserved."
LICENSE="MIT"
SRC_URI="ftp://ftp.freedesktop.org/pub/mesa/10.0/MesaLib-10.0.0.tar.bz2"
CHECKSUM_MD5="f3fe55d9735bea158bbe97ed9a0da819"
REVISION="2"
SRC_URI="ftp://ftp.freedesktop.org/pub/mesa/10.0.1/MesaLib-10.0.1.tar.bz2"
CHECKSUM_MD5="0a72ca5b36046a658bf6038326ff32ed"
REVISION="4"
ARCHITECTURES="x86 x86_64"
if [ $effectiveTargetArchitecture != x86_gcc2 ]; then
# x86_gcc2 is fine as primary target architecture as long as we're building
@@ -28,6 +28,8 @@ REQUIRES="
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel >= $haikuVersion
"
PATCHES="mesa-10.0.1.patchset"
# We're locked to LLVM 3.2 as 3.3 is broken at the moment on Haiku.
# Mesa should build with any newer LLVM version however.
@@ -35,7 +37,7 @@ BUILD_REQUIRES="
# changing LLVM versions shouldn't introduce any abi issues.
BUILD_PREREQUIRES="
libxml2_python
llvm == 3.2
llvm${secondaryArchSuffix} == 3.2
cmd:bison
cmd:find
cmd:flex
@@ -60,14 +62,11 @@ INSTALL()
{
mesaBuildDir=build/haiku-$effectiveTargetArchitecture
mkdir -p $includeDir/GL
cp include/GL/gl.h $includeDir/GL/
cp include/GL/gl_mangle.h $includeDir/GL/
cp include/GL/glext.h $includeDir/GL/
# libGL.so makes up the core of our OpenGL kit
mkdir -p $libDir
cp $(find $mesaBuildDir -name 'libGL.so') $libDir
mkdir -p $developLibDir
symlinkRelative -s $libDir/libGL.so $developLibDir
# Our rendering add-ons
mkdir -p $addOnsDir/opengl
@@ -76,6 +75,21 @@ INSTALL()
cp $(find $mesaBuildDir -name 'libswpipe.so') \
"$addOnsDir/opengl/Software Pipe"
# OpenGL Kit
mkdir -p $includeDir/os/opengl
cp ./include/HaikuGL/OpenGLKit.h $includeDir/os/
cp ./include/HaikuGL/GLView.h $includeDir/os/opengl/
cp ./include/HaikuGL/GLRenderer.h $includeDir/os/opengl/
# Standard GL headers
mkdir -p $includeDir/GL
cp ./include/GL/gl.h $includeDir/GL/
cp ./include/GL/gl_mangle.h $includeDir/GL/
cp ./include/GL/glext.h $includeDir/GL/
# Create GL symlink in opengl kit
symlinkRelative -s $includeDir/GL $includeDir/os/opengl/GL
# devel package
packageEntries devel \
$developDir

View File

@@ -10,14 +10,14 @@ LICENSE="MIT"
# remember to update SOURCE_DIR as well for the -X revision
SRC_URI="https://github.com/kallisti5/mesa/archive/7.9.2-3.tar.gz"
CHECKSUM_MD5="1f7d846ea2982ffa175c906443aaabd3"
REVISION="1"
REVISION="3"
ARCHITECTURES="x86_gcc2"
if [ $effectiveTargetArchitecture != x86 ]; then
# x86_gcc2 is fine as primary target architecture as long as we're building
# for a different secondary architecture.
ARCHITECTURES="$ARCHITECTURES x86"
fi
SECONDARY_ARCHITECTURES="?x86_gcc2"
SECONDARY_ARCHITECTURES="x86_gcc2"
PROVIDES="
mesa$secondaryArchSuffix = $portVersion compat >= 7.9
@@ -59,6 +59,8 @@ INSTALL()
# libGL.so makes up the core of our OpenGL kit
mkdir -p $libDir
cp $(find ./lib/ -name 'libGL.so') $libDir
mkdir -p $developLibDir
symlinkRelative -s $libDir/libGL.so $developLibDir
# Our rendering add-on
mkdir -p $addOnsDir/opengl
@@ -66,19 +68,19 @@ INSTALL()
"$addOnsDir/opengl/Legacy Software Rasterizer"
# OpenGL Kit
mkdir -p $includeDir/os/opengl/GL
mkdir -p $includeDir/os/opengl
cp ./include/HaikuGL/OpenGLKit.h $includeDir/os/
cp ./include/HaikuGL/GLView.h $includeDir/os/opengl/
cp ./include/HaikuGL/GLRenderer.h $includeDir/os/opengl/
# Standard GL headers
cp ./include/GL/gl.h $includeDir/os/opengl/GL/
cp ./include/GL/gl_mangle.h $includeDir/os/opengl/GL/
cp ./include/GL/glext.h $includeDir/os/opengl/GL/
mkdir -p $includeDir/GL
cp ./include/GL/gl.h $includeDir/GL/
cp ./include/GL/gl_mangle.h $includeDir/GL/
cp ./include/GL/glext.h $includeDir/GL/
# Symlink GL in kit to system GL directory
cd $includeDir
ln -snf os/opengl/GL GL
# Create GL symlink in opengl kit
symlinkRelative -s $includeDir/GL $includeDir/os/opengl/GL
# devel package
packageEntries devel \

View File

@@ -0,0 +1,354 @@
From dfe5d4f383c16208d32c498e2c3e92095422d532 Mon Sep 17 00:00:00 2001
From: Alexander von Gluck IV <kallisti5@unixzen.com>
Date: Sat, 14 Dec 2013 11:46:05 -0600
Subject: [PATCH] Haiku: Add in public GL kit headers
* These make up the base of what C++ GL Haiku
applications use for 3D rendering.
* Not placed in includes/GL to prevent Haiku headers
from getting installed on non-Haiku systems
---
include/HaikuGL/GLRenderer.h | 76 +++++++++++++++++
include/HaikuGL/GLView.h | 193 +++++++++++++++++++++++++++++++++++++++++++
include/HaikuGL/OpenGLKit.h | 10 +++
include/HaikuGL/README | 28 +++++++
4 files changed, 307 insertions(+)
create mode 100644 include/HaikuGL/GLRenderer.h
create mode 100644 include/HaikuGL/GLView.h
create mode 100644 include/HaikuGL/OpenGLKit.h
create mode 100644 include/HaikuGL/README
diff --git a/include/HaikuGL/GLRenderer.h b/include/HaikuGL/GLRenderer.h
new file mode 100644
index 0000000..7ffcc34
--- /dev/null
+++ b/include/HaikuGL/GLRenderer.h
@@ -0,0 +1,76 @@
+/*
+ * Copyright 2006, Philippe Houdoin. All rights reserved.
+ * Distributed under the terms of the MIT License.
+
+ * This header defines BGLRenderer, the base class making up
+ * the Haiku GL renderer add-ons (essentially selfcontained C++
+ * shared libraries that do the actual rendering such as
+ * libswpipe.so and libswrast.so)
+ */
+#ifndef GLRENDERER_H
+#define GLRENDERER_H
+
+
+#include <BeBuild.h>
+#include <GLView.h>
+
+
+class BGLDispatcher;
+class GLRendererRoster;
+
+typedef unsigned long renderer_id;
+
+class BGLRenderer
+{
+ // Private unimplemented copy constructors
+ BGLRenderer(const BGLRenderer &);
+ BGLRenderer & operator=(const BGLRenderer &);
+
+public:
+ BGLRenderer(BGLView *view, ulong bgl_options,
+ BGLDispatcher *dispatcher);
+ virtual ~BGLRenderer();
+
+ void Acquire();
+ void Release();
+
+ virtual void LockGL();
+ virtual void UnlockGL();
+
+ virtual void SwapBuffers(bool VSync = false);
+ virtual void Draw(BRect updateRect);
+ virtual status_t CopyPixelsOut(BPoint source, BBitmap *dest);
+ virtual status_t CopyPixelsIn(BBitmap *source, BPoint dest);
+
+ virtual void FrameResized(float width, float height);
+
+ virtual void DirectConnected(direct_buffer_info *info);
+ virtual void EnableDirectMode(bool enabled);
+
+ inline int32 ReferenceCount() const { return fRefCount; };
+ inline ulong Options() const { return fOptions; };
+ inline BGLView* GLView() { return fView; };
+ inline BGLDispatcher* GLDispatcher() { return fDispatcher; };
+
+private:
+ friend class GLRendererRoster;
+
+ virtual status_t _Reserved_Renderer_0(int32, void *);
+ virtual status_t _Reserved_Renderer_1(int32, void *);
+ virtual status_t _Reserved_Renderer_2(int32, void *);
+ 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?
+ BGLView* fView; // Never forget who is the boss!
+ ulong fOptions; // Keep that tune in memory
+ BGLDispatcher* fDispatcher;// Our personal GL API call dispatcher
+
+ GLRendererRoster* fOwningRoster;
+ renderer_id fID;
+};
+
+extern "C" _EXPORT BGLRenderer* instantiate_gl_renderer(BGLView *view, ulong options, BGLDispatcher *dispatcher);
+
+
+#endif // GLRENDERER_H
diff --git a/include/HaikuGL/GLView.h b/include/HaikuGL/GLView.h
new file mode 100644
index 0000000..b848578
--- /dev/null
+++ b/include/HaikuGL/GLView.h
@@ -0,0 +1,193 @@
+/*
+ * Copyright 2008-2013, Haiku, Inc. All Rights Reserved.
+ * Distributed under the terms of the MIT License.
+ *
+ * This header defines BGLView, the base class making up
+ * the Haiku GL Kit.
+ *
+ */
+#ifndef BGLVIEW_H
+#define BGLVIEW_H
+
+
+#include <GL/gl.h>
+
+#define BGL_RGB 0
+#define BGL_INDEX 1
+#define BGL_SINGLE 0
+#define BGL_DOUBLE 2
+#define BGL_DIRECT 0
+#define BGL_INDIRECT 4
+#define BGL_ACCUM 8
+#define BGL_ALPHA 16
+#define BGL_DEPTH 32
+#define BGL_OVERLAY 64
+#define BGL_UNDERLAY 128
+#define BGL_STENCIL 512
+
+#ifdef __cplusplus
+
+#include <AppKit.h>
+#include <Bitmap.h>
+#include <DirectWindow.h>
+#include <View.h>
+#include <Window.h>
+#include <WindowScreen.h>
+
+
+struct glview_direct_info;
+class BGLRenderer;
+class GLRendererRoster;
+
+class BGLView : public BView {
+public:
+ BGLView(BRect rect, const char* name,
+ ulong resizingMode, ulong mode,
+ ulong options);
+ virtual ~BGLView();
+
+ void LockGL();
+ void UnlockGL();
+ void SwapBuffers();
+ void SwapBuffers(bool vSync);
+
+ BView* EmbeddedView(); // deprecated, returns NULL
+ void* GetGLProcAddress(const char* procName);
+
+ status_t CopyPixelsOut(BPoint source, BBitmap *dest);
+ status_t CopyPixelsIn(BBitmap *source, BPoint dest);
+
+ // Mesa's GLenum is uint where Be's ones was ulong!
+ virtual void ErrorCallback(unsigned long errorCode);
+
+ virtual void Draw(BRect updateRect);
+ virtual void AttachedToWindow();
+ virtual void AllAttached();
+ virtual void DetachedFromWindow();
+ virtual void AllDetached();
+
+ virtual void FrameResized(float newWidth, float newHeight);
+ virtual status_t Perform(perform_code d, void *arg);
+
+ virtual status_t Archive(BMessage *data, bool deep = true) const;
+
+ virtual void MessageReceived(BMessage *message);
+ virtual void SetResizingMode(uint32 mode);
+
+ virtual void Show();
+ virtual void Hide();
+
+ virtual BHandler* ResolveSpecifier(BMessage *msg, int32 index,
+ BMessage *specifier, int32 form,
+ const char *property);
+ virtual status_t GetSupportedSuites(BMessage *data);
+
+ void DirectConnected(direct_buffer_info *info);
+ void EnableDirectMode(bool enabled);
+
+ void* getGC() { return fGc; } // ???
+
+ virtual void GetPreferredSize(float* width, float* height);
+
+private:
+
+ virtual void _ReservedGLView1();
+ virtual void _ReservedGLView2();
+ virtual void _ReservedGLView3();
+ virtual void _ReservedGLView4();
+ virtual void _ReservedGLView5();
+ virtual void _ReservedGLView6();
+ virtual void _ReservedGLView7();
+ virtual void _ReservedGLView8();
+
+ BGLView(const BGLView &);
+ BGLView &operator=(const BGLView &);
+
+ void _DitherFront();
+ bool _ConfirmDither();
+ void _Draw(BRect rect);
+ void _CallDirectConnected();
+
+ void* fGc;
+ uint32 fOptions;
+ uint32 fDitherCount;
+ BLocker fDrawLock;
+ BLocker fDisplayLock;
+ glview_direct_info* fClipInfo;
+
+ BGLRenderer* fRenderer;
+ GLRendererRoster* fRoster;
+
+ BBitmap* fDitherMap;
+ BRect fBounds;
+ int16* fErrorBuffer[2];
+ uint64 _reserved[8];
+
+ void _LockDraw();
+ void _UnlockDraw();
+
+// BeOS compatibility
+private:
+ BGLView(BRect rect, char* name,
+ ulong resizingMode, ulong mode,
+ ulong options);
+};
+
+
+class BGLScreen : public BWindowScreen {
+public:
+ BGLScreen(char* name,
+ ulong screenMode, ulong options,
+ status_t *error, bool debug=false);
+ ~BGLScreen();
+
+ void LockGL();
+ void UnlockGL();
+ void SwapBuffers();
+ // Mesa's GLenum is uint where Be's ones was ulong!
+ virtual void ErrorCallback(unsigned long errorCode);
+
+ virtual void ScreenConnected(bool connected);
+ virtual void FrameResized(float width, float height);
+ virtual status_t Perform(perform_code code, void *arg);
+
+ virtual status_t Archive(BMessage *data, bool deep = true) const;
+ virtual void MessageReceived(BMessage *message);
+
+ virtual void Show();
+ virtual void Hide();
+
+ virtual BHandler* ResolveSpecifier(BMessage *message,
+ int32 index,
+ BMessage *specifier,
+ int32 form,
+ const char *property);
+ virtual status_t GetSupportedSuites(BMessage *data);
+
+private:
+
+ virtual void _ReservedGLScreen1();
+ virtual void _ReservedGLScreen2();
+ virtual void _ReservedGLScreen3();
+ virtual void _ReservedGLScreen4();
+ virtual void _ReservedGLScreen5();
+ virtual void _ReservedGLScreen6();
+ virtual void _ReservedGLScreen7();
+ virtual void _ReservedGLScreen8();
+
+ BGLScreen(const BGLScreen &);
+ BGLScreen &operator=(const BGLScreen &);
+
+ void* fGc;
+ long fOptions;
+ BLocker fDrawLock;
+
+ int32 fColorSpace;
+ uint32 fScreenMode;
+
+ uint64 _reserved[7];
+};
+
+#endif // __cplusplus
+
+#endif // BGLVIEW_H
diff --git a/include/HaikuGL/OpenGLKit.h b/include/HaikuGL/OpenGLKit.h
new file mode 100644
index 0000000..f482871
--- /dev/null
+++ b/include/HaikuGL/OpenGLKit.h
@@ -0,0 +1,10 @@
+/*
+ * Master include file for the Haiku OpenGL Kit.
+ */
+
+#include <GL/gl.h>
+#include <GLView.h>
+
+// Projects needing GL/glu.h and GL/glut.h should now
+// include these headers independently as glu and glut
+// are no longe core parts of mesa
diff --git a/include/HaikuGL/README b/include/HaikuGL/README
new file mode 100644
index 0000000..0f8503f
--- /dev/null
+++ b/include/HaikuGL/README
@@ -0,0 +1,28 @@
+These headers make up the Haiku Op*nGL kit.
+
+Headers in this directory preserve some BeOS™ compatibility
+compatibility, so changes should be mentioned to the Haiku
+project mailing list.
+
+http://haiku-os.org
+
+Normal Haiku Op*enGL layout:
+
+ * headers/os/OpenGLKit.h
+ * headers/os/opengl/GLView.h
+ * headers/os/opengl/GLRenderer.h
+ * headers/os/opengl/GL/gl.h
+ * headers/os/opengl/GL/gl_mangle.h
+ * headers/os/opengl/GL/glext.h
+ * headers/os/opengl/GL/osmesa.h (needed?)
+
+Extras:
+
+ * headers/os/opengl/GL/glu.h
+ * headers/os/opengl/GL/glut.h
+
+OpenGL™ is a trademark of SGI. The usage of this trademark
+in the Haiku GL Kit is not a sign of any certification or
+endorsement by SGI or its affiliates. Usage is purely to
+allow legacy compatibility with the BeOS™ and its 3D GL
+rendering subsystem.
--
1.8.3.4