1
0
forked from pool/libxkbcommon
libxkbcommon/libxkbcommon.spec

168 lines
5.4 KiB
RPMSpec
Raw Normal View History

#
# spec file for package libxkbcommon
#
# Copyright (c) 2014 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: libxkbcommon
Version: 0.4.2
Release: 0
Summary: Library for handling xkb descriptions
License: MIT
Group: Development/Libraries/C and C++
Url: http://xkbcommon.org/
#Git-Clone: git://github.com/xkbcommon/libxkbcommon
Source: http://xkbcommon.org/download/%name-%version.tar.xz
Source2: baselibs.conf
BuildRoot: %{_tmppath}/%{name}-%{version}-build
#git#BuildRequires: autoconf >= 2.62
#git#BuildRequires: automake
BuildRequires: bison
BuildRequires: flex
#git#BuildRequires: libtool >= 2
BuildRequires: pkgconfig
BuildRequires: xz
BuildRequires: pkgconfig(xkeyboard-config)
BuildRequires: pkgconfig(xorg-macros) >= 1.8
BuildRequires: pkgconfig(xproto)
%if 0%{?suse_version} >= 1315
BuildRequires: pkgconfig(xcb-xkb) >= 1.10
%endif
%description
xkbcommon is a keymap handling library, which can parse XKB
descriptions (e.g. from xkeyboard-config), and use this to help its
users make sense of their keyboard input. Unfortunately, X11's
requirements mean this is not actually usable for the X server, but it
should be perfectly usable for client toolkits, as well as alternative
windowing systems, compositors and system-level clients such as
Wayland and kmscon.
%package -n libxkbcommon0
Summary: Library for handling xkb descriptions
Group: System/Libraries
%description -n libxkbcommon0
xkbcommon is a keymap handling library, which can parse XKB
descriptions (e.g. from xkeyboard-config), and use this to help its
users make sense of their keyboard input. Unfortunately, X11's
requirements mean this is not actually usable for the X server, but it
should be perfectly usable for client toolkits, as well as alternative
windowing systems, compositors and system-level clients such as
Wayland and kmscon.
%package -n libxkbcommon-x11-0
Summary: Library for handling xkb descriptions using XKB-X11
Group: System/Libraries
%description -n libxkbcommon-x11-0
An addon library that supports creating keymaps with the XKB X11
protocol by querying the X server directly.
%package devel
Summary: Development files for the libxkbcommon library
Group: Development/Libraries/C and C++
Requires: libxkbcommon0 = %version-%release
%description devel
xkbcommon is a keymap handling library, which can parse XKB
descriptions (e.g. from xkeyboard-config), and use this to help its
users make sense of their keyboard input. Unfortunately, X11's
requirements mean this is not actually usable for the X server, but it
should be perfectly usable for client toolkits, as well as alternative
windowing systems, compositors and system-level clients such as
Wayland and kmscon.
This package contains the development headers for the library found
in libxkbcommon.
%package x11-devel
Summary: Development files for the libxkbcommon-x11 library
Group: Development/Libraries/C and C++
Requires: libxkbcommon-x11-0 = %version-%release
%description x11-devel
xkbcommon is a keymap handling library, which can parse XKB
descriptions (e.g. from xkeyboard-config), and use this to help its
users make sense of their keyboard input.
This package contains the development headers for the library found
in %name-x11-0.
%prep
%setup -q
%build
if [ ! -e configure ]; then
NOCONFIGURE=1 ./autogen.sh;
fi;
%if 0%{?suse_version} >= 1315
extra_opts=--enable-x11
%else
extra_opts=--disable-x11
%endif
# Ensure people will use pkgconfig to locate headers.
%configure --disable-static --includedir="%_includedir/pkg/%name" $extra_opts
# libxkbcommon has added symbols between 0.2.0..0.4.2 without maintenance;
# force some versioning.
echo "V_%version { global: *; };" >xkb.sym
make %{?_smp_mflags} V=1 LDFLAGS="-Wl,--version-script=$PWD/xkb.sym"
%install
make install DESTDIR="%buildroot";
rm -f "%buildroot/%_libdir"/*.la;
%post -n libxkbcommon0 -p /sbin/ldconfig
%postun -n libxkbcommon0 -p /sbin/ldconfig
%post -n libxkbcommon-x11-0 -p /sbin/ldconfig
%postun -n libxkbcommon-x11-0 -p /sbin/ldconfig
%files -n libxkbcommon0
%defattr(-,root,root)
%doc COPYING NEWS
%_libdir/libxkbcommon.so.0*
%files devel
%defattr(-,root,root)
%doc COPYING NEWS
%_includedir/pkg/
%if 0%{?suse_version} >= 1315
%exclude %_includedir/pkg/%name/xkbcommon/xkbcommon-x11.h
%endif
%_libdir/libxkbcommon.so
%_libdir/pkgconfig/xkbcommon.pc
%if 0%{?suse_version} >= 1315
%files -n libxkbcommon-x11-0
%defattr(-,root,root)
%doc COPYING NEWS
%_libdir/libxkbcommon-x11.so.*
%endif
%if 0%{?suse_version} >= 1315
%files x11-devel
%defattr(-,root,root)
%doc COPYING NEWS
%dir %_includedir/pkg
%dir %_includedir/pkg/%name
%dir %_includedir/pkg/%name/xkbcommon
%_includedir/pkg/%name/xkbcommon/xkbcommon-x11.h
%_libdir/libxkbcommon-x11.so
%_libdir/pkgconfig/xkbcommon-x11.pc
%endif
%changelog