[MacPorts] #67221: luajit fails on 10.5, needs TLS

MacPorts noreply at macports.org
Sun Apr 21 22:05:11 UTC 2024


#67221: luajit fails on 10.5, needs TLS
-----------------------+------------------------------
  Reporter:  rmottola  |      Owner:  catap
      Type:  defect    |     Status:  assigned
  Priority:  Normal    |  Milestone:
 Component:  ports     |    Version:
Resolution:            |   Keywords:  leopard haspatch
      Port:  luajit    |
-----------------------+------------------------------
Changes (by ryandesign):

 * keywords:  leopard => leopard haspatch
 * owner:  (none) => catap
 * status:  new => assigned


Comment:

 Replying to [comment:2 rmottola]:
 > Clang gives:
 >
 > {{{
 > ./lj_arch.h:127:5: error: 'TARGET_OS_IPHONE' is not defined, evaluates
 to 0 [-Werror,-Wundef-prefix=TARGET_OS_]
 > #if TARGET_OS_IPHONE
 > }}}
 >
 >
 > which I think should be written
 >
 > {{{
 > #ifdef TARGET_OS_IPHONE)
 > }}}

 No, that would not be correct. `TARGET_OS_` macros are always defined by
 the SDK to either `0` or `1`. Checking if it is defined is not equivalent
 to checking if it is truthy.

 > or pedantically as
 >
 >
 > {{{
 > #if defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE
 > }}}

 Yes, that would be the way to do it, now that projects are checking new
 `TARGET_OS_` macros that are not defined in old SDKs and now that clang
 considers it an error to check undefined `TARGET_OS_` macros.

 I've submitted this fix to the developers of luajit here:
 https://github.com/LuaJIT/LuaJIT/pull/1189

 Replying to [comment:4 rmottola]:
 > Replying to [comment:1 ryandesign]:
 > > Does adding `compiler.thread_local_storage yes` to the Portfile cause
 the correct compiler to be selected?
 >
 > yes it works, can it go in? also probably that makes the blacklist at
 least partially obsolete, since 4.2 was being blocked that way.

 Here's a pull request containing both fixes: https://github.com/macports
 /macports-ports/pull/23655

 For faster service for future issues, you can submit pull requests
 yourself!

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


More information about the macports-tickets mailing list