Packaging refactoring 60/122860/2
authorRafal Krypa <r.krypa@samsung.com>
Mon, 3 Apr 2017 19:18:44 +0000 (21:18 +0200)
committerRafal Krypa <r.krypa@samsung.com>
Mon, 3 Apr 2017 21:28:31 +0000 (23:28 +0200)
Fix broken package separation between askuser and askuser-notification:
- Build askuser-notification-ipc together with askuser-notification, not
  askuser. This breaks a dependency cycly: askuser -> security-manager ->
  askuser-notificattion-ipc -> askuser
- Move askuser-notification-test to a separate package, breaking another cycle
- Put all Cynara plugins in single package, don't split them
- Don't keep the same manifest file in separate copies
- Adapt package names to RPM convention

Change-Id: If814da04e65f02d0292e9e9b206629b4774bdb69
Signed-off-by: Rafal Krypa <r.krypa@samsung.com>
CMakeLists.txt
packaging/askuser-notification.manifest [deleted file]
packaging/askuser-notification.spec
packaging/askuser-plugins.manifest [deleted file]
packaging/askuser-test.manifest [deleted file]
packaging/askuser.manifest [deleted file]
packaging/askuser.spec
packaging/default.manifest [moved from packaging/privacy-denied-plugins.manifest with 100% similarity]
packaging/libaskuser-notification.manifest [deleted file]
src/agent/notification-daemon/CMakeLists.txt

index 305d0d8..289bd38 100644 (file)
@@ -90,24 +90,24 @@ SET(ASKUSER_PATH ${PROJECT_SOURCE_DIR}/src)
 IF (BUILD_ASKUSER)
     SET(TARGET_ASKUSER "askuser")
     SET(TARGET_ASKUSER_COMMON "askuser-common")
-    SET(TARGET_ASKUSER_NOTIFICATION_LIB "askuser-notification-ipc")
     SET(TARGET_PLUGIN_SERVICE "askuser-plugin-service")
     SET(TARGET_PLUGIN_CLIENT "askuser-plugin-client")
     SET(TARGET_PRIVACYDENIED_PLUGIN_CLIENT "privacy-denied-plugin-client")
     SET(TARGET_PRIVACYDENIED_PLUGIN_SERVICE "privacy-denied-plugin-service")
     SET(TARGET_TEST "askuser-test")
     SET(TARGET_TESTS "askuser-tests")
-    SET(TARGET_ASKUSER_NOTIFICATION_TEST "askuser-notification-test")
     ADD_SUBDIRECTORY(src/agent)
     ADD_SUBDIRECTORY(src/common)
-    ADD_SUBDIRECTORY(src/common/protocol)
     ADD_SUBDIRECTORY(src/plugin)
     ADD_SUBDIRECTORY(test)
 ENDIF (BUILD_ASKUSER)
 
 IF (BUILD_ASKUSER_NOTIFICATION)
     SET(TARGET_ASKUSER_NOTIFICATION "askuser-notification")
+    SET(TARGET_ASKUSER_NOTIFICATION_LIB "askuser-notification-ipc")
+    SET(TARGET_ASKUSER_NOTIFICATION_TEST "askuser-notification-test")
     ADD_SUBDIRECTORY(src/agent/notification-daemon)
+    ADD_SUBDIRECTORY(src/common/protocol)
 ENDIF (BUILD_ASKUSER_NOTIFICATION)
 
 IF (BUILD_WITH_SYSTEMD_DAEMON)
diff --git a/packaging/askuser-notification.manifest b/packaging/askuser-notification.manifest
deleted file mode 100644 (file)
index c00c25b..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-<manifest>
-        <request>
-                <domain name="_" />
-        </request>
-</manifest>
index 4b5fa61..aefca39 100644 (file)
@@ -9,7 +9,7 @@ Release:    1
 Group:      Security/Access Control
 License:    Apache-2.0
 Source0:    %{name}-%{version}.tar.gz
-Source1001:    %{name}.manifest
+Source1001:    default.manifest
 BuildRequires: cmake
 BuildRequires: libwayland-egl
 BuildRequires: gettext-tools
@@ -24,7 +24,6 @@ BuildRequires: pkgconfig(glib-2.0)
 BuildRequires: pkgconfig(vconf)
 BuildRequires: pkgconfig(capi-ui-efl-util)
 BuildRequires: pkgconfig(capi-system-info)
-BuildRequires: pkgconfig(askuser-notification-ipc)
 BuildRequires: coregl
 BuildRequires: edje-bin
 
@@ -35,6 +34,24 @@ BuildRequires: edje-bin
 %description
 Daemon allowing user to grant or deny access for given application and privilege
 
+%package libs
+Summary: Askuser notification protocol library
+
+%description libs
+Askuser notification protocol library
+
+%package devel
+Summary: Askuser notification protocol library development files
+
+%description devel
+Askuser notification protocol library development files
+
+%package test
+Summary: Tool for testing askuser-notification
+
+%description test
+Tool for testing askuser-notification
+
 %prep
 %setup -q
 cp -a %{SOURCE1001} .
@@ -78,8 +95,12 @@ systemctl daemon-reload
 
 %postun
 
+%post libs -p /sbin/ldconfig
+
+%postun libs -p /sbin/ldconfig
+
 %files -f %{name}.lang
-%manifest askuser-notification.manifest
+%manifest default.manifest
 %license LICENSE
 %attr(755,root,root) /usr/bin/askuser-notification
 %if %{with_systemd_daemon}
@@ -88,4 +109,17 @@ systemctl daemon-reload
 %{_unitdir_user}/askuser-notification-datagram.socket
 %{_unitdir_user}/sockets.target.wants/*
 %endif
-/usr/share/askuser-notification/res/*
+%{_datadir}/askuser-notification/res/*
+
+%files libs
+%manifest default.manifest
+%license LICENSE
+%{_libdir}/libaskuser-notification-ipc.so.*
+
+%files devel
+%{_libdir}/libaskuser-notification-ipc.so
+%{_includedir}/askuser-notification
+%{_libdir}/pkgconfig/askuser-notification-ipc.pc
+
+%files test
+%attr(755,root,root) %{_bindir}/askuser-notification-test
diff --git a/packaging/askuser-plugins.manifest b/packaging/askuser-plugins.manifest
deleted file mode 100644 (file)
index a76fdba..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-<manifest>
-       <request>
-               <domain name="_" />
-       </request>
-</manifest>
diff --git a/packaging/askuser-test.manifest b/packaging/askuser-test.manifest
deleted file mode 100644 (file)
index a76fdba..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-<manifest>
-       <request>
-               <domain name="_" />
-       </request>
-</manifest>
diff --git a/packaging/askuser.manifest b/packaging/askuser.manifest
deleted file mode 100644 (file)
index a76fdba..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-<manifest>
-       <request>
-               <domain name="_" />
-       </request>
-</manifest>
index 34730d6..36cae99 100644 (file)
@@ -9,12 +9,7 @@ Release:    1
 Group:      Security/Access Control
 License:    Apache-2.0
 Source0:    %{name}-%{version}.tar.gz
-Source1001:    %{name}.manifest
-Source1002:    libaskuser-common.manifest
-Source1003:    askuser-plugins.manifest
-Source1004:    askuser-test.manifest
-Source1005:    privacy-denied-plugins.manifest
-Source1006:    libaskuser-notification.manifest
+Source1001:    default.manifest
 BuildRequires: cmake
 BuildRequires: pkgconfig(cynara-agent)
 %if %{with_systemd_daemon}
@@ -24,8 +19,6 @@ BuildRequires: pkgconfig(security-manager)
 BuildRequires: pkgconfig(security-privilege-manager)
 BuildRequires: pkgconfig(glib-2.0)
 BuildRequires: pkgconfig(pkgmgr-info)
-BuildRequires: libaskuser-notification
-
 
 %if !%{defined build_type}
 %define build_type RELEASE
@@ -40,55 +33,28 @@ Summary:    Askuser common library
 %description -n libaskuser-common
 Askuser common library with common functionalities
 
-%package -n libaskuser-notification
-Summary:    Askuser notification protocol library
-
-%description -n libaskuser-notification
-Askuser notification protocol library
-
-%package -n libaskuser-notification-devel
-Summary:    Askuser notification protocol library development files
-
-%description -n libaskuser-notification-devel
-Askuser notification protocol library development files
-
-%package -n askuser-plugins
+%package plugins
 BuildRequires: pkgconfig(cynara-plugin)
 Requires:   cynara
 Requires:   libcynara-client
 Summary:    Askuser cynara plugins
 
-%description -n askuser-plugins
+%description plugins
 Askuser plugin library with cynara service and client side plugins
 
-%package -n askuser-test
+%package test
 BuildRequires: pkgconfig(cynara-agent)
 BuildRequires: pkgconfig(cynara-client)
 BuildRequires: pkgconfig(cynara-admin)
 BuildRequires: pkgconfig(gmock)
 Summary: Tool for testing askuser packages and unit tests for askuser
 
-%description -n askuser-test
+%description test
 Tool for testing askuser packages and unit tests for askuser
 
-%package -n privacy-denied-plugins
-BuildRequires: pkgconfig(cynara-plugin)
-Summary: Privacy Denied cynara plugins
-
-%description -n privacy-denied-plugins
-Plugins for toast popup. These plugins return
-always denied. Additional function of these
-plugins is to show popup to user with information
-about blocked privileges.
-
 %prep
 %setup -q
 cp -a %{SOURCE1001} .
-cp -a %{SOURCE1002} .
-cp -a %{SOURCE1003} .
-cp -a %{SOURCE1004} .
-cp -a %{SOURCE1005} .
-cp -a %{SOURCE1006} .
 
 %build
 %if 0%{?sec_build_binary_debug_enable}
@@ -111,6 +77,7 @@ make %{?jobs:-j%jobs}
 %install
 rm -rf %{buildroot}
 %make_install
+rm -f %{buildroot}/%{_libdir}/libaskuser-common.so
 
 %if %{with_systemd_daemon}
 mkdir -p %{buildroot}/%{_unitdir}/multi-user.target.wants
@@ -144,15 +111,13 @@ systemctl restart cynara.service
 %endif
 
 %post -n libaskuser-common -p /sbin/ldconfig
-%post -n libaskuser-notification -p /sbin/ldconfig
 
 %postun -n libaskuser-common -p /sbin/ldconfig
-%postun -n libaskuser-notification -p /sbin/ldconfig
 
-%files -n %{name}
-%manifest %{name}.manifest
+%files
+%manifest default.manifest
 %license LICENSE
-%attr(755, root, root) /usr/bin/askuser
+%attr(755, root, root) %{_bindir}/askuser
 %if %{with_systemd_daemon}
 %{_unitdir}/askuser.service
 %{_unitdir}/multi-user.target.wants/*
@@ -160,36 +125,18 @@ systemctl restart cynara.service
 %endif
 
 %files -n libaskuser-common
-%manifest libaskuser-common.manifest
-%license LICENSE
-%{_libdir}/libaskuser-common.so*
-
-%files -n libaskuser-notification
-%manifest libaskuser-notification.manifest
+%manifest default.manifest
 %license LICENSE
-%{_libdir}/libaskuser-notification-ipc.so.*
-
-%files -n libaskuser-notification-devel
-%{_libdir}/libaskuser-notification-ipc.so
-%{_includedir}/askuser-notification
-%{_libdir}/pkgconfig/askuser-notification-ipc.pc
+%{_libdir}/libaskuser-common.so.*
 
-%files -n askuser-plugins
-%manifest askuser-plugins.manifest
+%files plugins
+%manifest default.manifest
 %license LICENSE
-%{_libdir}/cynara/plugin/client/libaskuser*
-%{_libdir}/cynara/plugin/service/libaskuser*
+%{_libdir}/cynara/plugin/client/*
+%{_libdir}/cynara/plugin/service/*
 
-%files -n privacy-denied-plugins
-%manifest privacy-denied-plugins.manifest
+%files test
+%manifest default.manifest
 %license LICENSE
-%{_libdir}/cynara/plugin/client/libprivacy*
-%{_libdir}/cynara/plugin/service/libprivacy*
-
-%files -n askuser-test
-%manifest askuser-test.manifest
-%license LICENSE
-%attr(755,root,root) /usr/bin/askuser-test
-%attr(755,root,root) /usr/bin/askuser-tests
-%attr(755,root,root) /usr/bin/askuser-notification-test
-
+%attr(755,root,root) %{_bindir}/askuser-test
+%attr(755,root,root) %{_bindir}/askuser-tests
diff --git a/packaging/libaskuser-notification.manifest b/packaging/libaskuser-notification.manifest
deleted file mode 100644 (file)
index a76fdba..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-<manifest>
-       <request>
-               <domain name="_" />
-       </request>
-</manifest>
index 8793026..8304067 100644 (file)
@@ -15,7 +15,6 @@ PKG_CHECK_MODULES(ASKUSER_NOTIFICATION_DEP
     capi-ui-efl-util
     capi-system-info
     security-privilege-manager
-    askuser-notification-ipc
 )
 
 INCLUDE_DIRECTORIES(SYSTEM