[vlc-commits] [Git][videolan/vlc][master] 4 commits: video_chroma: meson: define d3d9_common_lib

Steve Lhomme (@robUx4) gitlab at videolan.org
Mon Mar 24 12:50:50 UTC 2025



Steve Lhomme pushed to branch master at VideoLAN / VLC


Commits:
083e0868 by Alexandre Janniaux at 2025-03-24T12:02:25+00:00
video_chroma: meson: define d3d9_common_lib

The libraries are used on modules in other files, and gets undefined on
non-windows platforms.

- - - - -
1b94a8d6 by Alexandre Janniaux at 2025-03-24T12:02:25+00:00
opengl: meson: declare modules unconditionally

Register the modules into the buildsystem while keeping the dependencies
being initialized conditionally, so they can be referenced elsewhere.

- - - - -
24c187fb by Alexandre Janniaux at 2025-03-24T12:02:25+00:00
opengl: meson: add support for android

- - - - -
7287d15a by Alexandre Janniaux at 2025-03-24T12:02:25+00:00
opengl: meson: define USE_OPENGL_ES2 on gl_common_dep

- - - - -


2 changed files:

- modules/video_chroma/meson.build
- modules/video_output/opengl/meson.build


Changes:

=====================================
modules/video_chroma/meson.build
=====================================
@@ -110,6 +110,7 @@ vlc_modules += {
 }
 
 d3d11_common_lib = []
+d3d9_common_lib = []
 if host_system == 'windows'
     d3d11_common_lib = static_library('d3d11_common',
         files(


=====================================
modules/video_output/opengl/meson.build
=====================================
@@ -1,3 +1,8 @@
+opengl_headers_c_args = []
+if host_system == 'android'
+    opengl_headers_c_args += ['-DUSE_OPENGL_ES2']
+endif
+
 gl_common_dep = declare_dependency(
     link_with: [libplacebo_utils],
     sources: files(
@@ -10,6 +15,7 @@ gl_common_dep = declare_dependency(
         'picture.c',
         'sampler.c',
         ),
+    compile_args: opengl_headers_c_args,
     include_directories: [vlc_include_dirs],
     dependencies: [contrib_dep],
 )
@@ -20,24 +26,27 @@ opengl_vout_commonsources = files(
     'vout_helper.c',
 )
 
-if opengl_dep.found() and not (have_ios or have_tvos)
+libvlc_opengl = []
+if opengl_dep.found() and not (have_ios or have_tvos or host_system == 'android')
     libvlc_opengl = static_library('vlc_opengl',
                                    dependencies: [
                                     gl_common_dep,
                                     m_lib,
                                    ])
-
-    vlc_modules += {
-        'name' : 'gl',
-        'sources' : [
-                files('display.c'),
-                opengl_vout_commonsources
-            ],
-        'link_with' : [libvlc_opengl],
-        'dependencies' : [gl_common_dep, m_lib]
-    }
 endif
 
+vlc_modules += {
+    'name' : 'gl',
+    'sources' : [
+            files('display.c'),
+            opengl_vout_commonsources
+        ],
+    'link_with' : [libvlc_opengl],
+    'dependencies' : [gl_common_dep, m_lib],
+    'enabled' : opengl_dep.found() and not (have_ios or have_tvos or host_system == 'android')
+}
+
+libvlc_opengles = []
 if opengles2_dep.found()
     libvlc_opengles = static_library('libvlc_opengles',
                                      dependencies: [gl_common_dep, m_lib],
@@ -45,40 +54,38 @@ if opengles2_dep.found()
 endif
 
 # interop_sw
+interop_sw_deps = [gl_common_dep, m_lib]
+interop_sw_libs = []
+interop_sw_cargs = []
 if host_system in ['darwin', 'android'] or opengl_dep.found() or opengles2_dep.found()
-    interop_sw_deps = [gl_common_dep, m_lib]
-    interop_sw_libs = []
-    interop_sw_cargs = []
-
     if have_osx and opengl_dep.found()
         interop_sw_libs += libvlc_opengl
     elif host_system in ['darwin', 'android'] and opengles2_dep.found()
         interop_sw_libs += libvlc_opengles
     endif
 
-    if opengles2_dep.found()
+    if opengles2_dep.found() or host_system == 'android'
         interop_sw_cargs += '-DUSE_OPENGL_ES2'
     endif
-
-    vlc_modules += {
-        'name' : 'glinterop_sw',
-        'sources' : files('interop_sw.c'),
-        'dependencies' : interop_sw_deps,
-        'c_args' : interop_sw_cargs,
-        'link_with' : interop_sw_libs,
-    }
 endif
 
+vlc_modules += {
+    'name' : 'glinterop_sw',
+    'sources' : files('interop_sw.c'),
+    'dependencies' : interop_sw_deps,
+    'c_args' : interop_sw_cargs,
+    'link_with' : interop_sw_libs,
+    'enabled' : host_system in ['darwin', 'android'] or opengl_dep.found() or opengles2_dep.found(),
+}
+
 # interop_dxva2
-if have_win_desktop
-    opengl32_lib = cc.find_library('opengl32', required: false)
-    if opengl32_lib.found() and not missing_win_glew
-        vlc_modules += {
-            'name' : 'glinterop_dxva2',
-            'sources' : files('interop_dxva2.c'),
-            'c_args' : [ contrib_inc_args ],
-            'dependencies' : [ opengl32_lib, cc.find_library('dxva2') ],
-            'link_with' : [ d3d9_common_lib ]
-        }
-    endif
-endif
+opengl32_lib = cc.find_library('opengl32', required: false)
+dxva2_dep = cc.find_library('dxva2', required: false)
+vlc_modules += {
+    'name' : 'interop_dxva2',
+    'sources' : files('interop_dxva2.c'),
+    'c_args' : [ contrib_inc_args ],
+    'dependencies' : [ opengl32_lib, dxva2_dep ],
+    'link_with' : [ d3d9_common_lib ],
+    'enabled' : have_win_desktop and opengl32_lib.found() and dxva2_dep.found() and not missing_win_glew,
+}



View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/d5b322377a3cafd5f957fece51e915ab1d8a5ade...7287d15aa18468811306ebf589672f38a72f8241

-- 
View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/d5b322377a3cafd5f957fece51e915ab1d8a5ade...7287d15aa18468811306ebf589672f38a72f8241
You're receiving this email because of your account on code.videolan.org.


VideoLAN code repository instance


More information about the vlc-commits mailing list