Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save shinchiro/0bff60464a2e69f6110631a711375023 to your computer and use it in GitHub Desktop.
Save shinchiro/0bff60464a2e69f6110631a711375023 to your computer and use it in GitHub Desktop.
From e609a32347ad40cab781c24c039e3704d141e3e7 Mon Sep 17 00:00:00 2001
From: shinchiro <shinchiro@users.noreply.github.com>
Date: Fri, 16 Sep 2016 07:43:36 +0800
Subject: [PATCH] Add makefile and pkgconfig file
Custom Makefile originally made by rossy & RiCON
---
Makefile | 444 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
libEGL.pc.in | 10 ++
2 files changed, 454 insertions(+)
create mode 100644 Makefile
create mode 100644 libEGL.pc.in
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..52b9293
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,444 @@
+VERSION = 0.0.0
+CXX ?= g++
+AR ?= ar
+RANLIB ?= ranlib
+INSTALL ?= install
+
+SHELL ?= /bin/bash
+PREFIX ?= /usr/local
+BINDIR ?= $(PREFIX)/bin
+LIBDIR ?= $(PREFIX)/lib
+INCLUDEDIR ?= $(PREFIX)/include
+
+DEFS := -DUNICODE -D_UNICODE -DANGLE_ENABLE_D3D9 -DANGLE_ENABLE_D3D11 -DANGLE_ENABLE_OPENGL -DANGLE_ENABLE_VULKAN \
+ -DANGLE_TRANSLATOR_STATIC -DANGLE_ENABLE_HLSL -DANGLE_ENABLE_ESSL -DANGLE_ENABLE_GLSL \
+ -DGL_GLEXT_PROTOTYPES -DEGL_EGLEXT_PROTOTYPES -DLIBANGLE_IMPLEMENTATION -DGL_APICALL= \
+ -DEGLAPI= $(DEFS)
+LIBEGL_DEFS = -DLIBEGL_IMPLEMENTATION
+LIBGLESv2_DEFS = -DLIBGLESV2_IMPLEMENTATION
+CPPFLAGS := -Isrc -Iinclude -Isrc/third_party/khronos -Isrc/common/third_party/numerics $(CPPFLAGS)
+CXXFLAGS := -std=c++11 -fpermissive -msse2 -O2 -Wno-deprecated-declarations \
+ -Wno-conversion-null $(CXXFLAGS)
+DEPFLAGS = -MMD -MP
+LIBGLESv2_LIBS = -ldxguid -ld3d9
+LIBEGL_LIBS =
+LIBGLESv2_LDFLAGS = -Wl,--out-implib,libGLESv2.dll.a
+LIBEGL_LDFLAGS = -Wl,--out-implib,libEGL.dll.a
+
+angle_translator_lib_sources = \
+ src/compiler/translator/AddAndTrueToLoopCondition.o \
+ src/compiler/translator/BuiltInFunctionEmulator.o \
+ src/compiler/translator/BreakVariableAliasingInInnerLoops.o \
+ src/compiler/translator/Cache.o \
+ src/compiler/translator/CallDAG.o \
+ src/compiler/translator/CodeGen.o \
+ src/compiler/translator/Compiler.o \
+ src/compiler/translator/ConstantUnion.o \
+ src/compiler/translator/DeferGlobalInitializers.o \
+ src/compiler/translator/Diagnostics.o \
+ src/compiler/translator/DirectiveHandler.o \
+ src/compiler/translator/EmulateGLFragColorBroadcast.o \
+ src/compiler/translator/EmulatePrecision.o \
+ src/compiler/translator/ExpandIntegerPowExpressions.o \
+ src/compiler/translator/FlagStd140Structs.o \
+ src/compiler/translator/ForLoopUnroll.o \
+ src/compiler/translator/InfoSink.o \
+ src/compiler/translator/Initialize.o \
+ src/compiler/translator/InitializeDll.o \
+ src/compiler/translator/InitializeParseContext.o \
+ src/compiler/translator/InitializeVariables.o \
+ src/compiler/translator/IntermNode.o \
+ src/compiler/translator/IntermTraverse.o \
+ src/compiler/translator/Intermediate.o \
+ src/compiler/translator/LoopInfo.o \
+ src/compiler/translator/Operator.o \
+ src/compiler/translator/ParseContext.o \
+ src/compiler/translator/PoolAlloc.o \
+ src/compiler/translator/PruneEmptyDeclarations.o \
+ src/compiler/translator/QualifierTypes.o \
+ src/compiler/translator/RecordConstantPrecision.o \
+ src/compiler/translator/RegenerateStructNames.o \
+ src/compiler/translator/RemovePow.o \
+ src/compiler/translator/RewriteDoWhile.o \
+ src/compiler/translator/RewriteTexelFetchOffset.o \
+ src/compiler/translator/ScalarizeVecAndMatConstructorArgs.o \
+ src/compiler/translator/SearchSymbol.o \
+ src/compiler/translator/SymbolTable.o \
+ src/compiler/translator/Types.o \
+ src/compiler/translator/UnfoldShortCircuitAST.o \
+ src/compiler/translator/ValidateGlobalInitializer.o \
+ src/compiler/translator/ValidateLimitations.o \
+ src/compiler/translator/ValidateMaxParameters.o \
+ src/compiler/translator/ValidateOutputs.o \
+ src/compiler/translator/ValidateSwitch.o \
+ src/compiler/translator/VariableInfo.o \
+ src/compiler/translator/VariablePacker.o \
+ src/compiler/translator/blocklayout.o \
+ src/compiler/translator/glslang_lex.o \
+ src/compiler/translator/glslang_tab.o \
+ src/compiler/translator/intermOut.o \
+ src/compiler/translator/util.o \
+ src/third_party/compiler/ArrayBoundsClamper.o
+angle_translator_lib_essl_sources = \
+ src/compiler/translator/OutputESSL.o \
+ src/compiler/translator/TranslatorESSL.o
+angle_translator_lib_glsl_sources = \
+ src/compiler/translator/BuiltInFunctionEmulatorGLSL.o \
+ src/compiler/translator/ExtensionGLSL.o \
+ src/compiler/translator/OutputGLSL.o \
+ src/compiler/translator/OutputGLSLBase.o \
+ src/compiler/translator/TranslatorGLSL.o \
+ src/compiler/translator/VersionGLSL.o
+angle_translator_lib_hlsl_sources = \
+ src/compiler/translator/AddDefaultReturnStatements.o \
+ src/compiler/translator/ArrayReturnValueToOutParameter.o \
+ src/compiler/translator/ASTMetadataHLSL.o \
+ src/compiler/translator/blocklayoutHLSL.o \
+ src/compiler/translator/BuiltInFunctionEmulatorHLSL.o \
+ src/compiler/translator/IntermNodePatternMatcher.o \
+ src/compiler/translator/OutputHLSL.o \
+ src/compiler/translator/RemoveDynamicIndexing.o \
+ src/compiler/translator/RemoveSwitchFallThrough.o \
+ src/compiler/translator/RewriteElseBlocks.o \
+ src/compiler/translator/SeparateArrayInitialization.o \
+ src/compiler/translator/SeparateDeclarations.o \
+ src/compiler/translator/SeparateExpressionsReturningArrays.o \
+ src/compiler/translator/SimplifyLoopConditions.o \
+ src/compiler/translator/SplitSequenceOperator.o \
+ src/compiler/translator/StructureHLSL.o \
+ src/compiler/translator/TextureFunctionHLSL.o \
+ src/compiler/translator/TranslatorHLSL.o \
+ src/compiler/translator/UnfoldShortCircuitToIf.o \
+ src/compiler/translator/UniformHLSL.o \
+ src/compiler/translator/UtilsHLSL.o
+angle_preprocessor_sources = \
+ src/compiler/preprocessor/DiagnosticsBase.o \
+ src/compiler/preprocessor/DirectiveHandlerBase.o \
+ src/compiler/preprocessor/DirectiveParser.o \
+ src/compiler/preprocessor/ExpressionParser.o \
+ src/compiler/preprocessor/Input.o \
+ src/compiler/preprocessor/Lexer.o \
+ src/compiler/preprocessor/Macro.o \
+ src/compiler/preprocessor/MacroExpander.o \
+ src/compiler/preprocessor/Preprocessor.o \
+ src/compiler/preprocessor/Token.o \
+ src/compiler/preprocessor/Tokenizer.o
+libangle_common_sources = \
+ src/common/Float16ToFloat32.o \
+ src/common/MemoryBuffer.o \
+ src/common/angleutils.o \
+ src/common/debug.o \
+ src/common/mathutil.o \
+ src/common/string_utils.o \
+ src/common/tls.o \
+ src/common/utilities.o
+libangle_image_util_sources = \
+ src/image_util/copyimage.o \
+ src/image_util/imageformats.o \
+ src/image_util/loadimage.o \
+ src/image_util/loadimage_etc.o
+libangle_sources = \
+ src/common/event_tracer.o \
+ src/libANGLE/AttributeMap.o \
+ src/libANGLE/Buffer.o \
+ src/libANGLE/Caps.o \
+ src/libANGLE/Compiler.o \
+ src/libANGLE/Config.o \
+ src/libANGLE/Context.o \
+ src/libANGLE/ContextState.o \
+ src/libANGLE/Debug.o \
+ src/libANGLE/Device.o \
+ src/libANGLE/Display.o \
+ src/libANGLE/Error.o \
+ src/libANGLE/Fence.o \
+ src/libANGLE/Framebuffer.o \
+ src/libANGLE/FramebufferAttachment.o \
+ src/libANGLE/HandleAllocator.o \
+ src/libANGLE/HandleRangeAllocator.o \
+ src/libANGLE/Image.o \
+ src/libANGLE/ImageIndex.o \
+ src/libANGLE/IndexRangeCache.o \
+ src/libANGLE/Path.o \
+ src/libANGLE/Platform.o \
+ src/libANGLE/Program.o \
+ src/libANGLE/Query.o \
+ src/libANGLE/Renderbuffer.o \
+ src/libANGLE/ResourceManager.o \
+ src/libANGLE/Sampler.o \
+ src/libANGLE/Shader.o \
+ src/libANGLE/State.o \
+ src/libANGLE/Stream.o \
+ src/libANGLE/Surface.o \
+ src/libANGLE/Texture.o \
+ src/libANGLE/TransformFeedback.o \
+ src/libANGLE/Uniform.o \
+ src/libANGLE/VertexArray.o \
+ src/libANGLE/VertexAttribute.o \
+ src/libANGLE/angletypes.o \
+ src/libANGLE/formatutils.o \
+ src/libANGLE/queryconversions.o \
+ src/libANGLE/renderer/ContextImpl.o \
+ src/libANGLE/renderer/DeviceImpl.o \
+ src/libANGLE/renderer/DisplayImpl.o \
+ src/libANGLE/renderer/Format_autogen.o \
+ src/libANGLE/renderer/Format.o \
+ src/libANGLE/renderer/SurfaceImpl.o \
+ src/libANGLE/renderer/TextureImpl.o \
+ src/libANGLE/renderer/load_functions_table_autogen.o \
+ src/libANGLE/renderer/renderer_utils.o \
+ src/libANGLE/signal_utils.o \
+ src/libANGLE/validationEGL.o \
+ src/libANGLE/validationES.o \
+ src/libANGLE/validationES2.o \
+ src/libANGLE/validationES3.o \
+ src/libANGLE/validationES31.o \
+ src/third_party/murmurhash/MurmurHash3.o
+libangle_d3d_shared_sources = \
+ src/libANGLE/renderer/d3d/BufferD3D.o \
+ src/libANGLE/renderer/d3d/CompilerD3D.o \
+ src/libANGLE/renderer/d3d/DeviceD3D.o \
+ src/libANGLE/renderer/d3d/DisplayD3D.o \
+ src/libANGLE/renderer/d3d/DynamicHLSL.o \
+ src/libANGLE/renderer/d3d/EGLImageD3D.o \
+ src/libANGLE/renderer/d3d/FramebufferD3D.o \
+ src/libANGLE/renderer/d3d/HLSLCompiler.o \
+ src/libANGLE/renderer/d3d/ImageD3D.o \
+ src/libANGLE/renderer/d3d/IndexBuffer.o \
+ src/libANGLE/renderer/d3d/IndexDataManager.o \
+ src/libANGLE/renderer/d3d/NativeWindowD3D.o \
+ src/libANGLE/renderer/d3d/ProgramD3D.o \
+ src/libANGLE/renderer/d3d/RenderbufferD3D.o \
+ src/libANGLE/renderer/d3d/RendererD3D.o \
+ src/libANGLE/renderer/d3d/RenderTargetD3D.o \
+ src/libANGLE/renderer/d3d/ShaderD3D.o \
+ src/libANGLE/renderer/d3d/ShaderExecutableD3D.o \
+ src/libANGLE/renderer/d3d/SurfaceD3D.o \
+ src/libANGLE/renderer/d3d/TextureD3D.o \
+ src/libANGLE/renderer/d3d/VaryingPacking.o \
+ src/libANGLE/renderer/d3d/VertexBuffer.o \
+ src/libANGLE/renderer/d3d/VertexDataManager.o
+libangle_d3d9_sources = \
+ src/libANGLE/renderer/d3d/d3d9/Blit9.o \
+ src/libANGLE/renderer/d3d/d3d9/Buffer9.o \
+ src/libANGLE/renderer/d3d/d3d9/Context9.o \
+ src/libANGLE/renderer/d3d/d3d9/DebugAnnotator9.o \
+ src/libANGLE/renderer/d3d/d3d9/Fence9.o \
+ src/libANGLE/renderer/d3d/d3d9/formatutils9.o \
+ src/libANGLE/renderer/d3d/d3d9/Framebuffer9.o \
+ src/libANGLE/renderer/d3d/d3d9/Image9.o \
+ src/libANGLE/renderer/d3d/d3d9/IndexBuffer9.o \
+ src/libANGLE/renderer/d3d/d3d9/NativeWindow9.o \
+ src/libANGLE/renderer/d3d/d3d9/Query9.o \
+ src/libANGLE/renderer/d3d/d3d9/Renderer9.o \
+ src/libANGLE/renderer/d3d/d3d9/renderer9_utils.o \
+ src/libANGLE/renderer/d3d/d3d9/RenderTarget9.o \
+ src/libANGLE/renderer/d3d/d3d9/ShaderExecutable9.o \
+ src/libANGLE/renderer/d3d/d3d9/StateManager9.o \
+ src/libANGLE/renderer/d3d/d3d9/SwapChain9.o \
+ src/libANGLE/renderer/d3d/d3d9/TextureStorage9.o \
+ src/libANGLE/renderer/d3d/d3d9/VertexBuffer9.o \
+ src/libANGLE/renderer/d3d/d3d9/VertexDeclarationCache.o
+libangle_d3d11_sources = \
+ src/libANGLE/renderer/d3d/d3d11/Blit11.o \
+ src/libANGLE/renderer/d3d/d3d11/Buffer11.o \
+ src/libANGLE/renderer/d3d/d3d11/Clear11.o \
+ src/libANGLE/renderer/d3d/d3d11/Context11.o \
+ src/libANGLE/renderer/d3d/d3d11/DebugAnnotator11.o \
+ src/libANGLE/renderer/d3d/d3d11/dxgi_support_table.o \
+ src/libANGLE/renderer/d3d/d3d11/Fence11.o \
+ src/libANGLE/renderer/d3d/d3d11/formatutils11.o \
+ src/libANGLE/renderer/d3d/d3d11/Framebuffer11.o \
+ src/libANGLE/renderer/d3d/d3d11/Image11.o \
+ src/libANGLE/renderer/d3d/d3d11/IndexBuffer11.o \
+ src/libANGLE/renderer/d3d/d3d11/InputLayoutCache.o \
+ src/libANGLE/renderer/d3d/d3d11/PixelTransfer11.o \
+ src/libANGLE/renderer/d3d/d3d11/Query11.o \
+ src/libANGLE/renderer/d3d/d3d11/Renderer11.o \
+ src/libANGLE/renderer/d3d/d3d11/renderer11_utils.o \
+ src/libANGLE/renderer/d3d/d3d11/RenderStateCache.o \
+ src/libANGLE/renderer/d3d/d3d11/RenderTarget11.o \
+ src/libANGLE/renderer/d3d/d3d11/ShaderExecutable11.o \
+ src/libANGLE/renderer/d3d/d3d11/StateManager11.o \
+ src/libANGLE/renderer/d3d/d3d11/StreamProducerNV12.o \
+ src/libANGLE/renderer/d3d/d3d11/SwapChain11.o \
+ src/libANGLE/renderer/d3d/d3d11/TextureStorage11.o \
+ src/libANGLE/renderer/d3d/d3d11/TransformFeedback11.o \
+ src/libANGLE/renderer/d3d/d3d11/Trim11.o \
+ src/libANGLE/renderer/d3d/d3d11/texture_format_table_autogen.o \
+ src/libANGLE/renderer/d3d/d3d11/texture_format_table.o \
+ src/libANGLE/renderer/d3d/d3d11/VertexArray11.o \
+ src/libANGLE/renderer/d3d/d3d11/VertexBuffer11.o
+libangle_d3d11_win32_sources = \
+ src/libANGLE/renderer/d3d/d3d11/win32/NativeWindow11Win32.o \
+ src/third_party/systeminfo/SystemInfo.o
+libglesv2_sources = \
+ src/libGLESv2/entry_points_egl.o \
+ src/libGLESv2/entry_points_egl_ext.o \
+ src/libGLESv2/entry_points_gles_2_0.o \
+ src/libGLESv2/entry_points_gles_2_0_ext.o \
+ src/libGLESv2/entry_points_gles_3_0.o \
+ src/libGLESv2/entry_points_gles_3_1.o \
+ src/libGLESv2/global_state.o \
+ src/libGLESv2/libGLESv2.o
+libangle_gl_sources = \
+ src/libANGLE/renderer/gl/BlitGL.o \
+ src/libANGLE/renderer/gl/BufferGL.o \
+ src/libANGLE/renderer/gl/CompilerGL.o \
+ src/libANGLE/renderer/gl/ContextGL.o \
+ src/libANGLE/renderer/gl/DisplayGL.o \
+ src/libANGLE/renderer/gl/FenceNVGL.o \
+ src/libANGLE/renderer/gl/FenceSyncGL.o \
+ src/libANGLE/renderer/gl/FramebufferGL.o \
+ src/libANGLE/renderer/gl/FunctionsGL.o \
+ src/libANGLE/renderer/gl/PathGL.o \
+ src/libANGLE/renderer/gl/ProgramGL.o \
+ src/libANGLE/renderer/gl/QueryGL.o \
+ src/libANGLE/renderer/gl/RenderbufferGL.o \
+ src/libANGLE/renderer/gl/RendererGL.o \
+ src/libANGLE/renderer/gl/SamplerGL.o \
+ src/libANGLE/renderer/gl/ShaderGL.o \
+ src/libANGLE/renderer/gl/StateManagerGL.o \
+ src/libANGLE/renderer/gl/SurfaceGL.o \
+ src/libANGLE/renderer/gl/TextureGL.o \
+ src/libANGLE/renderer/gl/TransformFeedbackGL.o \
+ src/libANGLE/renderer/gl/VertexArrayGL.o \
+ src/libANGLE/renderer/gl/formatutilsgl.o \
+ src/libANGLE/renderer/gl/renderergl_utils.o
+libangle_gl_wgl_sources = \
+ src/libANGLE/renderer/gl/wgl/DisplayWGL.o \
+ src/libANGLE/renderer/gl/wgl/DXGISwapChainWindowSurfaceWGL.o \
+ src/libANGLE/renderer/gl/wgl/FunctionsWGL.o \
+ src/libANGLE/renderer/gl/wgl/PbufferSurfaceWGL.o \
+ src/libANGLE/renderer/gl/wgl/WindowSurfaceWGL.o \
+ src/libANGLE/renderer/gl/wgl/wgl_utils.o
+libangle_vulkan_sources = \
+ src/libANGLE/renderer/vulkan/BufferVk.o \
+ src/libANGLE/renderer/vulkan/CompilerVk.o \
+ src/libANGLE/renderer/vulkan/ContextVk.o \
+ src/libANGLE/renderer/vulkan/DeviceVk.o \
+ src/libANGLE/renderer/vulkan/DisplayVk.o \
+ src/libANGLE/renderer/vulkan/FenceNVVk.o \
+ src/libANGLE/renderer/vulkan/FenceSyncVk.o \
+ src/libANGLE/renderer/vulkan/FramebufferVk.o \
+ src/libANGLE/renderer/vulkan/ImageVk.o \
+ src/libANGLE/renderer/vulkan/ProgramVk.o \
+ src/libANGLE/renderer/vulkan/QueryVk.o \
+ src/libANGLE/renderer/vulkan/RenderbufferVk.o \
+ src/libANGLE/renderer/vulkan/RendererVk.o \
+ src/libANGLE/renderer/vulkan/SamplerVk.o \
+ src/libANGLE/renderer/vulkan/ShaderVk.o \
+ src/libANGLE/renderer/vulkan/SurfaceVk.o \
+ src/libANGLE/renderer/vulkan/TextureVk.o \
+ src/libANGLE/renderer/vulkan/TransformFeedbackVk.o \
+ src/libANGLE/renderer/vulkan/VertexArrayVk.o \
+
+LIBGLESv2_OBJ = \
+ src/compiler/translator/ShaderLang.o \
+ src/compiler/translator/ShaderVars.o \
+ $(angle_translator_lib_sources) \
+ $(angle_translator_lib_essl_sources) \
+ $(angle_translator_lib_glsl_sources) \
+ $(angle_translator_lib_hlsl_sources) \
+ $(angle_preprocessor_sources) \
+ $(libangle_common_sources) \
+ $(libangle_image_util_sources) \
+ $(libangle_sources) \
+ $(libangle_d3d_shared_sources) \
+ $(libangle_d3d9_sources) \
+ $(libangle_d3d11_sources) \
+ $(libangle_d3d11_win32_sources) \
+ $(libglesv2_sources) \
+ $(libangle_gl_sources) \
+ $(libangle_gl_wgl_sources) \
+ $(libangle_vulkan_sources)
+
+LIBGLESv2_DEP = $(LIBGLESv2_OBJ:.o=.d)
+LIBEGL_OBJ = src/libEGL/libEGL.egl.o
+LIBEGL_DEP = $(LIBEGL_OBJ:.o=.d)
+PCDEFS = -DGL_APICALL= -DEGLAPI=
+
+ifneq ($(SHARED),)
+ TARGET = libEGL.dll
+else
+ TARGET = libEGL.a libGLESv2.a
+ DEFS += -DLIBGLESV2_EXPORT_H_ -DANGLE_EXPORT=
+endif
+
+all: $(TARGET)
+.PHONY: all
+
+-include $(LIBGLESv2_DEP) $(LIBEGL_DEP)
+
+src/id:
+ mkdir -p $@
+
+src/id/commit.h: src/commit.h | src/id
+ printf '#define ANGLE_COMMIT_HASH "%s"\n' '$(shell git rev-parse --short=12 @{u})' >$@
+ printf '#define ANGLE_COMMIT_HASH_SIZE 12\n' >>$@
+ printf '#define ANGLE_COMMIT_DATE "%s"\n' '$(shell git show -s --format=%ci @{u})' >>$@
+
+%.o: %.cpp src/id/commit.h
+ $(CXX) -c -o $@ $(CPPFLAGS) $(DEFS) $(LIBGLESv2_DEFS) $(CXXFLAGS) $(DEPFLAGS) $<
+
+%.egl.o: %.cpp src/id/commit.h
+ $(CXX) -c -o $@ $(CPPFLAGS) $(DEFS) $(LIBEGL_DEFS) $(CXXFLAGS) $(DEPFLAGS) $<
+
+libGLESv2.dll: $(LIBGLESv2_OBJ)
+ $(CXX) -shared -o $@ $(LDFLAGS) $(LIBGLESv2_LDFLAGS) $(LIBGLESv2_OBJ) $(LIBS) $(LIBGLESv2_LIBS)
+
+libGLESv2.a: $(LIBGLESv2_OBJ)
+ $(AR) rcs $@ $(LIBGLESv2_OBJ)
+ $(RANLIB) $@
+
+libEGL.dll: libGLESv2.dll $(LIBEGL_OBJ)
+ $(CXX) -shared -o $@ $(LDFLAGS) $(LIBEGL_LDFLAGS) $(LIBEGL_OBJ) $(LIBS) $(LIBEGL_LIBS) libGLESv2.dll.a
+
+libEGL.a: $(LIBEGL_OBJ)
+ $(AR) rcs $@ $(LIBEGL_OBJ)
+ $(RANLIB) $@
+
+clean:
+ -rm -f $(LIBGLESv2_OBJ) $(LIBGLESv2_DEP) $(LIBEGL_OBJ) $(LIBEGL_DEP)
+ -rm -f libGLESv2.dll libEGL.dll libGLESv2.dll.a libEGL.dll.a libGLESv2.a libEGL.a libEGL.pc
+ -rm -f src/id/commit.h
+ -rmdir src/id
+.PHONY: clean
+
+.PHONY: libEGL.pc
+libEGL.pc: libEGL.pc.in
+ sed 's,%PREFIX%,$(PREFIX),;s,%LIBDIR%,$(LIBDIR),;s,%INCLUDEDIR%,$(INCLUDEDIR),;s,%VERSION%,$(VERSION),;s,%CFLAGS%,$(PCDEFS),' $< > $@
+
+install: $(TARGET) libEGL.pc
+ $(INSTALL) -d $(INCLUDEDIR)/{EGL,GLES{2,3},GLSLANG,KHR,platform}
+ $(INSTALL) -d $(BINDIR)
+ $(INSTALL) -d $(LIBDIR)
+ $(INSTALL) -d $(LIBDIR)/pkgconfig
+ $(INSTALL) -m 644 include/EGL/*.h $(INCLUDEDIR)/EGL
+ $(INSTALL) -m 644 include/GLES2/*.h $(INCLUDEDIR)/GLES2
+ $(INSTALL) -m 644 include/GLES3/*.h $(INCLUDEDIR)/GLES3
+ $(INSTALL) -m 644 include/GLSLANG/*.h $(INCLUDEDIR)/GLSLANG
+ $(INSTALL) -m 644 include/KHR/*.h $(INCLUDEDIR)/KHR
+ $(INSTALL) -m 644 include/platform/Platform.h $(INCLUDEDIR)/platform
+ $(INSTALL) -m 644 include/angle_gl.h $(INCLUDEDIR)
+ $(INSTALL) -m 644 libEGL.pc $(LIBDIR)/pkgconfig
+ifneq ($(SHARED),)
+ $(INSTALL) -m 644 libEGL.dll libGLESv2.dll $(BINDIR)
+ $(INSTALL) -m 644 libEGL.dll.a libGLESv2.dll.a $(LIBDIR)
+else
+ $(INSTALL) -m 644 libEGL.a libGLESv2.a $(LIBDIR)
+endif
+
+uninstall:
+ -rm -f $(BINDIR)/lib{EGL,GLESv2}.dll
+ -rm -f $(LIBDIR)/lib{EGL,GLESv2}.dll.a
+ -rm -f $(LIBDIR)/lib{EGL,GLESv2}.a
+ -rm -f $(LIBDIR)/pkgconfig/libEGL.pc
+ -rm -rf $(INCLUDEDIR)/{EGL,GLES{2,3},GLSLANG,KHR}
+ -rm -f $(INCLUDEDIR)/platform/Platform.h
+ -rm -f $(INCLUDEDIR)/angle_gl.h
+.PHONY: install-dev uninstall
+
+test: $(TARGET)
+ printf "#include <EGL/egl.h>\nint main(int argc, char **argv)\n{ eglCreateWindowSurface(0, 0, 0, 0); return 0; }\n" > test.c
+ $(CC) test.c -I/local64/include -o test.exe -DGL_APICALL= -DEGLAPI= -L. -lEGL -lGLESv2 -ld3d9 -lstdc++
+.PHONY: test
diff --git a/libEGL.pc.in b/libEGL.pc.in
new file mode 100644
index 0000000..dd4e52a
--- /dev/null
+++ b/libEGL.pc.in
@@ -0,0 +1,10 @@
+prefix=%PREFIX%
+libdir=%LIBDIR%
+includedir=%INCLUDEDIR%
+
+Name: libEGL
+Description: A conformant OpenGL ES 2 implementation for Windows.
+Version: %VERSION%
+Libs: -L${libdir} -lEGL
+Libs.private: -lGLESv2 -ldxguid -ld3d9 -lstdc++
+Cflags: %CFLAGS%
--
2.9.1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment