Compilation failure of texlive: a bug in clang or application code?

Mojca Miklavec mojca at macports.org
Wed Jan 16 05:52:28 PST 2013


On Wed, Jan 16, 2013 at 11:39 AM, Dan Ports wrote:
> On Mon, Jan 14, 2013 at 04:10:34PM +0100, Mojca Miklavec wrote:
>> XeTeX
>> (http://sourceforge.net/projects/xetex/,
>> http://xetex.git.sourceforge.net or
>> http://tug.org/svn/texlive/trunk/Build/source/) finally builds under
>> x86_64 without patching (earlier it didn't compile at all and the
>> current version in MacPorts disables part of the functionality that
>> depends on Carbon libraries for handling AAT).
>
> This is really great news! Do we have Khaled to thank for this?

Yes. (It's not finished yet, but it's getting there.)

>> So my question is basically: can this be considered a bug in clang and
>> if so: what would be the best place to report it to? (And if not, is
>> anyone willing to take a look to see if there's an easy workaround
>> before the port maintainer gets bitten by this issue?)
>
> I'm not sure if this is technically a bug in clang, but it's surprising
> enough behavior that it's worth reporting.
>
> If this isn't deemed a bug in clang (or while waiting for a fixed
> version to be available), we can always build the port with llvm-gcc;
> it's not ideal, but it's not a serious problem.

Thanks to everyone.

After some additional playing with the code I realised that I can
overcome the problem by making sure that Carbon headers are *always*
loaded before TeX Live-specific libraries (even though I didn't manage
to complete compilation due to some other problems, so I wasn't able
to test the binary itself). That way the macros b0, b1, ... are not
yet defined by the time the clang headers are loaded. The developer
took a note of this and replied that he will first try to get rid of
Carbon altogether and test for this weirdness afterwards.

I also submitted a report to
    http://llvm.org/bugs/show_bug.cgi?id=14964

Whether or not they decide to "fix" it, MacPorts won't be able to rely
on the "bug" being fixed in clang any time soon, so I will try to make
sure that the code will compile even with the current version. Given
the simple tests that should be possible.

Mojca


More information about the macports-dev mailing list