* adjusted build of development-related ports to comply with package management (especially to make the packages relocatable)

This commit is contained in:
Oliver Tappe
2011-03-07 13:07:41 +00:00
parent ee6356f4bc
commit 2a7468c0b0
15 changed files with 254 additions and 67 deletions

View File

@@ -1,7 +1,65 @@
diff -up perl-5.10.1/installperl.orig perl-5.10.1/installperl diff -ruw perl-5.10.1/ext/Errno/Errno_pm.PL perl-5.10.1-haiku/ext/Errno/Errno_pm.PL
--- perl-5.10.1/installperl.orig 2009-08-13 16:40:10.023330816 -0600 --- perl-5.10.1/ext/Errno/Errno_pm.PL 2009-06-27 16:09:45.059768832 +0000
+++ perl-5.10.1/installperl 2010-04-22 19:31:00.720633856 -0600 +++ perl-5.10.1-haiku/ext/Errno/Errno_pm.PL 2011-03-01 18:01:57.984350720 +0000
@@ -409,6 +409,11 @@ elsif ($Is_Cygwin) { # On Cygwin symlink @@ -159,10 +159,14 @@
# we might miss out on compiler-specific ones
$file{"$ENV{GUSI}include:sys:errno.h"} = 1;
- } elsif ($^O eq 'beos' || $^O eq 'haiku') {
+ } elsif ($^O eq 'beos') {
# hidden in a special place
$file{'/boot/develop/headers/posix/errno.h'} = 1;
+ } elsif ($^O eq 'haiku') {
+ # hidden in a special place
+ $file{'/boot/system/develop/headers/posix/errno.h'} = 1;
+
} elsif ($^O eq 'vos') {
# avoid problem where cpp returns non-POSIX pathnames
$file{'/system/include_library/errno.h'} = 1;
diff -ruw perl-5.10.1/hints/haiku.sh perl-5.10.1-haiku/hints/haiku.sh
--- perl-5.10.1/hints/haiku.sh 2009-02-12 23:58:12.063176704 +0100
+++ perl-5.10.1-haiku/hints/haiku.sh 1970-01-01 01:00:00.000000000 +0100
@@ -1,34 +1 @@
-# Haiku hints file
-# $Id$
-
-prefix="/boot/common"
-
-libpth='/boot/home/config/lib /boot/common/lib /system/lib'
-usrinc='/boot/develop/headers/posix'
-locinc='/boot/home/config/include /boot/common/include /boot/develop/headers'
-
-libc='/system/lib/libroot.so'
-libs='-lnetwork'
-
-# Use Haiku's malloc() by default.
-case "$usemymalloc" in
-'') usemymalloc='n' ;;
-esac
-
-# Haiku generally supports hard links, but the default file system (BFS)
-# doesn't. So better avoid using hard links.
-d_link='undef'
-dont_use_nlink='define'
-
-# The array syserrlst[] is useless for the most part.
-# Large negative numbers really kind of suck in arrays.
-d_syserrlst='undef'
-
-# Haiku uses gcc.
-cc="gcc"
-ld='gcc'
-
-# The runtime loader library path variable is LIBRARY_PATH.
-case "$ldlibpthname" in
-'') ldlibpthname=LIBRARY_PATH ;;
-esac
+# haiku sets all its specifics via Configure
diff -ruw perl-5.10.1/installperl perl-5.10.1-haiku/installperl
--- perl-5.10.1/installperl 2009-08-13 22:40:10.066846720 +0000
+++ perl-5.10.1-haiku/installperl 2011-02-28 17:24:45.324272128 +0000
@@ -409,6 +409,11 @@
mkpath("$installarchlib/CORE/mpeix", $opts{verbose}, 0777); mkpath("$installarchlib/CORE/mpeix", $opts{verbose}, 0777);
push(@corefiles,'mpeix/mpeixish.h'); push(@corefiles,'mpeix/mpeixish.h');
} }
@@ -13,23 +71,10 @@ diff -up perl-5.10.1/installperl.orig perl-5.10.1/installperl
# If they have built sperl.o... # If they have built sperl.o...
push(@corefiles,'sperl.o') if -f 'sperl.o'; push(@corefiles,'sperl.o') if -f 'sperl.o';
} }
diff -up perl-5.10.1/lib/File/Temp.pm.orig perl-5.10.1/lib/File/Temp.pm diff -ruw perl-5.10.1/lib/File/Temp/t/lock.t perl-5.10.1-haiku/lib/File/Temp/t/lock.t
--- perl-5.10.1/lib/File/Temp.pm.orig 2009-06-30 07:13:54.062914560 -0600 --- perl-5.10.1/lib/File/Temp/t/lock.t 2009-02-12 22:58:13.009699328 +0000
+++ perl-5.10.1/lib/File/Temp.pm 2010-04-22 19:25:11.867172352 -0600 +++ perl-5.10.1-haiku/lib/File/Temp/t/lock.t 2011-02-28 17:24:45.354418688 +0000
@@ -1978,7 +1978,8 @@ sub unlink0 { @@ -8,7 +8,8 @@
# on Win9x the link count remains 1
# On NFS the link count may still be 1 but we cant know that
# we are on NFS
- return ( $fh[3] == 0 or $^O eq 'cygwin' ? 1 : 0);
+ # On haiku, the link count seems to be always 1 (at least for BFS)
+ return ( $fh[3] == 0 or $^O eq 'cygwin' or $^O eq 'haiku' ? 1 : 0);
} else {
_deferred_unlink($fh, $path, 0);
diff -up perl-5.10.1/lib/File/Temp/t/lock.t.orig perl-5.10.1/lib/File/Temp/t/lock.t
--- perl-5.10.1/lib/File/Temp/t/lock.t.orig 2009-02-12 15:58:13.059506688 -0700
+++ perl-5.10.1/lib/File/Temp/t/lock.t 2010-04-22 19:25:11.860094464 -0600
@@ -8,7 +8,8 @@ use Fcntl;
BEGIN { BEGIN {
# see if we have O_EXLOCK # see if we have O_EXLOCK
eval { &Fcntl::O_EXLOCK; }; eval { &Fcntl::O_EXLOCK; };
@@ -39,10 +84,23 @@ diff -up perl-5.10.1/lib/File/Temp/t/lock.t.orig perl-5.10.1/lib/File/Temp/t/loc
plan skip_all => 'Do not seem to have O_EXLOCK'; plan skip_all => 'Do not seem to have O_EXLOCK';
} else { } else {
plan tests => 4; plan tests => 4;
diff -up perl-5.10.1/t/run/exit.t.orig perl-5.10.1/t/run/exit.t diff -ruw perl-5.10.1/lib/File/Temp.pm perl-5.10.1-haiku/lib/File/Temp.pm
--- perl-5.10.1/t/run/exit.t.orig 2009-08-04 09:48:30.001310720 -0600 --- perl-5.10.1/lib/File/Temp.pm 2009-06-30 13:13:54.013369344 +0000
+++ perl-5.10.1/t/run/exit.t 2010-04-22 19:25:11.870580224 -0600 +++ perl-5.10.1-haiku/lib/File/Temp.pm 2011-02-28 17:24:45.347602944 +0000
@@ -57,18 +57,18 @@ is( ${^CHILD_ERROR_NATIVE}, $native_succ @@ -1978,7 +1978,8 @@
# on Win9x the link count remains 1
# On NFS the link count may still be 1 but we cant know that
# we are on NFS
- return ( $fh[3] == 0 or $^O eq 'cygwin' ? 1 : 0);
+ # On haiku, the link count seems to be always 1 (at least for BFS)
+ return ( $fh[3] == 0 or $^O eq 'cygwin' or $^O eq 'haiku' ? 1 : 0);
} else {
_deferred_unlink($fh, $path, 0);
diff -ruw perl-5.10.1/t/run/exit.t perl-5.10.1-haiku/t/run/exit.t
--- perl-5.10.1/t/run/exit.t 2009-08-04 15:48:30.014155776 +0000
+++ perl-5.10.1-haiku/t/run/exit.t 2011-02-28 17:24:45.362283008 +0000
@@ -57,18 +57,18 @@
if (!$vms_exit_mode) { if (!$vms_exit_mode) {
my $posix_ok = eval { require POSIX; }; my $posix_ok = eval { require POSIX; };
my $wait_macros_ok = defined &POSIX::WIFEXITED; my $wait_macros_ok = defined &POSIX::WIFEXITED;
@@ -66,7 +124,7 @@ diff -up perl-5.10.1/t/run/exit.t.orig perl-5.10.1/t/run/exit.t
} }
SKIP: { SKIP: {
@@ -87,9 +87,9 @@ if (!$vms_exit_mode) { @@ -87,9 +87,9 @@
SKIP: { SKIP: {
skip("No POSIX", 3) unless $posix_ok; skip("No POSIX", 3) unless $posix_ok;
skip("No POSIX wait macros", 3) unless $wait_macros_ok; skip("No POSIX wait macros", 3) unless $wait_macros_ok;

View File

@@ -7,7 +7,20 @@ DEPEND=""
CHECKSUM_MD5="b9b2fdb957f50ada62d73f43ee75d044" CHECKSUM_MD5="b9b2fdb957f50ada62d73f43ee75d044"
BUILD { BUILD {
cd perl-5.10.1 cd perl-5.10.1
./Configure -Dcf_email=zooey@hirschkaefer.de -Uusenm -de prefix=$(finddir B_PACKAGE_LINKS_DIRECTORY)/perl-5.10.1
./Configure -Dprefix=$prefix -Dcf_email=zooey@hirschkaefer.de \
-Uusenm -Duseshrplib -Uusemymalloc \
-Dlibpth="$(finddir B_USER_LIB_DIRECTORY) $(finddir B_COMMON_LIB_DIRECTORY) $(finddir B_SYSTEM_LIB_DIRECTORY)" \
-Dusrinc="$(finddir B_SYSTEM_DEVELOP_DIRECTORY)/headers/posix" \
-Dlocinc="$(finddir B_USER_CONFIG_DIRECTORY)/headers $(finddir B_COMMON_DEVELOP_DIRECTORY)/headers $(finddir B_SYSTEM_DEVELOP_DIRECTORY)/headers" \
-Dlibc="$(finddir B_SYSTEM_LIB_DIRECTORY)/libroot.so" \
-Dlibs=-lnetwork -Dcc=gcc -Dld=gcc \
-Ud_link -Ddont_use_nlink -Ud_syserrlst \
-Dldlibpthname=LIBRARY_PATH -Dstartperl="#! perl" -de
# force-remove path from sed
sed -i -e 's/LOC_SED\s*"\/boot\/common\/bin\/sed/LOC_SED "sed/' config.h
make make
} }

View File

@@ -8,7 +8,17 @@ DEPEND=""
BUILD { BUILD {
cd sed-4.2.1 cd sed-4.2.1
autoconf autoconf
./configure --prefix=/boot/system prefix=$(finddir B_PACKAGE_LINKS_DIRECTORY)/sed-4.2.1
./configure --prefix=$prefix \
--datarootdir=$prefix/data \
--sbindir=$prefix/bin \
--includedir=$prefix/develop/headers \
--sysconfdir=$prefix/settings \
--docdir=$prefix/documentation/sed \
--infodir=$prefix/documentation/info \
--mandir=$prefix/documentation/man \
--enable-regex-tests --without-included-regex \
--disable-rpath --with-gnu-ld
make make
} }

View File

@@ -7,10 +7,16 @@ STATUS_HAIKU="stable"
DEPEND="" DEPEND=""
BUILD { BUILD {
cd autoconf-2.68 cd autoconf-2.68
./configure --prefix=`finddir B_COMMON_DIRECTORY` \ prefix=$(finddir B_PACKAGE_LINKS_DIRECTORY)/autoconf-2.68
--mandir=`finddir B_COMMON_DOCUMENTATION_DIRECTORY`/man \ PERL="/bin/env perl" M4="/bin/env m4" SED="/bin/env sed" \
--infodir=`finddir B_COMMON_DOCUMENTATION_DIRECTORY`/info \ ./configure --prefix=$prefix \
--datadir=`finddir B_COMMON_DATA_DIRECTORY` --datarootdir=$prefix/data \
--sbindir=$prefix/bin \
--includedir=$prefix/develop/headers \
--sysconfdir=$prefix/settings \
--docdir=$prefix/documentation/autoconf \
--infodir=$prefix/documentation/info \
--mandir=$prefix/documentation/man
make make
} }

View File

@@ -7,11 +7,15 @@ STATUS_HAIKU="stable"
DEPEND="" DEPEND=""
BUILD { BUILD {
cd automake-1.11.1 cd automake-1.11.1
./configure --prefix=`finddir B_COMMON_DIRECTORY` \ prefix=$(finddir B_PACKAGE_LINKS_DIRECTORY)/automake-1.11.1
--datadir=`finddir B_COMMON_DATA_DIRECTORY` \ PERL="/bin/env perl" ./configure --prefix=$prefix \
--docdir=`finddir B_COMMON_DOCUMENTATION_DIRECTORY`/doc \ --datarootdir=$prefix/data \
--infodir=`finddir B_COMMON_DOCUMENTATION_DIRECTORY`/info \ --sbindir=$prefix/bin \
--mandir=`finddir B_COMMON_DOCUMENTATION_DIRECTORY`/man --includedir=$prefix/develop/headers \
--sysconfdir=$prefix/settings \
--docdir=$prefix/documentation/automake \
--infodir=$prefix/documentation/info \
--mandir=$prefix/documentation/man
make make
} }

View File

@@ -7,11 +7,16 @@ STATUS_HAIKU="stable"
DEPEND="" DEPEND=""
BUILD { BUILD {
cd bison-2.4.3 cd bison-2.4.3
./configure --prefix=`finddir B_COMMON_DIRECTORY` \ prefix=$(finddir B_PACKAGE_LINKS_DIRECTORY)/bison-2.4.3
--datadir=`finddir B_COMMON_DATA_DIRECTORY` \ ./configure --prefix=$prefix \
--infodir=`finddir B_COMMON_DOCUMENTATION_DIRECTORY`/info \ --datarootdir=$prefix/data \
--mandir=`finddir B_COMMON_DOCUMENTATION_DIRECTORY`/man \ --sbindir=$prefix/bin \
--disable-nls --includedir=$prefix/develop/headers \
--sysconfdir=$prefix/settings \
--docdir=$prefix/documentation/bison \
--infodir=$prefix/documentation/info \
--mandir=$prefix/documentation/man \
--disable-rpath --with-gnu-ld
make make
} }

View File

@@ -12,9 +12,16 @@ BUILD {
aclocal -I m4 aclocal -I m4
autoconf autoconf
automake --add-missing --force-missing automake --add-missing --force-missing
./configure --prefix=`finddir B_COMMON_DIRECTORY` \ prefix=$(finddir B_PACKAGE_LINKS_DIRECTORY)/flex-2.5.35
--infodir=`finddir B_COMMON_DOCUMENTATION_DIRECTORY`/info \ ./configure --prefix=$prefix \
--mandir=`finddir B_COMMON_DOCUMENTATION_DIRECTORY`/man --datarootdir=$prefix/data \
--sbindir=$prefix/bin \
--includedir=$prefix/develop/headers \
--sysconfdir=$prefix/settings \
--docdir=$prefix/documentation/flex \
--infodir=$prefix/documentation/info \
--mandir=$prefix/documentation/man \
--disable-rpath --with-gnu-ld
make make
} }

View File

@@ -0,0 +1,31 @@
diff -ruw flex-2.5.35/configure.in flex-2.5.35-haiku/configure.in
--- flex-2.5.35/configure.in 2008-02-09 16:46:28.027525120 +0100
+++ flex-2.5.35-haiku/configure.in 2011-03-05 18:05:15.222822400 +0100
@@ -45,12 +45,12 @@
AC_PROG_AWK
AC_PROG_INSTALL
-AC_PATH_PROG(BISON, bison,bison)
+AC_CHECK_PROG(BISON, bison,bison)
AC_PATH_PROG(HELP2MAN, help2man, help2man)
# Check for a GNU m4 that supports --prefix-builtins
-AC_PATH_PROGS(M4, gm4 gnum4 m4, m4)
+AC_CHECK_PROGS(M4, gm4 gnum4 m4, m4)
if test x"$M4" != x; then
AC_MSG_CHECKING([for GNU m4])
diff -ruw flex-2.5.35/tests/test-pthread/Makefile.am flex-2.5.35-haiku/tests/test-pthread/Makefile.am
--- flex-2.5.35/tests/test-pthread/Makefile.am 2006-11-09 21:14:49.001310720 +0100
+++ flex-2.5.35-haiku/tests/test-pthread/Makefile.am 2011-03-05 18:04:53.553648128 +0100
@@ -27,7 +27,8 @@
OBJS = scanner.o # parser.o
AM_CPPFLAGS = -I$(srcdir) -I$(top_srcdir) -I$(top_builddir)
-LDFLAGS = -lpthread
+
+#LDFLAGS = -lpthread
#LFLAGS = --header="scanner.h"
#YFLAGS = --defines --output=parser.c

View File

@@ -8,10 +8,16 @@ DEPEND=""
BUILD { BUILD {
cd libtool-2.4 cd libtool-2.4
./bootstrap ./bootstrap
./configure --prefix=`finddir B_COMMON_DIRECTORY` \ prefix=$(finddir B_PACKAGE_LINKS_DIRECTORY)/libtool-2.4
--datarootdir=`finddir B_COMMON_DATA_DIRECTORY` \ SED='sed' NM='nm' ./configure --prefix=$prefix \
--infodir=`finddir B_COMMON_DOCUMENTATION_DIRECTORY`/info \ --datarootdir=$prefix/data \
--mandir=`finddir B_COMMON_DOCUMENTATION_DIRECTORY`/man --sbindir=$prefix/bin \
--includedir=$prefix/develop/headers \
--sysconfdir=$prefix/settings \
--docdir=$prefix/documentation/libtool \
--infodir=$prefix/documentation/info \
--mandir=$prefix/documentation/man \
--with-gnu-ld
make make
} }

View File

@@ -8,7 +8,17 @@ DEPEND=""
BUILD { BUILD {
cd m4-1.4.14 cd m4-1.4.14
./configure --prefix=/boot/common --enable-changeword prefix=$(finddir B_PACKAGE_LINKS_DIRECTORY)/m4-1.4.14
./configure --prefix=$prefix \
--datarootdir=$prefix/data \
--sbindir=$prefix/bin \
--includedir=$prefix/develop/headers \
--sysconfdir=$prefix/settings \
--docdir=$prefix/documentation/m4 \
--infodir=$prefix/documentation/info \
--mandir=$prefix/documentation/man \
--disable-rpath --with-gnu-ld \
--enable-changeword
make make
} }

View File

@@ -15,7 +15,17 @@ BUILD {
libtoolize --force --copy --install libtoolize --force --copy --install
aclocal -I m4 aclocal -I m4
autoreconf autoreconf
./configure --prefix=`finddir B_COMMON_DIRECTORY` --enable-changeword prefix=$(finddir B_PACKAGE_LINKS_DIRECTORY)/m4-1.4.15
./configure --prefix=$prefix \
--datarootdir=$prefix/data \
--sbindir=$prefix/bin \
--includedir=$prefix/develop/headers \
--sysconfdir=$prefix/settings \
--docdir=$prefix/documentation/m4 \
--infodir=$prefix/documentation/info \
--mandir=$prefix/documentation/man \
--disable-rpath --with-gnu-ld \
--enable-changeword
make make
} }

View File

@@ -8,10 +8,17 @@ DEPEND=""
BUILD { BUILD {
cd m4-1.4.16 cd m4-1.4.16
./configure --prefix=`finddir B_COMMON_DIRECTORY` \ prefix=$(finddir B_PACKAGE_LINKS_DIRECTORY)/m4-1.4.16
--enable-changeword \ ./configure --prefix=$prefix \
--infodir=`finddir B_COMMON_DOCUMENTATION_DIRECTORY`/info \ --datarootdir=$prefix/data \
--mandir=`finddir B_COMMON_DOCUMENTATION_DIRECTORY`/man --sbindir=$prefix/bin \
--includedir=$prefix/develop/headers \
--sysconfdir=$prefix/settings \
--docdir=$prefix/documentation/m4 \
--infodir=$prefix/documentation/info \
--mandir=$prefix/documentation/man \
--disable-rpath --with-gnu-ld \
--enable-changeword
make make
} }

View File

@@ -7,12 +7,17 @@ STATUS_HAIKU="stable"
DEPEND="" DEPEND=""
BUILD { BUILD {
cd make-3.81 cd make-3.81
libtoolize --force --copy --install libtoolize -fci
./configure --prefix=`finddir B_COMMON_DIRECTORY` \ prefix=$(finddir B_PACKAGE_LINKS_DIRECTORY)/make-3.81
--disable-nls \ ./configure --prefix=$prefix \
--infodir=`finddir B_COMMON_DOCUMENTATION_DIRECTORY`/info \ --datadir=$prefix/data \
--mandir=`finddir B_COMMON_DOCUMENTATION_DIRECTORY`/man --sbindir=$prefix/bin \
./build.sh --includedir=$prefix/develop/headers \
--sysconfdir=$prefix/settings \
--infodir=$prefix/documentation/info \
--mandir=$prefix/documentation/man \
--disable-rpath --with-gnu-ld
make
} }
INSTALL { INSTALL {

View File

@@ -3,15 +3,22 @@ HOMEPAGE="http://www.gnu.org/software/make/"
SRC_URI="http://ftp.gnu.org/pub/gnu/make/make-3.82.tar.bz2" SRC_URI="http://ftp.gnu.org/pub/gnu/make/make-3.82.tar.bz2"
CHECKSUM_MD5="1a11100f3c63fcf5753818e59d63088f" CHECKSUM_MD5="1a11100f3c63fcf5753818e59d63088f"
REVISION="1" REVISION="1"
STATUS_HAIKU="stable" STATUS_HAIKU="broken"
# make-3.82 has problems/incompatibilities when doing 'make install DESTDIR'
# on other packages (e.g. perl)
DEPEND="" DEPEND=""
BUILD { BUILD {
cd make-3.82 cd make-3.82
libtoolize --force --copy --install libtoolize --force --copy --install
./configure --prefix=`finddir B_COMMON_DIRECTORY` \ prefix=$(finddir B_PACKAGE_LINKS_DIRECTORY)/make-3.82
--disable-nls \ ./configure --prefix=$prefix \
--infodir=`finddir B_COMMON_DOCUMENTATION_DIRECTORY`/info \ --datadir=$prefix/data \
--mandir=`finddir B_COMMON_DOCUMENTATION_DIRECTORY`/man --sbindir=$prefix/bin \
--includedir=$prefix/develop/headers \
--sysconfdir=$prefix/settings \
--infodir=$prefix/documentation/info \
--mandir=$prefix/documentation/man \
--disable-rpath --with-gnu-ld
./build.sh ./build.sh
} }

View File

@@ -7,7 +7,15 @@ STATUS_HAIKU="stable"
DEPEND="" DEPEND=""
BUILD { BUILD {
cd patch-2.6.1 cd patch-2.6.1
./configure --prefix=/boot/common prefix=$(finddir B_PACKAGE_LINKS_DIRECTORY)/patch-2.6.1
./configure --prefix=$prefix \
--datarootdir=$prefix/data \
--sbindir=$prefix/bin \
--includedir=$prefix/develop/headers \
--sysconfdir=$prefix/settings \
--docdir=$prefix/documentation/patch \
--infodir=$prefix/documentation/info \
--mandir=$prefix/documentation/man
make make
} }