egl: Fix non-dri SCons builds re #87657
[mesa.git] / src / egl / main / SConscript
index 1e4d4f39de119a991c7537548249e130c04ee7a7..5d0073e14e04d818c2a4c6a259339dbd5e08576c 100644 (file)
@@ -4,49 +4,52 @@
 
 Import('*')
 
-if env['platform'] != 'winddk':
-
-       env = env.Clone()
-
-       env.Append(CPPDEFINES = [
-               '_EGL_NATIVE_PLATFORM=_EGL_PLATFORM_WINDOWS',
-               '_EGL_DRIVER_SEARCH_DIR=\\"\\"',
-               '_EGL_OS_WINDOWS',
-               '_EGL_GET_CORE_ADDRESSES',
-               'KHRONOS_DLL_EXPORTS',
-       ])
-
-       env.Append(CPPPATH = [
-               '#/include',
-       ])
-
-       egl_sources = [
-               'eglapi.c',
-               'eglarray.c',
-               'eglconfig.c',
-               'eglconfigutil.c',
-               'eglcontext.c',
-               'eglcurrent.c',
-               'egldisplay.c',
-               'egldriver.c',
-               'eglglobals.c',
-               'eglimage.c',
-               'egllog.c',
-               'eglmisc.c',
-               'eglmode.c',
-               'eglscreen.c',
-               'eglstring.c',
-               'eglsurface.c',
-               'eglsync.c',
-       ]
-
-       egl = env.SharedLibrary(
-               target = 'libEGL',
-               source = egl_sources,
-       )
-
-       env.InstallSharedLibrary(egl, version=(1, 4, 0))
-
-       egl = [env.FindIxes(egl, 'LIBPREFIX', 'LIBSUFFIX')]
-
-       Export('egl')
+env = env.Clone()
+
+env.Append(CPPDEFINES = [
+    '_EGL_BUILT_IN_DRIVER_GALLIUM',
+    '_EGL_DRIVER_SEARCH_DIR=\\"\\"',
+])
+
+if env['platform'] == 'windows':
+    env.Append(CPPDEFINES = [
+        '_EGL_NATIVE_PLATFORM=_EGL_PLATFORM_WINDOWS',
+        '_EGL_OS_WINDOWS',
+        '_EGL_GET_CORE_ADDRESSES',
+        'KHRONOS_DLL_EXPORTS',
+    ])
+elif env['platform'] == 'haiku':
+    env.Append(CPPDEFINES = [
+        '_EGL_NATIVE_PLATFORM=_EGL_PLATFORM_HAIKU',
+        '_EGL_OS_UNIX',
+        '_EGL_BUILT_IN_DRIVER_HAIKU',
+    ])
+    env.Prepend(LIBS = [
+        egl_haiku,
+        libloader,
+    ])
+else:
+    env.Append(CPPDEFINES = [
+        '_EGL_NATIVE_PLATFORM=_EGL_PLATFORM_X11',
+        '_EGL_OS_UNIX',
+    ])
+    if env['dri']:
+        env.Prepend(LIBS = [
+            egl_dri2,
+            libloader,
+        ])
+
+env.Append(CPPPATH = [
+    '#/include',
+])
+
+
+# parse Makefile.sources
+egl_sources = env.ParseSourceList('Makefile.sources', 'LIBEGL_C_FILES')
+
+egl = env.ConvenienceLibrary(
+    target = 'egl',
+    source = egl_sources,
+)
+
+Export('egl')