File jwm.spec of Package jwm
#
# spec file for package jwm (Version 2.0)
#
# Copyright (c) 2008 SOAD Project, Russia.
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bug fixes or comments to the Maintainer: sda00@himki.net
#
# norootforbuild
Name: jwm
Version: svn_20090309
Release: SOAD.1
License: GPL
URL: http://joewing.net/programs/jwm/#description
#Provides: %{name} jwm
BuildRoot: %{_tmppath}/%{name}-%{version}build
Source: %{name}-svn.tar.bz2
Source1: jwm.desktop
Packager: sda00 <sda00@himki.net>
Group: System/GUI/Enlightenment
Summary: JWM is a window manager for the X11 Window System. JWM is written in C and uses only Xlib at a minimum
# core
BuildRequires: gcc-c++ gcc iputils cvs m4 autoconf automake libtool glibc-devel glibc glib2-devel glib2 zlib-devel zlib libjpeg-devel libjpeg doxygen fontconfig-devel fontconfig
# X env
BuildRequires: xorg-x11-devel xorg-x11-util-devel xorg-x11-libX11-devel xorg-x11-fonts-devel xorg-x11-libXfixes-devel xorg-x11-server-extra xorg-x11-server xorg-x11 xorg-x11-libXpm-devel xorg-x11-libXpm dbus-1-x11 xkeyboard-config xorg-x11-libXext-devel xorg-x11-libXext xorg-x11-libxcb-devel xorg-x11-libxcb
# functional extensions
BuildRequires: gettext-devel gettext imlib2-devel imlib2 pkg-config libpng libpng-devel libxml2-devel libxml2 libxslt-devel libxslt giflib-devel giflib pango pango-devel freetype2-devel freetype2 libtiff-devel tiff librsvg-devel librsvg gtk-devel gtk gtk2 gtk2-devel ncurses-devel ncurses cairo-devel cairo libcurl-devel curl openssl-devel openssl libnotify xdg-utils xdg-menu libnotify notification-daemon pam pam-devel pam-modules pam-config fdupes libcurl-devel curl alsa-devel alsa alsa-tools-devel alsa-tools esound-devel fribidi fribidi-devel
#BuildRequires: xine-devel xine-lib
BuildRequires: dbus-1-devel dbus-1 wget
%description
JWM is a window manager for the X11 Window System. JWM is written in C and uses only Xlib at a minimum. The following libraries can also be used if available:
* libXext for the shape extension
* libXext for the render extension
* libXinerama for Xinerama support
* libXpm for XPM backgrounds and icons
* libjpeg for JPEG backgrounds and icons.
* libpng for PNG backgrounds and icons
* libxft for antialiased and true type fonts
* libfribidi for right-to-left language support
It can support some MWM, GNOME, and WM Spec hints.
Authors:
http://joewing.net/about.shtml
Joe Wingbermuehle
You can always update your jwm to the current state just by rebuilding the .spec file:
>rpmbuild -bb jwm.spec
or by rebuilding the .src.rpm file itself:
>rpmbuild --rebuild jwm*.src.rpm
The new compiled .rpm will be available in /usr/src/packages/RPM/_your_PC_type/
Prepared by SOAD project.
%prep
rm -rf "$RPM_BUILD_ROOT"
#%setup
%{?suse_update_config:%{suse_update_config -f}}
%build
%install
## Function declaration
build_without_uninstall ()
{
%configure
make || return 1
make DESTDIR=$RPM_BUILD_ROOT install || return 1
mkdir -p $RPM_BUILD_ROOT/usr/share/xsessions
cp $RPM_SOURCE_DIR/jwm.desktop $RPM_BUILD_ROOT/usr/share/xsessions/jwm.desktop
find $RPM_BUILD_ROOT/ -type f -iname '*.la' -exec rm {} \;
find $RPM_BUILD_ROOT/ -type f -iname '*.a' -exec rm {} \;
## find $RPM_BUILD_ROOT/ -type f -perm 755 -exec strip -s {} \;
}
## Getting the sources
if [ "`ping joewing.net -c 10 2>&1 | grep icmp_seq`" != "" ] ; then
wget http://joewing.net/programs/jwm/jwm-svn.tar.bz2
tar xf jwm-svn.tar.bz2
cd jwm-svn
cat Makefile.in | sed 's/install\ \-d\ \$(SYSCONF)/install\ \-d\ \$(RPM_BUILD_ROOT)\$(SYSCONF)/' > Makefile.in1
cat Makefile.in1 | sed 's/install\ \-m\ 644\ example\.jwmrc\ \$(SYSCONF)\/system.jwmrc/install\ \-m\ 644\ example\.jwmrc\ \$(RPM_BUILD_ROOT)\$(SYSCONF)\/system.jwmrc/' > Makefile.in2
cat Makefile.in2 | sed 's/install\ \-d\ \$(MANDIR)\/man1/install\ \-d\ \$(RPM_BUILD_ROOT)\$(MANDIR)\/man1/' > Makefile.in3
cat Makefile.in3 | sed 's/install\ \-m\ 644\ jwm\.1\ \$(MANDIR)\/man1\/jwm.1/install\ \-m\ 644\ jwm\.1\ \$(RPM_BUILD_ROOT)\$(MANDIR)\/man1\/jwm.1/' > Makefile.in4
cat Makefile.in4 | sed 's/cd\ src\ \;\ \$(MAKE)\ install/cd\ src\ \;\ \$(MAKE)\ \;\ install\ \-d\ \$(RPM_BUILD_ROOT)\/usr\/bin\ \;\ install\ \-m\ 755\ jwm\ \$(RPM_BUILD_ROOT)\/usr\/bin\/jwm/' > Makefile.in
else
tar xfm $RPM_SOURCE_DIR/%{name}-svn.tar.bz2
cd %{name}-svn
cat Makefile.in | sed 's/install\ \-d\ \$(SYSCONF)/install\ \-d\ \$(RPM_BUILD_ROOT)\$(SYSCONF)/' > Makefile.in1
cat Makefile.in1 | sed 's/install\ \-m\ 644\ example\.jwmrc\ \$(SYSCONF)\/system.jwmrc/install\ \-m\ 644\ example\.jwmrc\ \$(RPM_BUILD_ROOT)\$(SYSCONF)\/system.jwmrc/' > Makefile.in2
cat Makefile.in2 | sed 's/install\ \-d\ \$(MANDIR)\/man1/install\ \-d\ \$(RPM_BUILD_ROOT)\$(MANDIR)\/man1/' > Makefile.in3
cat Makefile.in3 | sed 's/install\ \-m\ 644\ jwm\.1\ \$(MANDIR)\/man1\/jwm.1/install\ \-m\ 644\ jwm\.1\ \$(RPM_BUILD_ROOT)\$(MANDIR)\/man1\/jwm.1/' > Makefile.in4
cat Makefile.in4 | sed 's/cd\ src\ \;\ \$(MAKE)\ install/cd\ src\ \;\ \$(MAKE)\ \;\ install\ \-d\ \$(RPM_BUILD_ROOT)\/usr\/bin\ \;\ install\ \-m\ 755\ jwm\ \$(RPM_BUILD_ROOT)\/usr\/bin\/jwm/' > Makefile.in
fi
## Build all components
build_without_uninstall
%clean
rm -rf "$RPM_BUILD_ROOT"
# $RPM_SOURCE_DIR
#%pre
#%post
#%run_ldconfig
%files
%defattr(-,root,root)
%{_sysconfdir}/system.jwmrc
%{_bindir}/jwm
%{_mandir}/man1/jwm.1.gz
%{_datadir}/xsessions/jwm.desktop
%changelog
* Thu Dec 11 2008 update to the surrent svn <sda00@himki.net>
* Tue Oct 14 2008 first build for OpenSUSE <sda00@himki.net>
- added online rebuild capability of .src.rpm or .spec files