First Last Prev Next    No search results available      Search page      Enter new bug
Bug#: 113411
Alias:
Product:
Component:
Status: RESOLVED
Resolution: FIXED
Assigned To: AMD64 Project <amd64@gentoo.org>
Hardware:
OS:
Version:
Priority:
Severity:
Reporter: Nico Erfurth <masta-gentoo@perlgolf.de>
Add CC:
CC:
Remove selected CCs
URL:
Summary:
Status Whiteboard:
Keywords:

Filename Description Type Creator Created Size Actions
wxchecksums-1.2.0-amd64.patch This patch fixes the typecasting-issues patch Nico Erfurth 2005-11-23 16:43 0000 1.79 KB Details | Diff
wxchecksums-1.2.0.ebuild.epatch Patched wxchecksums-1.2.0.ebuild to include the previous patch patch Nico Erfurth 2005-11-23 16:44 0000 761 bytes Details | Diff
wxChecksums-1.2.0-int2long.patch First half of above patch patch RiverRat 2005-11-25 06:51 0000 974 bytes Details | Diff
wxChecksums-1.2.0-alignment.patch Bottom half of above patch patch RiverRat 2005-11-25 06:52 0000 930 bytes Details | Diff
wxchecksums-1.2.0.ebuild.patch Patch to fix the ebuild patch RiverRat 2005-11-25 07:02 0000 341 bytes Details | Diff
wxchecksums-1.2.0.ebuild.patch An updated ebuild patch patch RiverRat 2005-11-25 12:55 0000 610 bytes Details | Diff
Create a New Attachment (proposed patch, testcase, etc.) View All

Bug 113411 depends on: Show dependency tree
Show dependency graph
Bug 113411 blocks:
Votes: 0    Show votes for this bug    Vote for this bug

Additional Comments: (this is where you put emerge --info)







View Bug Activity   |   Format For Printing   |   XML   |   Clone This Bug


Description:   Opened: 2005-11-23 16:40 0000
wxchecksums has a typecasting-issue (void* -> int) on AMD64. It's fixed by the
attached patch. Please add ~amd64 to KEYWORDS.

-------------

athlon64 ~ # emerge info
Portage 2.0.51.22-r3 (default-linux/amd64/2005.1, gcc-3.4.4, glibc-2.3.5-r2,
2.6.13-gentoo-r5 x86_64)
=================================================================
System uname: 2.6.13-gentoo-r5 x86_64 AMD Athlon(tm) 64 X2 Dual Core Processor 3800+
Gentoo Base System version 1.6.13
dev-lang/python:     2.3.5, 2.4.2
sys-apps/sandbox:    1.2.12
sys-devel/autoconf:  2.13, 2.59-r6
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1
sys-devel/binutils:  2.15.92.0.2-r10
sys-devel/libtool:   1.5.20
virtual/os-headers:  2.6.11-r2
ACCEPT_KEYWORDS="amd64"
AUTOCLEAN="yes"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=k8 -O2 -pipe -ftracer -frename-registers -fweb"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.4/env
/usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3/share/config /usr/lib
/X11/xkb /usr/lib64/mozilla/defaults/pref /usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/texmf/web2c /etc/env.d"
CXXFLAGS="-march=k8 -O2 -pipe -ftracer -frename-registers -fweb"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig distlocks sandbox sfperms strict"
GENTOO_MIRRORS="http://distfiles.gentoo.org
http://distro.ibiblio.org/pub/Linux/distributions/gentoo"
LINGUAS="de en"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="amd64 16bit 16bittmp 64bit 7zip S3TC X a52 aac abook acpi adns aim
aimextras alsa amd amuled ao aotuv apache apache2 apm ares async atm a
udiofile automount avi bash-completion berkdb bidi big-tables bigpatch
bitmap-fonts blender-game bluetooth bmp boo bootsplash bzip2 c++ cachee
mu calendar cdb cdda cddb cdio cdparanoia cdr cdrom cg cgi chroot clock-screen
commercial corba cpudetection crosscompile crypt css csv ctype 
cups curl curlwrappers daap dba dbm dbx devil devmap dga dio divx4linux dmalloc
dnd dnsdb doc dpms dri dv dvb dvd dvdr dvdread dvi ecc edl emb
oss emul-linux-x86 encode escreen esd ethereal examples exif expat experimental
ext-iiimf ext-png ext-zlib extensions extraengine extraicons e
xtramodules fam fame fastcgi ffmpeg fftw figlet flac flash flatfile flood fmod
font-server fontconfig foomaticdb fping fpx freetts freetype ft
p gd gd-external gdb gdbm general geoip geometry gif gimp gimpprint glut glx
gnome gnome-print gnomecanvas gnomedb gphoto2 gpm gps gstreamer g
tk gtk2 gtkhtml gvim hddtemp hdf hdf5 high-ints hlapi hou hpn html http httpd
icecast icp icq icu id3 idea idn ieee1394 image imagemagick imap
 imlib imlib2 inifile innodb inode insecure-savers iproute2 ipv6 irc irda irmc
jabber jack java javascript jit john jp2 jpeg jpeg2k jumpplay j
unit justify kde kdgraphics keyscrub lame lapack largenet largeterminal lcd lcms
ldap ldirectord lesstif libcaca libtommath libvisual libwww l
ighttpd live lj lm_sensors lnbsharing logrotate ltsp lua lzo lzw lzw-tiff mad
matroska mcal md5sum mdb mhash mikmod mime mimencode ming mixer 
mjpeg mmap mng mnogosearch mod motif mozcalendar mozdevelop mozilla mozsha1
mozsvg mozxmlterm mp3 mp4live mpd-mad mpeg mpeg2 mpeg4 mplayer mpm
-prefork msession msn music musicbrainz mysql mysqli nas ncurses net netpbm
network nforce2 nls nntp no-old-linux nocd nowin nptl nsplugin nsp
r ntlm nvidia nvram objc offensive ogg on-the-fly-crypt openal opengl openssl
osc oscache oscar oss pam pam_chroot pam_console pam_timestamp p
arse-clocks passfile pccts pcntl pcre pda pdf pdfkit pdflib pear perl physfs
player pmu png portaudio posix povray ppds prelude priority pytho
n qdbm qt quicktime rar raw-mode rcu rdesktop readline real recode remote rle
rogue rss rtc ruby samba scanner scp screen sdl sendfile sensord
 session sharedmem shorten shout silc simplexml smp sms smtp sndfile soap
sockets sou sounds spell sqlite sqlite3 ssl stats stream subp subtit
les subversion svg svgz sysfs syslog szip tdb tetex text tga theora threads tidy
tiff timidity toolbar tools transcode truetype truetype-fonts
 type1-fonts udev uim unicode usb userlocales v4l v4l2 vcd vcdimager vfat videos
vim vim-pager vim-with-x vlm vorbis wddx webdav wma123 wmf wx
windows x11vnc xattr xine xinerama xml xml2 xmlrpc xmms xosd xpm xprint xrandr
xscreensaver xsl xslt xv xvid xvmc yahoo yv12 zip zlib linguas_
de linguas_en userland_GNU kernel_linux elibc_glibc"
Unset:  ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS

------- Comment #1 From Nico Erfurth 2005-11-23 16:43:09 0000 -------
Created an attachment (id=73463) [edit]
This patch fixes the typecasting-issues

------- Comment #2 From Nico Erfurth 2005-11-23 16:44:00 0000 -------
Created an attachment (id=73464) [edit]
Patched wxchecksums-1.2.0.ebuild to include the previous patch

------- Comment #3 From Simon Stelling (RETIRED) 2005-11-24 12:21:02 0000 -------
uhm, i'm not sure but i think the second part of the patch breaks non-64bit
arches. wxwindows-herd: can you confirm that?

------- Comment #4 From Nico Erfurth 2005-11-24 13:09:40 0000 -------
It shouldn't break, as wxUint64 is defined on all plattforms. What might happen
is some extra copy where none would be needed, on plattforms that require
buffers to be aligned. But when something is aligned on 64bits, it's also
aligned on 32bits.

------- Comment #5 From RiverRat 2005-11-25 06:51:44 0000 -------
Created an attachment (id=73572) [edit]
First half of above patch

The macro changes in wxChecksums-1.2.0/src/md5.cpp are correct for a 64 bit
platform and they will not break a 32 bit platform however the odds that memory
on a 32 bit platform is aligned on 64 bit boundaries is about 50/50 and that
kinda sucks.  Okay, what needs to happen here is that the patch needs to align
for the target arch.  So these two should do it.  The first is the top half of
the previous patch.  The second an adjusted bottom half.  This compiles and
runs ok on AMD64 but I still need to figure out how to make the ebuild use the
patches.

Stay tuned.  :)

------- Comment #6 From RiverRat 2005-11-25 06:52:22 0000 -------
Created an attachment (id=73573) [edit]
Bottom half of above patch

------- Comment #7 From RiverRat 2005-11-25 07:02:05 0000 -------
Created an attachment (id=73574) [edit]
Patch to fix the ebuild

An attempt at an ebuild fix.

------- Comment #8 From RiverRat 2005-11-25 12:55:53 0000 -------
Created an attachment (id=73608) [edit]
An updated ebuild patch

An updated ebuild that should be correct as it incorporates blubb's suggestions

------- Comment #9 From RiverRat 2005-11-29 14:33:14 0000 -------
blubb and I have beat on this a bit and have determined that wxchecksums works
as expected if wxGTK is emerged without the debug USE flag set but will cause
wxchecksums to fail to emerge if the debug USE flag was enabled when wxGTK was
emerged.  This presumes that the above adjusted patches (my versions) are
included.  There could be some other issues with slotting of wxGTK that have yet
to be isolated too.

------- Comment #10 From Mart Raudsepp 2006-10-03 08:03:41 0000 -------
I have added wxchecksums-1.2.2 to the tree, which patches for 64-bit as done on
the split patches (but combined into one in the tree).
amd64 team can now look into keywording.

------- Comment #11 From Mart Raudsepp 2006-10-03 08:15:45 0000 -------
Patch forwarded upstream:
http://sourceforge.net/tracker/index.php?func=detail&aid=1570036&group_id=89422&atid=590082

Also worth noting might be that 1.2.2 also fixes the concerns raised in comment
#9 - builds with debug enabled wxGTK, and should have any SLOTting issues
solved

------- Comment #12 From Stuart Stegall 2006-10-03 12:43:22 0000 -------
1. emerged cleanly including test phase
2. passed collision-protect tests
3. passed multilib-strict tests
4. tested the application thoroughly, I tested it with as many checksums as I
could.  It worked against all but the last one.  The last one is a 41GB file
and  I am guessing wxChecksums doesn't use the 64bit file functions.  (of
course neither does coreutils and a lot of sys-*/* apps.)

emerge --info as follows
==================================================================================
Portage 2.1.1-r1 (default-linux/amd64/2006.1/desktop, gcc-4.1.1, glibc-2.4-r3,
2.6.17-beyond4 x86_64)
=================================================================
System uname: 2.6.17-beyond4 x86_64 AMD Athlon(tm) 64 Processor 3200+
Gentoo Base System version 1.12.5
Last Sync: Tue, 03 Oct 2006 13:30:01 +0000
ccache version 2.3 [enabled]
app-admin/eselect-compiler: [Not Present]
dev-java/java-config: 1.3.7, 2.0.30
dev-lang/python:     2.4.3-r4
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-r4
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.11-r2
ACCEPT_KEYWORDS="amd64"
AUTOCLEAN="yes"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -msse3 -march=k8 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/X11/xkb /usr/share/config"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf
/etc/java-config/vms/ /etc/revdep-rebuild /etc/terminfo"
CXXFLAGS="-O2 -msse3 -march=k8 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig ccache collision-protect distlocks metadata-transfer
multilib-strict sandbox sfperms strict test"
GENTOO_MIRRORS="http://mirror.datapipe.net/gentoo
http://gentoo.cites.uiuc.edu/pub/gentoo/ http://mirrors.acm.cs.rpi.edu/gentoo/"
LINGUAS="en en_US"
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/overlays"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="amd64 X a52 aac acl acpi akobe alsa apache2 audiofile avi bash-completion
bcp berkdb bitmap-fonts bjam bogofilter boost branding bzip2 cairo cdr cli
crypt cscope cups curl dbus djbfft dlloader dri dssi dts dvd dvdr dvdread eds
elibc_glibc emboss encode exif expat exscalibar fam ffmpeg firefox flac
foo2zjs_devices_hp1020 foomaticdb fortran fpx ftp gd gdbm gif glitz glut gmp
gnokii gnome gnutls gphoto2 gpm graphviz gs gsl gstreamer gtk gtk2 guile hal
hash ieee1394 imlib input_devices_keyboard input_devices_mouse insecure-savers
ipv6 isdnlog jack jack-tmpfs jackmidi java jbig jpeg jpeg2k kernel_linux lapack
lash lcms ldap libg++ linguas_en linguas_en_US logitech-mouse mad mailwrapper
mikmod mono mp3 mp4 mpeg musicbrainz mysql ncurses network nls nptl nptlonly
nsplugin numeric offensive ogg openal openexr opengl pam pam_console pcre pda
pdf pdflib perl physfs png ppds pppd pwdb pyste python quicktime readline
reflection ruby samba sdl session speex spell spl sqlite ssl svg tcl tcpd
theora threads tidy tiff truetype truetype-fonts type1-fonts udev unicode
userland_GNU video_cards_nvidia visualization vorbis vst wmf xcomposite xine
xml xmms xorg xscreensaver xv xvid xvmc yahoo zlib"
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS,
PORTAGE_RSYNC_EXTRA_OPTS

------- Comment #13 From Mart Raudsepp 2006-10-03 12:52:54 0000 -------
(In reply to comment #12)
> 4. tested the application thoroughly, I tested it with as many checksums as I
> could.  It worked against all but the last one.

I presume the results were correct as well? :)

> The last one is a 41GB file
> and  I am guessing wxChecksums doesn't use the 64bit file functions.  (of
> course neither does coreutils and a lot of sys-*/* apps.)

Apparently I could pass USE_LARGE_FILES to its pure makefile to have it work
with large files. I have no capability to test this function out myself, though
(I'm lucky if I have 2GB of free space on my HDD).
Feel free to open a new bug for this, as this shouldn't stop keywording or
stabilization (on other arches), as earlier versions probably didn't work with
large files either.

------- Comment #14 From Stuart Stegall 2006-10-03 13:17:00 0000 -------
Yes, of course all results were correct minus the overly large file. I don't
think I'll make that bug for large file access, checksums basically guarantee
nothing with files that large anyways.

------- Comment #15 From Simon Stelling (RETIRED) 2006-10-04 05:18:10 0000 -------
marked ~amd64, thanks everybody

First Last Prev Next    No search results available      Search page      Enter new bug