ports/118475: [patch] x11-fm/gnome-commander unbreak fix build with GCC 4.2

Pietro Cerutti gahr at gahr.ch
Fri Dec 7 01:30:04 UTC 2007


>Number:         118475
>Category:       ports
>Synopsis:       [patch] x11-fm/gnome-commander unbreak fix build with GCC 4.2
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Fri Dec 07 01:30:03 UTC 2007
>Closed-Date:
>Last-Modified:
>Originator:     Pietro Cerutti
>Release:        FreeBSD 8.0-CURRENT i386
>Organization:
>Environment:


System: FreeBSD 8.0-CURRENT #15: Thu Dec  6 12:47:48 CET 2007
    root at gahrtop.localhost:/usr/obj/usr/src/sys/MSI1034



>Description:


The following patch:

- fixes build with GCC 4.2
- cleans a few warnings

Tested on:
8.0-CURRENT i386
7.0-BETA3 sparc64


>How-To-Repeat:


cd /usr/ports/x11-fm/gnome-commander && make


>Fix:


--- _gnome-commander.diff begins here ---
--- Makefile.orig	2007-12-07 01:39:13.000000000 +0100
+++ Makefile	2007-12-07 02:03:30.000000000 +0100
@@ -31,12 +31,6 @@
 CONFIGURE_ENV=	CPPFLAGS="-I${LOCALBASE}/include" \
 		LIBS="-L${LOCALBASE}/lib -lintl"
 
-.include <bsd.port.pre.mk>
-
-.if ${OSVERSION} >= 700042
-BROKEN=		Broken with gcc 4.2
-.endif
-
 pre-everything::
 .if !defined(WITH_FAM)
 	@${ECHO} ""
@@ -45,4 +39,4 @@
 	@${ECHO} ""
 .endif
 
-.include <bsd.port.post.mk>
+.include <bsd.port.mk>
--- /dev/null	2007-12-07 02:02:18.000000000 +0100
+++ files/patch-src_gnome-cmd-advrename-lexer.l	2007-12-07 01:51:04.000000000 +0100
@@ -0,0 +1,95 @@
+--- src/gnome-cmd-advrename-lexer.l.orig	2007-12-07 01:47:10.000000000 +0100
++++ src/gnome-cmd-advrename-lexer.l	2007-12-07 01:49:09.000000000 +0100
+@@ -85,8 +85,8 @@
+                                         case 'p' : *s++ = PARENT_DIR; break;
+                                       }
+                                     
+-                                      *((int *) s)++ = --from;
+-                                      *((int *) s)++ = length;
++                                      *s++ = --from;
++                                      *s++ = length;
+                                     }
+ 
+                                     fname_template_size -= sizeof(char)+2*sizeof(int);
+@@ -99,7 +99,7 @@
+ 				    precision = -1;
+                                     sscanf(yytext+3,"%d",&precision);
+                                     *s++ = COUNTER;
+-                                    *((int *) s)++ = precision<MAX_PRECISION ? precision : MAX_PRECISION;
++                                    *s++ = precision<MAX_PRECISION ? precision : MAX_PRECISION;
+                                     fname_template_size -= sizeof(char)+sizeof(int);
+                                   }
+                                 }
+@@ -117,8 +117,8 @@
+                                       case 'p' : *s++ = PARENT_DIR; break;
+                                     }
+                                     
+-                                    *((int *) s)++ = 0;
+-                                    *((int *) s)++ = -1;
++                                    *s++ = 0;
++                                    *s++ = -1;
+ 
+                                     fname_template_size -= sizeof(char)+2*sizeof(int);
+                                   }
+@@ -128,7 +128,7 @@
+                                   if (fname_template_size>1+sizeof(int))
+                                   {
+                                     *s++ = COUNTER;
+-                                    *((int *) s)++ = -1;
++                                    *s++ = -1;
+                                     fname_template_size -= sizeof(char)+sizeof(int);
+                                   }
+                                 }
+@@ -260,8 +260,8 @@
+     switch (*src)
+     {
+       case NAME      : ++src;
+-                       from = *((int *) src)++;
+-		       length = *((int *) src)++;
++                       from = *src++;
++		       length = *src++;
+ 		       mksubstr(name_len,&from,&length);
+ 		       if (length<=NAME_MAX-(dest-fmt))
+ 		       {
+@@ -271,8 +271,8 @@
+ 		       break;
+ 
+       case EXTENSION : ++src;
+-                       from = *((int *) src)++;
+-		       length = *((int *) src)++;
++                       from = *src++;
++		       length = *src++;
+ 		       mksubstr(ext_len,&from,&length);
+ 		       if (length<=NAME_MAX-(dest-fmt))
+ 		       {
+@@ -282,8 +282,8 @@
+ 		       break;
+ 
+       case FULL_NAME : ++src;
+-                       from = *((int *) src)++;
+-		       length = *((int *) src)++;
++                       from = *src++;
++		       length = *src++;
+ 		       mksubstr(full_name_len,&from,&length);
+ 		       if (length<=NAME_MAX-(dest-fmt))
+ 		       {
+@@ -293,8 +293,8 @@
+ 		       break;
+ 
+       case PARENT_DIR: ++src;
+-                       from = *((int *) src)++;
+-		       length = *((int *) src)++;
++                       from = *src++;
++		       length = *src++;
+ 		       mksubstr(parent_dir_len,&from,&length);
+ 		       if (length<=NAME_MAX-(dest-fmt))
+ 		       {
+@@ -304,7 +304,7 @@
+ 		       break;
+ 
+       case COUNTER   : ++src;
+-                       precision = *((int *) src)++;
++                       precision = *src++;
+ 		       if (precision!=-1)
+ 		         sprintf(custom_counter_fmt,"%%0%ilu",precision);
+                        dest += snprintf(dest,NAME_MAX-(dest-fmt),(precision==-1 ? counter_fmt : custom_counter_fmt),counter);
--- /dev/null	2007-12-07 02:02:18.000000000 +0100
+++ files/patch-src_gnome-cmd-data.c	2007-12-07 01:55:28.000000000 +0100
@@ -0,0 +1,28 @@
+--- src/gnome-cmd-data.c.orig	2007-12-07 01:52:03.000000000 +0100
++++ src/gnome-cmd-data.c	2007-12-07 01:55:02.000000000 +0100
+@@ -557,10 +557,10 @@
+ 			 data->priv->advrename_defaults->height);
+ 
+ 	write_int_array ("/gnome-commander/advrename/pat_col_widths%d",
+-					 advrename_dialog_default_pat_column_width,
++					 (gint *) &advrename_dialog_default_pat_column_width,
+ 					 ADVRENAME_DIALOG_PAT_NUM_COLUMNS);
+ 	write_int_array ("/gnome-commander/advrename/res_col_widths%d",
+-					 advrename_dialog_default_res_column_width,
++					 (gint *)&advrename_dialog_default_res_column_width,
+ 					 ADVRENAME_DIALOG_RES_NUM_COLUMNS);
+ 	
+ 	set_int ("/gnome-commander/advrename/sep_value",
+@@ -688,10 +688,10 @@
+ 		"/gnome-commander/advrename/height", 400);
+ 
+ 	load_int_array ("/gnome-commander/advrename/pat_col_widths%d",
+-					advrename_dialog_default_pat_column_width,
++					(gint *)&advrename_dialog_default_pat_column_width,
+ 					ADVRENAME_DIALOG_PAT_NUM_COLUMNS);
+ 	load_int_array ("/gnome-commander/advrename/res_col_widths%d",
+-					advrename_dialog_default_res_column_width,
++					(gint *)&advrename_dialog_default_res_column_width,
+ 					ADVRENAME_DIALOG_RES_NUM_COLUMNS);
+ 	
+ 	data->priv->advrename_defaults->sep_value = get_int (
--- /dev/null	2007-12-07 02:02:18.000000000 +0100
+++ files/patch-src_gnome-cmd-file-list.c	2007-12-07 01:58:56.000000000 +0100
@@ -0,0 +1,20 @@
+--- src/gnome-cmd-file-list.c.orig	2007-12-07 01:55:47.000000000 +0100
++++ src/gnome-cmd-file-list.c	2007-12-07 01:58:30.000000000 +0100
+@@ -57,7 +57,7 @@
+ };
+ 
+ 
+-static GtkTargetEntry drag_types [] = {
++GtkTargetEntry drag_types [] = {
+ 	{ TARGET_URI_LIST_TYPE, 0, TARGET_URI_LIST },
+ 	{ TARGET_TEXT_PLAIN_TYPE, 0, TARGET_TEXT_PLAIN },
+ 	{ TARGET_URL_TYPE, 0, TARGET_URL }
+@@ -574,7 +574,7 @@
+ 	switch (info){
+ 		case TARGET_URI_LIST:
+ 		case TARGET_TEXT_PLAIN:
+-			gtk_selection_data_set (selection_data, selection_data->target, 8, data, len);
++			gtk_selection_data_set (selection_data, selection_data->target, 8, (guchar *)data, len);
+ 			break;
+ 
+ 		case TARGET_URL:
--- /dev/null	2007-12-07 02:02:18.000000000 +0100
+++ files/patch-src_gnome-cmd-file-selector.c	2007-12-07 02:01:16.000000000 +0100
@@ -0,0 +1,20 @@
+--- src/gnome-cmd-file-selector.c.orig	2007-12-07 01:59:14.000000000 +0100
++++ src/gnome-cmd-file-selector.c	2007-12-07 02:00:52.000000000 +0100
+@@ -42,7 +42,7 @@
+ 
+ #define AUTOSCROLL_INTERVAL 100
+ 
+-static GtkTargetEntry drop_types [] = {
++GtkTargetEntry drop_types [] = {
+ 	{ TARGET_URI_LIST_TYPE, 0, TARGET_URI_LIST },
+ 	{ TARGET_URL_TYPE, 0, TARGET_URL }
+ };
+@@ -405,7 +405,7 @@
+ 	/* Transform the drag data to a list with uris
+ 	 *
+ 	 */
+-	uri_list = strings_to_uris (selection_data->data);
++	uri_list = strings_to_uris ((gchar *)selection_data->data);
+ 
+ 	if (g_list_length (uri_list) == 1) {
+ 		GnomeVFSURI *uri = (GnomeVFSURI*)uri_list->data;
--- _gnome-commander.diff ends here ---



>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list