info: qt.spec

Jacek Konieczny jajcus w zeus.polsl.gliwice.pl
Pon, 14 Wrz 1998, 19:52:02 CEST


Czesc,

  Oto moja proba przerobienia czegos dla PLD.
  Standardowe pakiety Qt byly straszne, wiec sprobowalem cos z tym zrobic.
  Niech fachowcy sie przyjza dokladnie, bo to "moj pierwszy raz"
  qt-1.33, bo 1.34 nie mam i chwilowo nie mam zamiaru ciagnac przez modem
(spec prawdopodobnie prawie bez zmian), a qt-1.40 stwarza problemy z
KDE-1.0. Ale tez kiedys zrobie.

  Oto spec:

Name: qt
Summary: The Qt GUI application framework: Shared library
Summary(pl): Biblioteka Qt
Version: 1.33
Release: 3
Source0: ftp.troll.no:/qt/source/qt-1.33.tar.gz
Source1: qt.csh
Source2: qt.sh
Copyright: distributable
Group: X11/Libraries
BuildRoot: /tmp/RHBuildRoot

%package devel
Summary(pl): Pliki nagłówkowe, przykłady i dokumentacja biblioteki
Summary: Include files and documentation needed to compile
Group: X11/Libraries

%description
Contains the shared library needed to run Qt applications, as well as
the README files for Qt.

%description -l pl
Zawiera bibliotekę Qt, wymaganą dla aplikacji, które zniej korzystają
- takich jak KDE, oraz pliki README dla Qt. 

%description -l pl devel
Zawiera pliki potrzebne do tworzenia i kompilacji aplikacji Qt:
pliki nagłówkowe, meta kompiler (moc), dokumentację.
Zobacz http://www.troll.no aby dowiedzieć się więcej o Qt.
Dokumentację biblioteki znajdziesz w pliku: /usr/doc/qt-1.33/html/index.html  

%description devel
Contains the files necessary to develop applications using Qt: header
files, the Qt meta object compiler, man pages, HTML documentation and
example programs.  See http://www.troll.no for more information about
Qt, or file:/usr/lib/qt/html/index.html for Qt documentation in HTML.

%prep
%setup -n qt-1.33

%build
make linux-gcc-shared CFLAGS="-nostdinc++ $RPM_OPT_FLAGS" "CC=g++"
LD_LIBRARY_PATH=/usr/X11R6/lib make CFLAGS="-nostdinc++ $RPM_OPT_FLAGS" CC="g++"

%install
install -d $RPM_BUILD_ROOT/usr/X11R6/bin
install -d $RPM_BUILD_ROOT/usr/X11R6/man/man1
install -d $RPM_BUILD_ROOT/usr/X11R6/man/man3
install -d $RPM_BUILD_ROOT/usr/X11R6/lib
install bin/moc $RPM_BUILD_ROOT/usr/X11R6/bin/moc
install lib/libqt.so.1.33 $RPM_BUILD_ROOT/usr/X11R6/lib
cp -fR man/. $RPM_BUILD_ROOT/usr/X11R6/man
install -d $RPM_BUILD_ROOT/usr/X11R6/include
cp -fR include/. $RPM_BUILD_ROOT/usr/X11R6/include

for a in `find examples -name Makefile` `find tutorial -name Makefile`; do
    M=`dirname $a`/Makefile
    N=${M}.new
    cat > $N <<EOF
####### This section is automatically generated

INCDIR	=  /usr/X11R6/include/qt
LFLAGS  = -lqt -L/usr/X11R6/lib
SHELL   = /bin/sh
CC	= g++ 
MOC	= /usr/X11R6/bin/moc
EOF

echo "CFLAGS	= -nostdinc++ $RPM_OPT_FLAGS -Wall -W -I/usr/X11R6/include" >> $N

cat >> $N <<EOF

####### End of automatically generated section
#
EOF
    sed -ne '/# *\$Source.*\$/,$ p' < $M >> $N
    rm -f $M
    mv $N $M
    echo edited $M
done

for a in examples/* tutorial/*; do
  if [ -d $a ];
  then
    (
      cd $a 
      A=`awk -F= '/^SRCMETA/{print $2}' Makefile`
      [ A"${A}" = A ] || rm -v $A
    )  
  fi
done
rm -f tutorial/*/*.o
rm -f examples/*/*.o
install -d $RPM_BUILD_ROOT/etc/profile.d
cp $RPM_SOURCE_DIR/qt.sh $RPM_BUILD_ROOT/etc/profile.d/qt.sh 
cp $RPM_SOURCE_DIR/qt.csh $RPM_BUILD_ROOT/etc/profile.d/qt.csh 

%post
/sbin/ldconfig

%postun
/sbin/ldconfig

%files
%doc ANNOUNCE LICENSE README.QT FAQ PORTING README changes-1.30 changes-1.31 changes-1.32 changes-1.33 html tutorial examples
%attr(755,root,root,755) /etc/profile.d/*
%attr(755,root,root,755) /usr/X11R6/lib/libqt.so.1.33

%files devel
%attr(644,root,root,-) /usr/X11R6/bin/moc
%attr(644,root,root,-) /usr/X11R6/man/man1/moc.1
%attr(644,root,root,-) /usr/X11R6/man/man3/*.3qt
%attr(644,root,root,755) /usr/X11R6/include/*

%changelog
* Mon Sep 14 1998 Jacek Konieczny <jajcus w zeus.polsl.gliwice.pl>

Przeróbki oryginalnego speca Troll-ów:
- umożliwienie kompilacji z konta zwykłego użytkownika
  - dodanie BuildRoot oraz usunięcie wszystkich chmod, chown z %install
- pliki przeniesione do hierarchi /usr/X11R6
- dokumentacja html, przyklady i tutorial oznaczone jako %doc
- dodane pliki do /etc/profile.d ustawiające QTDIR (potrzebne
  do kompilacji niektórych aplikacji)
- kompilator zmieniony z gcc na g++, ale bez nagłówków C++
  w ten sposób nna pewno będzie użyty właściwy kompilator C++
  Niestety dochodzi zależność od libstdc++


--
+---------+--------------------------------------------------------+
!      ,  !            Jacek Konieczny, Gliwice, Poland            !      
! Jajcus  !   email: jajcus w zeus.polsl.gliwice.pl, jacek w kde.org   !
!         ! ICQ# 7149127                           WWW: none (yet) !
+---------+--------------------------------------powered-by-Linux--+



Więcej informacji o liście dyskusyjnej pld-devel-pl