libtool: compile: x86_64-pc-freebsd8.0-gcc -DHAVE_CONFIG_H -I. -I../../include -I../../lib/Xm -DINCDIR=\"/usr/home/matt/gentoo/usr/include/X11\" -DLIBDIR=\"/usr/home/matt/gentoo/usr/lib/X11\" -I./../../include -I./../../lib -I./../../tools/wml -I../../include -I../../lib -I../../tools/wml -I/usr/home/matt/gentoo/usr/include -march=athlon64 -O2 -pipe -fno-strict-aliasing -Wall -g -fno-strict-aliasing -Wno-unused -Wno-comment -fno-tree-ter -DCSRG_BASED -DXNO_MTSAFE_API -DXNO_MTSAFE_PWDAPI -MT UilLexAna.lo -MD -MP -MF .deps/UilLexAna.Tpo -c UilLexAna.c -fPIC -DPIC -o .libs/UilLexAna.o UilLexAna.c: In function 'yylex': UilLexAna.c:1488: error: request for member 'value' in something not a structure or union UilLexAna.c:1489: error: request for member 'b_type' in something not a structure or union UilLexAna.c:1510: error: request for member 'value' in something not a structure or union UilLexAna.c:1513: error: request for member 'b_type' in something not a structure or union the fix: --- clients/uil/UilDefI.h 2010-10-25 19:47:44.000000000 -0500 +++ clients/uil/UilDefI.h.yystype.bsd.patch 2010-10-25 19:56:54.000000000 -0500 @@ -283,7 +283,7 @@ #include "UilIODef.h" #include "UilDiagDef.h" #include "UilSarDef.h" -#if defined(linux) || defined(__APPLE__) || defined(sun) +#if defined(linux) || defined(__APPLE__) || defined(sun) || defined(__FreeBSD__) #define YYSTYPE yystype #endif #include "UilLexPars.h" matt@freebsd ~/gentoo $ emerge --info Portage 2.2.01.15553-prefix (prefix/bsd/freebsd/8.0/x64, gcc-4.3.3, unavailable, 8.0-RELEASE-p4 amd64) ================================================================= System uname: FreeBSD-8.0-RELEASE-p4-amd64-64bit-ELF Timestamp of tree: Mon, 25 Oct 2010 21:41:27 +0000 app-shells/bash: 4.1_p7 dev-lang/python: 2.6.5-r2 dev-util/cmake: 2.8.1-r2 sys-devel/autoconf: 2.13, 2.65-r1 sys-devel/automake: 1.6.3-r1, 1.9.6-r3, 1.10.3, 1.11.1 sys-devel/binutils: 2.20.51.0.10 sys-devel/gcc: 4.2.4-r01.2, 4.3.3-r2 sys-devel/gcc-config: 1.5 sys-devel/libtool: 2.2.10 sys-devel/make: 3.81-r2 ACCEPT_KEYWORDS="amd64 x86 ~amd64-linux ~x64-freebsd ~x86-fbsd ~x86-freebsd ~x86-linux" ACCEPT_LICENSE="* -@EULA" CBUILD="x86_64-pc-freebsd8.0" CFLAGS="-march=athlon64 -O2 -pipe" CHOST="x86_64-pc-freebsd8.0" CONFIG_PROTECT="/etc /usr/share/X11/xkb" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/revdep-rebuild /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c" CXXFLAGS="-march=athlon64 -O2 -pipe" DISTDIR="/usr/home/matt/gentoo/usr/portage/distfiles" FEATURES="assume-digests collision-protect distlocks fixlafiles fixpackages news parallel-fetch preserve-libs protect-owned sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch" GENTOO_MIRRORS="http://distfiles.gentoo.org" LDFLAGS="" LINGUAS="en en_US" MAKEOPTS="-j3" PKGDIR="/usr/home/matt/gentoo/usr/portage/packages" PORTAGE_CONFIGROOT="/usr/home/matt/gentoo/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/gtmp" PORTDIR="/usr/home/matt/gentoo/usr/portage" PORTDIR_OVERLAY="/usr/home/matt/gentoo/usr/local/portage/prefix /usr/home/matt/gentoo/usr/local/portage/nesicide /usr/home/matt/gentoo/usr/local/portage/mupen64plus" SYNC="rsync://rsync.us.prefix.freens.org/gentoo-portage-prefix" USE="3dnow 3dnowext X aac amd64-fbsd cracklib cxx flac fortran jpeg mmx modules mp3 ncurses openexr opengl oss png prefix qt3support readline sdl spell sse sse2 ssl svg tiff vorbis xv zlib" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="FreeBSD" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="keyboard mouse" KERNEL="FreeBSD" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en en_US" PHP_TARGETS="php5-2" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="nvidia" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LANG, LC_ALL, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
please update the summary to include the version of openmotif, thx
This is not even keyworded on ~x86-freebsd, because you have a nice list of keywords in your make.conf. I could just tell you to go away :). But I am able to reproduce and you attached a patch, so I will add a keyword once it is fixed. Ulrich, do you see any problems with this patch?
wrt to ACCEPT_KEYWORDS...yah, scary
oops, filed that bug in a hurry, x11-libs/openmotif-2.3.3. x64-freebsd prefix is mostly testing, there is little that is keyworded. ill look at the dependencies and clean up my accept_keywords. thanks.
Ulrich, I forgot to cc you...you want to add this patch and ~x86-freebsd and ~x64-freebsd?
(In reply to comment #5) > Ulrich, I forgot to cc you...you want to add this patch and ~x86-freebsd > and ~x64-freebsd? Looks like it's the same problem that was already fixed for Darwin and Solaris: <http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/x11-libs/openmotif/files/openmotif-2.3.2-darwin.patch?revision=1.2&view=markup> But why doesn't the issue show up on native ~x86-fbsd then? And, maybe more important: Does the package still compile on ~x86-fbsd with that patch applied?
BSD team, could you please test if OpenMotif still compiles for you with the included patch?
I'm affraid Prefix differs from vanilla FreeBSD here (and Darwin, and Solaris), because we provide an uptodate GNU (f)lex. Gentoo/FreeBSD should have that too, but IIRC that define is basically a bad way around for a missing configure check.
(In reply to comment #8) > I'm affraid Prefix differs from vanilla FreeBSD here (and Darwin, and Solaris), > because we provide an uptodate GNU (f)lex. Gentoo/FreeBSD should have that > too, but IIRC that define is basically a bad way around for a missing configure > check. Ulrich, how responsive is upstream? Is there a way to push the already applied patches and add a proper fix instead of that workaround?
(In reply to comment #9) > Ulrich, how responsive is upstream? Responsive enough. > Is there a way to push the already applied patches and add a proper fix > instead of that workaround? Their bug tracker is at <http://bugs.motifzone.net/>, but first we need a proper fix.
Two years' ping. Any progress here?
The fix depends on version of flex, which in Prefix will always be up-to-date, while usually being odd or out-of-date on non GNU-Linux systems. That said, we're always going to have a mismatch with upstream here. Perhaps, a simpler but more effective approach would be to use: #ifndef YYSTYPE # define YYSTYPE yystype #endif
(In reply to comment #12) > Perhaps, a simpler but more effective approach would be to use: > > #ifndef YYSTYPE > # define YYSTYPE yystype > #endif Can we be sure that YYSTYPE is always defined as a preprocessor macro, and not as a union or a typedef?
I guess in the general case we can't. The problem obviously lies in the need to define it.
I'm sorry, it doesn't seem we're going to fix this stale bug.