Closed Bug 1680152 Opened 4 years ago Closed 4 years ago

Bump macos deployment target to 10.12

Categories

(Firefox Build System :: General, task)

task

Tracking

(firefox85 fixed)

RESOLVED FIXED
85 Branch
Tracking Status
firefox85 --- fixed

People

(Reporter: glandium, Assigned: glandium)

References

Details

Attachments

(3 files)

No description provided.

I'm curious, what difference does this make?

If we have #ifdefs enabling stuff for > 10.9 <= 10.12, that will enable that, but I don't think we do, but more importantly, it will turn on warnings for things that have been deprecated between 10.9 and 10.12.

Thanks!

It does make a difference in the symbols libxul ends up using:

  • Changes from weak import to full import:

    • _NSUserActivityTypeBrowsingWeb
    • _NSWorkspaceAccessibilityDisplayOptionsDidChangeNotification
    • OBJC_CLASS$_NSUserActivity
    • OBJC_CLASS$_NSVisualEffectView
    • OBJC_METACLASS$_NSVisualEffectView
    • _kCFURLQuarantinePropertiesKey
    • on OBJC_CLASS$_LAContext
  • Removed:

    • OBJC_CLASS$_NSURLConnection
    • __ZN7mozilla11sse_private14sse4_1_enabledE
  • Added:

    • OBJC_CLASS$_NSURLSession
    • _NSArray0
    • _NSDictionary0

For the record, the new deprecation warnings are:

[-Wdeprecated-declarations] 'CFAbsoluteTimeGetGregorianDate' is deprecated: first deprecated in macOS 10.10 - Use CFCalendar or NSCalendar API instead
[-Wdeprecated-declarations] 'CFGregorianDate' is deprecated: first deprecated in macOS 10.10 - Use CFCalendar or NSCalendar API instead
[-Wdeprecated-declarations] 'CFGregorianDateGetAbsoluteTime' is deprecated: first deprecated in macOS 10.10 - Use CFCalendar or NSCalendar API instead
[-Wdeprecated-declarations] 'CFPropertyListCreateFromXMLData' is deprecated: first deprecated in macOS 10.10 - Use CFPropertyListCreateWithData instead.
[-Wdeprecated-declarations] 'LSCopyApplicationForMIMEType' is deprecated: first deprecated in macOS 10.10 - Use LSCopyDefaultApplicationURLForContentType instead.
[-Wdeprecated-declarations] 'LSCopyItemAttribute' is deprecated: first deprecated in macOS 10.10 - Use CFURLCopyResourcePropertyForKey or -[NSURL getResourceValue:forKey:error:] instead.
[-Wdeprecated-declarations] 'LSCopyItemInfoForURL' is deprecated: first deprecated in macOS 10.11 - Use URL resource properties instead.
[-Wdeprecated-declarations] 'LSCopyKindStringForMIMEType' is deprecated: first deprecated in macOS 10.10 - Use UTTypeCopyDescription instead.
[-Wdeprecated-declarations] 'LSGetApplicationForInfo' is deprecated: first deprecated in macOS 10.10 - Use LSCopyDefaultApplicationURLForContentType instead.
[-Wdeprecated-declarations] 'LSGetApplicationForItem' is deprecated: first deprecated in macOS 10.10 - Use LSCopyDefaultApplicationURLForURL instead.
[-Wdeprecated-declarations] 'LSGetApplicationForURL' is deprecated: first deprecated in macOS 10.10 - Use LSCopyDefaultApplicationURLForURL instead.
[-Wdeprecated-declarations] 'LSItemInfoRecord' is deprecated: first deprecated in macOS 10.11 - Use CFURLCopyResourcePropertiesForKeys or -[NSURL resourceValuesForKeys:error:] instead.
[-Wdeprecated-declarations] 'LSLaunchFSRefSpec' is deprecated: first deprecated in macOS 10.10 - Use LSLaunchURLSpec instead.
[-Wdeprecated-declarations] 'LSOpenFSRef' is deprecated: first deprecated in macOS 10.10 - Use LSOpenCFURLRef or -[NSWorkspace openURL:] instead.
[-Wdeprecated-declarations] 'LSOpenFromRefSpec' is deprecated: first deprecated in macOS 10.10 - Use LSOpenFromURLSpec or NSWorkspace instead.
[-Wdeprecated-declarations] 'aslresponse_free' is deprecated: first deprecated in macOS 10.10 - Use asl_release instead
[-Wdeprecated-declarations] 'aslresponse_next' is deprecated: first deprecated in macOS 10.10 - Use asl_next instead
[-Wdeprecated-declarations] 'beginSheet:modalForWindow:modalDelegate:didEndSelector:contextInfo:' is deprecated: first deprecated in macOS 10.10 - Use -[NSWindow beginSheet:completionHandler:] instead
[-Wdeprecated-declarations] 'getBytes:' is deprecated: first deprecated in macOS 10.10 - This method is unsafe because it could potentially cause buffer overruns. Use -getBytes:length: instead.
[-Wdeprecated-declarations] 'kCTFontDefaultOrientation' is deprecated: first deprecated in macOS 10.11
[-Wdeprecated-declarations] 'kIOSurfaceIsGlobal' is deprecated: first deprecated in macOS 10.11
[-Wdeprecated-declarations] 'kLSItemDisplayName' is deprecated: first deprecated in macOS 10.10 - Use the URL resource property kCFURLLocalizedNameKey or NSURLLocalizedNameKey instead.
[-Wdeprecated-declarations] 'kLSItemInfoIsApplication' is deprecated: first deprecated in macOS 10.11 - Use the URL resource property kCFURLIsApplicationKey or NSURLIsApplicationKey instead.
[-Wdeprecated-declarations] 'kLSItemInfoIsPackage' is deprecated: first deprecated in macOS 10.11 - Use the URL resource property kCFURLIsPackageKey or NSURLIsPackageKey instead.
[-Wdeprecated-declarations] 'kLSRequestAllInfo' is deprecated: first deprecated in macOS 10.11 - Use CFURLCopyResourcePropertiesForKeys or -[NSURL resourceValuesForKeys:error:] instead.
[-Wdeprecated-declarations] 'kLSRequestBasicFlagsOnly' is deprecated: first deprecated in macOS 10.11 - Use CFURLCopyResourcePropertiesForKeys or -[NSURL resourceValuesForKeys:error:] instead.

With an additional patch bumping the SDK to 10.12 (not sure whether to go with it yet), we get these ones on top:

[-Wdeprecated-declarations] 'NSAlphaShiftKeyMask' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSAlternateKeyMask' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSAnyEventMask' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSApplicationDefined' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSBorderlessWindowMask' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSCenterTextAlignment' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSClosableWindowMask' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSCommandKeyMask' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSCompositeCopy' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSControlKeyMask' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSDeviceIndependentModifierFlagsMask' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSFlagsChanged' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSFullScreenWindowMask' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSFullSizeContentViewWindowMask' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSFunctionKeyMask' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSHelpKeyMask' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSKeyDown' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSKeyUp' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSLeftMouseDown' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSLeftMouseDownMask' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSLeftMouseDragged' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSLeftMouseUp' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSMiniControlSize' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSMiniaturizableWindowMask' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSMouseEntered' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSMouseExited' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSMouseMoved' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSNumericPadKeyMask' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSOtherMouseDown' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSOtherMouseDownMask' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSOtherMouseDragged' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSOtherMouseUp' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSRegularControlSize' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSResizableWindowMask' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSRightMouseDown' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSRightMouseDragged' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSRightMouseUp' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSRightTextAlignment' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSScrollWheel' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSScrollWheelMask' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSShiftKeyMask' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSSmallControlSize' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSSystemDefined' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSTabletPointEventSubtype' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSTitledWindowMask' is deprecated: first deprecated in macOS 10.12
[-Wdeprecated-declarations] 'NSWindowFullScreenButton' is deprecated: first deprecated in macOS 10.12 - The standard window button for NSWindowFullScreenButton is always nil; use NSWindowZoomButton instead
[-Wdeprecated-declarations] 'OSAtomicAdd32Barrier' is deprecated: first deprecated in macOS 10.12 - Use atomic_fetch_add() from <stdatomic.h> instead
[-Wdeprecated-declarations] 'OSAtomicCompareAndSwapIntBarrier' is deprecated: first deprecated in macOS 10.12 - Use atomic_compare_exchange_strong() from <stdatomic.h> instead
[-Wdeprecated-declarations] 'OSAtomicDecrement32Barrier' is deprecated: first deprecated in macOS 10.12 - Use std::atomic_fetch_sub() from <atomic> instead
[-Wdeprecated-declarations] 'OSAtomicIncrement32Barrier' is deprecated: first deprecated in macOS 10.12 - Use std::atomic_fetch_add() from <atomic> instead
[-Wdeprecated-declarations] 'OSSpinLock' is deprecated: first deprecated in macOS 10.12 - Use os_unfair_lock() from <os/lock.h> instead
[-Wdeprecated-declarations] 'OSSpinLockLock' is deprecated: first deprecated in macOS 10.12 - Use os_unfair_lock_lock() from <os/lock.h> instead
[-Wdeprecated-declarations] 'OSSpinLockUnlock' is deprecated: first deprecated in macOS 10.12 - Use os_unfair_lock_unlock() from <os/lock.h> instead
[-Wdeprecated-declarations] 'arc4random_addrandom' is deprecated: first deprecated in macOS 10.12 - use arc4random_stir
[-Wdeprecated-declarations] 'asl_close' is deprecated: first deprecated in macOS 10.12 - os_log(3) has replaced asl(3)
[-Wdeprecated-declarations] 'asl_free' is deprecated: first deprecated in macOS 10.12 - os_log(3) has replaced asl(3)
[-Wdeprecated-declarations] 'asl_get' is deprecated: first deprecated in macOS 10.12 - os_log(3) has replaced asl(3)
[-Wdeprecated-declarations] 'asl_new' is deprecated: first deprecated in macOS 10.12 - os_log(3) has replaced asl(3)
[-Wdeprecated-declarations] 'asl_open' is deprecated: first deprecated in macOS 10.12 - os_log(3) has replaced asl(3); see os_log_create(3)
[-Wdeprecated-declarations] 'asl_search' is deprecated: first deprecated in macOS 10.12 - os_log(3) has replaced asl(3)
[-Wdeprecated-declarations] 'asl_send' is deprecated: first deprecated in macOS 10.12 - os_log(3) has replaced asl(3)
[-Wdeprecated-declarations] 'asl_set' is deprecated: first deprecated in macOS 10.12 - os_log(3) has replaced asl(3)
[-Wdeprecated-declarations] 'asl_set_query' is deprecated: first deprecated in macOS 10.12 - os_log(3) has replaced asl(3)
[-Wdeprecated-declarations] 'context' is deprecated: first deprecated in macOS 10.12 - This method always returns nil. If you need access to the current drawing context, use [NSGraphicsContext currentContext] inside of a draw operation.
[-Wdeprecated-declarations] 'syscall' is deprecated: first deprecated in macOS 10.12 - syscall(2) is unsupported; please switch to a supported interface. For SYS_kdebug_trace use kdebug_signpost().
[-Wpointer-bool-conversion] address of function 'clock_gettime' will always evaluate to 'true'
Attachment #9190719 - Attachment description: Bug 1680152 - Bump SDK to 10.12. → Bug 1680152 - Bump macos SDK to 10.12.
Pushed by mh@glandium.org: https://hg.mozilla.org/integration/autoland/rev/398dbbdee86e Bump macos deployment target to 10.12. r=spohl https://hg.mozilla.org/integration/autoland/rev/5186774b6c21 Bump macos SDK to 10.12. r=spohl,firefox-build-system-reviewers,mhentges
Pushed by mh@glandium.org: https://hg.mozilla.org/integration/autoland/rev/19d301abc69f Fixup: Bump deployment target to 10.12 when building clang.
See Also: → 1680383
Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → 85 Branch
Regressions: 1680765
Blocks: 1681406

:glandium, could you confirm which version of the 10.12 SDK has been uploaded to our build machines? If it isn't the latest 10.12 SDK, would it be possible to switch to it? I'm exploring some build/test failures that only seem to make sense if our build system is using one of the earlier 10.12 SDKs but I'm still looking into it to get final confirmation. Thank you

Flags: needinfo?(mh+mozilla)
Regressions: 1683723
Blocks: 1683723
No longer regressions: 1683723

It's the SDK from https://bugzilla.mozilla.org/show_bug.cgi?id=1324892#c5, so Xcode 8.2. If you want a newer one, please file a bug. We can get the one from Xcode 8.3.3, and it would be a good occasion to move off tooltool for that, too.

Flags: needinfo?(mh+mozilla)
Regressions: 1684672
Blocks: 1685764
Blocks: 1691167
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: