Opened 2 weeks ago

Closed 13 days ago

#71151 closed defect (fixed)

xar @1.8.0.498: error: use of undeclared identifier 'XAR_CKSUM_SHA256', 'XAR_CKSUM_SHA512'

Reported by: 0xbf00 (Jakob) Owned by: Schamschula (Marius Schamschula)
Priority: High Milestone:
Component: ports Version: 2.10.2
Keywords: tiger leopard snowleopard lion mountainlion mavericks Cc:
Port: xar

Description (last modified by ryandesign (Ryan Carsten Schmidt))

xar @1.8.0.498 fails to build on 10.5. It likely fails to build for all Mac OS X versions <= 10.9.

This appears to be a straightforward regression from #64842

The last commit to the patch files here ([f25b28b7a0911f100870d702b258a2911341fe82/macports-ports]) removed the fix that #64842 (find it here: [910521d9f3c891a6aa147f59890a10603968093d/macports-ports])

Happy to provide logs from my system, but as I get the exact same error that's mentioned in the older ticket, I'm omitting them for now.

Assignment based on GitHub commit authorship and assignment in the linked issue.

Change History (9)

comment:1 Changed 2 weeks ago by 0xbf00 (Jakob)

Description: modified (diff)

comment:2 Changed 2 weeks ago by Schamschula (Marius Schamschula)

That 'fix' no longer works for the current version of xar.

As I attempted to revert older macOS versions to the previous version of xar I must have missed adding it back.

comment:3 Changed 2 weeks ago by Schamschula (Marius Schamschula)

I did add the old patch as patch-src-xar_internal.h.old.diff specifically to support older OS versions.

Looking at the build bot output: It seems to ignore the if statements and pick up the incorrect version number and patch file.

On further investigation: Big Sur and Monterey have a different issue with implicit function declarations. I will have to fix those separately.

Last edited 2 weeks ago by Schamschula (Marius Schamschula) (previous) (diff)

comment:4 Changed 2 weeks ago by Schamschula (Marius Schamschula)

Last edited 2 weeks ago by ryandesign (Ryan Carsten Schmidt) (previous) (diff)

comment:5 Changed 2 weeks ago by ryandesign (Ryan Carsten Schmidt)

Description: modified (diff)

comment:6 in reply to:  3 Changed 2 weeks ago by ryandesign (Ryan Carsten Schmidt)

Priority: NormalHigh

xar is a dependency of llvm ports so this will prevent the build of any port needing a newer clang.

Replying to Schamschula:

Big Sur and Monterey have a different issue with implicit function declarations. I will have to fix those separately.

I filed #71162 to track that separately.

comment:7 Changed 2 weeks ago by ryandesign (Ryan Carsten Schmidt)

It looks like both this issue and #71162 have the same root cause: inadvertently using the system's outdated xar.h header instead of the new one in the xar source code.

Question is, why did the fix for #64842 use a patchfile to remove the check for XARSIG_BUILDING_WITH_XAR, rather than just defining XARSIG_BUILDING_WITH_XAR like the Xcode project does?

Marius, when you say the fix no longer works for the current version of xar, what do you mean? You said in #71162 you don't have older systems to test on.

Last edited 2 weeks ago by ryandesign (Ryan Carsten Schmidt) (previous) (diff)

comment:8 in reply to:  3 Changed 2 weeks ago by ryandesign (Ryan Carsten Schmidt)

Replying to Schamschula:

I did add the old patch as patch-src-xar_internal.h.old.diff specifically to support older OS versions.

The old patch that you added does not contain the portion described in the ticket description so even though you have now downgraded xar to 1.8.0.498 for all OS versions <= Ventura it does not build. (But users who can receive binaries will receive the binaries built back when that portion of the patch was in place.)

comment:9 Changed 13 days ago by ryandesign (Ryan Carsten Schmidt)

Resolution: fixed
Status: assignedclosed
Note: See TracTickets for help on using tickets.