ports/181367: [PATCH] fix "__asm volatime" issue on devel/gobject-introspection

Takeshi Taguchi taguchi at ff.iij4u.or.jp
Sun Aug 18 01:30:01 UTC 2013


>Number:         181367
>Category:       ports
>Synopsis:       [PATCH] fix "__asm volatime" issue on devel/gobject-introspection
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Sun Aug 18 01:30:00 UTC 2013
>Closed-Date:
>Last-Modified:
>Originator:     Takeshi Taguchi
>Release:        FreeBSD-10-CURRENT
>Organization:
>Environment:
FreeBSD raspberry-pi 10.0-CURRENT FreeBSD 10.0-CURRENT #0 r254250M: Tue Aug 13 03:43:16 JST 2013     tt at vbox-01:/usr/home/tt/crochet-freebsd/work/obj/arm.armv6/usr/src/sys/RPI-B  arm
>Description:
devel/gobject-intrispection can not deal "__asm volatile".
for example graphics/gdk-pixmap2 build-depend on this ports produces
folowing compile log:
..
g-ir-scanner: warning: Option --strip-prefix has been deprecated;
see --identifier-prefix and --symbol-prefix.
/usr/include/machine/endian.h:90: syntax error, unexpected identifier, expecting ',' or ';' in ' __asm volatile("eor %1, %0, %0, ror #16\n"' at 'o'
/usr/include/machine/endian.h:104: syntax error, unexpected identifier, expecting ',' or ';' in ' __asm volatile(' at 'o'
  GICOMP GdkPixbuf-2.0.gir
..

>How-To-Repeat:
# cd /usr/ports/graphics/gdk-pixbuf2
# make

>Fix:
NetBSD people fix this issue.
see: http://gnats.netbsd.org/46017

add attached file to gobject-introspection/files/

Patch attached with submission follows:

--- giscanner/scannerlexer.l.orig	2013-08-18 07:37:16.000000000 +0900
+++ giscanner/scannerlexer.l	2013-08-18 07:40:32.000000000 +0900
@@ -134,7 +134,7 @@
 ","					{ return ','; }
 "->"					{ return ARROW; }
 
-"__asm" 	        	        { if (!parse_ignored_macro()) REJECT; }
+"__asm"[\t\f\v\r ]+"volatile" 	        { if (!parse_ignored_macro()) REJECT; }
 "__asm__" 	        	        { if (!parse_ignored_macro()) REJECT; }
 "__attribute__" 		        { if (!parse_ignored_macro()) REJECT; }
 "__attribute" 		                { if (!parse_ignored_macro()) REJECT; }


>Release-Note:
>Audit-Trail:
>Unformatted:


More information about the freebsd-ports-bugs mailing list