Solved Building bhyve with HDA patch

Hello all,

i've tried to build bhyve separately, not the whole base, but with hda-patch applied.
is this possible?
Or do i have to build the whole base including bhyve?

i've done the following:
1.) /usr/src was clean
2.)
svn checkout https://svn.freebsd.org/base/projects/bhyve /usr/src

3.)
patch -d bhyve/ < bhyve_hda.patch

4.)
make buildworld
runs into an error after several minutes with...
Code:
/usr/src/lib/clang/libllvmanalysis/../../../contrib/llvm/lib/Analysis/LazyValueInfo.cpp:998:14: error:
      no matching member function for call to 'insert'
    worklist.insert(worklist.end(), succ_begin(ToUpdate), succ_end(ToUpdate));
and finally:
Code:
c++: error: no such file or directory: '/usr/obj/usr/src/tmp/usr/src/usr.bin/clang/clang/../../../lib/clang/libllvmlinker/libllvmlinker.a'
c++: error: no such file or directory: '/usr/obj/usr/src/tmp/usr/src/usr.bin/clang/clang/../../../lib/clang/libllvmarchive/libllvmarchive.a'

who can help?
Thank you!

P.S.: also in LoopInfo.cpp:
Code:
In file included from /usr/src/lib/clang/libllvmanalysis/../../../contrib/llvm/lib/Analysis/LoopInfo.cpp:21:
/usr/src/lib/clang/libllvmanalysis/../../../contrib/llvm/include/llvm/Analysis/LoopInfoImpl.h:389:26: error:
      no matching member function for call to 'insert'
      ReverseCFGWorklist.insert(ReverseCFGWorklist.end(),
 
Last edited:
i've tried to build bhyve separately
The source you are fetching hasn't been updated in about 4 years. There's no reason to fetch it separately, it's been integrated in the base OS and is being developed from there.
 
You can do this without having to rebuild world, and instead just rebuilding the bhyve executable.
  1. Make sure the version of source checked out into /usr/src is the same version as what is running
  2. Create a directory to hold the bhyve sources (e.g. ~/proj/bhyve_hda) and copy /usr/src/usr.sbin/bhyve/* into that directory.
  3. Verify that you can build the executable cleanly from within the directory, using make -m /usr/src/share/mk
  4. Apply the patch, and rebuild
 
You can do this without having to rebuild world, and instead just rebuilding the bhyve executable.
  1. Make sure the version of source checked out into /usr/src is the same version as what is running
  2. Create a directory to hold the bhyve sources (e.g. ~/proj/bhyve_hda) and copy /usr/src/usr.sbin/bhyve/* into that directory.
  3. Verify that you can build the executable cleanly from within the directory, using make -m /usr/src/share/mk
  4. Apply the patch, and rebuild
Doesn't seem to work this way now, does it?
 
Back
Top