Skip to content

Apple: Enable MaterialX for iOS Builds#2950

Closed
dgovil wants to merge 2 commits intoPixarAnimationStudios:devfrom
dgovil:ios_core_with_mtlx
Closed

Apple: Enable MaterialX for iOS Builds#2950
dgovil wants to merge 2 commits intoPixarAnimationStudios:devfrom
dgovil:ios_core_with_mtlx

Conversation

@dgovil
Copy link
Copy Markdown
Collaborator

@dgovil dgovil commented Feb 15, 2024

Description of Change(s)

This PR updates MaterialX to 1.38.8 to add support for iOS builds. As requested, this has been split out from the Core iOS PR. Valentin Roussellet set up the majority of this PR.

This requires these PRs to be merged first:

  • I have verified that all unit tests pass with the proposed changes
  • I have submitted a signed Contributor License Agreement

@spiffmon
Copy link
Copy Markdown
Member

Thanks, @dgovil , but I think it would be preferable if this PR were literally just the one-liner in build_usd.py, unless there are API-breaking changes in the new patch-version? That way we can validate MaterialX behavior independently of any Apple/iOS-related changes.

@dgovil
Copy link
Copy Markdown
Collaborator Author

dgovil commented Feb 15, 2024

Sure, I'll split it out further into just the MaterialX version upgrade : #2952

I've changed this PR to enable MaterialX support for iOS once the other PRs are merged in

@dgovil dgovil changed the title Apple: Update MaterialX for iOS support Apple: Enable MaterialX for iOS Builds Feb 15, 2024
@jesschimein
Copy link
Copy Markdown
Collaborator

Filed as internal issue #USD-9313

@dgovil dgovil force-pushed the ios_core_with_mtlx branch from 5e64569 to 93bc898 Compare February 21, 2024 18:11
This PR adds **Core** iOS support to the OpenUSD project. This does not include Imaging, and any Imaging related components at this time. Imaging will be added in a follow up PR. MaterialX is also disabled as requested and the upgrade will be handled in a follow up PR.

It is a minimal version of PixarAnimationStudios#2455 against the latest `dev` branch.
Changes include:
* Using latest dev branch
* No imaging support. Will be added in a follow up PR.
* Makes use of CMake's inbuilt iOS support, negating the need for toolchain support
* Structures the code in such a way that we can add support for other iOS derived platforms+simulator in future PRs
* Swaps `ARCH_OS_IOS` with `ARCH_OS_IPHONE` to align with compiler directives. IPHONE refers to all derivative platforms, whereas iOS refers to only iPhone/iPad (Confusing but the case for historical reasons as [documented here](https://chaosinmotion.com/2021/08/02/things-to-remember-compiler-conditionals-for-macos-ios-etc/))
* TBB requires SDKROOT to be passed in or it can often go off and find some random compiler toolchain and fail.
* Add APPLE_EMBEDDED boolean to designate when using the CMake supported cross compilation targets. Added in Options.cmake so it can be used to configure defaults properly.
@dgovil dgovil force-pushed the ios_core_with_mtlx branch from 93bc898 to 62b7cec Compare February 29, 2024 00:25
This requires PixarAnimationStudios#2949 to be merged first as that introduces core iOS support first
@dgovil dgovil force-pushed the ios_core_with_mtlx branch from 62b7cec to 53bc09a Compare February 29, 2024 00:26
@jesschimein
Copy link
Copy Markdown
Collaborator

/AzurePipelines run

@azure-pipelines
Copy link
Copy Markdown

Azure Pipelines successfully started running 1 pipeline(s).

@pixar-oss pixar-oss closed this in 6589b16 Jul 25, 2024
@davidgyu davidgyu mentioned this pull request Oct 28, 2024
2 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants