tclhfs.c: In function ‘direntstr’: tclhfs.c:193:3: warning: passing argument 2 of ‘Tcl_Merge’ from incompatible pointer type [enabled by default] /usr/include/tclDecls.h:581:16: note: expected ‘const char * const*’ but argument is of type ‘char **’ tclhfs.c: In function ‘getdir’: tclhfs.c:241:10: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c: In function ‘file_cmd’: tclhfs.c:286:13: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:304:18: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:317:14: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:325:10: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:348:14: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:365:18: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:377:14: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:384:14: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:407:18: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:436:14: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:444:18: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c: In function ‘file_ref’: tclhfs.c:504:19: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:505:43: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:509:50: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:510:8: warning: passing argument 3 of ‘Tcl_CreateCommand’ from incompatible pointer type [enabled by default] /usr/include/tclDecls.h:298:20: note: expected ‘int (*)(void *, struct Tcl_Interp *, int, const char **)’ but argument is of type ‘int (*)(void *, struct Tcl_Interp *, int, char **)’ tclhfs.c: In function ‘copynative’: tclhfs.c:620:13: error: ‘Tcl_Interp’ has no member named ‘result’ x86_64-pc-linux-gnu-gcc -march=corei7 -O2 -pipe -Ilibhfs -I/usr/include -DHAVE_CONFIG_H -c -o xhfs.o xhfs.c tclhfs.c: In function ‘copyin’: tclhfs.c:674:13: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c: In function ‘copyout’: tclhfs.c:709:13: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c: In function ‘vol_cmd’: tclhfs.c:823:13: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:839:18: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:846:18: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:853:18: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:861:12: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:863:12: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:872:16: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:892:36: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:892:4: warning: passing argument 4 of ‘Tcl_SplitList’ from incompatible pointer type [enabled by default] /usr/include/tclDecls.h:716:13: note: expected ‘const char ***’ but argument is of type ‘char ***’ tclhfs.c:904:4: warning: passing argument 2 of ‘Tcl_Merge’ from incompatible pointer type [enabled by default] /usr/include/tclDecls.h:581:16: note: expected ‘const char * const*’ but argument is of type ‘char **’ tclhfs.c:920:8: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:967:14: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:992:14: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:1037:4: warning: passing argument 4 of ‘Tcl_SplitList’ from incompatible pointer type [enabled by default] /usr/include/tclDecls.h:716:13: note: expected ‘const char ***’ but argument is of type ‘char ***’ tclhfs.c:1045:14: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:1049:4: warning: passing argument 2 of ‘Tcl_Merge’ from incompatible pointer type [enabled by default] /usr/include/tclDecls.h:581:16: note: expected ‘const char * const*’ but argument is of type ‘char **’ tclhfs.c:1101:14: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:1108:14: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c: In function ‘cmd_hfs’: tclhfs.c:1166:13: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:1181:10: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:1200:22: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:1213:10: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:1234:16: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:1235:47: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:1237:39: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:1238:4: warning: passing argument 3 of ‘Tcl_CreateCommand’ from incompatible pointer type [enabled by default] /usr/include/tclDecls.h:298:20: note: expected ‘int (*)(void *, struct Tcl_Interp *, int, const char **)’ but argument is of type ‘int (*)(void *, struct Tcl_Interp *, int, char **)’ tclhfs.c:1247:10: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:1257:21: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:1265:10: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:1281:10: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:1289:21: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:1297:10: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:1310:4: warning: passing argument 4 of ‘Tcl_SplitList’ from incompatible pointer type [enabled by default] /usr/include/tclDecls.h:716:13: note: expected ‘const char ***’ but argument is of type ‘char ***’ tclhfs.c:1318:14: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:1358:10: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:1367:10: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:1386:10: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:1396:10: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:1400:13: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:1406:10: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:1410:13: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:1416:10: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:1420:13: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:1426:10: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c:1430:13: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c: In function ‘cmd_exit’: tclhfs.c:1457:13: error: ‘Tcl_Interp’ has no member named ‘result’ tclhfs.c: In function ‘Hfs_Init’: tclhfs.c:1480:3: warning: passing argument 3 of ‘Tcl_CreateCommand’ from incompatible pointer type [enabled by default] /usr/include/tclDecls.h:298:20: note: expected ‘int (*)(void *, struct Tcl_Interp *, int, const char **)’ but argument is of type ‘int (*)(void *, struct Tcl_Interp *, int, char **)’ tclhfs.c:1481:3: warning: passing argument 3 of ‘Tcl_CreateCommand’ from incompatible pointer type [enabled by default] /usr/include/tclDecls.h:298:20: note: expected ‘int (*)(void *, struct Tcl_Interp *, int, const char **)’ but argument is of type ‘int (*)(void *, struct Tcl_Interp *, int, char **)’ hfswish.c: In function ‘Tcl_AppInit’: hfswish.c:97:44: error: ‘Tcl_Interp’ has no member named ‘result’ make: *** [hfswish.o] Error 1 make: *** Waiting for unfinished jobs.... make: *** [tclhfs.o] Error 1 ar rc libhfs.a os.o data.o block.o low.o medium.o file.o btree.o node.o record.o volume.o hfs.o version.o x86_64-pc-linux-gnu-ranlib libhfs.a make[1]: Leaving directory `/var/tmp/portage/sys-fs/hfsutils-3.2.6-r5/work/hfsutils-3.2.6/libhfs' emake failed * ERROR: sys-fs/hfsutils-3.2.6-r5 failed (compile phase): * (no error message) * * Call stack: * ebuild.sh, line 93: Called src_compile * environment, line 2058: Called die * The specific snippet of code: * emake PREFIX=/usr MANDIR=/usr/share/man || die; * * If you need support, post the output of `emerge --info '=sys-fs/hfsutils-3.2.6-r5'`, * the complete build log and the output of `emerge -pqv '=sys-fs/hfsutils-3.2.6-r5'`. * The complete build log is located at '/var/tmp/portage/sys-fs:hfsutils-3.2.6-r5:20130110-025617.log'. * For convenience, a symlink to the build log is located at '/var/tmp/portage/sys-fs/hfsutils-3.2.6-r5/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/sys-fs/hfsutils-3.2.6-r5/temp/environment'. * Working directory: '/var/tmp/portage/sys-fs/hfsutils-3.2.6-r5/work/hfsutils-3.2.6' * S: '/var/tmp/portage/sys-fs/hfsutils-3.2.6-r5/work/hfsutils-3.2.6' >>> Failed to emerge sys-fs/hfsutils-3.2.6-r5, Log file: >>> '/var/tmp/portage/sys-fs:hfsutils-3.2.6-r5:20130110-025617.log' Reproducible: Always Portage 2.1.11.38 (default/linux/amd64/10.0/desktop, gcc-4.6.3, glibc-2.16.0, 3.7.1-gentoo x86_64) ================================================================= System uname: Linux-3.7.1-gentoo-x86_64-Intel-R-_Core-TM-_i7-3740QM_CPU_@_2.70GHz-with-gentoo-2.2 Timestamp of tree: Thu, 10 Jan 2013 01:30:01 +0000 ld GNU ld (GNU Binutils) 2.23.1 app-shells/bash: 4.2_p42 dev-java/java-config: 2.1.12-r1 dev-lang/python: 2.7.3-r3, 3.2.3-r2 dev-util/cmake: 2.8.10.2-r1 dev-util/pkgconfig: 0.27.1 sys-apps/baselayout: 2.2 sys-apps/openrc: 0.11.8 sys-apps/sandbox: 2.6 sys-devel/autoconf: 2.13, 2.69 sys-devel/automake: 1.9.6-r3, 1.10.3, 1.11.6, 1.12.6 sys-devel/binutils: 2.23.1 sys-devel/gcc: 4.6.3 sys-devel/gcc-config: 1.8 sys-devel/libtool: 2.4.2 sys-devel/make: 3.82-r4 sys-kernel/linux-headers: 3.7 (virtual/os-headers) sys-libs/glibc: 2.16.0 Repositories: gentoo mpd nikai java-overlay ruby emacs gamerlay science mgorny scarabeus qt wirelay Techwolf poly-c mva lokal ACCEPT_KEYWORDS="amd64 ~amd64" ACCEPT_LICENSE="*" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=corei7 -O2 -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /etc/X11/Sessions/awesome /etc/X11/Sessions/dwm /etc/conf.d/hwclock /etc/conf.d/keymaps /etc/default/grub /etc/fstab /etc/hosts /etc/make.conf /usr/share/config /usr/share/gnupg/qualified.txt /usr/share/openvpn/easy-rsa /usr/share/polkit-1/actions /var/lib/hsqldb" CONFIG_PROTECT_MASK="${EPREFIX}/etc/gconf /etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.4/ext-active/ /etc/php/cgi-php5.4/ext-active/ /etc/php/cli-php5.4/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c" CXXFLAGS="-march=corei7 -O2 -pipe" DISTDIR="/usr/portage/distfiles" FCFLAGS="-O2 -pipe" FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch xattr" FFLAGS="-O2 -pipe" GENTOO_MIRRORS="http://distfiles.gentoo.org" LANG="de_DE.UTF-8"
Created attachment 335008 [details] /var/tmp/portage/sys-fs:hfsutils-3.2.6-r5:20130110-025617.log
Created attachment 335010 [details] /var/tmp/portage/sys-fs/hfsutils-3.2.6-r5/temp/environment
This is because you are using tcl-8.6.
Created attachment 335178 [details] hfsutils-3.2.6-fix-tcl-6.8.patch This patch fixes the problem. You can apply it at the end of the src_unpack() function.
Created attachment 335194 [details] hfsutils-3.2.6-r5.ebuild.patch I'd suggest to apply this ebuild patch in order to make it shorter, cleaner, bump it to EAPI5, fix AR and RANLIB directly calling and apply the above patch to fix the tcl-8.6 problem.
Applying the patch alone doesn't solve the build problem for me (not using the modified ebuild). It's getting applied in post_src_prepare via a custom bashrc for me so I don't know if that's affecting it.
(In reply to comment #6) 1º Put that patch (named hfsutils-3.2.6-fix-tcl-6.8.patch) in /usr/portage/sys-fs/hfsutils/files/ 2º Edit /usr/portage/sys-fs/hfsutils/hfsutils-3.2.6-r5.ebuild and add this line at the end of src_unpack() function: epatch "${FILESDIR}"/hfsutils-3.2.6-fix-tcl-6.8.patch 3º Go to /usr/portage/sys-fs/hfsutils/ directory and run "repoman manifest" 4º Try to emerge it again. It should work. Note: if you activate tk USE flag and you have tcl-8.6 installed, you need to have tk-8.6 installed as well.
I was able to get the patch to apply and package emerge cleanly, after fixing the cr/lf in both the filesdir patch as well as the ebuild patch. For some reason just downloading them and trying to apply them generated failed patches. However, opening them in nano and then simply saving them locally again, fixed whatever cr/lf issues existed, and allowed them to be applied correctly. FWIW, I copied my /usr/portage/sys-fs/hfsutils/hfsutils-3.2.6-r5.ebuild and files subdir to my local portage overlay, and added the tcl patch and edited the ebuild there,(also renamed it to hfsutils-3.2.6-r6.ebuild). I don't think it's recommended to make these changes to the actual portage tree. Lastly, shouldn't the patch be named, hfsutils-3.2.6-fix-tcl-8.6.patch instead of hfsutils-3.2.6-fix-tcl-6.8.patch? Thanks..
(In reply to comment #8) > Lastly, shouldn't the patch be named, hfsutils-3.2.6-fix-tcl-8.6.patch > instead of hfsutils-3.2.6-fix-tcl-6.8.patch? Yes, you are right. Sorry :P
Created attachment 335240 [details] hfsutils-3.2.6-fix-tcl-8.6.patch
Created attachment 335242 [details] hfsutils-3.2.6-r5.ebuild.patch
(In reply to comment #7) I found the issue. The is the first ebuild I've run into in a *long* time that doesn't call post_src_prepare so I hacked my bashrc to deal with EAPI=1 and now it's applying properly. Sorry for the confusion. I also have the line feed issue and quickly saving in nano solved the issue for me as well. Now building works fine. Thanks!
please test and bump the ebuild in portage to close this as fixed
+ 26 Jan 2013; Lars Wendler <polynomial-c@gentoo.org> hfsutils-3.2.6-r5.ebuild, + +files/hfsutils-3.2.6-fix-tcl-8.6.patch: + Non-maintainer commit: Fixed compilation with tcl-8.6. Thanks to Vicente + Olivert Riera for providing a fix and an ebuild patch in bug #451112. +