Opened 16 months ago

Closed 12 months ago

Last modified 9 months ago

#70824 closed defect (fixed)

legacy-support provide TARGET_OS_IPHONE

Reported by: rmottola (Riccardo) Owned by: fhgwright (Fred Wright)
Priority: Normal Milestone:
Component: legacy-support Version:
Keywords: Cc:
Port: legacy-support

Description

I noticed that several ports start "breaking" because of TARGET_OS_IPHONE not being defined. E.g. https://github.com/LuaJIT/LuaJIT/pull/1189/files

The fix is incredibly trivial, but upstream often forgets about that. We can fight and make a patch for each and maintain it or hope it is upstreamed. However, often legacy-support is already used. I wonder if there is a good place and way to define it? Of course to 0, NO, or what is needed. We don't need those code sections at all on Mac

Change History (5)

comment:2 Changed 12 months ago by fhgwright (Fred Wright)

Owner: set to fhgwright
Resolution: fixed
Status: newclosed

In 9ec5a80946508826545c6ed5b1cd828127b65676/macports-legacy-support (master):

TargetConditionals: Add more defaults.

This replaces the old cherry-picked list with a more complete version
taken from the macOS 15 SDK. In the process, it fixes a conflict with
a hack in the AvailabilityMacros.h wrapper.

Closes: #70824

TESTED:
Passes updated test on all platforms, with all applicable SDKs.

comment:3 Changed 12 months ago by fhgwright (Fred Wright)

In f51f33e4d1a924693c4c9a0a8089ebc128f54153/macports-ports (master):

legacy-support-devel: Update to latest master.

Notable changes since last -devel version:

  • Adds support for code that can't tolerate the normal scandir() fix.
  • Limits unavoidable GCC warnings to cases that really need the fix.
  • Replaces broken copyfile wrapper with full 10.6 copyfile.
  • Extends 10.4 INODE64 support to *statx_np() functions.
  • Expands TARGET_* defaults. See: #70824

Also (Portfile only):

  • Disables unnecessary compiler_wrapper PG.
  • Adds note to update cxx_stdlib comment on next release.
  • Cleans up some long lines.

TESTED:
Tested both normal and -devel versions on 10.4-10.5 ppc, 10.5-10.6 ppc
(i386 Rosetta), 10.4-10.6 i386, 10.4-12.x x86_64, and 11.x-15.x arm64.
Builds and passes all tests on all tested platforms.

comment:4 Changed 11 months ago by fhgwright (Fred Wright)

In a784d15ced04e75724ee259cec1f7a3d1ab696d3/macports-ports (master):

legacy-support: update to v1.4.0.

Notable changes since v1.3.0:

  • Works around Apple's broken versioning in the macOS 15 SDK
  • Implements scandir() compatibility feature
  • Fixes dprintf() bug and implements vdprintf() See: #67598 See: #70118
  • Mismatched SDK compatibility is extended to include 15.x SDK.
  • Broken 10.4 CLOCK_MONOTONIC is fixed.
  • Fixes stat inconsistency in some 32-bit 10.4 builds.
  • Adds stat64 header support for 10.4 SDK.
  • Adds INODE64 support for *stat*() on 10.4.
  • Reworks fstatat*() support, similar to previous item, fixing buffer overrun in some cases.
  • Backports 10.5 'which' to 10.4.
  • Adds support for code that can't tolerate the normal scandir() compatibility feature.
  • Replaces broken 10.4/10.5 copyfile wrapper with full 10.6 copyfile.
  • Extends 10.4 INODE64 support to *statx_np() functions.
  • Expands TARGET_* defaults. See: #70824
  • Fixes 10.4 Rosetta bug in fstatx_np()
  • Makes renameat() available via stdio.h See: #71842
  • Implements interim clock_gettime_nsec_np() See: #61691
  • Implements clock_settime() See: #71399
  • Adds net/if_tun.h for <10.6 See: #70231
  • Provides pthread_[f]chdir_np() for 10.5+ See: #71265
  • Adds CPU_TYPE_ARM definition for 10.4 See: #71621

TESTED:
Tested both normal and -devel versions -/+universal on 10.4-10.5 ppc,
10.5-10.6 ppc (i386 Rosetta), 10.4-10.6 i386, 10.4-12.x x86_64, and
11.x-15.x arm64.
Builds and passes all tests on all tested platforms.

comment:5 Changed 9 months ago by mascguy (Christopher Nielsen)

Component: portslegacy-support

Recategorize existing legacy-support lib tickets, to use new component definition.

Note: See TracTickets for help on using tickets.