Bug 141292 - app-editors/qemacs-0.3.1-r2 won't compile w/ gcc-4
Bug#: 141292 Product:  Gentoo Linux Version: 2006.0 Platform: All
OS/Version: Linux Status: RESOLVED Severity: normal Priority: P2
Resolution: TEST-REQUEST Assigned To: emacs@gentoo.org Reported By: dliana@frontiernet.net
Component: GCC Porting
URL: 
Summary: app-editors/qemacs-0.3.1-r2 won't compile w/ gcc-4
Keywords:  
Status Whiteboard: 
Opened: 2006-07-21 07:53 0000
Description:   Opened: 2006-07-21 07:53 0000
gcc -DHAVE_QE_CONFIG_H -DCONFIG_ALL_KMAPS -DCONFIG_UNICODE_JOIN
-DCONFIG_ALL_MODES -Wall -g -march=pentium4 -O2 -fomit-frame-pointer
-fforce-addr -falign-functions=4 -pipe -I./libqhtml -o charset.o -c charset.c
In file included from charset.c:19:
qe.h: In function 'charset_decode':
qe.h:243: warning: pointer targets in assignment differ in signedness
qe.h:250: warning: pointer targets in assignment differ in signedness
In file included from qe.h:605,
                 from charset.c:19:
display.h: In function 'glyph_width':
display.h:164: warning: pointer targets in passing argument 4 of 'text_metrics'
differ in signedness
charset.c: At top level:
charset.c:126: error: static declaration of 'charset_7bit' follows non-static
declaration
charset.c:23: error: previous declaration of 'charset_7bit' was here
charset.c: In function 'utf8_decode':
charset.c:145: warning: pointer targets in assignment differ in signedness
charset.c:168: warning: pointer targets in assignment differ in signedness
charset.c:171: warning: pointer targets in assignment differ in signedness
charset.c: In function 'encode_utf8':
charset.c:244: warning: pointer targets in passing argument 1 of 'utf8_encode'
differ in signedness
charset.c:244: warning: pointer targets in return differ in signedness
charset.c: In function 'unicode_to_charset':
charset.c:342: warning: pointer targets in passing argument 2 of
'charset->encode_func' differ in signedness
charset.c:342: warning: pointer targets in assignment differ in signedness
make: *** [charset.o] Error 1

------- Comment #1 From Dave 2006-07-21 07:54:23 0000 -------
Created an attachment (id=92420) [details]
My emerge --info

------- Comment #2 From Christian Faulhammer 2006-07-24 03:51:44 0000 -------
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=288175 proposes this patch for
amd64, I will test it on x86.  Report later.

--- ../tmp-orig/qemacs-0.3.1/charset.c  2003-04-22 00:01:42.000000000 +0200
+++ ./charset.c 2005-01-02 10:18:17.399846848 +0100
@@ -20,7 +20,7 @@

 QECharset *first_charset = NULL;

-extern QECharset charset_7bit;
+static QECharset charset_7bit;

 /* specific tables */
 static unsigned short table_idem[256];
diff -urN ../tmp-orig/qemacs-0.3.1/tty.c ./tty.c
--- ../tmp-orig/qemacs-0.3.1/tty.c      2003-04-22 00:01:42.000000000 +0200
+++ ./tty.c     2005-01-02 10:20:36.973628408 +0100
@@ -70,7 +70,7 @@
     return 1;
 }

-extern QEDisplay tty_dpy;
+static QEDisplay tty_dpy;

 static int term_init(QEditScreen *s, int w, int h)
 {
diff -urN ../tmp-orig/qemacs-0.3.1/x11.c ./x11.c
--- ../tmp-orig/qemacs-0.3.1/x11.c      2003-04-22 00:01:42.000000000 +0200
+++ ./x11.c     2005-01-02 10:21:01.092961712 +0100
@@ -76,7 +76,7 @@
 static CSSRect update_rects[UPDATE_MAX_REGIONS];
 #endif

-extern QEDisplay x11_dpy;
+static QEDisplay x11_dpy;
 static int visual_depth;

 static int force_tty = 0;

------- Comment #3 From Christian Faulhammer 2006-07-24 04:40:02 0000 -------
works fine on x86, but there is still a png issues, see bug #141566

Portage 2.1-r1 (default-linux/x86/2006.0, gcc-4.1.1, glibc-2.3.6-r4,
2.6.16-gentoo-r13 i686)
=================================================================
System uname: 2.6.16-gentoo-r13 i686 AMD Athlon(tm) XP 2500+
Gentoo Base System version 1.6.15
ccache version 2.3 [enabled]
app-admin/eselect-compiler: [Not Present]
dev-lang/python:     2.3.5-r2, 2.4.3-r1
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache:     2.3
dev-util/confcache:  0.4.2
sys-apps/sandbox:    1.2.17
sys-devel/autoconf:  2.13, 2.59-r7
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2
sys-devel/binutils:  2.16.1-r3
sys-devel/gcc-config: 1.3.13-r3
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.11-r2
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=athlon-xp -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/X11/xkb"
CONFIG_PROTECT_MASK="/etc/env.d /etc/gconf /etc/revdep-rebuild /etc/splash
/etc/terminfo"
CXXFLAGS="-O2 -march=athlon-xp -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig ccache confcache distlocks metadata-transfer
parallel-fetch sandbox sfperms strict"
GENTOO_MIRRORS="ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/gentoo/"
LANG="de_DE@euro"
LC_ALL="de_DE@euro"
LINGUAS="de"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress
--force --whole-file --delete --delete-after --stats --timeout=180
--exclude='/distfiles' --exclude='/local' --exclude='/packages'"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.informatik.rwth-aachen.de/gentoo-portage"
USE="x86 3dnow 3dnowext X Xaw3d a52 alsa artworkextra asf audiofile avi
bash-completion beagle berkdb bidi bitmap-fonts bootsplash branding bzip2 cairo
ccache cdda cddb cdparanoia cdr cli cracklib crypt css cups curl custom-cflags
dbus dga directfb divx4linux dlloader dri dts dvd dvdr dvdread dvi eds emacs
emboss encode esd evo exif fam fat fbcon fdftk ffmpeg firefox foomaticdb
fortran ftp gb gcj gdbm gif gnome gpm gstreamer gtk gtk2 gtkhtml hal howl icq
idn imagemagick imap imlib ipv6 isdnlog java javascript jikes jpeg jpeg2k ldap
leim libg++ libwww lm_sensors mad maildir matroska mbox mikmod mime mmx mmxext
mng mono motif mp3 mpeg mpeg2 mule nautilus ncurses nforce2 nls nocardbus
nosendmail nowebdav nptl nptlonly nsplugin nvidia offensive ogg opengl pam pcre
pdf pdflib perl plotutils pmu png ppds pppd preview-latex print python qt qt3
qt4 quicktime readline reflection reiserfs samba sdk session slang spell spl
sse ssl svg svga t1lib tcltk tcpd theora thunderbird tiff truetype
truetype-fonts type1-fonts udev usb vcd videos vorbis win32codecs wmf wxwindows
xine xml xorg xosd xv xvid zlib elibc_glibc input_devices_mouse
input_devices_keyboard kernel_linux linguas_de userland_GNU video_cards_radeon
video_cards_vesa video_cards_fbdev"
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LDFLAGS,
PORTAGE_RSYNC_EXTRA_OPTS

------- Comment #4 From Christian Faulhammer 2006-07-25 01:10:00 0000 -------
Ok, I will attach a new -r3 ebuild containing fixes for 
- bug #92011: CFLAGS are hard set to -O0, see no other quick fix for this
- bug #141566: ${P}-libpng-1_2.patch is for that, correcting some functions in
htlm2png
- this bug here: ${P}-gcc4*.patch are for this, changing x11.c, charset.c and
tty.c

All patches are properly commented, also the additional epatch lines and the
CFLAG setting.  I hope we get that in the tree very fast. Maybe bugs should be
tarballed.

qemacs tested on an partly unstable system, you can have more ATs on it, when
bug #141567 is properly assigned and CCed.

------- Comment #5 From Christian Faulhammer 2006-07-25 01:16:41 0000 -------
Created an attachment (id=92691) [details]
qemacs-0.3.1-r3.ebuild

------- Comment #6 From Christian Faulhammer 2006-07-25 01:18:47 0000 -------
Created an attachment (id=92692) [details]
qemacs-0.3.1-libpng-1_2.patch

------- Comment #7 From Christian Faulhammer 2006-07-25 01:19:25 0000 -------
Created an attachment (id=92693) [details]
qemacs-0.3.1-gcc4_charset_c.patch

------- Comment #8 From Christian Faulhammer 2006-07-25 01:20:23 0000 -------
Created an attachment (id=92694) [details]
qemacs-0.3.1-gcc4_tty_c.patch

------- Comment #9 From Christian Faulhammer 2006-07-25 01:21:42 0000 -------
Created an attachment (id=92695) [details]
qemacs-0.3.1-gcc4_x11_c.patch

------- Comment #10 From Christian Faulhammer 2006-07-25 03:06:25 0000 -------
Created an attachment (id=92701) [details]
qemacs-0.3.1-r3.ebuild

version 2:
-only adds libpng patch if USE="png"
-empty "$ Header" now

------- Comment #11 From Chris Pritchard 2006-07-25 03:19:20 0000 -------
works on my system:

Portage 2.1-r1 (default-linux/x86/2006.0, gcc-3.4.6, glibc-2.3.6-r4, 2.6.16
i686)
=================================================================
System uname: 2.6.16 i686 AMD Opteron(tm) Processor 144
Gentoo Base System version 1.6.15
ccache version 2.3 [disabled]
app-admin/eselect-compiler: [Not Present]
dev-lang/python:     2.4.3-r1
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache:     2.3
dev-util/confcache:  [Not Present]
sys-apps/sandbox:    1.2.17
sys-devel/autoconf:  2.13, 2.59-r7
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2
sys-devel/binutils:  2.16.1-r3
sys-devel/gcc-config: 1.3.13-r3
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.11-r2
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=athlon64 -fomit-frame-pointer -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc"
CONFIG_PROTECT_MASK="/etc/env.d /etc/gconf"
CXXFLAGS="-O2 -march=athlon64 -fomit-frame-pointer -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig distlocks metadata-transfer sandbox sfperms strict
userpriv"
GENTOO_MIRRORS="ftp://ftp.heanet.ie/mirrors/gentoo.org"
LANG="en_US"
LC_ALL="C"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress
--force --whole-file --delete --delete-after --stats --timeout=180
--exclude='/distfiles' --exclude='/local' --exclude='/packages'"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://raptor.gentoo.org/gentoo-portage"
USE="x86 16bit 3dnow 3dnowext 7zip S3TC X a52 aac acpi alsa apache2 apm avi
berkdb bitmap-fonts cdparanoia cdr cdrom cli commercial crypt css cups dbus
dlloader dri dvd dvdr emacs emboss encode fbcon fbdev fbsplash ffmpeg fftw
firefox foomaticdb fortran gdbm gif gmail gmailtimestamps gpm gstreamer gtk
gtk2 imagemagick imlib insecure-savers ipod ipv6 irc isdnlog jabber jpeg libg++
libwww lm_sensors mad mikmod motif mp3 mpeg msn music musicbrainz mysql ncurses
network nls nowlistening nptl nptlonly ogg openal opengl oss pam pcre pdflib
perl png pppd python qt3 qt4 quicktime readline reflection samba sdl sensord
session skins spell spl ssl startup-notification svg symlink tcpd truetype
truetype-fonts type1-fonts udev userlocales vim vorbis xml xmms xorg xv zlib
elibc_glibc input_devices_keyboard input_devices_mouse kernel_linux
userland_GNU video_cards_vesa video_cards_nvidia"
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LDFLAGS, LINGUAS, MAKEOPTS,
PORTAGE_RSYNC_EXTRA_OPTS

------- Comment #12 From Matthew Kennedy (RETIRED) 2006-07-25 07:18:34 0000 -------
THanks for the patches.  Applied them to -r3.

------- Comment #13 From Christian Faulhammer 2006-07-25 08:03:52 0000 -------
Please close bug #92011 and bug #141566, because they are both fixed by this
patches.  Please cc arches in bug #141567 or tell me if I can do that. Thanks.