recipes: Adjust 'docsdir' variable to be consistent with the current recipe format
[dragora.git] / recipes / tde / libr / recipe
blob0269f63d6ca0c98bba101935f8539077e9750fea
1 # Build recipe for libr.
3 # Copyright (c) 2021-2022 Matias Fonzo, <selk@dragora.org>.
5 # Licensed under the Apache License, Version 2.0 (the "License");
6 # you may not use this file except in compliance with the License.
7 # You may obtain a copy of the License at
9 #    http://www.apache.org/licenses/LICENSE-2.0
11 # Unless required by applicable law or agreed to in writing, software
12 # distributed under the License is distributed on an "AS IS" BASIS,
13 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 # See the License for the specific language governing permissions and
15 # limitations under the License.
17 # Exit immediately on any error
18 set -e
20 program=libr
21 version=20220503_0877bf9
22 release=1
24 # Define a category for the output of the package name
25 pkgcategory=tde
27 tarname=${program}-${version}.tar.lz
29 # Remote source(s)
30 fetch="
31  https://dragora.mirror.garr.it/current/sources/$tarname
32  rsync://rsync.dragora.org/current/sources/$tarname
35 description="
36 ELF resource manager library.
38 This is a simple inter-process messaging system (TQt-based shared library).
41 homepage=https://www.trinitydesktop.org/
42 license=LGPLv2.1
44 # Source documentation
45 docs="AUTHORS COPYING* ChangeLog NEWS README"
46 docsdir="${docdir}/${program}-${version}"
48 build()
50     unpack "${tardir}/$tarname"
52     cd "$srcdir"
54     # We don't have doxygen by the moment, so we avoid calling it
55     # for generate the documentation (aka manpage)
56     patch -Np1 -i "${worktree}/patches/libr/do-not-call-doxygen-for-doc.diff"
58     rm -rf man/
60     # Set sane permissions
61     chmod -R u+w,go-w,a+rX-s .
63     rm -rf BUILD
64     mkdir BUILD
65     cd BUILD
67     cmake \
68      -DCMAKE_EXPORT_COMPILE_COMMANDS=ON                     \
69      -DCMAKE_BUILD_TYPE=RelWithDebInfo                      \
70      -DCMAKE_C_FLAGS_RELWITHDEBINFO:STRING="$QICFLAGS"      \
71      -DCMAKE_SHARED_LINKER_FLAGS:STRING="$(echo $QILDFLAGS | sed 's/-s//')" \
72      -DCMAKE_INSTALL_PREFIX=/usr                            \
73      -DLIB_SUFFIX=${libSuffix}                              \
74      -DCMAKE_VERBOSE_MAKEFILE=ON                            \
75      -DWITH_BACKEND_LIBBFD=ON                               \
76      -DWITH_BACKEND_LIBELF=ON                               \
77      -DWITH_BACKEND_READONLY=ON                             \
78      -G Ninja ..
80     ninja -j${jobs}
81     DESTDIR="$destdir" ninja -j${jobs} install
83     # Compress and link man pages (if needed)
84     if test -d "${destdir}/$mandir"
85     then
86         (
87             cd "${destdir}/$mandir"
88             find . -type f -exec lzip -9 {} +
89             find . -type l | while read -r file
90             do
91                 ln -sf "$(readlink -- "$file").lz" "${file}.lz"
92                 rm -- "$file"
93             done
94         )
95     fi
97     cd ..
99     # Copy documentation
100     mkdir -p "${destdir}/$docsdir"
101     cp -p $docs "${destdir}/$docsdir"