[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