Hello community, here is the log from the commit of package libkolabxml for openSUSE:Factory checked in at 2016-01-09 23:09:57 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/libkolabxml (Old) and /work/SRC/openSUSE:Factory/.libkolabxml.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libkolabxml" Changes: -------- --- /work/SRC/openSUSE:Factory/libkolabxml/libkolabxml.changes 2015-04-06 00:23:58.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.libkolabxml.new/libkolabxml.changes 2016-01-09 23:09:58.000000000 +0100 @@ -1,0 +2,14 @@ +Fri Aug 7 09:07:10 UTC 2015 - [email protected] + +- New upstream release 1.1.1 + - Qt5 support for the tests + +------------------------------------------------------------------- +Mon Apr 6 14:04:04 UTC 2015 - [email protected] + +- Add %bcond_with tests +- libqt4-devel is only needed for the tests +- Add %check section; only run %check when %{with tests} in on +- Set minversion for some of the build requirements + +------------------------------------------------------------------- Old: ---- libkolabxml-1.1.0.tar.gz New: ---- libkolabxml-1.1.1.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libkolabxml.spec ++++++ --- /var/tmp/diff_new_pack.PmKzhe/_old 2016-01-09 23:09:59.000000000 +0100 +++ /var/tmp/diff_new_pack.PmKzhe/_new 2016-01-09 23:09:59.000000000 +0100 @@ -21,12 +21,13 @@ %endif %bcond_without java %bcond_without mono +%bcond_with tests %global php_extdir %{_libdir}/php5/extensions %global php_confdir %{_sysconfdir}/php5/conf.d %define libname %{name}1 Name: libkolabxml -Version: 1.1.0 +Version: 1.1.1 Release: 0 Summary: Kolab XML Format Schema Definitions Library License: LGPL-3.0+ @@ -37,28 +38,38 @@ Patch0: libkolabxml-0.8.3_fix_uuid_includes_SLE.patch # PATCH-FIX-SLE libkolabxml-1.0.1_no-maybe-uninitialized.patch -- Fix php and python bindings on SLE 11 Patch2: libkolabxml-1.0.1_no-maybe-uninitialized.patch -BuildRequires: boost-devel +BuildRequires: boost-devel >= 1.4.1 BuildRequires: cmake >= 2.6 BuildRequires: gcc-c++ -%if %{with java} -BuildRequires: gcc-java -BuildRequires: java-openjdk -%endif BuildRequires: libcurl-devel -BuildRequires: libqt4-devel -BuildRequires: libxerces-c-devel -%if %{with mono} -BuildRequires: mono-devel -%endif +BuildRequires: libxerces-c-devel >= 3.0 BuildRequires: php-devel >= 5.3 BuildRequires: pkgconfig BuildRequires: python-devel BuildRequires: swig >= 2.0 -BuildRequires: xsd -BuildRoot: %{_tmppath}/%{name}-%{version}-build +BuildRequires: xsd >= 3.0 %if 0%{?suse_version} < 1140 BuildRequires: uuid-devel = 1.6.2 %endif +%if %{with java} +BuildRequires: gcc-java +BuildRequires: java-openjdk +%endif +%if %{with mono} +BuildRequires: mono-devel +%endif +%if %{with tests} +%if 0%{?suse_version} > 1314 +BuildRequires: extra-cmake-modules +BuildRequires: kdelibs4support-devel +BuildRequires: pkgconfig(Qt5Core) +BuildRequires: pkgconfig(Qt5Test) +%else +BuildRequires: libqt4-devel +%endif +%endif + +BuildRoot: %{_tmppath}/%{name}-%{version}-build %description Libkolabxml serves as a serialization/de-serialization library for the the Kolab XML Format @@ -209,7 +220,9 @@ # Tests require X server and net # no-undefined does not work as the php bindings are "magic" %cmake \ - -DCMAKE_EXE_LINKER_FLAGS=-Wl,--as-needed -DCMAKE_MODULE_LINKER_FLAGS=-Wl,--as-needed -DCMAKE_SHARED_LINKER_FLAGS=-Wl,--as-needed \ + -DCMAKE_EXE_LINKER_FLAGS=-Wl,--as-needed \ + -DCMAKE_MODULE_LINKER_FLAGS=-Wl,--as-needed \ + -DCMAKE_SHARED_LINKER_FLAGS=-Wl,--as-needed \ %if %{with java} -DJAVA_BINDINGS=TRUE -DJAVA_INSTALL_DIR=%{_jnidir} \ %endif @@ -218,7 +231,14 @@ %if %{with mono} -DCSHARP_BINDINGS=TRUE -DCSHARP_INSTALL_DIR=%{_libexecdir}/mono/ \ %endif +%if %{with tests} + -DBUILD_TESTS=TRUE \ +%if 0%{?suse_version} > 1314 + -DBUILD_QT5=TRUE \ +%endif +%else -DBUILD_TESTS=FALSE \ +%endif %if 0%{?suse_version} < 1310 -DCMAKE_INSTALL_PREFIX="%{_prefix}" \ -DLIB_INSTALL_DIR=%{_lib} \ @@ -244,6 +264,14 @@ extension=kolabformat.so EOF +%if %{with tests} +%check +export LD_LIBRARY_PATH=$(pwd)/build/src/ +cd build/ +ctest -V ||: +python src/python/test.py ||: +%endif + %post -n %{libname} -p /sbin/ldconfig %postun -n %{libname} -p /sbin/ldconfig ++++++ libkolabxml-1.1.0.tar.gz -> libkolabxml-1.1.1.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libkolabxml-1.1.0/CMakeLists.txt new/libkolabxml-1.1.1/CMakeLists.txt --- old/libkolabxml-1.1.0/CMakeLists.txt 2014-12-31 16:55:13.000000000 +0100 +++ new/libkolabxml-1.1.1/CMakeLists.txt 2015-07-31 10:52:28.000000000 +0200 @@ -14,6 +14,8 @@ option( PHP_BINDINGS "Build bindings for php" FALSE ) option( CSHARP_BINDINGS "Build bindings for csharp" FALSE ) option( JAVA_BINDINGS "Build bindings for java" FALSE ) +option( QT5_BUILD "Build libkolabxml using the Qt5 framework" FALSE) + set(Libkolabxml_MODULE_DIR ${Libkolabxml_SOURCE_DIR}/cmake/modules) @@ -43,9 +45,9 @@ set (Libkolabxml_VERSION_MAJOR 1) set (Libkolabxml_VERSION_MINOR 1) # Enable the full x.y.z version only for release versions -set (Libkolabxml_VERSION_PATCH 0) -#set (Libkolabxml_VERSION "${Libkolabxml_VERSION_MAJOR}.${Libkolabxml_VERSION_MINOR}.${Libkolabxml_VERSION_PATCH}" ) -set (Libkolabxml_VERSION "${Libkolabxml_VERSION_MAJOR}.${Libkolabxml_VERSION_MINOR}" ) +set (Libkolabxml_VERSION_PATCH 1) +set (Libkolabxml_VERSION "${Libkolabxml_VERSION_MAJOR}.${Libkolabxml_VERSION_MINOR}.${Libkolabxml_VERSION_PATCH}" ) +#set (Libkolabxml_VERSION "${Libkolabxml_VERSION_MAJOR}.${Libkolabxml_VERSION_MINOR}" ) set (Libkolabxml_VERSION_STRING ${CMAKE_PROJECT_NAME}-${Libkolabxml_VERSION}) set (KOLAB_FORMAT_VERSION "3.1.0") diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libkolabxml-1.1.0/autogen.sh new/libkolabxml-1.1.1/autogen.sh --- old/libkolabxml-1.1.0/autogen.sh 2014-12-31 16:55:13.000000000 +0100 +++ new/libkolabxml-1.1.1/autogen.sh 2015-07-31 10:52:28.000000000 +0200 @@ -50,11 +50,16 @@ fi # Rebuilds the entire foo in one go. One shot, one kill. -rm -rf build/ -mkdir -p build +if [ ${doprep} -eq 1 ]; then + rm -rf build/ + mkdir -p build +fi + cd build + if [ ${doprep} -eq 1 ]; then cmake \ + -DCMAKE_COLOR_MAKEFILE=OFF \ -DCMAKE_VERBOSE_MAKEFILE=ON \ -DCMAKE_INSTALL_PREFIX=/usr \ -DINCLUDE_INSTALL_DIR=/usr/include \ @@ -63,32 +68,39 @@ -DJAVA_BINDINGS=ON \ -DPHP_BINDINGS=ON \ -DPYTHON_BINDINGS=ON \ - .. + .. || exit 1 fi if [ ${dobuild} -eq 1 ]; then - make + make || exit 1 fi if [ ${dotest} -eq 1 ]; then # Execute some tests? + retval=0 + pushd tests - ./bindingstest - ./conversiontest - ./parsingtest + ./bindingstest ; retval=$(( ${retval} + $? )) + ./conversiontest ; retval=$(( ${retval} + $? )) + ./parsingtest ; retval=$(( ${retval} + $? )) popd if [ -f "${srcdir}/build/src/csharp/test.exe" ]; then - LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$(pwd)/build/src/csharp/ MONO_LOG_LEVEL=debug mono ${srcdir}/build/src/csharp/test.exe + LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$(pwd)/build/src/csharp/ MONO_LOG_LEVEL=debug mono ${srcdir}/build/src/csharp/test.exe ; retval=$(( ${retval} + $? )) fi if [ -f "${srcdir}/build/src/php/test.php" ]; then - php -d enable_dl=On -dextension=${srcdir}/build/src/php/kolabformat.so ${srcdir}/build/src/php/test.php + php -d enable_dl=On -dextension=${srcdir}/build/src/php/kolabformat.so ${srcdir}/build/src/php/test.php ; retval=$(( ${retval} + $? )) fi if [ -f "${srcdir}/build/src/python/test.py" ]; then - python ${srcdir}/build/src/python/test.py + python ${srcdir}/build/src/python/test.py ; retval=$(( ${retval} + $? )) + fi + + if [ ${retval} -ne 0 ]; then + echo "FAILED: Accumulated errors." + exit ${retval} fi fi diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libkolabxml-1.1.0/src/utils.cpp new/libkolabxml-1.1.1/src/utils.cpp --- old/libkolabxml-1.1.0/src/utils.cpp 2014-12-31 16:55:13.000000000 +0100 +++ new/libkolabxml-1.1.1/src/utils.cpp 2015-07-31 10:52:28.000000000 +0200 @@ -127,10 +127,6 @@ uuid_class() : boost::uuids::uuid(boost::uuids::random_generator()()) {} - - operator boost::uuids::uuid() const { - return static_cast<boost::uuids::uuid const&>(*this); - } }; uuid_class u; // initialize uuid diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libkolabxml-1.1.0/tests/CMakeLists.txt new/libkolabxml-1.1.1/tests/CMakeLists.txt --- old/libkolabxml-1.1.0/tests/CMakeLists.txt 2014-12-31 16:55:13.000000000 +0100 +++ new/libkolabxml-1.1.1/tests/CMakeLists.txt 2015-07-31 10:52:28.000000000 +0200 @@ -1,4 +1,32 @@ -find_package(Qt4) + +#### Qt 4 and 5 #### +if(QT5_BUILD) + find_package(ECM 1.1.0 REQUIRED NO_MODULE) + set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH}) + + find_package(Qt5Core REQUIRED) + find_package(Qt5Test REQUIRED) + + include("../cmake/modules/ECMQt4To5Porting.cmake") + include_directories(${QT_INCLUDES}) # TODO: Port away from this. + + if(CMAKE_VERSION VERSION_LESS 2.8.9) + message(FATAL_ERROR "Akonadi Qt 5 build requires at least CMake version 2.8.9") + endif() + + if (Qt5_POSITION_INDEPENDENT_CODE) + set(CMAKE_POSITION_INDEPENDENT_CODE ON) + endif() + + set(QT_QTTEST_LIBRARIES Qt5::Test) +else() + set(QT_USE_IMPORTED_TARGETS TRUE) # Qt 4 only + set(QT_MIN_VERSION 4.6.2) # Qt 4 only + + find_package(Qt4 REQUIRED) +endif() + + add_definitions(-DTEST_DATA_PATH="${CMAKE_CURRENT_SOURCE_DIR}") include_directories( ${CMAKE_CURRENT_SOURCE_DIR}/.. ) @@ -13,29 +41,37 @@ add_test(phptest php -d enable_dl=On -d include_path='.:/usr/share/pear:${CMAKE_BINARY_DIR}/src/php' -d extension=${CMAKE_BINARY_DIR}/src/php/kolabformat.so ${CMAKE_SOURCE_DIR}/src/php/test.php --verbose) endif() -if (QT4_FOUND) +if (QT4_FOUND OR Qt5Core_FOUND) + if (Qt5Core_FOUND) + set(CMAKE_AUTOMOC ON) + set(CMAKE_INCLUDE_CURRENT_DIR ON) + endif() + message("Buildings tests") - QT4_AUTOMOC(bindingstest.cpp) + if (QT4_FOUND) + QT4_AUTOMOC(bindingstest.cpp) + QT4_AUTOMOC(conversiontest.cpp) + QT4_AUTOMOC(parsingtest.cpp) + QT4_AUTOMOC(validationtest.cpp) + QT4_AUTOMOC(kolabconversationtest.cpp) + endif() + add_executable(bindingstest bindingstest.cpp ${CMAKE_CURRENT_BINARY_DIR}/${BINDINGSTEST_MOC}) target_link_libraries(bindingstest ${QT_QTTEST_LIBRARY} ${QT_QTCORE_LIBRARY} kolabxml ${XERCES_C}) add_test(bindingstest ${CMAKE_CURRENT_BINARY_DIR}/bindingstest) - QT4_AUTOMOC(conversiontest.cpp) add_executable(conversiontest conversiontest.cpp ${CMAKE_CURRENT_BINARY_DIR}/${CONVERSIONTEST_MOC}) target_link_libraries(conversiontest ${QT_QTTEST_LIBRARY} ${QT_QTCORE_LIBRARY} kolabxml ${XERCES_C}) add_test(conversiontest ${CMAKE_CURRENT_BINARY_DIR}/conversiontest) - QT4_AUTOMOC(parsingtest.cpp) add_executable(parsingtest parsingtest.cpp ${CMAKE_CURRENT_BINARY_DIR}/${PARSINGTEST_MOC}) target_link_libraries(parsingtest ${QT_QTTEST_LIBRARY} ${QT_QTCORE_LIBRARY} kolabxml ${XERCES_C}) add_test(parsingtest ${CMAKE_CURRENT_BINARY_DIR}/parsingtest) - QT4_AUTOMOC(validationtest.cpp) add_executable(validationtest validationtest.cpp ${CMAKE_CURRENT_BINARY_DIR}/${VALIDATIONTEST_MOC}) target_link_libraries(validationtest ${QT_QTTEST_LIBRARY} ${QT_QTCORE_LIBRARY} kolabxml ${XERCES_C}) add_test(validationtest ${CMAKE_CURRENT_BINARY_DIR}/validationtest) - QT4_AUTOMOC(kolabconversationtest.cpp) add_executable(kolabconversationtest kolabconversationtest.cpp ${CMAKE_CURRENT_BINARY_DIR}/${KOLABCONVERSATIONTEST_MOC}) target_link_libraries(kolabconversationtest ${QT_QTTEST_LIBRARY} ${QT_QTCORE_LIBRARY} kolabxml ${XERCES_C}) add_test(kolabconversationtest ${CMAKE_CURRENT_BINARY_DIR}/kolabconversationtest) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libkolabxml-1.1.0/tests/conversiontest.cpp new/libkolabxml-1.1.1/tests/conversiontest.cpp --- old/libkolabxml-1.1.0/tests/conversiontest.cpp 2014-12-31 16:55:13.000000000 +0100 +++ new/libkolabxml-1.1.1/tests/conversiontest.cpp 2015-07-31 10:52:28.000000000 +0200 @@ -280,9 +280,12 @@ void ConversionTest::uuidGeneratorTest() { const std::string &s = getUID(); - std::cout << s << std::endl; + // std::cout << s << std::endl; QVERIFY(!s.empty()); QCOMPARE(s.size(), (std::size_t)36ul); + //Ensure we don't get the same uuid twice + const std::string &s2 = getUID(); + QVERIFY(s != s2); } void ConversionTest::uuidGeneratorTest2() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libkolabxml-1.1.0/tests/serializers.h new/libkolabxml-1.1.1/tests/serializers.h --- old/libkolabxml-1.1.0/tests/serializers.h 2014-12-31 16:55:13.000000000 +0100 +++ new/libkolabxml-1.1.1/tests/serializers.h 2015-07-31 10:52:28.000000000 +0200 @@ -12,7 +12,7 @@ QByteArray ba = "Kolab::cDateTime("; ba += QByteArray::number(dt.year()) + ", " + QByteArray::number(dt.month())+ ", " + QByteArray::number(dt.day()) + ", "; ba += QByteArray::number(dt.hour()) + ", " + QByteArray::number(dt.minute()) + ", " + QByteArray::number(dt.second())+ ", "; - ba += QString(dt.isUTC()?QString("UTC"):QString("TZ: "+QString::fromStdString(dt.timezone()))).toAscii(); + ba += QString(dt.isUTC()?QString("UTC"):QString("TZ: "+QString::fromStdString(dt.timezone()))).toLatin1(); ba += ")"; return qstrdup(ba.data()); } @@ -32,9 +32,9 @@ char *toString(const Kolab::Attendee &a) { QByteArray ba = "Kolab::Attendee("; - ba += QString::fromStdString(a.contact().email()).toAscii() + ", " + QString::fromStdString(a.contact().name()).toAscii()+ ", " + + ba += QString::fromStdString(a.contact().email()).toLatin1() + ", " + QString::fromStdString(a.contact().name()).toLatin1()+ ", " + QByteArray::number(a.partStat()) + ", " + QByteArray::number(a.role()) + ", " + QByteArray::number(a.rsvp()) + ", " + - QString::fromStdString(a.contact().uid()).toAscii(); + QString::fromStdString(a.contact().uid()).toLatin1(); ba += ")"; return qstrdup(ba.data()); } @@ -54,7 +54,7 @@ char *toString(const std::string &s) { QByteArray ba = "string("; - ba += QString::fromStdString(s).toAscii(); + ba += QString::fromStdString(s).toLatin1(); ba += ")"; return qstrdup(ba.data()); } @@ -75,7 +75,7 @@ { QByteArray ba = "vector<int>("; for (std::size_t i = 0; i < v.size(); i++) { - ba += QString::number(v.at(i)).toAscii()+ ", "; + ba += QString::number(v.at(i)).toLatin1()+ ", "; } ba += ")"; return qstrdup(ba.data()); @@ -104,8 +104,8 @@ char *toString(const Kolab::Attachment &a) { QByteArray ba = "Kolab::Attachment("; - ba += QString::fromStdString(a.uri()).toAscii() + ", " + QString::fromStdString(a.mimetype()).toAscii()+ ", " + - QString::fromStdString(a.label()).toAscii(); + ba += QString::fromStdString(a.uri()).toLatin1() + ", " + QString::fromStdString(a.mimetype()).toLatin1()+ ", " + + QString::fromStdString(a.label()).toLatin1(); ba += ")"; return qstrdup(ba.data()); } @@ -125,9 +125,9 @@ char *toString(const Kolab::ContactReference &a) { QByteArray ba = "Kolab::ContactReference("; - ba += QString::fromStdString(a.email()).toAscii()+ ", "; - ba += QString::fromStdString(a.name()).toAscii()+ ", "; - ba += QString::fromStdString(a.uid()).toAscii(); + ba += QString::fromStdString(a.email()).toLatin1()+ ", "; + ba += QString::fromStdString(a.name()).toLatin1()+ ", "; + ba += QString::fromStdString(a.uid()).toLatin1(); ba += ")"; return qstrdup(ba.data()); } @@ -169,8 +169,8 @@ char *toString(const Kolab::Related &a) { QByteArray ba = "Kolab::Related("; - ba += QString::fromStdString(a.text()).toAscii()+ "\n " + - QString::fromStdString(a.uri()).toAscii()+"\n " + + ba += QString::fromStdString(a.text()).toLatin1()+ "\n " + + QString::fromStdString(a.uri()).toLatin1()+"\n " + QByteArray::number(a.relationTypes()) + "\n " + QByteArray::number(a.type()) + "\n "; ba += ")"; @@ -192,7 +192,7 @@ char *toString(const Kolab::Affiliation &a) { QByteArray ba = "Kolab::Affiliation("; - ba += QString::fromStdString(a.organisation()).toAscii()+ "\n " + + ba += QString::fromStdString(a.organisation()).toLatin1()+ "\n " + QString::fromStdString(a.logo())+"\n " + "\n " + toString(a.roles())+ "\n " + toString(a.relateds()) + "\n " + toString(a.addresses()) + "\n "; ba += ")";
