[vlc-commits] [Git][videolan/vlc][master] 6 commits: meson: disable opengl tests if there is no opengl

Steve Lhomme (@robUx4) gitlab at videolan.org
Sat Nov 16 09:02:47 UTC 2024



Steve Lhomme pushed to branch master at VideoLAN / VLC


Commits:
2ca91b7d by Steve Lhomme at 2024-11-16T08:41:34+00:00
meson: disable opengl tests if there is no opengl

As in UWP.

- - - - -
b7f134dd by Steve Lhomme at 2024-11-16T08:41:34+00:00
meson: only build D3D9 on Windows desktop

- - - - -
47e52861 by Steve Lhomme at 2024-11-16T08:41:34+00:00
meson: disable some modules only built for desktop on UWP

- - - - -
816ff6e6 by Steve Lhomme at 2024-11-16T08:41:34+00:00
meson: fix D3D11 vout linking in UWP

- - - - -
eb07b169 by Steve Lhomme at 2024-11-16T08:41:34+00:00
meson: fix screen module in UWP

Matching the autotools configuration.

- - - - -
676b9ca1 by Steve Lhomme at 2024-11-16T08:41:34+00:00
meson: use the internal have_win_store in modules

The option checking is done once with possibly more conditions.

- - - - -


10 changed files:

- modules/access/meson.build
- modules/access/screen/meson.build
- modules/codec/meson.build
- modules/control/meson.build
- modules/hw/d3d9/meson.build
- modules/services_discovery/meson.build
- modules/video_chroma/meson.build
- modules/video_output/win32/meson.build
- modules/video_splitter/meson.build
- test/modules/meson.build


Changes:

=====================================
modules/access/meson.build
=====================================
@@ -106,6 +106,7 @@ vlc_modules += {
     'dependencies' : [ksuser_lib],
     'enabled' : get_option('wasapi')
       .require(host_system == 'windows', error_message: 'WASAPI requires Windows')
+      .disable_auto_if(have_win_store)
       .allowed() and ksuser_lib.found()
 }
 
@@ -327,7 +328,7 @@ if host_system == 'linux'
     endif
 endif
 
-if host_system == 'windows'
+if host_system == 'windows' and have_win_desktop
     strmiids_lib = cc.find_library('strmiids', required: true)
     vlc_modules += {
         'name' : 'dtv',
@@ -410,7 +411,7 @@ vlc_modules += {
 }
 
 # Windows UNC
-if host_system == 'windows'
+if host_system == 'windows' and not have_win_store
     mpr_lib = cc.find_library('mpr', required: true)
     netapi32_lib = cc.find_library('netapi32', required: true)
 


=====================================
modules/access/screen/meson.build
=====================================
@@ -21,9 +21,12 @@ if get_option('screen').allowed()
 
     if host_system == 'windows'
       screen_name = 'screen_win'
-      screen_files += files('win32.c', 'dxgi.cpp')
-      gdi32_dep = cc.find_library('gdi32')
-      screen_deps += [gdi32_dep, cc.find_library('d3d11')]
+      screen_files += files('dxgi.cpp')
+      screen_deps += [cc.find_library('d3d11')]
+      if have_win_desktop
+        screen_files += files('win32.c')
+        screen_deps += [cc.find_library('gdi32')]
+      endif
       screen_cppargs += libcom_cppflags
       screen_link_with += d3d11_common_lib
     else


=====================================
modules/codec/meson.build
=====================================
@@ -664,7 +664,7 @@ if host_system == 'windows'
 
     if (get_option('dxva2').
         enable_auto_if(cc.check_header('libavcodec/dxva2.h', args: [contrib_inc_args]))
-        .allowed())
+        .allowed() and have_win_desktop)
         cdata.set('HAVE_LIBAVCODEC_DXVA2_H', 1)
         vlc_modules += {
             'name' : 'dxva2',
@@ -693,7 +693,8 @@ if host_system == 'windows'
             ),
         'dependencies': [
             cc.find_library('uuid'),
-        ]
+        ],
+        'enabled' : have_win_desktop,
     }
 endif
 


=====================================
modules/control/meson.build
=====================================
@@ -79,7 +79,7 @@ if dbus_dep.found()
     }
 endif
 
-if host_system == 'windows'
+if host_system == 'windows' and have_win_desktop
 
     # NT service control
     vlc_modules += {


=====================================
modules/hw/d3d9/meson.build
=====================================
@@ -2,16 +2,17 @@
 # Direct3d9 modules
 #
 
-if get_option('directx').allowed()
-    vlc_modules += {
-        'name' : 'direct3d9_filters',
-        'sources' : files(
-            'd3d9_filters.c',
-            'dxva2_deinterlace.c',
-            'dxa9.c',
-            'd3d9_device.c',
-            ),
-        'link_with' : [ d3d9_common_lib, chroma_copy_lib, deinterlacecommon_lib ],
-        'include_directories' : [vlc_include_dirs],
-    }
+if have_win_desktop
+vlc_modules += {
+    'name' : 'direct3d9_filters',
+    'sources' : files(
+        'd3d9_filters.c',
+        'dxva2_deinterlace.c',
+        'dxa9.c',
+        'd3d9_device.c',
+        ),
+    'link_with' : [ d3d9_common_lib, chroma_copy_lib, deinterlacecommon_lib ],
+    'include_directories' : [vlc_include_dirs],
+    'enabled' : get_option('directx').allowed()
+}
 endif


=====================================
modules/services_discovery/meson.build
=====================================
@@ -84,7 +84,7 @@ if xcb_dep.found()
 endif
 
 # Windows drive discovery
-if host_system == 'windows'
+if host_system == 'windows' and have_win_desktop
     vlc_modules += {
         'name' : 'windrive',
         'sources' : files('windrive.c')


=====================================
modules/video_chroma/meson.build
=====================================
@@ -127,6 +127,7 @@ if host_system == 'windows'
             cc.find_library('d3d11'),
         ]
     )
+    if have_win_desktop
     d3d9_common_lib = static_library('d3d9_common',
         files(
             'd3d9_fmt.c',
@@ -134,8 +135,9 @@ if host_system == 'windows'
             ),
         include_directories: [vlc_include_dirs],
         pic: true,
-        install: false
+        install: false,
     )
+    endif
 endif
 
 # CVPX chroma converter


=====================================
modules/video_output/win32/meson.build
=====================================
@@ -6,17 +6,16 @@
 d3d11_sources = files('direct3d11.cpp', 'd3d11_quad.cpp', 'd3d11_scaler.cpp',
                       'd3d11_shaders.cpp', 'd3d11_tonemap.cpp',
                       'd3d_shaders.c', 'd3d_dynamic_shader.c', 'common.c')
-d3d11_link_with = [ d3d11_common_lib ]
+d3d11_link_with = [ d3d11_common_lib, chroma_copy_lib ]
 d3d11_cargs = []
 d3d11_cxxargs = [ libcom_cppflags ]
 d3d11_deps = [ cc.find_library('dxgi'), cc.find_library('d3d11') ]
-if get_option('winstore_app')
+if have_win_store
     d3d11_deps += [
         cc.find_library('d3dcompiler_47')
     ]
 else
     d3d11_sources += files('d3d11_swapchain.cpp', 'dxgi_swapchain.cpp', 'events.c', 'sensors.cpp', 'win32touch.c')
-    d3d11_link_with += [ chroma_copy_lib ]
     d3d11_cargs += '-DHAVE_WIN32_SENSORS'
     d3d11_deps += [
         cc.find_library('user32')


=====================================
modules/video_splitter/meson.build
=====================================
@@ -16,7 +16,7 @@ if xcb_dep.found() and xcb_randr_dep.found()
         'sources' : files('panoramix.c'),
         'dependencies' : [xcb_dep, xcb_randr_dep]
     }
-elif host_system == 'windows'
+elif host_system == 'windows' and have_win_desktop
     vlc_modules += {
         'name' : 'panoramix',
         'sources' : files('panoramix.c')


=====================================
test/modules/meson.build
=====================================
@@ -102,6 +102,7 @@ vlc_tests += {
     'module_depends' : vlc_plugins_targets.keys()
 }
 
+if opengl_dep.found()
 vlc_tests += {
     'name' : 'test_modules_video_output_opengl_filters',
     'sources' : files(
@@ -139,6 +140,7 @@ vlc_tests += {
     'c_args' : ['-DVLC_TEST_OPENGL_API=VLC_OPENGL_ES2'],
     'module_depends' : vlc_plugins_targets.keys()
 }
+endif
 
 vlc_tests += {
     'name' : 'test_modules_stream_out_transcode',



View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/8b9f4281196b443d75de05c0cbec17b12275605b...676b9ca1847a5836ffc81a39b90b6b5841205248

-- 
View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/8b9f4281196b443d75de05c0cbec17b12275605b...676b9ca1847a5836ffc81a39b90b6b5841205248
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