[zorba] update to version 3.0.0

Martin Gieseking mgieseki at fedoraproject.org
Wed Feb 26 10:47:54 UTC 2014


commit f2bcf2f52cb26656dc0a35a6787d711a990e7a6a
Author: Martin Gieseking <martin.gieseking at uos.de>
Date:   Wed Feb 26 11:46:29 2014 +0100

    update to version 3.0.0

 .gitignore                |    1 +
 sources                   |    2 +-
 zorba-binding-names.patch |   36 ++++++++++++++++++
 zorba-pthread.patch       |   12 ++++++
 zorba.spec                |   90 +++++++++++++++++++++++++-------------------
 5 files changed, 101 insertions(+), 40 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index 5c61a08..d3a5a18 100644
--- a/.gitignore
+++ b/.gitignore
@@ -7,3 +7,4 @@
 /zorba-src-2.7.0.zip
 /zorba-2.8.0.tar.gz
 /zorba-2.9.1.tar.gz
+/zorba-3.0.tar.gz
diff --git a/sources b/sources
index 93c8cf4..d2569bf 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-680489ccfd4e1af083d10ca0aa63a6ba  zorba-2.9.1.tar.gz
+652e67103597e36126586ed1432e23bd  zorba-3.0.tar.gz
diff --git a/zorba-binding-names.patch b/zorba-binding-names.patch
new file mode 100644
index 0000000..82ce33c
--- /dev/null
+++ b/zorba-binding-names.patch
@@ -0,0 +1,36 @@
+diff --git a/swig/php/CMakeLists.txt b/swig/php/CMakeLists.txt
+--- a/swig/php/CMakeLists.txt
++++ b/swig/php/CMakeLists.txt
+@@ -73,7 +73,7 @@
+       FILES
+         ${CMAKE_CURRENT_BINARY_DIR}/Zorba/XQueryProcessor.php
+         ${CMAKE_CURRENT_BINARY_DIR}/Zorba/zorba_api_wrapper.php
+-        ${CMAKE_CURRENT_BINARY_DIR}/libzorba_api_php.so
++        ${CMAKE_CURRENT_BINARY_DIR}/libzorba_api.so
+       DESTINATION ${PHP5_INSTALL_PATH}
+     )
+   ELSE (NOT WIN32 OR CYGWIN)
+diff --git a/swig/python/CMakeLists.txt b/swig/python/CMakeLists.txt
+--- a/swig/python/CMakeLists.txt
++++ b/swig/python/CMakeLists.txt
+@@ -57,7 +57,7 @@
+     INSTALL (
+       FILES
+         ${CMAKE_CURRENT_BINARY_DIR}/zorba_api.py
+-        ${CMAKE_CURRENT_BINARY_DIR}/_zorba_api_python.so
++        ${CMAKE_CURRENT_BINARY_DIR}/_zorba_api.so
+       DESTINATION ${PYTHON_INSTALL_PATH}
+     )
+   ELSE(NOT WIN32)
+diff --git a/swig/ruby/CMakeLists.txt b/swig/ruby/CMakeLists.txt
+--- a/swig/ruby/CMakeLists.txt
++++ b/swig/ruby/CMakeLists.txt
+@@ -71,7 +71,7 @@
+     DESTINATION ${RUBY_SITEARCH_DIR} )
+   ELSE ( APPLE )
+     IF ( LINUX )
+-      INSTALL ( FILES ${CMAKE_CURRENT_BINARY_DIR}/zorba_api_ruby.so
++      INSTALL ( FILES ${CMAKE_CURRENT_BINARY_DIR}/zorba_api.so
+       DESTINATION ${RUBY_SITEARCH_DIR}
+       COMPONENT ruby_swig )
+     ELSE ( LINUX )
diff --git a/zorba-pthread.patch b/zorba-pthread.patch
new file mode 100644
index 0000000..e28175d
--- /dev/null
+++ b/zorba-pthread.patch
@@ -0,0 +1,12 @@
+diff -r aa180486af4e cmake_modules/ZorbaGenerateExe.cmake
+--- a/cmake_modules/ZorbaGenerateExe.cmake	Sat Feb 22 16:47:55 2014 +0100
++++ b/cmake_modules/ZorbaGenerateExe.cmake	Sat Feb 22 18:23:57 2014 +0100
+@@ -46,7 +46,7 @@
+   TARGET_LINK_LIBRARIES (
+     "${EXE_NAME}${SUFFIX}" 
+     "zorba_${ZORBA_STORE_NAME}"
+-    ${DEPEND_LIBS}
++    ${DEPEND_LIBS} pthread
+   )
+   IF (NOT ${NEW_NAME} STREQUAL "")
+     SET_TARGET_PROPERTIES ("${EXE_NAME}${SUFFIX}" PROPERTIES OUTPUT_NAME "${NEW_NAME}${SUFFIX}")
diff --git a/zorba.spec b/zorba.spec
index b6b8a39..9b0aec6 100644
--- a/zorba.spec
+++ b/zorba.spec
@@ -1,17 +1,20 @@
+%global branch_version 3.0
+%global archive_version 3.0
+
 %{!?php_extdir: %{expand: %%global php_extdir %(php-config --extension-dir)}}
 
 %{?filter_setup:
 %filter_provides_in %{python_sitearch}.*\.so$
 %filter_provides_in %{php_extdir}.*\.so$
 %filter_provides_in %{ruby_vendorarchdir}.*\.so$
-%filter_provides_in %{_docdir} 
+%filter_provides_in %{_docdir}
 %filter_requires_in %{_docdir}
 %filter_setup
 }
 
 Name:    zorba
-Version: 2.9.1
-Release: 4%{?dist}
+Version: 3.0.0
+Release: 1%{?dist}
 Summary: General purpose XQuery processor implemented in C++
 Group:   System Environment/Libraries
 
@@ -21,27 +24,32 @@ Group:   System Environment/Libraries
 License: ASL 2.0 and BSD and W3C and LGPLv2
 
 URL:     http://www.zorba-xquery.com
-Source0: http://launchpad.net/zorba/trunk/2.8/+download/%{name}-%{version}.tar.gz
+Source0: http://launchpad.net/zorba/trunk/%{branch_version}/+download/%{name}-%{archive_version}.tar.gz
 
-# adapt path to php API wrapper 
+# adapt path to php API wrapper
 Patch0:  zorba-php-wrapper.patch
+Patch1:  zorba-binding-names.patch
+# add pthread to linker flags in order to build xqdb successfully
+Patch2:  zorba-pthread.patch
 # rhbz#1069294
-Patch1:  zorba-check-dll_path.patch
+Patch3:  zorba-check-dll_path.patch
 
 BuildRequires: bison
 BuildRequires: boost-devel
 BuildRequires: chrpath
-BuildRequires: cmake 
+BuildRequires: cmake
 BuildRequires: doxygen
 BuildRequires: flex
 BuildRequires: graphviz-devel
 BuildRequires: java-devel >= 1:1.6.0
 BuildRequires: jpackage-utils
 BuildRequires: libcurl-devel
+BuildRequires: libedit-devel
 BuildRequires: libicu-devel
+BuildRequires: libtidy-devel
 BuildRequires: libuuid-devel
 BuildRequires: libxml2-devel
-BuildRequires: php-cli 
+BuildRequires: php-cli
 BuildRequires: php-devel
 BuildRequires: python-devel
 BuildRequires: ruby
@@ -54,14 +62,14 @@ BuildRequires: xqc
 
 
 %description
-Zorba is a general purpose XQuery processor implementing in C++ the W3C family 
-of specifications. It is not an XML database. The query processor has been 
-designed to be embeddable in a variety of environments such as other 
+Zorba is a general purpose XQuery processor implementing in C++ the W3C family
+of specifications. It is not an XML database. The query processor has been
+designed to be embeddable in a variety of environments such as other
 programming languages extended with XML processing capabilities, browsers,
-database servers, XML message dispatchers, or smart phones. Its architecture 
-employs a modular design, which allows customizing the Zorba query processor to 
-the environment's needs. In particular the architecture of the query processor 
-allows a pluggable XML store (e.g. main memory, DOM stores, persistent 
+database servers, XML message dispatchers, or smart phones. Its architecture
+employs a modular design, which allows customizing the Zorba query processor to
+the environment's needs. In particular the architecture of the query processor
+allows a pluggable XML store (e.g. main memory, DOM stores, persistent
 disk-based large stores, S3 stores).
 
 
@@ -76,6 +84,16 @@ Requires: xqc
 The %{name}-devel package contains libraries and header files for
 developing applications that use %{name}.
 
+%package doc
+Summary:   Documentation for the Zorba XQuery processor
+Group:     Documentation
+BuildArch: noarch
+
+%description doc
+This package provides documentation for the %{name} command-line client and
+the programming APIs.
+
+# Language bindings
 
 %package python
 Summary:  Python language binding for %{name}
@@ -112,26 +130,18 @@ This package provides the Ruby module to use the %{name} API.
 Summary:  Java language binding for %{name}
 Group:    Development/Languages
 Requires: %{name}%{?_isa} = %{version}-%{release}
-Requires: java >= 1:1.6.0
+Requires: java-headless >= 1:1.6.0
 Requires: jpackage-utils
 
 %description java
 This package provides the Java module to use the %{name} API.
 
-%package doc
-Summary:   Documentation for the Zorba XQuery processor
-Group:     Documentation
-BuildArch: noarch
-
-%description doc
-This package provides documentation for the %{name} command-line client and 
-the programming APIs.
- 
-
 %prep
-%setup -q
+%setup -q -n %{name}-%{archive_version}
 %patch0 -p1
 %patch1 -p1
+%patch2 -p1
+%patch3 -p1
 
 # xqc.h is provided by xqc package
 rm -f src/include/xqc.h
@@ -141,19 +151,15 @@ find \( -name "*.h" -o -name "*.cpp" \) -exec chmod 644 {} \;
 # avoid doxygen issue (can't run 'dot' when absolute path is given)
 find doc -name 'doxy.config.in' -exec sed -i 's/@DOXYGEN_DOT_EXECUTABLE_PATH@/dot/' {} \;
 
+
 %build
 mkdir -p build
 cd build
-%cmake -DZORBA_LIB_DIRNAME:STRING='%{_lib}' -DCMAKE_CXX_FLAGS_RELEASE:STRING='-DNDEBUG' -DCMAKE_C_FLAGS_RELEASE='-DNDEBUG' ..
+# The grammar file fails to compile with bison 3.0.
+# Thus, prevent running bison and use the bundled bison output instead.
+%cmake -DZORBA_LIB_DIRNAME:STRING='%{_lib}' -DCMAKE_CXX_FLAGS_RELEASE:STRING='-DNDEBUG' -DCMAKE_C_FLAGS_RELEASE='-DNDEBUG' -DBISON_EXECUTABLE=/dummy ..
 
 make VERBOSE=1 %{?_smp_mflags}
-
-# create zorba.jar
-pushd swig/java
-javac -d . *.java
-jar cf zorba.jar org/
-popd
-
 make doc
 
 
@@ -166,7 +172,7 @@ mv %{buildroot}%{_datadir}/cmake/zorba-%{version}/* %{buildroot}%{_datadir}/cmak
 
 # move Java extension module to proper directory
 mkdir -p %{buildroot}%{_libdir}/zorba-java/
-cp -p build/swig/java/zorba.jar %{buildroot}%{_libdir}/zorba-java/
+cp -p build/swig/java/zorba_api.jar %{buildroot}%{_libdir}/zorba-java/zorba.jar
 mv %{buildroot}%{_datadir}/java/*.so %{buildroot}%{_libdir}/zorba-java/
 mv %{buildroot}%{_datadir}/java/zorba_xqj.jar %{buildroot}%{_libdir}/zorba-java/
 rm -f %{buildroot}%{_datadir}/java/*
@@ -199,6 +205,7 @@ mv %{buildroot}/%{_defaultdocdir}/%{name}-%{version}/* doc.tmp
 rm -rf %{buildroot}/%{_defaultdocdir}/%{name}-%{version}/
 rm -f doc.tmp/*.txt
 
+
 %post -p /sbin/ldconfig
 %postun -p /sbin/ldconfig
 
@@ -210,9 +217,10 @@ rm -f doc.tmp/*.txt
 %{_bindir}/xqdb
 %{_libdir}/libzorba_simplestore.so.*
 %{_libdir}/zorba/
-%{_datadir}/zorba/
+%dir %{_datadir}/zorba/
+%dir %{_datadir}/zorba/uris/
+%{_datadir}/zorba/uris/core/
 %dir %{_datadir}/zorba-%{version}/
-%{_datadir}/zorba-%{version}/xqdoc/
 %{_datadir}/zorba-%{version}/fots_driver
 
 %files devel
@@ -242,6 +250,10 @@ rm -f doc.tmp/*.txt
 
 
 %changelog
+* Wed Feb 26 2014 Martin Gieseking <martin.gieseking at uos.de> 3.0.0-1
+- Updated to release 3.0.0
+- Replaced Requires: java with Requires: java-headless
+
 * Tue Feb 25 2014 Kyle McMartin <kyle at redhat.com>
 - fix strtok(NULL, ...) on armv7hl and aarch64 (and ppc64 and s390x...)
 
@@ -336,4 +348,4 @@ rm -f doc.tmp/*.txt
 - added missing %%defattr in php subpackage
 
 * Tue Nov 30 2010 Martin Gieseking <martin.gieseking at uos.de> 1.4.0-1
-- initial Fedora package 
+- initial Fedora package


More information about the scm-commits mailing list