Closed Bug 1400533 Opened 2 years ago Closed 2 years ago

Mac builds broken on C-C (gfxCoreTextShaper.cpp:34:26: error: use of undeclared identifier 'kCTWritingDirectionOverride'): Switch Mac builds to 10.11 SDK

Categories

(Thunderbird :: Build Config, defect, critical)

defect
Not set
critical

Tracking

(thunderbird57 fixed, thunderbird58 fixed)

RESOLVED FIXED
Thunderbird 58.0
Tracking Status
thunderbird57 --- fixed
thunderbird58 --- fixed

People

(Reporter: jorgk-bmo, Assigned: tomprince)

References

Details

(Whiteboard: [Thunderbird-testfailure: B Mac])

Attachments

(4 files)

+++ This bug was initially created as a clone of Bug #1324892 +++

Landed so far

Pushed by mozilla@jorgk.com:
https://hg.mozilla.org/comm-central/rev/b0d8d878f627
Keep build files in sync (Port bug 1324892: Update Mac builds to use the OS X 10.11 SDK). rs=bustage-fix DONTBUILD

as a port of
https://hg.mozilla.org/mozilla-central/rev/643c70cb9158

But it looks like this was not enough, since we can't build due to compile errors:

Bug 1398133 comment #4 and bug 1398582 comment #21, although the latter got backed out.
Flags: needinfo?(mozilla)
Whiteboard: [Thunderbird-testfailure: B Mac]
Since bug 1398582 got backed out (https://hg.mozilla.org/mozilla-central/rev/0f15faa4f0fa), we're back to the problem from bug 1398133 comment #4:

/builds/slave/tb-c-cen-m64-00000000000000000/build/mozilla/gfx/thebes/gfxCoreTextShaper.cpp:34:26: error: use of undeclared identifier 'kCTWritingDirectionOverride'; did you mean 'kCTWritingDirectionNatural'? [log…]
/builds/slave/tb-c-cen-m64-00000000000000000/build/mozilla/gfx/thebes/gfxCoreTextShaper.cpp:45:49: error: use of undeclared identifier 'kCTWritingDirectionAttributeName' [log…]
/builds/slave/tb-c-cen-m64-00000000000000000/build/mozilla/gfx/thebes/gfxCoreTextShaper.cpp:49:45: error: no matching function for call to 'ArrayLength' [log…]
Summary: Mac builds broken on C-C: Switch Mac builds to 10.11 SDK → Mac builds broken on C-C (gfxCoreTextShaper.cpp:34:26: error: use of undeclared identifier 'kCTWritingDirectionOverride'): Switch Mac builds to 10.11 SDK
Severity: normal → critical
See bug 1379062 for SM going to cross compiles.
ouch!
The compile error in comment #1 is currently overshadowed by bug 1401487.
I've addressed bug 1401487, so we're back to the error from comment #1.
Assignee: nobody → mozilla
Flags: needinfo?(mozilla)
Depends on: 1403982
Comment on attachment 8912834 [details]
Bug 1400533: Pickup $TOOLTOOL_DIR to figure out where compilers are.

https://reviewboard.mozilla.org/r/184154/#review190652

I'm going to land this, to get OSX builds working, but would still appreciate a post-commit review.
Pushed by mozilla@hocat.ca:
https://hg.mozilla.org/comm-central/rev/67bd36f127c9
Pickup $TOOLTOOL_DIR to figure out where compilers are; r=me
https://hg.mozilla.org/comm-central/rev/210e3bfaccd6
Install OSX SDK; r=me
https://hg.mozilla.org/comm-central/rev/ddc0d42d08e6
Add sync exceptions; r=me
https://hg.mozilla.org/comm-central/rev/706e5fdd3012
Disable xcode installation checking when using tooltool provided OSX SDK; r=me
Status: NEW → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Nice, but tests don't seem to start.
Mozilla has migrated most of the workers to running taskcluster, and there are only a few left allocated to buildbot. It looks like that push just ran into a mozilla-esr52 push which is monopolizing all the OSX testers. At this moment, there are about 37 builds pending, 4 of which are from the TB push, and 9 workers. Once the esr52 builds are done, it'll pick up these tests.
Thanks for the explanation.

gfxCoreTextShaper.cpp:34:26: error: use of undeclared identifier 'kCTWritingDirectionOverride'
strangely seems to be popping up intermittently, maybe there is an issue with individual machines picking up the compile job.
Comment on attachment 8912834 [details]
Bug 1400533: Pickup $TOOLTOOL_DIR to figure out where compilers are.

https://reviewboard.mozilla.org/r/184156/#review190996

r+wc

::: build/macosx/local-mozconfig.common:20
(Diff revision 1)
> -    export AR=$topsrcdir/cctools/bin/ar
> -    export RANLIB=$topsrcdir/cctools/bin/ranlib
>  elif [ -d "$topsrcdir/../clang" ]; then
> -    # comm-central based build
> -    export CC=$topsrcdir/../clang/bin/clang
> -    export CXX=$topsrcdir/../clang/bin/clang++
> +    TOOLTOOL_DIR=$topsrcdir/..
> +else
> +    echo "Don't know where we are; can't find clang. topsrcdir: $topsrcdir"

Would it make sense to keep the else case, for debugging?
Attachment #8912834 - Flags: review?(philipp) → review+
Comment on attachment 8912835 [details]
Bug 1400533: Install OSX SDK.

https://reviewboard.mozilla.org/r/184158/#review190998

r+wc

::: build/macosx/local-mozconfig.common:23
(Diff revision 1)
>      TOOLTOOL_DIR=$topsrcdir/..
>  else
>      echo "Don't know where we are; can't find clang. topsrcdir: $topsrcdir"
>  fi
>  
> +if [ -d $TOOLTOOL_DIR/MacOSX10.10.sdk ]; then

Is this only an issue with the 10.10 SDK, or are other versions also affected? If the latter, then it might make sense to generalize this.
Attachment #8912835 - Flags: review?(philipp) → review+
Comment on attachment 8912836 [details]
Bug 1400533: Add sync exceptions.

https://reviewboard.mozilla.org/r/184160/#review191000
Attachment #8912836 - Flags: review?(philipp) → review+
Comment on attachment 8912891 [details]
Bug 1400533: Disable xcode installation checking when using tooltool provided OSX SDK.

https://reviewboard.mozilla.org/r/184210/#review191002
Attachment #8912891 - Flags: review?(philipp) → review+
(In reply to Jorg K (GMT+2) from comment #16)
> Thanks for the explanation.
> 
> gfxCoreTextShaper.cpp:34:26: error: use of undeclared identifier
> 'kCTWritingDirectionOverride'
> strangely seems to be popping up intermittently, maybe there is an issue
> with individual machines picking up the compile job.

It looks like some builds were picking up cached autoconf settings that didn't include the new SDK. I've clobbered all the OSX comm-central/try-comm-central builders, so hopefully the issue will disappear.
Comment on attachment 8912835 [details]
Bug 1400533: Install OSX SDK.

https://reviewboard.mozilla.org/r/184158/#review190998

> Is this only an issue with the 10.10 SDK, or are other versions also affected? If the latter, then it might make sense to generalize this.

There isn't an issue with the 10.10 SDK. The issue is that the globally available SDK is too old to compile Thunderbird with, so we install a newer (i.e. 10.10) SDK with tooltool (see below). The directory being checked here needs to match the SDK being installed with tooltool below.
Comment on attachment 8912834 [details]
Bug 1400533: Pickup $TOOLTOOL_DIR to figure out where compilers are.

https://reviewboard.mozilla.org/r/184156/#review190996

> Would it make sense to keep the else case, for debugging?

I'm not sure I understand this comment. The patch is *adding* the else case.
Tom, uplift the changesets in comment #13 to beta?
Flags: needinfo?(mozilla)
Jorg, everything but 706e5fdd3012 (which is dealing with a patch to M-C that isn't in beta).
Flags: needinfo?(mozilla)
Comment on attachment 8912834 [details]
Bug 1400533: Pickup $TOOLTOOL_DIR to figure out where compilers are.

This patch and the following two, not "Disable xcode installation checking" as per comment #26.
Attachment #8912834 - Flags: approval-comm-beta+
Target Milestone: --- → Thunderbird 58.0
Tom, can it be that --disable-xcode-checks is incompatible with --disable-compile-environment?

https://archive.mozilla.org/pub/thunderbird/nightly/2017/12/2017-12-03-03-02-05-comm-central-l10n/comm-central-macosx64-l10n-nightly-de-bm82-build1-build3552.txt.gz looks like that's a general bustage of mac l10n builds.
Flags: needinfo?(mozilla)
Blocks: 1423313
Flags: needinfo?(mozilla)
You need to log in before you can comment on or make changes to this bug.