summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZhai Edwin <edwin.zhai@intel.com>2010-07-22 19:30:47 +0800
committerRichard Purdie <rpurdie@linux.intel.com>2010-07-24 00:07:31 +0100
commitd6ba72ac3425596aae96ccfd1ddbbaaf20b11705 (patch)
tree4dcfca5427a5be6698315d2ec35155151c075445
parentcbea4ae33f42c1553ed99a7d3bada00ce68ff9fd (diff)
downloadast2050-yocto-poky-d6ba72ac3425596aae96ccfd1ddbbaaf20b11705.zip
ast2050-yocto-poky-d6ba72ac3425596aae96ccfd1ddbbaaf20b11705.tar.gz
pcmanfm: Update to 0.9.7
New dependency on libfm & menu-cache, which are added in previous commits following patches are removed as they either don't apply or this new version has no those problems: desktop.patch no-fam.patch no-warnings.patch pcmanfm-mips-fix.patch the pending one is aowl-window-menu.patch, which need more work as the sources have changed a lot. So far w/o this patch it still works. but we need more verification later Signed-off-by: Zhai Edwin <edwin.zhai@intel.com> Signed-off-by: Kevin Tian <kevin.tian@intel.com>
-rw-r--r--meta/packages/pcmanfm/files/desktop.patch15
-rw-r--r--meta/packages/pcmanfm/files/no-fam.patch432
-rw-r--r--meta/packages/pcmanfm/files/no-warnings.patch60
-rw-r--r--meta/packages/pcmanfm/files/pcmanfm-mips-fix.patch13
-rw-r--r--meta/packages/pcmanfm/pcmanfm_0.9.7.bb (renamed from meta/packages/pcmanfm/pcmanfm_0.5.bb)17
5 files changed, 5 insertions, 532 deletions
diff --git a/meta/packages/pcmanfm/files/desktop.patch b/meta/packages/pcmanfm/files/desktop.patch
deleted file mode 100644
index 93cdd87..0000000
--- a/meta/packages/pcmanfm/files/desktop.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-Index: pcmanfm-0.5/pcmanfm.desktop.in
-===================================================================
---- pcmanfm-0.5.orig/pcmanfm.desktop.in
-+++ pcmanfm-0.5/pcmanfm.desktop.in
-@@ -1,8 +1,7 @@
- [Desktop Entry]
- Version=1.0
--Encoding=UTF-8
--Name=PCMan File Manager
--Categories=Application;System;Utility;Core;GTK;
-+Name=File Manager
-+Categories=System;Utility;Core;GTK;
- Name[zh_TW]=檔案總管
- Exec=pcmanfm %F
- Icon=pcmanfm
diff --git a/meta/packages/pcmanfm/files/no-fam.patch b/meta/packages/pcmanfm/files/no-fam.patch
deleted file mode 100644
index b87a02d..0000000
--- a/meta/packages/pcmanfm/files/no-fam.patch
+++ /dev/null
@@ -1,432 +0,0 @@
-diff -urNd ../pcmanfm-0.3.0.1-r0/pcmanfm-0.3.0.1/configure.in pcmanfm-0.3.0.1/configure.in
---- ../pcmanfm-0.3.0.1-r0/pcmanfm-0.3.0.1/configure.in 2006-08-20 15:45:28.000000000 +0100
-+++ pcmanfm-0.3.0.1/configure.in 2006-08-20 20:37:36.000000000 +0100
-@@ -63,8 +63,8 @@
- LIBS="$LIBS $FAM_LIBS"
- AC_CHECK_FUNCS([FAMNoExists])
- LIBS="$save_LIBS"
--else
-- AC_MSG_ERROR([Fatal Error: no fam or gamin detected.])
-+#else
-+# AC_MSG_ERROR([Fatal Error: no fam or gamin detected.])
- fi
-
- AC_SUBST([FAM_CFLAGS])
-diff -urNd ../pcmanfm-0.3.0.1-r0/pcmanfm-0.3.0.1/src/vfs/vfs-file-monitor.c pcmanfm-0.3.0.1/src/vfs/vfs-file-monitor.c
---- ../pcmanfm-0.3.0.1-r0/pcmanfm-0.3.0.1/src/vfs/vfs-file-monitor.c 2006-07-16 20:00:46.000000000 +0100
-+++ pcmanfm-0.3.0.1/src/vfs/vfs-file-monitor.c 2006-08-20 20:54:07.000000000 +0100
-@@ -31,7 +31,6 @@
- VFSFileMonitorCallbackEntry;
-
- static GHashTable* monitor_hash = NULL;
--static FAMConnection fam;
- static GIOChannel* fam_io_channel = NULL;
- static guint fam_io_watch = 0;
-
-@@ -40,6 +39,8 @@
- GIOCondition cond,
- gpointer user_data );
-
-+#ifdef HAVE_FAM_H
-+static FAMConnection fam;
-
- static gboolean connect_to_fam()
- {
-@@ -81,6 +82,16 @@
- FAMClose( &fam );
- }
- }
-+#else
-+static gboolean connect_to_fam ()
-+{
-+ return FALSE;
-+}
-+
-+static void disconnect_from_fam ()
-+{
-+}
-+#endif
-
- /* final cleanup */
- void vfs_file_monitor_clean()
-@@ -109,6 +120,7 @@
- VFSFileMonitorCallback cb,
- gpointer user_data )
- {
-+#ifdef HAVE_FAM_H
- VFSFileMonitor * monitor;
- VFSFileMonitorCallbackEntry cb_ent;
- gboolean add_new = FALSE;
-@@ -154,12 +166,16 @@
- }
- ++monitor->n_ref;
- return monitor;
-+#else
-+ return NULL;
-+#endif
- }
-
- void vfs_file_monitor_remove( VFSFileMonitor* fm,
- VFSFileMonitorCallback cb,
- gpointer user_data )
- {
-+#ifdef HAVE_FAM_H
- int i;
- VFSFileMonitorCallbackEntry* callbacks;
- if ( cb && fm->callbacks )
-@@ -183,12 +199,14 @@
- g_array_free( fm->callbacks, TRUE );
- g_slice_free( VFSFileMonitor, fm );
- }
-+#endif
- }
-
- static void reconnect_fam( gpointer key,
- gpointer value,
- gpointer user_data )
- {
-+#ifdef HAVE_FAM_H
- struct stat file_stat;
- VFSFileMonitor* monitor = ( VFSFileMonitor* ) value;
- const char* path = ( const char* ) key;
-@@ -209,6 +227,7 @@
- monitor );
- }
- }
-+#endif
- }
-
- /* event handler of all FAM events */
-@@ -216,6 +235,7 @@
- GIOCondition cond,
- gpointer user_data )
- {
-+#ifdef HAVE_FAM_H
- FAMEvent evt;
- VFSFileMonitor* monitor = NULL;
- VFSFileMonitorCallbackEntry* cb;
-@@ -266,5 +286,8 @@
- }
- }
- return TRUE;
-+#else
-+ return TRUE;
-+#endif
- }
-
-diff -urNd ../pcmanfm-0.3.0.1-r0/pcmanfm-0.3.0.1/src/vfs/vfs-file-monitor.c~ pcmanfm-0.3.0.1/src/vfs/vfs-file-monitor.c~
---- ../pcmanfm-0.3.0.1-r0/pcmanfm-0.3.0.1/src/vfs/vfs-file-monitor.c~ 1970-01-01 01:00:00.000000000 +0100
-+++ pcmanfm-0.3.0.1/src/vfs/vfs-file-monitor.c~ 2006-08-20 20:50:49.000000000 +0100
-@@ -0,0 +1,292 @@
-+/*
-+* C Implementation: vfs-monitor
-+*
-+* Description:
-+*
-+*
-+* Author: Hong Jen Yee (PCMan) <pcman.tw (AT) gmail.com>, (C) 2006
-+*
-+* Copyright: See COPYING file that comes with this distribution
-+*
-+*/
-+
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
-+#include "vfs-file-monitor.h"
-+#include <sys/types.h> /* for stat */
-+#include <sys/stat.h>
-+
-+#include <stdlib.h>
-+#include <string.h>
-+
-+#include "glib-mem.h"
-+
-+typedef struct
-+{
-+ VFSFileMonitorCallback callback;
-+ gpointer user_data;
-+}
-+VFSFileMonitorCallbackEntry;
-+
-+static GHashTable* monitor_hash = NULL;
-+static FAMConnection fam;
-+static GIOChannel* fam_io_channel = NULL;
-+static guint fam_io_watch = 0;
-+
-+/* event handler of all FAM events */
-+static gboolean on_fam_event( GIOChannel *channel,
-+ GIOCondition cond,
-+ gpointer user_data );
-+
-+#ifdef HAVE_FAM_H
-+static gboolean connect_to_fam()
-+{
-+ if ( FAMOpen( &fam ) )
-+ {
-+ fam_io_channel = NULL;
-+ fam.fd = -1;
-+ g_warning( "There is no FAM/gamin server\n" );
-+ return FALSE;
-+ }
-+#if HAVE_FAMNOEXISTS
-+ /*
-+ * Disable the initital directory content loading.
-+ * This can greatly speed up directory loading, but
-+ * unfortunately, it's not compatible with original FAM.
-+ */
-+ FAMNoExists( &fam ); /* This is an extension of gamin */
-+#endif
-+
-+ fam_io_channel = g_io_channel_unix_new( fam.fd );
-+ g_io_channel_set_encoding( fam_io_channel, NULL, NULL );
-+ g_io_channel_set_buffered( fam_io_channel, FALSE );
-+
-+ fam_io_watch = g_io_add_watch( fam_io_channel,
-+ G_IO_IN | G_IO_HUP,
-+ on_fam_event,
-+ NULL );
-+ return TRUE;
-+}
-+
-+static void disconnect_from_fam()
-+{
-+ if ( fam_io_channel )
-+ {
-+ g_io_channel_unref( fam_io_channel );
-+ fam_io_channel = NULL;
-+ g_source_remove( fam_io_watch );
-+
-+ FAMClose( &fam );
-+ }
-+}
-+#else
-+static gboolean connect_to_fam ()
-+{
-+ return FALSE;
-+}
-+
-+static void disconnect_from_fam ()
-+{
-+}
-+#endif
-+
-+/* final cleanup */
-+void vfs_file_monitor_clean()
-+{
-+ disconnect_from_fam();
-+ if ( monitor_hash )
-+ {
-+ g_hash_table_destroy( monitor_hash );
-+ monitor_hash = NULL;
-+ }
-+}
-+
-+/*
-+* Init monitor:
-+* Establish connection with gamin/fam.
-+*/
-+gboolean vfs_file_monitor_init()
-+{
-+ monitor_hash = g_hash_table_new( g_str_hash, g_str_equal );
-+ if ( ! connect_to_fam() )
-+ return FALSE;
-+ return TRUE;
-+}
-+
-+VFSFileMonitor* vfs_file_monitor_add( const char* path,
-+ VFSFileMonitorCallback cb,
-+ gpointer user_data )
-+{
-+#ifdef HAVE_FAM_H
-+ VFSFileMonitor * monitor;
-+ VFSFileMonitorCallbackEntry cb_ent;
-+ gboolean add_new = FALSE;
-+ struct stat file_stat;
-+
-+ if ( ! monitor_hash )
-+ {
-+ if ( !vfs_file_monitor_init() )
-+ return NULL;
-+ }
-+ monitor = ( VFSFileMonitor* ) g_hash_table_lookup ( monitor_hash, path );
-+ if ( ! monitor )
-+ {
-+ monitor = g_slice_new0( VFSFileMonitor );
-+ monitor->path = g_strdup( path );
-+ monitor->callbacks = g_array_new ( FALSE, FALSE, sizeof( VFSFileMonitorCallbackEntry ) );
-+ g_hash_table_insert ( monitor_hash,
-+ path,
-+ monitor );
-+ if ( lstat( path, &file_stat ) != -1 )
-+ {
-+ if ( S_ISDIR( file_stat.st_mode ) )
-+ {
-+ FAMMonitorDirectory( &fam,
-+ path,
-+ &monitor->request,
-+ monitor );
-+ }
-+ else
-+ {
-+ FAMMonitorFile( &fam,
-+ path,
-+ &monitor->request,
-+ monitor );
-+ }
-+ }
-+ }
-+ if ( cb )
-+ { /* Install a callback */
-+ cb_ent.callback = cb;
-+ cb_ent.user_data = user_data;
-+ monitor->callbacks = g_array_append_val( monitor->callbacks, cb_ent );
-+ }
-+ ++monitor->n_ref;
-+ return monitor;
-+#else
-+ return NULL;
-+#endif
-+}
-+
-+void vfs_file_monitor_remove( VFSFileMonitor* fm,
-+ VFSFileMonitorCallback cb,
-+ gpointer user_data )
-+{
-+#ifdef HAVE_FAM_H
-+ int i;
-+ VFSFileMonitorCallbackEntry* callbacks;
-+ if ( cb && fm->callbacks )
-+ {
-+ callbacks = ( VFSFileMonitorCallbackEntry* ) fm->callbacks->data;
-+ for ( i = 0; i < fm->callbacks->len; ++i )
-+ {
-+ if ( callbacks[ i ].callback == cb && callbacks[ i ].user_data == user_data )
-+ {
-+ fm->callbacks = g_array_remove_index_fast ( fm->callbacks, i );
-+ break;
-+ }
-+ }
-+ }
-+ --fm->n_ref;
-+ if ( 0 >= fm->n_ref )
-+ {
-+ FAMCancelMonitor( &fam, &fm->request );
-+ g_hash_table_remove( monitor_hash, fm->path );
-+ g_free( fm->path );
-+ g_array_free( fm->callbacks, TRUE );
-+ g_slice_free( VFSFileMonitor, fm );
-+ }
-+#endif
-+}
-+
-+static void reconnect_fam( gpointer key,
-+ gpointer value,
-+ gpointer user_data )
-+{
-+#ifdef HAVE_FAM_H
-+ struct stat file_stat;
-+ VFSFileMonitor* monitor = ( VFSFileMonitor* ) value;
-+ const char* path = ( const char* ) key;
-+ if ( lstat( path, &file_stat ) != -1 )
-+ {
-+ if ( S_ISDIR( file_stat.st_mode ) )
-+ {
-+ FAMMonitorDirectory( &fam,
-+ path,
-+ &monitor->request,
-+ monitor );
-+ }
-+ else
-+ {
-+ FAMMonitorFile( &fam,
-+ path,
-+ &monitor->request,
-+ monitor );
-+ }
-+ }
-+#endif
-+}
-+
-+/* event handler of all FAM events */
-+static gboolean on_fam_event( GIOChannel *channel,
-+ GIOCondition cond,
-+ gpointer user_data )
-+{
-+#ifdef HAVE_FAM_H
-+ FAMEvent evt;
-+ VFSFileMonitor* monitor = NULL;
-+ VFSFileMonitorCallbackEntry* cb;
-+ VFSFileMonitorCallback func;
-+ int i;
-+
-+ if ( cond & G_IO_HUP )
-+ {
-+ disconnect_from_fam();
-+ if ( g_hash_table_size ( monitor_hash ) > 0 )
-+ {
-+ /*
-+ Disconnected from FAM server, but there are still monitors.
-+ This may be caused by crash of FAM server.
-+ So we have to reconnect to FAM server.
-+ */
-+ connect_to_fam();
-+ g_hash_table_foreach( monitor_hash, ( GHFunc ) reconnect_fam, NULL );
-+ }
-+ return TRUE; /* don't need to remove the event source since
-+ it has been removed by disconnect_from_fam(). */
-+ }
-+
-+ while ( FAMPending( &fam ) )
-+ {
-+ if ( FAMNextEvent( &fam, &evt ) > 0 )
-+ {
-+ monitor = ( VFSFileMonitor* ) evt.userdata;
-+ switch ( evt.code )
-+ {
-+ case FAMCreated:
-+ case FAMDeleted:
-+ case FAMChanged:
-+ /* Call the callback functions */
-+ if ( monitor->callbacks && monitor->callbacks->len )
-+ {
-+ cb = ( VFSFileMonitorCallbackEntry* ) monitor->callbacks->data;
-+ for ( i = 0; i < monitor->callbacks->len; ++i )
-+ {
-+ func = cb[ i ].callback;
-+ func( monitor, evt.code, evt.filename, cb[ i ].user_data );
-+ }
-+ }
-+ break;
-+ default:
-+ return TRUE; /* Other events are not supported */
-+ }
-+ }
-+ }
-+ return TRUE;
-+#else
-+ return TRUE;
-+#endif
-+}
-+
-diff -urNd ../pcmanfm-0.3.0.1-r0/pcmanfm-0.3.0.1/src/vfs/vfs-file-monitor.h pcmanfm-0.3.0.1/src/vfs/vfs-file-monitor.h
---- ../pcmanfm-0.3.0.1-r0/pcmanfm-0.3.0.1/src/vfs/vfs-file-monitor.h 2006-04-03 00:38:33.000000000 +0100
-+++ pcmanfm-0.3.0.1/src/vfs/vfs-file-monitor.h 2006-08-20 20:47:00.000000000 +0100
-@@ -20,7 +20,16 @@
- #define _VFS_FILE_MONITOR_H_
-
- #include <glib.h>
-+#ifdef HAVE_FAM_H
- #include <fam.h>
-+#else
-+# define FAMCreated 0
-+# define FAMDeleted 1
-+# define FAMChanged 2
-+typedef struct {
-+ int reqnum;
-+} FAMRequest;
-+#endif
-
- G_BEGIN_DECLS
-
diff --git a/meta/packages/pcmanfm/files/no-warnings.patch b/meta/packages/pcmanfm/files/no-warnings.patch
deleted file mode 100644
index b1570a0..0000000
--- a/meta/packages/pcmanfm/files/no-warnings.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-Index: pcmanfm-0.5/src/main.c
-===================================================================
---- pcmanfm-0.5.orig/src/main.c
-+++ pcmanfm-0.5/src/main.c
-@@ -118,7 +118,7 @@
-
- static void init_folder();
- static void init_daemon_or_desktop();
--static void check_icon_theme();
-+/*static void check_icon_theme();*/
-
- static gboolean handle_parsed_commandline_args();
-
-@@ -322,7 +322,7 @@
- gtk_widget_show ( GTK_WIDGET( main_window ) );
- return main_window;
- }
--
-+#if 0
- void check_icon_theme()
- {
- GtkSettings * settings;
-@@ -361,7 +361,7 @@
- }
- g_free( theme );
- }
--
-+#endif
- #ifdef _DEBUG_THREAD
-
- G_LOCK_DEFINE(gdk_lock);
-@@ -405,7 +405,7 @@
- vfs_file_info_set_thumbnail_size( app_settings.big_icon_size,
- app_settings.small_icon_size );
-
-- check_icon_theme();
-+/* check_icon_theme();*/
- folder_initialized = TRUE;
- }
-
-Index: pcmanfm-0.5/src/main-window.c
-===================================================================
---- pcmanfm-0.5.orig/src/main-window.c
-+++ pcmanfm-0.5/src/main-window.c
-@@ -633,6 +633,7 @@
- gtk_widget_grab_focus ( GTK_WIDGET( main_window->address_bar ) );
-
- #ifdef SUPER_USER_CHECKS
-+#if 0
- /* Create warning bar for super user */
- if ( geteuid() == 0 ) /* Run as super user! */
- {
-@@ -648,6 +649,7 @@
- main_window->status_bar, FALSE, FALSE, 2 );
- }
- #endif
-+#endif
-
- /* Create client area */
- main_window->notebook = gtk_notebook_new();
diff --git a/meta/packages/pcmanfm/files/pcmanfm-mips-fix.patch b/meta/packages/pcmanfm/files/pcmanfm-mips-fix.patch
deleted file mode 100644
index ad5dc67..0000000
--- a/meta/packages/pcmanfm/files/pcmanfm-mips-fix.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- pcmanfm-0.3.2.2-org/src/inotify/inotify-syscalls.h 2010-01-07 14:53:56.938000062 +0800
-+++ pcmanfm-0.3.2.2/src/inotify/inotify-syscalls.h 2010-01-07 14:54:57.830000065 +0800
-@@ -39,6 +39,10 @@
- # define __NR_inotify_init 290
- # define __NR_inotify_add_watch 291
- # define __NR_inotify_rm_watch 292
-+#elif defined (__mips__)
-+# define __NR_inotify_init 284
-+# define __NR_inotify_add_watch 285
-+# define __NR_inotify_rm_watch 286
- #else
- # error "Unsupported architecture!"
- #endif
diff --git a/meta/packages/pcmanfm/pcmanfm_0.5.bb b/meta/packages/pcmanfm/pcmanfm_0.9.7.bb
index e253d79..3f69066 100644
--- a/meta/packages/pcmanfm/pcmanfm_0.5.bb
+++ b/meta/packages/pcmanfm/pcmanfm_0.9.7.bb
@@ -4,12 +4,12 @@ BUGTRACKER = ""
LICENSE = "GPLv2 & GPLv2+ & LGPLv2.1+"
LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \
- file://src/pcmanfm.h;endline=22;md5=0fa9129ee918f493e573154f6ec43fb7 \
- file://src/find-files.c;endline=26;md5=9a92e8f329c97de94e90976a37dde5a5"
+ file://src/pcmanfm.h;endline=22;md5=417b3855771a3a87f8ad753d994491f0 \
+ file://src/gseal-gtk-compat.h;endline=21;md5=46922c8691f58d124f9420fe16149ce2"
SECTION = "x11"
PRIORITY = "optional"
-DEPENDS = "gtk+ startup-notification"
+DEPENDS = "gtk+ startup-notification libfm"
DEPENDS_append_poky = " libowl"
PR = "r0"
@@ -20,14 +20,9 @@ SRC_URI = "${SOURCEFORGE_MIRROR}/pcmanfm/pcmanfm-${PV}.tar.gz \
file://gnome-fs-directory.png \
file://gnome-fs-regular.png \
file://gnome-mime-text-plain.png \
- file://emblem-symbolic-link.png \
- file://desktop.patch;patch=1 \
- file://no-warnings.patch;patch=1 \
- file://pcmanfm-mips-fix.patch;patch=1"
+ file://emblem-symbolic-link.png"
-SRC_URI_append_poky = " file://owl-window-menu.patch;patch=1"
-
-EXTRA_OECONF = "--enable-inotify --disable-hal"
+#SRC_URI_append_poky = " file://owl-window-menu.patch;patch=1"
inherit autotools pkgconfig
@@ -37,5 +32,3 @@ do_install_append () {
install -m 0644 ${WORKDIR}/*.png ${D}/${datadir}/pixmaps
}
-
-FILES_${PN} += "${datadir}/pixmaps/*.png"
OpenPOWER on IntegriCloud