libds-tizen: make libds-tizen rpm package 30/300930/1 accepted/tizen/unified/20231107.172841
authorSooChan Lim <sc1.lim@samsung.com>
Mon, 6 Nov 2023 06:16:47 +0000 (15:16 +0900)
committerTizen Window System <tizen.windowsystem@gmail.com>
Mon, 6 Nov 2023 06:43:14 +0000 (15:43 +0900)
libds-tizen include all functionalities needed by Tizen Platform.

Change-Id: I7a7363250e46a9dc0dbac019a93b8c8ad798ac8d

packaging/libds-tizen.spec
src/meson.build

index 8c42e4e..f078b0f 100644 (file)
@@ -47,10 +47,17 @@ BuildRequires:  pkgconfig(eom)
 BuildRequires:  pkgconfig(xdg-shell-unstable-v6-server)
 BuildRequires:  pkgconfig(gbm)
 
-
 %description
 Wayland Compositor Library for Tizen
 
+%package devel
+Summary:    Wayland Compositor Library for Tizesn
+Group:      Development/Libraries
+Requires:   %{name} = %{version}-%{release}
+
+%description devel
+Development package of Wayland Compositor Library for Tizen
+
 ## libds-tizen-allocator-tbm
 %package allocator-tbm
 Summary: Allocator Library with TBM
@@ -443,6 +450,29 @@ ninja -C builddir all
 export DESTDIR=%{buildroot}
 ninja -C builddir install
 
+%files
+%manifest %{name}.manifest
+%defattr(-,root,root,-)
+%license LICENSE
+%{_libdir}/libds-tizen.so.*
+
+%files devel
+%manifest %{name}.manifest
+%defattr(-,root,root,-)
+%license LICENSE
+%{_includedir}/libds-tizen/*
+%{_libdir}/pkgconfig/libds-tizen.pc
+%{_libdir}/libds-tizen.so
+
+%files allocator-tbm-devel
+%manifest %{name}.manifest
+%defattr(-,root,root,-)
+%license LICENSE
+%{_includedir}/libds-tizen/allocator/tbm.h
+%{_libdir}/pkgconfig/libds-tizen-allocator-tbm.pc
+%{_libdir}/libds-tizen-allocator-tbm.so
+%{_bindir}/libds-tizen-allocator-tbm-tests
+
 %files allocator-tbm
 %manifest %{name}.manifest
 %defattr(-,root,root,-)
index 15c2b62..f0163b4 100644 (file)
@@ -57,3 +57,91 @@ subdir('video')
 subdir('eom')
 subdir('remote_surface')
 subdir('gbm_server')
+
+##### libds-tizen ######
+libds_tizen_files = [
+  'embedded_compositor/embedded_compositor.c',
+  'text_input/text_input.c',
+  'indicator/indicator.c',
+  'dpms/dpms.c',
+  'remote_surface/remote_surface.c',
+  'gbm_server/gbm_server.c',
+  'renderer/renderer.c',
+  'screen_rotation/screen_rotation.c',
+  'eom/eom.c',
+  'hwc/hwc.c',
+  'input_method/input_method.c',
+  'launch/appinfo.c',
+  'launch/effect.c',
+  'scaler/scaler.c',
+  'video/viewport.c',
+  'video/video.c',
+  'tbm_server/tbm_server.c',
+  'screenshooter/screenshooter.c',
+  'screenshooter/screenmirror.c',
+  'input_devicemgr/input_devicemgr.c',
+  'clipboard/clipboard.c',
+  'memory_flusher/memory_flusher.c',
+  'global_resource/global_resource.c',
+  'policy/policy.c',
+  'keyrouter/keyrouter_grab.c',
+  'keyrouter/keyrouter.c',
+  'security.c',
+  'display_policy/display_policy.c',
+]
+
+libds_tizen_deps = [
+  dep_libshared,
+  deps_libds_tizen,
+  dep_libshared,
+  deps_tizen_security,
+  dependency('libtdm', required: true),
+  dependency('gbm', required: true),
+  dependency('libtbm', required: true),
+  dependency('tizen-dpms-server', required: true),
+  dependency('wayland-tbm-server', required: true),
+  dependency('eom-server', required: true),
+  dependency('tizen-hwc-server', required: true),
+  dependency('xdg-shell-unstable-v6-server', required: true),
+  dependency('text-server', required: true),
+  dependency('input-method-server', required: true),
+  dependency('tizen-launch-server', required: true),
+  dependency('tizen-surface-server', required: true),
+  dependency('tizen-remote-surface-server', required: true),
+  dependency('scaler-server', required: true),
+  dependency('tizen-extension-server', required: true),
+  dependency('xkbcommon', required: true),
+]
+
+keylayout_dir = get_option('keylayout_dir')
+
+lib_libds_tizen = shared_library('ds-tizen', libds_tizen_files,
+  dependencies: libds_tizen_deps,
+  include_directories: [ common_inc,
+                         include_directories('.'),
+                         include_directories('..'),
+                         include_directories('./gbm_server'),
+                         include_directories('./input_devicemgr'),
+                         include_directories('./keyrouter'),
+                         include_directories('./screenshooter'),
+                         include_directories('./tbm_server'),
+                         include_directories('./video'),
+                       ],
+  version: meson.project_version(),
+  c_args: [ '-DKEYLAYOUT_DIR="@0@"'.format(keylayout_dir) ],
+  install: true
+)
+
+deps_libds_tizen = declare_dependency(
+  link_with: lib_libds_tizen,
+  dependencies: libds_tizen_deps,
+  include_directories: [ common_inc, include_directories('.') ],
+)
+
+pkgconfig = import('pkgconfig')
+pkgconfig.generate(lib_libds_tizen,
+  version: meson.project_version(),
+  filebase: 'libds-tizen',
+  name: 'libds-tizen',
+  description: 'tizen extension of libds-tizen for tizen platform',
+)