rewrite spec

This commit is contained in:
Sergey Zhemoitel 2013-12-17 03:49:58 +04:00
parent 2670f72966
commit bf9c1fe5aa

View file

@ -3,7 +3,7 @@
Name: jitsi
Version: 2.2
Release: 2
Release: 3
Summary: Jitsi - Open Source Video Calls and Chat
Group: Communications
License: LGPLv2+
@ -32,119 +32,87 @@ freely available under the terms of the GNU Lesser General Public License.
ant -Dlabel=%{label} rebuild
%install
[ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT
mkdir -p $RPM_BUILD_ROOT
mkdir -p $RPM_BUILD_ROOT/usr
mkdir -p $RPM_BUILD_ROOT/usr/bin
mkdir -p $RPM_BUILD_ROOT/usr/share
mkdir -p $RPM_BUILD_ROOT/usr/share/applications
mkdir -p $RPM_BUILD_ROOT/usr/share/doc/jitsi
mkdir -p $RPM_BUILD_ROOT/usr/share/man/man1
mkdir -p $RPM_BUILD_ROOT/usr/share/pixmaps
mkdir -p $RPM_BUILD_ROOT/usr/share/jitsi
mkdir -p $RPM_BUILD_ROOT/usr/share/jitsi/lib
mkdir -p $RPM_BUILD_ROOT/usr/share/jitsi/lib/bundle
mkdir -p $RPM_BUILD_ROOT/usr/share/jitsi/lib/native
mkdir -p $RPM_BUILD_ROOT/usr/share/jitsi/sc-bundles
# create structure dir
mkdir -p -m 0755 %{buildroot}%{_bindir} \
%{buildroot}%{_datadir}/%{name} \
%{buildroot}%{_datadir}/%{name}/lib \
%{buildroot}%{_datadir}/%{name}/lib/bundle \
%{buildroot}%{_datadir}/%{name}/lib/native \
%{buildroot}%{_datadir}/%{name}/sc-bundles \
%{buildroot}%{_docdir}/%{name} \
%{buildroot}%{_mandir}/man1 \
%{buildroot}%{_datadir}/applications \
%{buildroot}%{_datadir}/pixmaps
# copy the documentation
cp resources/install/debian/jitsi.1.tmpl $RPM_BUILD_ROOT/usr/share/man/man1/jitsi.1
sed -i -e "s/_PACKAGE_NAME_/jitsi/" $RPM_BUILD_ROOT/usr/share/man/man1/jitsi.1
sed -i -e "s/_APP_NAME_/Jitsi/" $RPM_BUILD_ROOT/usr/share/man/man1/jitsi.1
gzip $RPM_BUILD_ROOT/usr/share/man/man1/jitsi.1
install -Dm0644 resources/install/debian/jitsi.1.tmpl %{buildroot}%{_mandir}/man1/jitsi.1
sed -i -e "s/_PACKAGE_NAME_/jitsi/" %{buildroot}%{_mandir}/man1/%{name}.1
sed -i -e "s/_APP_NAME_/Jitsi/" %{buildroot}%{_mandir}/man1/%{name}.1
gzip %{buildroot}%{_mandir}/man1/%{name}.1
# copy the launcher script
#cp resources/install/debian/jitsi.sh.tmpl $RPM_BUILD_ROOT/usr/bin/jitsi
#sed -i -e "s/_PACKAGE_NAME_/jitsi/" $RPM_BUILD_ROOT/usr/bin/jitsi
install -Dm0655 resources/install/debian/jitsi.sh.tmpl %{buildroot}%{_bindir}/%{name}
sed -i -e "s/_PACKAGE_NAME_/jitsi/" %{buildroot}%{_bindir}/%{name}
# no more libaoss
#sed -i -e "s@export LD_PRELOAD=/usr/lib/libaoss.so@export LD_PRELOAD=/usr/lib/libaoss.so.0@" $RPM_BUILD_ROOT/usr/bin/sip-communicator
#chmod a+x $RPM_BUILD_ROOT/usr/bin/jitsi
# copy the menu icons
cp resources/install/debian/jitsi-32.xpm $RPM_BUILD_ROOT/usr/share/pixmaps/jitsi-32.xpm
cp resources/install/debian/jitsi-16.xpm $RPM_BUILD_ROOT/usr/share/pixmaps/jitsi-16.xpm
cp resources/install/debian/jitsi.svg $RPM_BUILD_ROOT/usr/share/pixmaps/jitsi.svg
# menu-entry
mkdir -p %{buildroot}%{_datadir}/applications
cat > %{buildroot}%{_datadir}/applications/%{name}.desktop <<EOF
[Desktop Entry]
Name=Jitsi
GenericName=Video Call and Instant Messaging client
GenericName[de]=Videokonferenz und Instant Messaging
Comment=Support for SIP, Jabber, AIM/ICQ, MSN, Yahoo!, Bonjour, IRC, RSS and other
Exec=%{name}
Icon=%{name}
Terminal=false
Type=Application
Categories=Network;Telephony;
EOF
# startscript
cat > %{name} << EOF
#!/bin/sh
#java -Dfelix.config.properties=file:%{_javadir}/sip-communicator/lib/felix.client.run.properties \
# -Djava.util.logging.config.file=%{_javadir}/sip-communicator/lib/logging.properties \
# org.apache.felix.main.Main
exec java -jar %{_javadir}/%{name}/%{name}-%{version}.jar
EOF
install -Dm0644 resources/install/debian/%{name}-32.xpm %{buildroot}%{_datadir}/pixmaps/%{name}-32.xpm
install -Dm0644 resources/install/debian/%{name}-16.xpm %{buildroot}%{_datadir}/pixmaps/%{name}-16.xpm
install -Dm0644 resources/install/debian/%{name}.svg %{buildroot}%{_datadir}/pixmaps/%{name}.svg
# copy the menu entry
#cp resources/install/debian/jitsi.desktop.tmpl $RPM_BUILD_ROOT/usr/share/applications/jitsi.desktop
#sed -i -e "s/_PACKAGE_NAME_/jitsi/" $RPM_BUILD_ROOT/usr/share/applications/jitsi.desktop
#sed -i -e "s/_APP_NAME_/Jitsi/" $RPM_BUILD_ROOT/usr/share/applications/jitsi.desktop
install -Dm0644 resources/install/debian/%{name}.desktop.tmpl %{buildroot}%{_datadir}/applications/%{name}.desktop
sed -i -e "s/_PACKAGE_NAME_/jitsi/" %{buildroot}%{_datadir}/applications/%{name}.desktop
sed -i -e "s/_APP_NAME_/Jitsi/" %{buildroot}%{_datadir}/applications/%{name}.desktop
# copy the sc-bundles
cp sc-bundles/*.jar $RPM_BUILD_ROOT/usr/share/jitsi/sc-bundles/
install -Dm0644 sc-bundles/*.jar %{buildroot}%{_datadir}/%{name}/sc-bundles/
# remove all slicks
rm -rf $RPM_BUILD_ROOT/usr/share/jitsi/sc-bundles/*-slick.jar
rm -rf $RPM_BUILD_ROOT/usr/share/jitsi/sc-bundles/slick*.jar
rm -rf %{buildroot}%{_datadir}/%{name}/sc-bundles/*-slick.jar
rm -rf %{buildroot}%{_datadir}/%{name}/sc-bundles/slick*.jar
# copy the os-specific sc-bundles
cp sc-bundles/os-specific/linux/*.jar $RPM_BUILD_ROOT/usr/share/jitsi/sc-bundles/
install -Dm0644 sc-bundles/os-specific/linux/*.jar %{buildroot}%{_datadir}/%{name}/sc-bundles/
# copy the lib jars
cp lib/*.jar $RPM_BUILD_ROOT/usr/share/jitsi/lib/
cp lib/bundle/* $RPM_BUILD_ROOT/usr/share/jitsi/lib/bundle/
rm $RPM_BUILD_ROOT/usr/share/jitsi/lib/bundle/junit.jar
cp lib/os-specific/linux/*.jar $RPM_BUILD_ROOT/usr/share/jitsi/lib/
cp lib/*.jar %{buildroot}%{_datadir}/%{name}/lib/
cp lib/bundle/* %{buildroot}%{_datadir}/%{name}/lib/bundle/
rm %{buildroot}%{_datadir}/%{name}/lib/bundle/junit.jar
cp lib/os-specific/linux/*.jar %{buildroot}%{_datadir}/%{name}/lib/
# copy the native libs
#%ifarch i386 i586 i686
#cp lib/native/linux/* $RPM_BUILD_ROOT/usr/share/jitsi/lib/native/
#%else
#cp lib/native/linux-64/* $RPM_BUILD_ROOT/usr/share/jitsi/lib/native/
#%endif
%ifarch i386 i586 i686
install -Dm0644 lib/native/linux/* %{buildroot}%{_datadir}/%{name}/lib/native/
%else
install -Dm0644 lib/native/linux-64/* %{buildroot}%{_datadir}/%{name}/lib/native/
%endif
# copy the resources
cp resources/install/logging.properties $RPM_BUILD_ROOT/usr/share/jitsi/lib/
cp lib/felix.client.run.properties $RPM_BUILD_ROOT/usr/share/jitsi/lib/
install -Dm0644 resources/install/logging.properties %{buildroot}%{_datadir}/%{name}/lib/
install -Dm0644 lib/felix.client.run.properties %{buildroot}%{_datadir}/%{name}/lib/
# Make felix deploy its bundles in ~/.felix/sip-communicator.bin
#sed -i -e "s/felix.cache.profiledir=sip-communicator.bin/felix.cache.profile=sip-communicator.bin/" $RPM_BUILD_ROOT/usr/share/jitsi/lib/felix.client.run.properties
sed -i -e "s/felix.cache.profiledir=sip-communicator.bin/felix.cache.profile=sip-communicator.bin/" $RPM_BUILD_ROOT/usr/share/jitsi/lib/felix.client.run.properties
# fix shell script
#sed -i -e "s/\/usr\/lib\/jni/\$LIBPATH\/native/" $RPM_BUILD_ROOT/usr/bin/jitsi
#sed -i -e "s/\/usr\/share\/java\/jdic\.jar/\$LIBPATH\/jdic_stub\.jar:\$LIBPATH\/jdic-all\.jar/" $RPM_BUILD_ROOT/usr/bin/jitsi
#sed -i -e "s/\/usr\/share\/java\/org\.apache\.felix\.framework\.jar/\$LIBPATH\/felix\.jar/" $RPM_BUILD_ROOT/usr/bin/jitsi
#sed -i -e "s/\/usr\/share\/java\/org\.apache\.felix\.main\.jar://" $RPM_BUILD_ROOT/usr/bin/jitsi
#sed -i -e "s/\/launchutils.jar//" $RPM_BUILD_ROOT/usr/bin/jitsi
sed -i -e "s/\/usr\/lib\/jni/\$LIBPATH\/native/" $RPM_BUILD_ROOT/usr/bin/jitsi
sed -i -e "s/\/usr\/share\/java\/jdic\.jar/\$LIBPATH\/jdic_stub\.jar:\$LIBPATH\/jdic-all\.jar/" $RPM_BUILD_ROOT/usr/bin/jitsi
sed -i -e "s/\/usr\/share\/java\/org\.apache\.felix\.framework\.jar/\$LIBPATH\/felix\.jar/" $RPM_BUILD_ROOT/usr/bin/jitsi
sed -i -e "s/\/usr\/share\/java\/org\.apache\.felix\.main\.jar://" $RPM_BUILD_ROOT/usr/bin/jitsi
sed -i -e "s/\/launchutils.jar//" $RPM_BUILD_ROOT/usr/bin/jitsi
%clean
[ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT
%files
%defattr(-,root,root,-)
%{_bindir}/jitsi
#{_libdir}/jitsi/
%{_datadir}/jitsi
%{_datadir}/applications/jitsi*
%{_datadir}/pixmaps/jitsi*
#{_libdir}/jitsi
%{_datadir}/%{name}
%{_datadir}/applications/%{name}*
%{_datadir}/pixmaps/%{name}*
%doc %{_mandir}/man*/*
%changelog