Skip site navigation (1)Skip section navigation (2)
Date:      Thu,  8 Aug 2013 17:15:45 +0200 (CEST)
From:      Thierry Thomas <thierry@pompo.net>
To:        FreeBSD-gnats-submit@freebsd.org
Cc:        kde@FreeBSD.org
Subject:   ports/181146: devel/qmake4: gdb_dwarf_index.prf contains gsed specific syntax
Message-ID:  <20130808151545.33F3842D193A@graf.pompo.net>
Resent-Message-ID: <201308081520.r78FK3Ma006497@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         181146
>Category:       ports
>Synopsis:       devel/qmake4: gdb_dwarf_index.prf contains gsed specific syntax
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Thu Aug 08 15:20:02 UTC 2013
>Closed-Date:
>Last-Modified:
>Originator:     Thierry Thomas
>Release:        FreeBSD 9.2-BETA2 i386
>Organization:
Kabbale Eros
>Environment:
System: FreeBSD graf.pompo.net 9.2-BETA2 FreeBSD 9.2-BETA2 #0 r253984: Tue Aug 6 19:35:52 CEST 2013 thierry@graf.pompo.net:/usr/obj/usr/src/sys/GRAF130324 i386


	
>Description:
	qt4-qmake-4.8.4 installs the file
	$PREFIX/share/qt4/mkspecs/features/unix/gdb_dwarf_index.prf
	which contains the following lines:

    QMAKE_GDB_INDEX += \
      test \$\$(gdb --version | sed -e \'s,[^0-9]\\+\\([0-9]\\)\\.\\([0-9]\\).*,\\1\\2,;q\') -gt 72 && \
      gdb --nx --batch --quiet -ex \'set confirm off\' -ex \"save gdb-index $$QMAKE_GDB_DIR\" -ex quit \'$(TARGET)\'  && \
      test -f $(TARGET).gdb-index && \
      $$QMAKE_OBJCOPY --add-section \'.gdb_index=$(TARGET).gdb-index\' --set-section-flags \'.gdb_index=readonly\' \'$(TARGET)\' \'$
(TARGET)\' && \
      $$QMAKE_DEL_FILE $(TARGET).gdb-index || true

	Unfortunately, the regex is specific to gsed, and when the
	corresponding scriptlet

	test $(gdb --version | sed -e 's,[^0-9]\+\([0-9]\)\.\([0-9]\).*,\1\2,;q') -gt 72

	is run, it fails with the following error:

	test: GNU: unexpected operator

>How-To-Repeat:
	Test the line:
	test $(gdb --version | sed -e 's,[^0-9]\+\([0-9]\)\.\([0-9]\).*,\1\2,;q') -gt 72

	Then compare to:
	test $(gdb --version | gsed -e 's,[^0-9]\+\([0-9]\)\.\([0-9]\).*,\1\2,;q') -gt 72

>Fix:
	Either replace sed by gsed, adding the dependency, or
	translate the regex to our sed.

	Yet better, since the base GDB is older, this part might be
	ommitted?

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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20130808151545.33F3842D193A>