]> git.t-rg.ws Git - slackbuilds.git/commitdiff
vips: added
authorfsLeg <fsleg@t-rg.ws>
Tue, 8 Jul 2025 18:03:16 +0000 (21:03 +0300)
committerfsLeg <fsleg@t-rg.ws>
Tue, 8 Jul 2025 18:03:16 +0000 (21:03 +0300)
vips/README [new file with mode: 0644]
vips/slack-desc [new file with mode: 0644]
vips/vips.SlackBuild [new file with mode: 0644]
vips/vips.info [new file with mode: 0644]

diff --git a/vips/README b/vips/README
new file mode 100644 (file)
index 0000000..978674f
--- /dev/null
@@ -0,0 +1,17 @@
+libvips is a demand-driven, horizontally threaded image processing
+library. Compared to similar libraries, libvips runs quickly and uses
+little memory. libvips is licensed under the LGPL-2.1-or-later.
+
+It has around 300 operations covering arithmetic, histograms,
+convolution, morphological operations, frequency filtering, colour,
+resampling, statistics and others. It supports a large range of numeric
+types, from 8-bit int to 128-bit complex. Images can have any number of
+bands. It supports a good range of image formats, including JPEG, JPEG
+2000, JPEG XL, TIFF, PNG, WebP, HEIC, AVIF, FITS, Matlab, OpenEXR, PDF,
+SVG, HDR, PPM / PGM / PFM, CSV, GIF, Analyze, NIfTI, DeepZoom, and
+OpenSlide. It can also load images via ImageMagick or GraphicsMagick,
+letting it work with formats like DICOM.
+
+It comes with bindings for C, C++, and the command-line.
+
+To build HTML documentation use DOCS=yes. This requires gi-docgen.
diff --git a/vips/slack-desc b/vips/slack-desc
new file mode 100644 (file)
index 0000000..3959212
--- /dev/null
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct.  It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+    |-----handy-ruler------------------------------------------------------|
+vips: vips (fast image processing library with low memory needs)
+vips:
+vips: libvips is a demand-driven, horizontally threaded image processing
+vips: library. Compared to similar libraries, libvips runs quickly and uses
+vips: little memory.
+vips:
+vips: Homepage: https://www.libvips.org/
+vips:
+vips:
+vips:
+vips:
diff --git a/vips/vips.SlackBuild b/vips/vips.SlackBuild
new file mode 100644 (file)
index 0000000..40b4374
--- /dev/null
@@ -0,0 +1,128 @@
+#!/bin/bash
+
+# Slackware build script for vips
+
+# Copyright 2025 Vladislav 'fsLeg' Borisov, Moscow, Russia
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+#    notice, this list of conditions and the following disclaimer.
+#
+#  THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+#  WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+#  MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO
+#  EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+#  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+#  PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+#  OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+#  WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+#  OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+#  ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=vips
+VERSION=${VERSION:-8.17.1}
+BUILD=${BUILD:-1}
+TAG=${TAG:-fsleg}
+PKGTYPE=${PKGTYPE:-txz}
+
+if [ -z "$ARCH" ]; then
+  case "$( uname -m )" in
+    i?86) ARCH=i586 ;;
+    arm*) ARCH=arm ;;
+       *) ARCH=$( uname -m ) ;;
+  esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+  echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+  exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+  SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+  LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+  SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+  LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+  SLKCFLAGS="-O2 -fPIC"
+  LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+  SLKCFLAGS="-O2 -fPIC"
+  LIBDIRSUFFIX="64"
+else
+  SLKCFLAGS="-O2"
+  LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+  -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+  -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+if [ "${DOCS:-no}" != "no" ]; then
+  DOCS=true
+else
+  DOCS=false
+fi
+
+mkdir build
+cd build
+  CFLAGS="$SLKCFLAGS" \
+  CXXFLAGS="$SLKCFLAGS" \
+  meson setup .. \
+    --buildtype=release \
+    --libdir=/usr/lib${LIBDIRSUFFIX} \
+    --localstatedir=/var \
+    --mandir=/usr/man \
+    --prefix=/usr \
+    --sysconfdir=/etc \
+    -Ddocs=$DOCS
+  meson compile
+  meson install --destdir=$PKG
+cd ..
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+  | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+  CITATION.cff CODE_OF_CONDUCT.md CONTRIBUTING.md ChangeLog LICENSE README.md \
+  $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+if [ "${DOCS}" == "true" ]; then
+  mv $PKG/usr/share/doc/vips $PKG/usr/doc/$PRGNAM-$VERSION/html
+  rmdir $PKG/usr/share/doc
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/vips/vips.info b/vips/vips.info
new file mode 100644 (file)
index 0000000..5652dba
--- /dev/null
@@ -0,0 +1,10 @@
+PRGNAM="vips"
+VERSION="8.17.1"
+HOMEPAGE="https://www.libvips.org/"
+DOWNLOAD="https://github.com/libvips/libvips/releases/download/v8.17.1/vips-8.17.1.tar.xz"
+MD5SUM="5c3bd1b6d15f43615ebe81591c3382ce"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Vladislav 'fsLeg' Borisov"
+EMAIL="fsleg@t-rg.ws"