recipes: Replace 'outdir' with package hash tags
[dragora.git] / recipes / xorg / extra / libxkbcommon / recipe
blob900c8305caf822f10ce63978db972757777a1535
1 # Build recipe for libxkbcommon.
3 # Copyright (c) 2018 Markus Tornow, <tornow@riseup.net>.
4 # Copyright (c) 2018-2019 Matias Fonzo, <selk@dragora.org>.
6 # Licensed under the Apache License, Version 2.0 (the "License");
7 # you may not use this file except in compliance with the License.
8 # You may obtain a copy of the License at
10 #    http://www.apache.org/licenses/LICENSE-2.0
12 # Unless required by applicable law or agreed to in writing, software
13 # distributed under the License is distributed on an "AS IS" BASIS,
14 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 # See the License for the specific language governing permissions and
16 # limitations under the License.
18 program=libxkbcommon
19 version=0.8.4
20 release=1
22 # Define hash tag to categorize the package name output
23 pkghashtag=xorg
25 tarname=${program}-${version}.tar.xz
27 # Remote source(s)
28 fetch=http://xkbcommon.org/download/"$tarname"
30 description="
31 xkbcommon is a library to handle keyboard descriptions.
33 Including loading them from disk, parsing them and handling their
34 state.  It's mainly meant for client toolkits, window systems,
35 and other system applications; currently that includes Wayland,
36 kmscon, GTK+, Clutter, and others.
39 homepage=http://xkbcommon.org/
40 license="Custom (derivations from MIT/X11 license)"
42 # Source documentation
43 docs="LICENSE NEWS README.md "
44 docsdir="${docdir}/${program}-${version}"
46 build()
48     set -e
49         
50     unpack "${tardir}/$tarname"
51         
52     cd "$srcdir"
54     ./configure CFLAGS="$QICFLAGS" LDFLAGS="$QILDFLAGS" \
55      $configure_args \
56      --libdir=/usr/lib${libSuffix} \
57      --infodir=$infodir \
58      --mandir=$mandir \
59      --docdir=$docsdir \
60      --enable-static=no \
61      --enable-shared=yes \
62      --build="$(cc -dumpmachine)"
64     make -j${jobs} V=1
65     make -j${jobs} DESTDIR="$destdir" install-strip
67     # Compress info documents deleting index file for the package
68     if test -d "${destdir}/$infodir"
69     then
70         rm -f "${destdir}/${infodir}/dir"
71         lzip -9 "${destdir}/${infodir}"/*
72     fi
74     # Compress and link man pages (if needed)
75     if test -d "${destdir}/$mandir"
76     then
77         (
78             cd "${destdir}/$mandir"
79             find . -type f -exec lzip -9 '{}' +
80             find . -type l | while read -r file
81             do
82                 ln -sf "$(readlink -- "$file").lz" "${file}.lz"
83                 rm -- "$file"
84             done
85         )
86     fi
88     # Copy documentation
89     mkdir -p "${destdir}${docsdir}"
90     cp -p $docs "${destdir}${docsdir}/"