[MacPorts] #68040: DeaDBeeF @1.9.5: fatal error: 'wavpack.h' file not found
MacPorts
noreply at macports.org
Sat Aug 24 00:51:30 UTC 2024
#68040: DeaDBeeF @1.9.5: fatal error: 'wavpack.h' file not found
-------------------------+--------------------
Reporter: ryandesign | Owner: (none)
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version: 2.8.1
Resolution: | Keywords:
Port: DeaDBeeF |
-------------------------+--------------------
Comment (by ryandesign):
With that change, the next problem on 10.14 is:
{{{
osx/deps/flac-1.3.0/src/libFLAC/format.c:47:45: error: expected expression
FLAC_API const char *FLAC__VERSION_STRING = VERSION;
^
In file included from <built-in>:364:
<command line>:2:17: note: expanded from here
#define VERSION \"0.0.0\"
^
osx/deps/flac-1.3.0/src/libFLAC/format.c:53:64: error: expected ';' after
top level declarator
FLAC_API const char *FLAC__VENDOR_STRING = "reference libFLAC " VERSION "
20130526";
^
;
}}}
This appears to be because the Xcode project defines `VERSION` this way,
with embedded escaped backslashes which get passed on into the header file
where they cause the syntax error:
{{{
"VERSION=\\\"0.0.0\\\"",
}}}
So I tried adding the regex `s/\\\\\\"/\\"/g` to the `reinplace`.
Unfortunately that ''causes'' the build to fail on macOS 12 with:
{{{
osx/deps/flac-1.3.0/src/libFLAC/format.c:47:45: error: invalid suffix '.0'
on floating constant
FLAC_API const char *FLAC__VERSION_STRING = VERSION;
^
In file included from <built-in>:373:
<command line>:2:20: note: expanded from here
#define VERSION 0.0.0
^
osx/deps/flac-1.3.0/src/libFLAC/format.c:53:64: error: expected ';' after
top level declarator
FLAC_API const char *FLAC__VENDOR_STRING = "reference libFLAC " VERSION "
20130526";
^
;
}}}
So new Xcode needs the escaped backslashes and old Xcode forbids them. I
don't understand Xcode.
--
Ticket URL: <https://trac.macports.org/ticket/68040#comment:6>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list