Merged in diversys/haikuports (pull request #186)

Add recipes for samba and mtr, updates and fixes for mc recipe
This commit is contained in:
Adrien Destugues
2014-06-22 11:00:18 +02:00
8 changed files with 465 additions and 79 deletions

View File

@@ -1,67 +0,0 @@
SUMMARY="Midnight Commander — a powerful file manager."
DESCRIPTION="
GNU Midnight Commander is a text-mode full-screen file manager. It uses a two panel interface and a subshell for command execution. It includes an internal editor with syntax highlighting and an internal viewer with support for binary files. Also included is Virtual Filesystem (VFS), that allows files on remote systems (e.g. FTP, SSH servers) and files inside archives to be manipulated like real files."
HOMEPAGE="http://www.midnight-commander.org/"
SRC_URI="git+https://github.com/MidnightCommander/mc#d26b7dd6ee49211f4d18fdfbe193023a3e480389"
REVISION="1"
LICENSE="GNU GPL v2"
COPYRIGHT="2007 MC Team"
ARCHITECTURES="x86 x86_gcc2"
PATCHES="mc.patch"
SOURCE_DIR="mc-4.8.11"
COOK="Maxim Sokhatsky <maxim@synrc.com>"
GLOBAL_WRITABLE_FILES="
settings/mc directory keep-old
"
PROVIDES="
mc = $portVersion
cmd:mc = $portVersion
cmd:mcedit = $portVersion
cmd:mcdiff = $portVersion
cmd:mcview = $portVersion
"
REQUIRES="
haiku >= $haikuVersion
lib:libncurses
lib:libintl
lib:libiconv
lib:libglib_2.0
"
BUILD_REQUIRES="
devel:libncurses
devel:libintl
devel:libiconv
devel:libglib_2.0
"
BUILD_PREREQUIRES="
cmd:pkg_config
haiku_devel >= $haikuVersion
cmd:gettext
cmd:make
cmd:tar
cmd:libtoolize
cmd:aclocal
cmd:autom4te
cmd:autoconf
cmd:automake
cmd:autoheader
cmd:find
cmd:gcc
"
BUILD()
{
autogen.sh
runConfigure configure --prefix="$prefix" --datarootdir="$dataRootDir" --with-screen=ncurses
make
}
INSTALL()
{
make install
}

View File

@@ -0,0 +1,83 @@
SUMMARY="Midnight Commander — a powerful file manager."
DESCRIPTION="
GNU Midnight Commander is a text-mode full-screen file manager. It uses a two \
panel interface and a subshell for command execution. It includes an internal \
editor with syntax highlighting and an internal viewer with support for \
binary files. Also included is Virtual Filesystem (VFS), that allows files on \
remote systems (e.g. FTP, SSH servers) and files inside archives to be \
manipulated like real files."
HOMEPAGE="http://www.midnight-commander.org"
COPYRIGHT="2007 MC Team"
LICENSE="GNU GPL v2"
CHECKSUM_SHA256="5f2fd570a798dc0cc06374adffef8ca403588c4e73dfdf908e9a4311718153fe"
SRC_URI="http://ftp.midnight-commander.org/mc-$portVersion.tar.xz"
REVISION="1"
ARCHITECTURES="x86_gcc2 ?x86 ?x86_64"
SECONDARY_ARCHITECTURES="x86_gcc2 x86"
PATCHES="mc-4.8.12.patch"
GLOBAL_WRITABLE_FILES="settings/mc directory keep-old"
PROVIDES="
mc$secondaryArchSuffix = $portVersion compat >= $portVersion
cmd:mc$secondaryArchSuffix = $portVersion compat >= $portVersion
cmd:mcedit$secondaryArchSuffix = $portVersion compat >= $portVersion
cmd:mcdiff$secondaryArchSuffix = $portVersion compat >= $portVersion
cmd:mcview$secondaryArchSuffix = $portVersion compat >= $portVersion
"
REQUIRES="
haiku$secondaryArchSuffix >= $haikuVersion
lib:libiconv$secondaryArchSuffix
lib:libintl$secondaryArchSuffix
lib:libncurses$secondaryArchSuffix
lib:libssh2$secondaryArchSuffix
lib:libssl$secondaryArchSuffix
lib:libz$secondaryArchSuffix
glib2$secondaryArchSuffix >= 2.38.1
"
BUILD_REQUIRES="
devel:libglib_2.0$secondaryArchSuffix
devel:libiconv$secondaryArchSuffix
devel:libintl$secondaryArchSuffix
devel:libncurses$secondaryArchSuffix
devel:libssh2$secondaryArchSuffix
devel:libssl$secondaryArchSuffix
devel:libz$secondaryArchSuffix
"
BUILD_PREREQUIRES="
haiku${secondaryArchSuffix}_devel >= $haikuVersion
cmd:awk
cmd:find
cmd:gcc$secondaryArchSuffix
cmd:gettext$secondaryArchSuffix
cmd:make
cmd:perl
cmd:pkg_config$secondaryArchSuffix
cmd:tar
"
BUILD()
{
LIBS=-lnetwork runConfigure configure \
--prefix="$prefix" \
--datarootdir="$dataRootDir" \
--enable-vfs-smb \
--with-smb-configdir="$settingsDir/samba" \
--with-smb-codepagedir="$settingsDir/samba" \
--with-homedir="$settingsDir/samba" \
--with-screen=ncurses
make $jobArgs
}
INSTALL()
{
make $jobArgs install-strip
}

View File

@@ -0,0 +1,43 @@
diff --git mc-4.8.12/lib/tty/tty-ncurses.c mc-4.8.12-haiku/lib/tty/tty-ncurses.c
--- mc-4.8.12/lib/tty/tty-ncurses.c
+++ mc-4.8.12-haiku/lib/tty/tty-ncurses.c
@@ -66,7 +66,7 @@
/*** file scope macro definitions ****************************************************************/
-#if defined(_AIX) && !defined(CTRL)
+#if !defined(CTRL)
#define CTRL(x) ((x) & 0x1f)
#endif
diff --git mc-4.8.12/lib/mcconfig/paths.c mc-4.8.12-haiku/lib/mcconfig/paths.c
--- mc-4.8.12/lib/mcconfig/paths.c
+++ mc-4.8.12-haiku/lib/mcconfig/paths.c
@@ -289,6 +289,7 @@
mc_config_init_config_paths (GError ** error)
{
char *dir;
+ char *defined_userconf_dir;
if (xdg_vars_initialized)
return;
@@ -346,7 +347,6 @@
mc_config_fix_migrated_rules ();
#else /* MC_HOMEDIR_XDG */
- char *defined_userconf_dir;
defined_userconf_dir = tilde_expand (MC_USERCONF_DIR);
if (g_path_is_absolute (defined_userconf_dir))
diff --git mc-4.8.12/lib/tty/tty-slang.h mc-4.8.12-haiku/lib/tty/tty-slang.h
--- mc-4.8.12/lib/tty/tty-slang.h
+++ mc-4.8.12-haiku/lib/tty/tty-slang.h
@@ -1,6 +1,7 @@
#ifndef MC__TTY_SLANG_H
#define MC__TTY_SLANG_H
+#define REAL_UNIX_SYSTEM
#ifdef HAVE_SLANG_SLANG_H
#include <slang/slang.h>

View File

@@ -1,12 +0,0 @@
diff --git mc-4.8.11/lib/tty/tty-ncurses.c mc-4.8.11-haiku/lib/tty/tty-ncurses.c
--- mc-4.8.11/lib/tty/tty-ncurses.c
+++ mc-4.8.11-haiku/lib/tty/tty-ncurses.c
@@ -66,7 +66,7 @@
/*** file scope macro definitions ****************************************************************/
-#if defined(_AIX) && !defined(CTRL)
+#if !defined(CTRL)
#define CTRL(x) ((x) & 0x1f)
#endif

View File

@@ -0,0 +1,63 @@
SUMMARY="My TraceRoute, an Excellent network diagnostic tool"
DESCRIPTION="
mtr combines the functionality of the 'traceroute' and 'ping' programs in a \
single network diagnostic tool
As mtr starts, it investigates the network connection between the host mtr \
runs on and a user-specified destination host. After it determines the \
address of each network hop between the machines, it sends a sequence ICMP ECHO\
requests to each one to determine the quality of the link to each machine.\
As it does this, it prints running statistics about each machine.
"
HOMEPAGE="http://www.bitwizard.nl/mtr"
CHECKSUM_SHA256="30bdf752ac048dd160aa28d5caff1ffe0986dd4df046c397087fa1d8c8e1ab51"
LICENSE="GNU GPL v2"
COPYRIGHT="1997,1998 Matt Kimball, 1999 - 2008 R.E.Wolff@BitWizard.nl"
SRC_URI="ftp://ftp.bitwizard.nl/mtr/mtr-0.73.tar.gz"
REVISION="1"
ARCHITECTURES="x86_gcc2 x86 x86_64"
SECONDARY_ARCHITECTURES="x86_gcc2 x86"
PATCHES="mtr-0.73.patch"
PROVIDES="
mtr$secondaryArchSuffix = $portVersion compat >= $portVersion
cmd:mtr$secondaryArchSuffix = $portVersion compat >= $portVersion
"
REQUIRES="
haiku$secondaryArchSuffix >= $haikuVersion
lib:libncurses$secondaryArchSuffix
"
BUILD_REQUIRES="
haiku >= $haikuVersion
devel:libncurses$secondaryArchSuffix
"
BUILD_PREREQUIRES="
haiku${secondaryArchSuffix}_devel >= $haikuVersion
cmd:aclocal
cmd:autoconf
cmd:automake
cmd:gcc$secondaryArchSuffix
cmd:ld$secondaryArchSuffix
cmd:make
cmd:which
"
BUILD()
{
aclocal
automake
autoconf
# ipv6 breaks dns support
runConfigure configure --without-gtk --disable-ipv6
make -i $jobArgs
}
INSTALL()
{
make -i $jobArgs install
}

View File

@@ -0,0 +1,97 @@
diff --git a/dns.c b/dns.c
index 371934f..1cfe047 100644
--- a/dns.c
+++ b/dns.c
@@ -28,7 +28,6 @@
#include <sys/time.h>
#include <sys/select.h>
#include <sys/stat.h>
-#include <sys/errno.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
--- mtr-0.73/configure.in 2006-10-05 11:26:41.064487424 +0400
+++ mtr-0.73-haiku/configure.in 2014-06-21 21:02:32.908328960 +0400
@@ -38,62 +38,43 @@
AC_CHECK_HEADERS(ncurses.h ncurses/curses.h curses.h cursesX.h sys/types.h)
AC_CHECK_HEADERS(sys/xti.h)
-AC_CHECK_LIB(m, floor, , AC_MSG_ERROR(No math library found))
+AC_CHECK_LIB(root, floor, , AC_MSG_ERROR(No math library found))
dnl Added ability to cleanly disable GTK+ (12 Jan 2000, Joseph Carter)
AC_ARG_WITH(gtk,
[ --without-gtk Do not try to use GTK+ at all],
WANTS_GTK=$withval, WANTS_GTK=yes)
-AC_ARG_ENABLE(gtk2,
-[ --enable-gtk2 Compile against GTK2 instead of GTK+],
-WANTS_GTK2=$enableval, WANTS_GTK2=no)
-
+
AC_ARG_ENABLE(ipv6,
[ --disable-ipv6 Do not enable IPv6],
WANTS_IPV6=$enableval, WANTS_IPV6=yes)
-
-if test "x$WANTS_GTK" = "xyes"; then
- if test "x$WANTS_GTK2" = "xyes"; then
- AM_PATH_GTK_2_0(2.0.0, CFLAGS="$CFLAGS $GTK_CFLAGS"
- LIBS="$LIBS $GTK_LIBS -lm",
- AC_MSG_WARN(Building without GTK2 display support)
- AC_DEFINE(NO_GTK)
- GTK_OBJ="")
- else
- AM_PATH_GTK(1.0.0, CFLAGS="$CFLAGS $GTK_CFLAGS"
- LIBS="$LIBS $GTK_LIBS",
- AC_MSG_WARN(Building without GTK+ display support)
- AC_DEFINE(NO_GTK)
- GTK_OBJ="")
- fi
-else
+
AC_DEFINE(NO_GTK)
GTK_OBJ=""
-fi
AC_CHECK_FUNC(socket, ,
- AC_CHECK_LIB(socket, socket, , AC_MSG_ERROR(No socket library found)))
+ AC_CHECK_LIB(network, socket, , AC_MSG_ERROR(No socket library found)))
AC_CHECK_FUNC(gethostbyname, ,
- AC_CHECK_LIB(nsl, gethostbyname, , AC_MSG_ERROR(No nameservice library found)))
+ AC_CHECK_LIB(network, gethostbyname, , AC_MSG_ERROR(No nameservice library found)))
#AC_CHECK_FUNC(res_init, ,
-# AC_CHECK_LIB(bind, res_init, ,
+# AC_CHECK_LIB(resolv, res_init, ,
# AC_CHECK_LIB(resolv, res_init, , AC_MSG_ERROR(No resolver library found))))
AC_CHECK_FUNCS(seteuid)
# AC_CHECK_FUNC(setuid, , AC_MSG_ERROR (I Need either seteuid or setuid))
AC_CHECK_FUNC(res_mkquery, ,
- AC_CHECK_LIB(bind, res_mkquery, ,
- AC_CHECK_LIB(resolv, res_mkquery, ,
- AC_CHECK_LIB(resolv, __res_mkquery, , AC_MSG_ERROR(No resolver library found)))))
-# This next line would override the just detected-or-not -lresolv.
+ AC_CHECK_LIB(network, res_mkquery, ,
+ AC_CHECK_LIB(network, res_mkquery, ,
+ AC_CHECK_LIB(network, __res_mkquery, , AC_MSG_ERROR(No resolver library found)))))
+# This next line would override the just detected-or-not -lnetwork.
# This apparently hurts BSD. And it's bad practise. So it should go.
# However, it probably didn't get added for nothing..... Holler if
# removing it hurts your OS.... -- REW
-#LIBS="$LIBS -lresolv"
+#LIBS="$LIBS"
AC_CHECK_FUNC(herror, , AC_DEFINE(NO_HERROR))
AC_CHECK_FUNC(strerror, , AC_DEFINE(NO_STRERROR))
@@ -158,6 +139,6 @@
-AM_CONFIG_HEADER(config.h)
+AC_CONFIG_HEADERS(config.h)
AC_OUTPUT(Makefile img/Makefile)

View File

@@ -0,0 +1,28 @@
From 942e8a9a2ca249e9121181217178cb3a3ff6fc19 Mon Sep 17 00:00:00 2001
From: Sergei Reznikov <diver@gelios.net>
Date: Fri, 11 Apr 2014 15:46:09 +0400
Subject: applying patch samba-3.6.23.patch
diff --git a/source3/utils/net_time.c b/source3/utils/net_time.c
index 0edb58c..2b8d365 100644
--- a/source3/utils/net_time.c
+++ b/source3/utils/net_time.c
@@ -105,6 +105,14 @@ int net_time_usage(struct net_context *c, int argc, const char **argv)
return -1;
}
+#ifdef __HAIKU__
+int settimeofday(struct timeval *tv, struct timezone *tz)
+{
+set_real_time_clock(tv->tv_sec);
+return(0);
+}
+#endif //__HAIKU__
+
/* try to set the system clock */
static int net_time_set(struct net_context *c, int argc, const char **argv)
{
--
1.8.3.4

View File

@@ -0,0 +1,151 @@
SUMMARY="Library bits of the samba network filesystem"
DESCRIPTION="
Samba is an Open Source/Free Software suite that provides seamless file and \
print services to SMB/CIFS clients. Samba is freely available, unlike other \
SMB/CIFS implementations, and allows for interoperability between Linux/Unix \
servers and Windows-based clients. Samba is software that can be run on a \
platform other than Microsoft Windows, for example, UNIX, Linux, IBM System \
390, OpenVMS, and other operating systems. Samba uses the TCP/IP protocol that \
is installed on the host server. When correctly configured, it allows that \
host to interact with a Microsoft Windows client or server as if it is a \
Windows file and print server."
HOMEPAGE="http://www.samba.org/"
COPYRIGHT="1992-2014 Anrew Tridgell and the Samba Team"
LICENSE="GNU GPL v3"
SRC_URI="http://ftp.samba.org/pub/samba/samba-3.6.23.tar.gz"
CHECKSUM_SHA256="25bbfa81b9a26609a0be744240b63e1f5030bbcfab684cf7aea3b86ed0db2dd0"
REVISION="1"
ARCHITECTURES="x86_gcc2 x86 x86_64"
SECONDARY_ARCHITECTURES="x86_gcc2 x86"
DISABLE_SOURCE_PACKAGE=yes
PATCHES="samba-3.6.23.patchset"
GLOBAL_WRITABLE_FILES="
settings/samba directory keep-old
"
PROVIDES="
smbclient$secondaryArchSuffix = $portVersion
cmd:eventlogadm$secondaryArchSuffix = $portVersion
cmd:findsmb$secondaryArchSuffix = $portVersion
cmd:net$secondaryArchSuffix = $portVersion
cmd:nmbd$secondaryArchSuffix = $portVersion
cmd:nmblookup$secondaryArchSuffix = $portVersion
cmd:ntlm_auth$secondaryArchSuffix = $portVersion
cmd:pdbedit$secondaryArchSuffix = $portVersion
cmd:profiles$secondaryArchSuffix = $portVersion
cmd:rpcclient$secondaryArchSuffix = $portVersion
cmd:sharesec$secondaryArchSuffix = $portVersion
cmd:smbcacls$secondaryArchSuffix = $portVersion
cmd:smbclient$secondaryArchSuffix = $portVersion
cmd:smbcontrol$secondaryArchSuffix = $portVersion
cmd:smbcquotas$secondaryArchSuffix = $portVersion
cmd:smbd$secondaryArchSuffix = $portVersion
cmd:smbget$secondaryArchSuffix = $portVersion
cmd:smbpasswd$secondaryArchSuffix = $portVersion
cmd:smbspool$secondaryArchSuffix = $portVersion
cmd:smbstatus$secondaryArchSuffix = $portVersion
cmd:smbta_util$secondaryArchSuffix = $portVersion
cmd:smbtar$secondaryArchSuffix = $portVersion
cmd:smbtree$secondaryArchSuffix = $portVersion
# cmd:swat$secondaryArchSuffix = $portVersion
cmd:tdbbackup$secondaryArchSuffix = $portVersion
cmd:tdbdump$secondaryArchSuffix = $portVersion
cmd:tdbrestore$secondaryArchSuffix = $portVersion
cmd:testparm$secondaryArchSuffix = $portVersion
cmd:tdbtool$secondaryArchSuffix = $portVersion
lib:libnetapi$secondaryArchSuffix = $portVersion
lib:libsmbclient$secondaryArchSuffix = $portVersion
lib:libsmbsharemodes$secondaryArchSuffix = $portVersion
lib:libtalloc$secondaryArchSuffix = $portVersion
lib:libtdb$secondaryArchSuffix = $portVersion
lib:libtevent$secondaryArchSuffix = $portVersion
"
REQUIRES="
haiku >= $haikuVersion
lib:libiconv$secondaryArchSuffix
lib:libintl$secondaryArchSuffix
lib:libncurses$secondaryArchSuffix
lib:libreadline$secondaryArchSuffix
lib:libz$secondaryArchSuffix
"
BUILD_REQUIRES="
devel:libiconv$secondaryArchSuffix
devel:libintl$secondaryArchSuffix
devel:libncurses$secondaryArchSuffix
devel:libreadline$secondaryArchSuffix
devel:libz$secondaryArchSuffix
"
BUILD_PREREQUIRES="
haiku${secondaryArchSuffix}_devel >= $haikuVersion
cmd:autoconf
cmd:libtoolize
cmd:perl
cmd:pkg_config
cmd:python
cmd:find
cmd:gcc$secondaryArchSuffix
cmd:ld$secondaryArchSuffix
cmd:make
cmd:which
"
BUILD()
{
cd source3
sed -i 's/| \*qnx\*/| \*qnx\* | haiku\*/g' configure
LDFLAGS=-lnetwork runConfigure ./configure --disable-swat \
--with-configdir=$settingsDir/samba \
--with-privatedir=$settingsDir/samba \
--with-localedir=$dataRootDir/locale \
--with-logfilebase=sharedStateDir/log
sed -i 's/\modules\/CP850.o modules\/CP437.o//g' Makefile
sed -i 's/-lpthread//g' Makefile
sed -i 's/-lc//g' Makefile
make $jobArgs
}
INSTALL()
{
cd source3
make $jobArgs install
# move headers to the correct location
mkdir -p $(dirname $includeDir)
mv $prefix/include $includeDir/
# copy sample config file
cp ../testdata/samba3/smb.conf $settingsDir/samba
prepareInstalledDevelLibs libnetapi \
libsmbclient \
libsmbsharemodes \
libtalloc \
libtdb \
libtevent
packageEntries devel $developDir
packageEntries libsmbclient
}
PROVIDES_devel="
libsmbclient${secondaryArchSuffix}_devel = $portVersion
devel:libsmbclient$secondaryArchSuffix = $portVersion compat >= 0
devel:libnetapi$secondaryArchSuffix = $portVersion compat >= 0
devel:libsmbsharemodes$secondaryArchSuffix = $portVersion compat >= 0
devel:libtalloc$secondaryArchSuffix = $portVersion compat >= 2
devel:libtdb$secondaryArchSuffix = $portVersion compat >= 1
devel:libtevent$secondaryArchSuffix = $portVersion compat >= 0
"
REQUIRES_devel="
libsmbclient$secondaryArchSuffix == $portVersion base
"