recipe 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. # Build recipe for babl.
  2. #
  3. # Copyright (c) 2022 Matias Fonzo, <selk@dragora.org>.
  4. #
  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
  8. #
  9. # http://www.apache.org/licenses/LICENSE-2.0
  10. #
  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.
  16. # Exit immediately on any error
  17. set -e
  18. program=babl
  19. version=0.1.98
  20. release=1
  21. # Define a category for the output of the package name
  22. pkgcategory=x-libs
  23. tarname=${program}-${version}.tar.xz
  24. # Remote source(s)
  25. fetch=https://download.gimp.org/pub/babl/"${version%.*}"/$tarname
  26. description="
  27. A pixel encoding and color space conversion engine in C.
  28. It allows converting between different methods of storing pixels known as
  29. pixel formats that have with different bitdepths and other data
  30. representations, color models, color spaces and component permutations.
  31. A vocabulary to formulate new pixel formats from existing primitives is
  32. provided as well as the framework to add new color models, spaces and
  33. data types.
  34. "
  35. homepage=https://gegl.org/babl/
  36. license=LGPLv3+
  37. # Source documentation
  38. docs="AUTHORS COPYING NEWS TODO"
  39. docsdir="${docdir}/${program}-${version}"
  40. build()
  41. {
  42. unpack "${tardir}/$tarname"
  43. cd "$srcdir"
  44. # Set sane permissions
  45. chmod -R u+w,go-w,a+rX-s .
  46. rm -rf BUILD
  47. mkdir BUILD
  48. cd BUILD
  49. CPPFLAGS="$QICPPFLAGS" CFLAGS="$QICFLAGS" LDFLAGS="$QILDFLAGS" \
  50. meson setup $configure_args \
  51. --libdir /usr/lib${libSuffix} \
  52. --buildtype=release \
  53. --strip \
  54. -Dwith-lcms=true \
  55. ..
  56. ninja -j${jobs}
  57. DESTDIR="$destdir" ninja -j${jobs} install
  58. cd ..
  59. # Compress and link man pages (if needed)
  60. if test -d "${destdir}/$mandir"
  61. then
  62. (
  63. cd "${destdir}/$mandir"
  64. find . -type f -exec lzip -9 {} +
  65. find . -type l | while read -r file
  66. do
  67. ln -sf "$(readlink -- "$file").lz" "${file}.lz"
  68. rm -- "$file"
  69. done
  70. )
  71. fi
  72. # Copy documentation
  73. mkdir -p "${destdir}/$docsdir"
  74. cp -p $docs "${destdir}/$docsdir"
  75. }