Bug 242253

Summary: [NEW PORT] emulators/qemu-user-static-devel: QEMU CPU Emulator (github bsd-user branch)
Product: Ports & Packages Reporter: Kyle Evans <kevans>
Component: Individual Port(s)Assignee: Kyle Evans <kevans>
Status: Closed FIXED    
Severity: Affects Only Me CC: brooks, imp, kevans, koobs, kp
Priority: --- Keywords: feature
Version: LatestFlags: koobs: maintainer-feedback+
Hardware: Any   
OS: Any   
Attachments:
Description Flags
svn(1) diff against the ports tree
none
svn(1) diff against the ports tree, version 2 koobs: maintainer-approval+

Description Kyle Evans freebsd_committer freebsd_triage 2019-11-26 17:32:06 UTC
Created attachment 209455 [details]
svn(1) diff against the ports tree

This port represents the to-be-released version of qemu-user-static for testing prior to unleashing it upon the community at large and the package building infrastructure. Currently, it is based on the bsd-user-rebase-3.1 branch that moves the base qemu version of this work forward.

The main highlight of the update to 3.1 is initial riscv64 bsd-user support, submitted by Embecosm.

This version of the port is also notably no longer based on the master port, qemu-sbruno, but repocopied from it due to reusing a good portion of it.

Q/A:
 * portlint: looks fine
 * testport: 11.3, -CURRENT; amd64
Comment 1 Kyle Evans freebsd_committer freebsd_triage 2019-11-26 17:32:30 UTC
CC'ing a couple of people that are interesting in the riscv64 aspect.
Comment 2 Kubilay Kocak freebsd_committer freebsd_triage 2019-11-26 23:02:37 UTC
^Triage: Reporter is committer, assign accordingly
Comment 3 Kubilay Kocak freebsd_committer freebsd_triage 2019-11-27 02:52:05 UTC
Review items: 

- DIST_SUBDIR is local ports distfile subdir. All qemu* port sources
  should live there at least until all of them remove DIST_SUBDIR.
- COMMENT: I'd put "github bsd-user branch" in ( ) rather than "- suffix"
- Replace all ?= with = since this is not a port that will have anything
sub off it
- Add LICENSE_FILE if GH repository has a LICENSE file
- CONFLICTS_INSTALL may require the glob pattern *must not* match itself. Check this.
- Use obvious/meaningful variables: rename %%BSD_USER64%% in Makefile/pkg-plist to %%64BIT%%
Comment 4 Kyle Evans freebsd_committer freebsd_triage 2019-11-27 03:28:46 UTC
Created attachment 209466 [details]
svn(1) diff against the ports tree, version 2

All of the above should be addressed! Thanks for the feedback. =)
Comment 5 Kubilay Kocak freebsd_committer freebsd_triage 2019-12-02 03:17:41 UTC
Comment on attachment 209466 [details]
svn(1) diff against the ports tree, version 2

Reviewed by: koobs (ports)
Approved by: koobs (ports)
Comment 6 commit-hook freebsd_committer freebsd_triage 2019-12-02 03:41:24 UTC
A commit references this bug:

Author: kevans
Date: Mon Dec  2 03:40:50 UTC 2019
New revision: 518822
URL: https://svnweb.freebsd.org/changeset/ports/518822

Log:
  NEW PORT: emulators/qemu-user-static-devel: QEMU user-mode emulation

  This port represents the to-be-released version of qemu-user-static for
  testing prior to unleashing it upon the community at large and the package
  building infrastructure. Currently, it is based on the bsd-user-rebase-3.1
  branch that moves the base qemu version of this work forward.

  The main highlight of the update to 3.1 is initial riscv64 bsd-user support,
  submitted by Embecosm.

  This version of the port is also notably no longer based on the master port,
  qemu-sbruno, but repocopied from it due to reusing a good portion of it. As
  such, it's been severely reduced to eliminate all of the bits not relevant
  to building bsd-user/ (including the various port options), so much of the
  diff is eliminating the option-enabled checks and combining them all into a
  single CONFIGURE_ARGS/MAKE_ARGS, along with some additional --disable-flags
  for things that we certainly don't need.

  The python2.7 version restriction has been dropped as qemu's actually
  supported py3+ since at least the 2.x version we have over in qemu-sbruno, A
  follow-up commit will also drop the version restrictions in the other qemu
  ports that still have it to be proactive about this stuff as Python2 reaches
  EOL.

  Q/A:
   * portlint: looks fine
   * testport: 11.3, -CURRENT; amd64

  PR:		242253
  Reviewed by:	koobs (ports)
  Approved by:	koobs (ports)

Changes:
  head/emulators/Makefile
  head/emulators/qemu-sbruno/Makefile
  head/emulators/qemu-user-static-devel/
  head/emulators/qemu-user-static-devel/Makefile
  head/emulators/qemu-user-static-devel/distinfo
  head/emulators/qemu-user-static-devel/files/cdrom-dma-patch
  head/emulators/qemu-user-static-devel/files/patch-Makefile
  head/emulators/qemu-user-static-devel/files/patch-configure
  head/emulators/qemu-user-static-devel/files/patch-include_net_net.h
  head/emulators/qemu-user-static-devel/files/patch-qemu-doc.texi
  head/emulators/qemu-user-static-devel/files/qemu-ifdown.sample
  head/emulators/qemu-user-static-devel/files/qemu-ifup.sample
  head/emulators/qemu-user-static-devel/pkg-descr
  head/emulators/qemu-user-static-devel/pkg-message
  head/emulators/qemu-user-static-devel/pkg-plist