[MacPorts] #60811: simulavr @1.0.0_2: Could not locate libbfd.so/libbfd.a and/or bfd.h

MacPorts noreply at macports.org
Wed Jul 3 20:53:33 UTC 2024


#60811: simulavr @1.0.0_2: Could not locate libbfd.so/libbfd.a and/or bfd.h
-----------------------+--------------------
  Reporter:  neilt     |      Owner:  (none)
      Type:  defect    |     Status:  new
  Priority:  Normal    |  Milestone:
 Component:  ports     |    Version:  2.6.2
Resolution:            |   Keywords:
      Port:  simulavr  |
-----------------------+--------------------

Comment (by ryandesign):

 Replying to [comment:3 neilt]:
 > You may not need any patches.  See below.

 I can confirm that. I've looked at each patch and reinplace.

 Patchfiles:

 * patch-at90can-elpm was backported from
 https://git.savannah.nongnu.org/cgit/simulavr.git/commit?id=e3d323e664884003673a00559c14d8e799699b52
 * patch-at90can-ivs was backported from
 https://git.savannah.nongnu.org/cgit/simulavr.git/commit?id=6ef1c1455becac93f445c3100520ab498ecf240c
 * patch-msleep was fixed differently in
 https://git.savannah.nongnu.org/cgit/simulavr.git/commit?id=23ba1114d63ed51d10eae3814851ae8c428ba94b
 * patch-src_Makefile.in was for the deleted autotools build system
 * patch-src_systemclock.cpp was fixed differently in
 https://git.savannah.nongnu.org/cgit/simulavr.git/commit?id=dd9818452e8f0fd2a301e041df60f406ad7ea96c

 Reinplaces:

 * Swig version patch was for the deleted autotools build system
 * The rest were backported from https://savannah.nongnu.org/bugs/?35737

 Hopefully the fixes for the deleted autotools build system aren't needed
 for the new cmake build system.

 > I cloned the savannah git locally.

 We prefer not to `git clone` in MacPorts—we prefer to use distfiles—but
 they don't offer an official distfile for 1.1.0 (I filed
 https://savannah.nongnu.org/bugs/?65923) and the automatically-generated
 tarball from their git web interface doesn't work (I filed
 https://savannah.nongnu.org/bugs/?65943).

 > Then did `make build`. I did not apply any patches.

 The Makefile is a wrapper around the cmake build system so we wouldn't
 want to use that; we'd want to use the cmake portgroup and all of the
 options that it adds.

 It uses C++11 now so the port needs to specify that with
 `compiler.cxx_standard 2011`.

 The cmake build does all sorts of things automatically if it finds the
 right dependencies. If help2man is found, it builds the manpage. If
 makeinfo is found, it builds the info page. If gzip is found, it gzips the
 changelog. These are fine and we can add the help2man dependency so that
 the manpage gets built. The port already has a makeinfo dependency.

 Some of the other things it does are less fine. If python 3.5 or later
 with the sphinx, rst2pdf, bs4, and requests modules is found, it builds
 the web site and manual. If doxygen and dot are found, it builds API
 documentation. If dpkg and fakeroot are found, it builds debian packaging.
 I don't think there are any switches to disable that behavior. Some of
 those are heavy dependencies (graphviz) that I'd rather not add, and
 others (debian) are just plain unnecessary for us. I may have to patch the
 CMakeLists.txt to ensure these optional features are not built even if the
 dependencies are found (due to our desire for ReproducibleBuilds).

-- 
Ticket URL: <https://trac.macports.org/ticket/60811#comment:4>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list