From 32588ccc59b72ce0bfef8134a8d90bf60b145c9d Mon Sep 17 00:00:00 2001 From: Benoit Jacob Date: Wed, 25 Jul 2012 12:13:45 -0400 Subject: [PATCH] Bug 774755 - 2/8 - ANGLE r1242: update our makefiles - r=jgilbert In particular: - ANGLE_USE_NSPR goes away - many useless source files removed from libEGL --- gfx/angle/Makefile.in | 92 +++++++-------- gfx/angle/src/libEGL/Makefile.in | 76 +++++++++++++ gfx/angle/src/libGLESv2/Makefile.in | 169 ++++++++++++++++++++++++++++ 3 files changed, 284 insertions(+), 53 deletions(-) create mode 100644 gfx/angle/src/libEGL/Makefile.in create mode 100644 gfx/angle/src/libGLESv2/Makefile.in diff --git a/gfx/angle/Makefile.in b/gfx/angle/Makefile.in index 771739c5799a..05e23ad094b6 100644 --- a/gfx/angle/Makefile.in +++ b/gfx/angle/Makefile.in @@ -1,39 +1,7 @@ # -# ***** BEGIN LICENSE BLOCK ***** -# Version: MPL 1.1/GPL 2.0/LGPL 2.1 -# -# The contents of this file are subject to the Mozilla Public License Version -# 1.1 (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# http://www.mozilla.org/MPL/ -# -# Software distributed under the License is distributed on an "AS IS" basis, -# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License -# for the specific language governing rights and limitations under the -# License. -# -# The Original Code is gecko. -# -# The Initial Developer of the Original Code is -# Mozilla -# Portions created by the Initial Developer are Copyright (C) 2010 -# the Initial Developer. All Rights Reserved. -# -# Contributor(s): -# -# Alternatively, the contents of this file may be used under the terms of -# either of the GNU General Public License Version 2 or later (the "GPL"), -# or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), -# in which case the provisions of the GPL or the LGPL are applicable instead -# of those above. If you wish to allow use of your version of this file only -# under the terms of either the GPL or the LGPL, and not to allow others to -# use your version of this file under the terms of the MPL, indicate your -# decision by deleting the provisions above and replace them with the notice -# and other provisions required by the GPL or the LGPL. If you do not delete -# the provisions above, a recipient may use your version of this file under -# the terms of any one of the MPL, the GPL or the LGPL. -# -# ***** END LICENSE BLOCK ***** +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. DEPTH = ../.. topsrcdir = @top_srcdir@ @@ -60,9 +28,28 @@ LOCAL_INCLUDES += -I$(srcdir)/include -I$(srcdir)/src VPATH += $(srcdir)/src VPATH += $(srcdir)/src/compiler VPATH += $(srcdir)/src/compiler/preprocessor +VPATH += $(srcdir)/src/compiler/preprocessor/new +VPATH += $(srcdir)/src/compiler/timing +VPATH += $(srcdir)/src/compiler/depgraph CPPSRCS = \ - Compiler.cpp \ + Diagnostics.cpp \ + PreprocessorDiagnostics.cpp \ + DirectiveHandler.cpp \ + PreprocessorDirectiveHandler.cpp \ + DirectiveParser.cpp \ + ExpressionParser.cpp \ + Macro.cpp \ + MacroExpander.cpp \ + Tokenizer.cpp \ + InitializeParseContext.cpp \ + DependencyGraph.cpp \ + DependencyGraphBuilder.cpp \ + DependencyGraphOutput.cpp \ + DependencyGraphTraverse.cpp \ + RestrictFragmentShaderTiming.cpp \ + RestrictVertexShaderTiming.cpp \ + Compiler.cpp \ DetectRecursion.cpp \ InfoSink.cpp \ Initialize.cpp \ @@ -78,13 +65,17 @@ CPPSRCS = \ ShaderLang.cpp \ SymbolTable.cpp \ VariableInfo.cpp \ - debug.cpp \ - ossource_nspr.cpp \ + compilerdebug.cpp \ util.cpp \ ValidateLimitations.cpp \ ForLoopUnroll.cpp \ MapLongVariableNames.cpp \ + spooky.cpp \ BuiltInFunctionEmulator.cpp \ + Input.cpp \ + Lexer.cpp \ + Preprocessor.cpp \ + Token.cpp \ $(NULL) # flex/yacc generated files @@ -102,19 +93,13 @@ CPPSRCS += \ OutputESSL.cpp \ OutputGLSLBase.cpp \ TranslatorESSL.cpp \ - $(NULL) + $(NULL) -# Currently, only one or the other -# can be selected. - -## HLSL translator backend -##CPPSRCS += \ -## CodeGenHLSL.cpp \ -## OutputHLSL.cpp \ -## TranslatorHLSL.cpp \ -## UnfoldSelect.cpp \ -## SearchSymbol.cpp \ -## $(NULL) +ifeq ($(MOZ_WIDGET_TOOLKIT),windows) +CPPSRCS += ossource_win.cpp $(NULL) +else +CPPSRCS += ossource_posix.cpp $(NULL) +endif CSRCS = \ atom.c \ @@ -124,15 +109,16 @@ CSRCS = \ scanner.c \ symbols.c \ tokens.c \ - $(NULL) + $(NULL) -DEFINES += -DANGLE_USE_NSPR -DANGLE_BUILD -DCOMPILER_IMPLEMENTATION +DEFINES += -DANGLE_BUILD -DCOMPILER_IMPLEMENTATION #these defines are from ANGLE's build_angle.gyp DEFINES += -DANGLE_DISABLE_TRACE DEFINES += -DANGLE_COMPILE_OPTIMIZATION_LEVEL=D3DCOMPILE_OPTIMIZATION_LEVEL0 +DEFINES += -DANGLE_USE_NEW_PREPROCESSOR=1 -ifdef MOZ_ANGLE +ifdef MOZ_ANGLE_RENDERER # libEGL depends on (links against!) libGLESv2! DIRS = src/libGLESv2 src/libEGL diff --git a/gfx/angle/src/libEGL/Makefile.in b/gfx/angle/src/libEGL/Makefile.in new file mode 100644 index 000000000000..2571fc31b61c --- /dev/null +++ b/gfx/angle/src/libEGL/Makefile.in @@ -0,0 +1,76 @@ +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +DEPTH = ../../../.. +topsrcdir = @top_srcdir@ +srcdir = @srcdir@ +VPATH = @srcdir@ + +include $(DEPTH)/config/autoconf.mk + +MODULE = libegl +# On Windows, we don't automatically get "lib" prepended, but we need it. +LIBRARY_NAME = libEGL +MODULE_NAME = libegl +FORCE_SHARED_LIB=1 + +# ANGLE uses the STL, so we can't use our derpy STL wrappers. +STL_FLAGS= + +# ANGLE uses exceptions internally, so we need to have exception handling +# support +ENABLE_CXX_EXCEPTIONS=1 + +# Since we're building off in our own world, we don't want to have +# mozilla-config.h and -DMOZILLA_CLIENT automatically included and defined, so +# we just overwrite OS_COMPILE_C(XX)FLAGS. +OS_COMPILE_CFLAGS = $(OS_CPPFLAGS) +OS_COMPILE_CXXFLAGS = $(OS_CPPFLAGS) + +LOCAL_INCLUDES = \ + -I$(srcdir)/../../include \ + -I$(srcdir)/.. \ + -I"$(MOZ_DIRECTX_SDK_PATH)/include" \ + +VPATH += $(srcdir)/.. \ + $(srcdir)/../compiler \ + $(srcdir)/../compiler/preprocessor \ + $(srcdir)/../compiler/preprocessor/new \ + $(srcdir)/../common \ + $(NULL) + +# Translator/compiler first + +DEFINES += -DANGLE_BUILD -DNOMINMAX -DLIBEGL_EXPORTS -D_CRT_SECURE_NO_DEPRECATE + +#these defines are from ANGLE's build_angle.gyp +DEFINES += -DANGLE_DISABLE_TRACE +DEFINES += -DANGLE_COMPILE_OPTIMIZATION_LEVEL=D3DCOMPILE_OPTIMIZATION_LEVEL0 + +ifndef MOZ_DEBUG +DEFINES += -D_SECURE_SCL=0 +endif + +CPPSRCS = \ + debug.cpp \ + RefCountObject.cpp \ + Config.cpp \ + Display.cpp \ + libEGL.cpp \ + main.cpp \ + Surface.cpp \ + $(NULL) + +DEFFILE = $(srcdir)/libEGL.def +RCFILE = $(srcdir)/libEGL.rc + +include $(topsrcdir)/config/rules.mk + +EXTRA_DSO_LDOPTS = "$(MOZ_DIRECTX_SDK_PATH)/lib/$(MOZ_DIRECTX_SDK_CPU_SUFFIX)/d3d9.lib" \ + "$(MOZ_DIRECTX_SDK_PATH)/lib/$(MOZ_DIRECTX_SDK_CPU_SUFFIX)/dxguid.lib" \ + "$(DIST)/lib/libGLESv2.lib" \ + dwmapi.lib \ + delayimp.lib \ + /delayload:dwmapi.dll diff --git a/gfx/angle/src/libGLESv2/Makefile.in b/gfx/angle/src/libGLESv2/Makefile.in new file mode 100644 index 000000000000..285b63c04264 --- /dev/null +++ b/gfx/angle/src/libGLESv2/Makefile.in @@ -0,0 +1,169 @@ +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +DEPTH = ../../../.. +topsrcdir = @top_srcdir@ +srcdir = @srcdir@ +VPATH = @srcdir@ + +include $(DEPTH)/config/autoconf.mk + +MODULE = libglesv2 +# On Windows, we don't automatically get "lib" prepended, but we need it. +LIBRARY_NAME = libGLESv2 +MODULE_NAME = libglesv2 +FORCE_SHARED_LIB=1 + +# ANGLE uses the STL, so we can't use our derpy STL wrappers. +STL_FLAGS= + +# ANGLE uses exceptions internally, so we need to have exception handling +# support +ENABLE_CXX_EXCEPTIONS=1 + +# Since we're building off in our own world, we don't want to have +# mozilla-config.h and -DMOZILLA_CLIENT automatically included and defined, so +# we just overwrite OS_COMPILE_C(XX)FLAGS. +OS_COMPILE_CFLAGS = $(OS_CPPFLAGS) +OS_COMPILE_CXXFLAGS = $(OS_CPPFLAGS) + +LOCAL_INCLUDES = \ + -I$(srcdir)/../../include \ + -I$(srcdir)/.. \ + -I"$(MOZ_DIRECTX_SDK_PATH)/include" \ + + +VPATH += $(srcdir)/.. +VPATH += $(srcdir)/../compiler +VPATH += $(srcdir)/../compiler/preprocessor +VPATH += $(srcdir)/../compiler/preprocessor/new +VPATH += $(srcdir)/../compiler/timing +VPATH += $(srcdir)/../compiler/depgraph +VPATH += $(srcdir)/../common + +# Translator/compiler first + +CPPSRCS = \ + Diagnostics.cpp \ + PreprocessorDiagnostics.cpp \ + DirectiveHandler.cpp \ + PreprocessorDirectiveHandler.cpp \ + DirectiveParser.cpp \ + ExpressionParser.cpp \ + Macro.cpp \ + MacroExpander.cpp \ + Tokenizer.cpp \ + InitializeParseContext.cpp \ + DependencyGraph.cpp \ + DependencyGraphBuilder.cpp \ + DependencyGraphOutput.cpp \ + DependencyGraphTraverse.cpp \ + RestrictFragmentShaderTiming.cpp \ + RestrictVertexShaderTiming.cpp \ + Compiler.cpp \ + DetectRecursion.cpp \ + InfoSink.cpp \ + Initialize.cpp \ + InitializeDll.cpp \ + Intermediate.cpp \ + intermOut.cpp \ + IntermTraverse.cpp \ + parseConst.cpp \ + ParseHelper.cpp \ + PoolAlloc.cpp \ + QualifierAlive.cpp \ + RemoveTree.cpp \ + ShaderLang.cpp \ + SymbolTable.cpp \ + VariableInfo.cpp \ + compilerdebug.cpp \ + util.cpp \ + ValidateLimitations.cpp \ + ForLoopUnroll.cpp \ + MapLongVariableNames.cpp \ + spooky.cpp \ + BuiltInFunctionEmulator.cpp \ + Input.cpp \ + Lexer.cpp \ + Preprocessor.cpp \ + Token.cpp \ + $(NULL) + +# flex/yacc generated files +CPPSRCS += \ + glslang_lex.cpp \ + glslang_tab.cpp \ + $(NULL) + +# HLSL translator backend +CPPSRCS += \ + CodeGenHLSL.cpp \ + OutputHLSL.cpp \ + TranslatorHLSL.cpp \ + SearchSymbol.cpp \ + OutputESSL.cpp \ + OutputGLSLBase.cpp \ + TranslatorESSL.cpp \ + DetectDiscontinuity.cpp \ + UnfoldShortCircuit.cpp \ + $(NULL) + +ifeq ($(MOZ_WIDGET_TOOLKIT),windows) +CPPSRCS += ossource_win.cpp $(NULL) +else +CPPSRCS += ossource_posix.cpp $(NULL) +endif + +CSRCS = \ + atom.c \ + cpp.c \ + cppstruct.c \ + memory.c \ + scanner.c \ + symbols.c \ + tokens.c \ + $(NULL) + +DEFINES += -DANGLE_BUILD -DNOMINMAX -DLIBGLESV2_EXPORTS -D_CRT_SECURE_NO_DEPRECATE + +#these defines are from ANGLE's build_angle.gyp +DEFINES += -DANGLE_DISABLE_TRACE +DEFINES += -DANGLE_COMPILE_OPTIMIZATION_LEVEL=D3DCOMPILE_OPTIMIZATION_LEVEL0 + +ifndef MOZ_DEBUG +DEFINES += -D_SECURE_SCL=0 +endif + +CPPSRCS += \ + debug.cpp \ + Blit.cpp \ + Buffer.cpp \ + Context.cpp \ + Fence.cpp \ + Framebuffer.cpp \ + libGLESv2.cpp \ + main.cpp \ + Program.cpp \ + ProgramBinary.cpp \ + RefCountObject.cpp \ + Query.cpp \ + Renderbuffer.cpp \ + ResourceManager.cpp \ + Shader.cpp \ + Texture.cpp \ + utilities.cpp \ + HandleAllocator.cpp \ + IndexDataManager.cpp \ + VertexDataManager.cpp \ + $(NULL) + +DEFFILE = $(srcdir)/libGLESv2.def +RCFILE = $(srcdir)/libGLESv2.rc + +include $(topsrcdir)/config/rules.mk + +EXTRA_DSO_LDOPTS = "$(MOZ_DIRECTX_SDK_PATH)/lib/$(MOZ_DIRECTX_SDK_CPU_SUFFIX)/d3d9.lib" \ + "$(MOZ_DIRECTX_SDK_PATH)/lib/$(MOZ_DIRECTX_SDK_CPU_SUFFIX)/d3dx9.lib" \ + "$(MOZ_DIRECTX_SDK_PATH)/lib/$(MOZ_DIRECTX_SDK_CPU_SUFFIX)/D3DCompiler.lib"