CMake build: Only export explicit symbols on macOS

Both windows and linux do this already using .def files and linker scripts, respectfully.
Mac's linker has the exported_symbols_list flag that acts similarly.

This is required as the SPIRV-Tools in dEQP now collides with the version in SwiftShader, leading to horribly cryptic crashes deep in SPIRV structures.

Change-Id: I3641744ae2439bf05468b6f10cf3da0307614534
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/32568
Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
Tested-by: Ben Clayton <bclayton@google.com>
Reviewed-by: Nicolas Capens <nicolascapens@google.com>
Reviewed-by: Chris Forbes <chrisforbes@google.com>
diff --git a/src/OpenGL/libGLES_CM/libGLES_CM.exports b/src/OpenGL/libGLES_CM/libGLES_CM.exports
new file mode 100644
index 0000000..b6068b6
--- /dev/null
+++ b/src/OpenGL/libGLES_CM/libGLES_CM.exports
@@ -0,0 +1,212 @@
+_eglBindAPI
+_eglBindTexImage
+_eglChooseConfig
+_eglCopyBuffers
+_eglCreateContext
+_eglCreatePbufferSurface
+_eglCreatePixmapSurface
+_eglCreateWindowSurface
+_eglDestroyContext
+_eglDestroySurface
+_eglGetConfigAttrib
+_eglGetConfigs
+_eglGetCurrentContext
+_eglGetCurrentDisplay
+_eglGetCurrentSurface
+_eglGetDisplay
+_eglGetError
+_eglGetProcAddress
+_eglInitialize
+_eglMakeCurrent
+_eglQueryContext
+_eglQueryString
+_eglQuerySurface
+_eglReleaseTexImage
+_eglSurfaceAttrib
+_eglSwapBuffers
+_eglSwapInterval
+_eglTerminate
+_eglWaitGL
+_eglWaitNative
+_glActiveTexture
+_glAlphaFunc
+_glAlphaFuncx
+_glBindBuffer
+_glBindTexture
+_glBlendFunc
+_glBufferData
+_glBufferSubData
+_glClear
+_glClearColor
+_glClearColorx
+_glClearDepthf
+_glClearDepthx
+_glClearStencil
+_glClientActiveTexture
+_glClipPlanef
+_glClipPlanex
+_glColor4f
+_glColor4ub
+_glColor4x
+_glColorMask
+_glColorPointer
+_glCompressedTexImage2D
+_glCompressedTexSubImage2D
+_glCopyTexImage2D
+_glCopyTexSubImage2D
+_glCullFace
+_glDeleteBuffers
+_glDeleteTextures
+_glDepthFunc
+_glDepthMask
+_glDepthRangef
+_glDepthRangex
+_glDisable
+_glDisableClientState
+_glDrawArrays
+_glDrawElements
+_glEnable
+_glEnableClientState
+_glFinish
+_glFlush
+_glFogf
+_glFogfv
+_glFogx
+_glFogxv
+_glFrontFace
+_glFrustumf
+_glFrustumx
+_glGenBuffers
+_glGenTextures
+_glGetBooleanv
+_glGetBufferParameteriv
+_glGetClipPlanef
+_glGetClipPlanex
+_glGetError
+_glGetFixedv
+_glGetFloatv
+_glGetIntegerv
+_glGetLightfv
+_glGetLightxv
+_glGetMaterialfv
+_glGetMaterialxv
+_glGetPointerv
+_glGetString
+_glGetTexEnvfv
+_glGetTexEnviv
+_glGetTexEnvxv
+_glGetTexParameterfv
+_glGetTexParameteriv
+_glGetTexParameterxv
+_glHint
+_glIsBuffer
+_glIsEnabled
+_glIsTexture
+_glLightModelf
+_glLightModelfv
+_glLightModelx
+_glLightModelxv
+_glLightf
+_glLightfv
+_glLightx
+_glLightxv
+_glLineWidth
+_glLineWidthx
+_glLoadIdentity
+_glLoadMatrixf
+_glLoadMatrixx
+_glLogicOp
+_glMaterialf
+_glMaterialfv
+_glMaterialx
+_glMaterialxv
+_glMatrixMode
+_glMultMatrixf
+_glMultMatrixx
+_glMultiTexCoord4f
+_glMultiTexCoord4x
+_glNormal3f
+_glNormal3x
+_glNormalPointer
+_glOrthof
+_glOrthox
+_glPixelStorei
+_glPointParameterf
+_glPointParameterfv
+_glPointParameterx
+_glPointParameterxv
+_glPointSize
+_glPointSizex
+_glPolygonOffset
+_glPolygonOffsetx
+_glPopMatrix
+_glPushMatrix
+_glReadPixels
+_glRotatef
+_glRotatex
+_glSampleCoverage
+_glSampleCoveragex
+_glScalef
+_glScalex
+_glScissor
+_glShadeModel
+_glStencilFunc
+_glStencilMask
+_glStencilOp
+_glTexCoordPointer
+_glTexEnvf
+_glTexEnvfv
+_glTexEnvi
+_glTexEnviv
+_glTexEnvx
+_glTexEnvxv
+_glTexImage2D
+_glTexParameterf
+_glTexParameterfv
+_glTexParameteri
+_glTexParameteriv
+_glTexParameterx
+_glTexParameterxv
+_glTexSubImage2D
+_glTranslatef
+_glTranslatex
+_glVertexPointer
+_glViewport
+
+# Extensions
+_glPointSizePointerOES
+_glEGLImageTargetTexture2DOES
+_glEGLImageTargetRenderbufferStorageOES
+_glIsRenderbufferOES
+_glBindRenderbufferOES
+_glDeleteRenderbuffersOES
+_glGenRenderbuffersOES
+_glRenderbufferStorageOES
+_glGetRenderbufferParameterivOES
+_glIsFramebufferOES
+_glBindFramebufferOES
+_glDeleteFramebuffersOES
+_glGenFramebuffersOES
+_glCheckFramebufferStatusOES
+_glFramebufferRenderbufferOES
+_glFramebufferTexture2DOES
+_glGetFramebufferAttachmentParameterivOES
+_glGenerateMipmapOES
+_glBlendEquationOES
+_glBlendEquationSeparateOES
+_glBlendFuncSeparateOES
+_glDrawTexsOES
+_glDrawTexiOES
+_glDrawTexxOES
+_glDrawTexsvOES
+_glDrawTexivOES
+_glDrawTexxvOES
+_glDrawTexfOES
+_glDrawTexfvOES
+_eglCreateSyncKHR
+_eglDestroySyncKHR
+_eglClientWaitSyncKHR
+_eglGetSyncAttribKHR
+
+_libGLES_CM_swiftshader
+