LogoopenSUSE Build Service > Projects
Sign Up | Log In

View File qt3-extensions.spec.in of Package qt3 (Project openSUSE:Factory)

#
# spec file for package qt3-extensions
#
# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via http://bugs.opensuse.org/
#


Name:           qt3-extensions
BuildRequires:  cups-devel
BuildRequires:  krb5-devel
BuildRequires:  mysql-devel
BuildRequires:  postgresql-devel
BuildRequires:  qt3-devel
BuildRequires:  sqlite2-devel
BuildRequires:  unixODBC-devel
BuildRequires:  update-desktop-files
BuildRequires:  fdupes
Version:        3.3.8c
Release:        0
Requires:       qt3 = %version
Summary:        Qt3 Extensions
License:        GPL-2.0 or GPL-3.0 or QPL-1.0
Group:          Development/Tools/Other
# COMMON-BEGIN
# COMMON-END

%description
Qt is a program library for developing applications with graphical user
interfaces. It allows you to rapidly develop professional programs. The
Qt library is available not only for Linux but for a great number of
Unices and even for Windows. Thus it is possible to write programs that
may be easily ported to those platforms.

You need a license for using Qt with a non-GPL application, which can
be acquired from sales@trolltech.com.

See /usr/share/doc/packages/qt3 for details about the new features of
the current Qt library!

%package -n qt3-devel-examples
Summary:        Programming Examples for Qt 3
Group:          Development/Sources
Provides:       qt3-examples
Obsoletes:      qt3-examples

%description  -n qt3-devel-examples
Qt is a program library for developing applications with graphical user
interfaces. It allows you to rapidly develop professional programs. The
Qt library is available not only for Linux but for a great number of
Unices and even for Windows. Thus it is possible to write programs that
may be easily ported to those platforms.

You need a license for using Qt with a non-GPL application, which can
be acquired from sales@trolltech.com.

See /usr/share/doc/packages/qt3 for details about the new features of
the current Qt library!

%package -n qt3-mysql
Summary:        MySQL Plug-In for Qt
Group:          Productivity/Databases/Clients
Provides:       qt3_database_plugin

%description  -n qt3-mysql
Qt is a program library for developing applications with graphical user
interfaces. It allows you to rapidly develop professional programs. The
Qt library is available not only for Linux but for a great number of
Unices and even for Windows. Thus it is possible to write programs that
may be easily ported to those platforms.

You need a license for using Qt with a non-GPL application, which can
be acquired from sales@trolltech.com.

See /usr/share/doc/packages/qt3 for details about the new features of
the current Qt library!

%package -n qt3-unixODBC
Summary:        A UnixODBC Plug-In for Qt
Group:          Productivity/Databases/Clients
Provides:       qt3_database_plugin

%description  -n qt3-unixODBC
Qt is a program library for developing applications with graphical user
interfaces. It allows you to rapidly develop professional programs. The
Qt library is available not only for Linux but for a great number of
Unices and even for Windows. Thus it is possible to write programs that
may be easily ported to those platforms.

You need a license for using Qt with a non-GPL application, which can
be acquired from sales@trolltech.com.

See /usr/share/doc/packages/qt3 for details about the new features of
the current Qt library!

%package -n qt3-postgresql
Summary:        A PostgreSQL Plug-In for Qt
Group:          Productivity/Databases/Clients
Provides:       qt3_database_plugin

%description  -n qt3-postgresql
Qt is a program library for developing applications with graphical user
interfaces. It allows you to rapidly develop professional programs. The
Qt library is available not only for Linux but for a great number of
Unices and even for Windows. Thus it is possible to write programs that
may be easily ported to those platforms.

You need a license for using Qt with a non-GPL application, which can
be acquired from sales@trolltech.com.

See /usr/share/doc/packages/qt3 for details about the new features of
the current Qt library!

%package -n qt3-sqlite
Summary:        SQLite Database Plug-In for Qt
Group:          Development/Tools/Other
Provides:       qt3_database_plugin

%description  -n qt3-sqlite
Qt is a program library for developing applications with graphical user
interfaces. It allows you to rapidly develop professional programs. The
Qt library is available not only for Linux but for a great number of
Unices and even for Windows. Thus it is possible to write programs that
may be easily ported to those platforms.

You need a license for using Qt with a non-GPL application, which can
be acquired from sales@trolltech.com.

See /usr/share/doc/packages/qt3 for details about the new features of
the current Qt library!

%package  -n qt3-devel-tools
Summary:        User Interface Builder and other tools (designer, assistant, linguist)
Group:          Development/Tools/GUI Builders
Requires:       qt3-devel = %version
Provides:       qt3-designer
Obsoletes:      qt3-designer

%description  -n qt3-devel-tools
Qt is a program library for developing applications with graphical user
interfaces. It allows you to rapidly develop professional programs. The
Qt library is available not only for Linux but for a great number of
Unices and even for Windows. Thus it is possible to write programs that
may be easily ported to those platforms.

You need a license for using Qt with a non-GPL application, which can
be acquired from sales@trolltech.com.

See /usr/share/doc/packages/qt3 for details about the new features of
the current Qt library!

%package -n qt3-man
Summary:        Qt 3 Man Pages
Group:          Documentation/Man
Requires:       qt3-devel = %version
Conflicts:      qtman qt-man

%description -n qt3-man
Qt is a program library for developing applications with graphical user
interfaces. It allows you to rapidly develop professional programs. The
Qt library is available not only for Linux but for a great number of
Unices and even for Windows. Thus it is possible to write programs that
may be easily ported to those platforms.

You need a license for using Qt with a non-GPL application, which can
be acquired from sales@trolltech.com.

See /usr/share/doc/packages/qt3 for details about the new features of
the current Qt library!

%build
export QTDIR=/usr/lib/qt3/
export WLIB=%_lib
export VERSION=%suse_version
source %{SOURCE1} %{version}
export RPM_OPT_FLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing"
#
# compile threaded version to build all tools.
# the lib itself becomes packaged from qt3.spec
#
call_configure -thread -shared -L$PWD/%_lib $OPTIONS
ln -sf /usr/lib/qt3/%_lib/* lib/
ln -sf /usr/lib/qt3/bin/* bin/
cd plugins/src
make %{?jobs:-j%jobs}
make INSTALL_ROOT=$RPM_BUILD_ROOT install
cd -
#
# build examples
#
cd tools/assistant/lib
make %{?jobs:-j%jobs}
cd -
cd examples
make %{?jobs:-j%jobs}
cd -
#
# build extra tools
#
cd tools
make %{?jobs:-j%jobs}
make INSTALL_ROOT=$RPM_BUILD_ROOT install
for i in qembed qconfig msg2qm mergetr ; do
  cd "$i" && make %{?jobs:-j%jobs} && install -m 0755 $i ${RPM_BUILD_ROOT}/usr/lib/qt3/bin/ && cd -
done
cd ..
install -m 0755 bin/findtr bin/qt20fix bin/qtrename140 ${RPM_BUILD_ROOT}/usr/lib/qt3/bin/
if [ %_lib = lib64 ]; then
 for i in $RPM_BUILD_ROOT/usr/lib/qt3/plugins/*/*.so; do
   mv "$i" "${i%.so}.lib64.so"
 done
fi

%install
export WLIB=%_lib
export VERSION=%suse_version
source %{SOURCE1}
post_install $RPM_BUILD_ROOT/usr/lib/qt3/
#
# create default doc dir
#
install -d -m 0755 ${RPM_BUILD_ROOT}/%{_docdir}/qt3/
#
# create links in ld.so.conf path
#
install -d -m 0755 ${RPM_BUILD_ROOT}/%{_libdir}
#install -d -m 0755 ${RPM_BUILD_ROOT}/usr/bin/
#ln -sf ../lib/qt3/bin/designer     ${RPM_BUILD_ROOT}/usr/bin/designer
#ln -sf ../lib/qt3/bin/linguist     ${RPM_BUILD_ROOT}/usr/bin/linguist
%suse_update_desktop_file -i designer  Qt Development GUIDesigner
%suse_update_desktop_file -i linguist  Qt Development Translation
mkdir -p $RPM_BUILD_ROOT/usr/share/pixmaps
perl -pi -e 's/Icon=designer/Icon=designer3/' ${RPM_BUILD_ROOT}/usr/share/applications/designer.desktop
perl -pi -e 's,Exec=designer,Exec=/usr/lib/qt3/bin/designer,' ${RPM_BUILD_ROOT}/usr/share/applications/designer.desktop
mv ${RPM_BUILD_ROOT}/usr/share/applications/designer.desktop ${RPM_BUILD_ROOT}/usr/share/applications/designer3.desktop
install -m 0644 tools/assistant/images/designer.png $RPM_BUILD_ROOT/usr/share/pixmaps/designer3.png
rm -f ${RPM_BUILD_ROOT}/usr/share/pixmaps/designer.png
perl -pi -e 's,Exec=linguist,Exec=/usr/lib/qt3/bin/linguist,' ${RPM_BUILD_ROOT}/usr/share/applications/linguist.desktop
perl -pi -e 's,Icon=linguist,Icon=linguist3,' ${RPM_BUILD_ROOT}/usr/share/applications/linguist.desktop
mv ${RPM_BUILD_ROOT}/usr/share/pixmaps/linguist.png ${RPM_BUILD_ROOT}/usr/share/pixmaps/linguist3.png

##### these files are not getting installed by "make install" ... bug ?
#
#
# install manpages
#
rm -rf $RPM_BUILD_ROOT/%{_mandir}
install -d  $RPM_BUILD_ROOT/%{_mandir}
cp -a doc/man/* $RPM_BUILD_ROOT/%{_mandir}/
#
# install examples
#
install -d  ${RPM_BUILD_ROOT}/usr/lib/qt3/doc/
find ./examples/ \
  -name \*.o -o -name .obj -o -name .moc -o -name Makefile \
  | xargs rm -rf
cp -a examples ${RPM_BUILD_ROOT}/usr/lib/qt3/doc/
ln -sf /usr/lib/qt3/doc/examples ${RPM_BUILD_ROOT}/%{_docdir}/qt3/
#
# to be sure we do not package files which are packaged in other qt3 packages
#
rpm -ql qt3 qt3-devel qt3-devel-doc \
 | while read i ; do 
   [ -d "$i" ] || rm -f $RPM_BUILD_ROOT/"$i"
done
#
# we do have them in qt3-devel-doc already
#
rm -f $RPM_BUILD_ROOT/usr/lib/qt3/bin/assistant
rm -f $RPM_BUILD_ROOT/usr/lib/qt3/%_lib/libqassistantclient.*
rm -f $RPM_BUILD_ROOT/usr/lib/qt3/translations/assistant_de.qm

for l in $RPM_BUILD_ROOT/usr/lib/qt3/%_lib/*.a; do
  strip --strip-unneeded $l
done

%if %suse_version > 1020
%fdupes -s $RPM_BUILD_ROOT
%endif

%pre
if test -L usr/lib/qt3; then
  rm usr/lib/qt3
fi

%clean
rm -rf ${RPM_BUILD_ROOT}

%post
%run_ldconfig

%post -n qt3-devel-tools
%run_ldconfig

%files
%defattr(-,root,root)
/usr/lib/qt3/bin/qembed

%files -n qt3-mysql
%defattr(-,root,root)
%dir /usr/lib/qt3/plugins/sqldrivers
/usr/lib/qt3/plugins/sqldrivers/libqsqlmysql*.so

%files -n qt3-postgresql
%defattr(-,root,root)
%dir /usr/lib/qt3/plugins/sqldrivers
/usr/lib/qt3/plugins/sqldrivers/libqsqlpsql*.so

%files -n qt3-unixODBC
%defattr(-,root,root)
%dir /usr/lib/qt3/plugins/sqldrivers
/usr/lib/qt3/plugins/sqldrivers/libqsqlodbc*.so

%files -n qt3-sqlite
%defattr(-,root,root)
%dir /usr/lib/qt3/plugins/sqldrivers
/usr/lib/qt3/plugins/sqldrivers/libqsqlite*.so

%files -n qt3-devel-tools
%defattr(-,root,root)
#/usr/bin/designer
#/usr/bin/linguist
/usr/lib/qt3/bin/qconfig
/usr/lib/qt3/bin/findtr
/usr/lib/qt3/bin/qt20fix
/usr/lib/qt3/bin/qtrename140
/usr/lib/qt3/bin/msg2qm
/usr/lib/qt3/bin/mergetr
/usr/lib/qt3/bin/designer
/usr/lib/qt3/bin/linguist
/usr/lib/qt3/bin/qm2ts
/usr/lib/qt3/bin/lrelease
/usr/lib/qt3/bin/lupdate
/usr/lib/qt3/templates
/usr/lib/qt3/plugins/designer
/usr/lib/qt3/phrasebooks
/usr/lib/qt3/%_lib/libdesignercore.*
/usr/lib/qt3/%_lib/libeditor.*
/usr/share/applications/*
/usr/share/pixmaps/designer3.png
/usr/share/pixmaps/linguist3.png

%files -n qt3-devel-examples
%defattr(-,root,root)
%dir /usr/lib/qt3/doc
/%{_docdir}/qt3/examples
/usr/lib/qt3/doc/examples

%files -n qt3-man
%defattr(-,root,root)
%{_mandir}/man*/*

%changelog