[vlc-commits] [Git][videolan/vlc][master] meson: add skins2 module
Steve Lhomme (@robUx4)
gitlab at videolan.org
Sat Nov 16 07:01:05 UTC 2024
Steve Lhomme pushed to branch master at VideoLAN / VLC
Commits:
8012d681 by Steve Lhomme at 2024-11-16T06:47:43+00:00
meson: add skins2 module
- - - - -
4 changed files:
- config.h.meson
- meson_options.txt
- modules/gui/meson.build
- + modules/gui/skins2/meson.build
Changes:
=====================================
config.h.meson
=====================================
@@ -253,6 +253,9 @@
/* Define to 1 if you have the `localtime_r' function. */
#mesondefine HAVE_LOCALTIME_R
+/* Define to 1 if you have the lrintf function */
+#mesondefine HAVE_LRINTF
+
/* Define to 1 if the system has the type `max_align_t'. */
#mesondefine HAVE_MAX_ALIGN_T
=====================================
meson_options.txt
=====================================
@@ -145,6 +145,11 @@ option('qt_qml_debug',
value: false,
description: 'Enable/disable Qt QML debugger')
+option('skins2',
+ type : 'feature',
+ value : 'auto',
+ description : 'skins interface module support')
+
option('dbus',
type : 'feature',
value : 'auto',
@@ -723,7 +728,6 @@ option('aribcaption',
# TODO: Missing kai
# TODO: Missing qt-qml-cache
# TODO: Missing qt-qml-debug
-# TODO: Missing skins2
# TODO: Missing libtar
# TODO: Missing macosx
# TODO: Missing sparkle
=====================================
modules/gui/meson.build
=====================================
@@ -27,3 +27,6 @@ endif
# Qt interface module
subdir('qt')
+
+# skins2 interface module
+subdir('skins2')
=====================================
modules/gui/skins2/meson.build
=====================================
@@ -0,0 +1,154 @@
+skins2_flags = []
+skins2_deps = [ freetype_dep ]
+
+fribidi_dep = dependency('fribidi', required: get_option('fribidi'))
+if fribidi_dep.found()
+ skins2_deps += [ fribidi_dep ]
+ skins2_flags += [ '-DHAVE_FRIBIDI' ]
+
+ harfbuzz_dep = dependency('harfbuzz', required: get_option('harfbuzz'))
+ if harfbuzz_dep.found()
+ skins2_deps += [ harfbuzz_dep ]
+ skins2_flags += [ '-DHAVE_HARFBUZZ' ]
+ endif
+endif
+
+if cc.has_function('lrintf', dependencies: [m_lib])
+ cdata.set('HAVE_LRINTF', 1)
+ skins2_deps += [ m_lib ]
+endif
+
+skins2_sources = files(
+ 'commands/async_queue.cpp',
+ 'commands/cmd_add_item.cpp',
+ 'commands/cmd_audio.cpp',
+ 'commands/cmd_dvd.cpp',
+ 'commands/cmd_change_skin.cpp',
+ 'commands/cmd_fullscreen.cpp',
+ 'commands/cmd_input.cpp',
+ 'commands/cmd_layout.cpp',
+ 'commands/cmd_muxer.cpp',
+ 'commands/cmd_on_top.cpp',
+ 'commands/cmd_playlist.cpp',
+ 'commands/cmd_playtree.cpp',
+ 'commands/cmd_minimize.cpp',
+ 'commands/cmd_quit.cpp',
+ 'commands/cmd_resize.cpp',
+ 'commands/cmd_snapshot.cpp',
+ 'commands/cmd_vars.cpp',
+ 'controls/ctrl_button.cpp',
+ 'controls/ctrl_checkbox.cpp',
+ 'controls/ctrl_generic.cpp',
+ 'controls/ctrl_image.cpp',
+ 'controls/ctrl_list.cpp',
+ 'controls/ctrl_tree.cpp',
+ 'controls/ctrl_move.cpp',
+ 'controls/ctrl_resize.cpp',
+ 'controls/ctrl_slider.cpp',
+ 'controls/ctrl_radialslider.cpp',
+ 'controls/ctrl_text.cpp',
+ 'controls/ctrl_video.cpp',
+ 'events/evt_input.cpp',
+ 'events/evt_key.cpp',
+ 'events/evt_mouse.cpp',
+ 'events/evt_special.cpp',
+ 'events/evt_scroll.cpp',
+ 'parser/builder.cpp',
+ 'parser/expr_evaluator.cpp',
+ 'parser/interpreter.cpp',
+ 'parser/skin_parser.cpp',
+ 'parser/xmlparser.cpp',
+ 'src/anchor.cpp',
+ 'src/anim_bitmap.cpp',
+ 'src/bitmap_font.cpp',
+ 'src/dialogs.cpp',
+ 'src/file_bitmap.cpp',
+ 'src/art_manager.cpp',
+ 'src/ft2_bitmap.cpp',
+ 'src/ft2_font.cpp',
+ 'src/ft2_err.c',
+ 'src/generic_bitmap.cpp',
+ 'src/generic_layout.cpp',
+ 'src/generic_window.cpp',
+ 'src/ini_file.cpp',
+ 'src/logger.cpp',
+ 'src/os_factory.cpp',
+ 'src/popup.cpp',
+ 'src/scaled_bitmap.cpp',
+ 'src/skin_main.cpp',
+ 'src/theme.cpp',
+ 'src/theme_loader.cpp',
+ 'src/theme_repository.cpp',
+ 'src/tooltip.cpp',
+ 'src/top_window.cpp',
+ 'src/fsc_window.cpp',
+ 'src/var_manager.cpp',
+ 'src/vlcproc.cpp',
+ 'src/vout_window.cpp',
+ 'src/vout_manager.cpp',
+ 'src/window_manager.cpp',
+ 'utils/bezier.cpp',
+ 'utils/fsm.cpp',
+ 'utils/position.cpp',
+ 'utils/ustring.cpp',
+ 'utils/var_bool.cpp',
+ 'utils/var_list.cpp',
+ 'utils/var_percent.cpp',
+ 'utils/var_text.cpp',
+ 'utils/var_string.cpp',
+ 'utils/var_tree.cpp',
+ 'vars/equalizer.cpp',
+ 'vars/playtree.cpp',
+ 'vars/time.cpp',
+ 'vars/volume.cpp',
+)
+
+
+if host_system == 'windows'
+skins2_flags += [ '-DWIN32_SKINS' ]
+skins2_deps += [
+ cc.find_library('gdi32'),
+ cc.find_library('ole32'),
+ cc.find_library('uuid'),
+ cc.find_library('msimg32'),
+]
+skins2_sources += files(
+ 'win32/win32_dragdrop.cpp',
+ 'win32/win32_factory.cpp',
+ 'win32/win32_graphics.cpp',
+ 'win32/win32_loop.cpp',
+ 'win32/win32_popup.cpp',
+ 'win32/win32_timer.cpp',
+ 'win32/win32_tooltip.cpp',
+ 'win32/win32_window.cpp',
+)
+else
+skins2_flags += [ '-DX11_SKINS' ]
+skins2_sources += files(
+ 'x11/x11_display.cpp',
+ 'x11/x11_dragdrop.cpp',
+ 'x11/x11_factory.cpp',
+ 'x11/x11_graphics.cpp',
+ 'x11/x11_loop.cpp',
+ 'x11/x11_popup.cpp',
+ 'x11/x11_timer.cpp',
+ 'x11/x11_window.cpp',
+ 'x11/x11_tooltip.cpp',
+)
+skins2_deps += [
+ cc.find_library('X11'),
+ dependency('xpm', required: true),
+ dependency('xinerama', required: true),
+ dependency('xcursor', required: true),
+ dependency('xext', required: true),
+]
+endif
+
+vlc_modules += {
+ 'name' : 'skins2',
+ 'sources' : [ skins2_sources ],
+ 'dependencies' : [ skins2_deps ],
+ 'c_args' : skins2_flags,
+ 'cpp_args' : [skins2_flags, '-O2', '-fno-rtti'],
+ 'enabled' : get_option('skins2').allowed() and freetype_dep.found()
+}
View it on GitLab: https://code.videolan.org/videolan/vlc/-/commit/8012d68150bc2affc195d91c663d902790d7013c
--
View it on GitLab: https://code.videolan.org/videolan/vlc/-/commit/8012d68150bc2affc195d91c663d902790d7013c
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