Remove uneeded patches now that we support Unix 98 PTY.

Add the include dirs to CFLAGS instead of patching all the CMakeLists.txt
files.

ok jasper@ (maintainer)
This commit is contained in:
ajacoutot 2012-12-08 13:17:41 +00:00
parent 4c31385f7e
commit 7cce2d985c
12 changed files with 19 additions and 278 deletions

View File

@ -1,4 +1,4 @@
# $OpenBSD: Makefile,v 1.7 2012/08/15 07:02:44 ajacoutot Exp $
# $OpenBSD: Makefile,v 1.8 2012/12/08 13:17:41 ajacoutot Exp $
# from upstream, removed at next update
MASTER_SITES0= https://github.com/FreeRDP/Remmina/commit/
@ -15,7 +15,7 @@ DISTNAME= Remmina-${V}
PKGNAME= ${DISTNAME:L}
WRKDIST= ${WRKDIR}/FreeRDP-Remmina-356c033
REVISION= 3
REVISION= 4
CATEGORIES= x11 net
@ -36,11 +36,11 @@ MODULES= devel/cmake \
textproc/intltool
# XXX no iconv?
WANTLIB += atk-1.0 cairo gdk-3 glib-2.0 gtk-3 pango-1.0
WANTLIB += X11 c gcrypt gdk_pixbuf-2.0 gio-2.0 gmodule-2.0 gnome-keyring
WANTLIB += gobject-2.0 gthread-2.0 pthread vte2_90 jpeg z telepathy-glib
WANTLIB += util xkbfile ssh freerdp-kbd freerdp-rail
WANTLIB += freerdp-channels freerdp-codec freerdp-core freerdp-gdi
WANTLIB += X11 atk-1.0 c cairo freerdp-channels freerdp-codec
WANTLIB += freerdp-core freerdp-gdi freerdp-kbd freerdp-rail gcrypt
WANTLIB += gdk-3 gdk_pixbuf-2.0 gio-2.0 glib-2.0 gmodule-2.0 gnome-keyring
WANTLIB += gobject-2.0 gthread-2.0 gtk-3 jpeg pango-1.0 pthread
WANTLIB += pthread-stubs ssh telepathy-glib vte2_90 xkbfile z
BUILD_DEPENDS= net/avahi,-gtk3,no_mono,no_qt3,no_qt4
@ -57,19 +57,9 @@ RUN_DEPENDS= devel/desktop-file-utils \
TAR= ${LOCALBASE}/bin/gtar
BUILD_DEPENDS += archivers/gtar
CFLAGS += -pthread
CFLAGS += -I${X11BASE}/include -I${LOCALBASE}/include
# Only useed by Ubuntu's Unity.
CONFIGURE_ARGS+= -DWITH_APPINDICATOR=OFF
pre-configure:
${SUBST_CMD} \
${WRKSRC}/remmina-plugins/nx/CMakeLists.txt \
${WRKSRC}/remmina-plugins/rdp/CMakeLists.txt \
${WRKSRC}/remmina-plugins/telepathy/CMakeLists.txt \
${WRKSRC}/remmina-plugins/vnc/CMakeLists.txt \
${WRKSRC}/remmina-plugins/vnc/libvncserver/CMakeLists.txt \
${WRKSRC}/remmina-plugins/xdmcp/CMakeLists.txt \
${WRKSRC}/remmina/CMakeLists.txt
.include <bsd.port.mk>

View File

@ -1,22 +0,0 @@
$OpenBSD: patch-CMakeLists_txt,v 1.2 2012/05/22 08:02:36 mpi Exp $
--- CMakeLists.txt.orig Thu Apr 19 16:20:37 2012
+++ CMakeLists.txt Thu Apr 19 16:27:53 2012
@@ -64,15 +64,16 @@ if(CMAKE_COMPILER_IS_GNUCC)
endif()
check_include_files(sys/param.h HAVE_SYS_PARAM_H)
-check_include_files(sys/socket.h HAVE_SYS_SOCKET_H)
+check_include_files("sys/types.h;sys/socket.h" HAVE_SYS_SOCKET_H)
check_include_files(arpa/inet.h HAVE_ARPA_INET_H)
-check_include_files(netinet/in.h HAVE_NETINET_IN_H)
+check_include_files("sys/types.h;netinet/in.h" HAVE_NETINET_IN_H)
check_include_files(termios.h HAVE_TERMIOS_H)
check_include_files(netdb.h HAVE_NETDB_H)
check_include_files(fcntl.h HAVE_FCNTL_H)
check_include_files(unistd.h HAVE_UNISTD_H)
check_include_files(sys/un.h HAVE_SYS_UN_H)
check_include_files(errno.h HAVE_ERRNO_H)
+check_include_files(util.h HAVE_UTIL_H)
include_directories(.)
include_directories(remmina/include)

View File

@ -1,11 +0,0 @@
$OpenBSD: patch-config_h_in,v 1.1 2012/05/22 08:02:36 mpi Exp $
--- config.h.in.orig Thu Apr 19 16:28:12 2012
+++ config.h.in Thu Apr 19 16:28:23 2012
@@ -11,6 +11,7 @@
#cmakedefine HAVE_UNISTD_H
#cmakedefine HAVE_SYS_UN_H
#cmakedefine HAVE_ERRNO_H
+#cmakedefine HAVE_UTIL_H
#cmakedefine GTK_VERSION ${GTK_VERSION}

View File

@ -1,12 +0,0 @@
$OpenBSD: patch-remmina-plugins_nx_CMakeLists_txt,v 1.1 2012/05/22 08:02:36 mpi Exp $
--- remmina-plugins/nx/CMakeLists.txt.orig Thu Apr 19 17:08:26 2012
+++ remmina-plugins/nx/CMakeLists.txt Thu Apr 19 17:08:44 2012
@@ -29,6 +29,8 @@ set(REMMINA_PLUGIN_NX_SRCS
add_library(remmina-plugin-nx ${REMMINA_PLUGIN_NX_SRCS})
set_target_properties(remmina-plugin-nx PROPERTIES PREFIX "")
+include_directories(${X11BASE}/include)
+
include_directories(${REMMINA_COMMON_INCLUDE_DIRS} ${XKBFILE_INCLUDE_DIRS} ${LIBSSH_INCLUDE_DIRS})
target_link_libraries(remmina-plugin-nx ${REMMINA_COMMON_LIBRARIES} ${XKBFILE_LIBRARIES} ${LIBSSH_LIBRARIES})

View File

@ -1,12 +0,0 @@
$OpenBSD: patch-remmina-plugins_rdp_CMakeLists_txt,v 1.1 2012/02/24 13:48:26 ajacoutot Exp $
--- remmina-plugins/rdp/CMakeLists.txt.orig Fri Feb 24 11:59:55 2012
+++ remmina-plugins/rdp/CMakeLists.txt Fri Feb 24 12:00:06 2012
@@ -38,6 +38,8 @@ set(REMMINA_PLUGIN_RDP_SRCS
add_library(remmina-plugin-rdp ${REMMINA_PLUGIN_RDP_SRCS})
set_target_properties(remmina-plugin-rdp PROPERTIES PREFIX "")
+include_directories(${X11BASE}/include)
+
include_directories(${REMMINA_COMMON_INCLUDE_DIRS} ${FREERDP_INCLUDE_DIRS})
target_link_libraries(remmina-plugin-rdp ${REMMINA_COMMON_LIBRARIES} ${FREERDP_LIBRARIES})

View File

@ -1,12 +0,0 @@
$OpenBSD: patch-remmina-plugins_telepathy_CMakeLists_txt,v 1.1 2012/02/24 13:48:26 ajacoutot Exp $
--- remmina-plugins/telepathy/CMakeLists.txt.orig Fri Feb 24 12:00:32 2012
+++ remmina-plugins/telepathy/CMakeLists.txt Fri Feb 24 12:00:50 2012
@@ -24,6 +24,8 @@ set(REMMINA_PLUGIN_TELEPATHY_SRCS
add_library(remmina-plugin-telepathy ${REMMINA_PLUGIN_TELEPATHY_SRCS})
set_target_properties(remmina-plugin-telepathy PROPERTIES PREFIX "")
+include_directories(${LOCALBASE}/include)
+
find_required_package(GTK3)
include_directories(${REMMINA_COMMON_INCLUDE_DIRS} ${TELEPATHY_INCLUDE_DIRS})

View File

@ -1,12 +0,0 @@
$OpenBSD: patch-remmina-plugins_vnc_CMakeLists_txt,v 1.1 2012/02/24 13:48:26 ajacoutot Exp $
--- remmina-plugins/vnc/CMakeLists.txt.orig Fri Feb 24 12:35:58 2012
+++ remmina-plugins/vnc/CMakeLists.txt Fri Feb 24 12:36:11 2012
@@ -27,6 +27,8 @@ set(REMMINA_PLUGIN_VNC_SRCS
add_library(remmina-plugin-vnc ${REMMINA_PLUGIN_VNC_SRCS})
set_target_properties(remmina-plugin-vnc PROPERTIES PREFIX "")
+include_directories(${LOCALBASE}/include)
+
include_directories(${REMMINA_COMMON_INCLUDE_DIRS} ${LIBVNCSERVER_INCLUDE_DIRS})
target_link_libraries(remmina-plugin-vnc ${REMMINA_COMMON_LIBRARIES} ${LIBVNCSERVER_LIBRARIES})

View File

@ -1,23 +0,0 @@
$OpenBSD: patch-remmina-plugins_vnc_libvncserver_CMakeLists_txt,v 1.1 2012/02/24 13:48:26 ajacoutot Exp $
--- remmina-plugins/vnc/libvncserver/CMakeLists.txt.orig Fri Feb 10 19:54:23 2012
+++ remmina-plugins/vnc/libvncserver/CMakeLists.txt Fri Feb 24 12:01:55 2012
@@ -9,6 +9,8 @@ include(TestBigEndian)
#set(PACKAGE_VERSION "0.9.8.2")
#set(PROJECT_BUGREPORT_PATH "http://sourceforge.net/projects/libvncserver")
+include_directories(${LOCALBASE}/include)
+
include_directories(${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/common)
find_package(ZLIB)
@@ -37,8 +39,8 @@ if(LIBGCRYPT_LIBRARIES)
endif(LIBGCRYPT_LIBRARIES)
check_include_file("fcntl.h" LIBVNCSERVER_HAVE_FCNTL_H)
-check_include_file("netinet/in.h" LIBVNCSERVER_HAVE_NETINET_IN_H)
-check_include_file("sys/socket.h" LIBVNCSERVER_HAVE_SYS_SOCKET_H)
+check_include_files("sys/types.h;netinet/in.h" LIBVNCSERVER_HAVE_NETINET_IN_H)
+check_include_files("sys/types.h;sys/socket.h" LIBVNCSERVER_HAVE_SYS_SOCKET_H)
check_include_file("sys/stat.h" LIBVNCSERVER_HAVE_SYS_STAT_H)
check_include_file("sys/time.h" LIBVNCSERVER_HAVE_SYS_TIME_H)
check_include_file("sys/types.h" LIBVNCSERVER_HAVE_SYS_TYPES_H)

View File

@ -1,13 +0,0 @@
$OpenBSD: patch-remmina-plugins_xdmcp_CMakeLists_txt,v 1.1 2012/02/24 13:48:26 ajacoutot Exp $
--- remmina-plugins/xdmcp/CMakeLists.txt.orig Fri Feb 10 19:54:23 2012
+++ remmina-plugins/xdmcp/CMakeLists.txt Fri Feb 24 11:55:36 2012
@@ -24,6 +24,9 @@ set(REMMINA_PLUGIN_XDMCP_SRCS
add_library(remmina-plugin-xdmcp ${REMMINA_PLUGIN_XDMCP_SRCS})
set_target_properties(remmina-plugin-xdmcp PROPERTIES PREFIX "")
+include_directories(${X11BASE}/include)
+include_directories(${LOCALBASE}/include)
+
include_directories(${REMMINA_COMMON_INCLUDE_DIRS})
target_link_libraries(remmina-plugin-xdmcp ${REMMINA_COMMON_LIBRARIES})

View File

@ -1,47 +0,0 @@
$OpenBSD: patch-remmina_CMakeLists_txt,v 1.2 2012/05/22 08:02:36 mpi Exp $
--- remmina/CMakeLists.txt.orig Fri Feb 10 19:54:23 2012
+++ remmina/CMakeLists.txt Thu Apr 19 17:06:18 2012
@@ -17,6 +17,9 @@
# Foundation, Inc., 59 Temple Place, Suite 330,
# Boston, MA 02111-1307, USA.
+include(CheckFunctionExists)
+include(CheckLibraryExists)
+
set(REMMINA_SRCS
src/remmina_about.c
src/remmina_about.h
@@ -90,6 +93,9 @@ set(REMMINA_SRCS
add_executable(remmina ${REMMINA_SRCS})
+include_directories(${X11BASE}/include)
+link_directories(${LOCALBASE}/lib)
+
include_directories(${GTK_INCLUDE_DIRS})
target_link_libraries(remmina ${GTK_LIBRARIES})
@@ -130,6 +136,23 @@ if(GTK3_FOUND)
include_directories(${APPINDICATOR_INCLUDE_DIRS})
target_link_libraries(remmina ${APPINDICATOR_LIBRARIES})
endif()
+endif()
+
+
+check_function_exists(ptsname HAVE_PTSNAME)
+if(HAVE_PTSNAME)
+ add_definitions(-DHAVE_UNIX98_PTY)
+endif()
+
+check_function_exists(openpty OPENPTY_IN_LIBC)
+if(NOT OPENPTY_IN_LIBC)
+ check_library_exists(util openpty "" OPENPTY_IN_LIBUTIL)
+ if(OPENPTY_IN_LIBUTIL)
+ target_link_libraries(remmina util)
+ endif()
+endif()
+if(OPENPTY_IN_LIBC OR OPENPTY_IN_LIBUTIL)
+ add_definitions(-DHAVE_OPENPTY)
endif()
add_subdirectory(po)

View File

@ -1,23 +0,0 @@
$OpenBSD: patch-remmina_src_remmina_pref_dialog_c,v 1.1 2012/02/24 13:48:26 ajacoutot Exp $
Don't display any SSH options which won't work since we don't use libssh.
(Can't not create the widget as the value is checked, not used, later on, and
this way the patch is kept minimal).
--- remmina/src/remmina_pref_dialog.c.orig Fri Feb 24 13:48:02 2012
+++ remmina/src/remmina_pref_dialog.c Fri Feb 24 13:48:26 2012
@@ -413,12 +413,12 @@ static void remmina_pref_dialog_init(RemminaPrefDialog
priv->scale_quality_combo = widget;
widget = gtk_label_new(_("SSH tunnel local port"));
- gtk_widget_show(widget);
+ /* gtk_widget_show(widget); */
gtk_misc_set_alignment(GTK_MISC(widget), 0.0, 0.5);
gtk_table_attach_defaults(GTK_TABLE(table), widget, 0, 1, 9, 10);
widget = gtk_entry_new();
- gtk_widget_show(widget);
+ /* gtk_widget_show(widget); */
gtk_table_attach_defaults(GTK_TABLE(table), widget, 1, 2, 9, 10);
gtk_entry_set_max_length(GTK_ENTRY(widget), 5);
g_snprintf(buf, sizeof(buf), "%i", remmina_pref.sshtunnel_port);

View File

@ -1,77 +1,15 @@
$OpenBSD: patch-remmina_src_remmina_ssh_c,v 1.3 2012/08/05 20:28:51 naddy Exp $
$OpenBSD: patch-remmina_src_remmina_ssh_c,v 1.4 2012/12/08 13:17:41 ajacoutot Exp $
https://github.com/FreeRDP/Remmina/issues/59
https://github.com/FreeRDP/Remmina/commit/1560d633c91475dca753fbf827a4dc33273c22a8
Revert commit b79355b1b5ac695c052eac5a80cf63863f0a3c85 that brokes
Remmina with OpenBSD servers.
https://github.com/FreeRDP/Remmina/issues/73
Add support for openpty(3)
--- remmina/src/remmina_ssh.c.orig Fri Feb 10 19:54:23 2012
+++ remmina/src/remmina_ssh.c Sat Jun 23 17:56:39 2012
@@ -54,6 +54,9 @@
#ifdef HAVE_TERMIOS_H
#include <termios.h>
#endif
+#ifdef HAVE_UTIL_H
+#include <util.h>
+#endif
#include "remmina_public.h"
#include "remmina_log.h"
#include "remmina_ssh.h"
@@ -120,29 +123,11 @@ static gint
remmina_ssh_auth_password (RemminaSSH *ssh)
{
gint ret;
- gint authlist;
- gint n;
- gint i;
if (ssh->authenticated) return 1;
if (ssh->password == NULL) return -1;
- authlist = ssh_userauth_list (ssh->session, NULL);
- if (authlist & SSH_AUTH_METHOD_INTERACTIVE)
- {
- while ((ret = ssh_userauth_kbdint (ssh->session, NULL, NULL)) == SSH_AUTH_INFO)
- {
- n = ssh_userauth_kbdint_getnprompts (ssh->session);
- for (i = 0; i < n; i++)
- {
- ssh_userauth_kbdint_setanswer(ssh->session, i, ssh->password);
- }
- }
- }
--- remmina/src/remmina_ssh.c.orig Sat Dec 8 11:13:44 2012
+++ remmina/src/remmina_ssh.c Sat Dec 8 11:14:00 2012
@@ -139,7 +139,7 @@ remmina_ssh_auth_password (RemminaSSH *ssh)
}
}
}
- else
- {
- ret = ssh_userauth_password (ssh->session, NULL, ssh->password);
- }
+ ret = ssh_userauth_password (ssh->session, NULL, ssh->password);
if (ret != SSH_AUTH_SUCCESS)
+ if (ret != SSH_AUTH_SUCCESS && authlist & SSH_AUTH_METHOD_PASSWORD)
{
remmina_ssh_set_error (ssh, _("SSH password authentication failed: %s"));
@@ -1430,8 +1415,9 @@ remmina_ssh_shell_thread (gpointer data)
gboolean
remmina_ssh_shell_open (RemminaSSHShell *shell, RemminaSSHExitFunc exit_callback, gpointer data)
{
- gchar *slavedevice;
struct termios stermios;
+#if defined(HAVE_UNIX98_PTY)
+ gchar *slavedevice;
shell->master = posix_openpt (O_RDWR | O_NOCTTY);
if (shell->master == -1 ||
@@ -1439,6 +1425,11 @@ remmina_ssh_shell_open (RemminaSSHShell *shell, Remmin
unlockpt (shell->master) == -1 ||
(slavedevice = ptsname (shell->master)) == NULL ||
(shell->slave = open (slavedevice, O_RDWR | O_NOCTTY)) < 0)
+#elif defined(HAVE_OPENPTY)
+ if (openpty(&shell->master, &shell->slave, NULL, NULL, NULL))
+#else
+#error Have neither UNIX98 PTY nor BSD openpty!
+#endif
{
REMMINA_SSH (shell)->error = g_strdup ("Failed to create pty device.");
return FALSE;
ret = ssh_userauth_password (ssh->session, NULL, ssh->password);
}