DEPTH = ../.. topsrcdir = @top_srcdir@ srcdir = @srcdir@ VPATH = @srcdir@ include $(DEPTH)/config/autoconf.mk MODULE = thebes LIBRARY_NAME = thebes LIBXUL_LIBRARY = 1 EXPORT_LIBRARY = 1 EXPORTS = \ gfx2DGlue.h \ gfx3DMatrix.h \ gfxASurface.h \ gfxAlphaRecovery.h \ gfxBlur.h \ gfxCachedTempSurface.h \ gfxColor.h \ gfxContext.h \ gfxDrawable.h \ gfxFailure.h \ gfxFont.h \ gfxFontConstants.h \ gfxFontUtils.h \ gfxFontTest.h \ gfxImageSurface.h \ gfxMatrix.h \ gfxPath.h \ gfxPattern.h \ gfxPlatform.h \ gfxPoint.h \ gfxPoint3D.h \ gfxPointH3D.h \ gfxQuad.h \ gfxQuaternion.h \ gfxRect.h \ gfxSkipChars.h \ gfxTeeSurface.h \ gfxTypes.h \ gfxTextRunCache.h \ gfxTextRunWordCache.h \ gfxUnicodeProperties.h \ gfxUtils.h \ gfxUserFontSet.h \ GLDefs.h \ GLContext.h \ GLContextSymbols.h \ GLContextProvider.h \ GLContextProviderImpl.h \ nsCoreAnimationSupport.h \ EGLUtils.h \ gfxSharedImageSurface.h \ $(NULL) ifeq ($(MOZ_WIDGET_TOOLKIT),android) EXPORTS += \ gfxAndroidPlatform.h \ gfxFT2Fonts.h \ gfxFT2FontBase.h \ $(NULL) endif ifeq ($(MOZ_WIDGET_TOOLKIT),cocoa) EXPORTS += \ gfxPlatformMac.h \ gfxQuartzSurface.h \ gfxQuartzImageSurface.h \ gfxQuartzPDFSurface.h \ gfxQuartzNativeDrawing.h \ $(NULL) endif ifeq ($(MOZ_WIDGET_TOOLKIT),gtk2) EXPORTS += \ gfxFT2FontBase.h \ gfxGdkNativeRenderer.h \ gfxPDFSurface.h \ gfxPSSurface.h \ gfxPlatformGtk.h \ $(NULL) ifdef MOZ_X11 EXPORTS += \ gfxXlibSurface.h \ gfxXlibNativeRenderer.h \ GLXLibrary.h \ $(NULL) endif ifdef MOZ_PANGO EXPORTS += gfxPangoFonts.h else EXPORTS += gfxFT2Fonts.h endif ifdef MOZ_DFB EXPORTS += gfxDirectFBSurface.h endif endif ifeq ($(MOZ_WIDGET_TOOLKIT),os2) EXPORTS += \ gfxOS2Fonts.h \ gfxOS2Platform.h \ gfxOS2Surface.h \ gfxPDFSurface.h \ $(NULL) endif ifeq ($(MOZ_WIDGET_TOOLKIT),qt) EXPORTS += \ gfxFT2FontBase.h \ gfxQPainterSurface.h \ gfxQtNativeRenderer.h \ gfxQtPlatform.h \ gfxPDFSurface.h \ $(NULL) ifdef MOZ_X11 EXPORTS += \ gfxXlibSurface.h \ GLXLibrary.h \ $(NULL) endif ifdef MOZ_PANGO EXPORTS += gfxPangoFonts.h else EXPORTS += gfxFT2Fonts.h endif endif ifeq ($(MOZ_WIDGET_TOOLKIT),windows) EXPORTS += \ gfxPDFSurface.h \ gfxWindowsPlatform.h \ gfxWindowsSurface.h \ gfxWindowsNativeDrawing.h \ WGLLibrary.h \ gfxDWriteFonts.h \ gfxD2DSurface.h \ $(NULL) endif CPPSRCS = \ gfx3DMatrix.cpp \ gfxASurface.cpp \ gfxAlphaRecovery.cpp \ gfxBlur.cpp \ gfxCachedTempSurface.cpp \ gfxContext.cpp \ gfxDrawable.cpp \ gfxImageSurface.cpp \ gfxFont.cpp \ gfxFontMissingGlyphs.cpp \ gfxFontTest.cpp \ gfxFontUtils.cpp \ gfxAtoms.cpp \ gfxMatrix.cpp \ gfxPath.cpp \ gfxPattern.cpp \ gfxPlatform.cpp \ gfxPlatformFontList.cpp \ gfxRect.cpp \ gfxSkipChars.cpp \ gfxTeeSurface.cpp \ gfxTextRunCache.cpp \ gfxTextRunWordCache.cpp \ gfxUserFontSet.cpp \ gfxUtils.cpp \ gfxUnicodeProperties.cpp \ gfxScriptItemizer.cpp \ gfxHarfBuzzShaper.cpp \ GLContext.cpp \ GLContextProviderOSMesa.cpp \ gfxSharedImageSurface.cpp \ $(NULL) # Are we targeting x86 or x64? If so, build gfxAlphaRecoverySSE2.cpp. ifneq (,$(INTEL_ARCHITECTURE)) CPPSRCS += gfxAlphaRecoverySSE2.cpp endif SHARED_LIBRARY_LIBS += \ ../layers/$(LIB_PREFIX)layers.$(LIB_SUFFIX) \ $(NULL) ifeq ($(MOZ_WIDGET_TOOLKIT),windows) CPPSRCS += gfxWindowsPlatform.cpp \ gfxWindowsSurface.cpp \ gfxWindowsNativeDrawing.cpp \ nsUnicodeRange.cpp \ $(NULL) ifdef MOZ_ENABLE_DWRITE_FONT CPPSRCS += gfxDWriteFonts.cpp \ gfxDWriteShaper.cpp \ gfxDWriteTextAnalysis.cpp \ gfxDWriteCommon.cpp \ gfxD2DSurface.cpp \ gfxDWriteFontList.cpp \ $(NULL) endif CPPSRCS += gfxGDIFont.cpp \ gfxGDIFontList.cpp \ gfxGDIShaper.cpp \ gfxUniscribeShaper.cpp \ $(NULL) CPPSRCS += gfxPDFSurface.cpp ifdef MOZ_ENABLE_D3D9_LAYER DEFINES += -DMOZ_ENABLE_D3D9_LAYER endif ifdef MOZ_ENABLE_D3D10_LAYER DEFINES += -DMOZ_ENABLE_D3D10_LAYER endif ACDEFINES += -UWIN32_LEAN_AND_MEAN endif ifeq ($(MOZ_WIDGET_TOOLKIT),android) EXPORTS += \ gfxPDFSurface.h \ $(NULL) CPPSRCS += \ gfxAndroidPlatform.cpp \ gfxFT2Fonts.cpp \ gfxFT2FontBase.cpp \ gfxFT2Utils.cpp \ gfxFT2FontList.cpp \ gfxPDFSurface.cpp \ nsUnicodeRange.cpp \ $(NULL) endif ifeq ($(MOZ_WIDGET_TOOLKIT),os2) CPPSRCS += gfxOS2Fonts.cpp \ gfxOS2Platform.cpp \ gfxOS2Surface.cpp \ nsUnicodeRange.cpp \ gfxFontconfigUtils.cpp \ $(NULL) CPPSRCS += gfxPDFSurface.cpp endif ifeq ($(MOZ_WIDGET_TOOLKIT),gtk2) ifdef MOZ_PANGO CPPSRCS += gfxPangoFonts.cpp else CPPSRCS += gfxFT2Fonts.cpp endif ifdef MOZ_X11 CPPSRCS += gfxXlibSurface.cpp gfxXlibNativeRenderer.cpp endif CPPSRCS += gfxPlatformGtk.cpp gfxGdkNativeRenderer.cpp CPPSRCS += gfxPDFSurface.cpp gfxPSSurface.cpp CPPSRCS += gfxFontconfigUtils.cpp CPPSRCS += gfxFT2FontBase.cpp CPPSRCS += gfxFT2Utils.cpp CPPSRCS += nsUnicodeRange.cpp ifdef MOZ_DFB CSRCS = cairo-gdk-utils.c endif endif ifdef MOZ_DFB CPPSRCS += gfxDirectFBSurface.cpp endif ifeq ($(MOZ_WIDGET_TOOLKIT),qt) CPPSRCS += gfxQtPlatform.cpp gfxQPainterSurface.cpp ifdef MOZ_X11 CPPSRCS += gfxXlibSurface.cpp gfxQtNativeRenderer.cpp endif ifdef MOZ_PANGO CPPSRCS += gfxPangoFonts.cpp else CPPSRCS += gfxFT2Fonts.cpp endif CPPSRCS += gfxFT2FontBase.cpp CPPSRCS += gfxFT2Utils.cpp CPPSRCS += gfxFontconfigUtils.cpp CPPSRCS += nsUnicodeRange.cpp CPPSRCS += gfxPDFSurface.cpp endif ifeq ($(MOZ_WIDGET_TOOLKIT),cocoa) CPPSRCS += \ gfxQuartzSurface.cpp \ gfxQuartzImageSurface.cpp \ gfxQuartzPDFSurface.cpp \ gfxPlatformMac.cpp \ gfxMacFont.cpp \ gfxCoreTextShaper.cpp \ $(NULL) #CPPSRCS += gfxPDFSurface.cpp CPPSRCS += nsUnicodeRange.cpp CPPSRCS += gfxQuartzNativeDrawing.cpp CMMSRCS = \ gfxMacPlatformFontList.mm \ nsCoreAnimationSupport.mm \ $(NULL) endif CSRCS += woff.c GL_PROVIDER = Null ifeq ($(MOZ_WIDGET_TOOLKIT),windows) GL_PROVIDER = WGL endif ifeq ($(MOZ_WIDGET_TOOLKIT),cocoa) GL_PROVIDER = CGL endif ifeq ($(MOZ_WIDGET_TOOLKIT),gtk2) ifdef MOZ_PLATFORM_MAEMO GL_PROVIDER = EGL else ifdef MOZ_EGL_XRENDER_COMPOSITE GL_PROVIDER = EGL else GL_PROVIDER = GLX endif endif endif ifeq ($(MOZ_WIDGET_TOOLKIT),qt) ifdef MOZ_PLATFORM_MAEMO GL_PROVIDER = EGL else GL_PROVIDER = GLX endif endif ifeq ($(MOZ_WIDGET_TOOLKIT),android) GL_PROVIDER = EGL endif # Mac is a special snowflake ifeq ($(GL_PROVIDER),CGL) CMMSRCS += GLContextProvider$(GL_PROVIDER).mm else CPPSRCS += GLContextProvider$(GL_PROVIDER).cpp endif # Win32 is a special snowflake, for ANGLE ifeq ($(MOZ_WIDGET_TOOLKIT),windows) CPPSRCS += GLContextProviderEGL.cpp endif DEFINES += -DIMPL_THEBES -DWOFF_MOZILLA_CLIENT include $(topsrcdir)/config/rules.mk include $(topsrcdir)/ipc/chromium/chromium-config.mk DEFINES := $(filter-out -DUNICODE,$(DEFINES)) CXXFLAGS += $(MOZ_CAIRO_CFLAGS) $(TK_CFLAGS) CFLAGS += $(MOZ_CAIRO_CFLAGS) $(TK_CFLAGS) ifeq ($(MOZ_WIDGET_TOOLKIT),android) CXXFLAGS += $(CAIRO_FT_CFLAGS) endif ifeq ($(MOZ_WIDGET_TOOLKIT),gtk2) CXXFLAGS += $(MOZ_PANGO_CFLAGS) endif ifeq ($(MOZ_WIDGET_TOOLKIT),os2) CXXFLAGS += $(CAIRO_FT_CFLAGS) endif ifeq ($(MOZ_WIDGET_TOOLKIT),qt) CXXFLAGS += $(CAIRO_FT_CFLAGS) $(MOZ_PANGO_CFLAGS) endif # The file uses SSE2 intrinsics, so it needs special compile flags on some # compilers. ifneq (,$(INTEL_ARCHITECTURE)) ifdef GNU_CC gfxAlphaRecoverySSE2.$(OBJ_SUFFIX): CXXFLAGS+=-msse2 endif ifdef SOLARIS_SUNPRO_CXX gfxAlphaRecoverySSE2.$(OBJ_SUFFIX): OS_CXXFLAGS += -xarch=sse2 -xO4 endif endif