updated distribution specific changes 35/4035/1 accepted/tizen/20130617.174626 submit/tizen/20130617.151432
authorImran Zaman <imran.zaman@intel.com>
Mon, 17 Jun 2013 15:05:14 +0000 (18:05 +0300)
committerImran Zaman <imran.zaman@intel.com>
Mon, 17 Jun 2013 15:05:14 +0000 (18:05 +0300)
17 files changed:
Makefile.am
Makefile.in
dists/rpm/gsignond-suse.spec [new file with mode: 0644]
dists/rpm/gsignond-tizen.changes [new file with mode: 0644]
dists/rpm/gsignond-tizen.spec [new file with mode: 0644]
gsignond-uninstalled.pc.in
gsignond.pc.in
packaging/gsignond.changes
packaging/gsignond.spec
src/daemon/dbus/Makefile.am
src/daemon/dbus/Makefile.in
src/daemon/dbus/gsignond-dbus-signonui-adapter.c
src/daemon/dbus/gsignond-dbus.h
tools/archive.sh [moved from packaging/archive.sh with 100% similarity]
tools/prepare-tizen.sh [new file with mode: 0755]
tools/run-tests.sh [new file with mode: 0755]
tools/setup-and-start-daemon.sh [new file with mode: 0755]

index 05f8163..22f236b 100644 (file)
@@ -11,7 +11,7 @@ pkgconfig_DATA = gsignond.pc
 
 SUBDIRS = src test
 
-EXTRA_DIST = packaging
+EXTRA_DIST = dists tools
 
 valgrind:
        cd test; make valgrind
index 988a9f1..4475fd5 100644 (file)
@@ -301,7 +301,7 @@ AM_DISTCHECK_CONFIGURE_FLAGS = \
 pkgconfigdir = $(libdir)/pkgconfig
 pkgconfig_DATA = gsignond.pc
 SUBDIRS = src test
-EXTRA_DIST = packaging
+EXTRA_DIST = dists tools
 all: config.h
        $(MAKE) $(AM_MAKEFLAGS) all-recursive
 
diff --git a/dists/rpm/gsignond-suse.spec b/dists/rpm/gsignond-suse.spec
new file mode 100644 (file)
index 0000000..84f7321
--- /dev/null
@@ -0,0 +1,109 @@
+# define used dbus type [p2p, session, system]
+%define dbus_type session
+# enable debug features such as control environment variables
+# WARNING! do not use for production builds as it will break security
+%define debug_build 0
+
+Name: gsignond
+Summary: GLib based Single Sign-On daemon
+Version: 0.0.1
+Release: 9
+Group: System/Daemons
+License: LGPL
+Source: %{name}-%{version}.tar.gz
+Requires: dbus-1
+Requires(post): /sbin/ldconfig
+Requires(postun): /sbin/ldconfig
+BuildRequires: pkgconfig(dbus-1)
+BuildRequires: pkgconfig(gtk-doc)
+BuildRequires: pkgconfig(glib-2.0) >= 2.30
+BuildRequires: pkgconfig(gobject-2.0)
+BuildRequires: pkgconfig(gio-2.0)
+BuildRequires: pkgconfig(gio-unix-2.0)
+BuildRequires: pkgconfig(gmodule-2.0)
+BuildRequires: pkgconfig(sqlite3)
+
+
+%description
+%{summary}.
+
+
+%package devel
+Summary:    Development files for %{name}
+Group:      Development/Libraries
+Requires:   %{name} = %{version}-%{release}
+
+%description devel
+%{summary}.
+
+
+%prep
+%setup -q -n %{name}-%{version}
+#gtkdocize
+# for repository snapshot packages
+#aclocal
+#autoheader
+#libtoolize --copy --force
+#autoconf
+#automake --add-missing --copy
+#autoreconf --install --force
+# fore release source packages
+autoreconf -f -i
+
+
+%build
+%if %{debug_build} == 1
+%configure --enable-dbus-type=%{dbus_type} --enable-debug
+%else
+%configure --enable-dbus-type=%{dbus_type}
+%endif
+
+make %{?_smp_mflags}
+
+
+%install
+rm -rf %{buildroot}
+%make_install
+
+
+%post
+/sbin/ldconfig
+chmod u+s %{_bindir}/%{name}
+
+
+%postun -p /sbin/ldconfig
+
+
+%files
+%defattr(-,root,root,-)
+%doc AUTHORS COPYING.LIB INSTALL NEWS README
+%{_bindir}/%{name}
+%{_bindir}/%{name}-plugind
+%{_libdir}/lib%{name}-*.so.*
+%{_libdir}/%{name}/extensions/*.so*
+%{_libdir}/%{name}/plugins/*.so*
+%if %{dbus_type} != "p2p"
+%{_datadir}/dbus-1/services/*SingleSignOn*.service
+%endif
+%exclude %{_libdir}/gsignond/extensions/*.la
+%exclude %{_libdir}/gsignond/plugins/*.la
+
+
+%files devel
+%defattr(-,root,root,-)
+%{_includedir}/%{name}/*.h
+%{_libdir}/lib%{name}-*.so
+%{_libdir}/lib%{name}-*.la
+%{_libdir}/pkgconfig/%{name}.pc
+%if %{dbus_type} != "p2p"
+%{_datadir}/dbus-1/interfaces/*SSO*.xml
+%endif
+
+
+%changelog
+* Wed Jun 12 2013 Jussi Laako <jussi.laako@linux.intel.com>
+- Prepare for first release
+
+* Thu Feb 08 2013 Jussi Laako <jussi.laako@linux.intel.com>
+- Initial RPM packaging
+
diff --git a/dists/rpm/gsignond-tizen.changes b/dists/rpm/gsignond-tizen.changes
new file mode 100644 (file)
index 0000000..8de2263
--- /dev/null
@@ -0,0 +1,5 @@
+* Wed Jun 12 2013 Jussi Laako <jussi.laako@linux.intel.com>
+- Prepare for first release
+
+* Thu Feb 08 2013 Jussi Laako <jussi.laako@linux.intel.com>
+- Initial RPM packaging
diff --git a/dists/rpm/gsignond-tizen.spec b/dists/rpm/gsignond-tizen.spec
new file mode 100644 (file)
index 0000000..d87723e
--- /dev/null
@@ -0,0 +1,93 @@
+# define used dbus type [p2p, session, system]
+%define dbus_type session
+# enable debug features such as control environment variables
+# WARNING! do not use for production builds as it will break security
+%define debug_build 0
+
+Name: gsignond
+Summary: GLib based Single Sign-On daemon
+Version: 0.0.1
+Release: 9
+Group: System/Daemons
+License: LGPL
+Source: %{name}-%{version}.tar.gz
+Requires: dbus-1
+Requires(post): /sbin/ldconfig
+Requires(postun): /sbin/ldconfig
+BuildRequires: pkgconfig(dbus-1)
+BuildRequires: pkgconfig(glib-2.0) >= 2.30
+BuildRequires: pkgconfig(gobject-2.0)
+BuildRequires: pkgconfig(gio-2.0)
+BuildRequires: pkgconfig(gio-unix-2.0)
+BuildRequires: pkgconfig(gmodule-2.0)
+BuildRequires: pkgconfig(sqlite3)
+
+
+%description
+%{summary}.
+
+
+%package devel
+Summary:    Development files for %{name}
+Group:      Development/Libraries
+Requires:   %{name} = %{version}-%{release}
+
+%description devel
+%{summary}.
+
+
+%prep
+%setup -q -n %{name}-%{version}
+if [ -f = "gtk-doc.make" ]
+then
+rm gtk-doc.make
+fi
+touch gtk-doc.make
+autoreconf -f -i
+
+
+%build
+%if %{debug_build} == 1
+%configure --enable-dbus-type=%{dbus_type} --enable-debug
+%else
+%configure --enable-dbus-type=%{dbus_type}
+%endif
+
+make %{?_smp_mflags}
+
+
+%install
+rm -rf %{buildroot}
+%make_install
+
+
+%post
+/sbin/ldconfig
+chmod u+s %{_bindir}/%{name}
+
+
+%postun -p /sbin/ldconfig
+
+
+%files
+%defattr(-,root,root,-)
+%doc AUTHORS COPYING.LIB INSTALL NEWS README
+%{_bindir}/%{name}
+%{_bindir}/%{name}-plugind
+%{_libdir}/lib%{name}-*.so.*
+%{_libdir}/%{name}/extensions/*.so*
+%{_libdir}/%{name}/plugins/*.so*
+%if %{dbus_type} != "p2p"
+%{_datadir}/dbus-1/services/*SingleSignOn*.service
+%endif
+
+
+%files devel
+%defattr(-,root,root,-)
+%{_includedir}/%{name}/*.h
+%{_libdir}/lib%{name}-*.so
+%{_libdir}/pkgconfig/%{name}.pc
+%if %{dbus_type} != "p2p"
+%{_datadir}/dbus-1/interfaces/*SSO*.xml
+%endif
+
index 6158941..c17bca5 100644 (file)
@@ -14,5 +14,5 @@ Description: Single-sign-on daemon and libraries, not installed
 Version: @PACKAGE_VERSION@
 URL: @PACKAGE_URL@
 Requires: glib-2.0 >= 2.30 gio-2.0 gio-unix-2.0 gmodule-2.0 sqlite3
-Libs: @abs_top_builddir@/src/common/libgsignond-common.la @abs_top_builddir@/src/common/db/libgsignond-common-db.la
-Cflags: -I${includedir}
\ No newline at end of file
+Libs: @abs_top_builddir@/src/common/libgsignond-common.la
+Cflags: -I${includedir}
index 7ccc602..ae81423 100644 (file)
@@ -11,6 +11,6 @@ Description: Single-sign-on daemon and libraries
 Version: @PACKAGE_VERSION@
 URL: @PACKAGE_URL@
 Requires: glib-2.0 >= 2.30 gio-2.0 gio-unix-2.0 gmodule-2.0 sqlite3
-Libs: -L${libdir} -lgsignond-common -lgsignond-common-db
+Libs: -L${libdir} -lgsignond-common
 Cflags: -I${includedir}
 
index 077efc4..8de2263 100644 (file)
@@ -1,3 +1,5 @@
-* Fri Jun 14 2013 Imran Zaman <imran.zaman@intel.com> submit/trunk/20130614.152516@f60ae3e
-- gsignond first release 0.0.1
+* Wed Jun 12 2013 Jussi Laako <jussi.laako@linux.intel.com>
+- Prepare for first release
 
+* Thu Feb 08 2013 Jussi Laako <jussi.laako@linux.intel.com>
+- Initial RPM packaging
index 94dc799..d87723e 100644 (file)
@@ -91,11 +91,3 @@ chmod u+s %{_bindir}/%{name}
 %{_datadir}/dbus-1/interfaces/*SSO*.xml
 %endif
 
-
-%changelog
-* Wed Jun 12 2013 Jussi Laako <jussi.laako@linux.intel.com>
-- Prepare for first release
-
-* Thu Feb 08 2013 Jussi Laako <jussi.laako@linux.intel.com>
-- Initial RPM packaging
-
index a5f9596..f98ec6f 100644 (file)
@@ -8,8 +8,6 @@ DBUS_BUILT_SOURCES = \
     gsignond-dbus-auth-session-gen.h \
     gsignond-dbus-identity-gen.c \
     gsignond-dbus-identity-gen.h \
-    gsignond-dbus-signonui-gen.c \
-    gsignond-dbus-signonui-gen.h \
     gsignond-dbus-remote-plugin-gen.c \
     gsignond-dbus-remote-plugin-gen.h \
     $(NULL)
@@ -18,7 +16,6 @@ DBUS_BUILT_DOCS = \
     gsignond-dbus-auth-service-doc-gen-com.google.code.AccountsSSO.gSingleSignOn.AuthService.xml \
     gsignond-dbus-auth-session-doc-gen-com.google.code.AccountsSSO.gSingleSignOn.AuthSession.xml \
     gsignond-dbus-identity-doc-gen-com.google.code.AccountsSSO.gSingleSignOn.Identity.xml \
-    gsignond-dbus-signonui-doc-gen-org.tizen.SSO.singlesignonui.xml \
     gsignond-dbus-remote-plugin-doc-gen-com.google.code.AccountsSSO.gSingleSignOn.RemotePlugin.xml \
     $(NULL)
 
@@ -47,14 +44,6 @@ gsignond-dbus-identity-gen.c gsignond-dbus-identity-gen.h : $(INTERFACES_DIR)/co
        --generate-docbook gsignond-dbus-identity-doc-gen     \
        $<
 
-gsignond-dbus-signonui-gen.c gsignond-dbus-signonui-gen.h : $(INTERFACES_DIR)/org.tizen.SSO.singlesignonui.xml
-       gdbus-codegen                                       \
-       --interface-prefix org.tizen.SSO                 \
-       --c-namespace GSignondDbus                       \
-       --generate-c-code  gsignond-dbus-signonui-gen    \
-       --generate-docbook gsignond-dbus-signonui-doc-gen\
-       $<
-
 gsignond-dbus-remote-plugin-gen.c gsignond-dbus-remote-plugin-gen.h : $(INTERFACES_DIR)/com.google.code.AccountsSSO.gSingleSignOn.RemotePlugin.xml
        gdbus-codegen                                       \
        --interface-prefix $(DBUS_INTERFACE_PREFIX)      \
@@ -117,7 +106,6 @@ dbusinterfaces_DATA = \
     $(INTERFACES_DIR)/com.google.code.AccountsSSO.gSingleSignOn.AuthService.xml \
     $(INTERFACES_DIR)/com.google.code.AccountsSSO.gSingleSignOn.AuthSession.xml \
     $(INTERFACES_DIR)/com.google.code.AccountsSSO.gSingleSignOn.Identity.xml \
-    $(INTERFACES_DIR)/org.tizen.SSO.singlesignonui.xml \
     $(INTERFACES_DIR)/com.google.code.AccountsSSO.gSingleSignOn.RemotePlugin.xml
 
 EXTRA_DIST = interfaces
index 649178f..9668bce 100644 (file)
@@ -87,7 +87,6 @@ am__objects_2 =  \
        libgsignond_dbus_glue_la-gsignond-dbus-auth-service-gen.lo \
        libgsignond_dbus_glue_la-gsignond-dbus-auth-session-gen.lo \
        libgsignond_dbus_glue_la-gsignond-dbus-identity-gen.lo \
-       libgsignond_dbus_glue_la-gsignond-dbus-signonui-gen.lo \
        libgsignond_dbus_glue_la-gsignond-dbus-remote-plugin-gen.lo \
        $(am__objects_1)
 am_libgsignond_dbus_glue_la_OBJECTS = $(am__objects_2)
@@ -101,7 +100,6 @@ libgsignond_dbus_la_DEPENDENCIES = libgsignond-dbus-glue.la \
 am__objects_3 = libgsignond_dbus_la-gsignond-dbus-auth-service-gen.lo \
        libgsignond_dbus_la-gsignond-dbus-auth-session-gen.lo \
        libgsignond_dbus_la-gsignond-dbus-identity-gen.lo \
-       libgsignond_dbus_la-gsignond-dbus-signonui-gen.lo \
        libgsignond_dbus_la-gsignond-dbus-remote-plugin-gen.lo \
        $(am__objects_1)
 am_libgsignond_dbus_la_OBJECTS = $(am__objects_3) \
@@ -295,8 +293,6 @@ DBUS_BUILT_SOURCES = \
     gsignond-dbus-auth-session-gen.h \
     gsignond-dbus-identity-gen.c \
     gsignond-dbus-identity-gen.h \
-    gsignond-dbus-signonui-gen.c \
-    gsignond-dbus-signonui-gen.h \
     gsignond-dbus-remote-plugin-gen.c \
     gsignond-dbus-remote-plugin-gen.h \
     $(NULL)
@@ -305,7 +301,6 @@ DBUS_BUILT_DOCS = \
     gsignond-dbus-auth-service-doc-gen-com.google.code.AccountsSSO.gSingleSignOn.AuthService.xml \
     gsignond-dbus-auth-session-doc-gen-com.google.code.AccountsSSO.gSingleSignOn.AuthSession.xml \
     gsignond-dbus-identity-doc-gen-com.google.code.AccountsSSO.gSingleSignOn.Identity.xml \
-    gsignond-dbus-signonui-doc-gen-org.tizen.SSO.singlesignonui.xml \
     gsignond-dbus-remote-plugin-doc-gen-com.google.code.AccountsSSO.gSingleSignOn.RemotePlugin.xml \
     $(NULL)
 
@@ -361,7 +356,6 @@ dbusinterfaces_DATA = \
     $(INTERFACES_DIR)/com.google.code.AccountsSSO.gSingleSignOn.AuthService.xml \
     $(INTERFACES_DIR)/com.google.code.AccountsSSO.gSingleSignOn.AuthSession.xml \
     $(INTERFACES_DIR)/com.google.code.AccountsSSO.gSingleSignOn.Identity.xml \
-    $(INTERFACES_DIR)/org.tizen.SSO.singlesignonui.xml \
     $(INTERFACES_DIR)/com.google.code.AccountsSSO.gSingleSignOn.RemotePlugin.xml
 
 EXTRA_DIST = interfaces
@@ -445,7 +439,6 @@ distclean-compile:
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgsignond_dbus_glue_la-gsignond-dbus-auth-session-gen.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgsignond_dbus_glue_la-gsignond-dbus-identity-gen.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgsignond_dbus_glue_la-gsignond-dbus-remote-plugin-gen.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgsignond_dbus_glue_la-gsignond-dbus-signonui-gen.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgsignond_dbus_la-gsignond-dbus-auth-service-adapter.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgsignond_dbus_la-gsignond-dbus-auth-service-gen.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgsignond_dbus_la-gsignond-dbus-auth-session-adapter.Plo@am__quote@
@@ -455,7 +448,6 @@ distclean-compile:
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgsignond_dbus_la-gsignond-dbus-remote-plugin-gen.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgsignond_dbus_la-gsignond-dbus-server.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgsignond_dbus_la-gsignond-dbus-signonui-adapter.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgsignond_dbus_la-gsignond-dbus-signonui-gen.Plo@am__quote@
 
 .c.o:
 @am__fastdepCC_TRUE@   $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
@@ -502,13 +494,6 @@ libgsignond_dbus_glue_la-gsignond-dbus-identity-gen.lo: gsignond-dbus-identity-g
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgsignond_dbus_glue_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libgsignond_dbus_glue_la-gsignond-dbus-identity-gen.lo `test -f 'gsignond-dbus-identity-gen.c' || echo '$(srcdir)/'`gsignond-dbus-identity-gen.c
 
-libgsignond_dbus_glue_la-gsignond-dbus-signonui-gen.lo: gsignond-dbus-signonui-gen.c
-@am__fastdepCC_TRUE@   $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgsignond_dbus_glue_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libgsignond_dbus_glue_la-gsignond-dbus-signonui-gen.lo -MD -MP -MF $(DEPDIR)/libgsignond_dbus_glue_la-gsignond-dbus-signonui-gen.Tpo -c -o libgsignond_dbus_glue_la-gsignond-dbus-signonui-gen.lo `test -f 'gsignond-dbus-signonui-gen.c' || echo '$(srcdir)/'`gsignond-dbus-signonui-gen.c
-@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/libgsignond_dbus_glue_la-gsignond-dbus-signonui-gen.Tpo $(DEPDIR)/libgsignond_dbus_glue_la-gsignond-dbus-signonui-gen.Plo
-@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='gsignond-dbus-signonui-gen.c' object='libgsignond_dbus_glue_la-gsignond-dbus-signonui-gen.lo' libtool=yes @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgsignond_dbus_glue_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libgsignond_dbus_glue_la-gsignond-dbus-signonui-gen.lo `test -f 'gsignond-dbus-signonui-gen.c' || echo '$(srcdir)/'`gsignond-dbus-signonui-gen.c
-
 libgsignond_dbus_glue_la-gsignond-dbus-remote-plugin-gen.lo: gsignond-dbus-remote-plugin-gen.c
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgsignond_dbus_glue_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libgsignond_dbus_glue_la-gsignond-dbus-remote-plugin-gen.lo -MD -MP -MF $(DEPDIR)/libgsignond_dbus_glue_la-gsignond-dbus-remote-plugin-gen.Tpo -c -o libgsignond_dbus_glue_la-gsignond-dbus-remote-plugin-gen.lo `test -f 'gsignond-dbus-remote-plugin-gen.c' || echo '$(srcdir)/'`gsignond-dbus-remote-plugin-gen.c
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/libgsignond_dbus_glue_la-gsignond-dbus-remote-plugin-gen.Tpo $(DEPDIR)/libgsignond_dbus_glue_la-gsignond-dbus-remote-plugin-gen.Plo
@@ -537,13 +522,6 @@ libgsignond_dbus_la-gsignond-dbus-identity-gen.lo: gsignond-dbus-identity-gen.c
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgsignond_dbus_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libgsignond_dbus_la-gsignond-dbus-identity-gen.lo `test -f 'gsignond-dbus-identity-gen.c' || echo '$(srcdir)/'`gsignond-dbus-identity-gen.c
 
-libgsignond_dbus_la-gsignond-dbus-signonui-gen.lo: gsignond-dbus-signonui-gen.c
-@am__fastdepCC_TRUE@   $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgsignond_dbus_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libgsignond_dbus_la-gsignond-dbus-signonui-gen.lo -MD -MP -MF $(DEPDIR)/libgsignond_dbus_la-gsignond-dbus-signonui-gen.Tpo -c -o libgsignond_dbus_la-gsignond-dbus-signonui-gen.lo `test -f 'gsignond-dbus-signonui-gen.c' || echo '$(srcdir)/'`gsignond-dbus-signonui-gen.c
-@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/libgsignond_dbus_la-gsignond-dbus-signonui-gen.Tpo $(DEPDIR)/libgsignond_dbus_la-gsignond-dbus-signonui-gen.Plo
-@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='gsignond-dbus-signonui-gen.c' object='libgsignond_dbus_la-gsignond-dbus-signonui-gen.lo' libtool=yes @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgsignond_dbus_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libgsignond_dbus_la-gsignond-dbus-signonui-gen.lo `test -f 'gsignond-dbus-signonui-gen.c' || echo '$(srcdir)/'`gsignond-dbus-signonui-gen.c
-
 libgsignond_dbus_la-gsignond-dbus-remote-plugin-gen.lo: gsignond-dbus-remote-plugin-gen.c
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgsignond_dbus_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libgsignond_dbus_la-gsignond-dbus-remote-plugin-gen.lo -MD -MP -MF $(DEPDIR)/libgsignond_dbus_la-gsignond-dbus-remote-plugin-gen.Tpo -c -o libgsignond_dbus_la-gsignond-dbus-remote-plugin-gen.lo `test -f 'gsignond-dbus-remote-plugin-gen.c' || echo '$(srcdir)/'`gsignond-dbus-remote-plugin-gen.c
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/libgsignond_dbus_la-gsignond-dbus-remote-plugin-gen.Tpo $(DEPDIR)/libgsignond_dbus_la-gsignond-dbus-remote-plugin-gen.Plo
@@ -882,14 +860,6 @@ gsignond-dbus-identity-gen.c gsignond-dbus-identity-gen.h : $(INTERFACES_DIR)/co
        --generate-docbook gsignond-dbus-identity-doc-gen     \
        $<
 
-gsignond-dbus-signonui-gen.c gsignond-dbus-signonui-gen.h : $(INTERFACES_DIR)/org.tizen.SSO.singlesignonui.xml
-       gdbus-codegen                                       \
-       --interface-prefix org.tizen.SSO                 \
-       --c-namespace GSignondDbus                       \
-       --generate-c-code  gsignond-dbus-signonui-gen    \
-       --generate-docbook gsignond-dbus-signonui-doc-gen\
-       $<
-
 gsignond-dbus-remote-plugin-gen.c gsignond-dbus-remote-plugin-gen.h : $(INTERFACES_DIR)/com.google.code.AccountsSSO.gSingleSignOn.RemotePlugin.xml
        gdbus-codegen                                       \
        --interface-prefix $(DBUS_INTERFACE_PREFIX)      \
index db3398f..155348c 100644 (file)
  */
 
 #include "gsignond-dbus-signonui-adapter.h"
-#include "gsignond-dbus-signonui-gen.h"
 #include "gsignond/gsignond-log.h"
 #include "gsignond-dbus.h"
 
 struct _GSignondDbusSignonuiAdapterPrivate
 {
     GDBusConnection *connection;
-    GSignondDbusSinglesignonui *proxy;
+    GDBusProxy *proxy;
+    gulong connection_close_signal_id;
 };
 
 G_DEFINE_TYPE (GSignondDbusSignonuiAdapter, gsignond_dbus_signonui_adapter, G_TYPE_OBJECT)
@@ -58,6 +58,11 @@ _dispose (GObject *object)
 {
     GSignondDbusSignonuiAdapter *self = GSIGNOND_DBUS_SIGNONUI_ADAPTER (object);
 
+    if (self->priv->connection_close_signal_id) {
+        g_signal_handler_disconnect (self->priv->connection, self->priv->connection_close_signal_id);
+        self->priv->connection_close_signal_id = 0;
+    }
+
     if (self->priv->connection) {
         g_object_unref (self->priv->connection);
         self->priv->connection = NULL;
@@ -104,32 +109,139 @@ gsignond_dbus_signonui_adapter_init (GSignondDbusSignonuiAdapter *self)
     self->priv = GSIGNOND_DBUS_SIGNONUI_ADAPTER_GET_PRIV(self);
     self->priv->connection = 0;
     self->priv->proxy = 0;
+    self->priv->connection_close_signal_id = 0;
+}
+
+static void
+_on_proxy_signal (GSignondDbusSignonuiAdapter *adapter,
+                  gchar *sender_name,
+                  gchar *signal_name,
+                  GVariant *params,
+                  gpointer user_data)
+{
+    gchar *request_id = NULL;
+
+    g_return_if_fail (adapter && signal_name && params);
+
+    /* Ignore other than 'refresh' signal */
+    if (g_strcmp0(signal_name, "refresh") != 0) return ;
+
+    if (!g_variant_is_of_type (params, G_VARIANT_TYPE_TUPLE)) {
+        WARN ("Expected 'tuple' type but got '%s' type", 
+                    g_variant_get_type_string (params));
+        return ;
+    }
+
+    g_variant_get (params, "(s)", &request_id);
+
+    if (request_id) {
+        g_signal_emit (adapter, _signals[SIG_REFRESH], 0, request_id);
+        g_free (request_id);
+    }
+}
+
+static void
+_on_connection_closed (GSignondDbusSignonuiAdapter *adapter,
+                       gboolean remote_peer_vanished, 
+                       GError *error,
+                       gpointer user_data)
+{
+    g_return_if_fail (adapter);
+
+    DBG("UI Connection closed...");
+
+    g_signal_handler_disconnect (adapter->priv->connection, adapter->priv->connection_close_signal_id);
+    adapter->priv->connection_close_signal_id = 0;
+
+    g_clear_object (&adapter->priv->connection);
+    g_clear_object (&adapter->priv->proxy);
+}
+
+static gboolean
+_setup_ui_connection (GSignondDbusSignonuiAdapter *adapter)
+{
+    GError *err = NULL;
+    GVariant *reply = NULL;
+    gchar *ui_server_address = NULL;
+    GDBusConnection *session_bus = NULL;
+
+    g_return_val_if_fail (adapter, FALSE);
+
+    if (adapter->priv->connection) return TRUE;
+
+    session_bus = g_bus_get_sync (G_BUS_TYPE_SESSION, NULL, &err);
+    if (err) {
+        WARN ("Error getting session bus :%s", err->message);
+        goto fail;
+    }
+
+    reply = g_dbus_connection_call_sync (session_bus, SIGNONUI_SERVICE, SIGNONUI_OBJECTPATH,
+                SIGNONUI_IFACE, "getBusAddress", g_variant_new ("()"), 
+                G_VARIANT_TYPE_TUPLE, G_DBUS_CALL_FLAGS_NONE, -1, NULL, &err);
+    if (!reply) {
+        WARN ("Failed to get signon ui bus address : %s", err->message);
+        goto fail;
+    }
+
+    g_variant_get(reply, "(s)", &ui_server_address);
+
+    DBG ("Connecting to UI Server at : %s", ui_server_address);
+
+    adapter->priv->connection = g_dbus_connection_new_for_address_sync (ui_server_address,
+            G_DBUS_CONNECTION_FLAGS_AUTHENTICATION_CLIENT, NULL, NULL, &err);
+    g_free (ui_server_address);
+    if (err) {
+        WARN ("Failed to connect UI server at address '%s' : %s", ui_server_address,
+                err->message);
+        goto fail;
+    }
+
+    adapter->priv->connection_close_signal_id = 
+            g_signal_connect_swapped (adapter->priv->connection, 
+                "closed", G_CALLBACK(_on_connection_closed), adapter);
+
+    adapter->priv->proxy = g_dbus_proxy_new_sync (adapter->priv->connection,
+           G_DBUS_PROXY_FLAGS_DO_NOT_LOAD_PROPERTIES,
+           NULL,
+           NULL,
+           SIGNONUI_DIALOG_OBJECTPATH,
+           SIGNONUI_DIALOG_IFACE,
+           NULL,
+           &err);
+    if (err) {
+        WARN ("failed to get ui object : %s", err->message);
+        goto fail;
+    }
+
+    g_signal_connect_swapped (adapter->priv->proxy, "g-signal", G_CALLBACK (_on_proxy_signal), adapter);
+
+    return TRUE;
+fail:
+    if (err) g_error_free (err);
+    return FALSE;
 }
 
 static void
 _on_query_dialog_ready (GObject *proxy, GAsyncResult *res, gpointer user_data)
 {
     GError *error = NULL;
-    GVariant *out_params = NULL;
+    GVariant *reply = NULL;
     _SignonuiDbusInfo *info = (_SignonuiDbusInfo *)user_data;
 
-    gsignond_dbus_singlesignonui_call_query_dialog_finish (
-            GSIGNOND_DBUS_SINGLESIGNONUI (proxy), &out_params, res, &error);
+    reply = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, &error);
 
-    if (!info) {
-        ERR ("Memory curropted");
-        return;
-    }
-
-    if (info->cb) {
-        ((GSignondDbusSignonuiQueryDialogCb)info->cb) (out_params, error, info->data);
+    if (info) {
+        if (info->cb) {
+            GVariant *out_params = NULL; g_variant_get (reply, "(@a{sv})", &out_params);
+            ((GSignondDbusSignonuiQueryDialogCb)info->cb) (out_params, error, info->data);
+            g_variant_unref (out_params);
+        }
         g_object_unref (info->adapter);
-        g_free (info);
-    }
-    else {
-        if (error) g_error_free (error);
-        if (out_params) g_variant_unref (out_params);
+        g_slice_free (_SignonuiDbusInfo, info);
     }
+    
+    if (error) g_error_free (error);
+    if (reply) g_variant_unref (reply);
 }
 
 gboolean
@@ -142,13 +254,19 @@ gsignond_dbus_signonui_adapter_query_dialog (GSignondDbusSignonuiAdapter *adapte
         WARN ("assert (!adapter ||!GSIGNOND_IS_DBUS_SIGNONUI_ADAPTER (adapter)) failed"); 
         return FALSE;
     }
-    _SignonuiDbusInfo *info = g_new0 (_SignonuiDbusInfo, 1);
+    if (!adapter->priv->proxy && !_setup_ui_connection(adapter)) {
+        WARN ("Failed to setup ui connection");
+        return FALSE;
+    }
+    _SignonuiDbusInfo *info = g_slice_new0 (_SignonuiDbusInfo);
 
     info->adapter = g_object_ref (adapter);
     info->cb = callback;
     info->data = user_data;
-    gsignond_dbus_singlesignonui_call_query_dialog (adapter->priv->proxy, params, NULL,
-                _on_query_dialog_ready, (gpointer)info);
+
+    g_dbus_proxy_call (adapter->priv->proxy, "queryDialog",
+            g_variant_new ("(a{sv})", params), G_DBUS_CALL_FLAGS_NONE, -1, NULL,
+            _on_query_dialog_ready, (gpointer)info);
 
     return TRUE;
 }
@@ -157,23 +275,20 @@ static void
 _on_refresh_dialog_ready (GObject *proxy, GAsyncResult *res, gpointer user_data)
 {
     GError *error = NULL;
+    GVariant *reply = NULL;
     _SignonuiDbusInfo *info = (_SignonuiDbusInfo *)user_data;
 
-    gsignond_dbus_singlesignonui_call_refresh_dialog_finish (
-            GSIGNOND_DBUS_SINGLESIGNONUI (proxy), res, &error);
-
-    if (!info) {
-        ERR ("Memory curropted");
-        g_error_free (error);
-        return;
-    }
+    reply = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, &error);
 
-    if (info->cb) {
-        ((GSignondDbusSignonuiRefreshDialogCb)info->cb) (error, info->data);
+    if (info) {
+        if (info->cb)
+            ((GSignondDbusSignonuiRefreshDialogCb)info->cb) (error, info->data);
         g_object_unref (info->adapter);
-        g_free (info);
+        g_slice_free (_SignonuiDbusInfo, info);
     }
-    else if (error) g_error_free (error);
+   
+    if (reply) g_variant_unref (reply);
+    if (error) g_error_free (error);
 }
 
 gboolean
@@ -186,13 +301,20 @@ gsignond_dbus_signonui_adapter_refresh_dialog (GSignondDbusSignonuiAdapter *adap
         WARN ("assert (!adapter ||!GSIGNOND_IS_DBUS_SIGNONUI_ADAPTER (adapter)) failed"); 
         return FALSE;
     }
-    _SignonuiDbusInfo *info = g_new0 (_SignonuiDbusInfo, 1);
+    if (!adapter->priv->proxy && !_setup_ui_connection(adapter)) {
+        WARN ("Failed to setup ui connection");
+        return FALSE;
+    }
+
+    _SignonuiDbusInfo *info = g_slice_new0 (_SignonuiDbusInfo);
 
     info->adapter = g_object_ref (adapter);
     info->cb = callback;
     info->data = user_data;
-    gsignond_dbus_singlesignonui_call_refresh_dialog (adapter->priv->proxy, params, NULL,
-                _on_refresh_dialog_ready, (gpointer)info);
+
+    g_dbus_proxy_call (adapter->priv->proxy, "refreshDialog",
+            g_variant_new ("(a{sv})", params), G_DBUS_CALL_FLAGS_NONE, -1, NULL,
+            _on_refresh_dialog_ready, (gpointer)info);
 
     return TRUE;
 }
@@ -201,23 +323,20 @@ static void
 _on_cancel_request_ready (GObject *proxy, GAsyncResult *res, gpointer user_data)
 {
     GError *error = NULL;
+    GVariant *reply = NULL;
     _SignonuiDbusInfo *info = (_SignonuiDbusInfo *)user_data;
 
-    gsignond_dbus_singlesignonui_call_cancel_ui_request_finish (
-            GSIGNOND_DBUS_SINGLESIGNONUI (proxy), res, &error);
-
-    if (!info) {
-        ERR ("Memory curropted");
-        g_error_free (error);
-        return;
-    }
+    reply = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, &error);
 
-    if (info->cb) {
-        ((GSignondDbusSignonuiCancelRequestCb)info->cb) (error, info->data);
+    if (info) {
+        if (info->cb)
+            ((GSignondDbusSignonuiCancelRequestCb)info->cb) (error, info->data);
         g_object_unref (info->adapter);
-        g_free (info);
+        g_slice_free (_SignonuiDbusInfo, info);
     }
-    else if (error) g_error_free (error);
+
+    if (reply) g_variant_unref (reply);
+    if (error) g_error_free (error);
 }
 
 gboolean
@@ -230,28 +349,21 @@ gsignond_dbus_signonui_adapter_cancel_request (GSignondDbusSignonuiAdapter *adap
         WARN ("assert (!adapter ||!GSIGNOND_IS_DBUS_SIGNONUI_ADAPTER (adapter)) failed"); 
         return FALSE;
     }
-    _SignonuiDbusInfo *info = g_new0 (_SignonuiDbusInfo, 1);
+    if (!adapter->priv->proxy && !_setup_ui_connection(adapter)) {
+        WARN ("Failed to setup ui connection");
+        return FALSE;
+    }
+    _SignonuiDbusInfo *info = g_slice_new0 (_SignonuiDbusInfo);
 
     info->adapter = g_object_ref (adapter);
     info->cb = callback;
     info->data = user_data;
-    gsignond_dbus_singlesignonui_call_cancel_ui_request (adapter->priv->proxy, request_id, NULL,
-                _on_cancel_request_ready, (gpointer)info);
 
-    return TRUE;
-}
-
-static void
-_on_refresh_request (GSignondDbusSignonuiAdapter *proxy, gchar *request_id, gpointer userdata)
-{
-    GSignondDbusSignonuiAdapter *adapter = GSIGNOND_DBUS_SIGNONUI_ADAPTER (userdata);
-
-    if (!adapter) {
-        ERR ("DBus-Error: memroy curroption");
-        return;
-    }
+    g_dbus_proxy_call (adapter->priv->proxy, "cancelUiRequest",
+            g_variant_new ("(s)", request_id), G_DBUS_CALL_FLAGS_NONE, -1, NULL,
+            _on_cancel_request_ready, (gpointer)info);
 
-    g_signal_emit (adapter, _signals[SIG_REFRESH], 0, request_id);
+    return TRUE;
 }
 
 /**
@@ -264,34 +376,13 @@ _on_refresh_request (GSignondDbusSignonuiAdapter *proxy, gchar *request_id, gpoi
 GSignondDbusSignonuiAdapter * 
 gsignond_dbus_signonui_adapter_new ()
 {
-    GError *err = NULL;
     GSignondDbusSignonuiAdapter *adapter = GSIGNOND_DBUS_SIGNONUI_ADAPTER (
         g_object_new (GSIGNOND_TYPE_DBUS_SIGNONUI_ADAPTER, NULL));
-    
-    adapter->priv->connection = g_bus_get_sync (G_BUS_TYPE_SESSION, NULL, &err);
-    if (err) {
-        ERR ("Error getting session bus :%s", err->message);
-        goto fail;
-    }
 
-    adapter->priv->proxy = gsignond_dbus_singlesignonui_proxy_new_sync (adapter->priv->connection,
-           G_DBUS_PROXY_FLAGS_DO_NOT_LOAD_PROPERTIES, 
-           SIGNONUI_SERVICE,
-           SIGNONUI_OBJECTPATH,
-           NULL,
-           &err);
-    if (err) {
-        WARN ("failed to get ui object : %s", err->message);
-        goto fail;
+    if (!_setup_ui_connection (adapter)) {
+        g_object_unref (adapter);
+        return NULL;
     }
 
-    g_signal_connect (adapter->priv->proxy, "refresh", G_CALLBACK (_on_refresh_request), adapter);
-
     return adapter;
-
-fail:
-    if (err) g_error_free (err);
-    g_object_unref (adapter);
-    return NULL;
 }
-
index 82fb529..8da81ce 100644 (file)
 #define GSIGNOND_AUTH_SESSION_INTERFACE  GSIGNOND_SERVICE_PREFIX ".AuthSession"
 #define GSIGNOND_PLUGIN_OBJECTPATH       GSIGNOND_DAEMON_OBJECTPATH "/Plugin"
 
-#define SIGNONUI_SERVICE                 "org.tizen.SSO"
-#define SIGNONUI_OBJECTPATH              "/org/tizen/SSO/SignonUi"
-#define SIGNONUI_INTERFACE               "org.tizen.SSO.singlesignonui"
+#define SIGNONUI_SERVICE                 "com.google.code.AccountsSSO.gSingleSignOn.UI"
+#define SIGNONUI_OBJECTPATH              "/"
+#define SIGNONUI_IFACE                   "com.google.code.AccountsSSO.gSingleSignOn.UI"
+#define SIGNONUI_DIALOG_IFACE            "com.google.code.AccountsSSO.gSingleSignOn.UI.Dialog"
+#define SIGNONUI_DIALOG_OBJECTPATH       "/Dialog"
 
 #endif /* __GSIGNOND_DBUS_H_ */
similarity index 100%
rename from packaging/archive.sh
rename to tools/archive.sh
diff --git a/tools/prepare-tizen.sh b/tools/prepare-tizen.sh
new file mode 100755 (executable)
index 0000000..d4329b2
--- /dev/null
@@ -0,0 +1,22 @@
+# $1 corresponds to gsignond-<ver>.tar.gz 
+# $2 is the destination folder
+# NOTE: all the files will be extracted under destination folder (instead of destfolder/gsignond-<version>)
+
+if [ $# -ne 2 -o -z "$1" -o -z "$2" ]; then
+    echo "Invalid arguments supplied"
+    echo "Usage: ./prepare-tizen.sh gsignond-<version>.tar.gz destfolder"
+    echo "NOTE: All the files will be extracted under destfolder (instead of destfolder/gsignond-<version>)"
+    exit
+fi
+
+currdir = `pwd`;
+echo "CURR dir = $currdir"
+
+mkdir -p $2 && \
+tar -xzvf $1 -C $2 --strip-components 1 && \
+cd $2 && \
+mkdir -p packaging && \
+cd packaging && \
+cp -f ../dists/rpm/gsignond-tizen.spec gsignond.spec &&
+cp -f ../dists/rpm/gsignond-tizen.changes gsignond.changes;
+
diff --git a/tools/run-tests.sh b/tools/run-tests.sh
new file mode 100755 (executable)
index 0000000..0d271d4
--- /dev/null
@@ -0,0 +1,16 @@
+#Environment variables for the tests
+export G_MESSAGES_DEBUG=all
+export SSO_STORAGE_PATH=/tmp/gsignond
+export SSO_SECRET_PATH=/tmp/gsignond
+
+rm -rf "$SSO_STORAGE_PATH"
+
+make distclean;
+autoreconf -fi;
+./configure --enable-dbus-type=session --enable-debug && \
+make -j4 && make check && make distclean && \
+./configure --enable-dbus-type=system --enable-debug && \
+make -j4 && make check && make distclean && \
+./configure --enable-dbus-type=p2p --enable-debug && \
+make -j4 && make check && make distclean;
+
diff --git a/tools/setup-and-start-daemon.sh b/tools/setup-and-start-daemon.sh
new file mode 100755 (executable)
index 0000000..a7ecd8b
--- /dev/null
@@ -0,0 +1,54 @@
+SRC_HOME="."
+with_duma=0
+with_gdb=0
+
+if test $# -ge 1 ; then
+    if test "$1" == "--with-duma" ; then
+        with_duma=1
+        with_gdb=1
+    else
+        with_duma=0
+        if test "$1" == "--with-gdb" ; then
+            with_gdb=1
+        fi
+    fi
+fi
+
+killall gsignond
+
+export SSO_SECRET_PATH="/tmp/gsignond"
+export SSO_STORAGE_PATH="/tmp/gsignond"
+if [ -f "$SRC_HOME/test/daemon/.libs/lt-daemontest" ] ; then
+export SSO_KEYCHAIN_SYSCTX="$SRC_HOME/test/daemon/.libs/lt-daemontest"
+else
+export SSO_KEYCHAIN_SYSCTX="$SRC_HOME/test/daemon/.libs/daemontest"
+fi
+export SSO_BIN_DIR=$SRC_HOME/src/daemon/.libs
+export SSO_PLUGINS_DIR=$SRC_HOME/src/plugins/.libs 
+export LD_LIBRARY_PATH="$SRC_HOME/src/daemon/plugins/plugind/.libs:$SRC_HOME/src/daemon/plugins/.libs"
+export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$SRC_HOME/src/common/.libs:$SRC_HOME/src/common/db/.libs:$SRC_HOME/src/daemon/.libs:$SRC_HOME/src/daemon/db/.libs:$SRC_HOME/src/daemon/dbus/.libs"
+export G_MESSAGES_DEBUG="all"
+
+# Clean db
+rm -rf /tmp/gsignond
+
+echo "--------------------------"
+echo "with_duma:  $with_duma"
+echo "with_gdb:  $with_gdb"
+echo "--------------------------"
+if test $with_duma -eq 1 ; then
+    export G_SLICE="always-malloc"
+    export DUMA_PROTECT_FREE=1
+    export DUMA_PROTECT_BELOW=1
+
+    LD_PRELOAD="libduma.so" $SRC_HOME/src/daemon/.libs/gsignond  &
+
+    if test $with_gdb -eq 1 ; then
+        sudo gdb --pid=`pidof gsignond`
+    fi
+elif test $with_gdb -eq 1 ; then
+    gdb $SRC_HOME/src/daemon/.libs/gsignond
+else
+    $SRC_HOME/src/daemon/.libs/gsignond
+fi
+