[wt] update to 3.3.1-rc1

Michal Minar miminar at fedoraproject.org
Sun Sep 22 12:29:35 UTC 2013


commit 7cdce46db4964fde454de33ddaad35347fd3582a
Author: Michal Minar <miminar at redhat.com>
Date:   Sun Sep 22 14:27:05 2013 +0200

    update to 3.3.1-rc1
    
    added dbo-mysql subpackage
    unversioned doc directories

 .gitignore                                         |    5 +-
 README.fedora                                      |   21 ++++
 find-mysql.patch                                   |   13 ++
 install-mysql.patch                                |   15 +++
 sources                                            |    2 +-
 timezone-README.fedora                             |    3 +
 ...PACKAGE-LICENSING => wt-3.3.1-PACKAGE-LICENSING |    4 +
 wt-generate-tarball.sh                             |    1 +
 wt.spec                                            |  120 ++++++++++++++------
 9 files changed, 142 insertions(+), 42 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index fce75f5..40a13df 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,4 +1 @@
-/wt-3.2.2-p1-free.tar.gz
-/wt-3.2.3-free.tar.gz
-/wt-3.3.0-free.tar.gz
-/wt-3.3.0-free.tar.xz
+/wt-3.3.1-rc1-free.tar.xz
diff --git a/README.fedora b/README.fedora
new file mode 100644
index 0000000..d8f2c52
--- /dev/null
+++ b/README.fedora
@@ -0,0 +1,21 @@
+========================================================================
+User Information for the Fedora wt package
+========================================================================
+
+Wt source package includes some thrid-party components which can not be
+distributed with source rpm package in Fedora. One such component is a
+JavaScript widget jPlayer available at:
+
+    http://www.jplayer.org/
+
+This script is needed by Wt::WMediaPlayer widget. To make it work, you
+need to manually download jPlayer and install its static files into
+
+    /usr/share/Wt/resources/jPlayer/
+
+Or you may copy the contents of /usr/share/Wt/resources to your deployment
+directory and install there jPlayer when needed.
+
+To read more about this change, see the:
+
+   https://fedoraproject.org/wiki/Packaging:Guidelines#No_inclusion_of_pre-built_binaries_or_libraries
diff --git a/find-mysql.patch b/find-mysql.patch
new file mode 100644
index 0000000..6ceedf3
--- /dev/null
+++ b/find-mysql.patch
@@ -0,0 +1,13 @@
+Index: wt-3.3.1-rc1/cmake/WtFindMysql.txt
+===================================================================
+--- wt-3.3.1-rc1.orig/cmake/WtFindMysql.txt
++++ wt-3.3.1-rc1/cmake/WtFindMysql.txt
+@@ -25,6 +25,8 @@ FIND_LIBRARY(MYSQL_LIB
+     PATHS
+     ${MYSQL_PREFIX}/lib
+     ${MYSQL_PREFIX}/lib/opt
++    ${MYSQL_PREFIX}/lib/mysql
++    ${MYSQL_PREFIX}/lib64/mysql
+     /usr/lib
+     /usr/local/lib
+     /opt/local/lib
diff --git a/install-mysql.patch b/install-mysql.patch
new file mode 100644
index 0000000..9cf47e5
--- /dev/null
+++ b/install-mysql.patch
@@ -0,0 +1,15 @@
+Index: wt-3.3.1-rc1/src/Wt/Dbo/backend/CMakeLists.txt
+===================================================================
+--- wt-3.3.1-rc1.orig/src/Wt/Dbo/backend/CMakeLists.txt
++++ wt-3.3.1-rc1/src/Wt/Dbo/backend/CMakeLists.txt
+@@ -203,8 +203,8 @@ IF(ENABLE_MYSQL AND MYSQL_FOUND)
+ 
+   INSTALL(TARGETS wtdbomysql
+     RUNTIME DESTINATION bin	
+-    LIBRARY DESTINATION lib
+-    ARCHIVE DESTINATION lib)
++    LIBRARY DESTINATION ${LIB_INSTALL_DIR}
++    ARCHIVE DESTINATION ${LIB_INSTALL_DIR})
+ 
+   SET_TARGET_PROPERTIES(
+     wtdbomysql
diff --git a/sources b/sources
index 9b8bb89..a4ddc60 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-13d8bcefb52972c2f3ebf328a26f20ee  wt-3.3.0-free.tar.xz
+211a824045a36e28cb7f8b2866d4c813  wt-3.3.1-rc1-free.tar.xz
diff --git a/timezone-README.fedora b/timezone-README.fedora
new file mode 100644
index 0000000..6fca520
--- /dev/null
+++ b/timezone-README.fedora
@@ -0,0 +1,3 @@
+This example is named *locale* in source archive. It is renamed in the process
+of package build in order to prevent build failures due to a conflict between
+header file resulting base  script with the same name.
diff --git a/wt-3.3.0-PACKAGE-LICENSING b/wt-3.3.1-PACKAGE-LICENSING
similarity index 79%
rename from wt-3.3.0-PACKAGE-LICENSING
rename to wt-3.3.1-PACKAGE-LICENSING
index ca03558..6af2c1b 100644
--- a/wt-3.3.0-PACKAGE-LICENSING
+++ b/wt-3.3.1-PACKAGE-LICENSING
@@ -11,3 +11,7 @@ The entire source code is GPLv2 except for these files:
  * zlib/libpng
    * src/web/md5.[ch]
    * src/web/base64.h
+ * SIL OFL 1.1
+   * resources/font-awesome/font/*
+ * MIT License
+   * resources/font-awesome/css/*
diff --git a/wt-generate-tarball.sh b/wt-generate-tarball.sh
index 1cede7f..e4027ed 100644
--- a/wt-generate-tarball.sh
+++ b/wt-generate-tarball.sh
@@ -9,6 +9,7 @@ pushd $tmp
 pushd $NAME-$VERSION/src/Wt/Dbo/backend
 rm -r ibpp
 popd # backend
+rm -r $NAME-$VERSION/resources/jPlayer
 tar -cJvf $NAME-$VERSION-free.tar.xz $NAME-$VERSION
 popd # tmp
 mv $tmp/$NAME-$VERSION-free.tar.xz .
diff --git a/wt.spec b/wt.spec
index a447cd5..da64c4d 100644
--- a/wt.spec
+++ b/wt.spec
@@ -3,10 +3,11 @@
 
 %global WTRUNUSER       apache
 %global WTRUNGROUP      apache
+%global alphatag        rc1
 
 Name:           wt
-Version:        3.3.0
-Release:        4%{?dist}
+Version:        3.3.1
+Release:        0.1.%{alphatag}%{?dist}
 Summary:        C++ library for developing web applications
 
 Group:          Development/Libraries
@@ -14,20 +15,26 @@ Group:          Development/Libraries
 License:        GPLv2 and Boost and MIT and (Boost or MIT) and BSD and zlib
 URL:            http://www.webtoolkit.eu/wt
 # Following archive was made from upstream tarball downloaded from
-#  http://citylan.dl.sourceforge.net/project/witty/wt/3.3.0/wt-3.3.0.tar.gz
-# by running ./wt-generate-tarball.sh 3.3.0 from tarball's directory
-Source0:        %{name}-%{version}-free.tar.xz
+#  http://citylan.dl.sourceforge.net/project/witty/wt/3.3.1/wt-3.3.1-rc1.tar.gz
+# by running ./wt-generate-tarball.sh 3.3.1-rc1 from tarball's directory
+Source0:        %{name}-%{version}-%{alphatag}-free.tar.xz
 Source1:        %{name}-%{version}-PACKAGE-LICENSING
+# Explain why the locale example is renamed to timezone.
+Source2:        timezone-README.fedora
+# Explain why the jPlayer static files are missing.
+Source3:        README.fedora
 # wt toolkit contains bundled non-free library (IBPP) that we cannot ship.
 # Therefore we use this script to remove its code before shipping it.
 # Download the upstream tarball and invoke this script while in the
 # tarball's directory:
 #   sh wt-generate-tarball.sh UPSTREAM_VERSION
-Source2:        wt-generate-tarball.sh
+Source4:        wt-generate-tarball.sh
+Patch0:         find-mysql.patch
+Patch1:         install-mysql.patch
 
 BuildRequires:  cmake >= 2.6 boost-devel%{_isa} >= 1.41 openssl-devel
 BuildRequires:  GraphicsMagick-devel pango-devel sqlite-devel postgresql-devel
-BuildRequires:  libharu-devel fcgi-devel zlib-devel qt-devel
+BuildRequires:  mysql-devel libharu-devel fcgi-devel zlib-devel qt-devel
 
 %description
 Web C++ library with widget oriented API that uses well-tested patterns of
@@ -44,6 +51,14 @@ Group:          Development/Libraries
 This package contains the Wt::Dbo Object-Relational Mapping library
 and Sqlite3 back-end of it.
 
+%package        dbo-mysql
+Summary:        MySQL back-end for the Wt::Dbo ORM library
+Group:          Development/Libraries
+Requires:       %{name}-dbo%{?_isa} = %{version}-%{release}
+
+%description    dbo-mysql
+This package contains the MySQL back-end for the Wt::Dbo ORM library.
+
 %package        dbo-postgres
 Summary:        PostgreSQL back-end for the Wt::Dbo ORM library
 Group:          Development/Libraries
@@ -58,6 +73,7 @@ Group:          Development/Libraries
 Requires:       %{name}%{?_isa}              = %{version}-%{release}
 Requires:       %{name}-dbo%{?_isa}          = %{version}-%{release}
 Requires:       %{name}-dbo-postgres%{?_isa} = %{version}-%{release}
+Requires:       %{name}-dbo-mysql%{?_isa}    = %{version}-%{release}
 Requires:       cmake
 
 %description    devel
@@ -84,11 +100,24 @@ BuildArch:      noarch
 This package contains the documents for Wt API and examples.
 
 %prep
-%setup -q -n %{name}-%{version}
+%setup -q -n %{name}-%{version}-%{alphatag}
+%patch0 -p1 -b .find-mysql
+%patch1 -p1 -b .install-mysql
+
+# static files like javascript and css should not be executable
 for d in src resources examples; do
     find $d -type f \( -iregex '.*\.\([hc]\|js\|css\)' -o -executable \) | \
         xargs -r chmod -v 0644
 done
+# locale script created in build directory causes build to fail because some
+# dependent headers try to include <locale> header which is found in current
+# directory. Let's rename it to timezone.
+mv examples/feature/locale examples/feature/timezone
+mv examples/feature/timezone/{locale,timezone}.C
+sed -i 's/locale/timezone/g' \
+    examples/feature/CMakeLists.txt \
+    examples/feature/timezone/CMakeLists.txt
+
 find examples -type f -name .htaccess | while read f; do
     mv -v $f `dirname $f`/htaccess
 done
@@ -117,6 +146,8 @@ cd wt-build
     -DRUNDIR="%{WTRUNDIR}" \
     -DINSTALL_EXAMPLES=ON \
     -DENABLE_FIREBIRD=OFF \
+    -DENABLE_MYSQL=ON \
+    -DMYSQL_LIBRARY=mysqlclient \
     -DEXAMPLES_DESTINATION=%{_lib}/Wt/examples
 make %{?_smp_mflags}
 
@@ -145,17 +176,19 @@ do  # create a symlink for each feature example pointing on resources dir
 done
 popd # examples
 popd # wt-build
+install -vm 644 %{SOURCE2} \
+    ${RPM_BUILD_ROOT}%{_libdir}/Wt/examples/feature/timezone/README.fedora
 
 # installation of documentation
 for d in %{name} %{name}-dbo %{name}-doc; do
-    install -v -m 0755 -d ${RPM_BUILD_ROOT}%{_defaultdocdir}/$d-%{version}/
-    cp -v LICENSE ${RPM_BUILD_ROOT}%{_defaultdocdir}/$d-%{version}/
+    install -v -m 0755 -d ${RPM_BUILD_ROOT}%{_defaultdocdir}/$d/
+    cp -v LICENSE ${RPM_BUILD_ROOT}%{_defaultdocdir}/$d/
     install -vm 644  %{SOURCE1} \
-    ${RPM_BUILD_ROOT}%{_defaultdocdir}/$d-%{version}/PACKAGE-LICENSING
+        ${RPM_BUILD_ROOT}%{_defaultdocdir}/$d/PACKAGE-LICENSING
 done
-cp -vr README.md ReleaseNotes.html Changelog \
-    ${RPM_BUILD_ROOT}%{_defaultdocdir}/%{name}-%{version}/
-cp -vr INSTALL*.html doc/* ${RPM_BUILD_ROOT}%{_defaultdocdir}/%{name}-doc-%{version}/
+cp -vr README.md %{SOURCE3} ReleaseNotes.html Changelog \
+    ${RPM_BUILD_ROOT}%{_defaultdocdir}/%{name}/
+cp -vr INSTALL*.html doc/* ${RPM_BUILD_ROOT}%{_defaultdocdir}/%{name}-doc/
 
 pushd ${RPM_BUILD_ROOT}
 mkdir -vp .%{WTSRVDIR}
@@ -166,9 +199,11 @@ mv -v .%{_prefix}/cmake/*.cmake .%{_datadir}/cmake/Modules
 # cleanup
 rm -rfv ${_prefix}/cmake
 for d in examples reference; do
-    rm -v .%{_defaultdocdir}/%{name}-doc-%{version}/$d/html/installdox
+    if [[ -e .%{_defaultdocdir}/%{name}-doc/$d/html/installdox ]]; then
+        rm -v .%{_defaultdocdir}/%{name}-doc/$d/html/installdox
+    fi
 done
-rm -v .%{_defaultdocdir}/%{name}-doc-%{version}/main
+rm -v .%{_defaultdocdir}/%{name}-doc/main
 find .%{_libdir}/Wt/examples -regex '.*/\(CMakeFiles\|.*\.cmake\|Doxygen\)' | \
     xargs rm -rfv
 # these scripts were used to generate pictures
@@ -179,6 +214,8 @@ popd
 %postun              -p /sbin/ldconfig
 %post   dbo          -p /sbin/ldconfig
 %postun dbo          -p /sbin/ldconfig
+%post   dbo-mysql    -p /sbin/ldconfig
+%postun dbo-mysql    -p /sbin/ldconfig
 %post   dbo-postgres -p /sbin/ldconfig
 %postun dbo-postgres -p /sbin/ldconfig
 
@@ -188,12 +225,13 @@ popd
 %{_libdir}/libwtfcgi.so.*
 %{_libdir}/libwthttp.so.*
 %{_libdir}/libwttest.so.*
-%dir %{_defaultdocdir}/%{name}-%{version}
-%doc %{_defaultdocdir}/%{name}-%{version}/README.md
-%doc %{_defaultdocdir}/%{name}-%{version}/LICENSE
-%doc %{_defaultdocdir}/%{name}-%{version}/ReleaseNotes.html
-%doc %{_defaultdocdir}/%{name}-%{version}/Changelog
-%doc %{_defaultdocdir}/%{name}-%{version}/PACKAGE-LICENSING
+%dir %{_defaultdocdir}/%{name}
+%doc %{_defaultdocdir}/%{name}/README.md
+%doc %{_defaultdocdir}/%{name}/README.fedora
+%doc %{_defaultdocdir}/%{name}/LICENSE
+%doc %{_defaultdocdir}/%{name}/ReleaseNotes.html
+%doc %{_defaultdocdir}/%{name}/Changelog
+%doc %{_defaultdocdir}/%{name}/PACKAGE-LICENSING
 %dir %{_datadir}/Wt
 %dir %{_datadir}/Wt/resources
 %{_datadir}/Wt/resources/*
@@ -201,12 +239,15 @@ popd
 %dir %{WTRUNDIR}
 
 %files dbo
-%dir %{_defaultdocdir}/%{name}-dbo-%{version}
-%doc %{_defaultdocdir}/%{name}-dbo-%{version}/LICENSE
-%doc %{_defaultdocdir}/%{name}-dbo-%{version}/PACKAGE-LICENSING
+%dir %{_defaultdocdir}/%{name}-dbo
+%doc %{_defaultdocdir}/%{name}-dbo/LICENSE
+%doc %{_defaultdocdir}/%{name}-dbo/PACKAGE-LICENSING
 %{_libdir}/libwtdbo.so.*
 %{_libdir}/libwtdbosqlite3.so.*
 
+%files dbo-mysql
+%{_libdir}/libwtdbomysql.so.*
+
 %files dbo-postgres
 %{_libdir}/libwtdbopostgres.so.*
 
@@ -223,20 +264,25 @@ popd
 %{_libdir}/Wt/examples/*
 
 %files doc
-%dir %{_defaultdocdir}/%{name}-doc-%{version}
-%doc %{_defaultdocdir}/%{name}-doc-%{version}/LICENSE
-%doc %{_defaultdocdir}/%{name}-doc-%{version}/PACKAGE-LICENSING
-%{_defaultdocdir}/%{name}-doc-%{version}/*.html
-%dir %{_defaultdocdir}/%{name}-doc-%{version}/images
-%dir %{_defaultdocdir}/%{name}-doc-%{version}/reference
-%dir %{_defaultdocdir}/%{name}-doc-%{version}/tutorial
-%dir %{_defaultdocdir}/%{name}-doc-%{version}/examples
-%{_defaultdocdir}/%{name}-doc-%{version}/images/*
-%{_defaultdocdir}/%{name}-doc-%{version}/reference/*
-%{_defaultdocdir}/%{name}-doc-%{version}/tutorial/*
-%{_defaultdocdir}/%{name}-doc-%{version}/examples/*
+%dir %{_defaultdocdir}/%{name}-doc
+%doc %{_defaultdocdir}/%{name}-doc/LICENSE
+%doc %{_defaultdocdir}/%{name}-doc/PACKAGE-LICENSING
+%{_defaultdocdir}/%{name}-doc/*.html
+%dir %{_defaultdocdir}/%{name}-doc/images
+%dir %{_defaultdocdir}/%{name}-doc/reference
+%dir %{_defaultdocdir}/%{name}-doc/tutorial
+%dir %{_defaultdocdir}/%{name}-doc/examples
+%{_defaultdocdir}/%{name}-doc/images/*
+%{_defaultdocdir}/%{name}-doc/reference/*
+%{_defaultdocdir}/%{name}-doc/tutorial/*
+%{_defaultdocdir}/%{name}-doc/examples/*
 
 %changelog
+* Sun Sep 22 2013 Michal Minar <miminar at redhat.com> 3.3.1-0.1.rc1
+- Update to 3.3.1-rc1.
+- Added dbo-mysql subpackage with MySQL backend library.
+- Unversioned doc directories.
+
 * Sun Aug 04 2013 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 3.3.0-4
 - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
 


More information about the scm-commits mailing list