Need help with troubleshooting Blender PR

Jason Liu jasonliu at umich.edu
Sat Aug 29 01:39:01 UTC 2020


On Fri, Aug 28, 2020 at 9:34 PM Jason Liu <jasonliu at umich.edu> wrote:

> On Fri, Aug 28, 2020 at 8:41 PM Ryan Schmidt <ryandesign at macports.org>
> wrote:
>
>>
>>
>> On Aug 28, 2020, at 09:55, Jason Liu wrote:
>>
>> >>> However, later in the build, it looks like the MacPorts build system
>> sets SDKROOT based off the value MACOSX_DEPLOYMENT_TARGET.
>> >>
>> >> As far as I know, MacPorts does not do that.
>> >
>> > Then it's possible that CMake is doing that. Regardless, if you take a
>> look at the build log from either the 10.14 or 10.15 Azure builds, somehow
>> an environment variable with the name SDKROOT is somehow getting set. The
>> interesting thing, and something I haven't yet been able to figure out, is
>> that the build log on my local machine with macOS 10.11 and Xcode 8.2.1
>> does not show this environment variable at all, even when I am doing a
>> 'port -vst install'.
>>
>> MacPorts base sets the SDKROOT environment variable to the value of
>> ${configure.sdkroot} if the value of ${configure.sdkroot} is not empty. By
>> default, it is not empty on macOS 10.14 and later (because in 10.14 Apple
>> removed the headers from /), and it is empty on 10.13 and earlier.
>>
>
> Actually, this would perfectly explain the behavior that I've been seeing
> when comparing my 10.11 machine with the 10.14 and 10.15 Azure builds.
>

Also, I just noticed that certain portfiles, like for mingw-w64, and the
various qt ports, actually manually set ${configure.sdkroot} to an empty
value. I'm going to try that and see whether it helps the blender port.

-- 
Jason Liu


On Fri, Aug 28, 2020 at 9:34 PM Jason Liu <jasonliu at umich.edu> wrote:

> On Fri, Aug 28, 2020 at 8:41 PM Ryan Schmidt <ryandesign at macports.org>
> wrote:
>
>>
>>
>> On Aug 28, 2020, at 09:55, Jason Liu wrote:
>>
>> >>> However, later in the build, it looks like the MacPorts build system
>> sets SDKROOT based off the value MACOSX_DEPLOYMENT_TARGET.
>> >>
>> >> As far as I know, MacPorts does not do that.
>> >
>> > Then it's possible that CMake is doing that. Regardless, if you take a
>> look at the build log from either the 10.14 or 10.15 Azure builds, somehow
>> an environment variable with the name SDKROOT is somehow getting set. The
>> interesting thing, and something I haven't yet been able to figure out, is
>> that the build log on my local machine with macOS 10.11 and Xcode 8.2.1
>> does not show this environment variable at all, even when I am doing a
>> 'port -vst install'.
>>
>> MacPorts base sets the SDKROOT environment variable to the value of
>> ${configure.sdkroot} if the value of ${configure.sdkroot} is not empty. By
>> default, it is not empty on macOS 10.14 and later (because in 10.14 Apple
>> removed the headers from /), and it is empty on 10.13 and earlier.
>>
>
> Actually, this would perfectly explain the behavior that I've been seeing
> when comparing my 10.11 machine with the 10.14 and 10.15 Azure builds.
>
> --
> Jason Liu
>
>
> On Fri, Aug 28, 2020 at 8:41 PM Ryan Schmidt <ryandesign at macports.org>
> wrote:
>
>>
>>
>> On Aug 28, 2020, at 09:55, Jason Liu wrote:
>>
>> >>> However, later in the build, it looks like the MacPorts build system
>> sets SDKROOT based off the value MACOSX_DEPLOYMENT_TARGET.
>> >>
>> >> As far as I know, MacPorts does not do that.
>> >
>> > Then it's possible that CMake is doing that. Regardless, if you take a
>> look at the build log from either the 10.14 or 10.15 Azure builds, somehow
>> an environment variable with the name SDKROOT is somehow getting set. The
>> interesting thing, and something I haven't yet been able to figure out, is
>> that the build log on my local machine with macOS 10.11 and Xcode 8.2.1
>> does not show this environment variable at all, even when I am doing a
>> 'port -vst install'.
>>
>> MacPorts base sets the SDKROOT environment variable to the value of
>> ${configure.sdkroot} if the value of ${configure.sdkroot} is not empty. By
>> default, it is not empty on macOS 10.14 and later (because in 10.14 Apple
>> removed the headers from /), and it is empty on 10.13 and earlier.
>>
>>
>> > One more observation is that the value of this mysterious SDKROOT
>> variable is getting set to '/Library/Developer/CommandLineTools/...' in the
>> 10.14 Azure build, but is getting set to
>> '/Applications/Xcode_11.6.app/Contents/Developer/...' in the 10.15 Azure
>> build.
>>
>> Then I guess the 10.14 Azure build machine has the command line tools
>> installed and the 10.15 Azure build machine does not. MacPorts is designed
>> to use the CLT if available, and to use Xcode if the port says "use_xcode
>> yes" or if the CLT is not available.
>>
>>
>> > Theoretically, I shouldn't need a patch to do that. Blender's CMake
>> script only runs through its SDK detection code using the xcodebuild
>> command if the OSX_SYSTEM variable doesn't exist. I should be able to
>> circumvent that code by simply setting a value for OSX_SYSTEM as one of the
>> configure.args in the portfile.
>>
>> Ok great, if the build system supports setting a variable for that, then
>> do that.
>>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macports.org/pipermail/macports-dev/attachments/20200828/e6b96310/attachment.htm>


More information about the macports-dev mailing list