You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

151 lines
5.1 KiB

##
## qt.spec -- OpenPKG RPM Specification
## Copyright (c) 2000-2002 Cable & Wireless Deutschland GmbH
## Copyright (c) 2000-2002 The OpenPKG Project <http://www.openpkg.org/>
## Copyright (c) 2000-2002 Ralf S. Engelschall <rse@engelschall.com>
##
## Permission to use, copy, modify, and distribute this software for
## any purpose with or without fee is hereby granted, provided that
## the above copyright notice and this permission notice appear in all
## copies.
##
## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
## OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
## SUCH DAMAGE.
##
# package option, other switch denotes almost all GUI features
%ifndef with_freetype
%define with_freetype no
%endif
%ifndef with_other
%define with_other no
%endif
# package information
Name: qt
Summary: The Qt Toolkit
URL: http://www.trolltech.com/products/qt/x11.html
Vendor: TrollTech AS
Packager: The OpenPKG Project
Distribution: OpenPKG [REL]
Group: X11
License: GPL
Version: 3.0.4
Release: 20020611
# list of sources
Source0: ftp://ftp.trolltech.com/qt/source/qt-x11-free-%{version}.tar.gz
# build information
Prefix: %{l_prefix}
BuildRoot: %{l_buildroot}
BuildPreReq: OpenPKG, openpkg >= 20020206, gcc, X11
PreReq: OpenPKG, openpkg >= 20020206, X11
%if "%{with_freetype}" == "yes"
BuildPreReq: freetype
PreReq: freetype
%endif
AutoReq: no
AutoReqProv: no
# FIXME Do we need PreReq to match BuildPreReq?
%description
Qt is a GUI (graphical user interface) software toolkit which simplifies
the task of writing and maintaining GUIs, and allows the developer to
create prototypes and feature-rich applications quickly. Offering C++
library bindings, Qt enables development in an object-oriented
environment and appeals to developers with portability in mind. Qt's
portable C++ library bindings allow for error-free recompiling on at
least the three major platforms Unix (and Linux), Apple Macintosh, and
Microsoft Windows. Its API architecture is designed to reduce complexity
and increase reliability through a signal and slot mechanism, which is
similar to templates in C++, but with influences from component
technology.
%prep
%setup -q -n qt-x11-free-%{version}
%build
QTDIR=`pwd`; export QTDIR
PATH="%{l_prefix}/bin:$PATH"; export PATH
case "%{l_target}" in
*-freebsd* )
oscomp="freebsd-g++"
;;
*-linux* )
oscomp="linux-g++"
;;
*-solaris* )
oscomp="solaris-g++"
;;
esac
echo "yes" | ./configure \
-prefix %{l_prefix} -release \
-static -qt-gif -qt-zlib \
-platform $oscomp -thread -stl \
-qt-libpng -qt-libjpeg -qt-libmng \
-no-nas-sound -no-tablet -no-xkb \
%if "%{with_freetype}" == "yes"
-xft \
%else
-no-xft \
%endif
%if "%{with_other}" == "yes"
-sm -xinerama -xrender \
%else
-no-sm -no-xinerama -no-xrender \
%endif
-I%{l_prefix}/include \
-L%{l_prefix}/lib \
-R%{l_prefix}/lib
%{l_make} %{l_mflags -O} \
MAKE="%{l_make} %{l_mflags -O}" \
symlinks src-moc sub-src sub-tools
%install
rm -rf $RPM_BUILD_ROOT
%{l_shtool} mkdir -f -p -m 755 \
$RPM_BUILD_ROOT%{l_prefix}/bin \
$RPM_BUILD_ROOT%{l_prefix}/lib \
$RPM_BUILD_ROOT%{l_prefix}/include/qt \
$RPM_BUILD_ROOT%{l_prefix}/include/qt/private \
$RPM_BUILD_ROOT%{l_prefix}/man/man3
%{l_shtool} install -c -s -m 755 \
bin/designer bin/moc bin/uic \
$RPM_BUILD_ROOT%{l_prefix}/bin/
# FIXME Extreme hack
touch include/qt_windows.h
%{l_shtool} install -c -m 644 \
include/* $RPM_BUILD_ROOT%{l_prefix}/include/qt/
# FIXME This is a kludge, too
rm $RPM_BUILD_ROOT%{l_prefix}/include/qt/qt_windows.h
# FIXME This line should be integrated into the last shtool install
%{l_shtool} install -c -m 644 \
include/private/* $RPM_BUILD_ROOT%{l_prefix}/include/qt/private/
( cd lib && tar cf - * ) |\
( cd $RPM_BUILD_ROOT%{l_prefix}/lib && tar xf - )
( cd doc/man/man3
for man in *.3qt; do
mv $man `echo $man | sed -e 's;\.3qt$;.3;'`
done
%{l_shtool} install -c -m 644 \
*.3 $RPM_BUILD_ROOT%{l_prefix}/man/man3/
)
%{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std}
%files -f files
%clean
rm -rf $RPM_BUILD_ROOT