Hello community,

here is the log from the commit of package konkretcmpi for openSUSE:Factory 
checked in at 2014-05-02 13:58:21
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/konkretcmpi (Old)
 and      /work/SRC/openSUSE:Factory/.konkretcmpi.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "konkretcmpi"

Changes:
--------
--- /work/SRC/openSUSE:Factory/konkretcmpi/konkretcmpi.changes  2014-02-12 
07:03:05.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.konkretcmpi.new/konkretcmpi.changes     
2014-05-02 13:58:22.000000000 +0200
@@ -1,0 +2,20 @@
+Mon Apr 28 12:31:14 UTC 2014 - kkae...@suse.com
+
+- Honor the fact that string properties with EmbeddedInstance
+  qualifier are handled as instance properties.
+  Fixes compatibility issue with cim-schema 2.40.0
+  Add 0001-Honor-that-string-properties-with-EmbeddedInstance-q.patch
+
+-------------------------------------------------------------------
+Wed Apr 23 13:29:08 UTC 2014 - kkae...@suse.com
+
+- Fix devel dependencies (cmake, sblim-cmpi-devel, cim-schema)
+- Drop cim-server from requires.
+
+-------------------------------------------------------------------
+Wed Apr 23 13:26:28 UTC 2014 - kkae...@suse.com
+
+- Follow shared library policy
+  rename 'konkretcmpi' to 'libkonkretcmpi0'
+
+-------------------------------------------------------------------

New:
----
  0001-Honor-that-string-properties-with-EmbeddedInstance-q.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ konkretcmpi.spec ++++++
--- /var/tmp/diff_new_pack.Ola27f/_old  2014-05-02 13:58:23.000000000 +0200
+++ /var/tmp/diff_new_pack.Ola27f/_new  2014-05-02 13:58:23.000000000 +0200
@@ -17,6 +17,8 @@
 
 
 Name:           konkretcmpi
+%define         libname   lib%{name}
+%define         libsoname %{libname}0
 Version:        0.9.2
 Release:        0
 BuildRequires:  cmake
@@ -32,12 +34,6 @@
 Group:          Development/Libraries/C and C++
 # This is necessary to build the RPM as a non-root user.
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
-# "yes" is the default, but we put it here explicitly to avoid someone
-# setting it to "no"
-Requires:       cim-schema >= 2.17
-Requires:       cim-server
-Requires:       cmake
-Requires:       sblim-cmpi-devel
 #Source0:        
https://github.com/rnovacek/konkretcmpi/archive/%{version}/konkretcmpi-%{version}.tar.gz
 Source0:        konkretcmpi-%{version}.tar.gz
 # SWIG/Python on SLE 11 and below needs -classic switch, kkae...@suse.de
@@ -46,6 +42,10 @@
 # CMake on SLE10 defines PYTHON_INCLUDE_PATH, not PYTHON_INCLUDE_DIR, 
kkae...@suse.de
 # CMake on SLE10 does not define PYTHON_VER, kkae...@suse.de
 Patch1:         sle10.patch
+# PATCH-FIX-UPSTREAM
+# Fix for cim-schema 2.40.0 compatiblity
+# See https://github.com/rnovacek/konkretcmpi/issues/3
+Patch2:         0001-Honor-that-string-properties-with-EmbeddedInstance-q.patch
 
 %description
 An open-source tool for rapidly developing CMPI providers in the C
@@ -54,19 +54,32 @@
 definitions and by providing default implementations for many of the
 provider operations.
 
+%package -n %{libsoname}
+Summary:        Shared library of konkretcmpi
+Group:          System/Libraries
+Provides:       %{name} <= %{version}
+Obsoletes:      %{name} <= %{version}
+
+%description -n %{libsoname}
+This package contains the shared libkonkrekcmpi library.
+
 %package devel
-Requires:       %{name} = %{version}
 Summary:        Development files for konkretcmpi
 Group:          Development/Libraries/C and C++
+Requires:       cim-schema >= 2.17
+Requires:       cmake
+Requires:       sblim-cmpi-devel
 
 %description devel
-Development files for konkretcmpi
-
+An open-source tool for rapidly developing CMPI providers in the C
+programming language. KonkretCMPI makes CMPI provider development
+easier by generating type-safe concrete CIM interfaces from MOF
+definitions and by providing default implementations for many of the
+provider operations.
 
 %package python
 Summary:        Python bindings for konkretcmpi
 Group:          Development/Libraries/Python
-Requires:       %{name} = %{version}-%{release}
 %if 0%{?suse_version}
 %{!?python_sitelib: %global python_sitelib %(%{__python} -c "from 
distutils.sysconfig import get_python_lib; print get_python_lib()")}
 %{!?python_sitearch: %global python_sitearch %(%{__python} -c "from 
distutils.sysconfig import get_python_lib; print get_python_lib(1)")}
@@ -86,6 +99,7 @@
 %if 0%{?suse_version} && 0%{?suse_version} < 1120
 %patch1 -p1
 %endif
+%patch2 -p1
 
 %build
 rm -rf build
@@ -115,15 +129,15 @@
 %clean
 %{__rm} -rf $RPM_BUILD_ROOT
 
-%post -p /sbin/ldconfig
+%post -n %{libsoname} -p /sbin/ldconfig
 
-%postun -p /sbin/ldconfig
+%postun -n %{libsoname} -p /sbin/ldconfig
 
-%files
+%files -n %{libsoname}
 %defattr(-,root,root)
 %{_libdir}/libkonkret.so.*
 %{_libdir}/libkonkretmof.so.*
-%doc README NEWS COPYING
+%doc README COPYING
 
 %files devel
 %defattr(-,root,root)

++++++ 0001-Honor-that-string-properties-with-EmbeddedInstance-q.patch ++++++
>From 518201dcf90f1d95765f8764549780233463c327 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Klaus=20K=C3=A4mpf?= <kkae...@suse.de>
Date: Mon, 28 Apr 2014 14:05:39 +0200
Subject: [PATCH] Honor that string properties with EmbeddedInstance qualifier
 are handled as Instances, also for Override

This mapping of string->instance happens _after_ Override features are
checked for compatibility. If one does the mapping before, konkrete
fails with "EmbeddedInstance qualifier allowed only on string
properties".

This fixes https://github.com/rnovacek/konkretcmpi/issues/3
---
 src/mof/MOF_Class_Decl.cpp | 32 +++++++++++++++++++++++++++++++-
 1 file changed, 31 insertions(+), 1 deletion(-)

diff --git a/src/mof/MOF_Class_Decl.cpp b/src/mof/MOF_Class_Decl.cpp
index 3d265de68b4e..09854517656e 100644
--- a/src/mof/MOF_Class_Decl.cpp
+++ b/src/mof/MOF_Class_Decl.cpp
@@ -171,7 +171,37 @@ static void _validate_feature_compatibility(
         MOF_Property_Decl* qq = (MOF_Property_Decl*)q;
 
         if (pp->data_type != qq->data_type)
-            MOF_error_printf(MESSAGE, p->name);
+        {
+            int embedded_instance = 0;
+
+            /* If this property is TOK_STRING and the parent is TOK_INSTANCE,
+             * then check if the EmbeddedInstance qualifier is set.
+             * In this case, data_type string will be mapped to instance later
+             * so allow it here.
+             */
+            if ((pp->data_type == TOK_STRING)
+                && (qq->data_type == TOK_INSTANCE))
+            {
+                for (MOF_Qualifier* qualifier = p->qualifiers; 
+                     qualifier;
+                     qualifier = (MOF_Qualifier*)qualifier->next)
+                {
+                    if (strcasecmp(qualifier->name, "EmbeddedInstance") == 0)
+                    {
+                        /* this string property defines actually an 
embedded_instance
+                         * so data_type string will actually match to instance
+                         */
+                        embedded_instance = 1;
+                        break;
+                    }
+                }
+            }
+            if (pp->data_type != qq->data_type
+                && embedded_instance == 0)
+            {
+                MOF_error_printf(MESSAGE, p->name);
+            }
+        }
 
         if (pp->array_index != qq->array_index)
             MOF_error_printf(MESSAGE, p->name);
-- 
1.8.4.5

-- 
To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org
For additional commands, e-mail: opensuse-commit+h...@opensuse.org

Reply via email to