[MacPorts] #61021: defect: lftp 4.9.2 still does not compile
MacPorts
noreply at macports.org
Thu Aug 20 01:51:32 UTC 2020
#61021: defect: lftp 4.9.2 still does not compile
---------------------+-------------------------
Reporter: remkos | Owner: Schamschula
Type: defect | Status: assigned
Priority: Normal | Milestone:
Component: ports | Version:
Resolution: | Keywords:
Port: |
---------------------+-------------------------
Comment (by chadcatlett):
I had a few chances today to dig into why lftp wasn't compiling on my
machine.
Specifically I dug into needtrio.m4 that comes with lftp's tarball. I've
uploaded the relevant config.log section to http://xx0r.net/mp-lftp-4.9.2
-config_log-snippet.txt as well as attached here.
In the logfile it shows the error being from `"-Werror=implicit-function-
declaration"`.
If the autoconf configure script determines that trio is needed it defines
a C constant named `TRIO_REPLACE_STDIO` and sets the autoconf/automake
variable `NEED_TRIO` to `yes *reason*`.
It is referenced in `Makefile.am`
[https://github.com/lavv17/lftp/blob/v4.9.2/Makefile.am#L4-L7 here], which
tells the generated Makefile to build the code in the `trio` directory of
the tarball.
In `src/Makefile.am` it is referenced in a few places
[https://github.com/lavv17/lftp/blob/v4.9.2/src/Makefile.am#L38-L40 here],
[https://github.com/lavv17/lftp/blob/v4.9.2/src/Makefile.am#L79 here], and
[https://github.com/lavv17/lftp/blob/v4.9.2/src/Makefile.am#L103 here].
These usages set the bundled trio to be linked into the binary as well as
setting up the include path to include the bundled trio's directory.
So that sets things up for failure in terms of if trio is needed or not.
There is another unrelated issue with lftp that is related to the bundled
trio itself, which is that it is using C++ headers in a C file which is a
big no-no.
--
Ticket URL: <https://trac.macports.org/ticket/61021#comment:4>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list