recipes: Preserve warnings flags appending the C flags in some (specific) recipes
[dragora.git] / qi / doc / recipe3
blob3cb791ddac55d0b5d1002d02d2d0dbe5774e18b8
1 # Build recipe for less.
3 # Copyright (c) 2016-2019, 2021 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=less
21 version=590
22 release=2
24 # Define a category for the output of the package name
25 pkgcategory=tools
27 tarname=${program}-${version}.tar.gz
29 # Remote source(s)
30 fetch=https://ftp.gnu.org/gnu/less/$tarname
32 description="
33 A text file viewer.
35 Less is a pager.  A pager is a program that displays text files.
37 This package also includes the 'lesspipe.sh' script.
40 homepage=https://www.gnu.org/software/less
41 license=GPLv3+
43 # Source documentation
44 docs="COPYING LICENSE NEWS README"
45 docsdir="${docdir}/${program}-${version}"
47 build()
49     unpack "${tardir}/$tarname"
51     cd "$srcdir"
53     # Set sane permissions
54     chmod -R u+w,go-w,a+rX-s .
56     ./configure CPPFLAGS="$QICPPFLAGS" \
57     CFLAGS="$QICFLAGS" LDFLAGS="$QILDFLAGS -static" \
58      $configure_args \
59      --mandir=$mandir \
60      --with-regex=pcre2 \
61      --with-secure \
62      --build="$(gcc -dumpmachine)"
64     make -j${jobs} V=1
65     make -j${jobs} DESTDIR="$destdir" install
67     # Include our custom lesspipe.sh version (which has support for lzip)
69     cp -p "${worktree}/archive/less/usr/bin/lesspipe.sh" "${destdir}/usr/bin"
70     chmod 755 "${destdir}/usr/bin/lesspipe.sh"
72     # Include profile file
73     mkdir -p "${destdir}/etc/profile.d"
74     cat "${worktree}/archive/less/etc/profile.d/less.sh" \
75       > "${destdir}/etc/profile.d/less.sh"
77     # To handle config file(s)
78     touch "${destdir}/etc/profile.d/.graft-config"
80     # Compress and link man pages (if needed)
81     if test -d "${destdir}/$mandir"
82     then
83         (
84             cd "${destdir}/$mandir"
85             find . -type f -exec lzip -9 {} +
86             find . -type l | while read -r file
87             do
88                 ln -sf "$(readlink -- "$file").lz" "${file}.lz"
89                 rm -- "$file"
90             done
91         )
92     fi
94     # Copy documentation
95     mkdir -p "${destdir}${docsdir}"
96     cp -p $docs "${destdir}${docsdir}"