From 2d4e6804c2fb5cbfe5ed79f08498bfd3ebb078d3 Mon Sep 17 00:00:00 2001 From: Christoph Wickert Date: Mon, 16 Apr 2012 00:14:11 +0200 Subject: [PATCH] Add missing patches --- remmina-1.0.0-fix-library-name.patch | 25 +++ remmina-1.0.0-linker-error.patch | 262 +++++++++++++++++++++++++++ 2 files changed, 287 insertions(+) create mode 100644 remmina-1.0.0-fix-library-name.patch create mode 100644 remmina-1.0.0-linker-error.patch diff --git a/remmina-1.0.0-fix-library-name.patch b/remmina-1.0.0-fix-library-name.patch new file mode 100644 index 0000000..1774dd6 --- /dev/null +++ b/remmina-1.0.0-fix-library-name.patch @@ -0,0 +1,25 @@ +From 503a008e4aedc74b775c785f96292b8f5c448137 Mon Sep 17 00:00:00 2001 +From: Andrey +Date: Sat, 10 Mar 2012 01:00:32 +0400 +Subject: [PATCH] fix library name mistake + +--- + cmake/FindGTK3.cmake | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/cmake/FindGTK3.cmake b/cmake/FindGTK3.cmake +index c1b019e..f73b64d 100644 +--- a/cmake/FindGTK3.cmake ++++ b/cmake/FindGTK3.cmake +@@ -48,7 +48,7 @@ find_path(GDKPIXBUF_INCLUDE_DIR gdk-pixbuf/gdk-pixbuf.h + HINTS ${PC_GDKPIXBUF_INCLUDEDIR} ${PC_GDKPIXBUF_INCLUDE_DIRS} + PATH_SUFFIXES gdk-pixbuf-2.0) + +-find_library(GDKPIXBUF_LIBRARY NAMES gdk-3 ++find_library(GDKPIXBUF_LIBRARY NAMES gdk_pixbuf-2.0 + HINTS ${PC_GDKPIXBUF_LIBDIR} ${PC_GDKPIXBUF_LIBRARY_DIRS}) + + # Glib +-- +1.7.5.4 + diff --git a/remmina-1.0.0-linker-error.patch b/remmina-1.0.0-linker-error.patch new file mode 100644 index 0000000..298767c --- /dev/null +++ b/remmina-1.0.0-linker-error.patch @@ -0,0 +1,262 @@ +From 13f203672155cd52278655f03da7ff8dcff75c29 Mon Sep 17 00:00:00 2001 +From: Andrey Gankov +Date: Sat, 10 Mar 2012 02:55:32 +0400 +Subject: [PATCH] Fix Issue #9: linker error + +--- + cmake/FindGLIB2.cmake | 120 ++++++++++++++++++++++++++++++++++++++++++++++++ + cmake/FindGTK2.cmake | 21 ++------- + cmake/FindGTK3.cmake | 24 +++------- + remmina/CMakeLists.txt | 9 ++++ + 4 files changed, 140 insertions(+), 34 deletions(-) + create mode 100644 cmake/FindGLIB2.cmake + +diff --git a/cmake/FindGLIB2.cmake b/cmake/FindGLIB2.cmake +new file mode 100644 +index 0000000..8208ded +--- /dev/null ++++ b/cmake/FindGLIB2.cmake +@@ -0,0 +1,120 @@ ++# Remmina - The GTK+ Remote Desktop Client ++# ++# Copyright (C) 2012 Andrey Gankov ++# ++# This program is free software; you can redistribute it and/or modify ++# it under the terms of the GNU General Public License as published by ++# the Free Software Foundation; either version 2 of the License, or ++# (at your option) any later version. ++# ++# This program is distributed in the hope that it will be useful, ++# but WITHOUT ANY WARRANTY; without even the implied warranty of ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++# GNU General Public License for more details. ++# ++# You should have received a copy of the GNU General Public License ++# along with this program; if not, write to the Free Software ++# Foundation, Inc., 59 Temple Place, Suite 330, ++# Boston, MA 02111-1307, USA. ++ ++set(_GLIB_found_all true) ++ ++# Glib ++ ++pkg_check_modules(PC_GLIB2 glib-2.0) ++ ++if(NOT PC_GLIB2_FOUND) ++ set(_GLIB_found_all false) ++endif() ++ ++find_path(GLIB2_INCLUDE_DIR_PART1 NAMES glib.h ++ HINTS ${PC_GLIB2_INCLUDEDIR} ${PC_GLIB2_INCLUDE_DIRS} ++ PATH_SUFFIXES glib-2.0) ++ ++find_path(GLIB2_INCLUDE_DIR_PART2 NAMES glibconfig.h ++ HINTS ${PC_GLIB2_INCLUDEDIR} ${PC_GLIB2_INCLUDE_DIRS} ++ PATH_SUFFIXES glib-2.0/include) ++ ++set(GLIB2_INCLUDE_DIR ${GLIB2_INCLUDE_DIR_PART1} ${GLIB2_INCLUDE_DIR_PART2}) ++ ++find_library(GLIB2_LIBRARY NAMES glib-2.0) ++ ++# GIO ++ ++pkg_check_modules(PC_GIO gio-2.0) ++ ++if(NOT PC_GIO_FOUND) ++ set(_GLIB_found_all false) ++endif() ++ ++find_path(GIO_INCLUDE_DIR gio/gio.h ++ HINTS ${PC_GIO_INCLUDEDIR} ${PC_GIO_INCLUDE_DIRS} ++ PATH_SUFFIXES gio-2.0) ++ ++find_library(GIO_LIBRARY NAMES gio-2.0 ++ HINTS ${PC_GIO_LIBDIR} ${PC_GIO_LIBRARY_DIRS}) ++ ++# gobject ++ ++pkg_check_modules(PC_GOBJECT gobject-2.0) ++ ++if(NOT PC_GOBJECT_FOUND) ++ set(_GLIB_found_all false) ++endif() ++ ++find_path(GOBJECT_INCLUDE_DIR gobject/gobject.h ++ HINTS ${PC_GOBJECT_INCLUDEDIR} ${PC_GOBJECT_INCLUDE_DIRS} ++ PATH_SUFFIXES gobject-2.0) ++ ++find_library(GOBJECT_LIBRARY NAMES gobject-2.0 ++ HINTS ${PC_GOBJECT_LIBDIR} ${PC_GOBJECT_LIBRARY_DIRS}) ++ ++# gmodule ++ ++pkg_check_modules(PC_GMODULE gmodule-2.0) ++ ++if(NOT PC_GMODULE_FOUND) ++ set(_GLIB_found_all false) ++endif() ++ ++find_path(GMODULE_INCLUDE_DIR gmodule.h ++ HINTS ${PC_GMODULE_INCLUDEDIR} ${PC_GMODULE_INCLUDE_DIRS} ++ PATH_SUFFIXES gmodule-2.0) ++ ++find_library(GMODULE_LIBRARY NAMES gmodule-2.0 ++ HINTS ${PC_GMODULE_LIBDIR} ${PC_GMODULE_LIBRARY_DIRS}) ++ ++# gthread ++ ++pkg_check_modules(PC_GTHREAD gthread-2.0) ++ ++if(NOT PC_GTHREAD_FOUND) ++ set(_GLIB_found_all false) ++endif() ++ ++find_path(GTHREAD_INCLUDE_DIR glib/gthread.h ++ HINTS ${PC_GTHREAD_INCLUDEDIR} ${PC_GTHREAD_INCLUDE_DIRS} ++ PATH_SUFFIXES gthread-2.0) ++ ++find_library(GTHREAD_LIBRARY NAMES gthread-2.0 ++ HINTS ${PC_GTHREAD_LIBDIR} ${PC_GTHREAD_LIBRARY_DIRS}) ++ ++# Finalize ++ ++if(_GLIB_found_all) ++ include(FindPackageHandleStandardArgs) ++ ++ find_package_handle_standard_args(GLIB2 DEFAULT_MSG GLIB2_LIBRARY GLIB2_INCLUDE_DIR) ++ ++ set(GLIB2_LIBRARIES ${GLIB2_LIBRARY} ${GIO_LIBRARY} ${GOBJECT_LIBRARY} ${GMODULE_LIBRARY} ${GTHREAD_LIBRARY}) ++ set(GLIB2_INCLUDE_DIRS ${GLIB2_INCLUDE_DIR} ${GIO_INCLUDE_DIR} ${GOBJECT_INCLUDE_DIR} ${GMODULE_INCLUDE_DIR} ${GTHREAD_INCLUDE_DIR}) ++ ++ mark_as_advanced(GLIB2_INCLUDE_DIR GLIB2_LIBRARY) ++ ++ set(GLIB_FOUND true) ++else() ++ unset(GLIB2_LIBRARY) ++ unset(GLIB2_INCLUDE_DIR) ++ ++ set(GLIB_FOUND false) ++endif() +diff --git a/cmake/FindGTK2.cmake b/cmake/FindGTK2.cmake +index b33966e..caf0295 100644 +--- a/cmake/FindGTK2.cmake ++++ b/cmake/FindGTK2.cmake +@@ -63,24 +63,11 @@ find_library(GDKPIXBUF_LIBRARY NAMES gdk_pixbuf-2.0 + + # Glib + +-pkg_check_modules(PC_GLIB2 glib-2.0) +- +-if(NOT PC_GLIB2_FOUND) ++find_required_package(GLIB2) ++if(NOT GLIB2_FOUND) + set(_GTK2_found_all false) + endif() + +-find_path(GLIB2_INCLUDE_DIR_PART1 NAMES glib.h +- HINTS ${PC_GLIB2_INCLUDEDIR} ${PC_GLIB2_INCLUDE_DIRS} +- PATH_SUFFIXES glib-2.0) +- +-find_path(GLIB2_INCLUDE_DIR_PART2 NAMES glibconfig.h +- HINTS ${PC_GLIB2_INCLUDEDIR} ${PC_GLIB2_INCLUDE_DIRS} +- PATH_SUFFIXES glib-2.0/include) +- +-set(GLIB2_INCLUDE_DIR ${GLIB2_INCLUDE_DIR_PART1} ${GLIB2_INCLUDE_DIR_PART2}) +- +-find_library(GLIB2_LIBRARY NAMES glib-2.0) +- + # Pango + + pkg_check_modules(PC_PANGO pango) +@@ -129,8 +116,8 @@ if(_GTK2_found_all) + + find_package_handle_standard_args(GTK2 DEFAULT_MSG GTK2_LIBRARY GTK2_INCLUDE_DIR) + +- set(GTK2_LIBRARIES ${GTK2_LIBRARY} ${GDK2_LIBRARY} ${GLIB2_LIBRARY} ${PANGO_LIBRARY} ${CAIRO_LIBRARY} ${GDKPIXBUF_LIBRARY} ${ATK_LIBRARY}) +- set(GTK2_INCLUDE_DIRS ${GTK2_INCLUDE_DIR} ${GDK2_INCLUDE_DIR} ${GLIB2_INCLUDE_DIR} ${PANGO_INCLUDE_DIR} ${CAIRO_INCLUDE_DIR} ${GDKPIXBUF_INCLUDE_DIR} ${ATK_INCLUDE_DIR}) ++ set(GTK2_LIBRARIES ${GTK2_LIBRARY} ${GDK2_LIBRARY} ${GLIB2_LIBRARIES} ${PANGO_LIBRARY} ${CAIRO_LIBRARY} ${GDKPIXBUF_LIBRARY} ${ATK_LIBRARY}) ++ set(GTK2_INCLUDE_DIRS ${GTK2_INCLUDE_DIR} ${GDK2_INCLUDE_DIR} ${GLIB2_INCLUDE_DIRS} ${PANGO_INCLUDE_DIR} ${CAIRO_INCLUDE_DIR} ${GDKPIXBUF_INCLUDE_DIR} ${ATK_INCLUDE_DIR}) + + mark_as_advanced(GTK2_INCLUDE_DIR GTK2_LIBRARY) + +diff --git a/cmake/FindGTK3.cmake b/cmake/FindGTK3.cmake +index f73b64d..decb00a 100644 +--- a/cmake/FindGTK3.cmake ++++ b/cmake/FindGTK3.cmake +@@ -53,24 +53,11 @@ find_library(GDKPIXBUF_LIBRARY NAMES gdk_pixbuf-2.0 + + # Glib + +-pkg_check_modules(PC_GLIB2 glib-2.0) +- +-if(NOT PC_GLIB2_FOUND) ++find_required_package(GLIB2) ++if(NOT GLIB2_FOUND) + set(_GTK3_found_all false) + endif() + +-find_path(GLIB2_INCLUDE_DIR_PART1 NAMES glib.h +- HINTS ${PC_GLIB2_INCLUDEDIR} ${PC_GLIB2_INCLUDE_DIRS} +- PATH_SUFFIXES glib-2.0) +- +-find_path(GLIB2_INCLUDE_DIR_PART2 NAMES glibconfig.h +- HINTS ${PC_GLIB2_INCLUDEDIR} ${PC_GLIB2_INCLUDE_DIRS} +- PATH_SUFFIXES glib-2.0/include) +- +-set(GLIB2_INCLUDE_DIR ${GLIB2_INCLUDE_DIR_PART1} ${GLIB2_INCLUDE_DIR_PART2}) +- +-find_library(GLIB2_LIBRARY NAMES glib-2.0) +- + # Pango + + pkg_check_modules(PC_PANGO pango) +@@ -119,14 +106,17 @@ if(_GTK3_found_all) + + find_package_handle_standard_args(GTK3 DEFAULT_MSG GTK3_LIBRARY GTK3_INCLUDE_DIR) + +- set(GTK3_LIBRARIES ${GTK3_LIBRARY} ${GDK3_LIBRARY} ${GLIB2_LIBRARY} ${PANGO_LIBRARY} ${CAIRO_LIBRARY} ${GDKPIXBUF_LIBRARY} ${ATK_LIBRARY}) +- set(GTK3_INCLUDE_DIRS ${GTK3_INCLUDE_DIR} ${GLIB2_INCLUDE_DIR} ${PANGO_INCLUDE_DIR} ${CAIRO_INCLUDE_DIR} ${GDKPIXBUF_INCLUDE_DIR} ${ATK_INCLUDE_DIR}) ++ set(GTK3_LIBRARIES ${GTK3_LIBRARY} ${GDK3_LIBRARY} ${GLIB2_LIBRARIES} ${PANGO_LIBRARY} ${CAIRO_LIBRARY} ${GDKPIXBUF_LIBRARY} ${ATK_LIBRARY}) ++ set(GTK3_INCLUDE_DIRS ${GTK3_INCLUDE_DIR} ${GLIB2_INCLUDE_DIRS} ${PANGO_INCLUDE_DIR} ${CAIRO_INCLUDE_DIR} ${GDKPIXBUF_INCLUDE_DIR} ${ATK_INCLUDE_DIR}) + + mark_as_advanced(GTK3_INCLUDE_DIR GTK3_LIBRARY) + + set(GTK3_FOUND true) + else() + unset(GTK3_LIBRARY) ++ unset(GTK3_INCLUDE_DIR) ++ ++ unset(GDK3_LIBRARY) + unset(GDK3_INCLUDE_DIR) + + set(GTK3_FOUND false) +diff --git a/remmina/CMakeLists.txt b/remmina/CMakeLists.txt +index 0fe7bbf..9e7c982 100644 +--- a/remmina/CMakeLists.txt ++++ b/remmina/CMakeLists.txt +@@ -93,6 +93,10 @@ add_executable(remmina ${REMMINA_SRCS}) + include_directories(${GTK_INCLUDE_DIRS}) + target_link_libraries(remmina ${GTK_LIBRARIES}) + ++find_package(X11) ++include_directories(${X11_INCLUDE_DIR}) ++target_link_libraries(remmina ${X11_LIBRARIES}) ++ + find_suggested_package(LIBSSH) + if(LIBSSH_FOUND) + add_definitions(-DHAVE_LIBSSH) +@@ -100,6 +104,11 @@ if(LIBSSH_FOUND) + target_link_libraries(remmina ${LIBSSH_LIBRARIES}) + endif() + ++if(PTHREAD_FOUND) ++ include_directories(${PTHREAD_INCLUDE_DIRS}) ++ target_link_libraries(remmina ${PTHREAD_LIBRARIES}) ++endif() ++ + if(GCRYPT_FOUND) + include_directories(${GCRYPT_INCLUDE_DIRS}) + target_link_libraries(remmina ${GCRYPT_LIBRARIES}) +-- +1.7.5.4 +