Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 133868 - sys-fs/avfs-0.9.7 works on amd64
Summary: sys-fs/avfs-0.9.7 works on amd64
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: AMD64 Linux
: High enhancement
Assignee: AMD64 Project
URL:
Whiteboard:
Keywords: TESTED
Depends on: 136819
Blocks:
  Show dependency tree
 
Reported: 2006-05-20 06:07 UTC by José Romildo Malaquias
Modified: 2006-10-20 05:35 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
avfs-0.9.7_p20060517.ebuild.patch (avfs-0.9.7_p20060517.ebuild.patch,540 bytes, patch)
2006-05-20 06:08 UTC, José Romildo Malaquias
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description José Romildo Malaquias 2006-05-20 06:07:11 UTC
Please add "~amd64" to the KEYWORDS for sys-fs/avfs-0.9.7_p20060517.

# emerge --info

Gentoo Base System version 1.12.0_pre19
Portage 2.1_rc1-r3 (default-linux/amd64/2006.0, gcc-4.1.1-pre20060517, glibc-2.4-r3, 2.6.16-gentoo-r7 x86_64)
=================================================================
System uname: 2.6.16-gentoo-r7 x86_64 AMD Athlon(tm) 64 Processor 3000+
dev-lang/python:     2.4.3-r1
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache:     [Not Present]
dev-util/confcache:  [Not Present]
sys-apps/sandbox:    1.2.18.1
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-r2
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.11-r3
ACCEPT_KEYWORDS="amd64 ~amd64"
AUTOCLEAN="yes"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=k8 -O2 -pipe -frename-registers"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/kde/3/share/config /usr/share/X11/xkb /usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/eselect/compiler /etc/gconf /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c /etc/env.d"
CXXFLAGS="-march=k8 -O2 -pipe -frename-registers"
DISTDIR="/usr/local/portage/distfiles"
FEATURES="autoconfig buildpkg collision-protect distlocks metadata-transfer multilib-strict sandbox sfperms strict usersandbox"
GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo"
LANG="en_US.ISO-8859-1"
LINGUAS="en pt_BR fr de"
MAKEOPTS="-j2"
PKGDIR="/usr/local/portage/packages.amd64"
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="/small/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="amd64 3dnowex X Xaw3d a52 aac aalib alsa avi berkdb bitmap-fonts bzip2 cdr cli crypt cups divx4linux djvu dlloader dri dts dvd dvdr dvdread emacs emboss encode fam fbcon ffmpeg firefox foomaticdb gd gif gnome gpm gtk gtk2 imagemagick imap imlib isdnlog javascript jpeg kde kdeenablefinal libcaca lirc lzw lzw-tiff mad matroska mbox mp3 mpeg ncurses nls nptl nptlonly nsplugin nvidia ogg opengl pam pcre pdflib plotutils png ppds pppd python qt readline reflection samba sdl session spell spl ssl svg tcpd tetex truetype truetype-fonts type1-fonts usb v4l v4l2 vcd vorbis wmf xface xml xml2 xorg xpm xv xvmc zlib elibc_glibc input_devices_keyboard input_devices_mouse kernel_linux linguas_en linguas_pt_BR linguas_fr linguas_de userland_GNU video_cards_nvidia video_cards_nv video_cards_v4l video_cards_vesa"
Unset:  ASFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, LDFLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 José Romildo Malaquias 2006-05-20 06:08:59 UTC
Created attachment 87118 [details, diff]
avfs-0.9.7_p20060517.ebuild.patch

Needed patch to the ebuild, so that avfs would build on amd64.
Comment 2 Peter Hyman 2006-05-20 06:19:43 UTC
thank you for testing! Glad it works.
Comment 3 Jon Hood (RETIRED) gentoo-dev 2006-05-20 10:20:34 UTC
Why is -D_FILE_OFFSET_BITS=64 only needed for amd64? Seems like other archs may want larger file support, too. And it seems like the header file /usr/include/fuse/fuse_common.h doesn't care what architecture you're on.
Comment 4 Peter Hyman 2006-05-20 10:57:47 UTC
Careful here. The avfs configure script already has a built in check for this. I really think altering CFLAGS is a major bad idea and, in this case, apparently unnecessary.

configure:18950: checking for special C compiler options needed for large files
configure:19049: result: no
configure:19055: checking for _FILE_OFFSET_BITS value needed for large files

this result may vary.

As for the large files, avfs can handle and read files >2G. This bug was fixed prior to the first portage release.
Comment 5 José Romildo Malaquias 2006-05-20 13:00:31 UTC
Without setting CFLAGS as I did, compilation fails with ther error:

[...]
Making all in fuse
make[1]: Entering directory `/small/tmp/portage/avfs-0.9.7_p20060517/work/avfs/fuse'
if x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I../include   -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -I../include -march=k8 -O2 -pipe -frename-registers  -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -march=k8 -O2 -pipe -frename-registers -MT avfsd.o -MD -MP -MF ".deps/avfsd.Tpo" -c -o avfsd.o avfsd.c; \
        then mv -f ".deps/avfsd.Tpo" ".deps/avfsd.Po"; else rm -f ".deps/avfsd.Tpo"; exit 1; fi
In file included from /usr/include/fuse/fuse.h:23,
                 from /usr/include/fuse.h:9,
                 from avfsd.c:10:
/usr/include/fuse/fuse_common.h:30:2: error: #error Please add -D_FILE_OFFSET_BITS=64 to your compile flags!
make[1]: *** [avfsd.o] Error 1
make[1]: Leaving directory `/small/tmp/portage/avfs-0.9.7_p20060517/work/avfs/fuse'
make: *** [all-recursive] Error 1


This error message asks to add -D_FILE_OFFSET_BITS=64 to the compile flag, and so I did. Then compilaton succeeded.
Comment 6 Diego Elio Pettenò (RETIRED) gentoo-dev 2006-05-20 13:13:20 UTC
Sounds like fuse is doing silly things and not taking into account that on 64-bit architecture largefile support does not require any extra definition in command line.
Comment 7 Peter Hyman 2006-05-20 13:57:25 UTC
I'll report it upstream. Ralf will want to know this. He recently updated configure to add the --enable-fuse option. I think it was an oversight. I'll forward this bug with a note to him. Thanks for the update and additional details.
Comment 8 Peter Hyman 2006-05-21 13:50:18 UTC
Jos
Comment 9 Peter Hyman 2006-05-21 13:50:18 UTC
José, can you please attach the config.log file from the failed compilation so I can forward to the avfs developers? Upstream would like to examine it to correct the problem you uncovered (this build was done on x86 only. Now they want to test on an amd64). Or, if you prefer, you can post to it directly to gmane.comp.file-systems.avfs-user. Thanks!
Comment 10 Peter Hyman 2006-05-22 05:22:20 UTC
Diego appears to be right. Here are Ralf's comments on this from avfs user news group. Miklos is Miklos Szeredi, the original dev of avfs and dev of fuse. So, we definitely have the right upstream folks on the case:

"The LARGEFILE test says FILE_OFFSET_BITS is not required for large
file support which makes sense on a 64 bit architecture. But the fuse
include file "fuse_common.h" consists on this definition.

Miklos, what's your opinion about this? All we can do in avfs is to
define this flag whether it is required or not (at least for fuse
support) but I'm unsure about possible side effects."
Comment 11 José Romildo Malaquias 2006-05-22 06:01:38 UTC
As I am on the avfs-user mailing list, I have already attached config.log in a message there when I saw its request.
Comment 12 Peter Hyman 2006-06-02 11:56:12 UTC
There is a small error in one of the fuse header files that assumes _FILE_OFFSET_BITS must be set to 64 which is incorrect for AMD64 AFAIK. Miklos is aware of it. He wrote:

"I think it's perfectly safe to always define FILE_OFFSET_BITS.  On the
other hand, <fuse.h> should probably allow undefined FILE_OFFSET_BITS
on 64 bit archs.

Miklos"

However, ITMT, Jose's solution will work and, while ugly, is perfectly acceptable! Jose, I would suggest using flagomatic and append-flags like this:

inherit flag-o-matic
...
   use amd64 && append-flags -D_FILE_OFFSET_BITS=64

Try it! Thanks for keeping tabs on this.
Comment 13 Peter Hyman 2006-06-05 12:57:49 UTC
I think we can close this bug. Upstream has pushed through a patch for configure.in which hacks the offset bits problem. In addition, avfs 0.9.7 will be marked stable upstream in a day or two which will alleviate the requirement to use cvs. So hang on, Jose! Help is on the way! Thanks for reporting.

Comment 14 Christoph Mende (RETIRED) gentoo-dev 2006-10-19 08:51:45 UTC
sys-fs/avfs-0.9.7
- emerges fine on amd64 - without the patch
- passes collision-test
- passes multilib-strict
- works

Portage 2.1.1-r1 (default-linux/amd64/2006.1/desktop, gcc-4.1.1, glibc-2.5-r0, 2.6.18-ck1 x86_64)
=================================================================
System uname: 2.6.18-ck1 x86_64 AMD Athlon(tm) 64 Processor 3000+
Gentoo Base System version 1.12.5
Last Sync: Thu, 19 Oct 2006 13:00: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="-march=k8 -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/X11/xkb"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/java-config/vms/ /etc/revdep-rebuild /etc/terminfo"
CXXFLAGS="-march=k8 -O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig buildsyspkg ccache collision-protect distlocks metadata-transfer multilib-strict parallel-fetch sandbox sfperms strict test"
GENTOO_MIRRORS="ftp://linux.rz.ruhr-uni-bochum.de/gentoo-mirror/ ftp://ftp.uni-erlangen.de/pub/mirrors/gentoo ftp://ftp.join.uni-muenster.de/pub/linux/distributions/gentoo ftp://ftp.wh2.tu-dresden.de/pub/mirrors/gentoo ftp://ftp.join.uni-muenster.de/pub/linux/distributions/gentoo ftp://ftp-stud.fht-esslingen.de/pub/Mirrors/gentoo/ ftp://ftp.gentoo.mesh-solutions.com/gentoo/ ftp://pandemonium.tiscali.de/pub/gentoo/ "
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_EXTRA_OPTS="--exclude-from=/etc/portage/rsync_excludes"
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/overlay"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="amd64 X a52 aac acpi alsa amr berkdb bitmap-fonts branding bzip2 cairo cdinstall cdr cli cracklib crypt cups dbus divx dlloader dri dvd dvdr dvdread eds elibc_glibc emboss encode fam ffmpeg firefox fortran gdbm gif glut gpm gstreamer gtk gtk2 hal imagemagick input_devices_evdev input_devices_keyboard ipod isdnlog jpeg kernel_linux ldap libg++ lirc lirc_devices_inputlirc logrotate mad mikmod mng mp3 mpeg ncurses nls nptl nptlonly offensive ogg opengl pam pcre php png ppds pppd quicktime readline reflection rtc sdl session socks5 spl ssl svg symlink tcpd test tiff truetype truetype-fonts type1-fonts udev unicode userland_GNU userlocales v4l v4l2 video_cards_fglrx video_cards_radeon vim-with-x vorbis wmp xinerama xml xorg xv xvid zlib"
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, LINGUAS
Comment 15 Simon Stelling (RETIRED) gentoo-dev 2006-10-20 05:35:34 UTC
...and keyworded.