Fish shell: bumped version, drop old recipes (#863)

This commit is contained in:
miqlas
2016-11-10 10:48:35 +01:00
committed by Jérôme Duval
parent 54a6d21b87
commit 99a7ab366c
7 changed files with 112 additions and 398 deletions

View File

@@ -1,70 +0,0 @@
SUMMARY="The friendly interactive shell"
DESCRIPTION="
Fish is a shell geared towards interactive use. Its features are \
focused on user friendliness and discoverability. The language syntax \
is simple but incompatible with other shell languages.
"
HOMEPAGE="http://ridiculousfish.com/shell/"
SOURCE_URI="git://git.gitorious.org/fish-shell/fish-shell.git"
#CHECKSUM_MD5=""
REVISION="1"
LICENSE="GNU GPL v2"
COPYRIGHT="2005-2009 Axel Liljencrantz"
ARCHITECTURES="!x86_gcc2 x86 ?x86_64"
SECONDARY_ARCHITECTURES="x86"
PROVIDES="
fish$secondaryArchSuffix = $portVersion
cmd:fish$secondaryArchSuffix = $portVersion
cmd:fish_indent$secondaryArchSuffix = $portVersion
cmd:fish_pager$secondaryArchSuffix = $portVersion
cmd:fishd$secondaryArchSuffix = $portVersion
cmd:mimedb$secondaryArchSuffix = $portVersion
cmd:set_color$secondaryArchSuffix = $portVersion
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libiconv$secondaryArchSuffix
lib:libncurses$secondaryArchSuffix
lib:libgettextlib_0.18.1$secondaryArchSuffix >= 0.18.1.1
lib:libintl$secondaryArchSuffix
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
devel:libiconv$secondaryArchSuffix
devel:libncurses$secondaryArchSuffix >= 5.9
devel:libgettextlib$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:autoconf
cmd:libtoolize
cmd:make
cmd:gcc$secondaryArchSuffix
cmd:which
cmd:doxygen >= 1.6.3
"
PATCHES="fish-1.23.1_git.patch"
GLOBAL_WRITABLE_FILES="
settings/fish/config.fish keep-old
"
BUILD()
{
libtoolize --force --copy --install
autoconf
runConfigure ./configure --without-xsel
make
}
INSTALL()
{
make install
}
TEST()
{
make test
}

View File

@@ -1,68 +0,0 @@
SUMMARY="The friendly interactive shell"
DESCRIPTION="Fish is a shell geared towards interactive use. Its features are \
focused on user friendliness and discoverability. The language syntax \
is simple but incompatible with other shell languages."
HOMEPAGE="http://ridiculousfish.com/shell/"
COPYRIGHT="2005-2015 Axel Liljencrantz"
LICENSE="GNU GPL v2"
REVISION="2"
SOURCE_URI="https://github.com/fish-shell/fish-shell/releases/download/2.2.0/fish-2.2.0.tar.gz"
CHECKSUM_SHA256="a76339fd14ce2ec229283c53e805faac48c3e99d9e3ede9d82c0554acfc7b77a"
PATCHES="fish-2.2.0.patch"
ARCHITECTURES="!x86_gcc2 x86 ?x86_64"
SECONDARY_ARCHITECTURES="x86"
PROVIDES="
fish$secondaryArchSuffix = $portVersion
cmd:fish$secondaryArchSuffix = $portVersion
cmd:fish_indent$secondaryArchSuffix = $portVersion
cmd:mimedb$secondaryArchSuffix = $portVersion
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libiconv$secondaryArchSuffix
lib:libncurses$secondaryArchSuffix
lib:libgettextlib_0.18.1$secondaryArchSuffix >= 0.18.1.1
lib:libintl$secondaryArchSuffix
cmd:python
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
devel:libiconv$secondaryArchSuffix
devel:libncurses$secondaryArchSuffix
devel:libgettextlib$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:aclocal
cmd:autoconf
cmd:automake
cmd:libtoolize
cmd:make
cmd:gcc$secondaryArchSuffix
cmd:which
cmd:sed
#cmd:doxygen >= 1.6.3
"
GLOBAL_WRITABLE_FILES="
settings/fish/config.fish keep-old
"
BUILD()
{
autoreconf -vfi
runConfigure ./configure
make
}
INSTALL()
{
make install
}
TEST()
{
make test
}

View File

@@ -7,7 +7,7 @@ COPYRIGHT="2005-2016 Axel Liljencrantz"
LICENSE="GNU GPL v2"
REVISION="1"
SOURCE_URI="https://github.com/fish-shell/fish-shell/archive/$portVersion.tar.gz"
CHECKSUM_SHA256="459ab0cec5b936a3db28b437c649c3606baa12362c399a86fa2e07df2920818d"
CHECKSUM_SHA256="5b7680232cadcadeba42e38aac33bfd4d12333e70342d3d3485ad5d329b1f465"
SOURCE_DIR="fish-shell-$portVersion"
PATCHES="fish-$portVersion.patchset"
@@ -59,13 +59,14 @@ GLOBAL_WRITABLE_FILES="
BUILD()
{
autoreconf -vfi
CFLAGS=-D_BSD_SOURCE runConfigure ./configure
CFLAGS=-D_BSD_SOURCE LDFLAGS="-lnetwork" runConfigure ./configure
make
}
INSTALL()
{
make install
strip $binDir/*
}
TEST()

View File

@@ -1,68 +0,0 @@
diff --git a/configure.ac b/configure.ac
index 377ab5e..9f2e5e9 100644
--- a/configure.ac
+++ b/configure.ac
@@ -142,6 +142,12 @@ AC_CONFIG_HEADERS(config.h)
#
+# Ask autoconf to detect the platform type
+#
+AC_CANONICAL_TARGET
+
+
+#
# This adds markup to the code that results in a few extra compile
# time checks on recent GCC versions. It helps stop a few common bugs.
#
@@ -319,7 +325,13 @@ if test "$GCC" = yes; then
# This is needed in order to get the really cool backtraces
#
- LDFLAGS_FISH="$LDFLAGS_FISH -rdynamic"
+ case $target_os in
+ haiku*)
+ ;;
+ *)
+ LDFLAGS_FISH="$LDFLAGS_FISH -rdynamic"
+ ;;
+ esac
fi
@@ -378,8 +390,6 @@ fi
# seems that tputs is never really needed.
#
-AC_CANONICAL_TARGET
-
if test $target_cpu = powerpc; then
AC_DEFINE([TPUTS_KLUDGE],[1],[Evil kludge to get Power based machines to work])
fi
@@ -510,7 +520,7 @@ AC_DEFINE(
# Check for os dependant libraries for all binaries.
LIBS_COMMON=$LIBS
LIBS=""
-AC_SEARCH_LIBS( connect, socket, , [AC_MSG_ERROR([Cannot find the socket library, needed to build this package.] )] )
+AC_SEARCH_LIBS( connect, network socket, , [AC_MSG_ERROR([Cannot find the socket library, needed to build this package.] )] )
AC_SEARCH_LIBS( nanosleep, rt, , [AC_MSG_ERROR([Cannot find the rt library, needed to build this package.] )] )
AC_SEARCH_LIBS( setupterm, [ncurses curses], , [AC_MSG_ERROR([Could not find a curses implementation, needed to build fish])] )
AC_SEARCH_LIBS( [nan], [m], [AC_DEFINE( [HAVE_NAN], [1], [Define to 1 if you have the nan function])] )
@@ -555,7 +565,7 @@ LIBS="$LIBS_SHARED"
if test x$local_gettext != xno; then
AC_SEARCH_LIBS( gettext, intl,,)
fi
-AC_SEARCH_LIBS( iconv_open, iconv, , [AC_MSG_ERROR([Could not find an iconv implementation, needed to build fish])] )
+AC_SEARCH_LIBS( iconv_open, iconv, , [AC_SEARCH_LIBS( libiconv_open, iconv, , [AC_MSG_ERROR([Could not find an iconv implementation, needed to build fish])] )] )
LIBS_FISH_PAGER=$LIBS
LIBS=$LIBS_COMMON
@@ -568,7 +578,7 @@ LIBS="$LIBS_SHARED"
if test x$local_gettext != xno; then
AC_SEARCH_LIBS( gettext, intl,,)
fi
-AC_SEARCH_LIBS( iconv_open, iconv, , [AC_MSG_ERROR([Could not find an iconv implementation, needed to build fish])] )
+AC_SEARCH_LIBS( iconv_open, iconv, , [AC_SEARCH_LIBS( libiconv_open, iconv, , [AC_MSG_ERROR([Could not find an iconv implementation, needed to build fish])] )] )
LIBS_FISHD=$LIBS
LIBS=$LIBS_COMMON

View File

@@ -1,85 +0,0 @@
diff --git a/configure.ac b/configure.ac
index 49ff391..20d17fb 100644
--- a/configure.ac
+++ b/configure.ac
@@ -101,6 +101,20 @@ echo "CXXFLAGS: $CXXFLAGS"
AC_CONFIG_HEADERS(config.h)
+dnl ----------------------------------------------
+dnl CHECK FOR MACHINE/VENDOR/OPERATING SYSTEM TYPE
+dnl ----------------------------------------------
+dnl Find out machine type, vendor, and operating system
+dnl What type of host is this?
+AC_CANONICAL_HOST
+AC_DEFINE_UNQUOTED(MACHTYPE, "$host_cpu",
+[Define to be the machine type (microprocessor class or machine model).])
+AC_DEFINE_UNQUOTED(VENDOR, "$host_vendor",
+[Define to be a string corresponding the vendor of the machine.])
+AC_DEFINE_UNQUOTED(OSTYPE, "$host_os",
+[Define to be the name of the operating system.])
+
+
#
# This adds markup to the code that results in a few extra compile
# time checks on recent GCC versions. It helps stop a few common bugs.
@@ -210,9 +224,16 @@ CXXFLAGS="$CXXFLAGS -Wall -Wno-sign-compare"
# This is needed in order to get the really cool backtraces on Linux
#
-if test `uname` != "Darwin"; then
- LDFLAGS_FISH="$LDFLAGS_FISH -rdynamic"
-fi
+case "$host_os" in
+ darwin* )
+ ;;
+ haiku*)
+ CFLAGS="$CFLAGS -D_BSD_SOURCE" CPPFLAGS="$CPPFLAGS -D_BSD_SOURCE" CXXFLAGS="$CXXFLAGS -D_BSD_SOURCE"
+ ;;
+ *)
+ LDFLAGS_FISH="$LDFLAGS_FISH -rdynamic"
+ ;;
+esac
#
# On Cygwin, we need to add some flags for ncurses.
@@ -349,7 +370,7 @@ AC_DEFINE([NOMACROS], [1], [Define to 1 to disable curses macros that conflict w
#
# Check for os dependant libraries for all binaries.
-AC_SEARCH_LIBS( connect, socket, , [AC_MSG_ERROR([Cannot find the socket library, needed to build this package.] )] )
+AC_SEARCH_LIBS( connect, network socket, , [AC_MSG_ERROR([Cannot find the socket library, needed to build this package.] )] )
AC_SEARCH_LIBS( nanosleep, rt, , [AC_MSG_ERROR([Cannot find the rt library, needed to build this package.] )] )
AC_SEARCH_LIBS( shm_open, rt, , [AC_MSG_ERROR([Cannot find the rt library, needed to build this package.] )] )
AC_SEARCH_LIBS( pthread_create, pthread, , [AC_MSG_ERROR([Cannot find the pthread library, needed to build this package.] )] )
diff --git a/env_universal_common.cpp b/env_universal_common.cpp
index b493de2..8e8046b 100644
--- a/env_universal_common.cpp
+++ b/env_universal_common.cpp
@@ -1102,6 +1102,10 @@ class universal_notifier_shmem_poller_t : public universal_notifier_t
#define SHMEM_MAGIC_NUMBER 0xF154
#define SHMEM_VERSION_CURRENT 1000
+#ifndef MAP_FILE
+#define MAP_FILE 0
+#endif
+
private:
long long last_change_time;
uint32_t last_seed;
diff --git a/share/tools/web_config/webconfig.py b/share/tools/web_config/webconfig.py
index 359946a..3c65ac2 100755
--- a/share/tools/web_config/webconfig.py
+++ b/share/tools/web_config/webconfig.py
@@ -20,7 +20,10 @@ else:
from urllib.parse import parse_qs
# Check to see if IPv6 is enabled in the kernel
-HAS_IPV6 = True
+# HAIKU BUGFIX. FIXME! Something wrong with the IPV6 support
+#HAS_IPV6 = True
+HAS_IPV6 = False
+# HAIKU BUGFIX.
try:
s = socket.socket(socket.AF_INET6, socket.SOCK_DGRAM)
s.close()

View File

@@ -1,105 +0,0 @@
From 26e77664981aeb65b1327dc8fbc9f0a621bff84a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Zolt=C3=A1n=20Mizsei?= <zmizsei@extrowerk.com>
Date: Thu, 18 Aug 2016 20:50:04 +0200
Subject: [PATCH] Haiku fix
---
configure.ac | 2 +-
share/tools/web_config/webconfig.py | 5 ++++-
src/env_universal_common.cpp | 13 +++++++++++++
3 files changed, 18 insertions(+), 2 deletions(-)
diff --git a/configure.ac b/configure.ac
index 2d60a9a..feb43ff 100644
--- a/configure.ac
+++ b/configure.ac
@@ -355,7 +355,7 @@ AC_DEFINE([NOMACROS], [1], [Define to 1 to disable curses macros that conflict w
#
# Check for os dependant libraries for all binaries.
-AC_SEARCH_LIBS( connect, socket, , [AC_MSG_ERROR([Cannot find the socket library, needed to build this package.] )] )
+AC_SEARCH_LIBS( connect, socket network, , [AC_MSG_ERROR([Cannot find the socket library, needed to build this package.] )] )
AC_SEARCH_LIBS( nanosleep, rt, , [AC_MSG_ERROR([Cannot find the rt library, needed to build this package.] )] )
AC_SEARCH_LIBS( shm_open, rt, , [AC_MSG_ERROR([Cannot find the rt library, needed to build this package.] )] )
AC_SEARCH_LIBS( pthread_create, pthread, , [AC_MSG_ERROR([Cannot find the pthread library, needed to build this package.] )] )
diff --git a/share/tools/web_config/webconfig.py b/share/tools/web_config/webconfig.py
index ee51744..4418bcb 100755
--- a/share/tools/web_config/webconfig.py
+++ b/share/tools/web_config/webconfig.py
@@ -20,7 +20,10 @@ else:
from urllib.parse import parse_qs
# Check to see if IPv6 is enabled in the kernel
-HAS_IPV6 = True
+# Not working in Haiku. FIXME!
+#HAS_IPV6 = True
+HAS_IPV6 = False
+# FIXME!
try:
s = socket.socket(socket.AF_INET6, socket.SOCK_DGRAM)
s.close()
diff --git a/src/env_universal_common.cpp b/src/env_universal_common.cpp
index 290975c..bcbb65a 100644
--- a/src/env_universal_common.cpp
+++ b/src/env_universal_common.cpp
@@ -9,6 +9,15 @@
#include "env_universal_common.h"
+#ifdef __HAIKU__
+#define _BSD_SOURCE
+
+#ifndef MAP_FILE
+#define MAP_FILE 0
+#endif
+
+#endif //Haiku
+
#include <fcntl.h>
#include <sys/ioctl.h>
#include <sys/mman.h>
@@ -1072,7 +1081,11 @@ static bool get_mac_address(unsigned char macaddr[MAC_ADDRESS_MAX_LEN], const ch
{
for (const ifaddrs *p = ifap; p; p = p->ifa_next)
{
+ #ifndef __HAIKU__
if (p->ifa_addr->sa_family == AF_LINK)
+ #else
+ if (p->ifa_addr && p->ifa_addr->sa_family == AF_LINK)
+ #endif
{
if (p->ifa_name && p->ifa_name[0] &&
! strcmp((const char*)p->ifa_name, interface))
--
2.7.0
From 4fc160f28d37f7cf2dff76da2dca53cba3c1a646 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Zolt=C3=A1n=20Mizsei?= <zmizsei@extrowerk.com>
Date: Mon, 24 Oct 2016 17:32:16 +0200
Subject: [PATCH] Support for Haiku's /bin/open to open files from cli with the
installed programs.
---
share/functions/open.fish | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/share/functions/open.fish b/share/functions/open.fish
index 533b3df..dd56e4c 100644
--- a/share/functions/open.fish
+++ b/share/functions/open.fish
@@ -21,6 +21,12 @@ if not test (uname) = Darwin
for i in $argv
xdg-open $i
end
+ #HAIKU have open in /bin
+ else if type -q -f /bin/open
+ for i in $argv
+ /bin/open $i
+ end
+ #HAIKU
else
echo (_ 'No open utility found. Try installing "xdg-open" or "xdg-utils".')
end
--
2.10.0

View File

@@ -0,0 +1,109 @@
From a603738d32b75605f40d4822c7610394dad19481 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Zolt=C3=A1n=20Mizsei?= <zmizsei@extrowerk.com>
Date: Wed, 9 Nov 2016 22:54:29 +0100
Subject: [PATCH] Search for connect in libnetwork on Haiku
---
configure.ac | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/configure.ac b/configure.ac
index f655811..4e94386 100644
--- a/configure.ac
+++ b/configure.ac
@@ -250,8 +250,7 @@ AC_DEFINE([NOMACROS], [1], [Define to 1 to disable curses macros that conflict w
#
# Check for os dependant libraries for all binaries.
-AC_SEARCH_LIBS( connect, socket, , [AC_MSG_ERROR([Cannot find the socket library, needed to build this package.] )] )
-AC_SEARCH_LIBS( nanosleep, rt, , [AC_MSG_ERROR([Cannot find the rt library, needed to build this package.] )] )
+AC_SEARCH_LIBS( connect, [socket network], , [AC_MSG_ERROR([Cannot find the socket library, needed to build this package.] )] )AC_SEARCH_LIBS( nanosleep, rt, , [AC_MSG_ERROR([Cannot find the rt library, needed to build this package.] )] )
AC_SEARCH_LIBS( shm_open, rt, , [AC_MSG_ERROR([Cannot find the rt library, needed to build this package.] )] )
AC_SEARCH_LIBS( pthread_create, pthread, , [AC_MSG_ERROR([Cannot find the pthread library, needed to build this package.] )] )
AC_SEARCH_LIBS( setupterm, [ncurses tinfo curses], , [AC_MSG_ERROR([Could not find a curses implementation, needed to build fish. If this is Linux, try running 'sudo apt-get install libncurses5-dev' or 'sudo yum install ncurses-devel'])] )
--
2.10.0
From eb350821c721616c92372bc2c0ab1f93ab32c0dd Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Zolt=C3=A1n=20Mizsei?= <zmizsei@extrowerk.com>
Date: Wed, 9 Nov 2016 22:51:23 +0100
Subject: [PATCH] Haiku network support
---
src/env_universal_common.cpp | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/src/env_universal_common.cpp b/src/env_universal_common.cpp
index a77eb6a..f3b0048 100644
--- a/src/env_universal_common.cpp
+++ b/src/env_universal_common.cpp
@@ -44,6 +44,11 @@
#include <notify.h>
#endif
+#ifdef __HAIKU__
+#define _BSD_SOURCE
+#include <bsd/ifaddrs.h>
+#endif //Haiku
+
// NAME_MAX is not defined on Solaris and suggests the use of pathconf()
// There is no obvious sensible pathconf() for shared memory and _XPG_NAME_MAX
// seems a reasonable choice.
--
2.10.0
From 9e23b7873520ffedb0a56cb08cc024eb788982dd Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Zolt=C3=A1n=20Mizsei?= <zmizsei@extrowerk.com>
Date: Wed, 9 Nov 2016 22:49:48 +0100
Subject: [PATCH] Haiku /bin/open support
---
share/functions/open.fish | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/share/functions/open.fish b/share/functions/open.fish
index 533b3df..852f4a1 100644
--- a/share/functions/open.fish
+++ b/share/functions/open.fish
@@ -21,6 +21,10 @@ if not test (uname) = Darwin
for i in $argv
xdg-open $i
end
+ else if type -q -f /bin/open
+ for i in $argv
+ /bin/open $i
+ end
else
echo (_ 'No open utility found. Try installing "xdg-open" or "xdg-utils".')
end
--
2.10.0
From 4ff6bb8916a15e99c2f1f14b1dc1583313032ca5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Zolt=C3=A1n=20Mizsei?= <zmizsei@extrowerk.com>
Date: Wed, 9 Nov 2016 22:56:44 +0100
Subject: [PATCH] Something wrong with IPV6, so disable for now.
---
share/tools/web_config/webconfig.py | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/share/tools/web_config/webconfig.py b/share/tools/web_config/webconfig.py
index eb5dc5c..097f384 100755
--- a/share/tools/web_config/webconfig.py
+++ b/share/tools/web_config/webconfig.py
@@ -20,7 +20,10 @@ else:
from urllib.parse import parse_qs
# Check to see if IPv6 is enabled in the kernel
-HAS_IPV6 = True
+# Not working in Haiku. FIXME!
+#HAS_IPV6 = True
+HAS_IPV6 = False
+# FIXME!
try:
s = socket.socket(socket.AF_INET6, socket.SOCK_DGRAM)
s.close()
--
2.10.0