Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 28 Apr 2020 09:55:13 +0000
From:      bugzilla-noreply@freebsd.org
To:        ports-bugs@FreeBSD.org
Subject:   [Bug 245997] emulators/qemu emulators/qemu-devel sysutils/dtc devel/valgrind [patch] use system dtc in qemu builds + additional updates
Message-ID:  <bug-245997-7788@https.bugs.freebsd.org/bugzilla/>

next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D245997

            Bug ID: 245997
           Summary: emulators/qemu emulators/qemu-devel sysutils/dtc
                    devel/valgrind [patch] use system dtc in qemu builds +
                    additional updates
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: Individual Port(s)
          Assignee: ports-bugs@FreeBSD.org
          Reporter: lab+bsd@thinkum.space
                CC: bofh@freebsd.org
                CC: bofh@freebsd.org

Created attachment 213883
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=3D213883&action=
=3Dedit
Patch for emulators/qemu emulators/qemu-devel sysutils/dtc devel/valgrind

In synopsis: When building devel/qemu under poudriere, on a FreeBSD 12.1 am=
d64
machine I was encountering a persistent build failure with devel/qemu during
staging - an excerpt from the build log
~~~~
mkdir: dtc/libfdt/libfdt.h: File exists
gmake[1]: *** [Makefile:488: dtc/libfdt/libfdt.h] Error 1
gmake[1]: Leaving directory '/wrkdirs/usr/ports/emulators/qemu/work/qemu-4.=
1.1'
~~~~

After taking a look at the qemu configure script, I discovered that it may =
be
possible to build with an existing libfdt.so. In order to do so, I've had to
update sysutils/dtc to version 1.6.0, as well as updating how the extra ldf=
lags
are provided to the qemu configure script.

The qemu build now succeeds, locally. The additional testing now available =
for
sysutils/dtc also succeeds under make(test). For purpose of usability, I've
made some additional changes in the update - as detailed, in the following.


Summary of changes:

devel/valgrind: Update vki-freebsd.h patch for changes recommended in
  http://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D239669

emulators/qemu-devel: Add dtc dependency; move debug support into a
  DEBUG port option, also setting WITH_DEBUG in this situation, enabling
  the option by default; allow build with ncurses from ports, similar to
  the emulators/qemu port; Upate how extra-ldflags are provided to the
  configure script - providing the value only once, with no quote marks,
  to ensure that the system dtc is detected during configure

emulators/qemu: Update in parallel to emulator/qemu for dtc from ports
  and debug support

sysutils/dtc: Update to upstream release 1.6.0 - in which, the
  function fdt_check_full() is now defined differently, to a side effect
  as that the function should not be stripped from libfdt.so during normal
  pkg staging. The function is used during qemu configure, for detecting
  the presence of a system dtc. Add port option for building with yaml
  support for dtc (not enabled by default); Add port option for valgrind
  support during make(test), for amd64, i386 architectures; Add
  post-patch hacks for ensuring that the build will not fail when yaml.h
  and valgrind/memcheck.h cannot be located under wrksrc - these were
  being added to make dependencies under generated *.d files, in local
  build, should otherwise be unused in the build; Add subst vars for
  port version in distinfo, as a convenience for port maint.

--=20
You are receiving this mail because:
You are the assignee for the bug.=



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