diff options
Diffstat (limited to 'Build/source/texk/web2c/xetexdir')
17 files changed, 169 insertions, 75 deletions
diff --git a/Build/source/texk/web2c/xetexdir/ChangeLog b/Build/source/texk/web2c/xetexdir/ChangeLog index 773619805be..df26ef3e887 100644 --- a/Build/source/texk/web2c/xetexdir/ChangeLog +++ b/Build/source/texk/web2c/xetexdir/ChangeLog @@ -1,3 +1,47 @@ +2009-10-25 Peter Breitenlohner <peb@mppmu.mpg.de> + + * XeTeXOTLayoutEngine,{cpp,h}: Adjust to ICU-4.2.1. + +2009-10-24 Peter Breitenlohner <peb@mppmu.mpg.de> + + * xetex.ch: Use kpse_{in,out}_name_ok(), now in Kpathsea, + instead of open_{in,out}_name_ok(). + +2009-10-12 Peter Breitenlohner <peb@mppmu.mpg.de> + + * XeTeXOTLayoutEngine.h: Drop #include "layout/HanLayoutEngine.h". + Move #include "layout/{Arabic,Indic,Tibetan}LayoutEngine.h" and + declaration of class XeTeXHanLayoutEngine from here ... + * XeTeXOTLayoutEngine.cpp: ... to here. + +2009-10-09 Peter Breitenlohner <peb@mppmu.mpg.de> + + * FontTableCache.{cpp,h}, MathTable.h, XeTeXFontInst.{cpp,h}, + XeTeXFontMgr.cpp, XeTeXLayoutInterface.cpp, + XeTeXOTLayoutEngine.{cpp,h}, XeTeXOTMath.{cpp,h}, cmaps.{cpp,h}, + sfnt.h: Include, e.g., "layout/LETypes.h" instead of "LETypes.h" + for consistency with installed (system) headers. + +2009-10-04 Peter Breitenlohner <peb@mppmu.mpg.de> + + * xetex.ch (do_extension): Recover variables unused by TeX. + +2009-09-04 Peter Breitenlohner <peb@mppmu.mpg.de> + + * am/xetex.am: Prepare compiler warnings. + +2009-08-18 Peter Breitenlohner <peb@mppmu.mpg.de> + + * am/xetex.am: SyncTeX now integrated into ../texmfmp.h. + +2009-08-16 Peter Breitenlohner <peb@mppmu.mpg.de> + + * am/xetex.am: Adapt to tangle-sh and web2c-sh. + +2009-08-13 Peter Breitenlohner <peb@mppmu.mpg.de> + + * am/xetex.am (xetex_c_h): avoid to split the C code. + 2009-07-16 Peter Breitenlohner <peb@mppmu.mpg.de> * am/xetex.am: Put ICU_INCLUDES first to avoid an installed diff --git a/Build/source/texk/web2c/xetexdir/FontTableCache.cpp b/Build/source/texk/web2c/xetexdir/FontTableCache.cpp index b26d9af1672..ed84522bc8a 100644 --- a/Build/source/texk/web2c/xetexdir/FontTableCache.cpp +++ b/Build/source/texk/web2c/xetexdir/FontTableCache.cpp @@ -39,7 +39,7 @@ authorization from the copyright holders. ********************************************************************** */ -#include "LETypes.h" +#include "layout/LETypes.h" #include "FontTableCache.h" diff --git a/Build/source/texk/web2c/xetexdir/FontTableCache.h b/Build/source/texk/web2c/xetexdir/FontTableCache.h index d66f5dd08f5..3e19c3a4b5e 100644 --- a/Build/source/texk/web2c/xetexdir/FontTableCache.h +++ b/Build/source/texk/web2c/xetexdir/FontTableCache.h @@ -43,7 +43,7 @@ authorization from the copyright holders. #define __FONTTABLECACHE_H -#include "LETypes.h" +#include "layout/LETypes.h" struct FontTableCacheEntry; diff --git a/Build/source/texk/web2c/xetexdir/MathTable.h b/Build/source/texk/web2c/xetexdir/MathTable.h index f8431899290..f0eeb7566dd 100644 --- a/Build/source/texk/web2c/xetexdir/MathTable.h +++ b/Build/source/texk/web2c/xetexdir/MathTable.h @@ -33,7 +33,7 @@ authorization from the copyright holders. #ifndef __MATHTABLE_H__ #define __MATHTABLE_H__ -#include "OpenTypeTables.h" +#include "layout/OpenTypeTables.h" typedef struct { le_int16 value; diff --git a/Build/source/texk/web2c/xetexdir/XeTeXFontInst.cpp b/Build/source/texk/web2c/xetexdir/XeTeXFontInst.cpp index 4a44c28375d..ef7d6fe2b55 100644 --- a/Build/source/texk/web2c/xetexdir/XeTeXFontInst.cpp +++ b/Build/source/texk/web2c/xetexdir/XeTeXFontInst.cpp @@ -40,9 +40,9 @@ authorization from the copyright holders. */ -#include "LETypes.h" -#include "LEFontInstance.h" -#include "LESwaps.h" +#include "layout/LETypes.h" +#include "layout/LEFontInstance.h" +#include "layout/LESwaps.h" #include "XeTeXFontInst.h" #include "XeTeXLayoutInterface.h" diff --git a/Build/source/texk/web2c/xetexdir/XeTeXFontInst.h b/Build/source/texk/web2c/xetexdir/XeTeXFontInst.h index 926554579a3..793a6c5a06b 100644 --- a/Build/source/texk/web2c/xetexdir/XeTeXFontInst.h +++ b/Build/source/texk/web2c/xetexdir/XeTeXFontInst.h @@ -45,8 +45,8 @@ authorization from the copyright holders. #include <stdio.h> -#include "LETypes.h" -#include "LEFontInstance.h" +#include "layout/LETypes.h" +#include "layout/LEFontInstance.h" #include "FontTableCache.h" diff --git a/Build/source/texk/web2c/xetexdir/XeTeXFontMgr.cpp b/Build/source/texk/web2c/xetexdir/XeTeXFontMgr.cpp index 2972f67aca1..e02fafe41d5 100644 --- a/Build/source/texk/web2c/xetexdir/XeTeXFontMgr.cpp +++ b/Build/source/texk/web2c/xetexdir/XeTeXFontMgr.cpp @@ -38,8 +38,8 @@ authorization from the copyright holders. #include "XeTeXswap.h" -#include "ICUFeatures.h" -#include "GlyphPositioningTables.h" +#include "layout/ICUFeatures.h" +#include "layout/GlyphPositioningTables.h" #include "sfnt.h" diff --git a/Build/source/texk/web2c/xetexdir/XeTeXLayoutInterface.cpp b/Build/source/texk/web2c/xetexdir/XeTeXLayoutInterface.cpp index b9bcc0b0d12..9677c2847db 100644 --- a/Build/source/texk/web2c/xetexdir/XeTeXLayoutInterface.cpp +++ b/Build/source/texk/web2c/xetexdir/XeTeXLayoutInterface.cpp @@ -47,8 +47,8 @@ authorization from the copyright holders. #include "XeTeXGrLayout.h" #endif -#include "ICUFeatures.h" -#include "ScriptAndLanguage.h" +#include "layout/ICUFeatures.h" +#include "layout/ScriptAndLanguage.h" #include "unicode/ubidi.h" #include "unicode/utext.h" diff --git a/Build/source/texk/web2c/xetexdir/XeTeXOTLayoutEngine.cpp b/Build/source/texk/web2c/xetexdir/XeTeXOTLayoutEngine.cpp index acb51ed8f6e..fbd77ef5b3b 100644 --- a/Build/source/texk/web2c/xetexdir/XeTeXOTLayoutEngine.cpp +++ b/Build/source/texk/web2c/xetexdir/XeTeXOTLayoutEngine.cpp @@ -32,11 +32,38 @@ authorization from the copyright holders. #include "XeTeXOTLayoutEngine.h" -#include "ThaiLayoutEngine.h" -#include "KhmerLayoutEngine.h" +/****************************************************************************\ +class XeTeXHanLayoutEngine + moved from XeTeXOTLayoutEngine.h to here in order not to include it into + XeTeXLayoutInterface.cpp. +\****************************************************************************/ +class XeTeXHanLayoutEngine : public XeTeXOTLayoutEngine +{ +public: + XeTeXHanLayoutEngine(const XeTeXFontInst *fontInstance, LETag scriptTag, LETag languageTag, + const GlyphSubstitutionTableHeader *gsubTable, + const GlyphPositioningTableHeader* gposTable, + const LETag* addFeatures, const le_int32* addParams, + const LETag* removeFeatures +#if U_ICU_VERSION_CODE >= 42 + , LEErrorCode &success +#endif + ); + + virtual ~XeTeXHanLayoutEngine(); + + virtual UClassID getDynamicClassID() const; + static UClassID getStaticClassID(); +}; -#include "LEScripts.h" -#include "LELanguages.h" +#include "layout/ArabicLayoutEngine.h" +#include "layout/IndicLayoutEngine.h" +#include "layout/TibetanLayoutEngine.h" +#include "layout/ThaiLayoutEngine.h" +#include "layout/KhmerLayoutEngine.h" + +#include "layout/LEScripts.h" +#include "layout/LELanguages.h" const LETag emptyTag = 0x00000000; @@ -98,14 +125,18 @@ LayoutEngine* XeTeXOTLayoutEngine::LayoutEngineFactory case teluScriptCode: case sinhScriptCode: // result = new XeTeXIndicLayoutEngine(fontInstance, scriptTag, languageTag, gsubTable, addFeatures, removeFeatures); - result = new IndicOpenTypeLayoutEngine(fontInstance, scriptCode, languageCode, typoFlags, gsubTable); + result = new IndicOpenTypeLayoutEngine(fontInstance, scriptCode, languageCode, typoFlags, +#if U_ICU_VERSION_CODE >= 42 + FALSE, +#endif + gsubTable XeTeX_success); break; case arabScriptCode: case syrcScriptCode: case mongScriptCode: // result = new XeTeXArabicLayoutEngine(fontInstance, scriptTag, languageTag, gsubTable, addFeatures, removeFeatures); - result = new ArabicOpenTypeLayoutEngine(fontInstance, scriptCode, languageCode, typoFlags, gsubTable); + result = new ArabicOpenTypeLayoutEngine(fontInstance, scriptCode, languageCode, typoFlags, gsubTable XeTeX_success); break; case bopoScriptCode: @@ -114,19 +145,19 @@ LayoutEngine* XeTeXOTLayoutEngine::LayoutEngineFactory case hiraScriptCode: case kanaScriptCode: case hrktScriptCode: - result = new XeTeXHanLayoutEngine(fontInstance, scriptTag, languageTag, gsubTable, gposTable, addFeatures, addParams, removeFeatures); + result = new XeTeXHanLayoutEngine(fontInstance, scriptTag, languageTag, gsubTable, gposTable, addFeatures, addParams, removeFeatures XeTeX_success); break; case tibtScriptCode: - result = new TibetanOpenTypeLayoutEngine(fontInstance, scriptCode, languageCode, typoFlags, gsubTable); + result = new TibetanOpenTypeLayoutEngine(fontInstance, scriptCode, languageCode, typoFlags, gsubTable XeTeX_success); break; case khmrScriptCode: - result = new KhmerOpenTypeLayoutEngine(fontInstance, scriptCode, languageCode, typoFlags, gsubTable); + result = new KhmerOpenTypeLayoutEngine(fontInstance, scriptCode, languageCode, typoFlags, gsubTable XeTeX_success); break; default: - result = new XeTeXOTLayoutEngine(fontInstance, scriptTag, languageTag, gsubTable, gposTable, addFeatures, addParams, removeFeatures); + result = new XeTeXOTLayoutEngine(fontInstance, scriptTag, languageTag, gsubTable, gposTable, addFeatures, addParams, removeFeatures XeTeX_success); break; } } @@ -142,26 +173,31 @@ LayoutEngine* XeTeXOTLayoutEngine::LayoutEngineFactory case tamlScriptCode: case teluScriptCode: case sinhScriptCode: - result = new IndicOpenTypeLayoutEngine(fontInstance, scriptCode, languageCode, typoFlags); + result = new IndicOpenTypeLayoutEngine(fontInstance, scriptCode, languageCode, typoFlags XeTeX_success); break; case arabScriptCode: // case hebrScriptCode: - result = new UnicodeArabicOpenTypeLayoutEngine(fontInstance, scriptCode, languageCode, typoFlags); + result = new UnicodeArabicOpenTypeLayoutEngine(fontInstance, scriptCode, languageCode, typoFlags XeTeX_success); break; case thaiScriptCode: - result = new ThaiLayoutEngine(fontInstance, scriptCode, languageCode, typoFlags); + result = new ThaiLayoutEngine(fontInstance, scriptCode, languageCode, typoFlags XeTeX_success); break; default: - result = new OpenTypeLayoutEngine(fontInstance, scriptCode, languageCode, typoFlags); + result = new OpenTypeLayoutEngine(fontInstance, scriptCode, languageCode, typoFlags XeTeX_success); break; } } +#if U_ICU_VERSION_CODE >= 42 + if (LE_FAILURE(success)) + return NULL; +#else if (result == NULL) success = LE_MEMORY_ALLOCATION_ERROR; +#endif return result; } @@ -169,8 +205,12 @@ LayoutEngine* XeTeXOTLayoutEngine::LayoutEngineFactory XeTeXOTLayoutEngine::XeTeXOTLayoutEngine( const LEFontInstance* fontInstance, LETag scriptTag, LETag languageTag, const GlyphSubstitutionTableHeader* gsubTable, const GlyphPositioningTableHeader* gposTable, - const LETag* addFeatures, const le_int32* addParams, const LETag* removeFeatures) - : OpenTypeLayoutEngine(fontInstance, getScriptCode(scriptTag), getLanguageCode(languageTag), 3, gsubTable) + const LETag* addFeatures, const le_int32* addParams, const LETag* removeFeatures +#if U_ICU_VERSION_CODE >= 42 + , LEErrorCode &success +#endif + ) + : OpenTypeLayoutEngine(fontInstance, getScriptCode(scriptTag), getLanguageCode(languageTag), 3, gsubTable XeTeX_success) { fDefaultFeatureMap = fFeatureMap; @@ -336,8 +376,12 @@ static const le_int32 featureMapCount = LE_ARRAY_SIZE(featureMap); XeTeXHanLayoutEngine::XeTeXHanLayoutEngine(const XeTeXFontInst *fontInstance, LETag scriptTag, LETag languageTag, const GlyphSubstitutionTableHeader *gsubTable, const GlyphPositioningTableHeader *gposTable, const LETag *addFeatures, const le_int32* addParams, - const LETag *removeFeatures) - : XeTeXOTLayoutEngine(fontInstance, scriptTag, languageTag, gsubTable, gposTable, NULL, NULL, NULL) + const LETag *removeFeatures +#if U_ICU_VERSION_CODE >= 42 + , LEErrorCode &success +#endif + ) + : XeTeXOTLayoutEngine(fontInstance, scriptTag, languageTag, gsubTable, gposTable, NULL, NULL, NULL XeTeX_success) { // reset the feature map and default features fFeatureMap = featureMap; diff --git a/Build/source/texk/web2c/xetexdir/XeTeXOTLayoutEngine.h b/Build/source/texk/web2c/xetexdir/XeTeXOTLayoutEngine.h index 26c8fde63ad..5af9b4f5948 100644 --- a/Build/source/texk/web2c/xetexdir/XeTeXOTLayoutEngine.h +++ b/Build/source/texk/web2c/xetexdir/XeTeXOTLayoutEngine.h @@ -33,11 +33,16 @@ authorization from the copyright holders. #ifndef __XeTeXOTLayoutEngine_h #define __XeTeXOTLayoutEngine_h -#include "OpenTypeLayoutEngine.h" -#include "ArabicLayoutEngine.h" -#include "IndicLayoutEngine.h" -#include "HanLayoutEngine.h" -#include "TibetanLayoutEngine.h" +#include "layout/OpenTypeLayoutEngine.h" + +#include "unicode/uversion.h" +#define U_ICU_VERSION_CODE (U_ICU_VERSION_MAJOR_NUM*10+U_ICU_VERSION_MINOR_NUM) +/* ICU-4.2 added 'success' as last parameter to LayoutEngine constructors. */ +#if U_ICU_VERSION_CODE >= 42 +#define XeTeX_success , success +#else +#define XeTeX_success +#endif #include "XeTeXFontInst.h" @@ -48,7 +53,11 @@ public: const GlyphSubstitutionTableHeader* gsubTable, const GlyphPositioningTableHeader* gposTable, const LETag* addFeatures, const le_int32* addParams, - const LETag* removeFeatures); + const LETag* removeFeatures +#if U_ICU_VERSION_CODE >= 42 + , LEErrorCode &success +#endif + ); virtual ~XeTeXOTLayoutEngine(); @@ -70,20 +79,5 @@ protected: private: }; -class XeTeXHanLayoutEngine : public XeTeXOTLayoutEngine -{ -public: - XeTeXHanLayoutEngine(const XeTeXFontInst *fontInstance, LETag scriptTag, LETag languageTag, - const GlyphSubstitutionTableHeader *gsubTable, - const GlyphPositioningTableHeader* gposTable, - const LETag* addFeatures, const le_int32* addParams, - const LETag* removeFeatures); - - virtual ~XeTeXHanLayoutEngine(); - - virtual UClassID getDynamicClassID() const; - static UClassID getStaticClassID(); -}; - #endif diff --git a/Build/source/texk/web2c/xetexdir/XeTeXOTMath.cpp b/Build/source/texk/web2c/xetexdir/XeTeXOTMath.cpp index a71d42501cf..ff5c540b118 100644 --- a/Build/source/texk/web2c/xetexdir/XeTeXOTMath.cpp +++ b/Build/source/texk/web2c/xetexdir/XeTeXOTMath.cpp @@ -37,7 +37,7 @@ authorization from the copyright holders. #include "XeTeXLayoutInterface.h" #include "XeTeXFontInst.h" -#include "CoverageTables.h" +#include "layout/CoverageTables.h" #define kMATHTableTag 0x4D415448 @@ -49,7 +49,7 @@ extern "C" { extern integer* fontsize; } -#include "LESwaps.h" +#include "layout/LESwaps.h" static SInt16 getMathConstant(LEFontInstance* fontInst, mathConstantIndex whichConstant) { diff --git a/Build/source/texk/web2c/xetexdir/XeTeXOTMath.h b/Build/source/texk/web2c/xetexdir/XeTeXOTMath.h index ff1d871c0a3..8d094a82cd1 100644 --- a/Build/source/texk/web2c/xetexdir/XeTeXOTMath.h +++ b/Build/source/texk/web2c/xetexdir/XeTeXOTMath.h @@ -37,7 +37,7 @@ authorization from the copyright holders. #ifdef XETEX_OT_MATH_IMPLEMENTATION #include "MathTable.h" -#include "LEFontInstance.h" +#include "layout/LEFontInstance.h" #else #define GlyphAssembly void /* used when we're just declaring the functions for xetex.ch */ #endif diff --git a/Build/source/texk/web2c/xetexdir/am/xetex.am b/Build/source/texk/web2c/xetexdir/am/xetex.am index 295c9a186b4..aa054eab19e 100644 --- a/Build/source/texk/web2c/xetexdir/am/xetex.am +++ b/Build/source/texk/web2c/xetexdir/am/xetex.am @@ -10,12 +10,12 @@ bin_PROGRAMS += xetex endif XETEX EXTRA_PROGRAMS += xetex -## Force Automake to use CXXLD for linking +# Force Automake to use CXXLD for linking nodist_EXTRA_xetex_SOURCES = dummy.cxx libxetex = libxetex.a -xetex_cppflags = -DU_STATIC_IMPLEMENTATION -I$(srcdir)/xetexdir +xetex_cppflags = -I$(srcdir)/xetexdir ## Must add icu first to avoid an installed version. xetex_cppflags += $(ICU_INCLUDES) ## Must add freetype2 includes early to avoid @@ -23,7 +23,7 @@ xetex_cppflags += $(ICU_INCLUDES) xetex_cppflags += $(FREETYPE2_INCLUDES) xetex_cppflags += $(TECKIT_INCLUDES) xetex_ldadd = $(libxetex) $(ICU_LIBS) $(TECKIT_LIBS) -xetex_dependencies = $(proglib) +xetex_dependencies = $(proglib) $(KPATHSEA_DEPEND) xetex_dependencies += $(ICU_DEPEND) $(TECKIT_DEPEND) if XETEX_MACOSX @@ -56,22 +56,23 @@ xetex_ldadd += $(FREETYPE2_LIBS) $(ZLIB_LIBS) xetex_dependencies += $(FREETYPE2_DEPEND) $(ZLIB_DEPEND) xetex_CPPFLAGS = $(xetex_cppflags) +xetex_CFLAGS = # $(WARNING_CFLAGS) +xetex_CXXFLAGS = # $(WARNING_CXXFLAGS) ## With --enable-ipc, XeTeX may need to link with -lsocket. xetex_LDADD = $(xetex_ldadd) $(LDADD) $(ipc_socketlibs) -xetex_DEPENDENCIES = $(xetex_dependencies) $(libxetex) +xetex_prereq = $(libxetex) +$(xetex_OBJECTS): $(xetex_prereq) ## XeTeX C sources -xetex_c_h = xetexini.c xetex0.c xetex1.c xetex2.c xetexcoerce.h xetexd.h +xetex_c_h = xetexini.c xetex0.c xetexcoerce.h xetexd.h nodist_xetex_SOURCES = $(xetex_c_h) xetex_pool.c xetexextra.c xetexdir/xetexextra.h $(xetex_c_h): xetex-web2c + @$(web2c) xetex xetex-web2c: xetex.p $(web2c_texmf) xetexdir/xetex.defines - $(web2c) xetex - : $(synctex_convert_xetex) - echo timestamp >$@ - touch $(xetex_c_h) + @$(web2c) xetex xetex_pool.c: xetex.pool xetexd.h perl $(srcdir)/xetexdir/pool2c.pl $< $@ @@ -87,10 +88,9 @@ xetexdir/xetexextra.h: xetexdir/xetexextra.in xetexdir/xetex.version xetexdir/et ## Tangling XeTeX xetex.p xetex.pool: xetex-tangle -xetex-tangle: ./otangle$(EXEEXT) xetex.web - $(otangle) xetex - echo timestamp >$@ - touch xetex.p xetex.pool + @$(o_tangle) xetex +xetex-tangle: ./otangle$(EXEEXT) xetex.web tangle-sh + @$(o_tangle) xetex ## Extract etex version xetexdir/etex.version: etexdir/etex.ch @@ -134,6 +134,10 @@ EXTRA_DIST += \ EXTRA_LIBRARIES += libxetex.a libxetex_a_CPPFLAGS = $(xetex_cppflags) +libxetex_a_CFLAGS = # $(WARNING_CFLAGS) +libxetex_a_CXXFLAGS = # $(WARNING_CXXFLAGS) +## Not yet for ObjC++ (not yet implemented) +libxetex_a_OBJCXXFLAGS = ## $(WARNING_OBJCXXFLAGS) libxetex_a_SOURCES = \ xetexdir/MathTable.h \ @@ -200,8 +204,9 @@ libxetex_a_SOURCES += \ endif XETEX_GRAPHITE -# We must create xetexd.h before building the libxetex_a_OBJECTS. -$(libxetex_a_OBJECTS): xetexd.h +# We must create xetexd.h etc. before building the libxetex_a_OBJECTS. +libxetex_prereq = xetexd.h $(xetex_dependencies) +$(libxetex_a_OBJECTS): $(libxetex_prereq) ## libxetexmm (Mac OS X only) ## diff --git a/Build/source/texk/web2c/xetexdir/cmaps.cpp b/Build/source/texk/web2c/xetexdir/cmaps.cpp index 464061b48ef..9ae49372d94 100644 --- a/Build/source/texk/web2c/xetexdir/cmaps.cpp +++ b/Build/source/texk/web2c/xetexdir/cmaps.cpp @@ -39,8 +39,8 @@ authorization from the copyright holders. * ************************************************************************/ -#include "LETypes.h" -#include "LESwaps.h" +#include "layout/LETypes.h" +#include "layout/LESwaps.h" #include "sfnt.h" #include "cmaps.h" diff --git a/Build/source/texk/web2c/xetexdir/cmaps.h b/Build/source/texk/web2c/xetexdir/cmaps.h index f56a2a84817..9236eccd169 100644 --- a/Build/source/texk/web2c/xetexdir/cmaps.h +++ b/Build/source/texk/web2c/xetexdir/cmaps.h @@ -43,7 +43,7 @@ authorization from the copyright holders. #ifndef __CMAPS_H #define __CMAPS_H -#include "LETypes.h" +#include "layout/LETypes.h" #include "sfnt.h" class CMAPMapper diff --git a/Build/source/texk/web2c/xetexdir/sfnt.h b/Build/source/texk/web2c/xetexdir/sfnt.h index 009cd75d5d9..b9d32133713 100644 --- a/Build/source/texk/web2c/xetexdir/sfnt.h +++ b/Build/source/texk/web2c/xetexdir/sfnt.h @@ -42,7 +42,7 @@ authorization from the copyright holders. #ifndef __SFNT_H #define __SFNT_H -#include "LETypes.h" +#include "layout/LETypes.h" #ifndef ANY_NUMBER diff --git a/Build/source/texk/web2c/xetexdir/xetex.ch b/Build/source/texk/web2c/xetexdir/xetex.ch index 0495d260df5..18db5a1b339 100644 --- a/Build/source/texk/web2c/xetexdir/xetex.ch +++ b/Build/source/texk/web2c/xetexdir/xetex.ch @@ -3349,11 +3349,11 @@ if translate_filename then begin @z @x - if open_in_name_ok(stringcast(name_of_file+1)) + if kpse_in_name_ok(stringcast(name_of_file+1)) and a_open_in(cur_file, kpse_tex_format) then goto done; @y - if open_in_name_ok(stringcast(name_of_file+1)) + if kpse_in_name_ok(stringcast(name_of_file+1)) and u_open_in(cur_file, kpse_tex_format, XeTeX_default_input_mode, XeTeX_default_input_encoding) then {At this point |name_of_file| contains the actual name found, as a UTF8 string. We convert to UTF16, then extract the |cur_area|, |cur_name|, and |cur_ext| from it.} @@ -7081,6 +7081,13 @@ primitive("pdfsavepos",extension,pdf_save_pos_node);@/ pdf_save_pos_node: print_esc("pdfsavepos"); @z +% i and j are unused by TeX but required for XeTeX +@x [53.1348] (do_extension) +var k:integer; {all-purpose integers} +@y +var i,@!j,@!k:integer; {all-purpose integers} +@z + @x set_language_code:@<Implement \.{\\setlanguage}@>; @y |