aboutsummaryrefslogtreecommitdiff
path: root/libraries
diff options
context:
space:
mode:
Diffstat (limited to 'libraries')
-rw-r--r--libraries/CLI11/CLI11.SlackBuild2
-rw-r--r--libraries/CLI11/CLI11.info6
-rw-r--r--libraries/FreeImage/FreeImage.SlackBuild3
-rw-r--r--libraries/FreeImage/cross_platform_byteswap_fix.patch22
-rw-r--r--libraries/FreeImage/gcc-version-fix-includes.patch46
-rw-r--r--libraries/Mustache/Mustache.SlackBuild107
-rw-r--r--libraries/Mustache/Mustache.info10
-rw-r--r--libraries/Mustache/README7
-rw-r--r--libraries/Mustache/slack-desc19
-rw-r--r--libraries/SDL2_sound/SDL2_sound.SlackBuild2
-rw-r--r--libraries/SDL2_sound/SDL2_sound.info6
-rw-r--r--libraries/SOPE/SOPE.SlackBuild10
-rw-r--r--libraries/SOPE/SOPE.info6
-rw-r--r--libraries/SimGear/README5
-rw-r--r--libraries/SimGear/SimGear.SlackBuild14
-rw-r--r--libraries/SimGear/SimGear.info6
-rw-r--r--libraries/SimGear/compositor-pass-missing-array-include.patch11
-rw-r--r--libraries/VTK/README6
-rw-r--r--libraries/VTK/VTK.SlackBuild14
-rw-r--r--libraries/VTK/VTK.info6
-rw-r--r--libraries/agar/agar.info2
-rw-r--r--libraries/ahven/README6
-rw-r--r--libraries/ahven/ahven.SlackBuild94
-rw-r--r--libraries/ahven/ahven.info10
-rw-r--r--libraries/ahven/slack-desc19
-rw-r--r--libraries/allegro/allegro.SlackBuild2
-rw-r--r--libraries/allegro/allegro.info6
-rw-r--r--libraries/allegro4/allegro4.info2
-rw-r--r--libraries/aqbanking/aqbanking.SlackBuild4
-rw-r--r--libraries/aqbanking/aqbanking.info6
-rw-r--r--libraries/aunit/README4
-rw-r--r--libraries/aunit/aunit.SlackBuild107
-rw-r--r--libraries/aunit/aunit.info10
-rw-r--r--libraries/aunit/doinst.sh3
-rw-r--r--libraries/aunit/douninst.sh3
-rw-r--r--libraries/aunit/slack-desc19
-rw-r--r--libraries/botocore/botocore.SlackBuild4
-rw-r--r--libraries/botocore/botocore.info6
-rw-r--r--libraries/dav1d/dav1d.SlackBuild4
-rw-r--r--libraries/dav1d/dav1d.info6
-rw-r--r--libraries/dcmtk/dcmtk.SlackBuild4
-rw-r--r--libraries/dcmtk/dcmtk.info6
-rw-r--r--libraries/digimend-kernel-drivers/b9ef432e2b93c31d2e39be13f22c61f4c2e8b5cb.patch92
-rw-r--r--libraries/digimend-kernel-drivers/digimend-kernel-drivers.SlackBuild8
-rw-r--r--libraries/docopt.cpp/README5
-rw-r--r--libraries/docopt.cpp/docopt.cpp.SlackBuild109
-rw-r--r--libraries/docopt.cpp/docopt.cpp.info10
-rw-r--r--libraries/docopt.cpp/slack-desc19
-rw-r--r--libraries/duktape/README32
-rw-r--r--libraries/duktape/duktape.SlackBuild104
-rw-r--r--libraries/duktape/duktape.info10
-rw-r--r--libraries/duktape/slack-desc19
-rw-r--r--libraries/eduvpn-common/README1
-rw-r--r--libraries/eduvpn-common/eduvpn-common.SlackBuild104
-rw-r--r--libraries/eduvpn-common/eduvpn-common.info10
-rw-r--r--libraries/eduvpn-common/slack-desc19
-rw-r--r--libraries/fcitx5-rime/fcitx5-rime.SlackBuild2
-rw-r--r--libraries/fcitx5-rime/fcitx5-rime.info6
-rw-r--r--libraries/florist/README5
-rw-r--r--libraries/florist/florist.SlackBuild128
-rw-r--r--libraries/florist/florist.info10
-rw-r--r--libraries/florist/slack-desc19
-rw-r--r--libraries/gamemode/gamemode.SlackBuild2
-rw-r--r--libraries/gamemode/gamemode.info2
-rw-r--r--libraries/gnatcoll-bindings/README5
-rw-r--r--libraries/gnatcoll-bindings/gnatcoll-bindings.SlackBuild109
-rw-r--r--libraries/gnatcoll-bindings/gnatcoll-bindings.info10
-rw-r--r--libraries/gnatcoll-bindings/slack-desc19
-rw-r--r--libraries/gnatcoll-core/README3
-rw-r--r--libraries/gnatcoll-core/compiler-error.patch28
-rw-r--r--libraries/gnatcoll-core/gnatcoll-core.SlackBuild137
-rw-r--r--libraries/gnatcoll-core/gnatcoll-core.info10
-rw-r--r--libraries/gnatcoll-core/slack-desc19
-rw-r--r--libraries/gnatcoll-db/README3
-rw-r--r--libraries/gnatcoll-db/gnatcoll-db.SlackBuild114
-rw-r--r--libraries/gnatcoll-db/gnatcoll-db.info10
-rw-r--r--libraries/gnatcoll-db/slack-desc19
-rw-r--r--libraries/gnome-desktop/gnome-desktop.SlackBuild8
-rw-r--r--libraries/gnome-desktop/gnome-desktop.info6
-rw-r--r--libraries/goffice/goffice.SlackBuild4
-rw-r--r--libraries/goffice/goffice.info6
-rw-r--r--libraries/grpc/grpc.SlackBuild2
-rw-r--r--libraries/grpc/grpc.info6
-rw-r--r--libraries/gtk-fortran/README2
-rw-r--r--libraries/gtk-fortran/doinst.sh3
-rw-r--r--libraries/gtk-fortran/gtk-fortran.SlackBuild131
-rw-r--r--libraries/gtk-fortran/gtk-fortran.info10
-rw-r--r--libraries/gtk-fortran/slack-desc19
-rw-r--r--libraries/gtkada/README3
-rw-r--r--libraries/gtkada/gtkada.SlackBuild156
-rw-r--r--libraries/gtkada/gtkada.info10
-rw-r--r--libraries/gtkada/slack-desc19
-rw-r--r--libraries/gumbo-parser/gumbo-parser.SlackBuild7
-rw-r--r--libraries/gumbo-parser/gumbo-parser.info6
-rw-r--r--libraries/gupnp/gupnp.SlackBuild4
-rw-r--r--libraries/gupnp/gupnp.info6
-rw-r--r--libraries/gwenhywfar/gwenhywfar.SlackBuild2
-rw-r--r--libraries/gwenhywfar/gwenhywfar.info6
-rw-r--r--libraries/iir1/README12
-rw-r--r--libraries/iir1/iir1.SlackBuild104
-rw-r--r--libraries/iir1/iir1.info10
-rw-r--r--libraries/iir1/slack-desc19
-rw-r--r--libraries/imlib2/imlib2.SlackBuild2
-rw-r--r--libraries/imlib2/imlib2.info6
-rw-r--r--libraries/jbig2enc/configure.ac.patch20
-rw-r--r--libraries/jbig2enc/jbig2.136
-rw-r--r--libraries/jbig2enc/jbig2.rst4
-rw-r--r--libraries/jbig2enc/jbig2enc-2019.09.08-leptonica-1.83.0.patch42
-rw-r--r--libraries/jbig2enc/jbig2enc.SlackBuild23
-rw-r--r--libraries/jbig2enc/jbig2enc.info6
-rw-r--r--libraries/jbig2enc/jbig2topdf.py.1 (renamed from libraries/jbig2enc/pdf.py.1)22
-rw-r--r--libraries/jbig2enc/jbig2topdf.py.rst (renamed from libraries/jbig2enc/pdf.py.rst)27
-rw-r--r--libraries/jsoncpp/jsoncpp.SlackBuild2
-rw-r--r--libraries/jsoncpp/jsoncpp.info6
-rw-r--r--libraries/lib3ds/README37
-rw-r--r--libraries/lib3ds/lib3ds.SlackBuild124
-rw-r--r--libraries/lib3ds/lib3ds.info10
-rw-r--r--libraries/lib3ds/slack-desc19
-rw-r--r--libraries/lib3mf/README16
-rw-r--r--libraries/lib3mf/lib3mf.SlackBuild120
-rw-r--r--libraries/lib3mf/lib3mf.info10
-rw-r--r--libraries/lib3mf/slack-desc19
-rw-r--r--libraries/libcec/libcec.SlackBuild3
-rw-r--r--libraries/libcec/libcec.info8
-rw-r--r--libraries/libcpuid/libcpuid.SlackBuild2
-rw-r--r--libraries/libcpuid/libcpuid.info6
-rw-r--r--libraries/libcurl-gnutls/libcurl-gnutls.SlackBuild2
-rw-r--r--libraries/libcurl-gnutls/libcurl-gnutls.info6
-rw-r--r--libraries/libdatachannel/README7
-rw-r--r--libraries/libdatachannel/libdatachannel.SlackBuild107
-rw-r--r--libraries/libdatachannel/libdatachannel.info10
-rw-r--r--libraries/libdatachannel/slack-desc19
-rw-r--r--libraries/libfabric/changelog28
-rw-r--r--libraries/libfabric/libfabric.SlackBuild26
-rw-r--r--libraries/libfabric/libfabric.info6
-rw-r--r--libraries/libgpr/README7
-rw-r--r--libraries/libgpr/libgpr.SlackBuild136
-rw-r--r--libraries/libgpr/libgpr.info12
-rw-r--r--libraries/libgpr/slack-desc19
-rw-r--r--libraries/libheif/doinst.sh5
-rw-r--r--libraries/libheif/libheif.info2
-rw-r--r--libraries/libjcat/libjcat.SlackBuild4
-rw-r--r--libraries/libjcat/libjcat.info6
-rw-r--r--libraries/libjuice/README4
-rw-r--r--libraries/libjuice/libjuice.SlackBuild105
-rw-r--r--libraries/libjuice/libjuice.info10
-rw-r--r--libraries/libjuice/slack-desc19
-rw-r--r--libraries/libjwt/libjwt.SlackBuild2
-rw-r--r--libraries/libjwt/libjwt.info6
-rw-r--r--libraries/libjxl/libjxl.SlackBuild5
-rw-r--r--libraries/libjxl/libjxl.info6
-rw-r--r--libraries/libkiwix/README8
-rw-r--r--libraries/libkiwix/libkiwix.SlackBuild115
-rw-r--r--libraries/libkiwix/libkiwix.info10
-rw-r--r--libraries/libkiwix/slack-desc19
-rw-r--r--libraries/liblogging/liblogging.SlackBuild8
-rw-r--r--libraries/liblogging/liblogging.info8
-rw-r--r--libraries/liblogging/slack-desc2
-rw-r--r--libraries/libmediainfo/libmediainfo.SlackBuild4
-rw-r--r--libraries/libmediainfo/libmediainfo.info6
-rw-r--r--libraries/libmirage/libmirage.SlackBuild1
-rw-r--r--libraries/libmirage/libmirage.info4
-rw-r--r--libraries/libmobi/README7
-rw-r--r--libraries/libmobi/libmobi.SlackBuild113
-rw-r--r--libraries/libmobi/libmobi.info10
-rw-r--r--libraries/libmobi/slack-desc19
-rw-r--r--libraries/libmp4v2/libmp4v2-2.0.0-unsigned-int-cast.patch96
-rw-r--r--libraries/libmp4v2/libmp4v2.SlackBuild21
-rw-r--r--libraries/libmp4v2/libmp4v2.info8
-rw-r--r--libraries/libmp4v2/libmp4v2_gcc_narrowing.patch20
-rw-r--r--libraries/libmp4v2/slack-desc2
-rw-r--r--libraries/libopenshot-audio/libopenshot-audio.SlackBuild4
-rw-r--r--libraries/libopenshot-audio/libopenshot-audio.info6
-rw-r--r--libraries/libopenshot/libopenshot.SlackBuild4
-rw-r--r--libraries/libopenshot/libopenshot.info6
-rw-r--r--libraries/libosinfo/libosinfo.SlackBuild7
-rw-r--r--libraries/libosinfo/libosinfo.info6
-rw-r--r--libraries/libotr/0006-include-socket.h.patch16
-rw-r--r--libraries/libotr/libotr.SlackBuild3
-rw-r--r--libraries/libpaper/libpaper.SlackBuild4
-rw-r--r--libraries/libpaper/libpaper.info6
-rw-r--r--libraries/libportal/README5
-rw-r--r--libraries/libportal/libportal.SlackBuild11
-rw-r--r--libraries/libportal/libportal.info6
-rw-r--r--libraries/libqtpas/libqtpas.SlackBuild12
-rw-r--r--libraries/libqtpas/libqtpas.info6
-rw-r--r--libraries/libsixel/libsixel.SlackBuild4
-rw-r--r--libraries/libsixel/libsixel.info6
-rw-r--r--libraries/libslirp/changelog19
-rw-r--r--libraries/libslirp/libslirp.SlackBuild45
-rw-r--r--libraries/libslirp/libslirp.info8
-rw-r--r--libraries/libsoup3/libsoup3.SlackBuild4
-rw-r--r--libraries/libsoup3/libsoup3.info6
-rw-r--r--libraries/libtorrent-rasterbar/libtorrent-rasterbar.SlackBuild4
-rw-r--r--libraries/libtorrent-rasterbar/libtorrent-rasterbar.info6
-rw-r--r--libraries/libtorrent/libtorrent.SlackBuild3
-rw-r--r--libraries/libtorrent/libtorrent.info6
-rw-r--r--libraries/libtpms/libtpms.SlackBuild2
-rw-r--r--libraries/libtpms/libtpms.info6
-rw-r--r--libraries/liburcu/liburcu.SlackBuild6
-rw-r--r--libraries/liburcu/liburcu.info6
-rw-r--r--libraries/libvirt-glib/libvirt-glib-4.0.0-cast-align.patch12
-rw-r--r--libraries/libvirt-glib/libvirt-glib.SlackBuild6
-rw-r--r--libraries/libvirt-glib/libvirt-glib.info6
-rw-r--r--libraries/libvirt-python/libvirt-python.SlackBuild7
-rw-r--r--libraries/libvirt-python/libvirt-python.info6
-rw-r--r--libraries/libvirt/README17
-rw-r--r--libraries/libvirt/libvirt.SlackBuild3
-rw-r--r--libraries/libvirt/libvirt.info6
-rw-r--r--libraries/libwbxml/README5
-rw-r--r--libraries/libwbxml/libwbxml.SlackBuild116
-rw-r--r--libraries/libwbxml/libwbxml.info10
-rw-r--r--libraries/libwbxml/slack-desc19
-rw-r--r--libraries/libwpe/libwpe.SlackBuild8
-rw-r--r--libraries/libwpe/libwpe.info6
-rw-r--r--libraries/libxml++5/README5
-rw-r--r--libraries/libxml++5/libxml++5.SlackBuild117
-rw-r--r--libraries/libxml++5/libxml++5.info10
-rw-r--r--libraries/libxml++5/slack-desc19
-rw-r--r--libraries/libxmlb/libxmlb.SlackBuild4
-rw-r--r--libraries/libxmlb/libxmlb.info6
-rw-r--r--libraries/libxnvctrl/libxnvctrl.SlackBuild3
-rw-r--r--libraries/libxnvctrl/libxnvctrl.info6
-rw-r--r--libraries/libzim/README5
-rw-r--r--libraries/libzim/libzim.SlackBuild111
-rw-r--r--libraries/libzim/libzim.info10
-rw-r--r--libraries/libzim/slack-desc19
-rw-r--r--libraries/luaexpat/luaexpat.SlackBuild4
-rw-r--r--libraries/luaexpat/luaexpat.info6
-rw-r--r--libraries/lualdap/README10
-rw-r--r--libraries/lualdap/lualdap.SlackBuild102
-rw-r--r--libraries/lualdap/lualdap.info10
-rw-r--r--libraries/lualdap/slack-desc19
-rw-r--r--libraries/luasec/luasec.SlackBuild4
-rw-r--r--libraries/luasec/luasec.info6
-rw-r--r--libraries/microsoft-gsl/microsoft-gsl.SlackBuild23
-rw-r--r--libraries/microsoft-gsl/microsoft-gsl.info6
-rw-r--r--libraries/mimalloc/mimalloc.SlackBuild2
-rw-r--r--libraries/mimalloc/mimalloc.info6
-rw-r--r--libraries/msgpack-c-cpp/msgpack-c-cpp.SlackBuild13
-rw-r--r--libraries/msgpack-c-cpp/msgpack-c-cpp.info6
-rw-r--r--libraries/mujs/mujs.SlackBuild6
-rw-r--r--libraries/mujs/set-library-soname-version.diff48
-rw-r--r--libraries/netcdf/netcdf.SlackBuild4
-rw-r--r--libraries/netcdf/netcdf.info6
-rw-r--r--libraries/notcurses/README25
-rw-r--r--libraries/notcurses/notcurses.SlackBuild114
-rw-r--r--libraries/notcurses/notcurses.info10
-rw-r--r--libraries/notcurses/slack-desc19
-rw-r--r--libraries/ode/ode.SlackBuild7
-rw-r--r--libraries/ode/ode.info6
-rw-r--r--libraries/ogre/e34ef06bb0d49ce847efe3a80ebe01c9762ea0b1.patch25
-rw-r--r--libraries/ogre/ogre.SlackBuild6
-rw-r--r--libraries/onevpl/onevpl.SlackBuild16
-rw-r--r--libraries/onevpl/onevpl.info8
-rw-r--r--libraries/openvino/README2
-rw-r--r--libraries/openvino/openvino.SlackBuild2
-rw-r--r--libraries/openvino/openvino.info2
-rw-r--r--libraries/openvkl/README2
-rw-r--r--libraries/php-ssh2/README2
-rw-r--r--libraries/php-ssh2/php-ssh2.SlackBuild9
-rw-r--r--libraries/php-ssh2/php-ssh2.info6
-rw-r--r--libraries/protobuf-c/711.patch118
-rw-r--r--libraries/protobuf-c/762.patch1443
-rw-r--r--libraries/protobuf-c/protobuf-c.SlackBuild11
-rw-r--r--libraries/protobuf-c/protobuf-c.info6
-rw-r--r--libraries/pugixml/pugixml.SlackBuild6
-rw-r--r--libraries/pugixml/pugixml.info6
-rw-r--r--libraries/pymediainfo/pymediainfo.SlackBuild15
-rw-r--r--libraries/pymediainfo/pymediainfo.info8
-rw-r--r--libraries/python3-ruamel.yaml/python3-ruamel.yaml.SlackBuild4
-rw-r--r--libraries/python3-ruamel.yaml/python3-ruamel.yaml.info8
-rw-r--r--libraries/qt-avif-image-plugin/qt-avif-image-plugin.SlackBuild4
-rw-r--r--libraries/qt-avif-image-plugin/qt-avif-image-plugin.info6
-rw-r--r--libraries/qt-installer-script/README18
-rw-r--r--libraries/qt-installer-script/qt-installer-script.SlackBuild6
-rw-r--r--libraries/qt-installer-script/qt-installer-script.info6
-rw-r--r--libraries/qt-installer-script/slack-desc2
-rw-r--r--libraries/qt-jpegxl-image-plugin/qt-jpegxl-image-plugin.SlackBuild4
-rw-r--r--libraries/qt-jpegxl-image-plugin/qt-jpegxl-image-plugin.info6
-rw-r--r--libraries/qt6gtk2/qt6gtk2.SlackBuild5
-rw-r--r--libraries/qwt/README17
-rw-r--r--libraries/qwt/patch-6.1.2-config.diff125
-rw-r--r--libraries/qwt/patch-6.1.2-pkgconfig.diff22
-rw-r--r--libraries/qwt/patch-6.1.2-qwtconfig.diff63
-rw-r--r--libraries/qwt/patch-6.3.0-config.diff147
-rw-r--r--libraries/qwt/qwt.SlackBuild52
-rw-r--r--libraries/qwt/qwt.info6
-rw-r--r--libraries/robin-map/robin-map.SlackBuild4
-rw-r--r--libraries/robin-map/robin-map.info6
-rw-r--r--libraries/skalibs/skalibs.SlackBuild2
-rw-r--r--libraries/skalibs/skalibs.info6
-rw-r--r--libraries/spawn/README7
-rw-r--r--libraries/spawn/slack-desc19
-rw-r--r--libraries/spawn/spawn.SlackBuild118
-rw-r--r--libraries/spawn/spawn.info10
-rw-r--r--libraries/spglib/spglib.SlackBuild9
-rw-r--r--libraries/spglib/spglib.info8
-rw-r--r--libraries/tclcurl-fa/README1
-rw-r--r--libraries/tclcurl-fa/slack-desc19
-rw-r--r--libraries/tclcurl-fa/tclcurl-fa.SlackBuild111
-rw-r--r--libraries/tclcurl-fa/tclcurl-fa.info10
-rw-r--r--libraries/td_lib/td_lib.SlackBuild3
-rw-r--r--libraries/td_lib/td_lib.info6
-rw-r--r--libraries/tinygltf/tinygltf.SlackBuild4
-rw-r--r--libraries/tinygltf/tinygltf.info6
-rw-r--r--libraries/tinyxml2/tinyxml2.SlackBuild4
-rw-r--r--libraries/tinyxml2/tinyxml2.info6
-rw-r--r--libraries/toml11/fix-toml-options.patch18
-rw-r--r--libraries/toml11/toml11.SlackBuild8
-rw-r--r--libraries/toml11/toml11.info6
-rw-r--r--libraries/tree-sitter/tree-sitter.SlackBuild2
-rw-r--r--libraries/tree-sitter/tree-sitter.info6
-rw-r--r--libraries/virglrenderer/virglrenderer.SlackBuild4
-rw-r--r--libraries/virglrenderer/virglrenderer.info6
-rw-r--r--libraries/vmaf/vmaf.SlackBuild53
-rw-r--r--libraries/vmaf/vmaf.info2
-rw-r--r--libraries/vst3sdk/vst3sdk.SlackBuild20
-rw-r--r--libraries/vst3sdk/vst3sdk.info32
-rw-r--r--libraries/webkit2gtk/icu76.patch31
-rw-r--r--libraries/webkit2gtk/webkit2gtk.SlackBuild5
-rw-r--r--libraries/webkit2gtk/webkit2gtk.info6
-rw-r--r--libraries/webkit2gtk4.1/icu76.patch31
-rw-r--r--libraries/webkit2gtk4.1/webkit2gtk4.1.SlackBuild3
-rw-r--r--libraries/webkit2gtk4.1/webkit2gtk4.1.info6
-rw-r--r--libraries/xapp/slack-desc2
-rw-r--r--libraries/xapp/xapp.SlackBuild6
-rw-r--r--libraries/xapp/xapp.info6
-rw-r--r--libraries/xview/xview.info2
-rw-r--r--libraries/zita-alsa-pcmi/zita-alsa-pcmi.SlackBuild72
-rw-r--r--libraries/zlib-ng/README14
-rw-r--r--libraries/zlib-ng/slack-desc19
-rw-r--r--libraries/zlib-ng/zlib-ng.SlackBuild105
-rw-r--r--libraries/zlib-ng/zlib-ng.info10
-rw-r--r--libraries/zope.configuration/zope.configuration.SlackBuild9
-rw-r--r--libraries/zope.configuration/zope.configuration.info6
-rw-r--r--libraries/zope.hookable/zope.hookable.SlackBuild9
-rw-r--r--libraries/zope.hookable/zope.hookable.info6
-rw-r--r--libraries/zope.i18nmessageid/zope.i18nmessageid.SlackBuild9
-rw-r--r--libraries/zope.i18nmessageid/zope.i18nmessageid.info6
-rw-r--r--libraries/zope.location/zope.location.SlackBuild9
-rw-r--r--libraries/zope.location/zope.location.info6
-rw-r--r--libraries/zope.proxy/zope.proxy.SlackBuild9
-rw-r--r--libraries/zope.proxy/zope.proxy.info6
-rw-r--r--libraries/zope.security/zope.security.SlackBuild9
-rw-r--r--libraries/zope.security/zope.security.info6
346 files changed, 7002 insertions, 1361 deletions
diff --git a/libraries/CLI11/CLI11.SlackBuild b/libraries/CLI11/CLI11.SlackBuild
index 6835bf9685..cd3b156a50 100644
--- a/libraries/CLI11/CLI11.SlackBuild
+++ b/libraries/CLI11/CLI11.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=CLI11
-VERSION=${VERSION:-2.4.2}
+VERSION=${VERSION:-2.5.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/libraries/CLI11/CLI11.info b/libraries/CLI11/CLI11.info
index 55590fd232..ee59c2660a 100644
--- a/libraries/CLI11/CLI11.info
+++ b/libraries/CLI11/CLI11.info
@@ -1,8 +1,8 @@
PRGNAM="CLI11"
-VERSION="2.4.2"
+VERSION="2.5.0"
HOMEPAGE="https://cliutils.github.io/CLI11/book/"
-DOWNLOAD="https://github.com/CLIUtils/CLI11/archive/v2.4.2/CLI11-2.4.2.tar.gz"
-MD5SUM="f9c0acb8c483a524e9dd275955227254"
+DOWNLOAD="https://github.com/CLIUtils/CLI11/archive/v2.5.0/CLI11-2.5.0.tar.gz"
+MD5SUM="0810cda604aa50492aa7c6b7471f1d3a"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/FreeImage/FreeImage.SlackBuild b/libraries/FreeImage/FreeImage.SlackBuild
index 2c1411efae..c6dfe5fe06 100644
--- a/libraries/FreeImage/FreeImage.SlackBuild
+++ b/libraries/FreeImage/FreeImage.SlackBuild
@@ -63,6 +63,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+patch -p1 < $CWD/gcc-version-fix-includes.patch
+patch -p1 < $CWD/cross_platform_byteswap_fix.patch
+
CFLAGS="$SLKCFLAGS -fexceptions -fvisibility=hidden -DNO_LCMS" \
CXXFLAGS="$SLKCFLAGS -fexceptions -fvisibility=hidden -Wno-ctor-dtor-privacy -std=c++14" \
make INSTALLDIR=$PKG/usr/lib${LIBDIRSUFFIX} DESTDIR=$PKG
diff --git a/libraries/FreeImage/cross_platform_byteswap_fix.patch b/libraries/FreeImage/cross_platform_byteswap_fix.patch
new file mode 100644
index 0000000000..9ae51e7217
--- /dev/null
+++ b/libraries/FreeImage/cross_platform_byteswap_fix.patch
@@ -0,0 +1,22 @@
+diff -up FreeImage/Source/LibJXR/image/decode/segdec.c.orig FreeImage/Source/LibJXR/image/decode/segdec.c
+--- FreeImage/Source/LibJXR/image/decode/segdec.c.orig 2024-08-18 02:32:53.595421505 -0500
++++ FreeImage/Source/LibJXR/image/decode/segdec.c 2024-08-18 02:33:41.184788298 -0500
+@@ -29,6 +29,18 @@
+ #include "strcodec.h"
+ #include "decode.h"
+
++// Conditional definition of _byteswap_ulong for cross-platform compatibility
++#ifdef _MSC_VER
++ #include <intrin.h> // Use the Microsoft-specific function on MSVC
++#else
++ #include <stdint.h> // Standard header for fixed-width integers
++
++ // Define the Microsoft-specific function for non-MSVC compilers
++ static inline uint32_t _byteswap_ulong(uint32_t x) {
++ return __builtin_bswap32(x); // GCC/Clang built-in function for Linux
++ }
++#endif
++
+ #ifdef MEM_TRACE
+ #define TRACE_MALLOC 1
+ #define TRACE_NEW 0
diff --git a/libraries/FreeImage/gcc-version-fix-includes.patch b/libraries/FreeImage/gcc-version-fix-includes.patch
new file mode 100644
index 0000000000..1f0d8bfee1
--- /dev/null
+++ b/libraries/FreeImage/gcc-version-fix-includes.patch
@@ -0,0 +1,46 @@
+diff -up FreeImage/Source/ZLib/gzlib.c.orig FreeImage/Source/ZLib/gzlib.c
+--- FreeImage/Source/ZLib/gzlib.c.orig 2024-08-18 15:22:03.585726491 -0500
++++ FreeImage/Source/ZLib/gzlib.c 2024-08-18 15:22:29.764924485 -0500
+@@ -4,6 +4,7 @@
+ */
+
+ #include "gzguts.h"
++#include <unistd.h>
+
+ #if defined(_WIN32) && !defined(__BORLANDC__) && !defined(__MINGW32__)
+ # define LSEEK _lseeki64
+diff -up FreeImage/Source/ZLib/gzread.c.orig FreeImage/Source/ZLib/gzread.c
+--- FreeImage/Source/ZLib/gzread.c.orig 2024-08-18 15:22:41.952016662 -0500
++++ FreeImage/Source/ZLib/gzread.c 2024-08-18 15:23:11.521240308 -0500
+@@ -4,6 +4,7 @@
+ */
+
+ #include "gzguts.h"
++#include <unistd.h>
+
+ /* Local functions */
+ local int gz_load OF((gz_statep, unsigned char *, unsigned, unsigned *));
+diff -up FreeImage/Source/ZLib/gzwrite.c.orig FreeImage/Source/ZLib/gzwrite.c
+--- FreeImage/Source/ZLib/gzwrite.c.orig 2024-08-18 15:23:24.238336499 -0500
++++ FreeImage/Source/ZLib/gzwrite.c 2024-08-18 15:23:41.145464386 -0500
+@@ -4,6 +4,7 @@
+ */
+
+ #include "gzguts.h"
++#include <unistd.h>
+
+ /* Local functions */
+ local int gz_init OF((gz_statep));
+
+diff -up FreeImage/Source/LibJXR/jxrgluelib/JXRGlueJxr.c.orig FreeImage/Source/LibJXR/jxrgluelib/JXRGlueJxr.c
+--- FreeImage/Source/LibJXR/jxrgluelib/JXRGlueJxr.c.orig 2024-08-18 15:32:17.325371341 -0500
++++ FreeImage/Source/LibJXR/jxrgluelib/JXRGlueJxr.c 2024-08-18 15:32:44.343575960 -0500
+@@ -28,7 +28,7 @@
+ //*@@@---@@@@******************************************************************
+ #include <limits.h>
+ #include <JXRGlue.h>
+-
++#include <wchar.h>
+
+ static const char szHDPhotoFormat[] = "<dc:format>image/vnd.ms-photo</dc:format>";
+ const U32 IFDEntryTypeSizes[] = { 0, 1, 1, 2, 4, 8, 1, 1, 2, 4, 8, 4, 8 };
diff --git a/libraries/Mustache/Mustache.SlackBuild b/libraries/Mustache/Mustache.SlackBuild
new file mode 100644
index 0000000000..186663b502
--- /dev/null
+++ b/libraries/Mustache/Mustache.SlackBuild
@@ -0,0 +1,107 @@
+#!/bin/bash
+
+# Slackware build script for Mustache
+
+# Copyright 2025 Ruoh-Shoei LIN
+# 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=Mustache
+VERSION=${VERSION:-4.1}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+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"
+ SLKLDFLAGS="-L/usr/X11R6/lib64"
+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.gz
+cd $PRGNAM-$VERSION || exit 1
+
+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 {} \+
+
+mkdir -p build
+cd build
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DLIB_SUFFIX=${LIBDIRSUFFIX} \
+ -DMAN_INSTALL_DIR=/usr/man \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make
+ install -Dm644 -p ../mustache.hpp -t $PKG/usr/include
+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
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ LICENSE README.md \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+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/libraries/Mustache/Mustache.info b/libraries/Mustache/Mustache.info
new file mode 100644
index 0000000000..3b96795345
--- /dev/null
+++ b/libraries/Mustache/Mustache.info
@@ -0,0 +1,10 @@
+PRGNAM="Mustache"
+VERSION="4.1"
+HOMEPAGE="https://github.com/kainjow/Mustache"
+DOWNLOAD="https://github.com/kainjow/Mustache/archive/v4.1/Mustache-4.1.tar.gz"
+MD5SUM="7565052f4bd273f47a0e6900272e58e1"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Ruoh-Shoei LIN"
+EMAIL="lin.ruohshoei+sbo@gmail.com"
diff --git a/libraries/Mustache/README b/libraries/Mustache/README
new file mode 100644
index 0000000000..d585427c15
--- /dev/null
+++ b/libraries/Mustache/README
@@ -0,0 +1,7 @@
+Mustache (Mustache text templates for modern C++)
+
+Features:
+* Header only
+* Zero dependencies
+* Templated string type for compatibility with any STL-like string
+ (std::string, std::wstring, etc)
diff --git a/libraries/Mustache/slack-desc b/libraries/Mustache/slack-desc
new file mode 100644
index 0000000000..225589fbc1
--- /dev/null
+++ b/libraries/Mustache/slack-desc
@@ -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------------------------------------------------------|
+Mustache: Mustache (Mustache implementation for modern C++)
+Mustache:
+Mustache: Features:
+Mustache:
+Mustache: * Header only
+Mustache: * Zero dependencies
+Mustache: * Templated string type for compatibility with any STL-like
+Mustache: string (std::string, std::wstring, etc)
+Mustache:
+Mustache: WWW: https://github.com/kainjow/Mustache
+Mustache:
diff --git a/libraries/SDL2_sound/SDL2_sound.SlackBuild b/libraries/SDL2_sound/SDL2_sound.SlackBuild
index 2b2cb1ff0e..cfa2f3b107 100644
--- a/libraries/SDL2_sound/SDL2_sound.SlackBuild
+++ b/libraries/SDL2_sound/SDL2_sound.SlackBuild
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=SDL2_sound
SRCNAM=SDL_sound
-VERSION=${VERSION:-2.0.2}
+VERSION=${VERSION:-2.0.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/libraries/SDL2_sound/SDL2_sound.info b/libraries/SDL2_sound/SDL2_sound.info
index 8a57e90d96..f066d6f31b 100644
--- a/libraries/SDL2_sound/SDL2_sound.info
+++ b/libraries/SDL2_sound/SDL2_sound.info
@@ -1,8 +1,8 @@
PRGNAM="SDL2_sound"
-VERSION="2.0.2"
+VERSION="2.0.4"
HOMEPAGE="http://icculus.org/SDL_sound/"
-DOWNLOAD="https://github.com/icculus/SDL_sound/archive/v2.0.2/SDL_sound-2.0.2.tar.gz"
-MD5SUM="08405318c3b7bbeff2d6d5bc72fc160f"
+DOWNLOAD="https://github.com/icculus/SDL_sound/archive/v2.0.4/SDL_sound-2.0.4.tar.gz"
+MD5SUM="7954125fd5f077f4846572f6bf0abfce"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/SOPE/SOPE.SlackBuild b/libraries/SOPE/SOPE.SlackBuild
index d93d6de8c9..b31461d1b9 100644
--- a/libraries/SOPE/SOPE.SlackBuild
+++ b/libraries/SOPE/SOPE.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for SOPE
-# Copyright 2018-2020 Chris Walker Kempner, TX
+# Copyright 2018-2022 Chris Walker Kempner, TX
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,8 +25,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=SOPE
-VERSION=${VERSION:-5.0.1}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-5.11.2}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -52,16 +52,12 @@ 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"
else
SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
fi
set -e
diff --git a/libraries/SOPE/SOPE.info b/libraries/SOPE/SOPE.info
index 68e1a70f58..28018adf63 100644
--- a/libraries/SOPE/SOPE.info
+++ b/libraries/SOPE/SOPE.info
@@ -1,8 +1,8 @@
PRGNAM="SOPE"
-VERSION="5.0.1"
+VERSION="5.11.2"
HOMEPAGE="https://github.com/inverse-inc/sope"
-DOWNLOAD="https://packages.sogo.nu/sources/SOPE-5.0.1.tar.gz"
-MD5SUM="0458dd8f4be1c50ec8ee5f6ea6f49c13"
+DOWNLOAD="https://packages.sogo.nu/sources/SOPE-5.11.2.tar.gz"
+MD5SUM="e821d0b3c52a7cffc6b41bdc35b34359"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="gnustep-base"
diff --git a/libraries/SimGear/README b/libraries/SimGear/README
index ee218c1353..8a02e20b1f 100644
--- a/libraries/SimGear/README
+++ b/libraries/SimGear/README
@@ -1,3 +1,8 @@
SimGear is a set of open-source libraries designed to be used as
building blocks for quickly assembling 3d simulations, games, and
visualization applications.
+
+Note that the source has been moved from Sourceforge to Gitlab.
+
+BIG FAT NOTE: SimGear and FlightGear will no longer build on current
+because of incompatibilities in boost 1.87 (built fine with 1.86).
diff --git a/libraries/SimGear/SimGear.SlackBuild b/libraries/SimGear/SimGear.SlackBuild
index 48a63c1b42..87bbb65521 100644
--- a/libraries/SimGear/SimGear.SlackBuild
+++ b/libraries/SimGear/SimGear.SlackBuild
@@ -27,8 +27,8 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=SimGear
SRCNAM=simgear
-VERSION=${VERSION:-2020.3.19}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-2024.1.1}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -71,9 +71,9 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $SRCNAM-$VERSION
-tar xvf $CWD/$SRCNAM-$VERSION.tar.?z*
-cd $SRCNAM-$VERSION
+rm -rf $SRCNAM-v$VERSION
+tar xvf $CWD/$SRCNAM-v$VERSION.tar.?z*
+cd $SRCNAM-v$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -81,10 +81,6 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-if [ "${CURRENT:-no}" = "yes" ]; then
- patch -p1 < $CWD/compositor-pass-missing-array-include.patch
-fi
-
mkdir -p build
cd build
cmake \
diff --git a/libraries/SimGear/SimGear.info b/libraries/SimGear/SimGear.info
index e1a5d02a29..a9c64e98b5 100644
--- a/libraries/SimGear/SimGear.info
+++ b/libraries/SimGear/SimGear.info
@@ -1,8 +1,8 @@
PRGNAM="SimGear"
-VERSION="2020.3.19"
+VERSION="2024.1.1"
HOMEPAGE="http://wiki.flightgear.org/SimGear"
-DOWNLOAD="https://downloads.sourceforge.net/flightgear/simgear-2020.3.19.tar.bz2"
-MD5SUM="1e799e3ddee8040c0b6f7ec25f95c38c"
+DOWNLOAD="https://gitlab.com/flightgear/simgear/-/archive/v2024.1.1/simgear-v2024.1.1.tar.gz"
+MD5SUM="780101203cfdc2bc35dfc28600602016"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="OpenSceneGraph plib"
diff --git a/libraries/SimGear/compositor-pass-missing-array-include.patch b/libraries/SimGear/compositor-pass-missing-array-include.patch
deleted file mode 100644
index 5572f5f9e4..0000000000
--- a/libraries/SimGear/compositor-pass-missing-array-include.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-diff -ur simgear-2020.3.17.orig/simgear/scene/viewer/Compositor.hxx simgear-2020.3.17/simgear/scene/viewer/Compositor.hxx
---- simgear-2020.3.17.orig/simgear/scene/viewer/Compositor.hxx 2022-11-20 19:01:30.000000000 +0100
-+++ simgear-2020.3.17/simgear/scene/viewer/Compositor.hxx 2023-03-10 18:40:59.219808993 +0100
-@@ -17,6 +17,7 @@
- #ifndef SG_COMPOSITOR_HXX
- #define SG_COMPOSITOR_HXX
-
-+#include <array>
- #include <unordered_map>
- #include <vector>
-
diff --git a/libraries/VTK/README b/libraries/VTK/README
index b352886970..07d290e2c9 100644
--- a/libraries/VTK/README
+++ b/libraries/VTK/README
@@ -29,3 +29,9 @@ QT=yes|no (default: yes)
NB. Some combinations of options are known to result in compilation
errors if the build machine already has VTK installed. Please remove
any VTK installation before running the SlackBuild.
+
+When both Qt5 and Qt6 are installed, a particular QT version can be
+set for the VTK build via the QTVERSION variable when running the
+VTK.SlackBuild e.g.
+ QTVERSION=5 bash VTK.SlackBuild
+
diff --git a/libraries/VTK/VTK.SlackBuild b/libraries/VTK/VTK.SlackBuild
index ff7d533818..8214625954 100644
--- a/libraries/VTK/VTK.SlackBuild
+++ b/libraries/VTK/VTK.SlackBuild
@@ -4,7 +4,7 @@
# Copyright 2013,2014 Youjie Zhou <jmpopush@gmail.com>
# All rights reserved.
-# Copyright 2016-2024 Christoph Willing, Sydney Australia
+# Copyright 2016-2025 Christoph Willing, Sydney Australia
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -28,8 +28,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=VTK
-VERSION=${VERSION:-9.4.0}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-9.4.1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -86,6 +86,12 @@ netcdf=""
#if test -e /usr/include/gl2ps.h ; then gl2ps="-DVTK_USE_SYSTEM_GL2PS:BOOL=ON" ; else gl2ps="" ; fi
gl2ps=""
+qtversion="-DVTK_QT_VERSION=Auto"
+if [ "$QTVERSION" = "5" ]; then
+ qtversion="-DVTK_QT_VERSION=5"
+elif [ "$QTVERSION" = "6" ]; then
+ qtversion="-DVTK_QT_VERSION=6"
+fi
set -e
@@ -125,10 +131,10 @@ cd build
-DCMAKE_INSTALL_LIBDIR=lib${LIBDIRSUFFIX} \
-DBUILD_SHARED_LIBS=ON \
-DVTK_CUSTOM_LIBRARY_SUFFIX="" \
- -DVTK_INSTALL_INCLUDE_DIR:PATH=include/VTK \
-DVTK_USE_TK=ON \
-DVTK_BUILD_EXAMPLES=ON \
-DINSTALL_DOCS=ON \
+ $qtversion \
$group_imaging \
$group_mpi \
$group_qt \
diff --git a/libraries/VTK/VTK.info b/libraries/VTK/VTK.info
index 2aa5c8d39c..41b0819fc9 100644
--- a/libraries/VTK/VTK.info
+++ b/libraries/VTK/VTK.info
@@ -1,8 +1,8 @@
PRGNAM="VTK"
-VERSION="9.4.0"
+VERSION="9.4.1"
HOMEPAGE="https://www.vtk.org"
-DOWNLOAD="https://www.vtk.org/files/release/9.4/VTK-9.4.0.tar.gz"
-MD5SUM="9b40877d92e1dd13d4e84af0a3a7e676"
+DOWNLOAD="https://www.vtk.org/files/release/9.4/VTK-9.4.1.tar.gz"
+MD5SUM="2c1b4a1fff031a35e4331a7782908d29"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/agar/agar.info b/libraries/agar/agar.info
index bf7812ab86..21327c8db3 100644
--- a/libraries/agar/agar.info
+++ b/libraries/agar/agar.info
@@ -1,7 +1,7 @@
PRGNAM="agar"
VERSION="1.7.0"
HOMEPAGE="https://github.com/JulNadeauCA/libagar"
-DOWNLOAD="https://github.com/JulNadeauCA/libagar/archive/v1.7.0/libagar-1.7.0.tar.gz"
+DOWNLOAD="https://slackware.uk/~urchlay/src/libagar-1.7.0.tar.gz"
MD5SUM="688fd6311c1ebcc239efe917b17c1836"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
diff --git a/libraries/ahven/README b/libraries/ahven/README
new file mode 100644
index 0000000000..a7133d4162
--- /dev/null
+++ b/libraries/ahven/README
@@ -0,0 +1,6 @@
+Ahven is a simple unit test library (or a framework) for Ada
+programming language. It is loosely modelled after JUnit and some
+ideas are taken from AUnit.
+
+Ahven is free software distributed under permissive ISC license and
+should work with any Ada 95 or 2005 compiler.
diff --git a/libraries/ahven/ahven.SlackBuild b/libraries/ahven/ahven.SlackBuild
new file mode 100644
index 0000000000..090aad5378
--- /dev/null
+++ b/libraries/ahven/ahven.SlackBuild
@@ -0,0 +1,94 @@
+#!/bin/bash
+# Slackware build script for ahven
+# Copyright 2012-2021 Zhu Qun-Ying
+# 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=ahven
+VERSION=${VERSION:-2.8}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$(uname -m) ;;
+ esac
+fi
+
+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"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; 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.gz
+
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \; || exit 1
+
+make DESTDIR=$PKG prefix=/usr libdir=/usr/lib$LIBDIRSUFFIX \
+GNAT_BUILDER=gprbuild GNAT_BUILDER_FLAGS="-R -cargs $SLKCFLAGS -largs -s -gargs"
+
+make DESTDIR=$PKG prefix=/usr libdir=/usr/lib$LIBDIRSUFFIX install \
+GNAT_BUILDER=gprbuild GNAT_BUILDER_FLAGS="-R -cargs $SLKCFLAGS -largs -s -gargs"
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+(cd doc/manual/en; make html; rm -rf build/html/_sources; cp -a build/html $PKG/usr/doc/$PRGNAM-$VERSION)
+
+cp README.md ROADMAP NEWS.txt LICENSE.txt $CWD/$PRGNAM.SlackBuild $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a doc/tutorial examples $PKG/usr/doc/$PRGNAM-$VERSION
+
+cd $PKG
+mkdir -p $PKG/install
+cp $CWD/slack-desc $PKG/install
+
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/libraries/ahven/ahven.info b/libraries/ahven/ahven.info
new file mode 100644
index 0000000000..8d17759054
--- /dev/null
+++ b/libraries/ahven/ahven.info
@@ -0,0 +1,10 @@
+PRGNAM="ahven"
+VERSION="2.8"
+HOMEPAGE="https://www.ahven-framework.com"
+DOWNLOAD="https://www.ahven-framework.com/releases/ahven-2.8.tar.gz"
+MD5SUM="5cb01bc1200481a90038bd56fb965ff2"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="gprbuild"
+MAINTAINER="Zhu Qun-Ying"
+EMAIL="zhu.qunying@gmail.com"
diff --git a/libraries/ahven/slack-desc b/libraries/ahven/slack-desc
new file mode 100644
index 0000000000..22765ff98b
--- /dev/null
+++ b/libraries/ahven/slack-desc
@@ -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------------------------------------------------------|
+ahven: ahven (a simple unit test library for Ada)
+ahven:
+ahven: Ahven is a simple unit test library (or a framework) for Ada
+ahven: programming language. It is loosely modelled after JUnit and some
+ahven: ideas are taken from AUnit.
+ahven:
+ahven: Ahven is free software distributed under permissive ISC license and
+ahven: should work with any Ada 95 or 2005 compiler.
+ahven:
+ahven: Homepage: https://www.ahven-framework.com/
+ahven:
diff --git a/libraries/allegro/allegro.SlackBuild b/libraries/allegro/allegro.SlackBuild
index 149c36367a..c8029496c8 100644
--- a/libraries/allegro/allegro.SlackBuild
+++ b/libraries/allegro/allegro.SlackBuild
@@ -27,7 +27,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=allegro
SRCNAM=allegro5
-VERSION=${VERSION:-5.2.9.1}
+VERSION=${VERSION:-5.2.10.1}
BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/libraries/allegro/allegro.info b/libraries/allegro/allegro.info
index 8cede97aa3..1cebc3fa81 100644
--- a/libraries/allegro/allegro.info
+++ b/libraries/allegro/allegro.info
@@ -1,8 +1,8 @@
PRGNAM="allegro"
-VERSION="5.2.9.1"
+VERSION="5.2.10.1"
HOMEPAGE="https://liballeg.org/"
-DOWNLOAD="https://github.com/liballeg/allegro5/archive/5.2.9.1/allegro5-5.2.9.1.tar.gz"
-MD5SUM="94b189f2b138891b5f068e9a0915b5eb"
+DOWNLOAD="https://github.com/liballeg/allegro5/archive/5.2.10.1/allegro5-5.2.10.1.tar.gz"
+MD5SUM="c138b720ddc0d8d49a363002877bb1b9"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="physfs"
diff --git a/libraries/allegro4/allegro4.info b/libraries/allegro4/allegro4.info
index c590c1645a..734dfb07f7 100644
--- a/libraries/allegro4/allegro4.info
+++ b/libraries/allegro4/allegro4.info
@@ -1,6 +1,6 @@
PRGNAM="allegro4"
VERSION="4.4.3.1"
-HOMEPAGE="https://www.allegro.cc/"
+HOMEPAGE="https://github.com/liballeg/allegro5/"
DOWNLOAD="https://github.com/liballeg/allegro5/releases/download/4.4.3.1/allegro-4.4.3.1.tar.gz"
MD5SUM="d0435da87d4c157ad3620e1cc58b807e"
DOWNLOAD_x86_64=""
diff --git a/libraries/aqbanking/aqbanking.SlackBuild b/libraries/aqbanking/aqbanking.SlackBuild
index f5d258db0f..c380db728a 100644
--- a/libraries/aqbanking/aqbanking.SlackBuild
+++ b/libraries/aqbanking/aqbanking.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for aqbanking
-# Copyright 2013-2023 Heiko Rosemann Germany
+# Copyright 2013-2024 Heiko Rosemann Germany
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -30,7 +30,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=aqbanking
-VERSION=${VERSION:-6.5.4}
+VERSION=${VERSION:-6.6.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/libraries/aqbanking/aqbanking.info b/libraries/aqbanking/aqbanking.info
index cc9373955e..5764d3353a 100644
--- a/libraries/aqbanking/aqbanking.info
+++ b/libraries/aqbanking/aqbanking.info
@@ -1,8 +1,8 @@
PRGNAM="aqbanking"
-VERSION="6.5.4"
+VERSION="6.6.0"
HOMEPAGE="https://www.aquamaniac.de/"
-DOWNLOAD="https://www.aquamaniac.de/rdm/attachments/download/499/aqbanking-6.5.4.tar.gz"
-MD5SUM="3401dd16a5a98500dbdd4f4a6f86b3ef"
+DOWNLOAD="https://www.aquamaniac.de/rdm/attachments/download/531/aqbanking-6.6.0.tar.gz"
+MD5SUM="ea8db58ac2b51213e7872ff3085635de"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="gwenhywfar xmlsec"
diff --git a/libraries/aunit/README b/libraries/aunit/README
new file mode 100644
index 0000000000..79a887f6ff
--- /dev/null
+++ b/libraries/aunit/README
@@ -0,0 +1,4 @@
+Ada Unit test framework
+
+AUnit is an adaptation of the Java JUnit and CppUnit unit test
+frameworks for Ada code.
diff --git a/libraries/aunit/aunit.SlackBuild b/libraries/aunit/aunit.SlackBuild
new file mode 100644
index 0000000000..05d59cd3b3
--- /dev/null
+++ b/libraries/aunit/aunit.SlackBuild
@@ -0,0 +1,107 @@
+#!/bin/bash
+# aunit package build script
+# Copyright 2012-2024, Zhu Qun-Ying
+# 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=aunit
+VERSION=${VERSION:-25.0.0}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$(uname -m) ;;
+ esac
+fi
+
+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
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ LIBDIRSUFFIX="64"
+else
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+mkdir $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz -C $PRGNAM-$VERSION --strip-components=1
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \; || exit 1
+
+echo "$VERSION" > version_information
+
+if [ "$ARCH" = "x86_64" ]; then
+ sed -i "s/project-subdir=lib/project-subdir=lib$LIBDIRSUFFIX/" Makefile
+fi
+
+sed -i -e "s/share\/doc\//doc\//" \
+ -e "s/doc\/aunit-$VERSION\/info/info/" support/$PRGNAM.xml lib/gnat/aunit.gpr
+
+sed -i 's/-O2/-O2", "-fpic/' lib/gnat/aunit.gpr
+
+make
+make -C doc html-all aunit_cb.info
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+make INSTALL=$PKG/usr \
+ GPROPTS="--prefix=$PKG/usr --lib-subdir=$PKG/usr/lib$LIBDIRSUFFIX/$PRGNAM" \
+ libdir=$PKG/usr/lib$LIBDIRSUFFIX install
+
+cp $CWD/$PRGNAM.SlackBuild $PKG/usr/doc/$PRGNAM-$VERSION/
+cp README COPYING3 $PKG/usr/doc/$PRGNAM-$VERSION/
+cp -a doc/build/aunit_cb/html/*html doc/build/aunit_cb/html/*.js \
+ doc/build/aunit_cb/html/share $PKG/usr/doc/$PRGNAM-$VERSION
+mkdir $PKG/usr/info/
+cat doc/build/aunit_cb/info/aunit_cb.info | gzip -c9 > $PKG/usr/info/aunit_cb.info.gz
+
+cd $PKG
+mkdir -p $PKG/install
+cp $CWD/slack-desc $PKG/install
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+cat $CWD/douninst.sh > $PKG/install/douninst.sh
+
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/libraries/aunit/aunit.info b/libraries/aunit/aunit.info
new file mode 100644
index 0000000000..fe7a5e4f31
--- /dev/null
+++ b/libraries/aunit/aunit.info
@@ -0,0 +1,10 @@
+PRGNAM="aunit"
+VERSION="25.0.0"
+HOMEPAGE="http://libre.adacore.com/tools/aunit"
+DOWNLOAD="https://github.com/AdaCore/aunit/archive/v25.0.0/aunit-25.0.0.tar.gz"
+MD5SUM="c66553d3877d5031f14015d7a5ebb9ec"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="gprbuild sphinx-rtd-theme"
+MAINTAINER="Zhu Qun-Ying"
+EMAIL="zhu.qunying@gmail.com"
diff --git a/libraries/aunit/doinst.sh b/libraries/aunit/doinst.sh
new file mode 100644
index 0000000000..d8a8730386
--- /dev/null
+++ b/libraries/aunit/doinst.sh
@@ -0,0 +1,3 @@
+if [ -x /usr/bin/install-info ]; then
+ /usr/bin/install-info --info-dir=usr/info usr/info/aunit_cb.info.gz &> /dev/null
+fi
diff --git a/libraries/aunit/douninst.sh b/libraries/aunit/douninst.sh
new file mode 100644
index 0000000000..e82b7dff33
--- /dev/null
+++ b/libraries/aunit/douninst.sh
@@ -0,0 +1,3 @@
+if [ -x /usr/sbin/update-info-dir -a -d usr/info ]; then
+ /usr/sbin/update-info-dir
+fi
diff --git a/libraries/aunit/slack-desc b/libraries/aunit/slack-desc
new file mode 100644
index 0000000000..0bf9e6a9e7
--- /dev/null
+++ b/libraries/aunit/slack-desc
@@ -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------------------------------------------------------|
+aunit: aunit (Ada Unit test framework)
+aunit:
+aunit: AUnit is an adaptation of the Java JUnit and CppUnit unit test
+aunit: frameworks for Ada code.
+aunit:
+aunit: https://github.com/AdaCore/aunit
+aunit:
+aunit:
+aunit:
+aunit:
+aunit:
diff --git a/libraries/botocore/botocore.SlackBuild b/libraries/botocore/botocore.SlackBuild
index 3a4ecde7c3..38cbd8e27e 100644
--- a/libraries/botocore/botocore.SlackBuild
+++ b/libraries/botocore/botocore.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for botocore
-# Copyright 2014-2024 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2014-2025 Dimitris Zlatanidis Orestiada, Greece
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=botocore
-VERSION=${VERSION:-1.35.28}
+VERSION=${VERSION:-1.36.24}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/libraries/botocore/botocore.info b/libraries/botocore/botocore.info
index 87ecbe3da9..424bf09eed 100644
--- a/libraries/botocore/botocore.info
+++ b/libraries/botocore/botocore.info
@@ -1,8 +1,8 @@
PRGNAM="botocore"
-VERSION="1.35.28"
+VERSION="1.36.24"
HOMEPAGE="https://github.com/boto/botocore"
-DOWNLOAD="https://github.com/boto/botocore/archive/1.35.28/botocore-1.35.28.tar.gz"
-MD5SUM="e41e95813a4e6db08463b1c97a190c05"
+DOWNLOAD="https://github.com/boto/botocore/archive/1.36.24/botocore-1.36.24.tar.gz"
+MD5SUM="86184f07f12ca81d4139db49e0472c4a"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="python3-dateutil jmespath"
diff --git a/libraries/dav1d/dav1d.SlackBuild b/libraries/dav1d/dav1d.SlackBuild
index 5bdc954e7b..fc55c733c8 100644
--- a/libraries/dav1d/dav1d.SlackBuild
+++ b/libraries/dav1d/dav1d.SlackBuild
@@ -3,7 +3,7 @@
# Slackware build script for dav1d
#
# Copyright (c) 2019-2024 Andrew Strong, Blue Mountains, Australia.
-# Copyright 2024 Jeremy Hansen <jebrhansen+SBo@gmail.com>
+# Copyright 2024-2025 Jeremy Hansen <jebrhansen+SBo@gmail.com>
#
# Permission to use, copy, modify, and distribute this software for
# any purpose with or without fee is hereby granted, provided that
@@ -27,7 +27,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=dav1d
-VERSION=${VERSION:-1.4.3}
+VERSION=${VERSION:-1.5.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/libraries/dav1d/dav1d.info b/libraries/dav1d/dav1d.info
index e387ef18de..e141d3c9c8 100644
--- a/libraries/dav1d/dav1d.info
+++ b/libraries/dav1d/dav1d.info
@@ -1,8 +1,8 @@
PRGNAM="dav1d"
-VERSION="1.4.3"
+VERSION="1.5.1"
HOMEPAGE="https://code.videolan.org/videolan/dav1d"
-DOWNLOAD="https://code.videolan.org/videolan/dav1d/-/archive/1.4.3/dav1d-1.4.3.tar.gz"
-MD5SUM="c6fd9302a28d8c8e41e9a658a2be2031"
+DOWNLOAD="https://code.videolan.org/videolan/dav1d/-/archive/1.5.1/dav1d-1.5.1.tar.gz"
+MD5SUM="e919dd18e2d834abe007bdf7d973a2f0"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/dcmtk/dcmtk.SlackBuild b/libraries/dcmtk/dcmtk.SlackBuild
index 5315e24d13..20764396ff 100644
--- a/libraries/dcmtk/dcmtk.SlackBuild
+++ b/libraries/dcmtk/dcmtk.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for dcmtk
-# Copyright 2018-2023 Christoph Willing, Brisbane Australia
+# Copyright 2018-2024 Christoph Willing, Sydney Australia
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -32,7 +32,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=dcmtk
SRCNAM=dcmtk-DCMTK
-VERSION=${VERSION:-3.6.8}
+VERSION=${VERSION:-3.6.9}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/libraries/dcmtk/dcmtk.info b/libraries/dcmtk/dcmtk.info
index 4d1e7b7439..bbc673a85d 100644
--- a/libraries/dcmtk/dcmtk.info
+++ b/libraries/dcmtk/dcmtk.info
@@ -1,8 +1,8 @@
PRGNAM="dcmtk"
-VERSION="3.6.8"
+VERSION="3.6.9"
HOMEPAGE="https://dicom.offis.de/dcmtk"
-DOWNLOAD="https://github.com/DCMTK/dcmtk/archive/DCMTK-3.6.8/dcmtk-DCMTK-3.6.8.tar.gz"
-MD5SUM="ce3e878c05165f1a3322c29e67f2426f"
+DOWNLOAD="https://github.com/DCMTK/dcmtk/archive/DCMTK-3.6.9/dcmtk-DCMTK-3.6.9.tar.gz"
+MD5SUM="7f11c2345440a91af4d662adb8648c56"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/digimend-kernel-drivers/b9ef432e2b93c31d2e39be13f22c61f4c2e8b5cb.patch b/libraries/digimend-kernel-drivers/b9ef432e2b93c31d2e39be13f22c61f4c2e8b5cb.patch
new file mode 100644
index 0000000000..b0ed005cee
--- /dev/null
+++ b/libraries/digimend-kernel-drivers/b9ef432e2b93c31d2e39be13f22c61f4c2e8b5cb.patch
@@ -0,0 +1,92 @@
+From b9ef432e2b93c31d2e39be13f22c61f4c2e8b5cb Mon Sep 17 00:00:00 2001
+From: Stroopwafe1 <48443491+Stroopwafe1@users.noreply.github.com>
+Date: Mon, 25 Nov 2024 08:15:40 +0100
+Subject: [PATCH] Update to Linux 6.12
+
+---
+ hid-kye.c | 2 +-
+ hid-polostar.c | 2 +-
+ hid-uclogic-core.c | 2 +-
+ hid-uclogic-params.c | 2 +-
+ hid-uclogic-rdesc.c | 2 +-
+ hid-viewsonic.c | 2 +-
+ 6 files changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/hid-kye.c b/hid-kye.c
+index 5fde67f..5353405 100644
+--- a/hid-kye.c
++++ b/hid-kye.c
+@@ -579,7 +579,7 @@ static __u8 *kye_consumer_control_fixup(struct hid_device *hdev, __u8 *rdesc,
+ return rdesc;
+ }
+
+-static __u8 *kye_report_fixup(struct hid_device *hdev, __u8 *rdesc,
++static const __u8 *kye_report_fixup(struct hid_device *hdev, __u8 *rdesc,
+ unsigned int *rsize)
+ {
+ switch (hdev->product) {
+diff --git a/hid-polostar.c b/hid-polostar.c
+index ecbe02c..92a0085 100644
+--- a/hid-polostar.c
++++ b/hid-polostar.c
+@@ -149,7 +149,7 @@ static __u8 pt1001_rdesc_fixed[] = {
+ 0xC0, /* End Collection */
+ };
+
+-static __u8 *polostar_report_fixup(struct hid_device *hdev, __u8 *rdesc,
++static const __u8 *polostar_report_fixup(struct hid_device *hdev, __u8 *rdesc,
+ unsigned int *rsize)
+ {
+ struct usb_interface *iface = to_usb_interface(hdev->dev.parent);
+diff --git a/hid-uclogic-core.c b/hid-uclogic-core.c
+index 06298ac..efc7575 100644
+--- a/hid-uclogic-core.c
++++ b/hid-uclogic-core.c
+@@ -53,7 +53,7 @@ static void uclogic_inrange_timeout(struct timer_list *t)
+ input_sync(input);
+ }
+
+-static __u8 *uclogic_report_fixup(struct hid_device *hdev, __u8 *rdesc,
++static const __u8 *uclogic_report_fixup(struct hid_device *hdev, __u8 *rdesc,
+ unsigned int *rsize)
+ {
+ struct uclogic_drvdata *drvdata = hid_get_drvdata(hdev);
+diff --git a/hid-uclogic-params.c b/hid-uclogic-params.c
+index 7f7cc36..4b6b08b 100644
+--- a/hid-uclogic-params.c
++++ b/hid-uclogic-params.c
+@@ -19,7 +19,7 @@
+ #include "hid-ids.h"
+ #include <linux/ctype.h>
+ #include <linux/string.h>
+-#include <asm/unaligned.h>
++#include <linux/unaligned.h>
+
+ #include <linux/version.h>
+
+diff --git a/hid-uclogic-rdesc.c b/hid-uclogic-rdesc.c
+index c26bfb1..4505633 100644
+--- a/hid-uclogic-rdesc.c
++++ b/hid-uclogic-rdesc.c
+@@ -16,7 +16,7 @@
+
+ #include "hid-uclogic-rdesc.h"
+ #include <linux/slab.h>
+-#include <asm/unaligned.h>
++#include <linux/unaligned.h>
+
+ /* Fixed WP4030U report descriptor */
+ __u8 uclogic_rdesc_wp4030u_fixed_arr[] = {
+diff --git a/hid-viewsonic.c b/hid-viewsonic.c
+index d887ac1..621f11f 100644
+--- a/hid-viewsonic.c
++++ b/hid-viewsonic.c
+@@ -71,7 +71,7 @@ static __u8 pd1011_rdesc_fixed[] = {
+ 0xC0 /* End Collection */
+ };
+
+-static __u8 *viewsonic_report_fixup(struct hid_device *hdev, __u8 *rdesc,
++static const __u8 *viewsonic_report_fixup(struct hid_device *hdev, __u8 *rdesc,
+ unsigned int *rsize)
+ {
+ switch (hdev->product) {
diff --git a/libraries/digimend-kernel-drivers/digimend-kernel-drivers.SlackBuild b/libraries/digimend-kernel-drivers/digimend-kernel-drivers.SlackBuild
index 243e216d4d..3727c589d8 100644
--- a/libraries/digimend-kernel-drivers/digimend-kernel-drivers.SlackBuild
+++ b/libraries/digimend-kernel-drivers/digimend-kernel-drivers.SlackBuild
@@ -77,6 +77,14 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# Check if we are using 6.x kernel
+# 6.12 made changes to a header, so we need to patch
+# https://github.com/DIGImend/digimend-kernel-drivers/pull/707
+SHORTVER=`echo $KERNEL | cut -d "." -f1`
+if [ $SHORTVER -eq 6 ]; then
+ patch -p1 < $CWD/b9ef432e2b93c31d2e39be13f22c61f4c2e8b5cb.patch
+fi
+
# don't run depmod here
sed -i '/depmod -a$/d' Makefile
# don't run udevadm here
diff --git a/libraries/docopt.cpp/README b/libraries/docopt.cpp/README
new file mode 100644
index 0000000000..f868b5c733
--- /dev/null
+++ b/libraries/docopt.cpp/README
@@ -0,0 +1,5 @@
+docopt.cpp (C++11 options parser based on help messages)
+
+docopt.cpp generates an option parser based on help messages in
+man-like style. It eliminates the need to write the repeatable parser
+code, and instead works off of help messages.
diff --git a/libraries/docopt.cpp/docopt.cpp.SlackBuild b/libraries/docopt.cpp/docopt.cpp.SlackBuild
new file mode 100644
index 0000000000..db8039c68a
--- /dev/null
+++ b/libraries/docopt.cpp/docopt.cpp.SlackBuild
@@ -0,0 +1,109 @@
+#!/bin/bash
+
+# Slackware build script for docopt.cpp
+
+# Copyright 2024-2025 Ruoh-Shoei LIN
+# 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=docopt.cpp
+VERSION=${VERSION:-0.6.3}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+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"
+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.gz
+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 {} \;
+
+mkdir -p build
+cd build
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DLIB_SUFFIX=${LIBDIRSUFFIX} \
+ -DMAN_INSTALL_DIR=/usr/man \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make
+ make 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
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ LICENSE-Boost-1.0 LICENSE-MIT README.rst \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+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/libraries/docopt.cpp/docopt.cpp.info b/libraries/docopt.cpp/docopt.cpp.info
new file mode 100644
index 0000000000..4736e2c27c
--- /dev/null
+++ b/libraries/docopt.cpp/docopt.cpp.info
@@ -0,0 +1,10 @@
+PRGNAM="docopt.cpp"
+VERSION="0.6.3"
+HOMEPAGE="https://github.com/docopt/docopt.cpp"
+DOWNLOAD="https://github.com/docopt/docopt.cpp/archive/v0.6.3/docopt.cpp-0.6.3.tar.gz"
+MD5SUM="c6290672c8dae49a01774297a51046fe"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Ruoh-Shoei LIN"
+EMAIL="lin.ruohshoei+sbo@gmail.com"
diff --git a/libraries/docopt.cpp/slack-desc b/libraries/docopt.cpp/slack-desc
new file mode 100644
index 0000000000..5cb614307f
--- /dev/null
+++ b/libraries/docopt.cpp/slack-desc
@@ -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------------------------------------------------------|
+docopt.cpp: docopt.cpp (C++11 options parser based on help messages)
+docopt.cpp:
+docopt.cpp: docopt.cpp generates an option parser based on help
+docopt.cpp: messages in man-like style. It eliminates the need to write the
+docopt.cpp: repeatable parser code, and instead works off of help messages.
+docopt.cpp:
+docopt.cpp:
+docopt.cpp:
+docopt.cpp:
+docopt.cpp:
+docopt.cpp:
diff --git a/libraries/duktape/README b/libraries/duktape/README
new file mode 100644
index 0000000000..be2a385795
--- /dev/null
+++ b/libraries/duktape/README
@@ -0,0 +1,32 @@
+Duktape
+
+Duktape is a small and portable ECMAScript E5/E5.1 implementation. It
+is intended to be easily embeddable into C programs, with a C API
+similar in spirit to Lua's.
+
+Duktape supports the full E5/E5.1 feature set (with some semantics
+updated from ES2015+) including errors, Unicode strings, and regular
+expressions, a subset of ECMAScript 2015 (E6) and ECMAScript 2016 (E7)
+features (e.g. computed property names, Proxy objects, exponentiation
+operator, Reflect), ES2015 ArrayBuffer/TypedView, Node.js Buffer,
+performance.now(), CBOR, and WHATWG Encoding API living standard.
+
+Duktape also provides a number of custom features such as error
+tracebacks, additional data types for better C integration, combined
+reference counting and mark-and sweep garbage collector, object
+finalizers, co-operative threads a.k.a. coroutines, tail calls, a
+built-in debugger protocol, function bytecode dump/load, and so on.
+Bundled extra modules provide functionality such as CommonJS module
+loading and a logging framework.
+
+You can browse Duktape programmer's API and other documentation at:
+
+* http://duktape.org/
+
+In particular, you should read the getting started section:
+
+* http://duktape.org/guide.html#gettingstarted
+
+More examples and how-to articles are in the Duktape Wiki:
+
+* http://wiki.duktape.org/
diff --git a/libraries/duktape/duktape.SlackBuild b/libraries/duktape/duktape.SlackBuild
new file mode 100644
index 0000000000..5403d515a1
--- /dev/null
+++ b/libraries/duktape/duktape.SlackBuild
@@ -0,0 +1,104 @@
+#!/bin/bash
+
+# Slackware build script for duktape
+
+# Copyright 2025, Lockywolf
+# 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=duktape
+VERSION=${VERSION:-2.7.0}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+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.*
+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 {} +
+
+make -f Makefile.sharedlibrary DESTDIR=$PKG INSTALL_PREFIX=/usr/ LIBDIR=/lib$LIBDIRSUFFIX
+make -f Makefile.sharedlibrary install DESTDIR=$PKG INSTALL_PREFIX=/usr/ LIBDIR=/lib$LIBDIRSUFFIX
+
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+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
+
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ AUTHORS.rst LICENSE.txt README.rst \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+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/libraries/duktape/duktape.info b/libraries/duktape/duktape.info
new file mode 100644
index 0000000000..c7fd799458
--- /dev/null
+++ b/libraries/duktape/duktape.info
@@ -0,0 +1,10 @@
+PRGNAM="duktape"
+VERSION="2.7.0"
+HOMEPAGE="https://duktape.org/"
+DOWNLOAD="https://duktape.org/duktape-2.7.0.tar.xz"
+MD5SUM="b3200b02ab80125b694bae887d7c1ca6"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Lockywolf"
+EMAIL="for_sbo.duktape_2025-02-26@lockywolf.net"
diff --git a/libraries/duktape/slack-desc b/libraries/duktape/slack-desc
new file mode 100644
index 0000000000..87dc2934c2
--- /dev/null
+++ b/libraries/duktape/slack-desc
@@ -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------------------------------------------------------|
+duktape: duktape (Embeddable Javascript engine)
+duktape:
+duktape: Duktape is a small and portable ECMAScript E5/E5.1 implementation.
+duktape: It is intended to be easily embeddable into C programs, with a C
+duktape: API similar in spirit to Lua's.
+duktape:
+duktape:
+duktape:
+duktape:
+duktape:
+duktape:
diff --git a/libraries/eduvpn-common/README b/libraries/eduvpn-common/README
new file mode 100644
index 0000000000..9fba503a76
--- /dev/null
+++ b/libraries/eduvpn-common/README
@@ -0,0 +1 @@
+eduvpn-common (eduvpn client application support library)
diff --git a/libraries/eduvpn-common/eduvpn-common.SlackBuild b/libraries/eduvpn-common/eduvpn-common.SlackBuild
new file mode 100644
index 0000000000..ef19007225
--- /dev/null
+++ b/libraries/eduvpn-common/eduvpn-common.SlackBuild
@@ -0,0 +1,104 @@
+#!/bin/bash
+
+# Slackware build script for eduvpn-common
+
+# Copyright 2025 Ruben Schuller
+# 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=eduvpn-common
+VERSION=${VERSION:-2.1.0}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+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"
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+else
+ SLKCFLAGS="-O2"
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+
+rm -rf eduvpn-common-2.1.0
+tar xvf $CWD/eduvpn-common-2.1.0.tar.xz
+cd eduvpn-common-2.1.0
+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 {} \;
+
+source /etc/profile.d/go.sh
+
+export CGO_CPPFLAGS="${SLKCFLAGS}"
+export CGO_CFLAGS="${SLKCFLAGS}"
+export CGO_CXXFLAGS="${SLKCFLAGS}"
+export GOFLAGS="-buildmode=pie -trimpath -ldflags=-linkmode=external -mod=vendor -tags=release"
+make
+
+cd wrappers/python
+make install-lib
+python3 -m build --no-isolation --sdist --wheel .
+python3 -m installer --destdir="$PKG" dist/*.whl
+
+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
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+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/libraries/eduvpn-common/eduvpn-common.info b/libraries/eduvpn-common/eduvpn-common.info
new file mode 100644
index 0000000000..5a44c65b2f
--- /dev/null
+++ b/libraries/eduvpn-common/eduvpn-common.info
@@ -0,0 +1,10 @@
+PRGNAM="eduvpn-common"
+VERSION="2.1.0"
+HOMEPAGE="https://eduvpn.org"
+DOWNLOAD="https://codeberg.org/eduVPN/eduvpn-common/releases/download/2.1.0/eduvpn-common-2.1.0.tar.xz"
+MD5SUM="7c1fe9720d12bc22e98886f8db7edaa9"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="google-go-lang python3-build python3-wheel"
+MAINTAINER="Ruben Schuller"
+EMAIL="sb@rbn.im"
diff --git a/libraries/eduvpn-common/slack-desc b/libraries/eduvpn-common/slack-desc
new file mode 100644
index 0000000000..d15d4a1dd1
--- /dev/null
+++ b/libraries/eduvpn-common/slack-desc
@@ -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------------------------------------------------------|
+eduvpn-common: eduvpn-common (eduvpn client application support library)
+eduvpn-common:
+eduvpn-common:
+eduvpn-common:
+eduvpn-common:
+eduvpn-common:
+eduvpn-common:
+eduvpn-common:
+eduvpn-common:
+eduvpn-common:
+eduvpn-common:
diff --git a/libraries/fcitx5-rime/fcitx5-rime.SlackBuild b/libraries/fcitx5-rime/fcitx5-rime.SlackBuild
index e95a6c3039..f47d28eeb1 100644
--- a/libraries/fcitx5-rime/fcitx5-rime.SlackBuild
+++ b/libraries/fcitx5-rime/fcitx5-rime.SlackBuild
@@ -23,7 +23,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=fcitx5-rime
-VERSION=${VERSION:-5.1.9}
+VERSION=${VERSION:-5.1.10}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/libraries/fcitx5-rime/fcitx5-rime.info b/libraries/fcitx5-rime/fcitx5-rime.info
index cee875e99b..5ab4510928 100644
--- a/libraries/fcitx5-rime/fcitx5-rime.info
+++ b/libraries/fcitx5-rime/fcitx5-rime.info
@@ -1,8 +1,8 @@
PRGNAM="fcitx5-rime"
-VERSION="5.1.9"
+VERSION="5.1.10"
HOMEPAGE="https://github.com/fcitx/fcitx5-rime"
-DOWNLOAD="https://download.fcitx-im.org/fcitx5/fcitx5-rime/fcitx5-rime-5.1.9.tar.zst"
-MD5SUM="23345c3bcebcf8e1951d1071d18e7fd7"
+DOWNLOAD="https://download.fcitx-im.org/fcitx5/fcitx5-rime/fcitx5-rime-5.1.10.tar.zst"
+MD5SUM="19e9b8952cd8d07f8cffcb696530ef09"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="librime fcitx5"
diff --git a/libraries/florist/README b/libraries/florist/README
new file mode 100644
index 0000000000..4d2f146b47
--- /dev/null
+++ b/libraries/florist/README
@@ -0,0 +1,5 @@
+florist (the POSIX Ada Bindings)
+
+FLORIST, an implementation of the IEEE Standards 1003.5: 1992,
+IEEE STD 1003.5b: 1996, and parts of IEEE STD 1003.5c: 1998,
+also known as the POSIX Ada Bindings.
diff --git a/libraries/florist/florist.SlackBuild b/libraries/florist/florist.SlackBuild
new file mode 100644
index 0000000000..26fa47264d
--- /dev/null
+++ b/libraries/florist/florist.SlackBuild
@@ -0,0 +1,128 @@
+#!/bin/bash
+# florist package build script (written by zhu.qunying@gmail.com)
+# Copyright 2012-2025, Zhu Qun-Ying
+# 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=florist
+VERSION=${VERSION:-2025.01}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+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"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; 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
+mkdir $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-*.tar.gz -C $PRGNAM-$VERSION --strip-components=1
+
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \; || exit 1
+
+sed -i -e 's/sources-subdir=floristlib/sources-subdir=$(SRC_DIR)/' \
+ -e 's/sources-subdir=floristlib/sources-subdir=$(LIB_DIR)/' \
+ -e 's/lib-subdir=floristlib/lib-subdir=$(LIB_DIR)/' \
+ -e "s/link-lib-subdir=floristlib/link-lib-subdir=lib$LIBDIRSUFFIX/" \
+ -e 's/\/floristlib\//\/*\/florist\//' \
+ -e 's/\$(GPRBUILD_FLAGS)/\$(GPRBUILD_FLAGS) -R -largs -s -gargs /' \
+ Makefile.in
+
+# build static library
+GCCFLAGS=$SLKCFLAGS \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib$LIBDIRSUFFIX \
+ --with-build-type=Production \
+ --build=$ARCH-slackware-linux
+
+make -j1
+
+make PREFIX=$PKG/usr SRC_DIR=include/florist \
+LIB_DIR=lib$LIBDIRSUFFIX/florist/static install
+
+# build shared library
+make distclean
+
+GCCFLAGS=$SLKCFLAGS \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib$LIBDIRSUFFIX \
+ --with-build-type=Production \
+ --enable-shared \
+ --build=$ARCH-slackware-linux
+make -j1
+
+# remove the source to avoid gprinstall complains
+rm -rf $PKG/usr/include/florist
+
+make PREFIX=$PKG/usr SRC_DIR=include/florist \
+LIB_DIR=lib$LIBDIRSUFFIX/florist/relocatable install
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp $CWD/$PRGNAM.SlackBuild $PKG/usr/doc/$PRGNAM-$VERSION
+cp README COPYING $PKG/usr/doc/$PRGNAM-$VERSION
+
+mkdir -p $PKG/install
+cp $CWD/slack-desc $PKG/install
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/libraries/florist/florist.info b/libraries/florist/florist.info
new file mode 100644
index 0000000000..b5c9efe8d9
--- /dev/null
+++ b/libraries/florist/florist.info
@@ -0,0 +1,10 @@
+PRGNAM="florist"
+VERSION="2025.01"
+HOMEPAGE="https://github.com/AdaCore/florist/"
+DOWNLOAD="https://github.com/AdaCore/florist/archive/a7e7d411345b8974ca06984aec45b81830ba304e/florist-a7e7d411345b8974ca06984aec45b81830ba304e.tar.gz"
+MD5SUM="04c8e4dd20f2b2353c8bd8eda2235c07"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="gprbuild"
+MAINTAINER="Zhu Qun-Ying"
+EMAIL="zhu.qunying@gmail.com"
diff --git a/libraries/florist/slack-desc b/libraries/florist/slack-desc
new file mode 100644
index 0000000000..eadbf63921
--- /dev/null
+++ b/libraries/florist/slack-desc
@@ -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------------------------------------------------------|
+florist: florist (the POSIX Ada Bindings)
+florist:
+florist: FLORIST, an implementation of the IEEE Standards 1003.5: 1992,
+florist: IEEE STD 1003.5b: 1996, and parts of IEEE STD 1003.5c: 1998,
+florist: also known as the POSIX Ada Bindings.
+florist:
+florist:
+florist:
+florist:
+florist: Homepage: https://github.com/AdaCore/florist
+florist:
diff --git a/libraries/gamemode/gamemode.SlackBuild b/libraries/gamemode/gamemode.SlackBuild
index 3a1666188c..aeef26f97c 100644
--- a/libraries/gamemode/gamemode.SlackBuild
+++ b/libraries/gamemode/gamemode.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for gamemode
-# Copyright 2023-2024 Jeremy Hansen jebrhansen+SBo@gmail.com
+# Copyright 2023-2025 Jeremy Hansen jebrhansen+SBo@gmail.com
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
diff --git a/libraries/gamemode/gamemode.info b/libraries/gamemode/gamemode.info
index f72606443d..3aeafa6a24 100644
--- a/libraries/gamemode/gamemode.info
+++ b/libraries/gamemode/gamemode.info
@@ -2,7 +2,7 @@ PRGNAM="gamemode"
VERSION="1.8.2"
HOMEPAGE="https://github.com/FeralInteractive/gamemode"
DOWNLOAD="https://github.com/FeralInteractive/gamemode/archive/refs/tags/1.8.2/gamemode-1.8.2.tar.gz"
-MD5SUM="96522bb7cecac18999507f097f8e231f"
+MD5SUM="d5ecd716df3903db8e5c68bd2798452c"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/gnatcoll-bindings/README b/libraries/gnatcoll-bindings/README
new file mode 100644
index 0000000000..9ad4f418a5
--- /dev/null
+++ b/libraries/gnatcoll-bindings/README
@@ -0,0 +1,5 @@
+The GNAT Components Collection (GNATcoll) - Bindings
+
+This is the bindings module of the GNAT Components Collection.
+It includes binding to gmp, iconv, lzma, omp, python,
+readline, syslog, and zlib.
diff --git a/libraries/gnatcoll-bindings/gnatcoll-bindings.SlackBuild b/libraries/gnatcoll-bindings/gnatcoll-bindings.SlackBuild
new file mode 100644
index 0000000000..f5533bbdf2
--- /dev/null
+++ b/libraries/gnatcoll-bindings/gnatcoll-bindings.SlackBuild
@@ -0,0 +1,109 @@
+#!/bin/bash
+# gnatcoll-bindings package build script (written by zhu.qunying@gmail.com)
+# Copyright 2012-2023, Zhu Qun-Ying
+# 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=gnatcoll-bindings
+VERSION=${VERSION:-25.0.0}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$(uname -m) ;;
+ esac
+fi
+
+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"
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+else
+ SLKCFLAGS="-O2"
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+mkdir $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz -C $PRGNAM-$VERSION --strip-components=1
+
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \; || exit 1
+
+echo "$VERSION" > version_information
+if [ "$ARCH" = "x86_64" ] ; then
+ find -name "*.gpr" | xargs sed -i 's/lib\//lib64\//'
+fi
+ADA_FLAGS=$SLKCFLAGS
+ADA_FLAGS="${ADA_FLAGS//-Wformat}"
+ADA_FLAGS="${ADA_FLAGS//-Werror=format-security}"
+LDFLAGS="-s"
+
+gpr_opts="-j0 -R -XGNATCOLL_VERSION=$VERSION -cargs $ADA_FLAGS -fPIC -largs $LDFLAGS"
+bindings=( python3 readline iconv gmp lzma omp syslog zlib )
+
+for binding in "${bindings[@]}"
+do
+ cd $binding
+ if [ "$binding" == "readline" ] ; then
+ python3 ./setup.py build --prefix=/usr --accept-gpl --gpr-opts $gpr_opts
+ else
+ python3 ./setup.py build --prefix=/usr --gpr-opts $gpr_opts
+ fi
+ python3 ./setup.py install --prefix="$PKG/usr"
+ cd ..
+done
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+
+cp README.md COPYING3 COPYING.RUNTIME $PKG/usr/doc/$PRGNAM-$VERSION
+cp $CWD/$PRGNAM.SlackBuild $PKG/usr/doc/$PRGNAM-$VERSION/
+
+mkdir -p $PKG/install
+cp $CWD/slack-desc $PKG/install
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/libraries/gnatcoll-bindings/gnatcoll-bindings.info b/libraries/gnatcoll-bindings/gnatcoll-bindings.info
new file mode 100644
index 0000000000..c3165c4eb9
--- /dev/null
+++ b/libraries/gnatcoll-bindings/gnatcoll-bindings.info
@@ -0,0 +1,10 @@
+PRGNAM="gnatcoll-bindings"
+VERSION="25.0.0"
+HOMEPAGE="https://github.com/AdaCore/gnatcoll-bindings"
+DOWNLOAD="https://github.com/AdaCore/gnatcoll-bindings/archive/v25.0.0/gnatcoll-bindings-25.0.0.tar.gz"
+MD5SUM="575a9408717f97b88517893be0903ed4"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="gprbuild gnatcoll-core"
+MAINTAINER="Zhu Qun-Ying"
+EMAIL="zhu.qunying@gmail.com"
diff --git a/libraries/gnatcoll-bindings/slack-desc b/libraries/gnatcoll-bindings/slack-desc
new file mode 100644
index 0000000000..fabc7b30b8
--- /dev/null
+++ b/libraries/gnatcoll-bindings/slack-desc
@@ -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------------------------------------------------------|
+gnatcoll-bindings: gnatcoll-bindings (GNAT Components Collection - Bindings)
+gnatcoll-bindings:
+gnatcoll-bindings: This is the bindings module of the GNAT Components Collection.
+gnatcoll-bindings: It includes binding to gmp, iconv, lzma, omp, python,
+gnatcoll-bindings: readline, syslog, and zlib.
+gnatcoll-bindings:
+gnatcoll-bindings: Homepage: https://github.com/AdaCore/gnatcoll-bindings/
+gnatcoll-bindings:
+gnatcoll-bindings:
+gnatcoll-bindings:
+gnatcoll-bindings:
diff --git a/libraries/gnatcoll-core/README b/libraries/gnatcoll-core/README
new file mode 100644
index 0000000000..0e7982f81e
--- /dev/null
+++ b/libraries/gnatcoll-core/README
@@ -0,0 +1,3 @@
+GNAT Components Collection - Core packages
+
+This is the core module of the GNAT Components Collection.
diff --git a/libraries/gnatcoll-core/compiler-error.patch b/libraries/gnatcoll-core/compiler-error.patch
new file mode 100644
index 0000000000..8930ce7585
--- /dev/null
+++ b/libraries/gnatcoll-core/compiler-error.patch
@@ -0,0 +1,28 @@
+commit 4a037b06e349a3ec0c6ad5e1dcf0814c4b44e6de
+Author: Zhu Qun-Ying <zhu.qunying@gmail.com>
+Date: Thu Dec 5 21:09:56 2024 -0800
+
+ fix compile error
+
+diff --git a/core/src/gnatcoll-json.adb b/core/src/gnatcoll-json.adb
+index 64b4217c..e4753312 100644
+--- a/core/src/gnatcoll-json.adb
++++ b/core/src/gnatcoll-json.adb
+@@ -666,7 +666,7 @@ package body GNATCOLL.JSON is
+
+ Deallocate (Current_Key);
+ Free (Read_States);
+- return (Success => True, Value => Result);
++ return R_Result : constant Read_Result := (Success => True, Value => Result);
+ exception
+ when E : Invalid_JSON_Stream =>
+ Free (Read_States);
+@@ -675,7 +675,7 @@ package body GNATCOLL.JSON is
+ begin
+ Data.Current_Text_Position (Line, Column);
+
+- return (Success => False,
++ return R_Result : constant Read_Result:= (Success => False,
+ Error => (Line, Column,
+ To_Unbounded_String
+ (Ada.Exceptions.Exception_Message (E))));
diff --git a/libraries/gnatcoll-core/gnatcoll-core.SlackBuild b/libraries/gnatcoll-core/gnatcoll-core.SlackBuild
new file mode 100644
index 0000000000..9c01c6a031
--- /dev/null
+++ b/libraries/gnatcoll-core/gnatcoll-core.SlackBuild
@@ -0,0 +1,137 @@
+#!/bin/bash
+# gnatcoll-core package build script (written by zhu.qunying@gmail.com)
+# Copyright 2012-2024, Zhu Qun-Ying
+# 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=gnatcoll-core
+VERSION=${VERSION:-25.0.0}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+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"
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+else
+ SLKCFLAGS="-O2"
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+mkdir $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz -C $PRGNAM-$VERSION --strip-components=1
+
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \; || exit 1
+
+ADA_FLAGS="$SLKCFLAGS"
+ADA_FLAGS="${ADA_FLAGS//-Wformat}"
+ADA_FLAGS="${ADA_FLAGS//-Werror=format-security}"
+
+patch -p1 < $CWD/compiler-error.patch
+
+COMMON_OPTIONS="-XGNATCOLL_BUILD_MODE=PROD \
+-XGNATCOLL_VERSION=$VERSION -XGNATCOLL_OS=unix "
+
+GPRINSTALL_OPTIONS="$COMMON_OPTIONS -p -f --prefix=$PKG/usr"
+GPRBUILD_OPTIONS="-R $COMMON_OPTIONS \
+-cargs $ADA_FLAGS -largs -s $LDFLAGS -gargs"
+
+sed -i 's/0.0/25.0.0/' core/config/gnatcoll_core_constants.gpr
+
+# upstream's build system too complicated to modified
+# build options. Use gprbuild directly and closely follow how upstream is built
+mkdir -p $PKG/usr/share/gpr
+export GPR_PROJECT_PATH="/usr/share/gpr:$PKG/usr/share/gpr"
+lib_types=(static relocatable static-pic)
+for lib in ${lib_types[@]} ; do
+ gprbuild -j0 $GPRBUILD_OPTIONS -XLIBRARY_TYPE=$lib \
+ -P minimal/gnatcoll_minimal.gpr
+ gprinstall $GPRINSTALL_OPTIONS -XLIBRARY_TYPE=$lib \
+ --sources-subdir=include/gnatcoll_minimal \
+ --build-name=$lib --build-var=LIBRARY_TYPE \
+ -P minimal/gnatcoll_minimal.gpr
+ gprbuild -j0 $GPRBUILD_OPTIONS -XLIBRARY_TYPE=$lib \
+ -XGNATCOLL_BLAKE3_ARCH="$ARCH-linux" \
+ -XGNATCOLL_XXHASH_ARCH="$ARCH" \
+ -XGNATCOLL_MMAP="yes" -XGNATCOLL_MADVISE="yes" \
+ -P core/gnatcoll_core.gpr
+ gprinstall $GPRINSTALL_OPTIONS -XLIBRARY_TYPE=$lib \
+ --sources-subdir=include/gnatcoll_core \
+ --build-name=$lib --build-var=LIBRARY_TYPE \
+ -XGNATCOLL_BLAKE3_ARCH="$ARCH-linux" \
+ -XGNATCOLL_XXHASH_ARCH="$ARCH" \
+ -XGNATCOLL_MMAP="yes" -XGNATCOLL_MADVISE="yes" \
+ -P core/gnatcoll_core.gpr
+ gprbuild -j0 $GPRBUILD_OPTIONS -XLIBRARY_TYPE=$lib \
+ -P projects/gnatcoll_projects.gpr
+ gprinstall $GPRINSTALL_OPTIONS -XLIBRARY_TYPE=$lib \
+ --sources-subdir=include/gnatcoll_projects \
+ --build-name=$lib --build-var=LIBRARY_TYPE \
+ -P projects/gnatcoll_projects.gpr
+done
+
+sed -e 's/^-- with "gnatcoll_projects"/with "gnatcoll_projects"/g' gnatcoll.gpr > $PKG/usr/share/gpr/gnatcoll.gpr
+
+make -C docs html
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a ./docs/_build/html $PKG/usr/doc/$PRGNAM-$VERSION
+rm -rf $PKG/usr/doc/$PRGNAM-$VERSION/html/_sources
+
+cp README.md COPYING* $PKG/usr/doc/$PRGNAM-$VERSION
+cp $CWD/$PRGNAM.SlackBuild $PKG/usr/doc/$PRGNAM-$VERSION
+
+mkdir -p $PKG/install
+cp $CWD/slack-desc $PKG/install
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-${VERSION}-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/libraries/gnatcoll-core/gnatcoll-core.info b/libraries/gnatcoll-core/gnatcoll-core.info
new file mode 100644
index 0000000000..f725e8515d
--- /dev/null
+++ b/libraries/gnatcoll-core/gnatcoll-core.info
@@ -0,0 +1,10 @@
+PRGNAM="gnatcoll-core"
+VERSION="25.0.0"
+HOMEPAGE="https://github.com/AdaCore/gnatcoll-core"
+DOWNLOAD="https://github.com/AdaCore/gnatcoll-core/archive/v25.0.0/gnatcoll-core-25.0.0.tar.gz"
+MD5SUM="606c9b2c6b8fe025f366b01a0fc3369a"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="gprbuild libgpr Sphinx sphinx-rtd-theme"
+MAINTAINER="Zhu Qun-Ying"
+EMAIL="zhu.qunying@gmail.com"
diff --git a/libraries/gnatcoll-core/slack-desc b/libraries/gnatcoll-core/slack-desc
new file mode 100644
index 0000000000..79379f86f2
--- /dev/null
+++ b/libraries/gnatcoll-core/slack-desc
@@ -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------------------------------------------------------|
+gnatcoll-core: gnatcoll-core (GNAT Components Collection - Core packages)
+gnatcoll-core:
+gnatcoll-core: This is the core module of the GNAT Components Collection.
+gnatcoll-core:
+gnatcoll-core:
+gnatcoll-core:
+gnatcoll-core: Homepage: https://github.com/AdaCore/gnatcoll-core/
+gnatcoll-core:
+gnatcoll-core:
+gnatcoll-core:
+gnatcoll-core:
diff --git a/libraries/gnatcoll-db/README b/libraries/gnatcoll-db/README
new file mode 100644
index 0000000000..736f8d57d8
--- /dev/null
+++ b/libraries/gnatcoll-db/README
@@ -0,0 +1,3 @@
+GNAT Component Collection (Database packages)
+
+This is the database module of the GNAT Components Collection.
diff --git a/libraries/gnatcoll-db/gnatcoll-db.SlackBuild b/libraries/gnatcoll-db/gnatcoll-db.SlackBuild
new file mode 100644
index 0000000000..57ed99685b
--- /dev/null
+++ b/libraries/gnatcoll-db/gnatcoll-db.SlackBuild
@@ -0,0 +1,114 @@
+#!/bin/bash
+# gnatcoll-db package build script (written by zhu.qunying@gmail.com)
+# Copyright 2012-2024, Zhu Qun-Ying
+# 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=gnatcoll-db
+VERSION=${VERSION:-25.0.0}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$(uname -m) ;;
+ esac
+fi
+
+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"
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+else
+ SLKCFLAGS="-O2"
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+mkdir $PRGNAM-$VERSION
+tar xvf $CWD/${PRGNAM}-${VERSION}.tar.gz -C $PRGNAM-$VERSION --strip-components=1
+
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \; || exit 1
+
+echo "$VERSION" > version_information
+POSTGRES=${POSTGRES:-no}
+
+if [ "$ARCH" == "x86_64" ]; then
+ find -name "*.gpr" | xargs sed -i 's/lib\//lib64\//'
+fi
+
+if [ "$POSTGRES" == "no" ]; then
+ dbs=( sql sqlite xref gnatinspect gnatcoll_db2ada )
+else
+ dbs=( sql sqlite xref gnatinspect postgres gnatcoll_db2ada )
+fi
+export ADA_PROJECT_PATH=$ADA_PROJECT_PATH:$PKG/usr/share/gpr
+
+CFLAGS=$SLKCFLAGS
+for db in "${dbs[@]}" ;
+do
+ echo "Building $db ..."
+ cd $db
+ make setup BUILD=PROD prefix=/usr
+ make -j1 GPRBUILD_OPTIONS="-R -cargs $CFLAGS -largs -s $LDFLAGS -gargs"
+ make -j1 prefix=$PKG/usr install
+ cd ..
+done
+
+make -C docs html man
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKG/usr/man/man1
+cp -a docs/_build/html $PKG/usr/doc/$PRGNAM-$VERSION
+cat docs/_build/man/gnatcoll-db.1 | gzip -c -9 > $PKG/usr/man/man1/gnatcoll-db.1.gz
+
+cp README.md COPYING3 COPYING.RUNTIME $PKG/usr/doc/$PRGNAM-$VERSION
+cp $CWD/$PRGNAM.SlackBuild $PKG/usr/doc/$PRGNAM-$VERSION
+
+mkdir -p $PKG/install
+cp $CWD/slack-desc $PKG/install
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/libraries/gnatcoll-db/gnatcoll-db.info b/libraries/gnatcoll-db/gnatcoll-db.info
new file mode 100644
index 0000000000..3170d59c90
--- /dev/null
+++ b/libraries/gnatcoll-db/gnatcoll-db.info
@@ -0,0 +1,10 @@
+PRGNAM="gnatcoll-db"
+VERSION="25.0.0"
+HOMEPAGE="https://github.com/AdaCore/gnatcoll-db"
+DOWNLOAD="https://github.com/AdaCore/gnatcoll-db/archive/v25.0.0/gnatcoll-db-25.0.0.tar.gz"
+MD5SUM="8683247ab388f32508b65bc28cdc932f"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="gprbuild gnatcoll-core gnatcoll-bindings"
+MAINTAINER="Zhu Qun-Ying"
+EMAIL="zhu.qunying@gmail.com"
diff --git a/libraries/gnatcoll-db/slack-desc b/libraries/gnatcoll-db/slack-desc
new file mode 100644
index 0000000000..b2de66baf2
--- /dev/null
+++ b/libraries/gnatcoll-db/slack-desc
@@ -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------------------------------------------------------|
+gnatcoll-db: gnatcoll-db (GNAT Component Collection Database packages)
+gnatcoll-db:
+gnatcoll-db: This is the database module of the GNAT Components Collection.
+gnatcoll-db:
+gnatcoll-db:
+gnatcoll-db:
+gnatcoll-db: Homepage: https://github.com/AdaCore/gnatcoll-db/
+gnatcoll-db:
+gnatcoll-db:
+gnatcoll-db:
+gnatcoll-db:
diff --git a/libraries/gnome-desktop/gnome-desktop.SlackBuild b/libraries/gnome-desktop/gnome-desktop.SlackBuild
index d59a545943..e383d0d118 100644
--- a/libraries/gnome-desktop/gnome-desktop.SlackBuild
+++ b/libraries/gnome-desktop/gnome-desktop.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for gnome-desktop
-# Copyright 2019 Gustavo Brondani Schenkel Porto Alegre, Brazil
+# Copyright 2019-2025 Gustavo Brondani Schenkel, Brazil
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,12 +22,10 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-# Updated to version 40.2 by Igor Alexandrov <igor.alexandrov@outlook.com>
-
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=gnome-desktop
-VERSION=${VERSION:-41.1}
+VERSION=${VERSION:-41.8}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -72,7 +70,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
+tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
diff --git a/libraries/gnome-desktop/gnome-desktop.info b/libraries/gnome-desktop/gnome-desktop.info
index a46fed9e01..b81a6868be 100644
--- a/libraries/gnome-desktop/gnome-desktop.info
+++ b/libraries/gnome-desktop/gnome-desktop.info
@@ -1,8 +1,8 @@
PRGNAM="gnome-desktop"
-VERSION="41.1"
+VERSION="41.8"
HOMEPAGE="https://gitlab.gnome.org/GNOME/gnome-desktop/"
-DOWNLOAD="https://download-fallback.gnome.org/sources/gnome-desktop/41/gnome-desktop-41.1.tar.xz"
-MD5SUM="249b3bb432d819f40ae05bc9305051b6"
+DOWNLOAD="https://gitlab.gnome.org/GNOME/gnome-desktop/-/archive/41.8/gnome-desktop-41.8.tar.bz2"
+MD5SUM="c97a714e5260036c0c3f48dd43e48e89"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/goffice/goffice.SlackBuild b/libraries/goffice/goffice.SlackBuild
index e30e2ed5f1..033b9db187 100644
--- a/libraries/goffice/goffice.SlackBuild
+++ b/libraries/goffice/goffice.SlackBuild
@@ -3,7 +3,7 @@
# Slackware build script for goffice
# Copyright (c) 2007 alkos333 <me@alkos333.net>
-# Copyright (c) 2023-24 Jim Diamond, Dartmouth, Nova Scotia, Canada
+# Copyright (c) 2023-25 Jim Diamond, Dartmouth, Nova Scotia, Canada
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -32,7 +32,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=goffice
-VERSION=${VERSION:-0.10.57}
+VERSION=${VERSION:-0.10.59}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/libraries/goffice/goffice.info b/libraries/goffice/goffice.info
index 7e4d226c69..9dba61e734 100644
--- a/libraries/goffice/goffice.info
+++ b/libraries/goffice/goffice.info
@@ -1,8 +1,8 @@
PRGNAM="goffice"
-VERSION="0.10.57"
+VERSION="0.10.59"
HOMEPAGE="https://download.gnome.org/sources/goffice/"
-DOWNLOAD="https://download.gnome.org/sources/goffice/0.10/goffice-0.10.57.tar.xz"
-MD5SUM="4c55f99d8fafe1f91276cb7538521fdb"
+DOWNLOAD="https://download.gnome.org/sources/goffice/0.10/goffice-0.10.59.tar.xz"
+MD5SUM="db013c15c5f6280c46a395647db759a4"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/grpc/grpc.SlackBuild b/libraries/grpc/grpc.SlackBuild
index 77a9a67c7a..21ce2f7790 100644
--- a/libraries/grpc/grpc.SlackBuild
+++ b/libraries/grpc/grpc.SlackBuild
@@ -27,7 +27,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=grpc
-VERSION=${VERSION:-1.67.1}
+VERSION=${VERSION:-1.71.0}
OPENCENSUS_VERSION=${OPENCENSUS_VERSION:-0.3.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
diff --git a/libraries/grpc/grpc.info b/libraries/grpc/grpc.info
index be3672fd9e..f0809cbbcf 100644
--- a/libraries/grpc/grpc.info
+++ b/libraries/grpc/grpc.info
@@ -1,9 +1,9 @@
PRGNAM="grpc"
-VERSION="1.67.1"
+VERSION="1.71.0"
HOMEPAGE="https://grpc.io/"
-DOWNLOAD="https://github.com/grpc/grpc/archive/v1.67.1/grpc-1.67.1.tar.gz \
+DOWNLOAD="https://github.com/grpc/grpc/archive/v1.71.0/grpc-1.71.0.tar.gz \
https://github.com/census-instrumentation/opencensus-proto/archive/v0.3.0/opencensus-proto-0.3.0.tar.gz"
-MD5SUM="ce074a670e556ac8a4aa9479cf9aa6b0 \
+MD5SUM="89ad442e1b174bc5d55c554aec583fa0 \
0b208800a68548cbf2d4bff763c050a2"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
diff --git a/libraries/gtk-fortran/README b/libraries/gtk-fortran/README
new file mode 100644
index 0000000000..103a677076
--- /dev/null
+++ b/libraries/gtk-fortran/README
@@ -0,0 +1,2 @@
+optional is plplot, autodetected if installed.
+NOTE: If PLplot was not compiled with the same Fortran compiler then before build gtk-fortran rebuild/reinstall plplot
diff --git a/libraries/gtk-fortran/doinst.sh b/libraries/gtk-fortran/doinst.sh
new file mode 100644
index 0000000000..f8617fecfa
--- /dev/null
+++ b/libraries/gtk-fortran/doinst.sh
@@ -0,0 +1,3 @@
+if [ -x /usr/bin/install-info ]; then
+ /usr/bin/install-info --info-dir=usr/info usr/info/blah.gz 1> /dev/null 2>&1
+fi
diff --git a/libraries/gtk-fortran/gtk-fortran.SlackBuild b/libraries/gtk-fortran/gtk-fortran.SlackBuild
new file mode 100644
index 0000000000..4098200bf2
--- /dev/null
+++ b/libraries/gtk-fortran/gtk-fortran.SlackBuild
@@ -0,0 +1,131 @@
+#!/bin/bash
+
+# Slackware build script for gtk-fotran
+
+# Copyright 2025 Anagnostakis Ioannis GR
+# 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=gtk-fortran
+VERSION=${VERSION:-4.7.0}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+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
+
+# Check if PLplot is installed
+if pkg-config --exists plplot; then
+ echo "PLplot found, enabling it in the build"
+ EXCLUDE_PLPLOT=false
+else
+ echo "PLplot not found, excluding it from the build"
+ EXCLUDE_PLPLOT=true
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+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 {} \;
+
+mkdir -p build
+cd build
+cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DLIB_SUFFIX=${LIBDIRSUFFIX} \
+ -DCMAKE_INSTALL_MANDIR=/usr/man \
+ -DEXCLUDE_PLPLOT=$EXCLUDE_PLPLOT \
+ -DCMAKE_BUILD_TYPE=Release ..
+
+make
+make install/strip DESTDIR=$PKG
+
+cd ..
+
+# DMAN_INSTALL_DIR dont work...
+#cp -R $PKG/usr/share/man $PKG/usr
+#rm -rf $PKG/usr/share/man
+
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+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 \
+ CHANGELOG* LICENSE* README* \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/libraries/gtk-fortran/gtk-fortran.info b/libraries/gtk-fortran/gtk-fortran.info
new file mode 100644
index 0000000000..f0d113e21b
--- /dev/null
+++ b/libraries/gtk-fortran/gtk-fortran.info
@@ -0,0 +1,10 @@
+PRGNAM="gtk-fortran"
+VERSION="4.7.0"
+HOMEPAGE="https://github.com/vmagnin/gtk-fortran/wiki"
+DOWNLOAD="https://github.com/vmagnin/gtk-fortran/archive/v4.7.0/gtk-fortran-4.7.0.tar.gz"
+MD5SUM="b78c17d756792fcbe36af08f2b35d681"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Anagnostakis Ioannis"
+EMAIL="rizitis@gmail.com"
diff --git a/libraries/gtk-fortran/slack-desc b/libraries/gtk-fortran/slack-desc
new file mode 100644
index 0000000000..64b00ad987
--- /dev/null
+++ b/libraries/gtk-fortran/slack-desc
@@ -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------------------------------------------------------|
+gtk-fortran: gtk-fortran (bindings to the Fortran language)
+gtk-fortran:
+gtk-fortran: The gtk-fortran project provides bindings to
+gtk-fortran: the Fortran language for the GTK libraries
+gtk-fortran: (GTK, Cairo, GdkPixbuf, GLib...) With gtk-fortran you can build
+gtk-fortran: GTK graphical user interfaces (GUI) use GdkPixbuf
+gtk-fortran: to draw bitmaps, you can use Cairo to make vectorial
+gtk-fortran: drawing,also integrate scientific plotting via its additional
+gtk-fortran: PLplot gtk-fortran has numerous functions of the generalist
+gtk-fortran: GLib library.
+gtk-fortran: https://github.com/vmagnin/gtk-fortran/wiki
diff --git a/libraries/gtkada/README b/libraries/gtkada/README
new file mode 100644
index 0000000000..2f8cc0bb00
--- /dev/null
+++ b/libraries/gtkada/README
@@ -0,0 +1,3 @@
+GtkAda is an Ada bindings for the GTK+ library, providing the
+complete set of Gtk+ widgets using the Object-Oriented features
+of this language.
diff --git a/libraries/gtkada/gtkada.SlackBuild b/libraries/gtkada/gtkada.SlackBuild
new file mode 100644
index 0000000000..b398f3b30b
--- /dev/null
+++ b/libraries/gtkada/gtkada.SlackBuild
@@ -0,0 +1,156 @@
+#!/bin/bash
+# GTKAda package build script (written by zhu.qunying@gmail.com)
+# Copyright 2012-2025, Zhu Qun-Ying
+# 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=gtkada
+VERSION=${VERSION:-25.0.1}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+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=""
+ LIB_ARCH=i386
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+ LIB_ARCH=i386
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+ LIB_ARCH=amd64
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+ LIB_ARCH=$ARCH
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+mkdir $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \; || exit 1
+
+sed -i -e "s/18.0w/$VERSION/" configure
+
+sed -i 's/PRJDIR=lib\/gnat/PRJDIR=share\/gpr/' Makefile.in
+
+#autoreconf -vis
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --includedir=/usr/include \
+ --infodir=/usr/info \
+ --mandir=/usr/man \
+ --enable-shared \
+ --with-GL=no \
+ --build=$ARCH-slackware-linux
+
+if [ "$ARCH" = "x86_64" ]; then
+ sed -i -e "s/lib\/gnat/share\/gpr/g" \
+ -e "s/prefix}\/lib/prefix}\/lib$LIBDIRSUFFIX/" \
+ -e "s/lib64\/gnat/share\/gpr/g" \
+ -e "s/lib\/gtkada/lib$LIBDIRSUFFIX\/gtkada/g"\
+ -e 's/=\${libdir}\//=\${DESTDIR}\${libdir}\//' \
+ -e 's/include\/gtkada\/gtkada.$(@F)/include\/gtkada/g' \
+ -e 's/include\/gtkada\/gtkada_gl.$(@F)/include\/gtkada/g' \
+ -e 's/lib64\/gtkada\/gtkada.$(@F)/lib64\/gtkada\/$(@F)/g' \
+ -e 's/lib64\/gtkada\/gtkada_gl.$(@F)/lib64\/gtkada\/$(@F)/g' \
+ -e 's/--install-name=gtkada//g' Makefile
+
+ sed -i "s/\/lib/\/lib$LIBDIRSUFFIX/g" gtk.gpr
+else
+ sed -i -e "s/lib\/gnat/share\/gpr/g" \
+ -e 's/=\${libdir}\//=\${DESTDIR}\${libdir}\//' \
+ -e 's/include\/gtkada\/gtkada.$(@F)/include\/gtkada/g' \
+ -e 's/include\/gtkada\/gtkada_gl.$(@F)/include\/gtkada/g' \
+ -e 's/lib\/gtkada\/gtkada.$(@F)/lib\/gtkada\/$(@F)/g' \
+ -e 's/lib\/gtkada\/gtkada_gl.$(@F)/lib\/gtkada\/$(@F)/g' \
+ -e 's/--install-name=gtkada//g' Makefile
+fi
+
+sed -i 's/share\/doc/doc/g' src/gtkada.gpr
+# change document location
+sed -i "s/share\/doc\//doc\//" xml/gtkada.xml
+(
+# unset the BUILD environment variable in subshell to avoid conflicting
+# definition for gtkada project in the gitlab CI environment.
+unset BUILD
+ADA_FLAGS="$SLKCFLAGS"
+LDFLAGS="-s"
+make -j1 PROCESSORS=1 GPRBUILD_SWITCHES="-R -XBUILD=Production -cargs $ADA_FLAGS -largs $LDFLAGS -gargs"
+
+make -j1 PROCESSORS=1 DESTDIR=$PKG install
+)
+
+# static-pic and relocatable are the same ali files
+(cd $PKG/usr/lib$LIBDIRSUFFIX/$PRGNAM/static-pic;
+ for ali_file in *.ali ; do
+ ln -sf ../relocatable/$ali_file
+ done)
+mkdir -p $PKG/install
+(cd $PKG/usr/share/examples/gtkada
+ rm lib$LIBDIRSUFFIX
+ ln -s ../../../lib$LIBDIRSUFFIX
+)
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp COPYING* ANNOUNCE README.md $PKG/usr/doc/$PRGNAM-$VERSION
+cp $CWD/$PRGNAM.SlackBuild $PKG/usr/doc/$PRGNAM-$VERSION
+cp $CWD/slack-desc $PKG/install
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/libraries/gtkada/gtkada.info b/libraries/gtkada/gtkada.info
new file mode 100644
index 0000000000..15262000f7
--- /dev/null
+++ b/libraries/gtkada/gtkada.info
@@ -0,0 +1,10 @@
+PRGNAM="gtkada"
+VERSION="25.0.1"
+HOMEPAGE="https://www.adacore.com/gtkada"
+DOWNLOAD="https://github.com/AdaCore/gtkada/archive/v25.0.1/gtkada-25.0.1.tar.gz"
+MD5SUM="fdc98e06b191f1d0135869df85d51458"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="gprbuild"
+MAINTAINER="Zhu Qun-Ying"
+EMAIL="zhu.qunying@gmail.com"
diff --git a/libraries/gtkada/slack-desc b/libraries/gtkada/slack-desc
new file mode 100644
index 0000000000..27e08c126a
--- /dev/null
+++ b/libraries/gtkada/slack-desc
@@ -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------------------------------------------------------|
+gtkada: gtkada (Ada bindings for the GTK+ library)
+gtkada:
+gtkada: GtkAda is an Ada bindings for the GTK+ library, providing the
+gtkada: complete set of Gtk+ widgets using the Object-Oriented features
+gtkada: of this language.
+gtkada:
+gtkada:
+gtkada:
+gtkada:
+gtkada: Homepage: https://www.adacore.com/gtkada
+gtkada:
diff --git a/libraries/gumbo-parser/gumbo-parser.SlackBuild b/libraries/gumbo-parser/gumbo-parser.SlackBuild
index 10807fe1a6..f1337ac6ff 100644
--- a/libraries/gumbo-parser/gumbo-parser.SlackBuild
+++ b/libraries/gumbo-parser/gumbo-parser.SlackBuild
@@ -7,6 +7,7 @@
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20250125 bkw: update for v0.13.0.
# 20241109 bkw: update for v0.12.1, which is a fork by a different
# upstream. the original project's README says "project has been
# unmaintained since 2016 and should not be used". using a self-hosted
@@ -18,7 +19,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=gumbo-parser
-VERSION=${VERSION:-0.12.1}
+VERSION=${VERSION:-0.13.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -66,6 +67,10 @@ chown -R root:root .
find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} + -o \
\! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} +
+# 20250125 bkw: yet again, someone insists we need a newer autoconf even
+# though the old version works fine.
+sed -i '/AC_PREREQ/s,2.72,2.69,' configure.ac
+
autoreconf -fi
CFLAGS="$SLKCFLAGS" \
diff --git a/libraries/gumbo-parser/gumbo-parser.info b/libraries/gumbo-parser/gumbo-parser.info
index 4d7c32aeec..d47b625f62 100644
--- a/libraries/gumbo-parser/gumbo-parser.info
+++ b/libraries/gumbo-parser/gumbo-parser.info
@@ -1,8 +1,8 @@
PRGNAM="gumbo-parser"
-VERSION="0.12.1"
+VERSION="0.13.0"
HOMEPAGE="https://codeberg.org/grisha/gumbo-parser"
-DOWNLOAD="https://slackware.uk/~urchlay/src/gumbo-parser-0.12.1.tar.gz"
-MD5SUM="f3770a145559f5d698bfb74cc7658777"
+DOWNLOAD="https://slackware.uk/~urchlay/src/gumbo-parser-0.13.0.tar.gz"
+MD5SUM="6fc70b493c17793267c8fbc70b128447"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/gupnp/gupnp.SlackBuild b/libraries/gupnp/gupnp.SlackBuild
index 896e200a83..93a041ba3f 100644
--- a/libraries/gupnp/gupnp.SlackBuild
+++ b/libraries/gupnp/gupnp.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for gupnp
-# Copyright 2016-2022 Willy Sudiarto Raharjo <willysr@slackbuilds.org>
+# Copyright 2016-2025 Willy Sudiarto Raharjo <willysr@slackbuilds.org>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=gupnp
-VERSION=${VERSION:-1.6.7}
+VERSION=${VERSION:-1.6.8}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/libraries/gupnp/gupnp.info b/libraries/gupnp/gupnp.info
index 2e18172985..5cbf5d8823 100644
--- a/libraries/gupnp/gupnp.info
+++ b/libraries/gupnp/gupnp.info
@@ -1,8 +1,8 @@
PRGNAM="gupnp"
-VERSION="1.6.7"
+VERSION="1.6.8"
HOMEPAGE="https://wiki.gnome.org/GUPnP/"
-DOWNLOAD="https://download.gnome.org/sources/gupnp/1.6/gupnp-1.6.7.tar.xz"
-MD5SUM="4277a100e9c909069e64086d20605bb5"
+DOWNLOAD="https://download.gnome.org/sources/gupnp/1.6/gupnp-1.6.8.tar.xz"
+MD5SUM="6152851a7e731f45eaf0b77263567c23"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="gssdp"
diff --git a/libraries/gwenhywfar/gwenhywfar.SlackBuild b/libraries/gwenhywfar/gwenhywfar.SlackBuild
index 4028c50406..c298ae2332 100644
--- a/libraries/gwenhywfar/gwenhywfar.SlackBuild
+++ b/libraries/gwenhywfar/gwenhywfar.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=gwenhywfar
-VERSION=${VERSION:-5.10.2}
+VERSION=${VERSION:-5.12.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/libraries/gwenhywfar/gwenhywfar.info b/libraries/gwenhywfar/gwenhywfar.info
index fb0ad714a0..0a27af66a9 100644
--- a/libraries/gwenhywfar/gwenhywfar.info
+++ b/libraries/gwenhywfar/gwenhywfar.info
@@ -1,8 +1,8 @@
PRGNAM="gwenhywfar"
-VERSION="5.10.2"
+VERSION="5.12.0"
HOMEPAGE="https://www.aquamaniac.de/"
-DOWNLOAD="https://www.aquamaniac.de/rdm/attachments/download/501/gwenhywfar-5.10.2.tar.gz"
-MD5SUM="a5d78549dcec73844d891c6a0a703e19"
+DOWNLOAD="https://www.aquamaniac.de/rdm/attachments/download/529/gwenhywfar-5.12.0.tar.gz"
+MD5SUM="7ed60df5eaa2ec697e8d13cc5b4888d3"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/iir1/README b/libraries/iir1/README
new file mode 100644
index 0000000000..335fa11edb
--- /dev/null
+++ b/libraries/iir1/README
@@ -0,0 +1,12 @@
+DSP IIR Realtime C++ filter library
+
+An infinite impulse response (IIR) filter library for Linux, Mac OSX
+and Windows which implements Butterworth, RBJ, Chebychev filters and
+can easily import coefficients generated by Python (scipy).
+
+- High performance
+- Realtime sample in - sample out processing
+- Butterworth, RBJ, Chebychev filters
+- Lowpass, highpass, bandpass and bandstop filters
+- Template based header-only filter functions
+- Cross platform: Linux, Windows and Mac
diff --git a/libraries/iir1/iir1.SlackBuild b/libraries/iir1/iir1.SlackBuild
new file mode 100644
index 0000000000..f98f0212b5
--- /dev/null
+++ b/libraries/iir1/iir1.SlackBuild
@@ -0,0 +1,104 @@
+#!/bin/bash
+
+# Slackware build script for iir
+
+# Copyright 2023 Yth | Pont-en-Royans, France | yth@ythogtha.org
+# 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=iir1
+VERSION=${VERSION:-1.9.5}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+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.gz
+cd $PRGNAM-$VERSION
+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 {} \;
+
+cmake \
+ -B build \
+ -S . \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=Release
+cmake --build build
+DESTDIR=$PKG cmake --install build
+
+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
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a COPYING README* $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+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/libraries/iir1/iir1.info b/libraries/iir1/iir1.info
new file mode 100644
index 0000000000..e94c9d499c
--- /dev/null
+++ b/libraries/iir1/iir1.info
@@ -0,0 +1,10 @@
+PRGNAM="iir1"
+VERSION="1.9.5"
+HOMEPAGE="https://github.com/berndporr/iir1"
+DOWNLOAD="https://github.com/berndporr/iir1/archive/1.9.5/iir1-1.9.5.tar.gz"
+MD5SUM="f75c4b63a7940a6c8684c928963572f0"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Yth - Arnaud"
+EMAIL="yth@ythogtha.org"
diff --git a/libraries/iir1/slack-desc b/libraries/iir1/slack-desc
new file mode 100644
index 0000000000..b180a16c98
--- /dev/null
+++ b/libraries/iir1/slack-desc
@@ -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------------------------------------------------------|
+iir1: iir1 (DSP IIR Realtime C++ filter library)
+iir1:
+iir1: An infinite impulse response (IIR) filter library which implements
+iir1: Butterworth, RBJ, Chebychev filters.
+iir1: Can easily import coefficients generated by Python (scipy).
+iir1:
+iir1:
+iir1:
+iir1:
+iir1:
+iir1:
diff --git a/libraries/imlib2/imlib2.SlackBuild b/libraries/imlib2/imlib2.SlackBuild
index 57281586bd..4dc5ebcce4 100644
--- a/libraries/imlib2/imlib2.SlackBuild
+++ b/libraries/imlib2/imlib2.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=imlib2
-VERSION=${VERSION:-1.12.3}
+VERSION=${VERSION:-1.12.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/libraries/imlib2/imlib2.info b/libraries/imlib2/imlib2.info
index 8a29230c98..21a608fe67 100644
--- a/libraries/imlib2/imlib2.info
+++ b/libraries/imlib2/imlib2.info
@@ -1,8 +1,8 @@
PRGNAM="imlib2"
-VERSION="1.12.3"
+VERSION="1.12.4"
HOMEPAGE="https://www.enlightenment.org"
-DOWNLOAD="https://sourceforge.net/projects/enlightenment/files/imlib2-src/1.12.3/imlib2-1.12.3.tar.xz"
-MD5SUM="93e5b769ed02a183dfd78569f7b0fbe3"
+DOWNLOAD="https://sourceforge.net/projects/enlightenment/files/imlib2-src/1.12.4/imlib2-1.12.4.tar.xz"
+MD5SUM="b2f6d612ac5282c989cb73ea41246d45"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/jbig2enc/configure.ac.patch b/libraries/jbig2enc/configure.ac.patch
deleted file mode 100644
index 0f3908d931..0000000000
--- a/libraries/jbig2enc/configure.ac.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/configure.ac
-+++ b/configure.ac
-@@ -2,7 +2,7 @@
- AC_INIT([jbig2enc], [0.28], [agl@imperialviolet.org], [jbig2enc-0.28],
- [https://github.com/agl/jbig2enc])
- AC_CONFIG_MACRO_DIR([m4])
--AM_INIT_AUTOMAKE([-Wall -Werror foreign no-dependencies])
-+AM_INIT_AUTOMAKE([-Wall foreign no-dependencies])
-
- # this should fix automake 1.12 build and compatible with automake 1.11
- m4_ifdef([AM_PROG_AR], [AM_PROG_AR])
-@@ -73,7 +73,7 @@
- fi],
- [libtool_patch_use_rpath=$enable_rpath])
-
--AC_CHECK_LIB([lept], [findFileFormatStream], [], [
-+AC_CHECK_LIB([leptonica], [findFileFormatStream], [], [
- echo "Error! Leptonica not detected."
- exit -1
- ])
diff --git a/libraries/jbig2enc/jbig2.1 b/libraries/jbig2enc/jbig2.1
index 98434b2a1e..db9b92badc 100644
--- a/libraries/jbig2enc/jbig2.1
+++ b/libraries/jbig2enc/jbig2.1
@@ -1,8 +1,5 @@
.\" Man page generated from reStructuredText.
.
-.TH JBIG2 1 "2016-11-05" "0.28" "SlackBuilds.org"
-.SH NAME
-jbig2 \- convert image files to JBIG2 format
.
.nr rst2man-indent-level 0
.
@@ -30,6 +27,9 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
..
+.TH "JBIG2" 1 "2025-01-25" "0.30" "SlackBuilds.org"
+.SH NAME
+jbig2 \- convert image files to JBIG2 format
.\" RST source for jbig2(1) man page. Convert with:
.
.\" rst2man.py jbig2.rst > jbig2.1
@@ -78,7 +78,7 @@ and \fI\-p\fP). Default is \fBoutput\fP\&.
.UNINDENT
.INDENT 0.0
.TP
-.B \-d\fP,\fB \-\-duplicate\-line\-removal
+.B \-d\fP,\fB \-\-duplicate\-line\-removal
When encoding generic regions each scan line can be tagged to indicate
that it\(aqs the same as the last scanline \- and encoding that scanline
is skipped. This drastically reduces the encoding time (by a factor
@@ -86,7 +86,7 @@ of about 2 on some images) although it doesn\(aqt typically save any
bytes. This is an option because some versions of jbig2dec (an open
source decoding library) cannot handle this.
.TP
-.B \-p\fP,\fB \-\-pdf
+.B \-p\fP,\fB \-\-pdf
The PDF spec includes support for JBIG2 (Syntax\->Filters\->JBIG2Decode in
the PDF references for versions 1.4 and above). However, PDF requires
a slightly different format for JBIG2 streams: no file/page headers or
@@ -95,7 +95,7 @@ a series of files: symboltable and page\-n (numbered from 0). By default
these are named \fBoutput.sym\fP and \fBoutput.0000\fP, \fBoutput.0001\fP,
etc. Use \fI\-b\fP to change the base filename.
.TP
-.B \-s\fP,\fB \-\-symbol\-mode
+.B \-s\fP,\fB \-\-symbol\-mode
Use symbol encoding. Turn on for scanned text pages.
.UNINDENT
.INDENT 0.0
@@ -117,35 +117,35 @@ test loss.
.UNINDENT
.INDENT 0.0
.TP
-.B \-2\fP,\fB \-4
+.B \-2\fP,\fB \-4
Upscale either two or four times before converting to black and
white.
.TP
-.B \-S
+.B \-S
Segment an image into text and non\-text regions. This isn\(aqt perfect, but
running text through the symbol compressor is terrible so it\(aqs worth doing
if your input has images in it (like a magazine page).
.TP
-.B \-\-image\-output
+.B \-\-image\-output
Set filename to which the parts which were removed by \-S are written.
Default is PNG format.
.TP
-.B \-j\fP,\fB \-\-jpeg\-output
+.B \-j\fP,\fB \-\-jpeg\-output
Write images from \-S as JPEG instead of PNG.
.TP
-.B \-a\fP,\fB \-\-auto\-thresh
+.B \-a\fP,\fB \-\-auto\-thresh
Use automatic thresholding in symbol encoder.
.TP
-.B \-\-no\-hash
+.B \-\-no\-hash
Disables use of hash function for automatic thresholding.
.TP
-.B \-v
+.B \-v
Be verbose.
.TP
-.B \-V\fP,\fB \-\-version
+.B \-V\fP,\fB \-\-version
Display version number and exit.
.TP
-.B \-h\fP,\fB \-\-help
+.B \-h\fP,\fB \-\-help
Display help and exit.
.UNINDENT
.SH EXIT STATUS
@@ -156,7 +156,7 @@ redirected to a file, the file will be empty or invalid when non\-zero
status is returned. Diagnostic messages are printed to standard error.
.SH COPYRIGHT
.sp
-See the file /usr/doc/jbig2enc\-0.28/COPYING for license information.
+See the file /usr/doc/jbig2enc\-0.30/COPYING for license information.
.sp
This software is a description of processes which may be patented.
.sp
@@ -181,11 +181,11 @@ This man page written for the SlackBuilds.org project
by B. Watson, and is licensed under the WTFPL.
.SH SEE ALSO
.sp
-\fBpdf.py(1)\fP, \fBjbig2dec(1)\fP
+\fBjbig2topdf.py(1)\fP, \fBjbig2dec(1)\fP
.INDENT 0.0
.TP
.B Full documentation for jbig2 and jbig2enc:
-/usr/doc/jbig2enc\-0.28/jbig2enc.html
+/usr/doc/jbig2enc\-0.30/jbig2enc.html
.TP
.B The JBIG2 specification was formerly located at:
\fI\%http://www.jpeg.org/public/fcd14492.pdf\fP
diff --git a/libraries/jbig2enc/jbig2.rst b/libraries/jbig2enc/jbig2.rst
index fc17dcb3f3..44edb859d8 100644
--- a/libraries/jbig2enc/jbig2.rst
+++ b/libraries/jbig2enc/jbig2.rst
@@ -2,7 +2,7 @@
.. rst2man.py jbig2.rst > jbig2.1
.. rst2man.py comes from the SBo development/docutils package.
-.. |version| replace:: 0.28
+.. |version| replace:: 0.30
.. |date| date::
=====
@@ -164,7 +164,7 @@ by B. Watson, and is licensed under the WTFPL.
SEE ALSO
========
-**pdf.py(1)**, **jbig2dec(1)**
+**jbig2topdf.py(1)**, **jbig2dec(1)**
Full documentation for jbig2 and jbig2enc:
/usr/doc/jbig2enc-|version|/jbig2enc.html
diff --git a/libraries/jbig2enc/jbig2enc-2019.09.08-leptonica-1.83.0.patch b/libraries/jbig2enc/jbig2enc-2019.09.08-leptonica-1.83.0.patch
deleted file mode 100644
index f80d41ccdd..0000000000
--- a/libraries/jbig2enc/jbig2enc-2019.09.08-leptonica-1.83.0.patch
+++ /dev/null
@@ -1,42 +0,0 @@
---- a/src/jbig2.cc
-+++ b/src/jbig2.cc
-@@ -29,6 +29,8 @@
- #endif
-
- #include <leptonica/allheaders.h>
-+#include <leptonica/array_internal.h>
-+#include <leptonica/pix_internal.h>
-
- #include "jbig2enc.h"
-
---- a/src/jbig2enc.cc
-+++ b/src/jbig2enc.cc
-@@ -24,6 +24,8 @@
- #include <string.h>
-
- #include <leptonica/allheaders.h>
-+#include <leptonica/array_internal.h>
-+#include <leptonica/pix_internal.h>
-
- #include <math.h>
- #if defined(sun)
-@@ -206,7 +208,7 @@
- numaSetValue(ctx->classer->naclass, i, new_representant);
- }
- }
-- pixChangeRefcount(ctx->classer->pixat->pix[new_representant],pixGetRefcount(ctx->classer->pixat->pix[second_template]));
-+ ctx->classer->pixat->pix[new_representant]->refcount += ctx->classer->pixat->pix[second_template]->refcount;
- }
- return 0;
- }
---- a/src/jbig2sym.cc
-+++ b/src/jbig2sym.cc
-@@ -29,6 +29,8 @@
- #include <stdio.h>
-
- #include <leptonica/allheaders.h>
-+#include <leptonica/array_internal.h>
-+#include <leptonica/pix_internal.h>
-
- #include <math.h>
-
diff --git a/libraries/jbig2enc/jbig2enc.SlackBuild b/libraries/jbig2enc/jbig2enc.SlackBuild
index c095d1f88c..b1ad72e955 100644
--- a/libraries/jbig2enc/jbig2enc.SlackBuild
+++ b/libraries/jbig2enc/jbig2enc.SlackBuild
@@ -6,14 +6,15 @@
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20250125 bkw: update for v0.30.
# 20230104 bkw: BUILD=3, remove INSTALL
# 20211124 bkw: BUILD=2, remove .la file
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=jbig2enc
-VERSION=${VERSION:-0.29}
-BUILD=${BUILD:-4}
+VERSION=${VERSION:-0.30}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -50,9 +51,6 @@ fi
set -e
-# used to be, for 0.28-dist:
-#TARNAM=$PRGNAM-$VERSION-dist
-
TARNAM=$PRGNAM-$VERSION
rm -rf $PKG
@@ -62,17 +60,20 @@ rm -rf $TARNAM
tar xvf $CWD/$TARNAM.tar.gz
cd $TARNAM
chown -R root:root .
-find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
- \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} + -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} +
-patch -p1 < $CWD/jbig2enc-2019.09.08-leptonica-1.83.0.patch
-patch -p1 < $CWD/configure.ac.patch
+# 20250125 bkw: I hate this bullshit. Upstream decided autoconf 2.71
+# is the minimum required version, when it obviously is not, as it
+# works fine with 2.69 if I change the number.
+sed -i '/AC_PREREQ/s,2.71,2.69,' configure.ac
autoreconf -if
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
+ --disable-rpath \
--disable-static \
--enable-shared \
--prefix=/usr \
@@ -89,7 +90,7 @@ rm -f $PKG/usr/lib*/*.la
# man pages written for this SlackBuild, submitted upstream for
# consideration.
-MANPAGES="jbig2 pdf.py"
+MANPAGES="jbig2 jbig2topdf.py"
mkdir -p $PKG/usr/man/man1
for i in $MANPAGES; do
@@ -98,7 +99,7 @@ done
# docs already installed, except this one:
PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
-cp -a fcd14492.pdf $PKGDOC
+cp -a doc/fcd14492.pdf $PKGDOC
rm -f $PKGDOC/INSTALL
cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
diff --git a/libraries/jbig2enc/jbig2enc.info b/libraries/jbig2enc/jbig2enc.info
index b9b514c1b9..14a6cc3041 100644
--- a/libraries/jbig2enc/jbig2enc.info
+++ b/libraries/jbig2enc/jbig2enc.info
@@ -1,8 +1,8 @@
PRGNAM="jbig2enc"
-VERSION="0.29"
+VERSION="0.30"
HOMEPAGE="https://github.com/agl/jbig2enc"
-DOWNLOAD="https://github.com/agl/jbig2enc/archive/0.29/jbig2enc-0.29.tar.gz"
-MD5SUM="c3d1f7fd51e272301d5de436afb1fccb"
+DOWNLOAD="https://github.com/agl/jbig2enc/archive/0.30/jbig2enc-0.30.tar.gz"
+MD5SUM="02dcd3cf4da530d688499955c05f5e32"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="leptonica"
diff --git a/libraries/jbig2enc/pdf.py.1 b/libraries/jbig2enc/jbig2topdf.py.1
index 38225effe8..c74bc17ca9 100644
--- a/libraries/jbig2enc/pdf.py.1
+++ b/libraries/jbig2enc/jbig2topdf.py.1
@@ -1,8 +1,5 @@
.\" Man page generated from reStructuredText.
.
-.TH PDF.PY "" "" ""
-.SH NAME
-pdf.py \- create PDF files from JBIG2 images
.
.nr rst2man-indent-level 0
.
@@ -30,9 +27,12 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
..
-.\" RST source for pdf.py(1) man page. Convert with:
+.TH "JBIG2TOPDF.PY" 1 "2025-01-25" "0.30" "SlackBuilds.org"
+.SH NAME
+jbig2topdf.py \- create PDF files from JBIG2 images
+.\" RST source for jbig2topdf.py(1) man page. Convert with:
.
-.\" rst2man.py pdf.py.rst > pdf.py.1
+.\" rst2man.py jbig2topdf.py.rst > jbig2topdf.py.1
.
.\" rst2man.py comes from the SBo development/docutils package.
.
@@ -40,13 +40,13 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
.sp
jbig2 \-b newdoc \-s \-p image1.jpg image2.jpg ...
.sp
-pdf.py newdoc > newdoc.pdf
+jbig2topdf.py newdoc > newdoc.pdf
.SH DESCRIPTION
.sp
-\fBpdf.py\fP creates a PDF document from \fBjbig2\fP\(aqs PDF\-ready output
+\fBjbig2topdf.py\fP creates a PDF document from \fBjbig2\fP\(aqs PDF\-ready output
(created using \fI\-s\fP and \fI\-p\fP, \fI\-\-pdf\fP).
.sp
-\fBpdf.py\fP takes only one argument: the base name of the files created
+\fBjbig2topdf.py\fP takes only one argument: the base name of the files created
by \fBjbig2\fP, which is set with \fBjbig2\fP\(aqs \fI\-b\fP option. Without \fI\-b\fP,
the default name is \fBoutput\fP\&.
.sp
@@ -54,17 +54,17 @@ The PDF is written to standard output, which normally should be redirected
to a file (see the example above).
.SH EXIT STATUS
.sp
-\fBpdf.py\fP exits with 0 (success) status if the conversion completed
+\fBjbig2topdf.py\fP exits with 0 (success) status if the conversion completed
OK, and non\-zero status if anything went wrong. If standard output was
redirected to a file, the file will be empty or invalid when non\-zero
status is returned. Diagnostic messages are printed to standard error.
.SH COPYRIGHT
.sp
-See the file /usr/doc/jbig2enc\-0.28/COPYING for license information.
+See the file /usr/doc/jbig2enc\-0.30/COPYING for license information.
.SH AUTHORS
.INDENT 0.0
.TP
-.B pdf.py and jbig2enc were written by:
+.B jbig2topdf.py and jbig2enc were written by:
Adam Langley <\fI\%agl@imperialviolet.org\fP>.
.UNINDENT
.sp
diff --git a/libraries/jbig2enc/pdf.py.rst b/libraries/jbig2enc/jbig2topdf.py.rst
index 6b4cb623a2..faa2148d90 100644
--- a/libraries/jbig2enc/pdf.py.rst
+++ b/libraries/jbig2enc/jbig2topdf.py.rst
@@ -1,32 +1,37 @@
-.. RST source for pdf.py(1) man page. Convert with:
-.. rst2man.py pdf.py.rst > pdf.py.1
+.. RST source for jbig2topdf.py(1) man page. Convert with:
+.. rst2man.py jbig2topdf.py.rst > jbig2topdf.py.1
.. rst2man.py comes from the SBo development/docutils package.
-.. |version| replace:: 0.28
+.. |version| replace:: 0.30
.. |date| date::
-======
-pdf.py
-======
+=============
+jbig2topdf.py
+=============
----------------------------------
create PDF files from JBIG2 images
----------------------------------
+:Manual section: 1
+:Manual group: SlackBuilds.org
+:Date: |date|
+:Version: |version|
+
SYNOPSIS
========
jbig2 -b newdoc -s -p image1.jpg image2.jpg ...
-pdf.py newdoc > newdoc.pdf
+jbig2topdf.py newdoc > newdoc.pdf
DESCRIPTION
===========
-**pdf.py** creates a PDF document from **jbig2**'s PDF-ready output
+**jbig2topdf.py** creates a PDF document from **jbig2**'s PDF-ready output
(created using *-s* and *-p*, *--pdf*).
-**pdf.py** takes only one argument: the base name of the files created
+**jbig2topdf.py** takes only one argument: the base name of the files created
by **jbig2**, which is set with **jbig2**'s *-b* option. Without *-b*,
the default name is **output**.
@@ -36,7 +41,7 @@ to a file (see the example above).
EXIT STATUS
===========
-**pdf.py** exits with 0 (success) status if the conversion completed
+**jbig2topdf.py** exits with 0 (success) status if the conversion completed
OK, and non-zero status if anything went wrong. If standard output was
redirected to a file, the file will be empty or invalid when non-zero
status is returned. Diagnostic messages are printed to standard error.
@@ -49,7 +54,7 @@ See the file /usr/doc/jbig2enc-|version|/COPYING for license information.
AUTHORS
=======
-pdf.py and jbig2enc were written by:
+jbig2topdf.py and jbig2enc were written by:
Adam Langley <agl@imperialviolet.org>.
This man page written for the SlackBuilds.org project
diff --git a/libraries/jsoncpp/jsoncpp.SlackBuild b/libraries/jsoncpp/jsoncpp.SlackBuild
index ca6b445856..a0a3a422ac 100644
--- a/libraries/jsoncpp/jsoncpp.SlackBuild
+++ b/libraries/jsoncpp/jsoncpp.SlackBuild
@@ -26,7 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=jsoncpp
-VERSION=${VERSION:-1.9.5}
+VERSION=${VERSION:-1.9.6}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/libraries/jsoncpp/jsoncpp.info b/libraries/jsoncpp/jsoncpp.info
index bd91bd95ef..af0e97d3ec 100644
--- a/libraries/jsoncpp/jsoncpp.info
+++ b/libraries/jsoncpp/jsoncpp.info
@@ -1,8 +1,8 @@
PRGNAM="jsoncpp"
-VERSION="1.9.5"
+VERSION="1.9.6"
HOMEPAGE="https://github.com/open-source-parsers/jsoncpp"
-DOWNLOAD="https://github.com/open-source-parsers/jsoncpp/archive/1.9.5/jsoncpp-1.9.5.tar.gz"
-MD5SUM="d6c8c609f2162eff373db62b90a051c7"
+DOWNLOAD="https://github.com/open-source-parsers/jsoncpp/archive/1.9.6/jsoncpp-1.9.6.tar.gz"
+MD5SUM="bf641b36615341b31ef917f104318608"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/lib3ds/README b/libraries/lib3ds/README
new file mode 100644
index 0000000000..92f1934282
--- /dev/null
+++ b/libraries/lib3ds/README
@@ -0,0 +1,37 @@
+lib3ds is an overall software library for managing 3D-Studio Release 3
+and 4 ".3DS" files.
+
+lib3ds is an overall software library for managing 3D-Studio Release 3
+and 4 ".3DS" files. It is a free alternative to Autodesk's 3DS File
+Toolkit for managing 3DS files. It started out in 1996 to be released
+in 1999 under the GNU General Public License (GPL) as Open-Source
+software. In 2000, the library was completely rewritten in ANSI-C to
+attain more hardware platform independence. To enable commercial
+application the license was changed to GNU Lesser General Public
+License (LGPL).
+
+Features
+Written in portable ANSI-C
+Supported platforms:
+GNU build tools (autoconf, automake, libtool)
+UNIX
+Mac OS X
+Microsoft Visual C++ 8.0
+Supports little and big endian CPUs
+Load and save:
+Atmosphere settings
+Background settings
+Shadow map settings
+Viewport setting
+Materials
+Cameras
+Lights
+Meshes
+Hierarchy
+Keyframes
+Evaluation of all animation (keyframing) data
+Simple easy to manipulate data structures
+Vector mathematics module
+Quaternion mathematics module
+Matrix mathematics module
+Integrates seamless with OpenGL
diff --git a/libraries/lib3ds/lib3ds.SlackBuild b/libraries/lib3ds/lib3ds.SlackBuild
new file mode 100644
index 0000000000..e8169b6aa5
--- /dev/null
+++ b/libraries/lib3ds/lib3ds.SlackBuild
@@ -0,0 +1,124 @@
+#!/bin/bash
+
+# Slackware build script for lib3ds
+
+# Copyright 2025, Lockywolf
+# 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=lib3ds
+VERSION=${VERSION:-1.3.0}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+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
+unzip $CWD/$PRGNAM-$VERSION.zip
+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 {} +
+
+(
+mkdir build
+cd build
+
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+../configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --docdir=/usr/doc/$PRGNAM-$VERSION \
+ --disable-static \
+ --build=$ARCH-slackware-linux
+
+make
+make install DESTDIR=$PKG
+)
+
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+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 \
+ ChangeLog TODO AUTHORS COPYING README \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+#cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/libraries/lib3ds/lib3ds.info b/libraries/lib3ds/lib3ds.info
new file mode 100644
index 0000000000..24cb847c8d
--- /dev/null
+++ b/libraries/lib3ds/lib3ds.info
@@ -0,0 +1,10 @@
+PRGNAM="lib3ds"
+VERSION="1.3.0"
+HOMEPAGE="https://code.google.com/archive/p/lib3ds/"
+DOWNLOAD="https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/lib3ds/lib3ds-1.3.0.zip"
+MD5SUM="2572f7b0f29b591d494c1a0658b35c86"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Lockywolf"
+EMAIL="for_sbo.lib3ds_2025-02-10@lockywolf.net"
diff --git a/libraries/lib3ds/slack-desc b/libraries/lib3ds/slack-desc
new file mode 100644
index 0000000000..5fd7e0e69e
--- /dev/null
+++ b/libraries/lib3ds/slack-desc
@@ -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------------------------------------------------------|
+lib3ds: lib3ds (ibrary for managing 3D-Studio Release 3 and 4 .3ds files)
+lib3ds:
+lib3ds: lib3ds is an overall software library for managing 3D-Studio Release
+lib3ds: 3 and 4 ".3DS" files. lib3ds is an overall software library for
+lib3ds: managing 3D-Studio Release 3 and 4 ".3DS" files. It is a free
+lib3ds: alternative to Autodesk's 3DS File Toolkit for managing 3DS files.
+lib3ds: It started out in 1996 to be released in 1999 under the GNU General
+lib3ds: Public License (GPL) as Open-Source software. In 2000, the library
+lib3ds: was completely rewritten in ANSI-C to attain more hardware platform
+lib3ds: independence. To enable commercial application the license was
+lib3ds: changed to GNU Lesser General Public License (LGPL).
diff --git a/libraries/lib3mf/README b/libraries/lib3mf/README
new file mode 100644
index 0000000000..14c754ca18
--- /dev/null
+++ b/libraries/lib3mf/README
@@ -0,0 +1,16 @@
+lib3mf is a C++ implementation of the 3D Manufacturing Format file
+standard.
+
+It provides 3MF reading and writing capabilities, as well as conversion
+and validation tools for input and output data. lib3mf runs on Windows,
+Linux and MacOS and offers a clean and easy-to-use API in various
+programming languages to speed up the development and keep integration
+costs at a minimum.
+
+As 3MF shall become an universal 3D Printing standard, its quick
+adoption is very important. This library shall lower all barriers of
+adoption to any possible user, let it be software providers, hardware
+providers, service providers or middleware tools.
+
+The specification can be downloaded at http://3mf.io/specification/.
+
diff --git a/libraries/lib3mf/lib3mf.SlackBuild b/libraries/lib3mf/lib3mf.SlackBuild
new file mode 100644
index 0000000000..f69caaf18f
--- /dev/null
+++ b/libraries/lib3mf/lib3mf.SlackBuild
@@ -0,0 +1,120 @@
+#!/bin/bash
+
+# Slackware build script for lib3mf
+
+# Copyright 2024 Christoph Willing Sydney, Australia
+# 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=lib3mf
+VERSION=${VERSION:-2.3.2}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+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 xf $CWD/$PRGNAM-$VERSION.tar.gz
+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 {} \;
+
+mkdir -p build
+cd build
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DUSE_INCLUDED_LIBZIP="OFF" \
+ -DUSE_INCLUDED_SSL="OFF" \
+ -DUSE_INCLUDED_ZLIB="OFF" \
+ -DLIB3MF_TESTS="OFF" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_INCLUDEDIR=include/lib3mf \
+ -DCMAKE_INSTALL_LIBDIR=lib${LIBDIRSUFFIX} \
+ -DCMAKE_BUILD_TYPE=Release ..
+
+ make
+ make install/strip DESTDIR=$PKG
+cd ..
+
+# Adjustments to enable discovery by (e.g.) openscad
+#
+(cd $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig && ln -s lib3mf.pc lib3MF.pc)
+(cd $PKG/usr/include/lib3mf && mv -n Bindings/*/*.{h,hpp} . && rm -rf Bindings)
+
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+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
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ CONTRIBUTING.md LICENSE README.md \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+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/libraries/lib3mf/lib3mf.info b/libraries/lib3mf/lib3mf.info
new file mode 100644
index 0000000000..a97b709971
--- /dev/null
+++ b/libraries/lib3mf/lib3mf.info
@@ -0,0 +1,10 @@
+PRGNAM="lib3mf"
+VERSION="2.3.2"
+HOMEPAGE="https://github.com/3MFConsortium/lib3mf"
+DOWNLOAD="https://github.com/3MFConsortium/lib3mf/archive/refs/tags/v2.3.2/lib3mf-2.3.2.tar.gz"
+MD5SUM="0e3521cfd1ddec28bc82593551c1440a"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Christoph Willing"
+EMAIL="chris.willing@linux.com"
diff --git a/libraries/lib3mf/slack-desc b/libraries/lib3mf/slack-desc
new file mode 100644
index 0000000000..5694cfeb37
--- /dev/null
+++ b/libraries/lib3mf/slack-desc
@@ -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------------------------------------------------------|
+lib3mf: lib3mf (3D Manufacturing Format in C++)
+lib3mf:
+lib3mf: lib3mf provides 3MF reading and writing capabilities, as well as
+lib3mf: conversion and validation tools for input and output data. It offers
+lib3mf: a clean and easy-to-use API in various programming languages to speed
+lib3mf: up the development and keep integration costs at a minimum.
+lib3mf:
+lib3mf: As 3MF shall become an universal 3D Printing standard, its quick
+lib3mf: adoption is very important. This library shall lower all barriers of
+lib3mf: adoption to any possible user, let it be software providers, hardware
+lib3mf: providers, service providers or middleware tools.
diff --git a/libraries/libcec/libcec.SlackBuild b/libraries/libcec/libcec.SlackBuild
index e20696effe..f9728b5806 100644
--- a/libraries/libcec/libcec.SlackBuild
+++ b/libraries/libcec/libcec.SlackBuild
@@ -26,7 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=libcec
-VERSION=${VERSION:-4.0.4}
+VERSION=${VERSION:-6.0.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -88,6 +88,7 @@ cd build
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_INSTALL_PREFIX=/usr \
+ -DHAVE_LINUX_API=1 \
-DCMAKE_BUILD_TYPE=Release ..
make
make install/strip DESTDIR=$PKG
diff --git a/libraries/libcec/libcec.info b/libraries/libcec/libcec.info
index 991c513256..4dbcff419b 100644
--- a/libraries/libcec/libcec.info
+++ b/libraries/libcec/libcec.info
@@ -1,10 +1,10 @@
PRGNAM="libcec"
-VERSION="4.0.4"
+VERSION="6.0.2"
HOMEPAGE="http://libcec.pulse-eight.com/"
-DOWNLOAD="https://github.com/Pulse-Eight/libcec/archive/libcec-4.0.4/libcec-libcec-4.0.4.tar.gz"
-MD5SUM="68bb5aa90857fb5436795f2cfc163e0c"
+DOWNLOAD="https://github.com/Pulse-Eight/libcec/archive/libcec-6.0.2/libcec-libcec-6.0.2.tar.gz"
+MD5SUM="977e7f56279a85b52d4a2d08addb233e"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="platform"
+REQUIRES="p8-platform"
MAINTAINER="Jeremy Hansen"
EMAIL="jebrhansen+SBo@gmail.com"
diff --git a/libraries/libcpuid/libcpuid.SlackBuild b/libraries/libcpuid/libcpuid.SlackBuild
index 46e941f3fc..a86c6c982f 100644
--- a/libraries/libcpuid/libcpuid.SlackBuild
+++ b/libraries/libcpuid/libcpuid.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=libcpuid
-VERSION=${VERSION:-0.7.0}
+VERSION=${VERSION:-0.7.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/libraries/libcpuid/libcpuid.info b/libraries/libcpuid/libcpuid.info
index 68a4d130f4..6ed05d01b5 100644
--- a/libraries/libcpuid/libcpuid.info
+++ b/libraries/libcpuid/libcpuid.info
@@ -1,8 +1,8 @@
PRGNAM="libcpuid"
-VERSION="0.7.0"
+VERSION="0.7.1"
HOMEPAGE="http://libcpuid.sourceforge.net"
-DOWNLOAD="https://github.com/anrieff/libcpuid/archive/v0.7.0/libcpuid-0.7.0.tar.gz"
-MD5SUM="dffa22c68dca9aca179ef697b1c7e46f"
+DOWNLOAD="https://github.com/anrieff/libcpuid/archive/v0.7.1/libcpuid-0.7.1.tar.gz"
+MD5SUM="2659cdde29238be5b63a3784d5036846"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/libcurl-gnutls/libcurl-gnutls.SlackBuild b/libraries/libcurl-gnutls/libcurl-gnutls.SlackBuild
index 792674ae2d..4ecc14640b 100644
--- a/libraries/libcurl-gnutls/libcurl-gnutls.SlackBuild
+++ b/libraries/libcurl-gnutls/libcurl-gnutls.SlackBuild
@@ -35,7 +35,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=libcurl-gnutls
SRCNAM=curl
-VERSION=${VERSION:-8.11.0}
+VERSION=${VERSION:-8.11.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/libraries/libcurl-gnutls/libcurl-gnutls.info b/libraries/libcurl-gnutls/libcurl-gnutls.info
index bc659e9087..5d8b4b1ace 100644
--- a/libraries/libcurl-gnutls/libcurl-gnutls.info
+++ b/libraries/libcurl-gnutls/libcurl-gnutls.info
@@ -1,8 +1,8 @@
PRGNAM="libcurl-gnutls"
-VERSION="8.11.0"
+VERSION="8.11.1"
HOMEPAGE="https://curl.haxx.se"
-DOWNLOAD="https://curl.se/download/curl-8.11.0.tar.xz"
-MD5SUM="49dd886ac84ed3de693464f78f1ee926"
+DOWNLOAD="https://curl.se/download/curl-8.11.1.tar.xz"
+MD5SUM="25e65a5156ca4928060b61cb051813db"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/libdatachannel/README b/libraries/libdatachannel/README
new file mode 100644
index 0000000000..ab9d357df9
--- /dev/null
+++ b/libraries/libdatachannel/README
@@ -0,0 +1,7 @@
+libdatachannel (C/C++ WebRTC network library)
+
+libdatachannel is a standalone implementation of WebRTC Data Channels,
+WebRTC Media Transport, and WebSockets in C++17 with C bindings for
+POSIX platforms and Microsoft Windows.
+WebRTC is a W3C and IETF standard enabling real-time peer-to-peer data
+and media exchange between two devices.
diff --git a/libraries/libdatachannel/libdatachannel.SlackBuild b/libraries/libdatachannel/libdatachannel.SlackBuild
new file mode 100644
index 0000000000..e617f8ea78
--- /dev/null
+++ b/libraries/libdatachannel/libdatachannel.SlackBuild
@@ -0,0 +1,107 @@
+#!/bin/bash
+
+# Slackware build script for libdatachannel
+
+# Copyright 2025 S.S. Bolokanar, Bulgaria <bolokanar@bulgarsociety.org>
+# С. С. Болоканаръ, България
+# 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=libdatachannel
+VERSION=${VERSION:-0.22.4}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+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.gz
+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 {} \;
+
+mkdir -p build
+cd build
+ cmake \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib${LIBDIRSUFFIX} \
+ -DPREFER_SYSTEM_LIB=ON \
+ -DNO_TESTS=ON \
+ -DNO_EXAMPLES=ON \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make
+ make install/strip DESTDIR=$PKG
+cd ..
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ README* BUILDING* LICENSE \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+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/libraries/libdatachannel/libdatachannel.info b/libraries/libdatachannel/libdatachannel.info
new file mode 100644
index 0000000000..bcb3227796
--- /dev/null
+++ b/libraries/libdatachannel/libdatachannel.info
@@ -0,0 +1,10 @@
+PRGNAM="libdatachannel"
+VERSION="0.22.4"
+HOMEPAGE="https://github.com/paullouisageneau/libdatachannel"
+DOWNLOAD="https://github.com/paullouisageneau/libdatachannel/archive/v0.22.4/libdatachannel-0.22.4.tar.gz"
+MD5SUM="50003c02ba1138815afc8e26b0f2fa73"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="libjuice libsrtp2 nlohmann_json plog usrsctp"
+MAINTAINER="S. S. Bolokanar"
+EMAIL="bolokanar@bulgarsociety.org"
diff --git a/libraries/libdatachannel/slack-desc b/libraries/libdatachannel/slack-desc
new file mode 100644
index 0000000000..6180e177a1
--- /dev/null
+++ b/libraries/libdatachannel/slack-desc
@@ -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------------------------------------------------------|
+libdatachannel: libdatachannel (C/C++ WebRTC network library)
+libdatachannel:
+libdatachannel: libdatachannel is a standalone implementation of WebRTC Data Channels,
+libdatachannel: WebRTC Media Transport, and WebSockets in C++17 with C bindings for
+libdatachannel: POSIX platforms and Microsoft Windows. WebRTC is a W3C and IETF
+libdatachannel: standard enabling real-time peer-to-peer data and media exchange
+libdatachannel: between two devices.
+libdatachannel:
+libdatachannel: Homepage: https://github.com/paullouisageneau/libdatachannel
+libdatachannel:
+libdatachannel:
diff --git a/libraries/libfabric/changelog b/libraries/libfabric/changelog
deleted file mode 100644
index 8f89ed82e2..0000000000
--- a/libraries/libfabric/changelog
+++ /dev/null
@@ -1,28 +0,0 @@
-Changelog for libfabric SlackBuild Script
---------------------------------------------------------------------
-
-03/09/2022:
-
-Added to slackbuilds.org
-
-18/02/2023:
-
-libfabric slackbuild script fixed by B.Watson
-
-16/05/2023:
-
-Updated to version 1.18.0
-From this build onwards it will only build
-on x86_64 platform only.
-
-19/02/2024:
-
-Updated to version 1.20.1
-
-23/04/2024:
-
-Updated to version 1.21.0
-
-18/08/2024:
-
-Updated to version 1.22.0
diff --git a/libraries/libfabric/libfabric.SlackBuild b/libraries/libfabric/libfabric.SlackBuild
index 718764b11d..6e2c3bcef2 100644
--- a/libraries/libfabric/libfabric.SlackBuild
+++ b/libraries/libfabric/libfabric.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for libfabric
-# Copyright 2022-2024 Vijay Marcel
+# Copyright 2022-2025 Vijay Marcel
# All rights reserved.
#
@@ -23,10 +23,30 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# Changelog for libfabric SlackBuild Script
+# ---------------------------------------------------------------------------------
+
+# 03/09/2022: Added to slackbuilds.org
+
+# 18/02/2023: libfabric slackbuild script fixed by B.Watson
+
+# 16/05/2023: Updated to version 1.18.0 From this build onwards it will only build
+# on x86_64 platform only.
+
+# 19/02/2024: Updated to version 1.20.1
+
+# 23/04/2024: Updated to version 1.21.0
+
+# 18/08/2024: Updated to version 1.22.0
+
+# 18/02/2025: updated to version 2.0.0
+
+# ---------------------------------------------------------------------------------------
+
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=libfabric
-VERSION=${VERSION:-1.22.0}
+VERSION=${VERSION:-2.0.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -89,7 +109,7 @@ make
make install DESTDIR=$PKG
# Don't ship .la files:
-rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded --remove-section=.comment --remove-section=.note 2> /dev/null || true
diff --git a/libraries/libfabric/libfabric.info b/libraries/libfabric/libfabric.info
index acd61e152f..5d86095404 100644
--- a/libraries/libfabric/libfabric.info
+++ b/libraries/libfabric/libfabric.info
@@ -1,10 +1,10 @@
PRGNAM="libfabric"
-VERSION="1.22.0"
+VERSION="2.0.0"
HOMEPAGE="https://libfabric.org/"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://github.com/ofiwg/libfabric/archive/v1.22.0/libfabric-1.22.0.tar.gz"
-MD5SUM_x86_64="79c1c364ed149910ad69663355892232"
+DOWNLOAD_x86_64="https://github.com/ofiwg/libfabric/archive/v2.0.0/libfabric-2.0.0.tar.gz"
+MD5SUM_x86_64="bee7f0a4cc189db416a46fa751b8199a"
REQUIRES="numactl rdma-core valgrind"
MAINTAINER="Vijay Marcel"
EMAIL="vijaymarcel@outlook.com"
diff --git a/libraries/libgpr/README b/libraries/libgpr/README
new file mode 100644
index 0000000000..fe384901a3
--- /dev/null
+++ b/libraries/libgpr/README
@@ -0,0 +1,7 @@
+libgpr (Library to Handle GNAT project file)
+
+This is the library gprbuild used to handle GNAT project file.
+It is built separately from gprbuild to avoid the bootstrap problem.
+
+The library name is changed to libgnatgpr.so to avoid name conflict with
+the library in grpc.
diff --git a/libraries/libgpr/libgpr.SlackBuild b/libraries/libgpr/libgpr.SlackBuild
new file mode 100644
index 0000000000..df5a0c8e63
--- /dev/null
+++ b/libraries/libgpr/libgpr.SlackBuild
@@ -0,0 +1,136 @@
+#!/bin/bash
+# Slackware build script for libgpr
+# Copyright 2012-2024, Zhu Qun-Ying
+# 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=libgpr
+SRC_NAME=gprbuild
+VERSION=${VERSION:-25.0.0}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+KB_VERSION=${KB_VERSION:-25.0.0}
+GPRCONFIG_KB=gprconfig_kb-$KB_VERSION
+GPRCONFIG_KB_SRC_DIR=$GPRCONFIG_KB
+
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$(uname -m) ;;
+ esac
+fi
+
+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
+mkdir $PRGNAM-$VERSION
+tar xvf $CWD/$SRC_NAME-$VERSION.tar.gz -C $PRGNAM-$VERSION --strip-components=1
+
+cd $PRGNAM-$VERSION
+
+mkdir $GPRCONFIG_KB_SRC_DIR
+tar xvf $CWD/$GPRCONFIG_KB.tar.gz -C $GPRCONFIG_KB_SRC_DIR --strip-components=1
+
+sed -i -e 's/share\/doc/doc/g' \
+ -e 's/doc\/gprbuild\/info/info/g' gprbuild.gpr
+
+if [ "$ARCH" = "x86_64" ]; then
+ sed -i 's/\/lib\//\/lib64\//g' $GPRCONFIG_KB_SRC_DIR/db/compilers.xml
+ sed -i 's/\/lib\//\/lib64\//g' ./gpr/src/gpr-util.adb
+ sed -i 's/"lib"/"lib64"/g' ./gpr/src/gpr-util.adb
+ sed -i 's/lib\//lib64\//g' Makefile
+ # set the default lib directory to lib64
+ sed -i 's/\"lib\"/\"lib64\"/g' src/gprinstall.ads
+fi
+
+sed -i -e 's/"19940713"/"20241007"/' \
+ -e 's/"2016"/"2024"/' \
+ -e 's/"18.0w"/"25.0.0"/' \
+ -e 's/:= Gnatpro/:= FSF/' gpr/src/gpr-version.ads
+
+(cd share; ln -sfT ../$GPRCONFIG_KB_SRC_DIR/db gprconfig)
+export OS=UNIX
+
+export CC=gcc
+ADA_FLAGS=$SLKCFLAGS
+ADA_FLAGS="${ADA_FLAGS//-Wformat}"
+ADA_FLAGS="${ADA_FLAGS//-Werror=format-security}"
+
+export GPRBUILD_OPTIONS="-R -cargs $ADA_FLAGS -largs $LDFLAGS -s -gargs"
+
+# rename library name to gnatgpr, to avoid name conflict with library in grpc
+sed -i 's/"gpr"/"gnatgpr"/' gpr/gpr.gpr
+
+make BUILD=production prefix=/usr setup
+make BUILD=production GPRBUILD_OPTIONS="$GPRBUILD_OPTIONS" libgpr.build
+make BUILD=production prefix=$PKG/usr libgpr.install
+
+(cd $PKG/usr/lib$LIBDIRSUFFIX;
+ ln -sf ./gpr/relocatable/gpr/libgnatgpr.so libgnatgpr.so
+)
+# remove duplicate files
+(cd $PKG/usr/include/gpr
+ rm -rf gpr.static gpr.static-pic
+ ln -s gpr.relocatable gpr.static
+ ln -s gpr.relocatable gpr.static-pic
+)
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp README.md COPYING* $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+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/libraries/libgpr/libgpr.info b/libraries/libgpr/libgpr.info
new file mode 100644
index 0000000000..c6b51c6346
--- /dev/null
+++ b/libraries/libgpr/libgpr.info
@@ -0,0 +1,12 @@
+PRGNAM="libgpr"
+VERSION="25.0.0"
+HOMEPAGE="https://github.com/adacore/gprbuild"
+DOWNLOAD="https://github.com/AdaCore/gprbuild/archive/v25.0.0/gprbuild-25.0.0.tar.gz \
+ https://github.com/AdaCore/gprconfig_kb/archive/v25.0.0/gprconfig_kb-25.0.0.tar.gz"
+MD5SUM="d53e0d7ad721874d0ae4756d2d6b4fae \
+ 34481c051de245954ada5fa1d39eb32b"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="gprbuild xmlada"
+MAINTAINER="Zhu Qun-Ying"
+EMAIL="zhu.qunying@gmail.com"
diff --git a/libraries/libgpr/slack-desc b/libraries/libgpr/slack-desc
new file mode 100644
index 0000000000..ea93e193d1
--- /dev/null
+++ b/libraries/libgpr/slack-desc
@@ -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------------------------------------------------------|
+libgpr: libgpr (Library to Handle GNAT project file)
+libgpr:
+libgpr: This is the library gprbuild used to handle GNAT project file.
+libgpr:
+libgpr:
+libgpr:
+libgpr:
+libgpr:
+libgpr:
+libgpr:
+libgpr:
diff --git a/libraries/libheif/doinst.sh b/libraries/libheif/doinst.sh
index aa30ae34d7..0eca95655b 100644
--- a/libraries/libheif/doinst.sh
+++ b/libraries/libheif/doinst.sh
@@ -1,3 +1,8 @@
if [ -x /usr/bin/update-mime-database ]; then
/usr/bin/update-mime-database usr/share/mime >/dev/null 2>&1
fi
+
+if [ -x /usr/bin/update-gdk-pixbuf-loaders ]; then
+ /usr/bin/update-gdk-pixbuf-loaders >/dev/null 2>&1
+fi
+
diff --git a/libraries/libheif/libheif.info b/libraries/libheif/libheif.info
index 8cdecd3c4d..2b27315502 100644
--- a/libraries/libheif/libheif.info
+++ b/libraries/libheif/libheif.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="libde265 x265 aom rav1e kvazaar dav1d svt-av1"
MAINTAINER="Edward W. Koenig"
-EMAIL="kingbeowulf@gmail.com"
+EMAIL="kingbeowulf@linuxgalaxy.org"
diff --git a/libraries/libjcat/libjcat.SlackBuild b/libraries/libjcat/libjcat.SlackBuild
index 9783589bc1..da03854dfe 100644
--- a/libraries/libjcat/libjcat.SlackBuild
+++ b/libraries/libjcat/libjcat.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for libjcat
-# Copyright 2022-2024 Andrew Clemons, Tokyo Japan
+# Copyright 2022-2025 Andrew Clemons, Tokyo Japan
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=libjcat
-VERSION=${VERSION:-0.2.2}
+VERSION=${VERSION:-0.2.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/libraries/libjcat/libjcat.info b/libraries/libjcat/libjcat.info
index 6281e2face..6257937c45 100644
--- a/libraries/libjcat/libjcat.info
+++ b/libraries/libjcat/libjcat.info
@@ -1,8 +1,8 @@
PRGNAM="libjcat"
-VERSION="0.2.2"
+VERSION="0.2.3"
HOMEPAGE="https://github.com/hughsie/libjcat"
-DOWNLOAD="https://github.com/hughsie/libjcat/archive/0.2.2/libjcat-0.2.2.tar.gz"
-MD5SUM="97af8a90148d43cad952e40c01bcb48a"
+DOWNLOAD="https://github.com/hughsie/libjcat/archive/0.2.3/libjcat-0.2.3.tar.gz"
+MD5SUM="0c566a4a9421e42143e90a3e575353f4"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/libjuice/README b/libraries/libjuice/README
new file mode 100644
index 0000000000..e4edddceb0
--- /dev/null
+++ b/libraries/libjuice/README
@@ -0,0 +1,4 @@
+libjuice (UDP Interactive Connectivity Establishment library)
+
+Libjuice allows to open bidirectionnal User Datagram Protocol (UDP)
+streams with Network Address Translator (NAT) traversal.
diff --git a/libraries/libjuice/libjuice.SlackBuild b/libraries/libjuice/libjuice.SlackBuild
new file mode 100644
index 0000000000..2b392681fc
--- /dev/null
+++ b/libraries/libjuice/libjuice.SlackBuild
@@ -0,0 +1,105 @@
+#!/bin/bash
+
+# Slackware build script for libjuice
+
+# Copyright 2025 S.S. Bolokanar, Bulgaria <bolokanar@bulgarsociety.org>
+# С. С. Болоканаръ, България
+# 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=libjuice
+VERSION=${VERSION:-1.5.8}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+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.gz || tar xvf $CWD/v$VERSION.tar.gz
+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 {} \;
+
+mkdir -p build
+cd build
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib${LIBDIRSUFFIX} \
+ -DNO_TESTS=ON \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make
+ make install/strip DESTDIR=$PKG
+cd ..
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ README* LICENSE \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+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/libraries/libjuice/libjuice.info b/libraries/libjuice/libjuice.info
new file mode 100644
index 0000000000..9c26020d7d
--- /dev/null
+++ b/libraries/libjuice/libjuice.info
@@ -0,0 +1,10 @@
+PRGNAM="libjuice"
+VERSION="1.5.8"
+HOMEPAGE="https://github.com/paullouisageneau/libjuice"
+DOWNLOAD="https://github.com/paullouisageneau/libjuice/archive/v1.5.8/libjuice-1.5.8.tar.gz"
+MD5SUM="ca844f69a64b57c06042355de153949d"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="S. S. Bolokanar"
+EMAIL="bolokanar@bulgarsociety.org"
diff --git a/libraries/libjuice/slack-desc b/libraries/libjuice/slack-desc
new file mode 100644
index 0000000000..fca91afa90
--- /dev/null
+++ b/libraries/libjuice/slack-desc
@@ -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------------------------------------------------------|
+libjuice: libjuice (UDP Interactive Connectivity Establishment)
+libjuice:
+libjuice: libjuice allows to open bidirectionnal User Datagram Protocol (UDP)
+libjuice: streams with Network Address Translator (NAT) traversal.
+libjuice:
+libjuice: homepage: https://github.com/paullouisageneau/libjuice
+libjuice:
+libjuice:
+libjuice:
+libjuice:
+libjuice:
diff --git a/libraries/libjwt/libjwt.SlackBuild b/libraries/libjwt/libjwt.SlackBuild
index 7253bee745..bc53593813 100644
--- a/libraries/libjwt/libjwt.SlackBuild
+++ b/libraries/libjwt/libjwt.SlackBuild
@@ -23,7 +23,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=libjwt
-VERSION=${VERSION:-1.17.2}
+VERSION=${VERSION:-2.1.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/libraries/libjwt/libjwt.info b/libraries/libjwt/libjwt.info
index 5bd2ad5a61..91d71cb789 100644
--- a/libraries/libjwt/libjwt.info
+++ b/libraries/libjwt/libjwt.info
@@ -1,8 +1,8 @@
PRGNAM="libjwt"
-VERSION="1.17.2"
+VERSION="2.1.1"
HOMEPAGE="https://github.com/benmcollins/libjwt"
-DOWNLOAD="https://github.com/benmcollins/libjwt/archive/v1.17.2/libjwt-1.17.2.tar.gz"
-MD5SUM="3e34bb5b24f3a2f3a26c15a52ac9bc3c"
+DOWNLOAD="https://github.com/benmcollins/libjwt/archive/v2.1.1/libjwt-2.1.1.tar.gz"
+MD5SUM="912c67a72327545c7477f7a871d86c07"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/libjxl/libjxl.SlackBuild b/libraries/libjxl/libjxl.SlackBuild
index 34a3cb5639..09af45e8b3 100644
--- a/libraries/libjxl/libjxl.SlackBuild
+++ b/libraries/libjxl/libjxl.SlackBuild
@@ -46,12 +46,13 @@
# 15/09/2024: Updated to version 0.11.0
+# 09/12/2024: updated to version 0.11.1
#---------------------------------------------------------------------------------------------#
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=libjxl
-VERSION=${VERSION:-0.11.0}
+VERSION=${VERSION:-0.11.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -170,4 +171,4 @@ 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
+/sbin/makepkg -l y -c n --remove-rpaths --remove-tmp-rpaths $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/libraries/libjxl/libjxl.info b/libraries/libjxl/libjxl.info
index 1d2fd192e4..a407ce59f7 100644
--- a/libraries/libjxl/libjxl.info
+++ b/libraries/libjxl/libjxl.info
@@ -1,8 +1,8 @@
PRGNAM="libjxl"
-VERSION="0.11.0"
+VERSION="0.11.1"
HOMEPAGE="https://jpeg.org/jpegxl/"
-DOWNLOAD="https://github.com/libjxl/libjxl/archive/v0.11.0/libjxl-0.11.0.tar.gz https://github.com/libjpeg-turbo/libjpeg-turbo/archive/3.0.2/libjpeg-turbo-3.0.2.tar.gz"
-MD5SUM="2b8433176a334480d21af02fd8bdc6fe \
+DOWNLOAD="https://github.com/libjxl/libjxl/archive/v0.11.1/libjxl-0.11.1.tar.gz https://github.com/libjpeg-turbo/libjpeg-turbo/archive/3.0.2/libjpeg-turbo-3.0.2.tar.gz"
+MD5SUM="8f26fc954c2d9cb377544a5f029182ef \
94756db95bc2477f7f7dad1c2590b51f"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
diff --git a/libraries/libkiwix/README b/libraries/libkiwix/README
new file mode 100644
index 0000000000..77f1935133
--- /dev/null
+++ b/libraries/libkiwix/README
@@ -0,0 +1,8 @@
+libkiwix (Software library to read and write ZIM files)
+
+Kiwix is an offline reader for web content archived in ZIM format. It
+is particularly tailored towards Wikipedia and other wikis.
+
+The libkiwix provides the Kiwix software suite core. It contains the
+code shared by all Kiwix ports (Windows, GNU/Linux, macOS, Android,
+iOS, ...).
diff --git a/libraries/libkiwix/libkiwix.SlackBuild b/libraries/libkiwix/libkiwix.SlackBuild
new file mode 100644
index 0000000000..c25dc15251
--- /dev/null
+++ b/libraries/libkiwix/libkiwix.SlackBuild
@@ -0,0 +1,115 @@
+#!/bin/bash
+
+# Slackware build script for libkiwix
+
+# Copyright 2025 Ruoh-Shoei LIN
+# 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=libkiwix
+VERSION=${VERSION:-14.0.0}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+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"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -eu
+
+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 {} \;
+
+mkdir build
+cd build
+ CFLAGS="$SLKCFLAGS" \
+ CXXFLAGS="$SLKCFLAGS" \
+ meson .. \
+ --buildtype=release \
+ --infodir=/usr/info \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --prefix=/usr \
+ --auto-features=enabled \
+ --wrap-mode=nodownload \
+ --sysconfdir=/etc \
+ -Dstrip=true
+ "${NINJA:=ninja}"
+ DESTDIR=$PKG $NINJA install
+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 \
+ AUTHORS COPYING ChangeLog README.md \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+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/libraries/libkiwix/libkiwix.info b/libraries/libkiwix/libkiwix.info
new file mode 100644
index 0000000000..08223803e8
--- /dev/null
+++ b/libraries/libkiwix/libkiwix.info
@@ -0,0 +1,10 @@
+PRGNAM="libkiwix"
+VERSION="14.0.0"
+HOMEPAGE="https://github.com/kiwix/libkiwix"
+DOWNLOAD="https://download.kiwix.org/release/libkiwix/libkiwix-14.0.0.tar.xz"
+MD5SUM="52816dd8660a3b437a6fae657b2c4dd1"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="libzim libmicrohttpd pugixml Mustache"
+MAINTAINER="Ruoh-Shoei LIN"
+EMAIL="lin.ruohshoei+sbo@gmail.com"
diff --git a/libraries/libkiwix/slack-desc b/libraries/libkiwix/slack-desc
new file mode 100644
index 0000000000..48a6fa300d
--- /dev/null
+++ b/libraries/libkiwix/slack-desc
@@ -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------------------------------------------------------|
+libkiwix: libkiwix (Software library to read and write ZIM files)
+libkiwix:
+libkiwix: Kiwix is an offline reader for web content archived in ZIM format. It
+libkiwix: is particularly tailored towards Wikipedia and other wikis.
+libkiwix:
+libkiwix: Libkiwix provides the Kiwix software suite core. It contains the code
+libkiwix: shared by all Kiwix ports.
+libkiwix:
+libkiwix:
+libkiwix:
+libkiwix:
diff --git a/libraries/liblogging/liblogging.SlackBuild b/libraries/liblogging/liblogging.SlackBuild
index 802d57fc1f..2e50683cad 100644
--- a/libraries/liblogging/liblogging.SlackBuild
+++ b/libraries/liblogging/liblogging.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for liblogging
-# Copyright (c) 2015, Christophe Trussardi, Paris, France
+# Copyright (c) 2025, Christophe Trussardi, Paris, France
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -24,8 +24,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=liblogging
-VERSION=${VERSION:-1.0.6}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-1.0.7}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -80,7 +80,7 @@ find -L . \
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
-./configure \
+./autogen.sh \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--sysconfdir=/etc \
diff --git a/libraries/liblogging/liblogging.info b/libraries/liblogging/liblogging.info
index 1dbc4a7430..d9bb943b58 100644
--- a/libraries/liblogging/liblogging.info
+++ b/libraries/liblogging/liblogging.info
@@ -1,8 +1,8 @@
PRGNAM="liblogging"
-VERSION="1.0.6"
-HOMEPAGE="http://www.liblogging.org/"
-DOWNLOAD="http://download.rsyslog.com/liblogging/liblogging-1.0.6.tar.gz"
-MD5SUM="f215c7e7ac6cfd1f5dabdba08c522b29"
+VERSION="1.0.7"
+HOMEPAGE="https://github.com/rsyslog/liblogging"
+DOWNLOAD="https://github.com/rsyslog/liblogging/archive/v1.0.7/liblogging-1.0.7.tar.gz"
+MD5SUM="8819e38705b834e2da6655dc6f7ae306"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/liblogging/slack-desc b/libraries/liblogging/slack-desc
index 1946fce09e..75606537ba 100644
--- a/libraries/liblogging/slack-desc
+++ b/libraries/liblogging/slack-desc
@@ -15,5 +15,5 @@ liblogging: Rainer Gerhards.
liblogging:
liblogging:
liblogging:
-liblogging: Homepage: http://www.liblogging.org/
+liblogging: Homepage: https://github.com/rsyslog/liblogging
liblogging:
diff --git a/libraries/libmediainfo/libmediainfo.SlackBuild b/libraries/libmediainfo/libmediainfo.SlackBuild
index c834a3b740..3b0b5edd5a 100644
--- a/libraries/libmediainfo/libmediainfo.SlackBuild
+++ b/libraries/libmediainfo/libmediainfo.SlackBuild
@@ -4,7 +4,7 @@
# Copyright 2010-2012 Binh Nguyen <binhvng@gmail.com>
# Copyright 2012-2017 Ryan P.C. McQuen | Everett, WA | ryanpcmcquen@member.fsf.org
-# Copyright 2017-2024 Jeremy Hansen <jebrhansen+SBo -at- gmail.com>
+# Copyright 2017-2025 Jeremy Hansen <jebrhansen+SBo -at- gmail.com>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -27,7 +27,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=libmediainfo
-VERSION=${VERSION:-24.11}
+VERSION=${VERSION:-25.03}
SRCNAM=MediaInfoLib
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
diff --git a/libraries/libmediainfo/libmediainfo.info b/libraries/libmediainfo/libmediainfo.info
index 727e8e536b..2d5de3330c 100644
--- a/libraries/libmediainfo/libmediainfo.info
+++ b/libraries/libmediainfo/libmediainfo.info
@@ -1,8 +1,8 @@
PRGNAM="libmediainfo"
-VERSION="24.11"
+VERSION="25.03"
HOMEPAGE="https://mediaarea.net/MediaInfo"
-DOWNLOAD="https://github.com/MediaArea/MediaInfoLib/archive/v24.11/MediaInfoLib-24.11.tar.gz"
-MD5SUM="2a71fab23a787a3b306abc6f9d002e13"
+DOWNLOAD="https://github.com/MediaArea/MediaInfoLib/archive/v25.03/MediaInfoLib-25.03.tar.gz"
+MD5SUM="a64eb56df02db2941298d7af690eb7a9"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="libzen"
diff --git a/libraries/libmirage/libmirage.SlackBuild b/libraries/libmirage/libmirage.SlackBuild
index d5061ca3fd..d896e57e54 100644
--- a/libraries/libmirage/libmirage.SlackBuild
+++ b/libraries/libmirage/libmirage.SlackBuild
@@ -5,6 +5,7 @@
# Copyright 2008 Niklas "Nille" Åkerström
# Copyright 2010-2013 Niels Horn, Rio de Janeiro, RJ, Brazil <niels.horn@gmail.com>
# Copyright 2018-2024 Isaac Yu <isaacyu@protonmail.com>
+# Copyright 2025 S. S. Bolokanar <bolokanar@bulgarsociety.org>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
diff --git a/libraries/libmirage/libmirage.info b/libraries/libmirage/libmirage.info
index 0df21b7293..e956b8e837 100644
--- a/libraries/libmirage/libmirage.info
+++ b/libraries/libmirage/libmirage.info
@@ -6,5 +6,5 @@ MD5SUM="700a88ee216cd256f2cad144d2a1ef05"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="Isaac Yu"
-EMAIL="isaacyu@protonmail.com"
+MAINTAINER="S. S. Bolokanar"
+EMAIL="bolokanar@bulgarsociety.org"
diff --git a/libraries/libmobi/README b/libraries/libmobi/README
new file mode 100644
index 0000000000..601a663c03
--- /dev/null
+++ b/libraries/libmobi/README
@@ -0,0 +1,7 @@
+libmobi (Library for Mobipocket/Kindle ebook formats)
+
+C library for handling Mobipocket/Kindle (MOBI) ebook format documents.
+Supports PalmDOC (pdb), Mobipocket (prc, mobi), newer MOBI files
+including KF8 format (azw, azw3), and replica print files (azw4).
+Includes features such as reading/parsing documents, reacreating source
+files, editing metadata, handling encrypted documents, and much more.
diff --git a/libraries/libmobi/libmobi.SlackBuild b/libraries/libmobi/libmobi.SlackBuild
new file mode 100644
index 0000000000..f33410dd92
--- /dev/null
+++ b/libraries/libmobi/libmobi.SlackBuild
@@ -0,0 +1,113 @@
+#!/bin/bash
+
+# Slackware build script for libmobi
+
+# Copyright 2024 Samuel Young, MO, USA
+# 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=libmobi
+VERSION=${VERSION:-0.12}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+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"
+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.gz
+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 {} \;
+
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --docdir=/usr/doc/$PRGNAM-$VERSION \
+ --disable-static \
+ --build=$ARCH-slackware-linux
+
+make
+make test
+make install DESTDIR=$PKG
+
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+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 \
+ COPYING ChangeLog README.md \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+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/libraries/libmobi/libmobi.info b/libraries/libmobi/libmobi.info
new file mode 100644
index 0000000000..8da3ba5e6d
--- /dev/null
+++ b/libraries/libmobi/libmobi.info
@@ -0,0 +1,10 @@
+PRGNAM="libmobi"
+VERSION="0.12"
+HOMEPAGE="https://www.fabiszewski.net/libmobi/"
+DOWNLOAD="https://github.com/bfabiszewski/libmobi/releases/download/v0.12/libmobi-0.12.tar.gz"
+MD5SUM="f55aa8874bb49555814ea9976f7fdab4"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Samuel Young"
+EMAIL="samyoung12788@gmail.com"
diff --git a/libraries/libmobi/slack-desc b/libraries/libmobi/slack-desc
new file mode 100644
index 0000000000..897e165a1c
--- /dev/null
+++ b/libraries/libmobi/slack-desc
@@ -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------------------------------------------------------|
+libmobi: libmobi (Library for Mobipocket/Kindle ebook formats)
+libmobi:
+libmobi: C library for handling Mobipocket/Kindle (MOBI) ebook format
+libmobi: documents. Supports PalmDOC (pdb), Mobipocket (prc, mobi), newer MOBI
+libmobi: files including KF8 format (azw, azw3), and replica print files
+libmobi: (azw4). Includes features such as reading/parsing documents,
+libmobi: reacreating source files, editing metadata, handling encrypted
+libmobi: documents, and much more.
+libmobi:
+libmobi: Homepage: https://www.fabiszewski.net/libmobi/
+libmobi:
diff --git a/libraries/libmp4v2/libmp4v2-2.0.0-unsigned-int-cast.patch b/libraries/libmp4v2/libmp4v2-2.0.0-unsigned-int-cast.patch
deleted file mode 100644
index 25830bc596..0000000000
--- a/libraries/libmp4v2/libmp4v2-2.0.0-unsigned-int-cast.patch
+++ /dev/null
@@ -1,96 +0,0 @@
-From a5ca35b044bbf13c0b16f0066bf24646604bb218 Mon Sep 17 00:00:00 2001
-From: "Jason A. Donenfeld" <Jason@zx2c4.com>
-Date: Thu, 6 Aug 2020 15:22:04 +0200
-Subject: [PATCH] Static cast to unsigned int for cases
-
-Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
----
- libutil/Utility.cpp | 2 +-
- util/mp4art.cpp | 2 +-
- util/mp4chaps.cpp | 2 +-
- util/mp4file.cpp | 2 +-
- util/mp4subtitle.cpp | 2 +-
- util/mp4track.cpp | 2 +-
- 6 files changed, 6 insertions(+), 6 deletions(-)
-
-diff --git a/libutil/Utility.cpp b/libutil/Utility.cpp
-index 76cdd12..d6739d4 100644
---- a/libutil/Utility.cpp
-+++ b/libutil/Utility.cpp
-@@ -493,7 +493,7 @@ Utility::process_impl()
- if( codes.find( code ) == codes.end() )
- continue;
-
-- switch( code ) {
-+ switch( static_cast<unsigned int>( code ) ) {
- case 'z':
- _optimize = true;
- break;
-diff --git a/util/mp4art.cpp b/util/mp4art.cpp
-index add935e..6e7f531 100644
---- a/util/mp4art.cpp
-+++ b/util/mp4art.cpp
-@@ -376,7 +376,7 @@ ArtUtility::utility_option( int code, bool& handled )
- {
- handled = true;
-
-- switch( code ) {
-+ switch( static_cast<unsigned int> ( code ) ) {
- case LC_ART_ANY:
- _artFilter = numeric_limits<uint32_t>::max();
- break;
-diff --git a/util/mp4chaps.cpp b/util/mp4chaps.cpp
-index 98400f8..ccc8b70 100644
---- a/util/mp4chaps.cpp
-+++ b/util/mp4chaps.cpp
-@@ -632,7 +632,7 @@ ChapterUtility::utility_option( int code, bool& handled )
- {
- handled = true;
-
-- switch( code ) {
-+ switch( static_cast<unsigned int> ( code ) ) {
- case 'A':
- case LC_CHPT_ANY:
- _ChapterType = MP4ChapterTypeAny;
-diff --git a/util/mp4file.cpp b/util/mp4file.cpp
-index c27844b..b127cd1 100644
---- a/util/mp4file.cpp
-+++ b/util/mp4file.cpp
-@@ -189,7 +189,7 @@ FileUtility::utility_option( int code, bool& handled )
- {
- handled = true;
-
-- switch( code ) {
-+ switch( static_cast<unsigned int>( code ) ) {
- case LC_LIST:
- _action = &FileUtility::actionList;
- break;
-diff --git a/util/mp4subtitle.cpp b/util/mp4subtitle.cpp
-index 7462153..19d977d 100644
---- a/util/mp4subtitle.cpp
-+++ b/util/mp4subtitle.cpp
-@@ -164,7 +164,7 @@ SubtitleUtility::utility_option( int code, bool& handled )
- {
- handled = true;
-
-- switch( code ) {
-+ switch( static_cast<unsigned int>( code ) ) {
- case LC_LIST:
- _action = &SubtitleUtility::actionList;
- break;
-diff --git a/util/mp4track.cpp b/util/mp4track.cpp
-index d550506..cd63d7e 100644
---- a/util/mp4track.cpp
-+++ b/util/mp4track.cpp
-@@ -788,7 +788,7 @@ TrackUtility::utility_option( int code, bool& handled )
- {
- handled = true;
-
-- switch( code ) {
-+ switch( static_cast<unsigned int>( code ) ) {
- case LC_TRACK_WILDCARD:
- _trackMode = TM_WILDCARD;
- break;
---
-2.28.0
-
diff --git a/libraries/libmp4v2/libmp4v2.SlackBuild b/libraries/libmp4v2/libmp4v2.SlackBuild
index f1606af79e..bf8f7fe1b4 100644
--- a/libraries/libmp4v2/libmp4v2.SlackBuild
+++ b/libraries/libmp4v2/libmp4v2.SlackBuild
@@ -3,7 +3,7 @@
# Slackware build script for libmp4v2
# Copyright (c) 2007 Alex Lysenka <me@alkos333.net>
-# Copyright (c) 2020 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
+# Copyright (c) 2020-2025 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -37,8 +37,9 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=libmp4v2
-VERSION=${VERSION:-20191108_9084868}
-BUILD=${BUILD:-3}
+SRCNAM=mp4v2
+VERSION=${VERSION:-2.1.3}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -50,9 +51,6 @@ if [ -z "$ARCH" ]; then
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
@@ -81,9 +79,9 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.?z*
-cd $PRGNAM-$VERSION
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z*
+cd $SRCNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -91,11 +89,6 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-# Fix gcc 'narrowing errors":
-patch -p1 < "$CWD/libmp4v2_gcc_narrowing.patch" || exit 1
-
-autoreconf -vif
-
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
diff --git a/libraries/libmp4v2/libmp4v2.info b/libraries/libmp4v2/libmp4v2.info
index f1c2570ddc..a95c989a51 100644
--- a/libraries/libmp4v2/libmp4v2.info
+++ b/libraries/libmp4v2/libmp4v2.info
@@ -1,8 +1,8 @@
PRGNAM="libmp4v2"
-VERSION="20191108_9084868"
-HOMEPAGE="https://github.com/sergiomb2/libmp4v2"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/libmp4v2-20191108_9084868.tar.xz"
-MD5SUM="508508c4d8c44bdedd4d81329c4f1f56"
+VERSION="2.1.3"
+HOMEPAGE="https://github.com/enzo1982/mp4v2/"
+DOWNLOAD="https://github.com/enzo1982/mp4v2/releases/download/v2.1.3/mp4v2-2.1.3.tar.bz2"
+MD5SUM="a54031f6071bd397ffcc7ec817cfbcdd"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/libmp4v2/libmp4v2_gcc_narrowing.patch b/libraries/libmp4v2/libmp4v2_gcc_narrowing.patch
deleted file mode 100644
index 7c3bf692d3..0000000000
--- a/libraries/libmp4v2/libmp4v2_gcc_narrowing.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-#
-# libmp4v2_narrowing.patch
-#
-# Reduce LC_NONE by a power of 2 to prevent LongCode promotion to unsigned int
-# causing "narrowing" errors in recent GCC. The value is still sufficiently high
-# as not to clash with any character values.
-#
-
-diff -Nurp libmp4v2-20191108_9084868.orig/libutil/Utility.h libmp4v2-20191108_9084868/libutil/Utility.h
---- libmp4v2-20191108_9084868.orig/libutil/Utility.h 2019-11-08 02:03:40.000000000 +0000
-+++ libmp4v2-20191108_9084868/libutil/Utility.h 2021-08-19 23:40:34.724030480 +0100
-@@ -52,7 +52,7 @@ class MP4V2_EXPORT Utility
- {
- protected:
- enum LongCode {
-- LC_NONE = 0xf0000000, // safe (cannot conflict with char values)
-+ LC_NONE = 0x0f000000, // safe (cannot conflict with char values)
- LC_DEBUG,
- LC_VERBOSE,
- LC_HELP,
diff --git a/libraries/libmp4v2/slack-desc b/libraries/libmp4v2/slack-desc
index 187e3c6247..84fbb6c502 100644
--- a/libraries/libmp4v2/slack-desc
+++ b/libraries/libmp4v2/slack-desc
@@ -13,7 +13,7 @@ libmp4v2: files. This is a standalone version of mp4v2 library. It is
libmp4v2: derived from the mpeg4ip source tree, but for licensing reasons
libmp4v2: it has been adapted to this form.
libmp4v2:
-libmp4v2: Homepage: https://github.com/sergiomb2/libmp4v2
+libmp4v2: Homepage: https://github.com/enzo1982/mp4v2/
libmp4v2:
libmp4v2:
libmp4v2:
diff --git a/libraries/libopenshot-audio/libopenshot-audio.SlackBuild b/libraries/libopenshot-audio/libopenshot-audio.SlackBuild
index a3552e99e3..a42ac70c6c 100644
--- a/libraries/libopenshot-audio/libopenshot-audio.SlackBuild
+++ b/libraries/libopenshot-audio/libopenshot-audio.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for libopenshot-audio
-# Copyright 2016-2024 Christoph Willing Sydney, Australia
+# Copyright 2016-2025 Christoph Willing Sydney, Australia
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=libopenshot-audio
-VERSION=${VERSION:-0.3.3}
+VERSION=${VERSION:-0.4.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/libraries/libopenshot-audio/libopenshot-audio.info b/libraries/libopenshot-audio/libopenshot-audio.info
index f65b694cf5..d7d4777752 100644
--- a/libraries/libopenshot-audio/libopenshot-audio.info
+++ b/libraries/libopenshot-audio/libopenshot-audio.info
@@ -1,8 +1,8 @@
PRGNAM="libopenshot-audio"
-VERSION="0.3.3"
+VERSION="0.4.0"
HOMEPAGE="https://github.com/OpenShot/libopenshot-audio"
-DOWNLOAD="https://github.com/OpenShot/libopenshot-audio/archive/v0.3.3/libopenshot-audio-0.3.3.tar.gz"
-MD5SUM="09cb1afa4f6243f10d23dd9789d6a852"
+DOWNLOAD="https://github.com/OpenShot/libopenshot-audio/archive/v0.4.0/libopenshot-audio-0.4.0.tar.gz"
+MD5SUM="e484b6e9a4e6a790eabcbd572ad817ea"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/libopenshot/libopenshot.SlackBuild b/libraries/libopenshot/libopenshot.SlackBuild
index e73bd5f47a..feb074d8dc 100644
--- a/libraries/libopenshot/libopenshot.SlackBuild
+++ b/libraries/libopenshot/libopenshot.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for libopenshot
-# Copyright 2016-2024 Christoph Willing, Sydney Australia
+# Copyright 2016-2025 Christoph Willing, Sydney Australia
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=libopenshot
-VERSION=${VERSION:-0.3.3}
+VERSION=${VERSION:-0.4.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/libraries/libopenshot/libopenshot.info b/libraries/libopenshot/libopenshot.info
index e023519f89..cec06002f5 100644
--- a/libraries/libopenshot/libopenshot.info
+++ b/libraries/libopenshot/libopenshot.info
@@ -1,8 +1,8 @@
PRGNAM="libopenshot"
-VERSION="0.3.3"
+VERSION="0.4.0"
HOMEPAGE="https://github.com/OpenShot/libopenshot"
-DOWNLOAD="https://github.com/OpenShot/libopenshot/archive/v0.3.3/libopenshot-0.3.3.tar.gz"
-MD5SUM="3fc1f185050bf01b73948944b8e13bc7"
+DOWNLOAD="https://github.com/OpenShot/libopenshot/archive/v0.4.0/libopenshot-0.4.0.tar.gz"
+MD5SUM="b00d54e3567fa12833b230c1dd67eb69"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="cppzmq protobuf3 unittest-cpp libopenshot-audio"
diff --git a/libraries/libosinfo/libosinfo.SlackBuild b/libraries/libosinfo/libosinfo.SlackBuild
index 6617cc6a61..bf22358b53 100644
--- a/libraries/libosinfo/libosinfo.SlackBuild
+++ b/libraries/libosinfo/libosinfo.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for libosinfo
-# Copyright 2014-2023 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
+# Copyright 2014-2025 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=libosinfo
-VERSION=${VERSION:-1.10.0}
+VERSION=${VERSION:-1.12.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -38,9 +38,6 @@ if [ -z "$ARCH" ]; then
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
diff --git a/libraries/libosinfo/libosinfo.info b/libraries/libosinfo/libosinfo.info
index 95389ddec1..b9d5c5fa90 100644
--- a/libraries/libosinfo/libosinfo.info
+++ b/libraries/libosinfo/libosinfo.info
@@ -1,8 +1,8 @@
PRGNAM="libosinfo"
-VERSION="1.10.0"
+VERSION="1.12.0"
HOMEPAGE="http://libosinfo.org"
-DOWNLOAD="https://releases.pagure.org/libosinfo/libosinfo-1.10.0.tar.xz"
-MD5SUM="9c2059648bf6f5610ba838a1fb1a84ad"
+DOWNLOAD="https://releases.pagure.org/libosinfo/libosinfo-1.12.0.tar.xz"
+MD5SUM="b074a8ccac5c8aa2fa30489acaca7cc5"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="osinfo-db"
diff --git a/libraries/libotr/0006-include-socket.h.patch b/libraries/libotr/0006-include-socket.h.patch
new file mode 100644
index 0000000000..1806458d4b
--- /dev/null
+++ b/libraries/libotr/0006-include-socket.h.patch
@@ -0,0 +1,16 @@
+From: Rhonda D'Vine <rhonda@debian.org>
+Date: Thu, 12 May 2022 08:57:07 +0200
+Bug-Debian: https://bugs.debian.org/1009420
+Forwarded: no
+Subject: test suite fails to build without the include
+
+--- a/tests/regression/client/client.c
++++ b/tests/regression/client/client.c
+@@ -29,6 +29,7 @@
+ #include <sys/types.h>
+ #include <sys/un.h>
+ #include <unistd.h>
++#include <sys/socket.h>
+
+ #include <context.h>
+ #include <privkey.h>
diff --git a/libraries/libotr/libotr.SlackBuild b/libraries/libotr/libotr.SlackBuild
index f59f0d0015..048f6dc5e8 100644
--- a/libraries/libotr/libotr.SlackBuild
+++ b/libraries/libotr/libotr.SlackBuild
@@ -26,7 +26,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=libotr
VERSION=${VERSION:-4.1.1}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -90,6 +90,7 @@ CXXFLAGS="$SLKCFLAGS" \
--enable-static=no \
--build=$ARCH-slackware-linux
+patch -p1 0<${CWD}/0006-include-socket.h.patch
make
make install DESTDIR=$PKG
diff --git a/libraries/libpaper/libpaper.SlackBuild b/libraries/libpaper/libpaper.SlackBuild
index 75de6b67d3..85a89d9e66 100644
--- a/libraries/libpaper/libpaper.SlackBuild
+++ b/libraries/libpaper/libpaper.SlackBuild
@@ -5,15 +5,15 @@
# Written by Pablo Santamaria (pablosantamaria@gmail.com)
# Note: history shows first and last three version changes.
# Update by Tim Dickson (dickson.tim@googlemail.com) for 1.1.24+nmu4 version
-# 16/10/2023 updated for 2.1.2
# 31/01/2024 updated to 2.1.3 tidy up this history to show just first and last 3 changes
# 14/03/2024 updated to 2.2.5
+# 24/01/2025 updated to 2.2.6
# note: we use release source, as archive source misses out submodules.
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=libpaper
-VERSION=${VERSION:-2.2.5}
+VERSION=${VERSION:-2.2.6}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/libraries/libpaper/libpaper.info b/libraries/libpaper/libpaper.info
index b36fabcf4e..332cac5398 100644
--- a/libraries/libpaper/libpaper.info
+++ b/libraries/libpaper/libpaper.info
@@ -1,8 +1,8 @@
PRGNAM="libpaper"
-VERSION="2.2.5"
+VERSION="2.2.6"
HOMEPAGE="https://github.com/rrthomas/libpaper"
-DOWNLOAD="https://github.com/rrthomas/libpaper/releases/download/v2.2.5/libpaper-2.2.5.tar.gz"
-MD5SUM="4b914c3ca6d8277260fce418e12bae6b"
+DOWNLOAD="https://github.com/rrthomas/libpaper/releases/download/v2.2.6/libpaper-2.2.6.tar.gz"
+MD5SUM="794552e5e5b9796c15bc222fefd9e1ff"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/libportal/README b/libraries/libportal/README
index dd82fd2632..543f49c0dd 100644
--- a/libraries/libportal/README
+++ b/libraries/libportal/README
@@ -1,3 +1,8 @@
libportal provides GIO-style async APIs for most Flatpak portals.
To build the API docs the optional dependency gi-docgen is required.
+qt6 is another optional dependency.
+
+NOTE:
+0.8.1 it's the last version compatible iwht Slackware 15.0, as newer
+ones will need a newer glib2 than this platform provides.
diff --git a/libraries/libportal/libportal.SlackBuild b/libraries/libportal/libportal.SlackBuild
index 0310533eb3..311f981efa 100644
--- a/libraries/libportal/libportal.SlackBuild
+++ b/libraries/libportal/libportal.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for libportal
-# Copyright 2020-2023 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
+# Copyright 2020-2025 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=libportal
-VERSION=${VERSION:-0.6}
+VERSION=${VERSION:-0.8.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -38,9 +38,6 @@ if [ -z "$ARCH" ]; then
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
@@ -83,8 +80,8 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-patch -p1 < $CWD/0.6-backports.patch
-sed -i "s|get_option('datadir') / 'doc'|get_option('prefix') / 'doc'|" doc/meson.build
+sed -i "s|get_option('datadir') / 'doc'|get_option('prefix') / 'doc'|" doc/meson.build || exit 1
+export PATH=/usr/lib$LIBDIRSUFFIX/qt6/libexec:$PATH
mkdir build
cd build
diff --git a/libraries/libportal/libportal.info b/libraries/libportal/libportal.info
index c62c759a22..74cf98d3c5 100644
--- a/libraries/libportal/libportal.info
+++ b/libraries/libportal/libportal.info
@@ -1,8 +1,8 @@
PRGNAM="libportal"
-VERSION="0.6"
+VERSION="0.8.1"
HOMEPAGE="https://github.com/flatpak/libportal"
-DOWNLOAD="https://github.com/flatpak/libportal/releases/download/0.6/libportal-0.6.tar.xz"
-MD5SUM="e16c8ca2621aff64774a1d2ad6a2a346"
+DOWNLOAD="https://github.com/flatpak/libportal/releases/download/0.8.1/libportal-0.8.1.tar.xz"
+MD5SUM="3226036adea29ce152d9ca0be5ab0486"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/libqtpas/libqtpas.SlackBuild b/libraries/libqtpas/libqtpas.SlackBuild
index e62ad67581..a95fc0efa2 100644
--- a/libraries/libqtpas/libqtpas.SlackBuild
+++ b/libraries/libqtpas/libqtpas.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for libqtpas
-# Copyright 2022-2024 Vijay Marcel
+# Copyright 2022-2025 Vijay Marcel
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -48,18 +48,20 @@
# 07/10/2024: Updated to version 3.4
+# 31/01/2025: updated to version 3.8
+
########################################################################################
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=libqtpas
-VERSION=${VERSION:-3.4}
+VERSION=${VERSION:-3.8}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
SRCNAM=${SRCNAM:-lazarus}
-SRCVER=${SRCVER:-3.6}
+SRCVER=${SRCVER:-3.8-0}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -100,7 +102,7 @@ rm -rf $TMP/$SRCNAM
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$SRCNAM-$SRCVER-0.tar.gz
+tar xvf $CWD/$SRCNAM-$SRCVER.tar.gz
cd $SRCNAM/lcl/interfaces/qt5/cbindings/
chown -R root:root .
@@ -117,7 +119,7 @@ Qt5Pas.pro
make
make INSTALL_ROOT=$PKG install
-rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded --remove-section=.comment --remove-section=.note 2> /dev/null || true
diff --git a/libraries/libqtpas/libqtpas.info b/libraries/libqtpas/libqtpas.info
index b74f101bc0..d4cab4d349 100644
--- a/libraries/libqtpas/libqtpas.info
+++ b/libraries/libqtpas/libqtpas.info
@@ -1,8 +1,8 @@
PRGNAM="libqtpas"
-VERSION="3.4"
+VERSION="3.8"
HOMEPAGE="http://www.lazarus.freepascal.org/"
-DOWNLOAD="http://downloads.sourceforge.net/lazarus/lazarus-3.6-0.tar.gz"
-MD5SUM="c033a243b2fb933a474fe8d4971d95e6"
+DOWNLOAD="http://downloads.sourceforge.net/lazarus/lazarus-3.8-0.tar.gz"
+MD5SUM="29d9bcc58c73b4a22bc7a09a22093ca0"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/libsixel/libsixel.SlackBuild b/libraries/libsixel/libsixel.SlackBuild
index 59a6b2a038..8af503ed6c 100644
--- a/libraries/libsixel/libsixel.SlackBuild
+++ b/libraries/libsixel/libsixel.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=libsixel
-VERSION=${VERSION:-1.10.3}
+VERSION=${VERSION:-1.10.5}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -80,7 +80,7 @@ mkdir build
cd build
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
- meson .. \
+ meson setup .. \
--buildtype=release \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--localstatedir=/var \
diff --git a/libraries/libsixel/libsixel.info b/libraries/libsixel/libsixel.info
index 89d9a88aa1..45bee8df35 100644
--- a/libraries/libsixel/libsixel.info
+++ b/libraries/libsixel/libsixel.info
@@ -1,8 +1,8 @@
PRGNAM="libsixel"
-VERSION="1.10.3"
+VERSION="1.10.5"
HOMEPAGE="https://github.com/libsixel/libsixel"
-DOWNLOAD="https://github.com/libsixel/libsixel/archive/v1.10.3/libsixel-1.10.3.tar.gz"
-MD5SUM="c104233ee1a4c18fb2e76a478d9bb60c"
+DOWNLOAD="https://github.com/libsixel/libsixel/archive/v1.10.5/libsixel-1.10.5.tar.gz"
+MD5SUM="f2c6fe7edb589576465e18d46e02bffe"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/libslirp/changelog b/libraries/libslirp/changelog
deleted file mode 100644
index 75f35d507e..0000000000
--- a/libraries/libslirp/changelog
+++ /dev/null
@@ -1,19 +0,0 @@
-Changelog for libslirp SlackBuild Script
---------------------------------------------------------------------
-
-03/09/2022:
-
-Added to slackbuilds.org
-
-17/12/2022:
-
-Issues in the script were fixed.
-
-29/04/2023:
-
-updated to version 4.7.0
-Valgrind is an optional dependency for libslirp
-
-16/05/2024:
-
-updated to version 4.8.0
diff --git a/libraries/libslirp/libslirp.SlackBuild b/libraries/libslirp/libslirp.SlackBuild
index 36089f4bb3..23d0cc5d5c 100644
--- a/libraries/libslirp/libslirp.SlackBuild
+++ b/libraries/libslirp/libslirp.SlackBuild
@@ -22,13 +22,29 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# Changelog for libslirp SlackBuild Script
+# ----------------------------------------------------------------------------------
+
+# 03/09/2022: Added to slackbuilds.org
+
+# 17/12/2022: Issues in the script were fixed.
+
+# 29/04/2023: updated to version 4.7. Valgrind is an optional dependency for libslirp
+
+# 16/05/2024: updated to version 4.8.0
+
+# 31/01/2025: updated to version 4.9.0
+
+# -----------------------------------------------------------------------------------
+
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=libslirp
-VERSION=${VERSION:-4.8.0}
+VERSION=${VERSION:-4.9.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
+nprocr=$(expr $(nproc) + 1)
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -79,17 +95,28 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
+PYVER=$(python3 -c 'import sys; print("%d.%d" % sys.version_info[:2])')
+export PYTHONPATH=/opt/python$PYVER/site-packages
-meson build
-cd build
-meson configure -Dprefix=/usr
-DESTDIR=$PKG ninja install
-cd ..
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" meson setup build $TMP/$PRGNAM-v$VERSION \
+ -Dprefix=/usr \
+ -Dlibdir=/usr/lib${LIBDIRSUFFIX} \
+ -Dlocalstatedir=/var \
+ -Dmandir=/usr/man \
+ -Dsysconfdir=/etc \
+ -Dincludedir=/usr/include \
+ -Ddatadir=/usr/share \
+ -Dsbindir=/usr/sbin \
+ -Dlibexecdir=/usr/libexec \
+ -Dbuildtype=release \
+ -Dstrip=true
+
+ninja -j$nprocr -C build
+DESTDIR=$PKG ninja -C build install
# Don't ship .la files:
-rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded --remove-section=.comment --remove-section=.note 2> /dev/null || true
diff --git a/libraries/libslirp/libslirp.info b/libraries/libslirp/libslirp.info
index 1dbe155bed..41402f8d15 100644
--- a/libraries/libslirp/libslirp.info
+++ b/libraries/libslirp/libslirp.info
@@ -1,10 +1,10 @@
PRGNAM="libslirp"
-VERSION="4.8.0"
+VERSION="4.9.0"
HOMEPAGE="https://gitlab.freedesktop.org/slirp/libslirp"
-DOWNLOAD="https://gitlab.freedesktop.org/slirp/libslirp/-/archive/v4.8.0/libslirp-v4.8.0.tar.gz"
-MD5SUM="442988e931075fc45ed84c5ffc391073"
+DOWNLOAD="https://gitlab.freedesktop.org/slirp/libslirp/-/archive/v4.9.0/libslirp-v4.9.0.tar.gz"
+MD5SUM="4a9d0ff41ef0d673919ed7d0a8740c75"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES=""
+REQUIRES="python3-meson-opt"
MAINTAINER="Vijay Marcel"
EMAIL="vijaymarcel@outlook.com"
diff --git a/libraries/libsoup3/libsoup3.SlackBuild b/libraries/libsoup3/libsoup3.SlackBuild
index 51f8e4b3ab..08c115bf59 100644
--- a/libraries/libsoup3/libsoup3.SlackBuild
+++ b/libraries/libsoup3/libsoup3.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for libsoup3
-# Copyright 2022-2024 Willy Sudiarto Raharjo <willysr@slackbuilds.org>
+# Copyright 2022-2025 Willy Sudiarto Raharjo <willysr@slackbuilds.org>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -26,7 +26,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=libsoup3
SRCNAM=libsoup
-VERSION=${VERSION:-3.6.1}
+VERSION=${VERSION:-3.6.5}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/libraries/libsoup3/libsoup3.info b/libraries/libsoup3/libsoup3.info
index e0275e83a0..fc3d91020c 100644
--- a/libraries/libsoup3/libsoup3.info
+++ b/libraries/libsoup3/libsoup3.info
@@ -1,8 +1,8 @@
PRGNAM="libsoup3"
-VERSION="3.6.1"
+VERSION="3.6.5"
HOMEPAGE="https://gitlab.gnome.org/GNOME/libsoup"
-DOWNLOAD="https://gitlab.gnome.org/GNOME/libsoup/-/archive/3.6.1/libsoup-3.6.1.tar.bz2"
-MD5SUM="0cffaa0c777dbda7c5ea4c89f1a2784c"
+DOWNLOAD="https://gitlab.gnome.org/GNOME/libsoup/-/archive/3.6.5/libsoup-3.6.5.tar.bz2"
+MD5SUM="343595b48c2227b9ecd557b6c46bbb6d"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/libtorrent-rasterbar/libtorrent-rasterbar.SlackBuild b/libraries/libtorrent-rasterbar/libtorrent-rasterbar.SlackBuild
index 74022eb530..ddc1e45cce 100644
--- a/libraries/libtorrent-rasterbar/libtorrent-rasterbar.SlackBuild
+++ b/libraries/libtorrent-rasterbar/libtorrent-rasterbar.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for libtorrent (rasterbar)
-# Copyright 2022-2023 Logan Rathbone, Province of Ontario, Canada
+# Copyright 2022-2025 Logan Rathbone, Province of Ontario, Canada
# Copyright 2019-2020 Donald Cooley, South Haven, Indiana, USA
# Copyright 2009-2015 Erik W. Hanson, Minneapolis, MN, USA
# All rights reserved.
@@ -27,7 +27,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=libtorrent-rasterbar
-VERSION=${VERSION:-1.2.19}
+VERSION=${VERSION:-1.2.20}
BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/libraries/libtorrent-rasterbar/libtorrent-rasterbar.info b/libraries/libtorrent-rasterbar/libtorrent-rasterbar.info
index e7a7933c16..34054ab927 100644
--- a/libraries/libtorrent-rasterbar/libtorrent-rasterbar.info
+++ b/libraries/libtorrent-rasterbar/libtorrent-rasterbar.info
@@ -1,8 +1,8 @@
PRGNAM="libtorrent-rasterbar"
-VERSION="1.2.19"
+VERSION="1.2.20"
HOMEPAGE="https://libtorrent.org/"
-DOWNLOAD="https://github.com/arvidn/libtorrent/releases/download/v1.2.19/libtorrent-rasterbar-1.2.19.tar.gz"
-MD5SUM="fc5069e996d497fbd792fecebb48a305"
+DOWNLOAD="https://github.com/arvidn/libtorrent/releases/download/v1.2.20/libtorrent-rasterbar-1.2.20.tar.gz"
+MD5SUM="c0f2155f5ee6d6a5f015cba4f6691507"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/libtorrent/libtorrent.SlackBuild b/libraries/libtorrent/libtorrent.SlackBuild
index edee126517..1f41c92656 100644
--- a/libraries/libtorrent/libtorrent.SlackBuild
+++ b/libraries/libtorrent/libtorrent.SlackBuild
@@ -9,6 +9,7 @@
# Original version had no license. Modified version is
# licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20250124 bkw: update for v0.15.1.
# 20241124 bkw: update for v0.14.0.
# 20240916 bkw:
# - new maintainer.
@@ -21,7 +22,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=libtorrent
-VERSION=${VERSION:-0.14.0}
+VERSION=${VERSION:-0.15.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/libraries/libtorrent/libtorrent.info b/libraries/libtorrent/libtorrent.info
index 9a0642242f..584fe67161 100644
--- a/libraries/libtorrent/libtorrent.info
+++ b/libraries/libtorrent/libtorrent.info
@@ -1,8 +1,8 @@
PRGNAM="libtorrent"
-VERSION="0.14.0"
+VERSION="0.15.1"
HOMEPAGE="https://github.com/rakshasa/libtorrent"
-DOWNLOAD="https://github.com/rakshasa/libtorrent/archive/v0.14.0/libtorrent-0.14.0.tar.gz"
-MD5SUM="a9d572ec6e10e2f0b7707584e16136d7"
+DOWNLOAD="https://github.com/rakshasa/libtorrent/archive/v0.15.1/libtorrent-0.15.1.tar.gz"
+MD5SUM="ee2b94b7969c4270dfb1de2de3662c66"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/libtpms/libtpms.SlackBuild b/libraries/libtpms/libtpms.SlackBuild
index a0f1fccafb..50613c4263 100644
--- a/libraries/libtpms/libtpms.SlackBuild
+++ b/libraries/libtpms/libtpms.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=libtpms
-VERSION=${VERSION:-0.9.6}
+VERSION=${VERSION:-0.10.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/libraries/libtpms/libtpms.info b/libraries/libtpms/libtpms.info
index dc80241b3c..30c21df177 100644
--- a/libraries/libtpms/libtpms.info
+++ b/libraries/libtpms/libtpms.info
@@ -1,8 +1,8 @@
PRGNAM="libtpms"
-VERSION="0.9.6"
+VERSION="0.10.0"
HOMEPAGE="https://github.com/stefanberger/libtpms"
-DOWNLOAD="https://github.com/stefanberger/libtpms/archive/refs/tags/v0.9.6/libtpms-0.9.6.tar.gz"
-MD5SUM="c922a80cb1a098e6f9b2671c0044a388"
+DOWNLOAD="https://github.com/stefanberger/libtpms/archive/refs/tags/v0.10.0/libtpms-0.10.0.tar.gz"
+MD5SUM="f00d71ff14c96cea0824d07c649c7a31"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/liburcu/liburcu.SlackBuild b/libraries/liburcu/liburcu.SlackBuild
index db2c7bfbf9..6d6ad4bf30 100644
--- a/libraries/liburcu/liburcu.SlackBuild
+++ b/libraries/liburcu/liburcu.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for liburcu
-# Copyright 2013-2024 Willy Sudiarto Raharjo <willysr@slackbuilds.org>
+# Copyright 2013-2025 Willy Sudiarto Raharjo <willysr@slackbuilds.org>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=liburcu
-VERSION=${VERSION:-0.14.1}
+VERSION=${VERSION:-0.15.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -96,7 +96,7 @@ find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | gr
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a README.md LICENSE ChangeLog *.txt $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a ChangeLog *.md $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
rm -f $PKG/usr/lib*/*.la
diff --git a/libraries/liburcu/liburcu.info b/libraries/liburcu/liburcu.info
index 25feec6e7e..2ccf561be0 100644
--- a/libraries/liburcu/liburcu.info
+++ b/libraries/liburcu/liburcu.info
@@ -1,8 +1,8 @@
PRGNAM="liburcu"
-VERSION="0.14.1"
+VERSION="0.15.1"
HOMEPAGE="http://liburcu.org/"
-DOWNLOAD="https://lttng.org/files/urcu/userspace-rcu-0.14.1.tar.bz2"
-MD5SUM="dfeb1a6e67679f4ee4a0ac584bfd37ef"
+DOWNLOAD="https://lttng.org/files/urcu/userspace-rcu-0.15.1.tar.bz2"
+MD5SUM="5a6a892f0eea86728b4eb6dea07ed190"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/libvirt-glib/libvirt-glib-4.0.0-cast-align.patch b/libraries/libvirt-glib/libvirt-glib-4.0.0-cast-align.patch
deleted file mode 100644
index 666babaca6..0000000000
--- a/libraries/libvirt-glib/libvirt-glib-4.0.0-cast-align.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -rup libvirt-glib-4.0.0.orig/meson.build libvirt-glib-4.0.0.new/meson.build
---- libvirt-glib-4.0.0.orig/meson.build 2021-02-15 12:23:04.609036200 +0000
-+++ libvirt-glib-4.0.0.new/meson.build 2021-02-15 14:50:24.838971022 +0000
-@@ -175,8 +175,6 @@ cc_flags += [
- '-Wbuiltin-declaration-mismatch',
- '-Wbuiltin-macro-redefined',
- '-Wcannot-profile',
-- '-Wcast-align',
-- '-Wcast-align=strict',
- '-Wcast-function-type',
- '-Wchar-subscripts',
- '-Wclobbered',
diff --git a/libraries/libvirt-glib/libvirt-glib.SlackBuild b/libraries/libvirt-glib/libvirt-glib.SlackBuild
index 96ebde059d..0c46671882 100644
--- a/libraries/libvirt-glib/libvirt-glib.SlackBuild
+++ b/libraries/libvirt-glib/libvirt-glib.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for libvirt-glib
-# Copyright 2012-2021 Robby Workman, Tuscaloosa, Alabama, USA
+# Copyright 2012-2024 Robby Workman, Tuscaloosa, Alabama, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=libvirt-glib
-VERSION=${VERSION:-4.0.0}
+VERSION=${VERSION:-5.0.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -76,8 +76,6 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
-patch -p1 < $CWD/libvirt-glib-4.0.0-cast-align.patch
-
mkdir build
cd build
CFLAGS="$SLKCFLAGS" \
diff --git a/libraries/libvirt-glib/libvirt-glib.info b/libraries/libvirt-glib/libvirt-glib.info
index 560c9a11d0..5528f83e51 100644
--- a/libraries/libvirt-glib/libvirt-glib.info
+++ b/libraries/libvirt-glib/libvirt-glib.info
@@ -1,8 +1,8 @@
PRGNAM="libvirt-glib"
-VERSION="4.0.0"
+VERSION="5.0.0"
HOMEPAGE="http://libvirt.org/"
-DOWNLOAD="https://libvirt.org/sources/glib/libvirt-glib-4.0.0.tar.xz"
-MD5SUM="0d0932949cde8a8933f6fb6aaf66dfe0"
+DOWNLOAD="https://download.libvirt.org/glib/libvirt-glib-5.0.0.tar.xz"
+MD5SUM="2e36b42b91bb98fac22321b5afc5a835"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="libvirt"
diff --git a/libraries/libvirt-python/libvirt-python.SlackBuild b/libraries/libvirt-python/libvirt-python.SlackBuild
index 047fa9cfc2..f3d7d25df5 100644
--- a/libraries/libvirt-python/libvirt-python.SlackBuild
+++ b/libraries/libvirt-python/libvirt-python.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for libvirt-python
-# Copyright 2013-2023 Robby Workman, Tuscaloosa, Alabama, USA
+# Copyright 2013-2024 Robby Workman, Tuscaloosa, Alabama, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=libvirt-python
-VERSION=${VERSION:-9.1.0}
+VERSION=${VERSION:-10.10.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -38,9 +38,6 @@ if [ -z "$ARCH" ]; then
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
diff --git a/libraries/libvirt-python/libvirt-python.info b/libraries/libvirt-python/libvirt-python.info
index 9904928d47..741d943561 100644
--- a/libraries/libvirt-python/libvirt-python.info
+++ b/libraries/libvirt-python/libvirt-python.info
@@ -1,8 +1,8 @@
PRGNAM="libvirt-python"
-VERSION="9.1.0"
+VERSION="10.10.0"
HOMEPAGE="https://libvirt.org"
-DOWNLOAD="https://libvirt.org/sources/python/libvirt-python-9.1.0.tar.gz"
-MD5SUM="24a0043ff93979fa2b9ca8925893a6e4"
+DOWNLOAD="https://download.libvirt.org/python/libvirt-python-10.10.0.tar.gz"
+MD5SUM="004550e6c71f88bd56480590f54ed048"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="libvirt"
diff --git a/libraries/libvirt/README b/libraries/libvirt/README
index dcf8472fc2..9874158d30 100644
--- a/libraries/libvirt/README
+++ b/libraries/libvirt/README
@@ -46,13 +46,11 @@ There is also a 'guests_reboot' for rebooting all running guests.
Have a look at the commented part of rc.libvirt for some gotchas.
-netcat-openbsd is an optional dependency (needed if you
-want to connect from a remote host using virt-manager).
-Other optional dependencies include avahi, xen, audit, glusterfs,
-numactl, open-iscsi and libiscsi.
+Optional dependencies include avahi, xen, audit, glusterfs, numactl,
+open-iscsi and libiscsi.
As of the 4.5.0 version, you may have to remove any previously
-installed versions of libvirt before this will build.
+installed version of libvirt before this will build.
Note also that sometimes, in consequence of a major-version upgrade,
you might discover that the libvirt configuration is in an inconsistent
@@ -69,3 +67,12 @@ clean state. To do this:
and start the daemon
- recreate your configurations (network and so on)
- reimport the vms xml backups (with "virsh define ${name}.xml")
+
+also, for older vms you might have to "upgrade" the machine model
+because newer versions of libvirt might have dropped support for the
+older ones: if starting a vm you got, for example
+
+ '/usr/bin/qemu-kvm' does not support machine type 'pc-i440fx-2.1'
+
+just "virsh edit your_vm" and change the machine model to an higher
+one, like pc-i440fx-8.1
diff --git a/libraries/libvirt/libvirt.SlackBuild b/libraries/libvirt/libvirt.SlackBuild
index 1da38ef831..27a9e7b253 100644
--- a/libraries/libvirt/libvirt.SlackBuild
+++ b/libraries/libvirt/libvirt.SlackBuild
@@ -10,7 +10,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=libvirt
-VERSION=${VERSION:-9.1.0}
+VERSION=${VERSION:-10.10.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -61,6 +61,7 @@ cd $TMP
rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
cd $PRGNAM-$VERSION
+rm -fR tests/vircaps2xmldata # either this or find outputs "filesystem loop detected"
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
diff --git a/libraries/libvirt/libvirt.info b/libraries/libvirt/libvirt.info
index 8a7276895c..7b65038bac 100644
--- a/libraries/libvirt/libvirt.info
+++ b/libraries/libvirt/libvirt.info
@@ -1,8 +1,8 @@
PRGNAM="libvirt"
-VERSION="9.1.0"
+VERSION="10.10.0"
HOMEPAGE="http://libvirt.org"
-DOWNLOAD="https://libvirt.org/sources/libvirt-9.1.0.tar.xz"
-MD5SUM="fbfab9819030ec363f0b1e88ca5b83de"
+DOWNLOAD="https://download.libvirt.org/libvirt-10.10.0.tar.xz"
+MD5SUM="1ac7a0bce2d4584d293bd1d157f7c148"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="yajl"
diff --git a/libraries/libwbxml/README b/libraries/libwbxml/README
new file mode 100644
index 0000000000..f82d57bd9c
--- /dev/null
+++ b/libraries/libwbxml/README
@@ -0,0 +1,5 @@
+The WBXML Library (aka libwbxml) contains a library and its associated
+tools to Parse, Encode and Handle WBXML documents.
+
+The WBXML format is a binary representation of XML, defined by the Wap
+Forum, and used to reduce bandwidth in mobile communications.
diff --git a/libraries/libwbxml/libwbxml.SlackBuild b/libraries/libwbxml/libwbxml.SlackBuild
new file mode 100644
index 0000000000..336c54c67a
--- /dev/null
+++ b/libraries/libwbxml/libwbxml.SlackBuild
@@ -0,0 +1,116 @@
+#!/bin/bash
+
+# Slackware build script for libwbxml
+
+# Copyright 2022 Chris Walker Kempner, TX
+# Copyright 2008 Michael Wagner <slackware.wagnerm@arcor.de>
+# 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=libwbxml
+VERSION=${VERSION:-0.11.10}
+COMMIT=e58b1f19f11dbadff53e5b486b8c4b16639a656a
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+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"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$COMMIT
+tar xvf $CWD/$PRGNAM-$COMMIT.tar.gz
+cd $PRGNAM-$COMMIT
+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 {} \;
+
+mkdir -p build
+cd build
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DLIB_SUFFIX=${LIBDIRSUFFIX} \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make
+ make install/strip DESTDIR=$PKG
+cd ..
+
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+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
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ $PKG/usr/share/doc/$PRGNAM/* \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+rm -rf $PKG/usr/share/doc \
+ $PKG/usr/doc/$PRGNAM-$VERSION/INSTALL
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/usr/share
+cp -a \
+ $PKG/cmake/libwbxml2 \
+ $PKG/usr/share
+rm -rf $PKG/cmake
+
+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/libraries/libwbxml/libwbxml.info b/libraries/libwbxml/libwbxml.info
new file mode 100644
index 0000000000..f7947cf5c4
--- /dev/null
+++ b/libraries/libwbxml/libwbxml.info
@@ -0,0 +1,10 @@
+PRGNAM="libwbxml"
+VERSION="0.11.10"
+HOMEPAGE="https://github.com/libwbxml/libwbxml"
+DOWNLOAD="https://github.com/libwbxml/libwbxml/archive/e58b1f1/libwbxml-e58b1f19f11dbadff53e5b486b8c4b16639a656a.tar.gz"
+MD5SUM="6704a713c4802ffa6f355f015473a7ab"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Chris Walker"
+EMAIL="kris240376@gmail.com"
diff --git a/libraries/libwbxml/slack-desc b/libraries/libwbxml/slack-desc
new file mode 100644
index 0000000000..1807d9fa57
--- /dev/null
+++ b/libraries/libwbxml/slack-desc
@@ -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 ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+libwbxml: libwbxml (Parse, encode and handle WBXML documents)
+libwbxml:
+libwbxml: The WBXML Library contains a library and its associated tools to
+libwbxml: Parse, Encode and Handle WBXML documents.
+libwbxml:
+libwbxml: The WBXML format is a binary representation of XML, defined by the
+libwbxml: Wap Forum, and used to reduce bandwidth in mobile communications.
+libwbxml:
+libwbxml:
+libwbxml:
+libwbxml:
diff --git a/libraries/libwpe/libwpe.SlackBuild b/libraries/libwpe/libwpe.SlackBuild
index 2ff392daab..4a6cec5ee0 100644
--- a/libraries/libwpe/libwpe.SlackBuild
+++ b/libraries/libwpe/libwpe.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for libwpe
-# Copyright 2019-2024 Willy Sudiarto Raharjo <willysr@slackbuilds.org>
+# Copyright 2019-2025 Willy Sudiarto Raharjo <willysr@slackbuilds.org>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=libwpe
-VERSION=${VERSION:-1.16.0}
+VERSION=${VERSION:-1.16.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -49,16 +49,12 @@ 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"
else
SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
fi
set -e
diff --git a/libraries/libwpe/libwpe.info b/libraries/libwpe/libwpe.info
index 14d672aca2..d317ba2e04 100644
--- a/libraries/libwpe/libwpe.info
+++ b/libraries/libwpe/libwpe.info
@@ -1,8 +1,8 @@
PRGNAM="libwpe"
-VERSION="1.16.0"
+VERSION="1.16.2"
HOMEPAGE="https://wpewebkit.org"
-DOWNLOAD="https://wpewebkit.org/releases/libwpe-1.16.0.tar.xz"
-MD5SUM="9779115aaa7e67abe642777394e7bfa2"
+DOWNLOAD="https://wpewebkit.org/releases/libwpe-1.16.2.tar.xz"
+MD5SUM="689306c9baf6f8d6844146a5c84fc932"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/libxml++5/README b/libraries/libxml++5/README
new file mode 100644
index 0000000000..c806920215
--- /dev/null
+++ b/libraries/libxml++5/README
@@ -0,0 +1,5 @@
+libxml++ is a C++ API for the popular libxml2 XML parser, written in C.
+libxml2 is famous for its high performance and compliance to standard
+specifications, but its C API is quite difficult even for common tasks.
+
+libxml++5 does not conflict with the libxml++ or libxml++3 package.
diff --git a/libraries/libxml++5/libxml++5.SlackBuild b/libraries/libxml++5/libxml++5.SlackBuild
new file mode 100644
index 0000000000..c4f582929d
--- /dev/null
+++ b/libraries/libxml++5/libxml++5.SlackBuild
@@ -0,0 +1,117 @@
+#!/bin/bash
+
+# Slackware build script for libxml++5
+
+# Copyright 2025 Zhu, Qun-Ying
+# Copyright 2019-2020 Hunter Sezen California, USA
+# 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=libxml++5
+VERSION=${VERSION:-5.4.0}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+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"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -eu
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+mkdir $PRGNAM-$VERSION
+tar xvf $CWD/libxmlplusplus-$VERSION.tar.gz -C $PRGNAM-$VERSION --strip-components=1
+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 {} \;
+
+PYVER=$(python3 -c 'import sys; print("%d.%d" % sys.version_info[:2])')
+export PYTHONPATH=/opt/python$PYVER/site-packages
+
+mkdir slack-build
+cd slack-build
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+ meson .. \
+ --buildtype=release \
+ --infodir=/usr/info \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ -Dstrip=true
+ "${NINJA:=ninja}"
+ DESTDIR=$PKG $NINJA install
+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
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a COPYING NEWS README.md $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+rm -f $PKG/usr/lib*/*.la
+
+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/libraries/libxml++5/libxml++5.info b/libraries/libxml++5/libxml++5.info
new file mode 100644
index 0000000000..7af8b518af
--- /dev/null
+++ b/libraries/libxml++5/libxml++5.info
@@ -0,0 +1,10 @@
+PRGNAM="libxml++5"
+VERSION="5.4.0"
+HOMEPAGE="http://libxmlplusplus.sourceforge.net"
+DOWNLOAD="https://github.com/libxmlplusplus/libxmlplusplus/archive/5.4.0/libxmlplusplus-5.4.0.tar.gz"
+MD5SUM="0eb5d961716d20d6283dee71ee02c1e8"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="python3-meson-opt"
+MAINTAINER="Zhu Qun-Ying"
+EMAIL="zhu.qunying@gmail.com"
diff --git a/libraries/libxml++5/slack-desc b/libraries/libxml++5/slack-desc
new file mode 100644
index 0000000000..5196d14af1
--- /dev/null
+++ b/libraries/libxml++5/slack-desc
@@ -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------------------------------------------------------|
+libxml++5: libxml++5 (C++ wrapper for the libxml XML parser library)
+libxml++5:
+libxml++5: libxml++ is a C++ API for the popular libxml2 XML parser, written in
+libxml++5: C. libxml2 is famous for its high performance and compliance to
+libxml++5: standard specifications, but its C API is quite difficult even for
+libxml++5: common tasks.
+libxml++5:
+libxml++5: Homepage: https://libxmlplusplus.github.io/libxmlplusplus/
+libxml++5:
+libxml++5:
+libxml++5:
diff --git a/libraries/libxmlb/libxmlb.SlackBuild b/libraries/libxmlb/libxmlb.SlackBuild
index 5b0161e11c..2b10e39498 100644
--- a/libraries/libxmlb/libxmlb.SlackBuild
+++ b/libraries/libxmlb/libxmlb.SlackBuild
@@ -3,7 +3,7 @@
# Slackware build script for libxmlb
# Copyright 2019-2022 Andrew Clemons, Wellington New Zealand
-# Copyright 2022-2024 Andrew Clemons, Tokyo Japan
+# Copyright 2022-2025 Andrew Clemons, Tokyo Japan
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -26,7 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=libxmlb
-VERSION=${VERSION:-0.3.21}
+VERSION=${VERSION:-0.3.22}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/libraries/libxmlb/libxmlb.info b/libraries/libxmlb/libxmlb.info
index 8b6f23ec96..fa18ad6b79 100644
--- a/libraries/libxmlb/libxmlb.info
+++ b/libraries/libxmlb/libxmlb.info
@@ -1,8 +1,8 @@
PRGNAM="libxmlb"
-VERSION="0.3.21"
+VERSION="0.3.22"
HOMEPAGE="https://github.com/hughsie/libxmlb"
-DOWNLOAD="https://github.com/hughsie/libxmlb/archive/0.3.21/libxmlb-0.3.21.tar.gz"
-MD5SUM="d71b4de82518954fd3f25d83f3a7591c"
+DOWNLOAD="https://github.com/hughsie/libxmlb/archive/0.3.22/libxmlb-0.3.22.tar.gz"
+MD5SUM="c3504784956293cdcfdf19ce89e15fe0"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="python3-meson-opt"
diff --git a/libraries/libxnvctrl/libxnvctrl.SlackBuild b/libraries/libxnvctrl/libxnvctrl.SlackBuild
index 63c5126a9a..ea51222cfe 100644
--- a/libraries/libxnvctrl/libxnvctrl.SlackBuild
+++ b/libraries/libxnvctrl/libxnvctrl.SlackBuild
@@ -28,7 +28,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=libxnvctrl
-VERSION=${VERSION:-560.35.03}
+VERSION=${VERSION:-565.77}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -91,6 +91,7 @@ make
mkdir -p $PKG/usr/lib$LIBDIRSUFFIX
install -Dm 644 src/libXNVCtrl/*.h -t $PKG/usr/include/NVCtrl
cp -Pr src/_out/*/libXNVCtrl.* -t $PKG/usr/lib$LIBDIRSUFFIX
+strip $PKG/usr/lib$LIBDIRSUFFIX/libXNVCtrl.so.0.0.0
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
diff --git a/libraries/libxnvctrl/libxnvctrl.info b/libraries/libxnvctrl/libxnvctrl.info
index fc16ac1606..01fafc7629 100644
--- a/libraries/libxnvctrl/libxnvctrl.info
+++ b/libraries/libxnvctrl/libxnvctrl.info
@@ -1,8 +1,8 @@
PRGNAM="libxnvctrl"
-VERSION="560.35.03"
+VERSION="565.77"
HOMEPAGE="http://www.nvidia.com"
-DOWNLOAD="https://download.nvidia.com/XFree86/nvidia-settings/nvidia-settings-560.35.03.tar.bz2"
-MD5SUM="b6385e9319e19d6b42f51141c868c1f5"
+DOWNLOAD="https://download.nvidia.com/XFree86/nvidia-settings/nvidia-settings-565.77.tar.bz2"
+MD5SUM="f7146d6be1a11e951444b066e883d3c0"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="nvidia-driver"
diff --git a/libraries/libzim/README b/libraries/libzim/README
new file mode 100644
index 0000000000..cee6232ac4
--- /dev/null
+++ b/libraries/libzim/README
@@ -0,0 +1,5 @@
+Libzim (Reference implementation of the ZIM specification)
+
+The Libzim is the reference implementation for the ZIM file
+format. It's a software library to read and write ZIM files on many
+systems and architectures.
diff --git a/libraries/libzim/libzim.SlackBuild b/libraries/libzim/libzim.SlackBuild
new file mode 100644
index 0000000000..1ecd0ba110
--- /dev/null
+++ b/libraries/libzim/libzim.SlackBuild
@@ -0,0 +1,111 @@
+#!/bin/bash
+
+# Slackware build script for libzim
+
+# Copyright 2025 Ruoh-Shoei LIN
+# 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=libzim
+VERSION=${VERSION:-9.2.3}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+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"
+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 {} \;
+
+mkdir build
+cd build
+ CFLAGS="$SLKCFLAGS" \
+ CXXFLAGS="$SLKCFLAGS" \
+ meson .. \
+ --buildtype=release \
+ --infodir=/usr/info \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --prefix=/usr \
+ --auto-features=enabled \
+ --wrap-mode=nodownload \
+ --sysconfdir=/etc
+ "${NINJA:=ninja}"
+ DESTDIR=$PKG $NINJA install
+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
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ AUTHORS COPYING ChangeLog README.md \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+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/libraries/libzim/libzim.info b/libraries/libzim/libzim.info
new file mode 100644
index 0000000000..22f83da835
--- /dev/null
+++ b/libraries/libzim/libzim.info
@@ -0,0 +1,10 @@
+PRGNAM="libzim"
+VERSION="9.2.3"
+HOMEPAGE="https://github.com/openzim/libzim"
+DOWNLOAD="https://download.openzim.org/release/libzim/libzim-9.2.3.tar.xz"
+MD5SUM="0e5c7c092e538b89dccb177c5f7a2795"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Ruoh-Shoei LIN"
+EMAIL="lin.ruohshoei+sbo@gmail.com"
diff --git a/libraries/libzim/slack-desc b/libraries/libzim/slack-desc
new file mode 100644
index 0000000000..6731be5c30
--- /dev/null
+++ b/libraries/libzim/slack-desc
@@ -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------------------------------------------------------|
+libzim: libzim (Reference implementation of the ZIM specification )
+libzim:
+libzim: The Libzim is the reference implementation for the ZIM file
+libzim: format. It's a software library to read and write ZIM files on many
+libzim: systems and architectures. More information about the ZIM format and
+libzim: the openZIM project at https://openzim.org/.
+libzim:
+libzim:
+libzim:
+libzim:
+libzim:
diff --git a/libraries/luaexpat/luaexpat.SlackBuild b/libraries/luaexpat/luaexpat.SlackBuild
index 9f372dba0e..93545e2b87 100644
--- a/libraries/luaexpat/luaexpat.SlackBuild
+++ b/libraries/luaexpat/luaexpat.SlackBuild
@@ -31,8 +31,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=luaexpat
-VERSION=${VERSION:-1.5.1}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-1.5.2}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/libraries/luaexpat/luaexpat.info b/libraries/luaexpat/luaexpat.info
index 34869598b5..234ec87294 100644
--- a/libraries/luaexpat/luaexpat.info
+++ b/libraries/luaexpat/luaexpat.info
@@ -1,8 +1,8 @@
PRGNAM="luaexpat"
-VERSION="1.5.1"
+VERSION="1.5.2"
HOMEPAGE="https://lunarmodules.github.io/luaexpat/index.html"
-DOWNLOAD="https://github.com/lunarmodules/luaexpat/archive/1.5.1/luaexpat-1.5.1.tar.gz"
-MD5SUM="3656fb29127c725cd2669f5af8ca35c0"
+DOWNLOAD="https://github.com/lunarmodules/luaexpat/archive/1.5.2/luaexpat-1.5.2.tar.gz"
+MD5SUM="8a0f6e6877679d7ecaef17745142beee"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="lua"
diff --git a/libraries/lualdap/README b/libraries/lualdap/README
new file mode 100644
index 0000000000..94b8471c1e
--- /dev/null
+++ b/libraries/lualdap/README
@@ -0,0 +1,10 @@
+LuaLDAP is a simple interface for Lua to an LDAP client, in fact it is a
+bind to OpenLDAP client or ADSI.
+
+It enables a Lua program to:
+ - Connect to an LDAP server
+ - Execute any operation (search, add, compare, delete, modify, and
+ rename)
+ - Retrieve entries and references of the search result
+
+This package is required for LDAP authentication with prosody.
diff --git a/libraries/lualdap/lualdap.SlackBuild b/libraries/lualdap/lualdap.SlackBuild
new file mode 100644
index 0000000000..f139d93a71
--- /dev/null
+++ b/libraries/lualdap/lualdap.SlackBuild
@@ -0,0 +1,102 @@
+#!/bin/bash
+
+# Slackware build script for lua-cyrussasl
+
+# Copyright 2021 Chris Walker Kempner, TX
+# 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=lualdap
+VERSION=${VERSION:-1.4.0}
+COMMIT=7a73c883012f9d12a05563afbb3481a57055368c
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+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"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$COMMIT
+tar xvf $CWD/$PRGNAM-$COMMIT.tar.gz
+cd $PRGNAM-$COMMIT
+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 {} \;
+
+make
+make install DESTDIR=$PKG INST_LIBDIR=/usr/lib${LIBDIRSUFFIX}/lua/5.4
+
+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
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ README.md \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cp -ar \
+ tests \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+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/libraries/lualdap/lualdap.info b/libraries/lualdap/lualdap.info
new file mode 100644
index 0000000000..0bc7a2de3c
--- /dev/null
+++ b/libraries/lualdap/lualdap.info
@@ -0,0 +1,10 @@
+PRGNAM="lualdap"
+VERSION="1.4.0"
+HOMEPAGE="https://github.com/lualdap/lualdap"
+DOWNLOAD="https://github.com/lualdap/lualdap/archive/7a73c88/lualdap-7a73c883012f9d12a05563afbb3481a57055368c.tar.gz"
+MD5SUM="b0bc913c5a3b742d32f94a4131db0870"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="lua"
+MAINTAINER="Chris Walker"
+EMAIL="kris240376@gmail.com"
diff --git a/libraries/lualdap/slack-desc b/libraries/lualdap/slack-desc
new file mode 100644
index 0000000000..d511155067
--- /dev/null
+++ b/libraries/lualdap/slack-desc
@@ -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------------------------------------------------------|
+lualdap: lualdap (Lua LDAP client)
+lualdap:
+lualdap: LuaLDAP is a simple interface from Lua to an LDAP client, in fact it
+lualdap: is a bind to OpenLDAP client or ADSI.
+lualdap:
+lualdap: It enables a Lua program to:
+lualdap: - Connect to an LDAP server
+lualdap: - Execute any operation (search, add, compare, delete, modify, and
+lualdap: rename)
+lualdap: - Retrieve entries and references of the search result
+lualdap:
diff --git a/libraries/luasec/luasec.SlackBuild b/libraries/luasec/luasec.SlackBuild
index 19c2b66e06..d719787fd1 100644
--- a/libraries/luasec/luasec.SlackBuild
+++ b/libraries/luasec/luasec.SlackBuild
@@ -31,8 +31,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=luasec
-VERSION=${VERSION:-1.3.1}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-1.3.2}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/libraries/luasec/luasec.info b/libraries/luasec/luasec.info
index d39e74898f..0d20f6fe9b 100644
--- a/libraries/luasec/luasec.info
+++ b/libraries/luasec/luasec.info
@@ -1,8 +1,8 @@
PRGNAM="luasec"
-VERSION="1.3.1"
+VERSION="1.3.2"
HOMEPAGE="https://github.com/brunoos/luasec"
-DOWNLOAD="https://github.com/brunoos/luasec/archive/v1.3.1/luasec-1.3.1.tar.gz"
-MD5SUM="73cbbeb8bb50cd7da5b7e929040dd656"
+DOWNLOAD="https://github.com/brunoos/luasec/archive/v1.3.2/luasec-1.3.2.tar.gz"
+MD5SUM="20b769eb10ed4d447e407c7dccd24d49"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="lua"
diff --git a/libraries/microsoft-gsl/microsoft-gsl.SlackBuild b/libraries/microsoft-gsl/microsoft-gsl.SlackBuild
index ed091acc2c..0c62341a21 100644
--- a/libraries/microsoft-gsl/microsoft-gsl.SlackBuild
+++ b/libraries/microsoft-gsl/microsoft-gsl.SlackBuild
@@ -25,19 +25,13 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=microsoft-gsl
-VERSION=${VERSION:-4.0.0}
+SRCNAM=GSL
+ARCH=noarch
+VERSION=${VERSION:-4.1.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
exit 0
@@ -49,19 +43,14 @@ 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
@@ -69,9 +58,9 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf GSL-$VERSION
-tar xvf $CWD/GSL-$VERSION.tar.gz
-cd GSL-$VERSION
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
+cd $SRCNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
diff --git a/libraries/microsoft-gsl/microsoft-gsl.info b/libraries/microsoft-gsl/microsoft-gsl.info
index 3b479a0d9b..8aebbe0415 100644
--- a/libraries/microsoft-gsl/microsoft-gsl.info
+++ b/libraries/microsoft-gsl/microsoft-gsl.info
@@ -1,8 +1,8 @@
PRGNAM="microsoft-gsl"
-VERSION="4.0.0"
+VERSION="4.1.0"
HOMEPAGE="https://github.com/microsoft/GSL"
-DOWNLOAD="https://github.com/microsoft/GSL/archive/v4.0.0/GSL-4.0.0.tar.gz"
-MD5SUM="4b1a5f39c5f489d2bdf3bd352548907d"
+DOWNLOAD="https://github.com/microsoft/GSL/archive/v4.1.0/GSL-4.1.0.tar.gz"
+MD5SUM="7e6883a254e73a8b2368a0d26efe68a7"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/mimalloc/mimalloc.SlackBuild b/libraries/mimalloc/mimalloc.SlackBuild
index 6d30c954fc..c08fa27fcf 100644
--- a/libraries/mimalloc/mimalloc.SlackBuild
+++ b/libraries/mimalloc/mimalloc.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=mimalloc
-VERSION=${VERSION:-2.1.7}
+VERSION=${VERSION:-2.1.9}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/libraries/mimalloc/mimalloc.info b/libraries/mimalloc/mimalloc.info
index 80f27aef7f..89b3dfa643 100644
--- a/libraries/mimalloc/mimalloc.info
+++ b/libraries/mimalloc/mimalloc.info
@@ -1,8 +1,8 @@
PRGNAM="mimalloc"
-VERSION="2.1.7"
+VERSION="2.1.9"
HOMEPAGE="https://github.com/microsoft/mimalloc"
-DOWNLOAD="https://github.com/microsoft/mimalloc/archive/v2.1.7/mimalloc-2.1.7.tar.gz"
-MD5SUM="8f33b9972e9ac65c22c846c867583357"
+DOWNLOAD="https://github.com/microsoft/mimalloc/archive/v2.1.9/mimalloc-2.1.9.tar.gz"
+MD5SUM="1b33c11a8f9ea4b7ae0862070892206e"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/msgpack-c-cpp/msgpack-c-cpp.SlackBuild b/libraries/msgpack-c-cpp/msgpack-c-cpp.SlackBuild
index e26f4c46e8..e1fd523cb5 100644
--- a/libraries/msgpack-c-cpp/msgpack-c-cpp.SlackBuild
+++ b/libraries/msgpack-c-cpp/msgpack-c-cpp.SlackBuild
@@ -2,7 +2,7 @@
# SlackBuild script for msgpack-c-cpp
-# Copyright 2024 Giancarlo Dessi, Cagliari, IT
+# Copyright 2024-2025 Giancarlo Dessi, Cagliari, IT
# Copyright 2021 Ruben Schuller <sb@rbn.im>
# Copyright 2014-2020 Benjamin Trigona-Harany <slackbuilds@jaxartes.net>
# All rights reserved.
@@ -31,10 +31,11 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=msgpack-c-cpp
-VERSION=${VERSION:-6.1.1}
+VERSION=${VERSION:-7.0.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
+SRCNAM=msgpack-cxx
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -84,9 +85,9 @@ fi
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
+cd $SRCNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -94,7 +95,7 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
-sed -i ./CMakeLists.txt -e "s/VERSION 3.1 FATAL_ERROR/VERSION 3.5 FATAL_ERROR/g"
+sed -i ./CMakeLists.txt -e "s/CMAKE_MINIMUM_REQUIRED (VERSION 3.5)/CMAKE_MINIMUM_REQUIRED (VERSION 3.10)/g"
mkdir -p build
cd build
diff --git a/libraries/msgpack-c-cpp/msgpack-c-cpp.info b/libraries/msgpack-c-cpp/msgpack-c-cpp.info
index aed8f36148..0e25eba2b4 100644
--- a/libraries/msgpack-c-cpp/msgpack-c-cpp.info
+++ b/libraries/msgpack-c-cpp/msgpack-c-cpp.info
@@ -1,8 +1,8 @@
PRGNAM="msgpack-c-cpp"
-VERSION="6.1.1"
+VERSION="7.0.0"
HOMEPAGE="https://github.com/msgpack/msgpack-c"
-DOWNLOAD="https://github.com/msgpack/msgpack-c/archive/cpp-6.1.1/msgpack-c-cpp-6.1.1.tar.gz"
-MD5SUM="a0398798d8b9733bd5cd87a6d2f0b05f"
+DOWNLOAD="https://github.com/msgpack/msgpack-c/releases/download/cpp-7.0.0/msgpack-cxx-7.0.0.tar.gz"
+MD5SUM="4f634a36531fb2ba5b92038c42483871"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/mujs/mujs.SlackBuild b/libraries/mujs/mujs.SlackBuild
index 82d8efc55c..316830b9ae 100644
--- a/libraries/mujs/mujs.SlackBuild
+++ b/libraries/mujs/mujs.SlackBuild
@@ -32,7 +32,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=mujs
VERSION=${VERSION:-1.3.2}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -75,8 +75,8 @@ mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-sed -i -e '/LIBREADLINE +=/ s/$/ -ltermcap/' Makefile
+cd $PRGNAM-$VERSION || exit 1
+patch -p0 --verbose < $CWD/set-library-soname-version.diff
chown -R root:root .
find -L . \
diff --git a/libraries/mujs/set-library-soname-version.diff b/libraries/mujs/set-library-soname-version.diff
new file mode 100644
index 0000000000..94cc128665
--- /dev/null
+++ b/libraries/mujs/set-library-soname-version.diff
@@ -0,0 +1,48 @@
+--- Makefile.orig 2022-11-08 02:24:56.000000000 +1100
++++ Makefile 2024-12-29 20:22:02.927325224 +1100
+@@ -23,6 +23,8 @@
+
+ # Compiler flags for various configurations:
+
++SO_VERSION=1
++
+ CFLAGS := -std=c99 -pedantic -Wall -Wextra -Wno-unused-parameter
+
+ ifeq "$(CC)" "clang"
+@@ -40,7 +42,6 @@
+ LDFLAGS += -fsanitize=address
+ else ifeq "$(build)" "release"
+ CFLAGS += -O2
+- LDFLAGS += -Wl,-s
+ endif
+
+ ifeq "$(HAVE_READLINE)" "yes"
+@@ -88,7 +89,8 @@
+
+ $(OUT)/libmujs.$(SO_EXT): one.c $(HDRS)
+ @ mkdir -p $(@D)
+- $(CC) $(CFLAGS) $(CPPFLAGS) -fPIC -shared $(LDFLAGS) -o $@ $< -lm
++ $(CC) $(CFLAGS) $(CPPFLAGS) -fPIC -shared -Wl,-soname,libmujs.$(SO_EXT).$(SO_VERSION) -o $@ $< -lm
++ ln -sf libmujs.$(SO_EXT).$(SO_VERSION) $@
+
+ libmujs ?= libmujs.a
+
+@@ -127,7 +129,9 @@
+ install -m 644 $(OUT)/libmujs.a $(DESTDIR)$(libdir)
+
+ install-shared: install-common $(OUT)/libmujs.$(SO_EXT)
+- install -m 755 $(OUT)/libmujs.$(SO_EXT) $(DESTDIR)$(libdir)
++ install -m 755 $(OUT)/libmujs.$(SO_EXT).$(SO_VERSION) $(DESTDIR)$(libdir)
++ cp -af build/release/libmujs.$(SO_EXT) $(DESTDIR)$(libdir)
++ chmod 0755 $(DESTDIR)$(libdir)
+
+ install: install-static
+
+@@ -137,6 +141,7 @@
+ rm -f $(DESTDIR)$(libdir)/pkgconfig/mujs.pc
+ rm -f $(DESTDIR)$(libdir)/libmujs.a
+ rm -f $(DESTDIR)$(libdir)/libmujs.$(SO_EXT)
++ rm -f $(DESTDIR)$(libdir)/libmujs.$(SO_EXT).$(SO_VERSION)
+
+ tarball:
+ git archive --format=zip --prefix=mujs-$(VERSION)/ HEAD > mujs-$(VERSION).zip
diff --git a/libraries/netcdf/netcdf.SlackBuild b/libraries/netcdf/netcdf.SlackBuild
index 59ab056cf2..8a88fc256e 100644
--- a/libraries/netcdf/netcdf.SlackBuild
+++ b/libraries/netcdf/netcdf.SlackBuild
@@ -2,7 +2,7 @@
# SlackBuild script for netcdf.
#
-# Copyright 2022 Gregory J. L. Tourte <artourter@gmail.com>
+# Copyright 2022-2025 Gregory J. L. Tourte <artourter@gmail.com>
# Copyright 2009 Pierre Cazenave <pwcazenave {at} gmail [dot] com>
# All rights reserved.
#
@@ -29,7 +29,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=netcdf
SRCNAM=netcdf-c
-VERSION=${VERSION:-4.9.2}
+VERSION=${VERSION:-4.9.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/libraries/netcdf/netcdf.info b/libraries/netcdf/netcdf.info
index a739070b06..4ed250b05b 100644
--- a/libraries/netcdf/netcdf.info
+++ b/libraries/netcdf/netcdf.info
@@ -1,8 +1,8 @@
PRGNAM="netcdf"
-VERSION="4.9.2"
+VERSION="4.9.3"
HOMEPAGE="https://www.unidata.ucar.edu/software/netcdf/"
-DOWNLOAD="https://github.com/Unidata/netcdf-c/archive/v4.9.2/netcdf-c-4.9.2.tar.gz"
-MD5SUM="84acd096ab4f3300c20db862eecdf7c7"
+DOWNLOAD="https://github.com/Unidata/netcdf-c/archive/v4.9.3/netcdf-c-4.9.3.tar.gz"
+MD5SUM="bc9eb96e1983bf90fb3a99cc358c5ac3"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="hdf5"
diff --git a/libraries/notcurses/README b/libraries/notcurses/README
new file mode 100644
index 0000000000..2f900dd88d
--- /dev/null
+++ b/libraries/notcurses/README
@@ -0,0 +1,25 @@
+notcurses (Blingful character graphics/TUI library)
+
+notcurses is a library facilitating complex TUIs on modern terminal
+emulators, supporting vivid colors, multimedia, threads, and Unicode to
+the maximum degree possible. Things can be done with Notcurses that
+simply can't be done with NCURSES. It is furthermore fast. It is not a
+source-compatible X/Open Curses implementation, nor a replacement for
+NCURSES on existing systems.
+
+By default, this SlackBuild disables documentation generating via
+pandoc and QR code generation. To enable those features, you must set
+the respective environment variable when running the script, and have
+the necessary dependencies installed, which are listed below.
+
+Options:
+ USE_PANDOC - For documentation generation
+ USE_QRCODEGEN - For QR code generation
+
+To enable all optional features, you could run the SlackBuild script
+like this:
+ USE_PANDOC=yes USE_QRCODEGEN=yes bash notcurses.SlackBuild
+
+Optional dependencies:
+ pandoc/pandoc-bin - For USE_PANDOC
+ QR-Code-generator - For USE_QRCODEGEN
diff --git a/libraries/notcurses/notcurses.SlackBuild b/libraries/notcurses/notcurses.SlackBuild
new file mode 100644
index 0000000000..3cda43b921
--- /dev/null
+++ b/libraries/notcurses/notcurses.SlackBuild
@@ -0,0 +1,114 @@
+#!/bin/bash
+
+# Slackware build script for notcurses
+
+# Copyright 2024-2025 Samuel Young, MO, USA
+# 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=notcurses
+VERSION=${VERSION:-3.0.13}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+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"
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+else
+ SLKCFLAGS="-O2"
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+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 {} \;
+
+use_pandoc="off" ; [ "${USE_PANDOC:-no}" != "no" ] && use_pandoc="on"
+use_qrcodegen="off" ; [ "${USE_QRCODEGEN:-no}" != "no" ] && use_qrcodegen="on"
+
+# notcurses doesn't respect -DLIB_SUFFIX or -DMAN_INSTALL_DIR. It does
+# correctly detect the libdir suffix anyway.
+# We also will have to move man pages to /usr/man manually.
+mkdir -p build
+cd build
+cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DUSE_DEFLATE=off \
+ -DUSE_GPM=on \
+ -DUSE_STATIC=off \
+ -DUSE_PANDOC="${use_pandoc}" \
+ -DUSE_QRCODEGEN="${use_qrcodegen}" \
+ -DCMAKE_BUILD_TYPE=Release ..
+make
+make install/strip DESTDIR=$PKG
+
+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
+
+if [ -d $PKG/usr/share/man ]; then
+ mv $PKG/usr/share/man $PKG/usr/man
+ 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
+fi
+
+mkdir -p $PKG/usr/doc
+mv $PKG/usr/share/doc/$PRGNAM $PKG/usr/doc/$PRGNAM-$VERSION
+rm -rv $PKG/usr/share/doc
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+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/libraries/notcurses/notcurses.info b/libraries/notcurses/notcurses.info
new file mode 100644
index 0000000000..e76d59a70d
--- /dev/null
+++ b/libraries/notcurses/notcurses.info
@@ -0,0 +1,10 @@
+PRGNAM="notcurses"
+VERSION="3.0.13"
+HOMEPAGE="https://notcurses.com/"
+DOWNLOAD="https://github.com/dankamongmen/notcurses/archive/v3.0.13/notcurses-3.0.13.tar.gz"
+MD5SUM="757dfd7851b491d9432e5c7b0c8c2f59"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="doctest"
+MAINTAINER="Samuel Young"
+EMAIL="samyoung12788@gmail.com"
diff --git a/libraries/notcurses/slack-desc b/libraries/notcurses/slack-desc
new file mode 100644
index 0000000000..e035fca3ca
--- /dev/null
+++ b/libraries/notcurses/slack-desc
@@ -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------------------------------------------------------|
+notcurses: notcurses (Blingful character graphics/TUI library)
+notcurses:
+notcurses: notcurses is a library facilitating complex TUIs on modern terminal
+notcurses: emulators, supporting vivid colors, multimedia, threads, and Unicode
+notcurses: to the maximum degree possible. Things can be done with Notcurses
+notcurses: that simply can't be done with NCURSES. It is furthermore fast. It is
+notcurses: not a source-compatible X/Open Curses implementation, nor a
+notcurses: replacement for NCURSES on existing systems.
+notcurses:
+notcurses: Homepage: https://notcurses.com/
+notcurses:
diff --git a/libraries/ode/ode.SlackBuild b/libraries/ode/ode.SlackBuild
index f4f6cd9458..f0fba12f83 100644
--- a/libraries/ode/ode.SlackBuild
+++ b/libraries/ode/ode.SlackBuild
@@ -1,10 +1,9 @@
#!/bin/bash
-# Copyright 2020-2024 Johannes Schoepfer, Germany
-# All rights reserved.
# Written by hollywoodb
-# Modified by the SlackBuilds.org project
# Updated by Alex Word
+# Copyright 2020-2025 Johannes Schoepfer, Germany
+# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
# permitted provided that the following conditions are met:
@@ -26,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=ode
-VERSION=${VERSION:-0.16.5}
+VERSION=${VERSION:-0.16.6}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/libraries/ode/ode.info b/libraries/ode/ode.info
index 981e6d0d8c..ecd38ac218 100644
--- a/libraries/ode/ode.info
+++ b/libraries/ode/ode.info
@@ -1,8 +1,8 @@
PRGNAM="ode"
-VERSION="0.16.5"
+VERSION="0.16.6"
HOMEPAGE="https://ode.org/"
-DOWNLOAD="https://bitbucket.org/odedevs/ode/downloads/ode-0.16.5.tar.gz"
-MD5SUM="a4adcd39237b2ba813184c7148f3c895"
+DOWNLOAD="https://bitbucket.org/odedevs/ode/downloads/ode-0.16.6.tar.gz"
+MD5SUM="410b78019a4de9736026ea7303d66da4"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/ogre/e34ef06bb0d49ce847efe3a80ebe01c9762ea0b1.patch b/libraries/ogre/e34ef06bb0d49ce847efe3a80ebe01c9762ea0b1.patch
new file mode 100644
index 0000000000..b49026b0db
--- /dev/null
+++ b/libraries/ogre/e34ef06bb0d49ce847efe3a80ebe01c9762ea0b1.patch
@@ -0,0 +1,25 @@
+From e34ef06bb0d49ce847efe3a80ebe01c9762ea0b1 Mon Sep 17 00:00:00 2001
+From: Pavel Rojtberg <rojtberg@gmail.com>
+Date: Fri, 11 Feb 2022 20:26:57 +0100
+Subject: [PATCH] CMake: rename FeatureSummary.cmake to avoid name clashes
+
+---
+ CMake/{FeatureSummary.cmake => OgreFeatureSummary.cmake} | 0
+ CMakeLists.txt | 2 +-
+ 2 files changed, 1 insertion(+), 1 deletion(-)
+ rename CMake/{FeatureSummary.cmake => OgreFeatureSummary.cmake} (100%)
+
+diff --git a/CMake/FeatureSummary.cmake b/CMake/OgreFeatureSummary.cmake
+similarity index 100%
+rename from CMake/FeatureSummary.cmake
+rename to CMake/OgreFeatureSummary.cmake
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 8583b8882f0..544a7643d68 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -512,4 +512,4 @@ include(Packaging)
+
+
+ # Show feature summary
+-include(FeatureSummary)
++include(OgreFeatureSummary)
diff --git a/libraries/ogre/ogre.SlackBuild b/libraries/ogre/ogre.SlackBuild
index d5311de09e..ae6fe728a7 100644
--- a/libraries/ogre/ogre.SlackBuild
+++ b/libraries/ogre/ogre.SlackBuild
@@ -96,9 +96,11 @@ 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 \
+ -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 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} +
+
+patch -p1 < $CWD/e34ef06bb0d49ce847efe3a80ebe01c9762ea0b1.patch
mkdir build
cd build
diff --git a/libraries/onevpl/onevpl.SlackBuild b/libraries/onevpl/onevpl.SlackBuild
index a7b40fdbad..2d23d990fd 100644
--- a/libraries/onevpl/onevpl.SlackBuild
+++ b/libraries/onevpl/onevpl.SlackBuild
@@ -34,7 +34,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=onevpl
SRCNAM=libvpl
-VERSION=${VERSION:-2.10.2}
+VERSION=${VERSION:-2.14.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -85,13 +85,6 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
-# Make examples optional
-if [ ${EXAMPLES:-no} == "yes" ]; then
- BUILDEXAMPLES="-DBUILD_EXAMPLES=ON -DINSTALL_EXAMPLE_CODE=ON"
-else
- BUILDEXAMPLES="-DBUILD_EXAMPLES=OFF -DINSTALL_EXAMPLE_CODE=OFF"
-fi
-
# Don't force the doc directory location
patch -p1 < $CWD/dont-force-doc-dir.patch
@@ -105,7 +98,7 @@ cd build
-DVPL_INSTALL_LICENSEDIR=/usr/doc/$PRGNAM-$VERSION/licensing \
-DVPL_INSTALL_EXAMPLEDIR=/usr/doc/$PRGNAM-$VERSION/examples \
-DCMAKE_INSTALL_DOCDIR=/usr/doc/$PRGNAM-$VERSION \
- $BUILDEXAMPLES \
+ -DINSTALL_DEV=ON \
-DCMAKE_BUILD_TYPE=Release ..
make
make install/strip DESTDIR=$PKG
@@ -113,6 +106,11 @@ cd ..
rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+# Make examples optional
+if [ ${EXAMPLES:-no} == "no" ]; then
+ rm -r $PKG/usr/doc/$PRGNAM-$VERSION/examples
+fi
+
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
CONTRIBUTING.md README.md \
diff --git a/libraries/onevpl/onevpl.info b/libraries/onevpl/onevpl.info
index 52b28a6758..86f2e7aac1 100644
--- a/libraries/onevpl/onevpl.info
+++ b/libraries/onevpl/onevpl.info
@@ -1,10 +1,10 @@
PRGNAM="onevpl"
-VERSION="2.10.2"
-HOMEPAGE="https://www.intel.com/content/www/us/en/developer/tools/oneapi/onevpl.html"
+VERSION="2.14.0"
+HOMEPAGE="https://intel.github.io/libvpl/"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://github.com/oneapi-src/oneVPL/archive/refs/tags/v2.10.2/libvpl-2.10.2.tar.gz"
-MD5SUM_x86_64="09d6347097590abd3e952619f5ed6316"
+DOWNLOAD_x86_64="https://github.com/intel/libvpl/archive/refs/tags/v2.14.0/libvpl-2.14.0.tar.gz"
+MD5SUM_x86_64="807bb965093b3396da321d16d6f711f3"
REQUIRES=""
MAINTAINER="Jeremy Hansen"
EMAIL="jebrhansen+SBo@gmail.com"
diff --git a/libraries/openvino/README b/libraries/openvino/README
index 5370ef436e..be1b885a9a 100644
--- a/libraries/openvino/README
+++ b/libraries/openvino/README
@@ -4,6 +4,6 @@ inference.
Supported hardware:
https://docs.openvino.ai/2024/about-openvino/system-requirements.html
-The dependency oneTBB needs to be compiled with its optional
+The dependency "tbb" needs to be compiled with its optional
dependency hwloc, otherwise libtbbbind-2.5 is missing and openvino
will fail to build.
diff --git a/libraries/openvino/openvino.SlackBuild b/libraries/openvino/openvino.SlackBuild
index afaf89b33b..59dc97e785 100644
--- a/libraries/openvino/openvino.SlackBuild
+++ b/libraries/openvino/openvino.SlackBuild
@@ -33,7 +33,7 @@ VERSION_PROTOBUF=21.12
COMMIT_ONEDNN=c8ae8d96e963bd04214858319fa334968e5e73c9
COMMIT_ONEDNN_GPU=4ccd07e3a10e1c08075cf824ac14708245fbc334
COMMIT_MLAS=d1bc25ec4660cddd87804fcf03b2411b5dfb2e94
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/libraries/openvino/openvino.info b/libraries/openvino/openvino.info
index 792ff36e19..3567d7ff6a 100644
--- a/libraries/openvino/openvino.info
+++ b/libraries/openvino/openvino.info
@@ -19,6 +19,6 @@ MD5SUM_x86_64="3d9d1aa5ab807761bfe6a8d896c17d18 \
aec402d3441bb8ecb9c8e75bab6cc102 \
8217ab4ac4af784d7e8b029530c6ab5d \
7fb5fa6217646e5146346e39d9aad6f9"
-REQUIRES="oneTBB xbyak pugixml snappy pybind11 OpenCL-CLHPP"
+REQUIRES="xbyak pugixml tbb snappy pybind11 OpenCL-CLHPP"
MAINTAINER="Johannes Schoepfer"
EMAIL="slackbuilds@schoepfer.info"
diff --git a/libraries/openvkl/README b/libraries/openvkl/README
index 33966d96c4..2cb7bdb28f 100644
--- a/libraries/openvkl/README
+++ b/libraries/openvkl/README
@@ -30,4 +30,4 @@ ISPC will select the best code path for your application.
In addition to the volume kernels, Open VKL provides tutorials and
example renderers to demonstrate how to best use the Open VKL API.
-IMPORTANT: this build requires llvm-17 from Slackware64-15.0/extra
+IMPORTANT: this build requires llvm-20 from Slackware64-15.0/extra
diff --git a/libraries/php-ssh2/README b/libraries/php-ssh2/README
index ed24317286..aac989cf4c 100644
--- a/libraries/php-ssh2/README
+++ b/libraries/php-ssh2/README
@@ -1,5 +1,5 @@
This extension enables PHP to connect to and use SSH2 servers.
-To enable the pgsql extension for php, go to /etc/php.d/ssh2.ini
+To enable the ssh2 extension for php, go to /etc/php.d/ssh2.ini
and uncomment the line:
; extension=ssh2.so
diff --git a/libraries/php-ssh2/php-ssh2.SlackBuild b/libraries/php-ssh2/php-ssh2.SlackBuild
index cad789a789..22f0dace95 100644
--- a/libraries/php-ssh2/php-ssh2.SlackBuild
+++ b/libraries/php-ssh2/php-ssh2.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for php-ssh2
-# Copyright 2012, 2015, 2016 Mario Preksavec, Zagreb, Croatia
+# Copyright 2012, 2025 Mario Preksavec, Zagreb, Croatia
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -26,8 +26,8 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=php-ssh2
SRCNAM=ssh2
-VERSION=${VERSION:-1.3.1}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-1.4.1}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -39,9 +39,6 @@ if [ -z "$ARCH" ]; then
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
diff --git a/libraries/php-ssh2/php-ssh2.info b/libraries/php-ssh2/php-ssh2.info
index 2b437b48e4..7ce6763b43 100644
--- a/libraries/php-ssh2/php-ssh2.info
+++ b/libraries/php-ssh2/php-ssh2.info
@@ -1,8 +1,8 @@
PRGNAM="php-ssh2"
-VERSION="1.3.1"
+VERSION="1.4.1"
HOMEPAGE="http://pecl.php.net/package/ssh2"
-DOWNLOAD="http://pecl.php.net/get/ssh2-1.3.1.tgz"
-MD5SUM="aa29046de73f1036aea66b4a70f6f598"
+DOWNLOAD="http://pecl.php.net/get/ssh2-1.4.1.tgz"
+MD5SUM="9d655fb9e83aec24fcd6f943ddf94000"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/protobuf-c/711.patch b/libraries/protobuf-c/711.patch
deleted file mode 100644
index 1be8f50fa5..0000000000
--- a/libraries/protobuf-c/711.patch
+++ /dev/null
@@ -1,118 +0,0 @@
-From e3acc96ca2a00ef715fa2caa659f677cad8a9fa0 Mon Sep 17 00:00:00 2001
-From: Robert Edmonds <edmonds@users.noreply.github.com>
-Date: Wed, 20 Mar 2024 21:48:10 -0400
-Subject: [PATCH 1/3] FileGenerator::GenerateHeader(): Set `min_header_version`
- unconditionally
-
-Previously, we were conditionally trying to set `min_header_version` to
-the lowest possible value, and relying on a "legacy" Google interface to
-determine the file descriptor's syntax version as part of that
-determination.
-
-Instead, simply bump the minimum version to 1003000 (1.3.0). This
-release was almost 7 years ago. In practice protobuf-c users should not
-be shipping pre-compiled .pb-c.c/.pb-c.h files, anyway.
----
- protoc-c/c_file.cc | 9 +--------
- 1 file changed, 1 insertion(+), 8 deletions(-)
-
-diff --git a/protoc-c/c_file.cc b/protoc-c/c_file.cc
-index ca0ad34e..c6d8a240 100644
---- a/protoc-c/c_file.cc
-+++ b/protoc-c/c_file.cc
-@@ -117,14 +117,7 @@ FileGenerator::~FileGenerator() {}
- void FileGenerator::GenerateHeader(io::Printer* printer) {
- std::string filename_identifier = FilenameIdentifier(file_->name());
-
-- int min_header_version = 1000000;
--#if GOOGLE_PROTOBUF_VERSION >= 4023000
-- if (FileDescriptorLegacy(file_).syntax() == FileDescriptorLegacy::SYNTAX_PROTO3) {
--#else
-- if (file_->syntax() == FileDescriptor::SYNTAX_PROTO3) {
--#endif
-- min_header_version = 1003000;
-- }
-+ const int min_header_version = 1003000;
-
- // Generate top of header.
- printer->Print(
-
-From 1b4b205d87b1bc6f575db1fd1cbbb334a694abe8 Mon Sep 17 00:00:00 2001
-From: Robert Edmonds <edmonds@users.noreply.github.com>
-Date: Wed, 20 Mar 2024 22:25:54 -0400
-Subject: [PATCH 2/3] Reimplement FieldSyntax() to maximize compatibility
- across protobuf versions
-
-Recent versions of Google protobuf have broken the interfaces for
-determining the syntax version of a .proto file. The current protobuf-c
-1.5.0 release does not compile with Google protobuf 26.0 due to the most
-recentage breakage. There is a possible workaround involving the Google
-protobuf `FileDescriptorLegacy` class, which is documented as:
-
-// TODO Remove this deprecated API entirely.
-
-So we probably shouldn't rely on it.
-
-Instead, this commit obtains the `FileDescriptorProto` corresponding
-to the passed in `FieldDescriptor` and interrogates the `syntax` field
-directly. This is a single implementation with no version-specific
-workarounds. Hopefully this won't break in the next Google protobuf
-release.
-
-I tested the `FieldSyntax()` implementation in this commit across a
-number of different Google protobuf releases and found that it worked
-(`make && make check`) on all of them:
-
-- Google protobuf 3.6.1.3 (Ubuntu 20.04)
-- Google protobuf 3.12.4 (Ubuntu 22.04)
-- Google protobuf 3.21.12 (Debian 12 + Debian unstable)
-- Google protobuf 3.25.2 (Debian experimental)
-- Google protobuf 26.1-dev
----
- protoc-c/c_helpers.h | 24 ++++++++++++++----------
- 1 file changed, 14 insertions(+), 10 deletions(-)
-
-diff --git a/protoc-c/c_helpers.h b/protoc-c/c_helpers.h
-index 062d330b..be28b601 100644
---- a/protoc-c/c_helpers.h
-+++ b/protoc-c/c_helpers.h
-@@ -70,10 +70,6 @@
- #include <protobuf-c/protobuf-c.pb.h>
- #include <google/protobuf/io/printer.h>
-
--#if GOOGLE_PROTOBUF_VERSION >= 4023000
--# include <google/protobuf/descriptor_legacy.h>
--#endif
--
- namespace google {
- namespace protobuf {
- namespace compiler {
-@@ -173,13 +169,21 @@ struct NameIndex
- int compare_name_indices_by_name(const void*, const void*);
-
- // Return the syntax version of the file containing the field.
--// This wrapper is needed to be able to compile against protobuf2.
- inline int FieldSyntax(const FieldDescriptor* field) {
--#if GOOGLE_PROTOBUF_VERSION >= 4023000
-- return FileDescriptorLegacy(field->file()).syntax() == FileDescriptorLegacy::SYNTAX_PROTO3 ? 3 : 2;
--#else
-- return field->file()->syntax() == FileDescriptor::SYNTAX_PROTO3 ? 3 : 2;
--#endif
-+ auto proto = FileDescriptorProto();
-+ field->file()->CopyTo(&proto);
-+
-+ if (proto.has_syntax()) {
-+ auto syntax = proto.syntax();
-+ assert(syntax == "proto2" || syntax == "proto3");
-+ if (syntax == "proto2") {
-+ return 2;
-+ } else if (syntax == "proto3") {
-+ return 3;
-+ }
-+ }
-+
-+ return 2;
- }
-
- // Work around changes in protobuf >= 22.x without breaking compilation against
-
diff --git a/libraries/protobuf-c/762.patch b/libraries/protobuf-c/762.patch
new file mode 100644
index 0000000000..3b660f84d7
--- /dev/null
+++ b/libraries/protobuf-c/762.patch
@@ -0,0 +1,1443 @@
+From b28683f8027bf1e886b748b5603eb16d203b5a92 Mon Sep 17 00:00:00 2001
+From: Robert Edmonds <edmonds@users.noreply.github.com>
+Date: Sat, 8 Feb 2025 18:18:33 -0500
+Subject: [PATCH 01/11] protoc-gen-c/c_helpers.h: Move compat defines into new
+ header file compat.h
+
+---
+ protoc-gen-c/c_field.cc | 1 +
+ protoc-gen-c/c_helpers.cc | 1 +
+ protoc-gen-c/c_helpers.h | 10 -------
+ protoc-gen-c/c_message.cc | 1 +
+ protoc-gen-c/c_primitive_field.cc | 1 +
+ protoc-gen-c/compat.h | 46 +++++++++++++++++++++++++++++++
+ protoc-gen-c/main.cc | 1 +
+ 7 files changed, 51 insertions(+), 10 deletions(-)
+ create mode 100644 protoc-gen-c/compat.h
+
+diff --git a/protoc-gen-c/c_field.cc b/protoc-gen-c/c_field.cc
+index 5e79967b..d6d8597e 100644
+--- a/protoc-gen-c/c_field.cc
++++ b/protoc-gen-c/c_field.cc
+@@ -74,6 +74,7 @@
+ #include "c_message_field.h"
+ #include "c_primitive_field.h"
+ #include "c_string_field.h"
++#include "compat.h"
+
+ namespace protobuf_c {
+
+diff --git a/protoc-gen-c/c_helpers.cc b/protoc-gen-c/c_helpers.cc
+index 5edcf904..c38843f8 100644
+--- a/protoc-gen-c/c_helpers.cc
++++ b/protoc-gen-c/c_helpers.cc
+@@ -73,6 +73,7 @@
+ #include <google/protobuf/stubs/common.h>
+
+ #include "c_helpers.h"
++#include "compat.h"
+
+ namespace protobuf_c {
+
+diff --git a/protoc-gen-c/c_helpers.h b/protoc-gen-c/c_helpers.h
+index 943676e9..e69504bb 100644
+--- a/protoc-gen-c/c_helpers.h
++++ b/protoc-gen-c/c_helpers.h
+@@ -186,16 +186,6 @@ inline int FieldSyntax(const google::protobuf::FieldDescriptor* field) {
+ return 2;
+ }
+
+-// Work around changes in protobuf >= 22.x without breaking compilation against
+-// older protobuf versions.
+-#if GOOGLE_PROTOBUF_VERSION >= 4022000
+-# define GOOGLE_ARRAYSIZE ABSL_ARRAYSIZE
+-# define GOOGLE_CHECK_EQ ABSL_CHECK_EQ
+-# define GOOGLE_CHECK_EQ ABSL_CHECK_EQ
+-# define GOOGLE_DCHECK_GE ABSL_DCHECK_GE
+-# define GOOGLE_LOG ABSL_LOG
+-#endif
+-
+ } // namespace protobuf_c
+
+ #endif // PROTOBUF_C_PROTOC_GEN_C_C_HELPERS_H__
+diff --git a/protoc-gen-c/c_message.cc b/protoc-gen-c/c_message.cc
+index d4a9a01e..46413873 100644
+--- a/protoc-gen-c/c_message.cc
++++ b/protoc-gen-c/c_message.cc
+@@ -78,6 +78,7 @@
+ #include "c_extension.h"
+ #include "c_helpers.h"
+ #include "c_message.h"
++#include "compat.h"
+
+ namespace protobuf_c {
+
+diff --git a/protoc-gen-c/c_primitive_field.cc b/protoc-gen-c/c_primitive_field.cc
+index 253b00bd..588f60e6 100644
+--- a/protoc-gen-c/c_primitive_field.cc
++++ b/protoc-gen-c/c_primitive_field.cc
+@@ -67,6 +67,7 @@
+
+ #include "c_helpers.h"
+ #include "c_primitive_field.h"
++#include "compat.h"
+
+ namespace protobuf_c {
+
+diff --git a/protoc-gen-c/compat.h b/protoc-gen-c/compat.h
+new file mode 100644
+index 00000000..2ee78281
+--- /dev/null
++++ b/protoc-gen-c/compat.h
+@@ -0,0 +1,46 @@
++// Copyright (c) 2008-2025, Dave Benson and the protobuf-c authors.
++// All rights reserved.
++//
++// Redistribution and use in source and binary forms, with or without
++// modification, are permitted provided that the following conditions are
++// met:
++//
++// * Redistributions of source code must retain the above copyright
++// notice, this list of conditions and the following disclaimer.
++//
++// * Redistributions in binary form must reproduce the above
++// copyright notice, this list of conditions and the following disclaimer
++// in the documentation and/or other materials provided with the
++// distribution.
++//
++// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
++// "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 COPYRIGHT
++// OWNER OR CONTRIBUTORS 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.
++
++#ifndef PROTOBUF_C_PROTOC_GEN_C_COMPAT_H__
++#define PROTOBUF_C_PROTOC_GEN_C_COMPAT_H__
++
++#if GOOGLE_PROTOBUF_VERSION >= 4022000
++# define GOOGLE_ARRAYSIZE ABSL_ARRAYSIZE
++# define GOOGLE_CHECK_EQ ABSL_CHECK_EQ
++# define GOOGLE_DCHECK_GE ABSL_DCHECK_GE
++# define GOOGLE_LOG ABSL_LOG
++#endif
++
++namespace protobuf_c {
++
++namespace compat {
++
++} // namespace compat
++
++} // namespace protobuf_c
++
++#endif // PROTOBUF_C_PROTOC_GEN_C_COMPAT_H__
+diff --git a/protoc-gen-c/main.cc b/protoc-gen-c/main.cc
+index 0656c113..5ab929d3 100644
+--- a/protoc-gen-c/main.cc
++++ b/protoc-gen-c/main.cc
+@@ -32,6 +32,7 @@
+
+ #include "c_generator.h"
+ #include "c_helpers.h"
++#include "compat.h"
+
+ int main(int argc, char* argv[]) {
+ protobuf_c::CGenerator c_generator;
+
+From 1678f1fba6f2d3e5c1db2817495ddcd72bd4e87b Mon Sep 17 00:00:00 2001
+From: Robert Edmonds <edmonds@users.noreply.github.com>
+Date: Sat, 8 Feb 2025 20:09:03 -0500
+Subject: [PATCH 02/11] protoc-gen-c/compat.h: Add `compat::StringView` type
+
+protobuf >= 30.x replaces `const std::string&` in various APIs with
+its own string view type that may actually be a `absl::string_view`.
+Introduce our own `compat::StringView` type that we can use instead
+of `const std::string&` in order to support compiling across multiple
+protobuf versions.
+---
+ protoc-gen-c/compat.h | 8 ++++++++
+ 1 file changed, 8 insertions(+)
+
+diff --git a/protoc-gen-c/compat.h b/protoc-gen-c/compat.h
+index 2ee78281..fe8041b5 100644
+--- a/protoc-gen-c/compat.h
++++ b/protoc-gen-c/compat.h
+@@ -28,6 +28,8 @@
+ #ifndef PROTOBUF_C_PROTOC_GEN_C_COMPAT_H__
+ #define PROTOBUF_C_PROTOC_GEN_C_COMPAT_H__
+
++#include <string>
++
+ #if GOOGLE_PROTOBUF_VERSION >= 4022000
+ # define GOOGLE_ARRAYSIZE ABSL_ARRAYSIZE
+ # define GOOGLE_CHECK_EQ ABSL_CHECK_EQ
+@@ -39,6 +41,12 @@ namespace protobuf_c {
+
+ namespace compat {
+
++#if GOOGLE_PROTOBUF_VERSION >= 6030000
++typedef google::protobuf::internal::DescriptorStringView StringView;
++#else
++typedef const std::string& StringView;
++#endif
++
+ } // namespace compat
+
+ } // namespace protobuf_c
+
+From db5252c131c82fb48ee599179b6989a577b7fbc8 Mon Sep 17 00:00:00 2001
+From: Robert Edmonds <edmonds@users.noreply.github.com>
+Date: Sat, 8 Feb 2025 20:13:44 -0500
+Subject: [PATCH 03/11] Remove some unused functions
+
+---
+ protoc-gen-c/c_helpers.cc | 64 ---------------------------------------
+ protoc-gen-c/c_helpers.h | 3 --
+ 2 files changed, 67 deletions(-)
+
+diff --git a/protoc-gen-c/c_helpers.cc b/protoc-gen-c/c_helpers.cc
+index c38843f8..bbb4a615 100644
+--- a/protoc-gen-c/c_helpers.cc
++++ b/protoc-gen-c/c_helpers.cc
+@@ -90,14 +90,6 @@ namespace protobuf_c {
+ #pragma warning(disable:4996)
+ #endif
+
+-std::string DotsToUnderscores(const std::string& name) {
+- return StringReplace(name, ".", "_", true);
+-}
+-
+-std::string DotsToColons(const std::string& name) {
+- return StringReplace(name, ".", "::", true);
+-}
+-
+ std::string SimpleFtoa(float f) {
+ char buf[100];
+ snprintf(buf,sizeof(buf),"%.*g", FLT_DIG, f);
+@@ -333,11 +325,6 @@ std::string FilenameIdentifier(const std::string& filename) {
+ return result;
+ }
+
+-// Return the name of the BuildDescriptors() function for a given file.
+-std::string GlobalBuildDescriptorsName(const std::string& filename) {
+- return "proto_BuildDescriptors_" + FilenameIdentifier(filename);
+-}
+-
+ std::string GetLabelName(google::protobuf::FieldDescriptor::Label label) {
+ switch (label) {
+ case google::protobuf::FieldDescriptor::LABEL_OPTIONAL: return "optional";
+@@ -392,57 +379,6 @@ WriteIntRanges(google::protobuf::io::Printer* printer, int n_values, const int *
+ }
+ }
+
+-
+-
+-// XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXx
+-// XXXXXXXXX this stuff is copied from strutils.cc !!!! XXXXXXXXXXXXXXXXXXXXXXXXXXXXx
+-// XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXx
+-// ----------------------------------------------------------------------
+-// StringReplace()
+-// Replace the "old" pattern with the "new" pattern in a string,
+-// and append the result to "res". If replace_all is false,
+-// it only replaces the first instance of "old."
+-// ----------------------------------------------------------------------
+-
+-void StringReplace(const std::string& s, const std::string& oldsub,
+- const std::string& newsub, bool replace_all,
+- std::string* res) {
+- if (oldsub.empty()) {
+- res->append(s); // if empty, append the given string.
+- return;
+- }
+-
+- std::string::size_type start_pos = 0;
+- std::string::size_type pos;
+- do {
+- pos = s.find(oldsub, start_pos);
+- if (pos == std::string::npos) {
+- break;
+- }
+- res->append(s, start_pos, pos - start_pos);
+- res->append(newsub);
+- start_pos = pos + oldsub.size(); // start searching again after the "old"
+- } while (replace_all);
+- res->append(s, start_pos, s.length() - start_pos);
+-}
+-
+-
+-// ----------------------------------------------------------------------
+-// StringReplace()
+-// Give me a string and two patterns "old" and "new", and I replace
+-// the first instance of "old" in the string with "new", if it
+-// exists. If "global" is true; call this repeatedly until it
+-// fails. RETURN a new string, regardless of whether the replacement
+-// happened or not.
+-// ----------------------------------------------------------------------
+-
+-std::string StringReplace(const std::string& s, const std::string& oldsub,
+- const std::string& newsub, bool replace_all) {
+- std::string ret;
+- StringReplace(s, oldsub, newsub, replace_all, &ret);
+- return ret;
+-}
+-
+ // ----------------------------------------------------------------------
+ // SplitStringUsing()
+ // Split a string using a character delimiter. Append the components
+diff --git a/protoc-gen-c/c_helpers.h b/protoc-gen-c/c_helpers.h
+index e69504bb..377d4272 100644
+--- a/protoc-gen-c/c_helpers.h
++++ b/protoc-gen-c/c_helpers.h
+@@ -150,9 +150,6 @@ const char* DeclaredTypeMethodName(google::protobuf::FieldDescriptor::Type type)
+ // Convert a file name into a valid identifier.
+ std::string FilenameIdentifier(const std::string& filename);
+
+-// Return the name of the BuildDescriptors() function for a given file.
+-std::string GlobalBuildDescriptorsName(const std::string& filename);
+-
+ // return 'required', 'optional', or 'repeated'
+ std::string GetLabelName(google::protobuf::FieldDescriptor::Label label);
+
+
+From bc2cb66d908f016dd3f7082c8a6ad7c58bc03412 Mon Sep 17 00:00:00 2001
+From: Robert Edmonds <edmonds@users.noreply.github.com>
+Date: Sat, 8 Feb 2025 20:18:05 -0500
+Subject: [PATCH 04/11] Use `compat::StringView` type across various function
+ signatures
+
+---
+ protoc-gen-c/c_helpers.cc | 44 +++++++++++++++++++++------------------
+ protoc-gen-c/c_helpers.h | 36 ++++++++++++++++----------------
+ 2 files changed, 42 insertions(+), 38 deletions(-)
+
+diff --git a/protoc-gen-c/c_helpers.cc b/protoc-gen-c/c_helpers.cc
+index bbb4a615..c759c8c2 100644
+--- a/protoc-gen-c/c_helpers.cc
++++ b/protoc-gen-c/c_helpers.cc
+@@ -96,6 +96,7 @@ std::string SimpleFtoa(float f) {
+ buf[sizeof(buf)-1] = 0; /* should NOT be necessary */
+ return buf;
+ }
++
+ std::string SimpleDtoa(double d) {
+ char buf[100];
+ snprintf(buf,sizeof(buf),"%.*g", DBL_DIG, d);
+@@ -103,7 +104,7 @@ std::string SimpleDtoa(double d) {
+ return buf;
+ }
+
+-std::string CamelToUpper(const std::string &name) {
++std::string CamelToUpper(compat::StringView name) {
+ bool was_upper = true; // suppress initial _
+ std::string rv = "";
+ int len = name.length();
+@@ -120,7 +121,8 @@ std::string CamelToUpper(const std::string &name) {
+ }
+ return rv;
+ }
+-std::string CamelToLower(const std::string &name) {
++
++std::string CamelToLower(compat::StringView name) {
+ bool was_upper = true; // suppress initial _
+ std::string rv = "";
+ int len = name.length();
+@@ -138,8 +140,7 @@ std::string CamelToLower(const std::string &name) {
+ return rv;
+ }
+
+-
+-std::string ToUpper(const std::string &name) {
++std::string ToUpper(compat::StringView name) {
+ std::string rv = "";
+ int len = name.length();
+ for (int i = 0; i < len; i++) {
+@@ -147,7 +148,8 @@ std::string ToUpper(const std::string &name) {
+ }
+ return rv;
+ }
+-std::string ToLower(const std::string &name) {
++
++std::string ToLower(compat::StringView name) {
+ std::string rv = "";
+ int len = name.length();
+ for (int i = 0; i < len; i++) {
+@@ -155,7 +157,8 @@ std::string ToLower(const std::string &name) {
+ }
+ return rv;
+ }
+-std::string ToCamel(const std::string &name) {
++
++std::string ToCamel(compat::StringView name) {
+ std::string rv = "";
+ int len = name.length();
+ bool next_is_upper = true;
+@@ -172,7 +175,7 @@ std::string ToCamel(const std::string &name) {
+ return rv;
+ }
+
+-std::string OverrideFullName(const std::string &full_name, const google::protobuf::FileDescriptor* file) {
++std::string OverrideFullName(compat::StringView full_name, const google::protobuf::FileDescriptor* file) {
+ const ProtobufCFileOptions opt = file->options().GetExtension(pb_c_file);
+ if (!opt.has_c_package())
+ return full_name;
+@@ -184,7 +187,7 @@ std::string OverrideFullName(const std::string &full_name, const google::protobu
+ return new_name + full_name.substr(file->package().length());
+ }
+
+-std::string FullNameToLower(const std::string &full_name, const google::protobuf::FileDescriptor* file) {
++std::string FullNameToLower(compat::StringView full_name, const google::protobuf::FileDescriptor* file) {
+ std::vector<std::string> pieces;
+ SplitStringUsing(OverrideFullName(full_name, file), ".", &pieces);
+ std::string rv = "";
+@@ -195,7 +198,8 @@ std::string FullNameToLower(const std::string &full_name, const google::protobuf
+ }
+ return rv;
+ }
+-std::string FullNameToUpper(const std::string &full_name, const google::protobuf::FileDescriptor* file) {
++
++std::string FullNameToUpper(compat::StringView full_name, const google::protobuf::FileDescriptor* file) {
+ std::vector<std::string> pieces;
+ SplitStringUsing(OverrideFullName(full_name, file), ".", &pieces);
+ std::string rv = "";
+@@ -206,7 +210,8 @@ std::string FullNameToUpper(const std::string &full_name, const google::protobuf
+ }
+ return rv;
+ }
+-std::string FullNameToC(const std::string &full_name, const google::protobuf::FileDescriptor* file) {
++
++std::string FullNameToC(compat::StringView full_name, const google::protobuf::FileDescriptor* file) {
+ std::vector<std::string> pieces;
+ SplitStringUsing(OverrideFullName(full_name, file), ".", &pieces);
+ std::string rv = "";
+@@ -248,7 +253,7 @@ void PrintComment(google::protobuf::io::Printer* printer, std::string comment)
+ }
+ }
+
+-std::string ConvertToSpaces(const std::string &input) {
++std::string ConvertToSpaces(compat::StringView input) {
+ return std::string(input.size(), ' ');
+ }
+
+@@ -259,8 +264,7 @@ int compare_name_indices_by_name(const void *a, const void *b)
+ return strcmp (ni_a->name, ni_b->name);
+ }
+
+-
+-std::string CEscape(const std::string& src);
++std::string CEscape(compat::StringView src);
+
+ const char* const kKeywordList[] = {
+ "and", "and_eq", "asm", "auto", "bitand", "bitor", "bool", "break", "case",
+@@ -300,7 +304,7 @@ std::string FieldDeprecated(const google::protobuf::FieldDescriptor* field) {
+ return "";
+ }
+
+-std::string StripProto(const std::string& filename) {
++std::string StripProto(compat::StringView filename) {
+ if (HasSuffixString(filename, ".protodevel")) {
+ return StripSuffixString(filename, ".protodevel");
+ } else {
+@@ -309,7 +313,7 @@ std::string StripProto(const std::string& filename) {
+ }
+
+ // Convert a file name into a valid identifier.
+-std::string FilenameIdentifier(const std::string& filename) {
++std::string FilenameIdentifier(compat::StringView filename) {
+ std::string result;
+ for (unsigned i = 0; i < filename.size(); i++) {
+ if (isalnum(filename[i])) {
+@@ -335,7 +339,7 @@ std::string GetLabelName(google::protobuf::FieldDescriptor::Label label) {
+ }
+
+ unsigned
+-WriteIntRanges(google::protobuf::io::Printer* printer, int n_values, const int *values, const std::string &name)
++WriteIntRanges(google::protobuf::io::Printer* printer, int n_values, const int *values, compat::StringView name)
+ {
+ std::map<std::string, std::string> vars;
+ vars["name"] = name;
+@@ -389,7 +393,7 @@ WriteIntRanges(google::protobuf::io::Printer* printer, int n_values, const int *
+ // ----------------------------------------------------------------------
+ template <typename ITR>
+ static inline
+-void SplitStringToIteratorUsing(const std::string& full,
++void SplitStringToIteratorUsing(compat::StringView full,
+ const char* delim,
+ ITR& result) {
+ // Optimize the common case where delim is a single character.
+@@ -422,7 +426,7 @@ void SplitStringToIteratorUsing(const std::string& full,
+ }
+ }
+
+-void SplitStringUsing(const std::string& full,
++void SplitStringUsing(compat::StringView full,
+ const char* delim,
+ std::vector<std::string>* result) {
+ std::back_insert_iterator< std::vector<std::string> > it(*result);
+@@ -435,7 +439,6 @@ char* FastHexToBuffer(int i, char* buffer)
+ return buffer;
+ }
+
+-
+ static int CEscapeInternal(const char* src, int src_len, char* dest,
+ int dest_len, bool use_hex) {
+ const char* src_end = src + src_len;
+@@ -478,7 +481,8 @@ static int CEscapeInternal(const char* src, int src_len, char* dest,
+ dest[used] = '\0'; // doesn't count towards return value though
+ return used;
+ }
+-std::string CEscape(const std::string& src) {
++
++std::string CEscape(compat::StringView src) {
+ const int dest_length = src.size() * 4 + 1; // Maximum possible expansion
+ std::unique_ptr<char[]> dest(new char[dest_length]);
+ const int len = CEscapeInternal(src.data(), src.size(),
+diff --git a/protoc-gen-c/c_helpers.h b/protoc-gen-c/c_helpers.h
+index 377d4272..ccd39ca2 100644
+--- a/protoc-gen-c/c_helpers.h
++++ b/protoc-gen-c/c_helpers.h
+@@ -73,6 +73,8 @@
+
+ #include <protobuf-c/protobuf-c.pb.h>
+
++#include "compat.h"
++
+ namespace protobuf_c {
+
+ // --- Borrowed from stubs. ---
+@@ -84,11 +86,10 @@ template <typename T> std::string SimpleItoa(T n) {
+
+ std::string SimpleFtoa(float f);
+ std::string SimpleDtoa(double f);
+-void SplitStringUsing(const std::string &str, const char *delim, std::vector<std::string> *out);
+-std::string CEscape(const std::string& src);
+-std::string StringReplace(const std::string& s, const std::string& oldsub, const std::string& newsub, bool replace_all);
+-inline bool HasSuffixString(const std::string& str, const std::string& suffix) { return str.size() >= suffix.size() && str.compare(str.size() - suffix.size(), suffix.size(), suffix) == 0; }
+-inline std::string StripSuffixString(const std::string& str, const std::string& suffix) { if (HasSuffixString(str, suffix)) { return str.substr(0, str.size() - suffix.size()); } else { return str; } }
++void SplitStringUsing(compat::StringView str, const char *delim, std::vector<std::string> *out);
++std::string CEscape(compat::StringView src);
++inline bool HasSuffixString(compat::StringView str, compat::StringView suffix) { return str.size() >= suffix.size() && str.compare(str.size() - suffix.size(), suffix.size(), suffix) == 0; }
++inline std::string StripSuffixString(compat::StringView str, compat::StringView suffix) { if (HasSuffixString(str, suffix)) { return str.substr(0, str.size() - suffix.size()); } else { return str; } }
+ char* FastHexToBuffer(int i, char* buffer);
+
+
+@@ -110,31 +111,31 @@ inline const google::protobuf::Descriptor* FieldScope(const google::protobuf::Fi
+
+ // convert a CamelCase class name into an all uppercase affair
+ // with underscores separating words, e.g. MyClass becomes MY_CLASS.
+-std::string CamelToUpper(const std::string &class_name);
+-std::string CamelToLower(const std::string &class_name);
++std::string CamelToUpper(compat::StringView class_name);
++std::string CamelToLower(compat::StringView class_name);
+
+ // lowercased, underscored name to camel case
+-std::string ToCamel(const std::string &name);
++std::string ToCamel(compat::StringView name);
+
+ // lowercase the string
+-std::string ToLower(const std::string &class_name);
+-std::string ToUpper(const std::string &class_name);
++std::string ToLower(compat::StringView class_name);
++std::string ToUpper(compat::StringView class_name);
+
+ // full_name() to lowercase with underscores
+-std::string FullNameToLower(const std::string &full_name, const google::protobuf::FileDescriptor *file);
+-std::string FullNameToUpper(const std::string &full_name, const google::protobuf::FileDescriptor *file);
++std::string FullNameToLower(compat::StringView full_name, const google::protobuf::FileDescriptor *file);
++std::string FullNameToUpper(compat::StringView full_name, const google::protobuf::FileDescriptor *file);
+
+ // full_name() to c-typename (with underscores for packages, otherwise camel case)
+-std::string FullNameToC(const std::string &class_name, const google::protobuf::FileDescriptor *file);
++std::string FullNameToC(compat::StringView class_name, const google::protobuf::FileDescriptor *file);
+
+ // Splits, indents, formats, and prints comment lines
+ void PrintComment(google::protobuf::io::Printer* printer, std::string comment);
+
+ // make a string of spaces as long as input
+-std::string ConvertToSpaces(const std::string &input);
++std::string ConvertToSpaces(compat::StringView input);
+
+ // Strips ".proto" or ".protodevel" from the end of a filename.
+-std::string StripProto(const std::string& filename);
++std::string StripProto(compat::StringView filename);
+
+ // Get the C++ type name for a primitive type (e.g. "double", "::google::protobuf::int32", etc.).
+ // Note: non-built-in type names will be qualified, meaning they will start
+@@ -148,15 +149,14 @@ const char* PrimitiveTypeName(google::protobuf::FieldDescriptor::CppType type);
+ const char* DeclaredTypeMethodName(google::protobuf::FieldDescriptor::Type type);
+
+ // Convert a file name into a valid identifier.
+-std::string FilenameIdentifier(const std::string& filename);
++std::string FilenameIdentifier(compat::StringView filename);
+
+ // return 'required', 'optional', or 'repeated'
+ std::string GetLabelName(google::protobuf::FieldDescriptor::Label label);
+
+-
+ // write IntRanges entries for a bunch of sorted values.
+ // returns the number of ranges there are to bsearch.
+-unsigned WriteIntRanges(google::protobuf::io::Printer* printer, int n_values, const int *values, const std::string &name);
++unsigned WriteIntRanges(google::protobuf::io::Printer* printer, int n_values, const int *values, compat::StringView name);
+
+ struct NameIndex
+ {
+
+From 75f1c32cc429233a3726358c999009f9ea373b45 Mon Sep 17 00:00:00 2001
+From: Robert Edmonds <edmonds@users.noreply.github.com>
+Date: Sat, 8 Feb 2025 20:25:43 -0500
+Subject: [PATCH 05/11] Convert string views to owned strings where necessary
+
+---
+ protoc-gen-c/c_enum.cc | 2 +-
+ protoc-gen-c/c_enum_field.cc | 2 +-
+ protoc-gen-c/c_helpers.cc | 8 ++++----
+ protoc-gen-c/c_helpers.h | 3 +--
+ 4 files changed, 7 insertions(+), 8 deletions(-)
+
+diff --git a/protoc-gen-c/c_enum.cc b/protoc-gen-c/c_enum.cc
+index 9212ab82..311e4c86 100644
+--- a/protoc-gen-c/c_enum.cc
++++ b/protoc-gen-c/c_enum.cc
+@@ -152,7 +152,7 @@ void EnumGenerator::GenerateValueInitializer(google::protobuf::io::Printer *prin
+ descriptor_->file()->options().optimize_for() ==
+ google::protobuf::FileOptions_OptimizeMode_CODE_SIZE;
+ vars["enum_value_name"] = vd->name();
+- vars["c_enum_value_name"] = FullNameToUpper(descriptor_->full_name(), descriptor_->file()) + "__" + vd->name();
++ vars["c_enum_value_name"] = FullNameToUpper(descriptor_->full_name(), descriptor_->file()) + "__" + std::string(vd->name());
+ vars["value"] = SimpleItoa(vd->number());
+ if (optimize_code_size)
+ printer->Print(vars, " { NULL, NULL, $value$ }, /* CODE_SIZE */\n");
+diff --git a/protoc-gen-c/c_enum_field.cc b/protoc-gen-c/c_enum_field.cc
+index 0926ae59..c3111f50 100644
+--- a/protoc-gen-c/c_enum_field.cc
++++ b/protoc-gen-c/c_enum_field.cc
+@@ -78,7 +78,7 @@ void SetEnumVariables(const google::protobuf::FieldDescriptor* descriptor,
+ (*variables)["type"] = FullNameToC(descriptor->enum_type()->full_name(), descriptor->enum_type()->file());
+ const google::protobuf::EnumValueDescriptor* default_value = descriptor->default_value_enum();
+ (*variables)["default"] = FullNameToUpper(default_value->type()->full_name(), default_value->type()->file())
+- + "__" + default_value->name();
++ + "__" + std::string(default_value->name());
+ (*variables)["deprecated"] = FieldDeprecated(descriptor);
+ }
+
+diff --git a/protoc-gen-c/c_helpers.cc b/protoc-gen-c/c_helpers.cc
+index c759c8c2..1aecef93 100644
+--- a/protoc-gen-c/c_helpers.cc
++++ b/protoc-gen-c/c_helpers.cc
+@@ -178,13 +178,13 @@ std::string ToCamel(compat::StringView name) {
+ std::string OverrideFullName(compat::StringView full_name, const google::protobuf::FileDescriptor* file) {
+ const ProtobufCFileOptions opt = file->options().GetExtension(pb_c_file);
+ if (!opt.has_c_package())
+- return full_name;
++ return std::string(full_name);
+
+ std::string new_name = opt.c_package();
+ if (file->package().empty())
+ new_name += ".";
+
+- return new_name + full_name.substr(file->package().length());
++ return new_name + std::string(full_name.substr(file->package().length()));
+ }
+
+ std::string FullNameToLower(compat::StringView full_name, const google::protobuf::FileDescriptor* file) {
+@@ -418,10 +418,10 @@ void SplitStringToIteratorUsing(compat::StringView full,
+ while (begin_index != std::string::npos) {
+ end_index = full.find_first_of(delim, begin_index);
+ if (end_index == std::string::npos) {
+- *result++ = full.substr(begin_index);
++ *result++ = std::string(full.substr(begin_index));
+ return;
+ }
+- *result++ = full.substr(begin_index, (end_index - begin_index));
++ *result++ = std::string(full.substr(begin_index, (end_index - begin_index)));
+ begin_index = full.find_first_not_of(delim, end_index);
+ }
+ }
+diff --git a/protoc-gen-c/c_helpers.h b/protoc-gen-c/c_helpers.h
+index ccd39ca2..985e4db6 100644
+--- a/protoc-gen-c/c_helpers.h
++++ b/protoc-gen-c/c_helpers.h
+@@ -89,10 +89,9 @@ std::string SimpleDtoa(double f);
+ void SplitStringUsing(compat::StringView str, const char *delim, std::vector<std::string> *out);
+ std::string CEscape(compat::StringView src);
+ inline bool HasSuffixString(compat::StringView str, compat::StringView suffix) { return str.size() >= suffix.size() && str.compare(str.size() - suffix.size(), suffix.size(), suffix) == 0; }
+-inline std::string StripSuffixString(compat::StringView str, compat::StringView suffix) { if (HasSuffixString(str, suffix)) { return str.substr(0, str.size() - suffix.size()); } else { return str; } }
++inline std::string StripSuffixString(compat::StringView str, compat::StringView suffix) { if (HasSuffixString(str, suffix)) { return std::string(str.substr(0, str.size() - suffix.size())); } else { return std::string(str); } }
+ char* FastHexToBuffer(int i, char* buffer);
+
+-
+ // Get the (unqualified) name that should be used for this field in C code.
+ // The name is coerced to lower-case to emulate proto1 behavior. People
+ // should be using lowercase-with-underscores style for proto field names
+
+From 0edca93db369fb84f01cc0d4e3ee4cd6c2ad7f4f Mon Sep 17 00:00:00 2001
+From: Robert Edmonds <edmonds@users.noreply.github.com>
+Date: Sat, 8 Feb 2025 20:39:11 -0500
+Subject: [PATCH 06/11] Convert various uses of `const char *` to
+ `compat::StringView`
+
+Also replace some uses of arrays manually allocated with new/delete with
+uses of `std::vector`.
+---
+ protoc-gen-c/c_enum.cc | 35 ++++++++++++++++++-----------------
+ protoc-gen-c/c_helpers.cc | 2 +-
+ protoc-gen-c/c_helpers.h | 2 +-
+ protoc-gen-c/c_message.cc | 28 ++++++++++++----------------
+ protoc-gen-c/c_service.cc | 19 +++++++++----------
+ 5 files changed, 41 insertions(+), 45 deletions(-)
+
+diff --git a/protoc-gen-c/c_enum.cc b/protoc-gen-c/c_enum.cc
+index 311e4c86..c7839edd 100644
+--- a/protoc-gen-c/c_enum.cc
++++ b/protoc-gen-c/c_enum.cc
+@@ -142,7 +142,7 @@ struct ValueIndex
+ int value;
+ unsigned index;
+ unsigned final_index; /* index in uniqified array of values */
+- const char *name;
++ compat::StringView name;
+ };
+ void EnumGenerator::GenerateValueInitializer(google::protobuf::io::Printer *printer, int index)
+ {
+@@ -176,7 +176,7 @@ static int compare_value_indices_by_name(const void *a, const void *b)
+ {
+ const ValueIndex *vi_a = (const ValueIndex *) a;
+ const ValueIndex *vi_b = (const ValueIndex *) b;
+- return strcmp (vi_a->name, vi_b->name);
++ return vi_a->name.compare(vi_b->name);
+ }
+
+ void EnumGenerator::GenerateEnumDescriptor(google::protobuf::io::Printer* printer) {
+@@ -194,18 +194,20 @@ void EnumGenerator::GenerateEnumDescriptor(google::protobuf::io::Printer* printe
+
+ // Sort by name and value, dropping duplicate values if they appear later.
+ // TODO: use a c++ paradigm for this!
+- NameIndex *name_index = new NameIndex[descriptor_->value_count()];
+- ValueIndex *value_index = new ValueIndex[descriptor_->value_count()];
+- for (int j = 0; j < descriptor_->value_count(); j++) {
++ std::vector<ValueIndex> value_index;
++ for (unsigned j = 0; j < descriptor_->value_count(); j++) {
+ const google::protobuf::EnumValueDescriptor *vd = descriptor_->value(j);
+- name_index[j].index = j;
+- name_index[j].name = vd->name().c_str();
+- value_index[j].index = j;
+- value_index[j].value = vd->number();
+- value_index[j].name = vd->name().c_str();
++ value_index.push_back({
++ .value = vd->number(),
++ .index = j,
++ .final_index = 0,
++ .name = vd->name(),
++ });
+ }
+- qsort(value_index, descriptor_->value_count(),
+- sizeof(ValueIndex), compare_value_indices_by_value_then_index);
++ qsort(&value_index[0],
++ value_index.size(),
++ sizeof(ValueIndex),
++ compare_value_indices_by_value_then_index);
+
+ // only record unique values
+ int n_unique_values;
+@@ -275,8 +277,10 @@ void EnumGenerator::GenerateEnumDescriptor(google::protobuf::io::Printer* printe
+ vars["n_ranges"] = SimpleItoa(n_ranges);
+
+ if (!optimize_code_size) {
+- qsort(value_index, descriptor_->value_count(),
+- sizeof(ValueIndex), compare_value_indices_by_name);
++ qsort(&value_index[0],
++ value_index.size(),
++ sizeof(ValueIndex),
++ compare_value_indices_by_name);
+ printer->Print(vars,
+ "static const ProtobufCEnumValueIndex $lcclassname$__enum_values_by_name[$value_count$] =\n"
+ "{\n");
+@@ -319,9 +323,6 @@ void EnumGenerator::GenerateEnumDescriptor(google::protobuf::io::Printer* printe
+ " NULL,NULL,NULL,NULL /* reserved[1234] */\n"
+ "};\n");
+ }
+-
+- delete[] value_index;
+- delete[] name_index;
+ }
+
+ } // namespace protobuf_c
+diff --git a/protoc-gen-c/c_helpers.cc b/protoc-gen-c/c_helpers.cc
+index 1aecef93..dec9ce28 100644
+--- a/protoc-gen-c/c_helpers.cc
++++ b/protoc-gen-c/c_helpers.cc
+@@ -261,7 +261,7 @@ int compare_name_indices_by_name(const void *a, const void *b)
+ {
+ const NameIndex *ni_a = (const NameIndex *) a;
+ const NameIndex *ni_b = (const NameIndex *) b;
+- return strcmp (ni_a->name, ni_b->name);
++ return ni_a->name.compare(ni_b->name);
+ }
+
+ std::string CEscape(compat::StringView src);
+diff --git a/protoc-gen-c/c_helpers.h b/protoc-gen-c/c_helpers.h
+index 985e4db6..69369997 100644
+--- a/protoc-gen-c/c_helpers.h
++++ b/protoc-gen-c/c_helpers.h
+@@ -160,7 +160,7 @@ unsigned WriteIntRanges(google::protobuf::io::Printer* printer, int n_values, co
+ struct NameIndex
+ {
+ unsigned index;
+- const char *name;
++ compat::StringView name;
+ };
+ int compare_name_indices_by_name(const void*, const void*);
+
+diff --git a/protoc-gen-c/c_message.cc b/protoc-gen-c/c_message.cc
+index 46413873..7252923c 100644
+--- a/protoc-gen-c/c_message.cc
++++ b/protoc-gen-c/c_message.cc
+@@ -567,27 +567,26 @@ GenerateMessageDescriptor(google::protobuf::io::Printer* printer, bool gen_init)
+ "static const ProtobufCFieldDescriptor $lcclassname$__field_descriptors[$n_fields$] =\n"
+ "{\n");
+ printer->Indent();
+- const google::protobuf::FieldDescriptor **sorted_fields = new const google::protobuf::FieldDescriptor *[descriptor_->field_count()];
++
++ std::vector<const google::protobuf::FieldDescriptor*> sorted_fields;
+ for (int i = 0; i < descriptor_->field_count(); i++) {
+- sorted_fields[i] = descriptor_->field(i);
++ sorted_fields.push_back(descriptor_->field(i));
+ }
+- qsort (sorted_fields, descriptor_->field_count(),
++ qsort(&sorted_fields[0], sorted_fields.size(),
+ sizeof(const google::protobuf::FieldDescriptor*),
+ compare_pfields_by_number);
+- for (int i = 0; i < descriptor_->field_count(); i++) {
+- const google::protobuf::FieldDescriptor* field = sorted_fields[i];
++ for (auto field : sorted_fields) {
+ field_generators_.get(field).GenerateDescriptorInitializer(printer);
+ }
+ printer->Outdent();
+ printer->Print(vars, "};\n");
+
+ if (!optimize_code_size) {
+- NameIndex *field_indices = new NameIndex [descriptor_->field_count()];
+- for (int i = 0; i < descriptor_->field_count(); i++) {
+- field_indices[i].name = sorted_fields[i]->name().c_str();
+- field_indices[i].index = i;
++ std::vector<NameIndex> field_indices;
++ for (unsigned i = 0; i < descriptor_->field_count(); i++) {
++ field_indices.push_back({ .index = i, .name = sorted_fields[i]->name() });
+ }
+- qsort (field_indices, descriptor_->field_count(), sizeof (NameIndex),
++ qsort(&field_indices[0], field_indices.size(), sizeof(NameIndex),
+ compare_name_indices_by_name);
+ printer->Print(vars, "static const unsigned $lcclassname$__field_indices_by_name[] = {\n");
+ for (int i = 0; i < descriptor_->field_count(); i++) {
+@@ -596,19 +595,16 @@ GenerateMessageDescriptor(google::protobuf::io::Printer* printer, bool gen_init)
+ printer->Print(vars, " $index$, /* field[$index$] = $name$ */\n");
+ }
+ printer->Print("};\n");
+- delete[] field_indices;
+ }
+
+ // create range initializers
+- int *values = new int[descriptor_->field_count()];
++ std::vector<int> values;
+ for (int i = 0; i < descriptor_->field_count(); i++) {
+- values[i] = sorted_fields[i]->number();
++ values.push_back(sorted_fields[i]->number());
+ }
+ int n_ranges = WriteIntRanges(printer,
+- descriptor_->field_count(), values,
++ descriptor_->field_count(), &values[0],
+ vars["lcclassname"] + "__number_ranges");
+- delete [] values;
+- delete [] sorted_fields;
+
+ vars["n_ranges"] = SimpleItoa(n_ranges);
+ } else {
+diff --git a/protoc-gen-c/c_service.cc b/protoc-gen-c/c_service.cc
+index ee4d4a95..2c3ddcf3 100644
+--- a/protoc-gen-c/c_service.cc
++++ b/protoc-gen-c/c_service.cc
+@@ -184,19 +184,19 @@ void ServiceGenerator::GenerateInit(google::protobuf::io::Printer* printer)
+ "}\n");
+ }
+
+-struct MethodIndexAndName { unsigned i; const char *name; };
++struct MethodIndexAndName { unsigned i; compat::StringView name; };
+ static int
+ compare_method_index_and_name_by_name (const void *a, const void *b)
+ {
+ const MethodIndexAndName *ma = (const MethodIndexAndName *) a;
+ const MethodIndexAndName *mb = (const MethodIndexAndName *) b;
+- return strcmp (ma->name, mb->name);
++ return ma->name.compare(mb->name);
+ }
+
+ void ServiceGenerator::GenerateServiceDescriptor(google::protobuf::io::Printer* printer)
+ {
+ int n_methods = descriptor_->method_count();
+- MethodIndexAndName *mi_array = new MethodIndexAndName[n_methods];
++ std::vector<MethodIndexAndName> mi_array;
+
+ bool optimize_code_size = descriptor_->file()->options().has_optimize_for() &&
+ descriptor_->file()->options().optimize_for() ==
+@@ -205,7 +205,7 @@ void ServiceGenerator::GenerateServiceDescriptor(google::protobuf::io::Printer*
+ vars_["n_methods"] = SimpleItoa(n_methods);
+ printer->Print(vars_, "static const ProtobufCMethodDescriptor $lcfullname$__method_descriptors[$n_methods$] =\n"
+ "{\n");
+- for (int i = 0; i < n_methods; i++) {
++ for (unsigned i = 0; i < n_methods; i++) {
+ const google::protobuf::MethodDescriptor* method = descriptor_->method(i);
+ vars_["method"] = method->name();
+ vars_["input_descriptor"] = "&" + FullNameToLower(method->input_type()->full_name(), method->input_type()->file()) + "__descriptor";
+@@ -217,14 +217,15 @@ void ServiceGenerator::GenerateServiceDescriptor(google::protobuf::io::Printer*
+ printer->Print(vars_,
+ " { \"$method$\", $input_descriptor$, $output_descriptor$ },\n");
+ }
+- mi_array[i].i = i;
+- mi_array[i].name = method->name().c_str();
++ mi_array.push_back({i, method->name()});
+ }
+ printer->Print(vars_, "};\n");
+
+ if (!optimize_code_size) {
+- qsort ((void*)mi_array, n_methods, sizeof (MethodIndexAndName),
+- compare_method_index_and_name_by_name);
++ qsort(&mi_array[0],
++ mi_array.size(),
++ sizeof(MethodIndexAndName),
++ compare_method_index_and_name_by_name);
+ printer->Print(vars_, "const unsigned $lcfullname$__method_indices_by_name[] = {\n");
+ for (int i = 0; i < n_methods; i++) {
+ vars_["i"] = SimpleItoa(mi_array[i].i);
+@@ -258,8 +259,6 @@ void ServiceGenerator::GenerateServiceDescriptor(google::protobuf::io::Printer*
+ " $lcfullname$__method_indices_by_name\n"
+ "};\n");
+ }
+-
+- delete[] mi_array;
+ }
+
+ void ServiceGenerator::GenerateCallersImplementations(google::protobuf::io::Printer* printer)
+
+From ebeddac1a746393a16d9ba4cf80e3d12c3ab7d7f Mon Sep 17 00:00:00 2001
+From: Robert Edmonds <edmonds@users.noreply.github.com>
+Date: Sat, 8 Feb 2025 20:56:48 -0500
+Subject: [PATCH 07/11] Fix indentation of
+ MessageGenerator::GenerateMessageDescriptor()
+
+---
+ protoc-gen-c/c_message.cc | 321 +++++++++++++++++++-------------------
+ 1 file changed, 159 insertions(+), 162 deletions(-)
+
+diff --git a/protoc-gen-c/c_message.cc b/protoc-gen-c/c_message.cc
+index 7252923c..2a3b2a2f 100644
+--- a/protoc-gen-c/c_message.cc
++++ b/protoc-gen-c/c_message.cc
+@@ -461,199 +461,196 @@ GenerateHelperFunctionDefinitions(google::protobuf::io::Printer* printer,
+
+ void MessageGenerator::
+ GenerateMessageDescriptor(google::protobuf::io::Printer* printer, bool gen_init) {
+- std::map<std::string, std::string> vars;
+- vars["fullname"] = descriptor_->full_name();
+- vars["classname"] = FullNameToC(descriptor_->full_name(), descriptor_->file());
+- vars["lcclassname"] = FullNameToLower(descriptor_->full_name(), descriptor_->file());
+- vars["shortname"] = ToCamel(descriptor_->name());
+- vars["n_fields"] = SimpleItoa(descriptor_->field_count());
+- vars["packagename"] = descriptor_->file()->package();
+-
+- bool optimize_code_size = descriptor_->file()->options().has_optimize_for() &&
+- descriptor_->file()->options().optimize_for() ==
+- google::protobuf::FileOptions_OptimizeMode_CODE_SIZE;
+-
+- const ProtobufCMessageOptions opt =
+- descriptor_->options().GetExtension(pb_c_msg);
+- // Override parent settings, if needed
+- if (opt.has_gen_init_helpers())
+- gen_init = opt.gen_init_helpers();
+-
+- for (int i = 0; i < descriptor_->nested_type_count(); i++) {
+- nested_generators_[i]->GenerateMessageDescriptor(printer, gen_init);
+- }
++ std::map<std::string, std::string> vars;
++ vars["fullname"] = descriptor_->full_name();
++ vars["classname"] = FullNameToC(descriptor_->full_name(), descriptor_->file());
++ vars["lcclassname"] = FullNameToLower(descriptor_->full_name(), descriptor_->file());
++ vars["shortname"] = ToCamel(descriptor_->name());
++ vars["n_fields"] = SimpleItoa(descriptor_->field_count());
++ vars["packagename"] = descriptor_->file()->package();
+
+- for (int i = 0; i < descriptor_->enum_type_count(); i++) {
+- enum_generators_[i]->GenerateEnumDescriptor(printer);
+- }
++ bool optimize_code_size = descriptor_->file()->options().has_optimize_for() &&
++ descriptor_->file()->options().optimize_for() ==
++ google::protobuf::FileOptions_OptimizeMode_CODE_SIZE;
+
+- for (int i = 0; i < descriptor_->field_count(); i++) {
+- const google::protobuf::FieldDescriptor* fd = descriptor_->field(i);
+- if (fd->has_default_value()) {
+- field_generators_.get(fd).GenerateDefaultValueImplementations(printer);
+- }
+- }
++ const ProtobufCMessageOptions opt = descriptor_->options().GetExtension(pb_c_msg);
++ // Override parent settings, if needed
++ if (opt.has_gen_init_helpers()) {
++ gen_init = opt.gen_init_helpers();
++ }
+
+- for (int i = 0; i < descriptor_->field_count(); i++) {
+- const google::protobuf::FieldDescriptor* fd = descriptor_->field(i);
+- const ProtobufCFieldOptions opt = fd->options().GetExtension(pb_c_field);
+- if (fd->has_default_value()) {
+-
+- bool already_defined = false;
+- vars["name"] = fd->name();
+- vars["lcname"] = CamelToLower(fd->name());
+- vars["maybe_static"] = "static ";
+- vars["field_dv_ctype_suffix"] = "";
+- vars["default_value"] = field_generators_.get(fd).GetDefaultValue();
+- switch (fd->cpp_type()) {
+- case google::protobuf::FieldDescriptor::CPPTYPE_INT32:
+- vars["field_dv_ctype"] = "int32_t";
+- break;
+- case google::protobuf::FieldDescriptor::CPPTYPE_INT64:
+- vars["field_dv_ctype"] = "int64_t";
+- break;
+- case google::protobuf::FieldDescriptor::CPPTYPE_UINT32:
+- vars["field_dv_ctype"] = "uint32_t";
+- break;
+- case google::protobuf::FieldDescriptor::CPPTYPE_UINT64:
+- vars["field_dv_ctype"] = "uint64_t";
+- break;
+- case google::protobuf::FieldDescriptor::CPPTYPE_FLOAT:
+- vars["field_dv_ctype"] = "float";
+- break;
+- case google::protobuf::FieldDescriptor::CPPTYPE_DOUBLE:
+- vars["field_dv_ctype"] = "double";
+- break;
+- case google::protobuf::FieldDescriptor::CPPTYPE_BOOL:
+- vars["field_dv_ctype"] = "protobuf_c_boolean";
+- break;
+-
+- case google::protobuf::FieldDescriptor::CPPTYPE_MESSAGE:
+- // NOTE: not supported by protobuf
+- vars["maybe_static"] = "";
+- vars["field_dv_ctype"] = "{ ... }";
+- GOOGLE_LOG(FATAL) << "Messages can't have default values!";
+- break;
+- case google::protobuf::FieldDescriptor::CPPTYPE_STRING:
+- if (fd->type() == google::protobuf::FieldDescriptor::TYPE_BYTES || opt.string_as_bytes())
+- {
+- vars["field_dv_ctype"] = "ProtobufCBinaryData";
+- }
+- else /* STRING type */
+- {
+- already_defined = true;
+- vars["maybe_static"] = "";
+- vars["field_dv_ctype"] = "char";
+- vars["field_dv_ctype_suffix"] = "[]";
+- }
+- break;
+- case google::protobuf::FieldDescriptor::CPPTYPE_ENUM:
+- {
+- const google::protobuf::EnumValueDescriptor* vd = fd->default_value_enum();
+- vars["field_dv_ctype"] = FullNameToC(vd->type()->full_name(), vd->type()->file());
+- break;
+- }
+- default:
+- GOOGLE_LOG(FATAL) << "Unknown CPPTYPE";
+- break;
+- }
+- if (!already_defined)
+- printer->Print(vars, "$maybe_static$const $field_dv_ctype$ $lcclassname$__$lcname$__default_value$field_dv_ctype_suffix$ = $default_value$;\n");
+- }
+- }
++ for (int i = 0; i < descriptor_->nested_type_count(); i++) {
++ nested_generators_[i]->GenerateMessageDescriptor(printer, gen_init);
++ }
+
+- if ( descriptor_->field_count() ) {
+- printer->Print(vars,
+- "static const ProtobufCFieldDescriptor $lcclassname$__field_descriptors[$n_fields$] =\n"
+- "{\n");
+- printer->Indent();
++ for (int i = 0; i < descriptor_->enum_type_count(); i++) {
++ enum_generators_[i]->GenerateEnumDescriptor(printer);
++ }
+
+- std::vector<const google::protobuf::FieldDescriptor*> sorted_fields;
+ for (int i = 0; i < descriptor_->field_count(); i++) {
+- sorted_fields.push_back(descriptor_->field(i));
+- }
+- qsort(&sorted_fields[0], sorted_fields.size(),
+- sizeof(const google::protobuf::FieldDescriptor*),
+- compare_pfields_by_number);
+- for (auto field : sorted_fields) {
+- field_generators_.get(field).GenerateDescriptorInitializer(printer);
++ const google::protobuf::FieldDescriptor* fd = descriptor_->field(i);
++ if (fd->has_default_value()) {
++ field_generators_.get(fd).GenerateDefaultValueImplementations(printer);
++ }
+ }
+- printer->Outdent();
+- printer->Print(vars, "};\n");
+
+- if (!optimize_code_size) {
+- std::vector<NameIndex> field_indices;
+- for (unsigned i = 0; i < descriptor_->field_count(); i++) {
+- field_indices.push_back({ .index = i, .name = sorted_fields[i]->name() });
++ for (int i = 0; i < descriptor_->field_count(); i++) {
++ const google::protobuf::FieldDescriptor* fd = descriptor_->field(i);
++ const ProtobufCFieldOptions opt = fd->options().GetExtension(pb_c_field);
++ if (fd->has_default_value()) {
++ bool already_defined = false;
++ vars["name"] = fd->name();
++ vars["lcname"] = CamelToLower(fd->name());
++ vars["maybe_static"] = "static ";
++ vars["field_dv_ctype_suffix"] = "";
++ vars["default_value"] = field_generators_.get(fd).GetDefaultValue();
++ switch (fd->cpp_type()) {
++ case google::protobuf::FieldDescriptor::CPPTYPE_INT32:
++ vars["field_dv_ctype"] = "int32_t";
++ break;
++ case google::protobuf::FieldDescriptor::CPPTYPE_INT64:
++ vars["field_dv_ctype"] = "int64_t";
++ break;
++ case google::protobuf::FieldDescriptor::CPPTYPE_UINT32:
++ vars["field_dv_ctype"] = "uint32_t";
++ break;
++ case google::protobuf::FieldDescriptor::CPPTYPE_UINT64:
++ vars["field_dv_ctype"] = "uint64_t";
++ break;
++ case google::protobuf::FieldDescriptor::CPPTYPE_FLOAT:
++ vars["field_dv_ctype"] = "float";
++ break;
++ case google::protobuf::FieldDescriptor::CPPTYPE_DOUBLE:
++ vars["field_dv_ctype"] = "double";
++ break;
++ case google::protobuf::FieldDescriptor::CPPTYPE_BOOL:
++ vars["field_dv_ctype"] = "protobuf_c_boolean";
++ break;
++ case google::protobuf::FieldDescriptor::CPPTYPE_MESSAGE:
++ // NOTE: not supported by protobuf
++ vars["maybe_static"] = "";
++ vars["field_dv_ctype"] = "{ ... }";
++ GOOGLE_LOG(FATAL) << "Messages can't have default values!";
++ break;
++ case google::protobuf::FieldDescriptor::CPPTYPE_STRING:
++ if (fd->type() == google::protobuf::FieldDescriptor::TYPE_BYTES || opt.string_as_bytes()) {
++ vars["field_dv_ctype"] = "ProtobufCBinaryData";
++ } else {
++ /* STRING type */
++ already_defined = true;
++ vars["maybe_static"] = "";
++ vars["field_dv_ctype"] = "char";
++ vars["field_dv_ctype_suffix"] = "[]";
++ }
++ break;
++ case google::protobuf::FieldDescriptor::CPPTYPE_ENUM: {
++ const google::protobuf::EnumValueDescriptor* vd = fd->default_value_enum();
++ vars["field_dv_ctype"] = FullNameToC(vd->type()->full_name(), vd->type()->file());
++ break;
++ }
++ default:
++ GOOGLE_LOG(FATAL) << "Unknown CPPTYPE";
++ break;
++ }
++ if (!already_defined) {
++ printer->Print(vars, "$maybe_static$const $field_dv_ctype$ $lcclassname$__$lcname$__default_value$field_dv_ctype_suffix$ = $default_value$;\n");
++ }
+ }
+- qsort(&field_indices[0], field_indices.size(), sizeof(NameIndex),
+- compare_name_indices_by_name);
+- printer->Print(vars, "static const unsigned $lcclassname$__field_indices_by_name[] = {\n");
++ }
++
++ if (descriptor_->field_count()) {
++ printer->Print(vars,
++ "static const ProtobufCFieldDescriptor $lcclassname$__field_descriptors[$n_fields$] =\n"
++ "{\n");
++ printer->Indent();
++
++ std::vector<const google::protobuf::FieldDescriptor*> sorted_fields;
+ for (int i = 0; i < descriptor_->field_count(); i++) {
+- vars["index"] = SimpleItoa(field_indices[i].index);
+- vars["name"] = field_indices[i].name;
+- printer->Print(vars, " $index$, /* field[$index$] = $name$ */\n");
++ sorted_fields.push_back(descriptor_->field(i));
+ }
+- printer->Print("};\n");
+- }
++ qsort(&sorted_fields[0],
++ sorted_fields.size(),
++ sizeof(const google::protobuf::FieldDescriptor*),
++ compare_pfields_by_number);
++ for (auto field : sorted_fields) {
++ field_generators_.get(field).GenerateDescriptorInitializer(printer);
++ }
++ printer->Outdent();
++ printer->Print(vars, "};\n");
+
+- // create range initializers
+- std::vector<int> values;
+- for (int i = 0; i < descriptor_->field_count(); i++) {
+- values.push_back(sorted_fields[i]->number());
+- }
+- int n_ranges = WriteIntRanges(printer,
+- descriptor_->field_count(), &values[0],
+- vars["lcclassname"] + "__number_ranges");
++ if (!optimize_code_size) {
++ std::vector<NameIndex> field_indices;
++ for (unsigned i = 0; i < descriptor_->field_count(); i++) {
++ field_indices.push_back({ .index = i, .name = sorted_fields[i]->name() });
++ }
++ qsort(&field_indices[0],
++ field_indices.size(),
++ sizeof(NameIndex),
++ compare_name_indices_by_name);
++ printer->Print(vars, "static const unsigned $lcclassname$__field_indices_by_name[] = {\n");
++ for (int i = 0; i < descriptor_->field_count(); i++) {
++ vars["index"] = SimpleItoa(field_indices[i].index);
++ vars["name"] = field_indices[i].name;
++ printer->Print(vars, " $index$, /* field[$index$] = $name$ */\n");
++ }
++ printer->Print("};\n");
++ }
+
+- vars["n_ranges"] = SimpleItoa(n_ranges);
+- } else {
+- /* MS compiler can't handle arrays with zero size and empty
+- * initialization list. Furthermore it is an extension of GCC only but
+- * not a standard. */
+- vars["n_ranges"] = "0";
+- printer->Print(vars,
+- "#define $lcclassname$__field_descriptors NULL\n"
+- "#define $lcclassname$__field_indices_by_name NULL\n"
+- "#define $lcclassname$__number_ranges NULL\n");
++ // create range initializers
++ std::vector<int> values;
++ for (int i = 0; i < descriptor_->field_count(); i++) {
++ values.push_back(sorted_fields[i]->number());
+ }
++ int n_ranges = WriteIntRanges(printer,
++ descriptor_->field_count(),
++ &values[0],
++ vars["lcclassname"] + "__number_ranges");
++
++ vars["n_ranges"] = SimpleItoa(n_ranges);
++ } else {
++ /* MS compiler can't handle arrays with zero size and empty
++ * initialization list. Furthermore it is an extension of GCC only but
++ * not a standard. */
++ vars["n_ranges"] = "0";
++ printer->Print(vars,
++ "#define $lcclassname$__field_descriptors NULL\n"
++ "#define $lcclassname$__field_indices_by_name NULL\n"
++ "#define $lcclassname$__number_ranges NULL\n");
++ }
+
+ printer->Print(vars,
+- "const ProtobufCMessageDescriptor $lcclassname$__descriptor =\n"
+- "{\n"
+- " PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,\n");
++ "const ProtobufCMessageDescriptor $lcclassname$__descriptor =\n"
++ "{\n"
++ " PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,\n");
+ if (optimize_code_size) {
+ printer->Print(" NULL,NULL,NULL,NULL, /* CODE_SIZE */\n");
+ } else {
+ printer->Print(vars,
+- " \"$fullname$\",\n"
+- " \"$shortname$\",\n"
+- " \"$classname$\",\n"
+- " \"$packagename$\",\n");
++ " \"$fullname$\",\n"
++ " \"$shortname$\",\n"
++ " \"$classname$\",\n"
++ " \"$packagename$\",\n");
+ }
+ printer->Print(vars,
+- " sizeof($classname$),\n"
+- " $n_fields$,\n"
+- " $lcclassname$__field_descriptors,\n");
++ " sizeof($classname$),\n"
++ " $n_fields$,\n"
++ " $lcclassname$__field_descriptors,\n");
+ if (optimize_code_size) {
+ printer->Print(" NULL, /* CODE_SIZE */\n");
+ } else {
+- printer->Print(vars,
+- " $lcclassname$__field_indices_by_name,\n");
++ printer->Print(vars, " $lcclassname$__field_indices_by_name,\n");
+ }
+ printer->Print(vars,
+- " $n_ranges$,"
+- " $lcclassname$__number_ranges,\n");
++ " $n_ranges$,"
++ " $lcclassname$__number_ranges,\n");
+ if (gen_init) {
+- printer->Print(vars,
+- " (ProtobufCMessageInit) $lcclassname$__init,\n");
++ printer->Print(vars, " (ProtobufCMessageInit) $lcclassname$__init,\n");
+ } else {
+- printer->Print(vars,
+- " NULL, /* gen_init_helpers = false */\n");
++ printer->Print(vars, " NULL, /* gen_init_helpers = false */\n");
+ }
+ printer->Print(vars,
+- " NULL,NULL,NULL /* reserved[123] */\n"
+- "};\n");
++ " NULL,NULL,NULL /* reserved[123] */\n"
++ "};\n");
+ }
+
+ int MessageGenerator::GetOneofUnionOrder(const google::protobuf::FieldDescriptor* fd)
+
+From c59b146aee2d97091ca2adeecd3f2741cb7f0082 Mon Sep 17 00:00:00 2001
+From: Robert Edmonds <edmonds@users.noreply.github.com>
+Date: Sat, 8 Feb 2025 21:10:37 -0500
+Subject: [PATCH 08/11] compat: Use absl::string_view instead of
+ google::protobuf::internal::DescriptorStringView
+
+Even though google::protobuf::internal::DescriptorStringView is exposed
+in public protobuf headers, it's probably not a good idea to rely on an
+"internal" typedef.
+
+According to https://protobuf.dev/news/2024-10-02/#descriptor-apis:
+
+ v30 will update return types in descriptor (such as full_name) to be
+ absl::string_view.
+
+So `absl::string_view` is probably the right type to use here.
+---
+ protoc-gen-c/compat.h | 6 +++++-
+ 1 file changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/protoc-gen-c/compat.h b/protoc-gen-c/compat.h
+index fe8041b5..a70cef34 100644
+--- a/protoc-gen-c/compat.h
++++ b/protoc-gen-c/compat.h
+@@ -37,12 +37,16 @@
+ # define GOOGLE_LOG ABSL_LOG
+ #endif
+
++#if GOOGLE_PROTOBUF_VERSION >= 6030000
++# include <absl/strings/string_view.h>
++#endif
++
+ namespace protobuf_c {
+
+ namespace compat {
+
+ #if GOOGLE_PROTOBUF_VERSION >= 6030000
+-typedef google::protobuf::internal::DescriptorStringView StringView;
++typedef absl::string_view StringView;
+ #else
+ typedef const std::string& StringView;
+ #endif
+
+From 9c56038fd9d3cc2552c297457d7a66efe5cbd2c7 Mon Sep 17 00:00:00 2001
+From: Robert Edmonds <edmonds@users.noreply.github.com>
+Date: Sat, 8 Feb 2025 21:37:30 -0500
+Subject: [PATCH 09/11] Makefile.am: Add compat.h to
+ protoc_gen_c_protoc_gen_c_SOURCES
+
+---
+ Makefile.am | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/Makefile.am b/Makefile.am
+index 77aa9d99..26d19f16 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -102,6 +102,7 @@ protoc_gen_c_protoc_gen_c_SOURCES = \
+ protoc-gen-c/c_service.h \
+ protoc-gen-c/c_string_field.cc \
+ protoc-gen-c/c_string_field.h \
++ protoc-gen-c/compat.h \
+ protobuf-c/protobuf-c.pb.cc \
+ protobuf-c/protobuf-c.pb.h \
+ protoc-gen-c/main.cc
+
+From 4ebd5cd8238d1f2ac6291b8c8925f34e16ce2123 Mon Sep 17 00:00:00 2001
+From: Robert Edmonds <edmonds@users.noreply.github.com>
+Date: Sat, 8 Feb 2025 21:38:07 -0500
+Subject: [PATCH 10/11] compat: Conditionalize the include of <string>
+
+It is only needed on older protobuf versions where absl::string_view is
+not being used.
+---
+ protoc-gen-c/compat.h | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/protoc-gen-c/compat.h b/protoc-gen-c/compat.h
+index a70cef34..f6ace7cb 100644
+--- a/protoc-gen-c/compat.h
++++ b/protoc-gen-c/compat.h
+@@ -28,8 +28,6 @@
+ #ifndef PROTOBUF_C_PROTOC_GEN_C_COMPAT_H__
+ #define PROTOBUF_C_PROTOC_GEN_C_COMPAT_H__
+
+-#include <string>
+-
+ #if GOOGLE_PROTOBUF_VERSION >= 4022000
+ # define GOOGLE_ARRAYSIZE ABSL_ARRAYSIZE
+ # define GOOGLE_CHECK_EQ ABSL_CHECK_EQ
+@@ -39,6 +37,8 @@
+
+ #if GOOGLE_PROTOBUF_VERSION >= 6030000
+ # include <absl/strings/string_view.h>
++#else
++# include <string>
+ #endif
+
+ namespace protobuf_c {
+
+From 9a6b35e1e6956fb5cb044910448049b7a5339244 Mon Sep 17 00:00:00 2001
+From: Robert Edmonds <edmonds@users.noreply.github.com>
+Date: Sat, 8 Feb 2025 21:44:42 -0500
+Subject: [PATCH 11/11] Cater to Microsoft Visual C++
+
+Apparently MSVC doesn't support designated initializers for some reason.
+---
+ protoc-gen-c/c_enum.cc | 9 ++-------
+ protoc-gen-c/c_message.cc | 2 +-
+ 2 files changed, 3 insertions(+), 8 deletions(-)
+
+diff --git a/protoc-gen-c/c_enum.cc b/protoc-gen-c/c_enum.cc
+index c7839edd..1940ba9d 100644
+--- a/protoc-gen-c/c_enum.cc
++++ b/protoc-gen-c/c_enum.cc
+@@ -195,14 +195,9 @@ void EnumGenerator::GenerateEnumDescriptor(google::protobuf::io::Printer* printe
+ // Sort by name and value, dropping duplicate values if they appear later.
+ // TODO: use a c++ paradigm for this!
+ std::vector<ValueIndex> value_index;
+- for (unsigned j = 0; j < descriptor_->value_count(); j++) {
++ for (int j = 0; j < descriptor_->value_count(); j++) {
+ const google::protobuf::EnumValueDescriptor *vd = descriptor_->value(j);
+- value_index.push_back({
+- .value = vd->number(),
+- .index = j,
+- .final_index = 0,
+- .name = vd->name(),
+- });
++ value_index.push_back({ vd->number(), (unsigned)j, 0, vd->name() });
+ }
+ qsort(&value_index[0],
+ value_index.size(),
+diff --git a/protoc-gen-c/c_message.cc b/protoc-gen-c/c_message.cc
+index 2a3b2a2f..94889179 100644
+--- a/protoc-gen-c/c_message.cc
++++ b/protoc-gen-c/c_message.cc
+@@ -581,7 +581,7 @@ GenerateMessageDescriptor(google::protobuf::io::Printer* printer, bool gen_init)
+ if (!optimize_code_size) {
+ std::vector<NameIndex> field_indices;
+ for (unsigned i = 0; i < descriptor_->field_count(); i++) {
+- field_indices.push_back({ .index = i, .name = sorted_fields[i]->name() });
++ field_indices.push_back({ i, sorted_fields[i]->name() });
+ }
+ qsort(&field_indices[0],
+ field_indices.size(),
diff --git a/libraries/protobuf-c/protobuf-c.SlackBuild b/libraries/protobuf-c/protobuf-c.SlackBuild
index 49d1beab69..4d9027670c 100644
--- a/libraries/protobuf-c/protobuf-c.SlackBuild
+++ b/libraries/protobuf-c/protobuf-c.SlackBuild
@@ -2,7 +2,7 @@
#
# Slackware build script for protobuf-c
#
-# Copyright 2017-2023 Marek Šrejma <marek@modweb.de>
+# Copyright 2017-2025 Marek Šrejma <marek@modweb.de>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=protobuf-c
-VERSION=${VERSION:-1.5.0}
+VERSION=${VERSION:-1.5.1}
BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -73,8 +73,10 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-patch -p1 < $CWD/711.patch
+# Fix protobuf 30.x
+patch -p1 < $CWD/762.patch
+autoreconf -vif
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -90,8 +92,7 @@ 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
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -ar TODO LICENSE README.md \
- $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a TODO LICENSE *.md $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
rm -f $PKG/usr/lib*/*.la
diff --git a/libraries/protobuf-c/protobuf-c.info b/libraries/protobuf-c/protobuf-c.info
index 51b7858d42..86ff34bdc0 100644
--- a/libraries/protobuf-c/protobuf-c.info
+++ b/libraries/protobuf-c/protobuf-c.info
@@ -1,8 +1,8 @@
PRGNAM="protobuf-c"
-VERSION="1.5.0"
+VERSION="1.5.1"
HOMEPAGE="https://github.com/protobuf-c/protobuf-c"
-DOWNLOAD="https://github.com/protobuf-c/protobuf-c/releases/download/v1.5.0/protobuf-c-1.5.0.tar.gz"
-MD5SUM="03030a3994b9f89ef166336048992484"
+DOWNLOAD="https://github.com/protobuf-c/protobuf-c/releases/download/v1.5.1/protobuf-c-1.5.1.tar.gz"
+MD5SUM="0c02b1bb2b20bb9fc3489fe9e3df354b"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="protobuf3"
diff --git a/libraries/pugixml/pugixml.SlackBuild b/libraries/pugixml/pugixml.SlackBuild
index be38af3b16..aa1c01f396 100644
--- a/libraries/pugixml/pugixml.SlackBuild
+++ b/libraries/pugixml/pugixml.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for pugixml
-# Copyright 2015-2023 Willy Sudiarto Raharjo <willysr@slackbuilds.org>
+# Copyright 2015-2025 Willy Sudiarto Raharjo <willysr@slackbuilds.org>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,8 +25,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=pugixml
-VERSION=${VERSION:-1.14}
-MAJVER=1.14
+VERSION=${VERSION:-1.15}
+MAJVER=1.15
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/libraries/pugixml/pugixml.info b/libraries/pugixml/pugixml.info
index cbf315404c..5ca59c0ab8 100644
--- a/libraries/pugixml/pugixml.info
+++ b/libraries/pugixml/pugixml.info
@@ -1,8 +1,8 @@
PRGNAM="pugixml"
-VERSION="1.14"
+VERSION="1.15"
HOMEPAGE="https://pugixml.org/"
-DOWNLOAD="https://github.com/zeux/pugixml/releases/download/v1.14/pugixml-1.14.tar.gz"
-MD5SUM="06e4242ee2352ee63c2b6627c6e3addb"
+DOWNLOAD="https://github.com/zeux/pugixml/releases/download/v1.15/pugixml-1.15.tar.gz"
+MD5SUM="3b894c29455eb33a40b165c6e2de5895"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/pymediainfo/pymediainfo.SlackBuild b/libraries/pymediainfo/pymediainfo.SlackBuild
index ff3d6927c0..add527a5e0 100644
--- a/libraries/pymediainfo/pymediainfo.SlackBuild
+++ b/libraries/pymediainfo/pymediainfo.SlackBuild
@@ -3,7 +3,7 @@
# Slackware build script for pymediainfo
# Copyright 2014-2021 Dimitris Zlatanidis Orestiada, Greece
-# Copyright 2023 Jeremy Hansen jebrhansen+SBo@gmail.com
+# Copyright 2023-2025 Jeremy Hansen jebrhansen+SBo@gmail.com
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -26,7 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=pymediainfo
-VERSION=${VERSION:-6.1.0}
+VERSION=${VERSION:-7.0.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -64,14 +64,21 @@ find -L . \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
export SETUPTOOLS_SCM_PRETEND_VERSION=$VERSION
+export PDM_BUILD_SCM_VERSION=$VERSION
-python3 setup.py install --root=$PKG
+# Requires wheel module, which doesn't show up in `pip freeze` but still works
+sed -i 's|, "wheel>=0.42"||' pyproject.toml
+
+python3 -m build --wheel --no-isolation
+python3 -m installer --destdir "$PKG" dist/*.whl
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
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS LICENSE README.rst $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ AUTHORS LICENSE README.md \
+ $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/libraries/pymediainfo/pymediainfo.info b/libraries/pymediainfo/pymediainfo.info
index a51861f0c6..b00e3217cb 100644
--- a/libraries/pymediainfo/pymediainfo.info
+++ b/libraries/pymediainfo/pymediainfo.info
@@ -1,10 +1,10 @@
PRGNAM="pymediainfo"
-VERSION="6.1.0"
+VERSION="7.0.1"
HOMEPAGE="https://pypi.python.org/pypi/pymediainfo/"
-DOWNLOAD="https://github.com/sbraz/pymediainfo/archive/refs/tags/v6.1.0/pymediainfo-6.1.0.tar.gz"
-MD5SUM="c920fb5c7d52728f4510b69cf3253c9d"
+DOWNLOAD="https://github.com/sbraz/pymediainfo/archive/refs/tags/v7.0.1/pymediainfo-7.0.1.tar.gz"
+MD5SUM="df55cbea9bcfbb65c7074cdbc07fc47e"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="libmediainfo"
+REQUIRES="libmediainfo python3-pdm-backend"
MAINTAINER="Jeremy Hansen"
EMAIL="jebrhansen+SBo@gmail.com"
diff --git a/libraries/python3-ruamel.yaml/python3-ruamel.yaml.SlackBuild b/libraries/python3-ruamel.yaml/python3-ruamel.yaml.SlackBuild
index f29713c713..e46152b858 100644
--- a/libraries/python3-ruamel.yaml/python3-ruamel.yaml.SlackBuild
+++ b/libraries/python3-ruamel.yaml/python3-ruamel.yaml.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for python3-ruamel.yaml
-# Copyright 2024 fourtysixandtwo <fourtysixandtwo@sliderr.net>
+# Copyright 2024-2025 fourtysixandtwo <fourtysixandtwo@sliderr.net>
# Copyright 2019-2023, Alexander Verbovetsky, Moscow, Russia
# All rights reserved.
#
@@ -26,7 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=python3-ruamel.yaml
-VERSION=${VERSION:-0.18.6}
+VERSION=${VERSION:-0.18.10}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/libraries/python3-ruamel.yaml/python3-ruamel.yaml.info b/libraries/python3-ruamel.yaml/python3-ruamel.yaml.info
index ac88b8dceb..188dfeff42 100644
--- a/libraries/python3-ruamel.yaml/python3-ruamel.yaml.info
+++ b/libraries/python3-ruamel.yaml/python3-ruamel.yaml.info
@@ -1,10 +1,10 @@
PRGNAM="python3-ruamel.yaml"
-VERSION="0.18.6"
+VERSION="0.18.10"
HOMEPAGE="https://sourceforge.net/p/ruamel-yaml"
-DOWNLOAD="https://files.pythonhosted.org/packages/source/r/ruamel.yaml/ruamel.yaml-0.18.6.tar.gz"
-MD5SUM="964a8e48646e26533d8e5f03cff99dde"
+DOWNLOAD="https://files.pythonhosted.org/packages/source/r/ruamel.yaml/ruamel.yaml-0.18.10.tar.gz"
+MD5SUM="e21d9748f618fbf6bcbd5ffe663b0654"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES=""
+REQUIRES="python3-ruamel.yaml.clib"
MAINTAINER="fourtysixandtwo"
EMAIL="fourtysixandtwo@sliderr.net"
diff --git a/libraries/qt-avif-image-plugin/qt-avif-image-plugin.SlackBuild b/libraries/qt-avif-image-plugin/qt-avif-image-plugin.SlackBuild
index 8477f9de91..ab4c57a04a 100644
--- a/libraries/qt-avif-image-plugin/qt-avif-image-plugin.SlackBuild
+++ b/libraries/qt-avif-image-plugin/qt-avif-image-plugin.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for qt-avif-image-plugin
-# Copyright 2023-2024 Marek Šrejma, <marek at modweb dot de>, Germany
+# Copyright 2023-2025 Marek Šrejma, Germany
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=qt-avif-image-plugin
-VERSION=${VERSION:-0.8.5}
+VERSION=${VERSION:-0.9.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/libraries/qt-avif-image-plugin/qt-avif-image-plugin.info b/libraries/qt-avif-image-plugin/qt-avif-image-plugin.info
index 912c28750c..86839a83cb 100644
--- a/libraries/qt-avif-image-plugin/qt-avif-image-plugin.info
+++ b/libraries/qt-avif-image-plugin/qt-avif-image-plugin.info
@@ -1,8 +1,8 @@
PRGNAM="qt-avif-image-plugin"
-VERSION="0.8.5"
+VERSION="0.9.2"
HOMEPAGE="https://github.com/novomesk/qt-avif-image-plugin"
-DOWNLOAD="https://github.com/novomesk/qt-avif-image-plugin/archive/refs/tags/v0.8.5/qt-avif-image-plugin-0.8.5.tar.gz"
-MD5SUM="0e5804f9cbb7fa0067aba166d7d2ba42"
+DOWNLOAD="https://github.com/novomesk/qt-avif-image-plugin/archive/refs/tags/v0.9.2/qt-avif-image-plugin-0.9.2.tar.gz"
+MD5SUM="3a8c97057acd648d6e0724401c42766c"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="libavif"
diff --git a/libraries/qt-installer-script/README b/libraries/qt-installer-script/README
index e89844e80f..af4eef4f52 100644
--- a/libraries/qt-installer-script/README
+++ b/libraries/qt-installer-script/README
@@ -8,20 +8,20 @@ It is provided to perform and unattended install, define a
location (/opt/Qt) and setup a basic skeleton so you can add
several Qt library versions in parallel.
-The script will download from Qt the online installer 4.8.0
-labelled "qt-online-installer-linux-x64-4.8.0.run"
+The script will download from Qt the online installer and
+carry out a base installation at /opt/Qt.
+
+Start by running "/opt/qt-installer-script/qt-installer-script.sh"
To install specific Qt libraries you can either:
-1) Run the Qt MainenanceTool from the desktop menu icon
+1) Run the /opt/Qt/MainenanceTool from the desktop menu icon
or,
2) Run a bash script that will add a set of Qt Libraries specific
- for you application.
+ for you application.for example the provided
+ "qt-6.2.4-libraries-for-musescore.sh"
-An install script example "qt-6.2.4-libraries-for-musescore.sh"
-is included.
+To uninstall use the /opt/Qt/MaintenanceTool
You will still need a Qt account in order to use this script.
-Start by running "qt-installer-script" at the command prompt.
-
-Homepage at https://download.qt.io/archive/online_installers/4.8/
+Homepage at https://download.qt.io/archive/online_installers/
diff --git a/libraries/qt-installer-script/qt-installer-script.SlackBuild b/libraries/qt-installer-script/qt-installer-script.SlackBuild
index b537c4a4a7..45b573c512 100644
--- a/libraries/qt-installer-script/qt-installer-script.SlackBuild
+++ b/libraries/qt-installer-script/qt-installer-script.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=qt-installer-script
-VERSION=${VERSION:-4.8.1}
+VERSION=${VERSION:-4.9.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -77,10 +77,6 @@ install -D -m0755 $PRGNAM.sh $PKG/opt/$PRGNAM/$PRGNAM.sh
install -D -m0755 qt-clean-root-data.sh $PKG/opt/$PRGNAM/qt-clean-root-data.sh
install -D -m0755 qt-6.2.4-libraries-for-musescore.sh $PKG/opt/$PRGNAM/qt-6.2.4-libraries-for-musescore.sh
-mkdir -p $PKG/usr/bin
-(cd $PKG/usr/bin; rm -rf $PRGNAM)
-(cd $PKG/usr/bin; ln -s ../../opt/$PRGNAM/$PRGNAM.sh $PRGNAM)
-
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
diff --git a/libraries/qt-installer-script/qt-installer-script.info b/libraries/qt-installer-script/qt-installer-script.info
index eecde1dd3f..40ac15e342 100644
--- a/libraries/qt-installer-script/qt-installer-script.info
+++ b/libraries/qt-installer-script/qt-installer-script.info
@@ -1,8 +1,8 @@
PRGNAM="qt-installer-script"
-VERSION="4.8.1"
+VERSION="4.9.0"
HOMEPAGE="https://github.com/antonioleal/qt-installer-script"
-DOWNLOAD="https://github.com/antonioleal/qt-installer-script/archive/v4.8.1/qt-installer-script-4.8.1.tar.gz"
-MD5SUM="f2516d72aa40d84e989cc931190aab58"
+DOWNLOAD="https://github.com/antonioleal/qt-installer-script/archive/v4.9.0/qt-installer-script-4.9.0.tar.gz"
+MD5SUM="259b99a2f3e80145573b2e81cf5ebc56"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/qt-installer-script/slack-desc b/libraries/qt-installer-script/slack-desc
index 0c418e13e6..67e710b88b 100644
--- a/libraries/qt-installer-script/slack-desc
+++ b/libraries/qt-installer-script/slack-desc
@@ -16,4 +16,4 @@ qt-installer-script: It is provided to perform and unattended install, define a
qt-installer-script: location (/opt/Qt) and setup a basic skeleton so you can add
qt-installer-script: several Qt library versions in parallel.
qt-installer-script:
-qt-installer-script: Homepage at https://github.com/antonioleal/qt-installer-script
+qt-installer-script:
diff --git a/libraries/qt-jpegxl-image-plugin/qt-jpegxl-image-plugin.SlackBuild b/libraries/qt-jpegxl-image-plugin/qt-jpegxl-image-plugin.SlackBuild
index 14977111f0..77f4c2a26c 100644
--- a/libraries/qt-jpegxl-image-plugin/qt-jpegxl-image-plugin.SlackBuild
+++ b/libraries/qt-jpegxl-image-plugin/qt-jpegxl-image-plugin.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for qt-jpegxl-image-plugin
-# Copyright 2023-2024 Marek Šrejma, <marek at modweb dot de>, Germany
+# Copyright 2023-2025 Marek Šrejma, Germany
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=qt-jpegxl-image-plugin
-VERSION=${VERSION:-0.6.2}
+VERSION=${VERSION:-0.8.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/libraries/qt-jpegxl-image-plugin/qt-jpegxl-image-plugin.info b/libraries/qt-jpegxl-image-plugin/qt-jpegxl-image-plugin.info
index 159a8a77b5..8b47a57c18 100644
--- a/libraries/qt-jpegxl-image-plugin/qt-jpegxl-image-plugin.info
+++ b/libraries/qt-jpegxl-image-plugin/qt-jpegxl-image-plugin.info
@@ -1,8 +1,8 @@
PRGNAM="qt-jpegxl-image-plugin"
-VERSION="0.6.2"
+VERSION="0.8.0"
HOMEPAGE="https://github.com/novomesk/qt-jpegxl-image-plugin"
-DOWNLOAD="https://github.com/novomesk/qt-jpegxl-image-plugin/archive/refs/tags/v0.6.2/qt-jpegxl-image-plugin-0.6.2.tar.gz"
-MD5SUM="5a5532e936fc6751a2a9b5c81c680ce3"
+DOWNLOAD="https://github.com/novomesk/qt-jpegxl-image-plugin/archive/refs/tags/v0.8.0/qt-jpegxl-image-plugin-0.8.0.tar.gz"
+MD5SUM="aee4004223dcc3bb3228bddc176d8518"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="libjxl"
diff --git a/libraries/qt6gtk2/qt6gtk2.SlackBuild b/libraries/qt6gtk2/qt6gtk2.SlackBuild
index dedc1d5735..670ab4be6a 100644
--- a/libraries/qt6gtk2/qt6gtk2.SlackBuild
+++ b/libraries/qt6gtk2/qt6gtk2.SlackBuild
@@ -76,11 +76,14 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# source manually
+. /etc/profile.d/qt6.sh
+
QMAKE_CFLAGS_RELEASE="$SLKCFLAGS" \
QMAKE_CXXFLAGS_RELEASE="$SLKCFLAGS" \
PREFIX=/usr \
LIBDIR=/usr/lib${LIBDIRSUFFIX} \
-qmake-qt6
+qmake6
make
make install INSTALL_ROOT=$PKG
diff --git a/libraries/qwt/README b/libraries/qwt/README
index e72ff35b3c..9604bbf2ea 100644
--- a/libraries/qwt/README
+++ b/libraries/qwt/README
@@ -4,8 +4,21 @@ for technical and scientifical purposes. It includes a 2-D plotting
widget, different kinds of sliders, and much more.
Optional dependency: qt4. If installed, the package will include qt4
-support.
+support. Since the default SBo build of qt4 does not include support
+for designer, no qwt designer plugin is installed for qt4.
If you're interested in developing software that uses qwt, you might
want to build this with EXAMPLES=yes in the environment. This will
-compile the example programs and install them in the doc dir.
+compile the example and playground programs and install them in the
+doc dir.
+
+Some users have experienced problems when Playground component is
+enabled, so is now turned off by default. It may be reenabled by
+setting the environment variable
+ PLAYGROUND=yes
+
+Some users have experienced problems when Tests component is
+enabled, so is now turned off by default. It may be reenabled by
+setting the environment variable
+ TESTS=yes
+
diff --git a/libraries/qwt/patch-6.1.2-config.diff b/libraries/qwt/patch-6.1.2-config.diff
deleted file mode 100644
index 7da2db7d5a..0000000000
--- a/libraries/qwt/patch-6.1.2-config.diff
+++ /dev/null
@@ -1,125 +0,0 @@
---- qwtconfig.pri.orig 2016-06-13 17:14:23.031601095 +1000
-+++ qwtconfig.pri 2018-09-14 14:50:18.247000000 +1000
-@@ -16,11 +16,8 @@
- # Install paths
- ######################################################################
-
--QWT_INSTALL_PREFIX = $$[QT_INSTALL_PREFIX]
--
- unix {
-- QWT_INSTALL_PREFIX = /usr/local/qwt-$$QWT_VERSION
-- # QWT_INSTALL_PREFIX = /usr/local/qwt-$$QWT_VERSION-qt-$$QT_VERSION
-+ QWT_INSTALL_PREFIX = /usr
- }
-
- win32 {
-@@ -29,8 +26,10 @@
- }
-
- QWT_INSTALL_DOCS = $${QWT_INSTALL_PREFIX}/doc
--QWT_INSTALL_HEADERS = $${QWT_INSTALL_PREFIX}/include
--QWT_INSTALL_LIBS = $${QWT_INSTALL_PREFIX}/lib
-+QWT_INSTALL_HEADERS = $${QWT_INSTALL_PREFIX}/include/qwt
-+QWT_INSTALL_LIBS = $${QWT_INSTALL_PREFIX}/lib$${LIBDIRSUFFIX}
-+
-+
-
- ######################################################################
- # Designer plugin
-@@ -42,14 +41,12 @@
- # runtime environment of designer/creator.
- ######################################################################
-
--QWT_INSTALL_PLUGINS = $${QWT_INSTALL_PREFIX}/plugins/designer
--
- # linux distributors often organize the Qt installation
- # their way and QT_INSTALL_PREFIX doesn't offer a good
- # path. Also QT_INSTALL_PREFIX is only one of the default
- # search paths of the designer - not the Qt creator
-
--#QWT_INSTALL_PLUGINS = $$[QT_INSTALL_PREFIX]/plugins/designer
-+QWT_INSTALL_PLUGINS = $$[QT_INSTALL_PLUGINS]/designer
-
- ######################################################################
- # Features
-@@ -63,8 +60,7 @@
- # with every Qt upgrade.
- ######################################################################
-
--QWT_INSTALL_FEATURES = $${QWT_INSTALL_PREFIX}/features
--# QWT_INSTALL_FEATURES = $$[QT_INSTALL_PREFIX]/features
-+QWT_INSTALL_FEATURES = $$[QMAKE_MKSPECS]/features
-
- ######################################################################
- # Build the static/shared libraries.
-@@ -141,7 +137,7 @@
- # Otherwise you have to build them from the examples directory.
- ######################################################################
-
--#QWT_CONFIG += QwtExamples
-+QWT_CONFIG += QwtExamples
-
- ######################################################################
- # The playground is primarily intended for the Qwt development
-@@ -171,5 +167,5 @@
-
- unix {
-
-- #QWT_CONFIG += QwtPkgConfig
-+ QWT_CONFIG += QwtPkgConfig
- }
---- src/src.pro.orig 2018-09-14 14:52:33.531000000 +1000
-+++ src/src.pro 2018-09-14 14:53:59.816000000 +1000
-@@ -17,7 +17,12 @@
- QWT_OUT_ROOT = $${OUT_PWD}/..
-
- TEMPLATE = lib
--TARGET = $$qwtLibraryTarget(qwt)
-+greaterThan(QT_MAJOR_VERSION, 4) {
-+ TARGET = $$qwtLibraryTarget(qwt-qt5)
-+}
-+else {
-+ TARGET = $$qwtLibraryTarget(qwt)
-+}
-
- DESTDIR = $${QWT_OUT_ROOT}/lib
-
---- designer/designer.pro.orig 2016-06-13 17:14:23.019600853 +1000
-+++ designer/designer.pro 2018-09-14 17:20:37.038000000 +1000
-@@ -83,8 +83,16 @@
- # compile the path for finding the Qwt library
- # into the plugin. Not supported on Windows !
-
-- QMAKE_RPATHDIR *= $${QWT_INSTALL_LIBS}
-- qwtAddLibrary($${QWT_OUT_ROOT}/lib, qwt)
-+ #QMAKE_RPATHDIR *= $${QWT_INSTALL_LIBS}
-+ #qwtAddLibrary($${QWT_OUT_ROOT}/lib, qwt)
-+ contains(QWT_CONFIG, QwtDll) {
-+ greaterThan(QT_MAJOR_VERSION, 4) {
-+ qwtAddLibrary($${QWT_OUT_ROOT}/lib, qwt-qt5)
-+ }
-+ else {
-+ qwtAddLibrary($${QWT_OUT_ROOT}/lib, qwt)
-+ }
-+ }
-
- contains(QWT_CONFIG, QwtDll) {
-
---- examples/examples.pri.orig 2016-06-13 17:14:23.023600934 +1000
-+++ examples/examples.pri 2018-09-14 17:44:03.727000000 +1000
-@@ -34,8 +34,13 @@
- }
- }
-
--QMAKE_RPATHDIR *= $${QWT_OUT_ROOT}/lib
--qwtAddLibrary($${QWT_OUT_ROOT}/lib, qwt)
-+#QMAKE_RPATHDIR *= $${QWT_OUT_ROOT}/lib
-+greaterThan(QT_MAJOR_VERSION, 4) {
-+ qwtAddLibrary($${QWT_OUT_ROOT}/lib, qwt-qt5)
-+}
-+else {
-+ qwtAddLibrary($${QWT_OUT_ROOT}/lib, qwt)
-+}
-
- greaterThan(QT_MAJOR_VERSION, 4) {
-
diff --git a/libraries/qwt/patch-6.1.2-pkgconfig.diff b/libraries/qwt/patch-6.1.2-pkgconfig.diff
deleted file mode 100644
index b7572b19e9..0000000000
--- a/libraries/qwt/patch-6.1.2-pkgconfig.diff
+++ /dev/null
@@ -1,22 +0,0 @@
---- src/src.pro.orig 2014-12-12 00:13:13.461186493 +1000
-+++ src/src.pro 2015-10-05 08:55:43.504194164 +1000
-@@ -21,6 +21,19 @@
-
- DESTDIR = $${QWT_OUT_ROOT}/lib
-
-+# Add pkgconfig support
-+unix {
-+ CONFIG += create_pc create_prl no_install_prl
-+ QMAKE_PKGCONFIG_NAME = qwt
-+ QMAKE_PKGCONFIG_DESCRIPTION = GUI components
-+ QMAKE_PKGCONFIG_PREFIX = $${QWT_INSTALL_PREFIX}
-+ QMAKE_PKGCONFIG_LIBDIR = $${QWT_INSTALL_LIBS}
-+ QMAKE_PKGCONFIG_INCDIR = $${QWT_INSTALL_HEADERS}
-+ QMAKE_PKGCONFIG_REQUIRES = QtCore
-+ QMAKE_PKGCONFIG_DESTDIR = pkgconfig
-+}
-+
-+
- contains(QWT_CONFIG, QwtDll) {
-
- CONFIG += dll
diff --git a/libraries/qwt/patch-6.1.2-qwtconfig.diff b/libraries/qwt/patch-6.1.2-qwtconfig.diff
deleted file mode 100644
index ca1638156a..0000000000
--- a/libraries/qwt/patch-6.1.2-qwtconfig.diff
+++ /dev/null
@@ -1,63 +0,0 @@
---- qwtconfig.pri.orig 2014-12-11 14:13:13.513186492 +0000
-+++ qwtconfig.pri 2015-09-27 08:33:01.948490369 +0000
-@@ -16,11 +16,8 @@
- # Install paths
- ######################################################################
-
--QWT_INSTALL_PREFIX = $$[QT_INSTALL_PREFIX]
--
- unix {
-- QWT_INSTALL_PREFIX = /usr/local/qwt-$$QWT_VERSION
-- # QWT_INSTALL_PREFIX = /usr/local/qwt-$$QWT_VERSION-qt-$$QT_VERSION
-+ QWT_INSTALL_PREFIX = /usr
- }
-
- win32 {
-@@ -29,8 +26,10 @@
- }
-
- QWT_INSTALL_DOCS = $${QWT_INSTALL_PREFIX}/doc
--QWT_INSTALL_HEADERS = $${QWT_INSTALL_PREFIX}/include
--QWT_INSTALL_LIBS = $${QWT_INSTALL_PREFIX}/lib
-+QWT_INSTALL_HEADERS = $${QWT_INSTALL_PREFIX}/include/qwt
-+QWT_INSTALL_LIBS = $${QWT_INSTALL_PREFIX}/lib$${LIBDIRSUFFIX}
-+
-+
-
- ######################################################################
- # Designer plugin
-@@ -42,14 +41,12 @@
- # runtime environment of designer/creator.
- ######################################################################
-
--QWT_INSTALL_PLUGINS = $${QWT_INSTALL_PREFIX}/plugins/designer
--
- # linux distributors often organize the Qt installation
- # their way and QT_INSTALL_PREFIX doesn't offer a good
- # path. Also QT_INSTALL_PREFIX is only one of the default
- # search paths of the designer - not the Qt creator
-
--#QWT_INSTALL_PLUGINS = $$[QT_INSTALL_PREFIX]/plugins/designer
-+QWT_INSTALL_PLUGINS = $$[QT_INSTALL_PLUGINS]/designer
-
- ######################################################################
- # Features
-@@ -63,8 +60,7 @@
- # with every Qt upgrade.
- ######################################################################
-
--QWT_INSTALL_FEATURES = $${QWT_INSTALL_PREFIX}/features
--# QWT_INSTALL_FEATURES = $$[QT_INSTALL_PREFIX]/features
-+QWT_INSTALL_FEATURES = $$[QMAKE_MKSPECS]/features
-
- ######################################################################
- # Build the static/shared libraries.
-@@ -141,7 +137,7 @@
- # Otherwise you have to build them from the examples directory.
- ######################################################################
-
--#QWT_CONFIG += QwtExamples
-+QWT_CONFIG += QwtExamples
-
- ######################################################################
- # The playground is primarily intended for the Qwt development
diff --git a/libraries/qwt/patch-6.3.0-config.diff b/libraries/qwt/patch-6.3.0-config.diff
new file mode 100644
index 0000000000..130f1f1def
--- /dev/null
+++ b/libraries/qwt/patch-6.3.0-config.diff
@@ -0,0 +1,147 @@
+--- qwtconfig.pri.orig 2024-05-08 17:00:29.929579728 +1000
++++ qwtconfig.pri 2025-01-22 20:43:41.682747429 +1100
+@@ -19,7 +19,7 @@
+ QWT_INSTALL_PREFIX = $$[QT_INSTALL_PREFIX]
+
+ unix {
+- QWT_INSTALL_PREFIX = /usr/local/qwt-$$QWT_VERSION
++ QWT_INSTALL_PREFIX = /usr
+ # QWT_INSTALL_PREFIX = /usr/local/qwt-$$QWT_VERSION-qt-$$QT_VERSION
+ }
+
+@@ -28,9 +28,9 @@
+ # QWT_INSTALL_PREFIX = C:/Qwt-$$QWT_VERSION-qt-$$QT_VERSION
+ }
+
+-QWT_INSTALL_DOCS = $${QWT_INSTALL_PREFIX}/doc
+-QWT_INSTALL_HEADERS = $${QWT_INSTALL_PREFIX}/include
+-QWT_INSTALL_LIBS = $${QWT_INSTALL_PREFIX}/lib
++QWT_INSTALL_DOCS = $${QWT_INSTALL_PREFIX}/doc/qwt-$${QWT_VERSION}
++QWT_INSTALL_HEADERS = $${QWT_INSTALL_PREFIX}/include/qwt
++QWT_INSTALL_LIBS = $${QWT_INSTALL_PREFIX}/lib$${LIBDIRSUFFIX}
+
+ ######################################################################
+ # Designer plugin
+@@ -42,14 +42,12 @@
+ # runtime environment of designer/creator.
+ ######################################################################
+
+-QWT_INSTALL_PLUGINS = $${QWT_INSTALL_PREFIX}/plugins/designer
+-
+ # linux distributors often organize the Qt installation
+ # their way and QT_INSTALL_PREFIX doesn't offer a good
+ # path. Also QT_INSTALL_PREFIX is only one of the default
+ # search paths of the designer - not the Qt creator
+
+-#QWT_INSTALL_PLUGINS = $$[QT_INSTALL_PREFIX]/plugins/designer
++QWT_INSTALL_PLUGINS = $$[QT_INSTALL_PLUGINS]/designer
+
+ ######################################################################
+ # Features
+@@ -63,7 +61,7 @@
+ # with every Qt upgrade.
+ ######################################################################
+
+-QWT_INSTALL_FEATURES = $${QWT_INSTALL_PREFIX}/features
++QWT_INSTALL_FEATURES = $$[QMAKE_MKSPECS]/features
+ # QWT_INSTALL_FEATURES = $$[QT_INSTALL_PREFIX]/features
+
+ ######################################################################
+--- src/src.pro.orig 2024-05-08 17:00:29.905579150 +1000
++++ src/src.pro 2025-01-23 08:02:01.624870000 +1100
+@@ -17,7 +17,12 @@
+ QWT_OUT_ROOT = $${OUT_PWD}/..
+
+ TEMPLATE = lib
+-TARGET = $$qwtLibraryTarget(qwt)
++greaterThan(QT_MAJOR_VERSION, 4) {
++ TARGET = $$qwtLibraryTarget(qwt-qt5)
++}
++else {
++ TARGET = $$qwtLibraryTarget(qwt)
++}
+
+ DESTDIR = $${QWT_OUT_ROOT}/lib
+
+--- src/src.pro.orig 2025-01-23 10:28:07.711859611 +1100
++++ src/src.pro 2025-01-23 11:07:47.904859611 +1100
+@@ -36,7 +36,12 @@
+
+ # we increase the SONAME for every minor number
+
++greaterThan(QT_MAJOR_VERSION, 4) {
++ QWT_SONAME=libqwt-qt5.so.$${VER_MAJ}.$${VER_MIN}
++}
++else {
+ QWT_SONAME=libqwt.so.$${VER_MAJ}.$${VER_MIN}
++}
+ QMAKE_LFLAGS *= $${QMAKE_LFLAGS_SONAME}$${QWT_SONAME}
+ QMAKE_LFLAGS_SONAME=
+ }
+--- designer/designer.pro.orig 2024-05-08 17:00:29.909579246 +1000
++++ designer/designer.pro 2025-01-23 08:07:26.809701095 +1100
+@@ -98,8 +98,14 @@
+ # compile the path for finding the Qwt library
+ # into the plugin. Not supported on Windows !
+
+- QMAKE_RPATHDIR *= $${QWT_INSTALL_LIBS}
+- qwtAddLibrary($${QWT_OUT_ROOT}/lib, qwt)
++ contains(QWT_CONFIG, QwtDll) {
++ greaterThan(QT_MAJOR_VERSION, 4) {
++ qwtAddLibrary($${QWT_OUT_ROOT}/lib, qwt-qt5)
++ }
++ else {
++ qwtAddLibrary($${QWT_OUT_ROOT}/lib, qwt)
++ }
++ }
+
+ contains(QWT_CONFIG, QwtDll) {
+
+--- examples/examples.pri.orig 2024-05-08 17:00:29.917579440 +1000
++++ examples/examples.pri 2025-01-23 08:56:07.317443863 +1100
+@@ -34,7 +34,12 @@
+ }
+
+ QMAKE_RPATHDIR *= $${QWT_OUT_ROOT}/lib
+-qwtAddLibrary($${QWT_OUT_ROOT}/lib, qwt)
++greaterThan(QT_MAJOR_VERSION, 4) {
++ qwtAddLibrary($${QWT_OUT_ROOT}/lib, qwt-qt5)
++}
++else {
++ qwtAddLibrary($${QWT_OUT_ROOT}/lib, qwt)
++}
+
+ greaterThan(QT_MAJOR_VERSION, 4) {
+
+--- playground/playground.pri.orig 2024-05-08 17:00:29.913579343 +1000
++++ playground/playground.pri 2025-01-23 08:57:25.935379885 +1100
+@@ -35,7 +35,12 @@
+
+
+ QMAKE_RPATHDIR *= $${QWT_ROOT}/lib
+-qwtAddLibrary($${QWT_OUT_ROOT}/lib, qwt)
++greaterThan(QT_MAJOR_VERSION, 4) {
++ qwtAddLibrary($${QWT_OUT_ROOT}/lib, qwt-qt5)
++}
++else {
++ qwtAddLibrary($${QWT_OUT_ROOT}/lib, qwt)
++}
+
+ greaterThan(QT_MAJOR_VERSION, 4) {
+
+--- tests/tests.pri.orig 2024-05-08 17:00:29.921579536 +1000
++++ tests/tests.pri 2025-01-23 09:11:46.040715981 +1100
+@@ -39,7 +39,12 @@
+
+
+ QMAKE_RPATHDIR *= $${QWT_ROOT}/lib
+-qwtAddLibrary($${QWT_OUT_ROOT}/lib, qwt)
++greaterThan(QT_MAJOR_VERSION, 4) {
++ qwtAddLibrary($${QWT_OUT_ROOT}/lib, qwt-qt5)
++}
++else {
++ qwtAddLibrary($${QWT_OUT_ROOT}/lib, qwt)
++}
+
+ greaterThan(QT_MAJOR_VERSION, 4) {
+
diff --git a/libraries/qwt/qwt.SlackBuild b/libraries/qwt/qwt.SlackBuild
index 15ad9c54d2..937d0669bc 100644
--- a/libraries/qwt/qwt.SlackBuild
+++ b/libraries/qwt/qwt.SlackBuild
@@ -6,7 +6,7 @@
# Nobbled from Slacky and sanitised for sanity :)
# Modified by dunkyp <dunkyp@gmail.com>
# Modified by the Slackbuilds.org project
-# Maintained 2015-2021 by Christoph Willing <chris.willing@linux.com>
+# Maintained 2015-2025 by Christoph Willing
# 20220419 bkw: Modified by SlackBuilds.org, BUILD=3:
# - don't build and install the example binaries by default;
@@ -18,8 +18,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=qwt
-VERSION=${VERSION:-6.1.6}
-BUILD=${BUILD:-3}
+VERSION=${VERSION:-6.3.0}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -62,7 +62,7 @@ cd $TMP
rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
cd $PRGNAM-$VERSION
-patch -p0 < $CWD/patch-6.1.2-config.diff
+patch -p0 < $CWD/patch-$VERSION-config.diff
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -74,22 +74,35 @@ find -L . \
# particularly useful. the sources to the examples are installed in
# the doc dir, if users want to play with them.
[ "${EXAMPLES:-no}" != "yes" ] &&
+ echo "Disabling Examples"
sed -i '/^QWT_CONFIG.*QwtExamples/s,^,#,' qwtconfig.pri
+[ "${TESTS:-no}" != "yes" ] &&
+ echo "Disabling Tests"
+ sed -i '/^QWT_CONFIG.*QwtTests/s,^,#,' qwtconfig.pri
+
+[ "${PLAYGROUND:-no}" != "yes" ] &&
+ echo "Disabling Playground"
+ sed -i '/^QWT_CONFIG.*QwtPlayground/s,^,#,' qwtconfig.pri
+
if [ -x /usr/lib$LIBDIRSUFFIX/qt4/bin/qmake ]; then
mkdir -p build-qt4
cd build-qt4
qmake-qt4 .. LIBDIRSUFFIX=$LIBDIRSUFFIX
- make CFLAGS+="$SLKCFLAGS" CXXFLAGS+="$SLKCFLAGS -std=c++11 -fPIC"
- make install INSTALL_ROOT=$PKG
+
+ CFLAGS="$SLKCFLAGS" \
+ CXXFLAGS="$SLKCFLAGS" \
+ make && make install INSTALL_ROOT=$PKG
cd ..
fi
mkdir -p build
cd build
qmake-qt5 .. LIBDIRSUFFIX=$LIBDIRSUFFIX
- make CFLAGS+="$SLKCFLAGS" CXXFLAGS+="$SLKCFLAGS -std=c++11 -fPIC"
- make install INSTALL_ROOT=$PKG
+
+ CFLAGS="$SLKCFLAGS" \
+ CXXFLAGS="$SLKCFLAGS" \
+ make && make install INSTALL_ROOT=$PKG
cd ..
# Rationalise the pkgconfig default filenames
@@ -101,24 +114,29 @@ cd ..
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-mv $PKG/usr/doc/man $PKG/usr
-rm -f $PKG/usr/man/man3/_tmp*
-gzip -9 $PKG/usr/man/man*/*
-
PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
mkdir -p $PKGDOC/examples
+mkdir -p $PKGDOC/playground
cp -a examples/* $PKGDOC/examples/
+cp -a playground/* $PKGDOC/playground/
if [ "${EXAMPLES:-no}" = "yes" ]; then
- mkdir -p $PKGDOC/examples/bin
- install -s -m0755 build/examples/bin/* $PKGDOC/examples/bin
+ if [ -d build-qt4 ]; then
+ mkdir -p $PKGDOC/examples/bin-qt4
+ mkdir -p $PKGDOC/playground/bin-qt4
+ install -s -m0755 build-qt4/examples/bin/* $PKGDOC/examples/bin-qt4
+ install -s -m0755 build-qt4/playground/bin/* $PKGDOC/playground/bin-qt4
+ fi
+ mkdir -p $PKGDOC/examples/bin-qt5
+ mkdir -p $PKGDOC/playground/bin-qt5
+ install -s -m0755 build/examples/bin/* $PKGDOC/examples/bin-qt5
+ install -s -m0755 build/playground/bin/* $PKGDOC/playground/bin-qt5
fi
-mv $PKG/usr/doc/html $PKGDOC
-cp -a CHANGES* COPYING README $PKGDOC
+cp -a COPYING INSTALL README $PKGDOC
cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
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
+/sbin/makepkg -l y -c n --remove-tmp-rpaths $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/libraries/qwt/qwt.info b/libraries/qwt/qwt.info
index 36c5bc0943..883305bdb1 100644
--- a/libraries/qwt/qwt.info
+++ b/libraries/qwt/qwt.info
@@ -1,8 +1,8 @@
PRGNAM="qwt"
-VERSION="6.1.6"
+VERSION="6.3.0"
HOMEPAGE="https://qwt.sourceforge.io/"
-DOWNLOAD="https://downloads.sourceforge.net/qwt/qwt-6.1.6.tar.bz2"
-MD5SUM="cc71be5d6c33c2fc19ae8082ccdd3e83"
+DOWNLOAD="https://downloads.sourceforge.net/qwt/qwt-6.3.0.tar.bz2"
+MD5SUM="06a8f8eb1bc07bedfb1df601804439cb"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/robin-map/robin-map.SlackBuild b/libraries/robin-map/robin-map.SlackBuild
index 46b8a97c3d..f25160c95a 100644
--- a/libraries/robin-map/robin-map.SlackBuild
+++ b/libraries/robin-map/robin-map.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for robin-map
-# Copyright 2019-2023 Christoph Willing Brisbane, Australia
+# Copyright 2019-2025 Christoph Willing Sydney, Australia
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=robin-map
-VERSION=${VERSION:-1.2.1}
+VERSION=${VERSION:-1.3.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/libraries/robin-map/robin-map.info b/libraries/robin-map/robin-map.info
index 13fa5ae280..6d154d2e6f 100644
--- a/libraries/robin-map/robin-map.info
+++ b/libraries/robin-map/robin-map.info
@@ -1,8 +1,8 @@
PRGNAM="robin-map"
-VERSION="1.2.1"
+VERSION="1.3.0"
HOMEPAGE="https://github.com/Tessil/robin-map"
-DOWNLOAD="https://github.com/Tessil/robin-map/archive/v1.2.1/robin-map-1.2.1.tar.gz"
-MD5SUM="52b996544ac47bc89faabef5acf8d6e6"
+DOWNLOAD="https://github.com/Tessil/robin-map/archive/v1.3.0/robin-map-1.3.0.tar.gz"
+MD5SUM="2e451e84be031b99f10faec9a7d70246"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/skalibs/skalibs.SlackBuild b/libraries/skalibs/skalibs.SlackBuild
index 2cd1e6d00c..02dd3059ed 100644
--- a/libraries/skalibs/skalibs.SlackBuild
+++ b/libraries/skalibs/skalibs.SlackBuild
@@ -26,7 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=skalibs
-VERSION=${VERSION:-2.14.2.0}
+VERSION=${VERSION:-2.14.3.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/libraries/skalibs/skalibs.info b/libraries/skalibs/skalibs.info
index c99c01ff24..c4299cbd05 100644
--- a/libraries/skalibs/skalibs.info
+++ b/libraries/skalibs/skalibs.info
@@ -1,8 +1,8 @@
PRGNAM="skalibs"
-VERSION="2.14.2.0"
+VERSION="2.14.3.0"
HOMEPAGE="https://skarnet.org/software/skalibs/"
-DOWNLOAD="https://skarnet.org/software/skalibs/skalibs-2.14.2.0.tar.gz"
-MD5SUM="a46e9c4e86c19644f6a5ff1037c8da81"
+DOWNLOAD="https://skarnet.org/software/skalibs/skalibs-2.14.3.0.tar.gz"
+MD5SUM="48c9e4687d65bff10db5bcc315195a4a"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/spawn/README b/libraries/spawn/README
new file mode 100644
index 0000000000..559a61399d
--- /dev/null
+++ b/libraries/spawn/README
@@ -0,0 +1,7 @@
+spawn (Ada Process API)
+
+This library provides simple API to spawn processes and communicate
+with them.
+
+There are two implementations of the same API - the integrated into
+Glib event loop and the independent.
diff --git a/libraries/spawn/slack-desc b/libraries/spawn/slack-desc
new file mode 100644
index 0000000000..14fa783624
--- /dev/null
+++ b/libraries/spawn/slack-desc
@@ -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------------------------------------------------------|
+spawn: spawn (Ada Process API)
+spawn:
+spawn: This library provides simple API to spawn processes and communicate
+spawn: with them.
+spawn:
+spawn: There are two implementations of the same API - the integrated into
+spawn: Glib event loop and the independent.
+spawn:
+spawn: https://github.com/AdaCore/spawn
+spawn:
+spawn:
diff --git a/libraries/spawn/spawn.SlackBuild b/libraries/spawn/spawn.SlackBuild
new file mode 100644
index 0000000000..75bad40c9e
--- /dev/null
+++ b/libraries/spawn/spawn.SlackBuild
@@ -0,0 +1,118 @@
+#!/bin/bash
+# Slackware build script for spawm
+# Copyright 2012-2024 Zhu Qun-Ying
+# 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=spawn
+VERSION=${VERSION:-25.0.0}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+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
+mkdir $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz -C $PRGNAM-$VERSION --strip-components=1
+
+cd $PRGNAM-$VERSION
+chown -R root:root .
+
+sed -i -e 's/\[/(/g' \
+ -e 's/\]/)/g' source/spawn/spawn-channels__glib_posix.adb
+GPRBUILD_FLAGS="-p -j0 -R -cargs $SLKCFLAGS -largs -s -gargs"
+export GPR_PROJECT_PATH=/usr/share/gpr:./gnat
+GPRINSTALL_FLAGS="-p -f --prefix=$PKG/usr"
+
+lib_types=(static-pic relocatable)
+for lib in ${lib_types[@]}; do
+ echo "Building $lib library"
+ gprbuild -j0 $GPRBUILD_FLAGS -XLIBRARY_TYPE=$lib -P gnat/spawn.gpr
+ gprinstall $GPRINSTALL_FLAGS -XLIBRARY_TYPE=$lib \
+ --sources-subdir=include/spawn \
+ --lib-subdir=lib$LIBDIRSUFFIX/spawn/$lib \
+ --build-name=$lib --build-var=SPAWN_LIBRARY_TYPE \
+ -P gnat/spawn.gpr
+ gprbuild -j0 $GPRBUILD_FLAGS -XLIBRARY_TYPE=$lib -P gnat/spawn_glib.gpr
+ gprinstall $GPRINSTALL_FLAGS -XLIBRARY_TYPE=$lib \
+ --sources-subdir=include/spawn_glib \
+ --lib-subdir=lib$LIBDIRSUFFIX/spawn_glib/$lib \
+ --build-name=$lib --build-var=SPAWN_LIBRARY_TYPE \
+ -P gnat/spawn_glib.gpr
+done
+
+# static-pic and relocatable ali files are the same
+installed_lib=(spawn spawn_glib)
+for lib in $installed_lib; do
+ (cd $PKG/usr/lib$LIBDIRSUFFIX/$lib/static-pic
+ rm *.ali
+ for file in ../relocatable/*.ali; do
+ ln -s $file
+ done
+ )
+done
+mkdir -p $PKG/install
+cp $CWD/slack-desc $PKG/install
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp README.md LICENSE.txt $CWD/$PRGNAM.SlackBuild $PKG/usr/doc/$PRGNAM-$VERSION
+
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/libraries/spawn/spawn.info b/libraries/spawn/spawn.info
new file mode 100644
index 0000000000..9d4aabcd58
--- /dev/null
+++ b/libraries/spawn/spawn.info
@@ -0,0 +1,10 @@
+PRGNAM="spawn"
+VERSION="25.0.0"
+HOMEPAGE="https://github.com/AdaCore/spawn"
+DOWNLOAD="https://github.com/AdaCore/spawn/archive/v25.0.0/spawn-25.0.0.tar.gz"
+MD5SUM="a0000fe238fea7c78c1d9ce49bebd51d"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="gprbuild gtkada"
+MAINTAINER="Zhu Qun-Ying"
+EMAIL="zhu.qunying@gmail.com"
diff --git a/libraries/spglib/spglib.SlackBuild b/libraries/spglib/spglib.SlackBuild
index c048ce716d..9e67571d80 100644
--- a/libraries/spglib/spglib.SlackBuild
+++ b/libraries/spglib/spglib.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for spglib
-# Copyright 2020-2024 Giancarlo Dessì, Cagliari, IT
+# Copyright 2020-2025 Giancarlo Dessì, Cagliari, IT
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=spglib
-VERSION=${VERSION:-2.5.0}
+VERSION=${VERSION:-2.6.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -86,6 +86,11 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+if [ $(cmake --version |head -1 |cut -f3 -d' ') == "3.21.4" ]; then
+ echo "export PATH for cmake-opt"
+ export PATH="/opt/cmake-opt/bin/:$PATH"
+fi
+
mkdir -p build
cd build
cmake \
diff --git a/libraries/spglib/spglib.info b/libraries/spglib/spglib.info
index 461671661a..cb307022a1 100644
--- a/libraries/spglib/spglib.info
+++ b/libraries/spglib/spglib.info
@@ -1,10 +1,10 @@
PRGNAM="spglib"
-VERSION="2.5.0"
+VERSION="2.6.0"
HOMEPAGE="https://spglib.github.io/spglib/"
-DOWNLOAD="https://github.com/spglib/spglib/archive/v2.5.0/spglib-2.5.0.tar.gz"
-MD5SUM="13cdcdac341e1cd059502758f2721e70"
+DOWNLOAD="https://github.com/spglib/spglib/archive/v2.6.0/spglib-2.6.0.tar.gz"
+MD5SUM="adc65effebbfcd4daa722f1eac4297c9"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="python3-numpy"
+REQUIRES="cmake-opt python3-numpy"
MAINTAINER="Giancarlo Dessì"
EMAIL="slack@giand.it"
diff --git a/libraries/tclcurl-fa/README b/libraries/tclcurl-fa/README
new file mode 100644
index 0000000000..a5241cfc6c
--- /dev/null
+++ b/libraries/tclcurl-fa/README
@@ -0,0 +1 @@
+TclCurl gives the Tcl programmer access to the facilities of libcurl.
diff --git a/libraries/tclcurl-fa/slack-desc b/libraries/tclcurl-fa/slack-desc
new file mode 100644
index 0000000000..698e3fb99f
--- /dev/null
+++ b/libraries/tclcurl-fa/slack-desc
@@ -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------------------------------------------------------|
+tclcurl-fa: tclcurl-fa (brings curl function to Tcl)
+tclcurl-fa:
+tclcurl-fa: TclCurl gives the Tcl programmer access to the facilities
+tclcurl-fa: of libcurl.
+tclcurl-fa:
+tclcurl-fa: For more information about what libcurl is capable of,
+tclcurl-fa: check https://curl.se/
+tclcurl-fa:
+tclcurl-fa:
+tclcurl-fa:
+tclcurl-fa:
diff --git a/libraries/tclcurl-fa/tclcurl-fa.SlackBuild b/libraries/tclcurl-fa/tclcurl-fa.SlackBuild
new file mode 100644
index 0000000000..77439d1f95
--- /dev/null
+++ b/libraries/tclcurl-fa/tclcurl-fa.SlackBuild
@@ -0,0 +1,111 @@
+#!/bin/bash
+
+# Slackware build script for tclcurl-fa
+
+# Copyright 2025 hoobop
+# 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=tclcurl-fa
+VERSION=${VERSION:-7.22.1}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+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.gz
+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 {} \;
+
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --docdir=/usr/doc/$PRGNAM-$VERSION \
+ --build=$ARCH-slackware-linux
+
+make -j1 install DESTDIR=$PKG
+
+rmdir $PKG/usr/bin $PKG/usr/include
+
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+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
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+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/libraries/tclcurl-fa/tclcurl-fa.info b/libraries/tclcurl-fa/tclcurl-fa.info
new file mode 100644
index 0000000000..a2a429b5f3
--- /dev/null
+++ b/libraries/tclcurl-fa/tclcurl-fa.info
@@ -0,0 +1,10 @@
+PRGNAM="tclcurl-fa"
+VERSION="7.22.1"
+HOMEPAGE="https://github.com/flightaware/tclcurl-fa"
+DOWNLOAD="https://github.com/flightaware/tclcurl-fa/archive/v7.22.1/tclcurl-fa-7.22.1.tar.gz"
+MD5SUM="40a67c7fa17bd7ceae7eef7562534b37"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="hoobop"
+EMAIL="hoobop@gmail.com"
diff --git a/libraries/td_lib/td_lib.SlackBuild b/libraries/td_lib/td_lib.SlackBuild
index 7290f94e4c..30565eef41 100644
--- a/libraries/td_lib/td_lib.SlackBuild
+++ b/libraries/td_lib/td_lib.SlackBuild
@@ -12,6 +12,7 @@
# path of least resistance is to break this library out into its own
# build, even though nothing else besides ded uses it.
+# 20250210 bkw: update for 20250117.
# 20240809 bkw: update for 20240421. I missed upstream's new release...
# 20240423 bkw, BUILD=2: add missing .pc file to package. I thought
@@ -23,7 +24,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=td_lib
-VERSION=${VERSION:-20240421}
+VERSION=${VERSION:-20250117}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/libraries/td_lib/td_lib.info b/libraries/td_lib/td_lib.info
index c6e0c1c40c..d97e173fb4 100644
--- a/libraries/td_lib/td_lib.info
+++ b/libraries/td_lib/td_lib.info
@@ -1,8 +1,8 @@
PRGNAM="td_lib"
-VERSION="20240421"
+VERSION="20250117"
HOMEPAGE="http://invisible-island.net/ded/"
-DOWNLOAD="https://invisible-mirror.net/archives/ded/td_lib-20240421.tgz"
-MD5SUM="09da88c763c239aa6a254f8dc9f25d37"
+DOWNLOAD="https://invisible-mirror.net/archives/ded/td_lib-20250117.tgz"
+MD5SUM="fc015ceec53fa08ffdebecba38b56cf6"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/tinygltf/tinygltf.SlackBuild b/libraries/tinygltf/tinygltf.SlackBuild
index 24222bb6b9..2ee4ed34f2 100644
--- a/libraries/tinygltf/tinygltf.SlackBuild
+++ b/libraries/tinygltf/tinygltf.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for tinygltf
-# Copyright 2023-2024 Giancarlo Dessi, Cagliari, IT
+# Copyright 2023-2025 Giancarlo Dessi, Cagliari, IT
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=tinygltf
-VERSION=${VERSION:-2.9.3}
+VERSION=${VERSION:-2.9.5}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/libraries/tinygltf/tinygltf.info b/libraries/tinygltf/tinygltf.info
index 2395fc5ac6..eb06a49d74 100644
--- a/libraries/tinygltf/tinygltf.info
+++ b/libraries/tinygltf/tinygltf.info
@@ -1,8 +1,8 @@
PRGNAM="tinygltf"
-VERSION="2.9.3"
+VERSION="2.9.5"
HOMEPAGE="https://github.com/syoyo/tinygltf"
-DOWNLOAD="https://github.com/syoyo/tinygltf/archive/v2.9.3/tinygltf-2.9.3.tar.gz"
-MD5SUM="2b7b4881f97f5dc849cf938a38ec1ccc"
+DOWNLOAD="https://github.com/syoyo/tinygltf/archive/v2.9.5/tinygltf-2.9.5.tar.gz"
+MD5SUM="64cf8989f9ad2c69197551e6ef48dfdf"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/tinyxml2/tinyxml2.SlackBuild b/libraries/tinyxml2/tinyxml2.SlackBuild
index 6c389c4dcb..c2380921b3 100644
--- a/libraries/tinyxml2/tinyxml2.SlackBuild
+++ b/libraries/tinyxml2/tinyxml2.SlackBuild
@@ -3,7 +3,7 @@
# Slackware build script for tinyxml2
# Copyright 2014-2020 Larry Hajali <larryhaja[at]gmail[dot]com>
-# Copyright 2024 Jeremy Hansen <jebrhansen+SBo@gmail.com>
+# Copyright 2024-2025 Jeremy Hansen <jebrhansen+SBo@gmail.com>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -26,7 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=tinyxml2
-VERSION=${VERSION:-10.0.0}
+VERSION=${VERSION:-11.0.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/libraries/tinyxml2/tinyxml2.info b/libraries/tinyxml2/tinyxml2.info
index fb149ee173..c7e4dedddd 100644
--- a/libraries/tinyxml2/tinyxml2.info
+++ b/libraries/tinyxml2/tinyxml2.info
@@ -1,8 +1,8 @@
PRGNAM="tinyxml2"
-VERSION="10.0.0"
+VERSION="11.0.0"
HOMEPAGE="http://www.grinninglizard.com/tinyxml2/index.html"
-DOWNLOAD="https://github.com/leethomason/tinyxml2/archive/10.0.0/tinyxml2-10.0.0.tar.gz"
-MD5SUM="04de2fa311b2fa3b6875886122dc2333"
+DOWNLOAD="https://github.com/leethomason/tinyxml2/archive/11.0.0/tinyxml2-11.0.0.tar.gz"
+MD5SUM="e0fbd280045af095b26d2430d38f0c34"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/toml11/fix-toml-options.patch b/libraries/toml11/fix-toml-options.patch
deleted file mode 100644
index e7b5e5552c..0000000000
--- a/libraries/toml11/fix-toml-options.patch
+++ /dev/null
@@ -1,18 +0,0 @@
---- a/include/toml11/fwd/region_fwd.hpp
-+++ b/include/toml11/fwd/region_fwd.hpp
-@@ -8,6 +8,9 @@
-
- #include <cassert>
-
-+#pragma GCC diagnostic push
-+#pragma GCC diagnostic warning "-Wuninitialized"
-+
- namespace toml
- {
- namespace detail
-@@ -102,3 +105,5 @@ class region
- } // namespace detail
- } // namespace toml
- #endif // TOML11_REGION_FWD_HPP
-+
-+#pragma GCC diagnostic pop
diff --git a/libraries/toml11/toml11.SlackBuild b/libraries/toml11/toml11.SlackBuild
index dca7e8b141..2798b1a3b0 100644
--- a/libraries/toml11/toml11.SlackBuild
+++ b/libraries/toml11/toml11.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for toml11
-# Copyright 2019-2024 Pouria Rezaei <Pouria.rz@outlook.com>
+# Copyright 2019-2025 Pouria Rezaei <Pouria.rz@outlook.com>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=toml11
-VERSION=${VERSION:-4.2.0}
+VERSION=${VERSION:-4.3.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -70,9 +70,6 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
-# Don't treat warn as error
-patch -p1 < "$CWD/fix-toml-options.patch"
-
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -85,7 +82,6 @@ cd build
cmake -G Ninja \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_CXX_STANDARD=11 \
-DTOML11_BUILD_TOML_TESTS=OFF \
-DCMAKE_INSTALL_LIBDIR:PATH="lib${LIBDIRSUFFIX}" \
-DCMAKE_BUILD_TYPE=Release ..
diff --git a/libraries/toml11/toml11.info b/libraries/toml11/toml11.info
index 859cd471d7..50299a293b 100644
--- a/libraries/toml11/toml11.info
+++ b/libraries/toml11/toml11.info
@@ -1,8 +1,8 @@
PRGNAM="toml11"
-VERSION="4.2.0"
+VERSION="4.3.0"
HOMEPAGE="https://github.com/ToruNiina/toml11"
-DOWNLOAD="https://github.com/ToruNiina/toml11/archive/v4.2.0/toml11-4.2.0.tar.gz"
-MD5SUM="95cc7b53672f785e36c16a4d19387d7e"
+DOWNLOAD="https://github.com/ToruNiina/toml11/archive/v4.3.0/toml11-4.3.0.tar.gz"
+MD5SUM="0235d45af6aa3ef4e70f22d99598b92e"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="cmake-opt"
diff --git a/libraries/tree-sitter/tree-sitter.SlackBuild b/libraries/tree-sitter/tree-sitter.SlackBuild
index 848e15c060..5109a759dd 100644
--- a/libraries/tree-sitter/tree-sitter.SlackBuild
+++ b/libraries/tree-sitter/tree-sitter.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=tree-sitter
-VERSION=${VERSION:-0.24.4}
+VERSION=${VERSION:-0.25.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/libraries/tree-sitter/tree-sitter.info b/libraries/tree-sitter/tree-sitter.info
index 622cdbd283..343a56f8ed 100644
--- a/libraries/tree-sitter/tree-sitter.info
+++ b/libraries/tree-sitter/tree-sitter.info
@@ -1,8 +1,8 @@
PRGNAM="tree-sitter"
-VERSION="0.24.4"
+VERSION="0.25.3"
HOMEPAGE="https://github.com/tree-sitter/tree-sitter"
-DOWNLOAD="https://github.com/tree-sitter/tree-sitter/archive/v0.24.4/tree-sitter-0.24.4.tar.gz"
-MD5SUM="ee1821cb64e16867bbdf9f65b0ff0761"
+DOWNLOAD="https://github.com/tree-sitter/tree-sitter/archive/v0.25.3/tree-sitter-0.25.3.tar.gz"
+MD5SUM="88c4de229d7d171d6a6556b0598c2929"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/virglrenderer/virglrenderer.SlackBuild b/libraries/virglrenderer/virglrenderer.SlackBuild
index 490a3d4888..af28a5ea95 100644
--- a/libraries/virglrenderer/virglrenderer.SlackBuild
+++ b/libraries/virglrenderer/virglrenderer.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for virglrenderer
-# Copyright 2016-2023 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
+# Copyright 2016-2024 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=virglrenderer
-VERSION=${VERSION:-0.10.4}
+VERSION=${VERSION:-1.0.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/libraries/virglrenderer/virglrenderer.info b/libraries/virglrenderer/virglrenderer.info
index d264746fe5..c5a2d4a842 100644
--- a/libraries/virglrenderer/virglrenderer.info
+++ b/libraries/virglrenderer/virglrenderer.info
@@ -1,8 +1,8 @@
PRGNAM="virglrenderer"
-VERSION="0.10.4"
+VERSION="1.0.1"
HOMEPAGE="https://virgil3d.github.io"
-DOWNLOAD="https://gitlab.freedesktop.org/virgl/virglrenderer/-/archive/0.10.4/virglrenderer-0.10.4.tar.bz2"
-MD5SUM="470f34cbd9c7e9422555bf3841f00b7e"
+DOWNLOAD="https://gitlab.freedesktop.org/virgl/virglrenderer/-/archive/1.0.1/virglrenderer-1.0.1.tar.bz2"
+MD5SUM="c3d2785352a8e612858017d61377b74d"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/vmaf/vmaf.SlackBuild b/libraries/vmaf/vmaf.SlackBuild
index d487f0a79d..fa23526fff 100644
--- a/libraries/vmaf/vmaf.SlackBuild
+++ b/libraries/vmaf/vmaf.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for vmaf
-# Copyright 2022-2024 Vijay Marcel
+# Copyright 2022-2025 Vijay Marcel
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -26,7 +26,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=vmaf
VERSION=${VERSION:-3.0.0}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -77,23 +77,48 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-mkdir -pv $TMP/$PRGNAM-$VERSION/libvmaf/build
-
-meson setup libvmaf/build libvmaf --buildtype release --prefix=/usr --libdir=/usr/lib${LIBDIRSUFFIX} -Denable_float=true && \
-
-ninja -v -C libvmaf/build
-
-DESTDIR=$PKG ninja -v -C $TMP/$PRGNAM-$VERSION/libvmaf/build install
-
-mkdir -pv $PKG/usr/share/$PRGNAM-$VERSION
-
-cp -dr --no-preserve='ownership' $TMP/$PRGNAM-$VERSION/model "$PKG/usr/share/$PRGNAM-$VERSION/"
+CFLAGS="$SLKCFLAGS" CXXFLAGS="$SLKCFLAGS" meson build libvmaf \
+ -Dprefix=/usr \
+ -Dlibdir=/usr/lib${LIBDIRSUFFIX} \
+ -Dlocalstatedir=/var \
+ -Dmandir=/usr/man \
+ -Dsysconfdir=/etc \
+ -Denable_float=true \
+ -Dbuildtype=release \
+ -Dstrip=true
+
+ninja -v -C build
+DESTDIR=$PKG ninja -v -C build install
+
+mkdir -pv $PKG/usr/bin
+install -Dvm 0755 build/tools/vmaf -t $PKG/usr/bin
+
+# copy the models that compiled during our build
+# vmaf now use .json based model files.
+mkdir -pv $PKG/usr/share/$PRGNAM-$VERSION/model
+
+cp -dr --no-preserve='ownership' $TMP/$PRGNAM-$VERSION/build/src/vmaf_4k_v0.6.1.json "$PKG/usr/share/$PRGNAM-$VERSION/model"
+cp -dr --no-preserve='ownership' $TMP/$PRGNAM-$VERSION/build/src/vmaf_4k_v0.6.1neg.json "$PKG/usr/share/$PRGNAM-$VERSION/model"
+cp -dr --no-preserve='ownership' $TMP/$PRGNAM-$VERSION/build/src/vmaf_b_v0.6.3.json "$PKG/usr/share/$PRGNAM-$VERSION/model"
+cp -dr --no-preserve='ownership' $TMP/$PRGNAM-$VERSION/build/src/vmaf_float_4k_v0.6.1.json "$PKG/usr/share/$PRGNAM-$VERSION/model"
+cp -dr --no-preserve='ownership' $TMP/$PRGNAM-$VERSION/build/src/vmaf_float_b_v0.6.3.json "$PKG/usr/share/$PRGNAM-$VERSION/model"
+cp -dr --no-preserve='ownership' $TMP/$PRGNAM-$VERSION/build/src/vmaf_float_v0.6.1.json "$PKG/usr/share/$PRGNAM-$VERSION/model"
+cp -dr --no-preserve='ownership' $TMP/$PRGNAM-$VERSION/build/src/vmaf_float_v0.6.1neg.json "$PKG/usr/share/$PRGNAM-$VERSION/model"
+cp -dr --no-preserve='ownership' $TMP/$PRGNAM-$VERSION/build/src/vmaf_v0.6.1.json "$PKG/usr/share/$PRGNAM-$VERSION/model"
+cp -dr --no-preserve='ownership' $TMP/$PRGNAM-$VERSION/build/src/vmaf_v0.6.1neg.json "$PKG/usr/share/$PRGNAM-$VERSION/model"
+
+find $TMP/$PRGNAM-$VERSION/model/other_models -name '*.json' -type f -exec install -D -v -m0644 {} -t "$PKG/usr/share/$PRGNAM-$VERSION/model" \;
+find $TMP/$PRGNAM-$VERSION/model/vmaf_4k_rb_v0.6.2 -name '*.json' -type f -exec install -D -v -m0644 {} -t "$PKG/usr/share/$PRGNAM-$VERSION/model" \;
+find $TMP/$PRGNAM-$VERSION/model/vmaf_rb_v0.6.2 -name '*.json' -type f -exec install -D -v -m0644 {} -t "$PKG/usr/share/$PRGNAM-$VERSION/model" \;
+find $TMP/$PRGNAM-$VERSION/model/vmaf_rb_v0.6.3 -name '*.json' -type f -exec install -D -v -m0644 {} -t "$PKG/usr/share/$PRGNAM-$VERSION/model" \;
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" |
grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded --remove-section=.comment --remove-section=.note 2> /dev/null || true
# Don't ship .la files:
-rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
+
+#cd $TMP/$PRGNAM-$VERSION
mkdir -pv $PKG/usr/doc/$PRGNAM-$VERSION
cp -a CHANGELOG.md LICENSE README.md $PKG/usr/doc/$PRGNAM-$VERSION
diff --git a/libraries/vmaf/vmaf.info b/libraries/vmaf/vmaf.info
index 2d5985a9c5..79641685c4 100644
--- a/libraries/vmaf/vmaf.info
+++ b/libraries/vmaf/vmaf.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://github.com/Netflix/vmaf/archive/v3.0.0/vmaf-3.0.0.tar.gz"
MD5SUM="dfd67ebfbfcb66ce76abc56fde0df06f"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="OpenBLAS python3-numpy"
+REQUIRES=""
MAINTAINER="Vijay Marcel"
EMAIL="vijaymarcel@outlook.com"
diff --git a/libraries/vst3sdk/vst3sdk.SlackBuild b/libraries/vst3sdk/vst3sdk.SlackBuild
index 7bd4a27156..59c3a7b86d 100644
--- a/libraries/vst3sdk/vst3sdk.SlackBuild
+++ b/libraries/vst3sdk/vst3sdk.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for vst3sdk
-# Copyright 2024+ Antonio Leal, Porto Salvo, Oeiras, Portugal
+# Copyright 2024-2025 Antonio Leal, Porto Salvo, Oeiras, Portugal
# Copyright 2024 Martin Bångens Sweden
# All rights reserved.
#
@@ -26,21 +26,23 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=vst3sdk
-VERSION=${VERSION:-3.7.12}
-SDK_BUILD=${SDK_BUILD:-_build_20}
+VERSION=${VERSION:-3.7.13}
+SDK_BUILD=${SDK_BUILD:-_build_42}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
# git submodules
-BASE=f0998e7b8424b32ba275cf4218aa56beef29821c
-CMAKE=2022b265cdbcd90b37294d3fb397f9766dbe4c06
+BASE=823de87a7aa5752c1eca9c33e2015f160fb8642e
+CMAKE=49af6906f868afbf9d4657df1a1aa91f25264b0f
DOC=3c2097dfbb391346744c2b76bd23304bc2ab1de8
-PLUGINTERFACES=151ecde4d6ee1c457dcce848342b162461944fe6
-PUBLIC_SDK=3fce096d6ee575479753f1aab23033d2e2ffdc6e
-TUTORIALS=cb34a713bec1b96ac31a6bd66af607b92a4abb21
-VSTGUI=17c2a7added1c966ea2b9b8199566b119bebaea5
+PLUGINTERFACES=0786cbef972d9a722fbb7cfabcbdb8d492fefa62
+PUBLIC_SDK=6ccc1020904e0d8994a20b213015c3159591041d
+TUTORIALS=2a40f5e4c6e13f92903fcb4d2e3902d3cf58ab58
+VSTGUI=8160c9bc5aa2a4a64d3a345d9eaa275d1a5153e3
+
+
# 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
diff --git a/libraries/vst3sdk/vst3sdk.info b/libraries/vst3sdk/vst3sdk.info
index e664d2899a..d87c73d1b4 100644
--- a/libraries/vst3sdk/vst3sdk.info
+++ b/libraries/vst3sdk/vst3sdk.info
@@ -1,22 +1,22 @@
PRGNAM="vst3sdk"
-VERSION="3.7.12"
+VERSION="3.7.13"
HOMEPAGE="https://www.steinberg.net/developers/"
-DOWNLOAD="https://github.com/steinbergmedia/vst3sdk/archive/v3.7.12_build_20/vst3sdk-3.7.12_build_20.tar.gz \
- https://github.com/steinbergmedia/vst3_base/archive/f0998e7/vst3_base-f0998e7b8424b32ba275cf4218aa56beef29821c.tar.gz \
- https://github.com/steinbergmedia/vst3_cmake/archive/2022b26/vst3_cmake-2022b265cdbcd90b37294d3fb397f9766dbe4c06.tar.gz \
- https://github.com/steinbergmedia/vst3_doc/archive/3c2097d/vst3_doc-3c2097dfbb391346744c2b76bd23304bc2ab1de8.tar.gz \
- https://github.com/steinbergmedia/vst3_pluginterfaces/archive/151ecde/vst3_pluginterfaces-151ecde4d6ee1c457dcce848342b162461944fe6.tar.gz \
- https://github.com/steinbergmedia/vst3_public_sdk/archive/3fce096/vst3_public_sdk-3fce096d6ee575479753f1aab23033d2e2ffdc6e.tar.gz \
- https://github.com/steinbergmedia/vst3_tutorials/archive/cb34a71/vst3_tutorials-cb34a713bec1b96ac31a6bd66af607b92a4abb21.tar.gz \
- https://github.com/steinbergmedia/vstgui/archive/17c2a7a/vstgui-17c2a7added1c966ea2b9b8199566b119bebaea5.tar.gz"
-MD5SUM="f181af3a79acd90ea79034d3b7148b1a \
- f57339c9f999b50025ccda50216df90a \
- a1f1d1f0b574ea90d68119f56a668402 \
+DOWNLOAD="https://github.com/steinbergmedia/vst3sdk/archive/v3.7.13_build_42/vst3sdk-3.7.13_build_42.tar.gz \
+ https://github.com/steinbergmedia/vst3_base/archive/823de87a7aa5752c1eca9c33e2015f160fb8642e/vst3_base-823de87a7aa5752c1eca9c33e2015f160fb8642e.tar.gz \
+ https://github.com/steinbergmedia/vst3_cmake/archive/49af6906f868afbf9d4657df1a1aa91f25264b0f/vst3_cmake-49af6906f868afbf9d4657df1a1aa91f25264b0f.tar.gz \
+ https://github.com/steinbergmedia/vst3_doc/archive/3c2097dfbb391346744c2b76bd23304bc2ab1de8/vst3_doc-3c2097dfbb391346744c2b76bd23304bc2ab1de8.tar.gz \
+ https://github.com/steinbergmedia/vst3_pluginterfaces/archive/0786cbef972d9a722fbb7cfabcbdb8d492fefa62/vst3_pluginterfaces-0786cbef972d9a722fbb7cfabcbdb8d492fefa62.tar.gz \
+ https://github.com/steinbergmedia/vst3_public_sdk/archive/6ccc1020904e0d8994a20b213015c3159591041d/vst3_public_sdk-6ccc1020904e0d8994a20b213015c3159591041d.tar.gz \
+ https://github.com/steinbergmedia/vst3_tutorials/archive/2a40f5e4c6e13f92903fcb4d2e3902d3cf58ab58/vst3_tutorials-2a40f5e4c6e13f92903fcb4d2e3902d3cf58ab58.tar.gz \
+ https://github.com/steinbergmedia/vstgui/archive/8160c9bc5aa2a4a64d3a345d9eaa275d1a5153e3/vstgui-8160c9bc5aa2a4a64d3a345d9eaa275d1a5153e3.tar.gz"
+MD5SUM="dd98589a647c46e4a1c839afe790db3f \
+ 2dec09cffaee17603d9015d15e57a6d3 \
+ 2f1833af1dc331e8494c40bc83e1f8c5 \
f6323209fe170365b0f9aff06f097097 \
- bc2b5d3186d175fbab44d969739933f9 \
- b2c20016fcb7df4aa45108d011946ec5 \
- 4c33c2b33eeaed9bdff5d32b072263b3 \
- 31a672e240c9d58dfad38404879252d4"
+ 726407458629de37e521f0df075de3a7 \
+ 8ec0a44a4f3054df966b75cd485710e2 \
+ ebfffc3cab3e403677153c1b353de974 \
+ 86bd6bf9e074f755dcab1211c9ba0edd"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/webkit2gtk/icu76.patch b/libraries/webkit2gtk/icu76.patch
deleted file mode 100644
index 1b999c0de6..0000000000
--- a/libraries/webkit2gtk/icu76.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 63f7badbada070ebaadd318b2801818ecf7e7ea0 Mon Sep 17 00:00:00 2001
-From: Don Olmstead <don.olmstead@sony.com>
-Date: Sat, 26 Oct 2024 08:27:01 -0700
-Subject: [PATCH] Support ICU 76.1 build
- https://bugs.webkit.org/show_bug.cgi?id=282120
-
-Reviewed by Yusuke Suzuki.
-
-In ICU 76.1 an additional macro `U_SHOW_CPLUSPLUS_HEADER_API` was added to
-control visibility of the C++ API within ICU. Set this value to `0` since WebKit
-wants to only use the C API.
-
-* Source/WTF/wtf/Platform.h:
-
-Canonical link: https://commits.webkit.org/285727@main
----
- Source/WTF/wtf/Platform.h | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/Source/WTF/wtf/Platform.h b/Source/WTF/wtf/Platform.h
-index 23070df2937ba..51a8dce97755e 100644
---- a/Source/WTF/wtf/Platform.h
-+++ b/Source/WTF/wtf/Platform.h
-@@ -115,6 +115,7 @@
- /* ICU configuration. Some of these match ICU defaults on some platforms, but we would like them consistently set everywhere we build WebKit. */
- #define U_HIDE_DEPRECATED_API 1
- #define U_SHOW_CPLUSPLUS_API 0
-+#define U_SHOW_CPLUSPLUS_HEADER_API 0
- #ifdef __cplusplus
- #define UCHAR_TYPE char16_t
- #endif
diff --git a/libraries/webkit2gtk/webkit2gtk.SlackBuild b/libraries/webkit2gtk/webkit2gtk.SlackBuild
index 9ef90c4ab3..0b49fdd298 100644
--- a/libraries/webkit2gtk/webkit2gtk.SlackBuild
+++ b/libraries/webkit2gtk/webkit2gtk.SlackBuild
@@ -2,7 +2,7 @@
#
# Slackware build script for webkit2gtk
#
-# Copyright 2016-2024 Willy Sudiarto Raharjo <willysr@slackbuilds.org>
+# Copyright 2016-2025 Willy Sudiarto Raharjo <willysr@slackbuilds.org>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -26,7 +26,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=webkit2gtk
SRCNAM=webkitgtk
-VERSION=${VERSION:-2.46.4}
+VERSION=${VERSION:-2.46.6}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -77,7 +77,6 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-patch -p1 < $CWD/icu76.patch
patch -p1 < $CWD/unhide-deprecated-api.patch
patch -p1 < $CWD/3d5373575695b293b8559155431d0079a6153aff.patch
diff --git a/libraries/webkit2gtk/webkit2gtk.info b/libraries/webkit2gtk/webkit2gtk.info
index ba8a374d41..ea28f2c046 100644
--- a/libraries/webkit2gtk/webkit2gtk.info
+++ b/libraries/webkit2gtk/webkit2gtk.info
@@ -1,8 +1,8 @@
PRGNAM="webkit2gtk"
-VERSION="2.46.4"
+VERSION="2.46.6"
HOMEPAGE="https://www.webkitgtk.org/"
-DOWNLOAD="https://www.webkitgtk.org/releases/webkitgtk-2.46.4.tar.xz"
-MD5SUM="97f2468a917bfd31c36753430b5a2494"
+DOWNLOAD="https://www.webkitgtk.org/releases/webkitgtk-2.46.6.tar.xz"
+MD5SUM="10b5b88ffe8611202c45cfdc10a2bd72"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="bubblewrap geoclue2 wpebackend-fdo xdg-dbus-proxy unifdef"
diff --git a/libraries/webkit2gtk4.1/icu76.patch b/libraries/webkit2gtk4.1/icu76.patch
deleted file mode 100644
index 1b999c0de6..0000000000
--- a/libraries/webkit2gtk4.1/icu76.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 63f7badbada070ebaadd318b2801818ecf7e7ea0 Mon Sep 17 00:00:00 2001
-From: Don Olmstead <don.olmstead@sony.com>
-Date: Sat, 26 Oct 2024 08:27:01 -0700
-Subject: [PATCH] Support ICU 76.1 build
- https://bugs.webkit.org/show_bug.cgi?id=282120
-
-Reviewed by Yusuke Suzuki.
-
-In ICU 76.1 an additional macro `U_SHOW_CPLUSPLUS_HEADER_API` was added to
-control visibility of the C++ API within ICU. Set this value to `0` since WebKit
-wants to only use the C API.
-
-* Source/WTF/wtf/Platform.h:
-
-Canonical link: https://commits.webkit.org/285727@main
----
- Source/WTF/wtf/Platform.h | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/Source/WTF/wtf/Platform.h b/Source/WTF/wtf/Platform.h
-index 23070df2937ba..51a8dce97755e 100644
---- a/Source/WTF/wtf/Platform.h
-+++ b/Source/WTF/wtf/Platform.h
-@@ -115,6 +115,7 @@
- /* ICU configuration. Some of these match ICU defaults on some platforms, but we would like them consistently set everywhere we build WebKit. */
- #define U_HIDE_DEPRECATED_API 1
- #define U_SHOW_CPLUSPLUS_API 0
-+#define U_SHOW_CPLUSPLUS_HEADER_API 0
- #ifdef __cplusplus
- #define UCHAR_TYPE char16_t
- #endif
diff --git a/libraries/webkit2gtk4.1/webkit2gtk4.1.SlackBuild b/libraries/webkit2gtk4.1/webkit2gtk4.1.SlackBuild
index cfdb49e0c0..47600d2ad3 100644
--- a/libraries/webkit2gtk4.1/webkit2gtk4.1.SlackBuild
+++ b/libraries/webkit2gtk4.1/webkit2gtk4.1.SlackBuild
@@ -26,7 +26,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=webkit2gtk4.1
SRCNAM=webkitgtk
-VERSION=${VERSION:-2.46.4}
+VERSION=${VERSION:-2.46.6}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -78,7 +78,6 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-patch -p1 < $CWD/icu76.patch
patch -p1 < $CWD/unhide-deprecated-api.patch
patch -p1 < $CWD/3d5373575695b293b8559155431d0079a6153aff.patch
diff --git a/libraries/webkit2gtk4.1/webkit2gtk4.1.info b/libraries/webkit2gtk4.1/webkit2gtk4.1.info
index 0a4d94575f..e61973ff25 100644
--- a/libraries/webkit2gtk4.1/webkit2gtk4.1.info
+++ b/libraries/webkit2gtk4.1/webkit2gtk4.1.info
@@ -1,11 +1,11 @@
PRGNAM="webkit2gtk4.1"
-VERSION="2.46.4"
+VERSION="2.46.6"
HOMEPAGE="https://www.webkitgtk.org/"
-DOWNLOAD="https://www.webkitgtk.org/releases/webkitgtk-2.46.4.tar.xz \
+DOWNLOAD="https://www.webkitgtk.org/releases/webkitgtk-2.46.6.tar.xz \
https://gitlab.gnome.org/GNOME/vala/-/raw/0.56.17/vapi/webkit2gtk-4.1.vapi \
https://gitlab.gnome.org/GNOME/vala/-/raw/0.56.17/vapi/webkit2gtk-web-extension-4.1.vapi \
https://gitlab.gnome.org/GNOME/vala/-/raw/0.56.17/vapi/javascriptcoregtk-4.1.vapi"
-MD5SUM="97f2468a917bfd31c36753430b5a2494 \
+MD5SUM="10b5b88ffe8611202c45cfdc10a2bd72 \
fc1c89b53f6dcca9c68e001743f78950 \
779ed44d239dba2df9a33e57c9c3ee73 \
66986fdc8962d0d6118839fdc614fc13"
diff --git a/libraries/xapp/slack-desc b/libraries/xapp/slack-desc
index cc424ea37e..c9cd1c2ce6 100644
--- a/libraries/xapp/slack-desc
+++ b/libraries/xapp/slack-desc
@@ -12,7 +12,7 @@ xapp: This project gathers the components which are common to multiple GTK
xapp: desktop environments (Cinnamon, MATE and Xfce) and required to
xapp: implement cross-DE solutions.
xapp:
-xapp: Homepage https://github.com/linuxmint/xapp
+xapp:
xapp:
xapp:
xapp:
diff --git a/libraries/xapp/xapp.SlackBuild b/libraries/xapp/xapp.SlackBuild
index 15fbead76a..6bcc964616 100644
--- a/libraries/xapp/xapp.SlackBuild
+++ b/libraries/xapp/xapp.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for xapp
-# Copyright 2023 Antonio Leal, Porto Salvo, Oeiras, Portugal
+# Copyright 2024 Antonio Leal, Porto Salvo, Oeiras, Portugal
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -26,7 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=xapp
-VERSION=${VERSION:-2.8.5}
+VERSION=${VERSION:-2.8.8}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -82,13 +82,11 @@ export CFLAGS="$SLKCFLAGS"
meson build
cd build
-
meson configure . \
--prefix=/usr \
--mandir=/usr/man \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--buildtype=release
-
meson compile
DESTDIR=$PKG meson install
diff --git a/libraries/xapp/xapp.info b/libraries/xapp/xapp.info
index cfdf156eda..ad2a2bba23 100644
--- a/libraries/xapp/xapp.info
+++ b/libraries/xapp/xapp.info
@@ -1,8 +1,8 @@
PRGNAM="xapp"
-VERSION="2.8.5"
+VERSION="2.8.8"
HOMEPAGE="https://github.com/linuxmint/xapp"
-DOWNLOAD="https://github.com/linuxmint/xapp/archive/2.8.5/xapp-2.8.5.tar.gz"
-MD5SUM="8d770e0639fd56207a4fc56af1c1899e"
+DOWNLOAD="https://github.com/linuxmint/xapp/archive/2.8.8/xapp-2.8.8.tar.gz"
+MD5SUM="6620cb7aeb1a1ba1fd2c10cb3403ce48"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="libgnomekbd"
diff --git a/libraries/xview/xview.info b/libraries/xview/xview.info
index 9f3e173fdc..a635cb94d6 100644
--- a/libraries/xview/xview.info
+++ b/libraries/xview/xview.info
@@ -1,6 +1,6 @@
PRGNAM="xview"
VERSION="3.2p4"
-HOMEPAGE="https://archive.physionet.org/physiotools/xview/"
+HOMEPAGE="http://archive.physionet.org/physiotools/xview/"
DOWNLOAD="http://ponce.cc/slackware/sources/repo/xview-3.2p4.tar.Z"
MD5SUM="27b10252d53d2ccee12650221d873e2b"
DOWNLOAD_x86_64=""
diff --git a/libraries/zita-alsa-pcmi/zita-alsa-pcmi.SlackBuild b/libraries/zita-alsa-pcmi/zita-alsa-pcmi.SlackBuild
index af616c67ff..ef29fbd6e9 100644
--- a/libraries/zita-alsa-pcmi/zita-alsa-pcmi.SlackBuild
+++ b/libraries/zita-alsa-pcmi/zita-alsa-pcmi.SlackBuild
@@ -2,11 +2,17 @@
# Slackware build script for <zita-alsa-pcmi>
# Written by Michales Michaloudes korgie@gmail.com <2014>
+# 20250207 bkw: modified by SlackBuilds.org, BUILD=2.
+# These modifications were made with permission from the maintainer.
+# - install apps in /usr/bin.
+# - actually use SLKCFLAGS consistently.
+# - de-uglify the build/install process. easier to read now.
+
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=zita-alsa-pcmi
VERSION=${VERSION:-0.6.1}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -18,9 +24,6 @@ if [ -z "$ARCH" ]; then
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
@@ -50,36 +53,41 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar -xjvf $CWD/$PRGNAM-$VERSION.tar.bz2
+tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
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 {} \;
-
-# Thanks to ARCH Linux
-sed -e '/native/d' \
- -e 's/ldconfig/& -N $(DESTDIR)\/$(LIBDIR)/' \
- -i source/Makefile
-sed -e 's|\ $(BINDIR)|\ $(DESTDIR)$(BINDIR)|' apps/Makefile
-
-make -C source
-ln -sv lib$PRGNAM.so.$VERSION source/lib$PRGNAM.so
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS -I../source" \
-LDFLAGS+=" -L../source" \
-make -C apps
-make -C source install DESTDIR=$PKG PREFIX=/usr SUFFIX="$LIBDIRSUFFIX"
-
-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
-
-cd $TMP/$PRGNAM-$VERSION
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS COPYING README $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} + -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} +
+
+# 20250209 bkw: DRY principle
+SOLIB=lib$PRGNAM.so.$VERSION
+PKGLIB=$PKG/usr/lib$LIBDIRSUFFIX
+
+# 20250209 bkw: DRY again
+build_in_dir() {
+ make -C $1 \
+ CXXFLAGS="$SLKCFLAGS -I$PKG/usr/include" LDFLAGS="-L$PKGLIB"
+ make -C $1 install \
+ DESTDIR=$PKG PREFIX=/usr SUFFIX="$LIBDIRSUFFIX"
+}
+
+# 20250209 bkw: make this dir, or the package will have a binary
+# called usr/bin that *destroys* the real /usr/bin!
+mkdir -p $PKG/usr/bin
+
+# 20250209 bkw: don't let the Makefiles create a real /usr/bin
+# (outside $TMP), or run ldconfig on the real root.
+sed -i '/install -d/d' apps/Makefile
+sed -i 's/ldconfig/& -N $(DESTDIR)$(LIBDIR)/' source/Makefile
+
+build_in_dir source
+build_in_dir apps
+strip $PKG/usr/bin/* $PKGLIB/lib*.so.*.*
+
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cp -a AUTHORS COPYING README $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
diff --git a/libraries/zlib-ng/README b/libraries/zlib-ng/README
new file mode 100644
index 0000000000..15e190e613
--- /dev/null
+++ b/libraries/zlib-ng/README
@@ -0,0 +1,14 @@
+zlib data compression library for the next generation systems
+
+Zlib compatible API with support for dual-linking
+Modernized native API based on zlib API for ease of porting
+Deflate medium and quick algorithms based on Intel’s zlib fork
+Support for CPU intrinsics when available
+CRC32-B implementation using PCLMULQDQ, VPCLMULQDQ, ACLE, & IBM Z
+Slide hash implementations using SSE2, AVX2, ARMv6, Neon, VMX & VSX
+Compare256 implementations using SSE2, AVX2, Neon, POWER9 & RVV
+Adler32 using SSSE3, AVX2, AVX512, AVX512-VNNI, Neon, VMX & VSX
+Inflate chunk copying using SSE2, SSSE3, AVX, Neon & VSX
+Support for hardware-accelerated deflate using IBM Z DFLTCC
+Safe unaligned memory read/writes and large bit buffer improvements
+Includes improvements from Cloudflare and Intel forks
diff --git a/libraries/zlib-ng/slack-desc b/libraries/zlib-ng/slack-desc
new file mode 100644
index 0000000000..f3ca856c22
--- /dev/null
+++ b/libraries/zlib-ng/slack-desc
@@ -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------------------------------------------------------|
+zlib-ng: zlib-ng (zlib data compression library for the next gen systems)
+zlib-ng:
+zlib-ng:
+zlib-ng:
+zlib-ng:
+zlib-ng:
+zlib-ng:
+zlib-ng:
+zlib-ng:
+zlib-ng:
+zlib-ng:
diff --git a/libraries/zlib-ng/zlib-ng.SlackBuild b/libraries/zlib-ng/zlib-ng.SlackBuild
new file mode 100644
index 0000000000..a9e00dbe20
--- /dev/null
+++ b/libraries/zlib-ng/zlib-ng.SlackBuild
@@ -0,0 +1,105 @@
+#!/bin/bash
+
+# Slackware build script for zlib-ng
+
+# Copyright 2023 Yth | Pont-en-Royans, France | yth@ythogtha.org
+# 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=zlib-ng
+VERSION=${VERSION:-2.2.4}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+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.gz
+cd $PRGNAM-$VERSION
+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 {} \;
+
+cmake \
+ -B build \
+ -S . \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=Release
+cmake --build build
+DESTDIR=$PKG cmake --install build
+
+rm -rf $PKG/usr/lib${LIBDIRSUFFIX}/*.a
+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
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a README* LICENSE* PORTING* $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+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/libraries/zlib-ng/zlib-ng.info b/libraries/zlib-ng/zlib-ng.info
new file mode 100644
index 0000000000..5f8596028c
--- /dev/null
+++ b/libraries/zlib-ng/zlib-ng.info
@@ -0,0 +1,10 @@
+PRGNAM="zlib-ng"
+VERSION="2.2.4"
+HOMEPAGE="https://github.com/zlib-ng/zlib-ng"
+DOWNLOAD="https://github.com/zlib-ng/zlib-ng/archive/2.2.4/zlib-ng-2.2.4.tar.gz"
+MD5SUM="19bc00d414477868f4572971156e5a5a"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="gtest"
+MAINTAINER="Yth - Arnaud"
+EMAIL="yth@ythogtha.org"
diff --git a/libraries/zope.configuration/zope.configuration.SlackBuild b/libraries/zope.configuration/zope.configuration.SlackBuild
index 2cd6469b8f..50b7adc1b7 100644
--- a/libraries/zope.configuration/zope.configuration.SlackBuild
+++ b/libraries/zope.configuration/zope.configuration.SlackBuild
@@ -26,7 +26,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=zope.configuration
-VERSION=${VERSION:-5.0.1}
+SRCNAM=$(tr \. _ <<<$PRGNAM)
+VERSION=${VERSION:-6.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -56,9 +57,9 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
+cd $SRCNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
diff --git a/libraries/zope.configuration/zope.configuration.info b/libraries/zope.configuration/zope.configuration.info
index 30be5f5cd5..2f5e8b11ac 100644
--- a/libraries/zope.configuration/zope.configuration.info
+++ b/libraries/zope.configuration/zope.configuration.info
@@ -1,8 +1,8 @@
PRGNAM="zope.configuration"
-VERSION="5.0.1"
+VERSION="6.0"
HOMEPAGE="https://pypi.python.org/pypi/zope.configuration"
-DOWNLOAD="https://pypi.python.org/packages/source/z/zope.configuration/zope.configuration-5.0.1.tar.gz"
-MD5SUM="7fe73dae84f8e4433f8c13e806afc226"
+DOWNLOAD="https://pypi.python.org/packages/source/z/zope_configuration/zope_configuration-6.0.tar.gz"
+MD5SUM="3e894fa3a615b79159acdaa1b25c14da"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="zope.i18nmessageid zope.schema"
diff --git a/libraries/zope.hookable/zope.hookable.SlackBuild b/libraries/zope.hookable/zope.hookable.SlackBuild
index 020898ad98..2dc24edd5f 100644
--- a/libraries/zope.hookable/zope.hookable.SlackBuild
+++ b/libraries/zope.hookable/zope.hookable.SlackBuild
@@ -26,7 +26,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=zope.hookable
-VERSION=${VERSION:-6.0}
+SRCNAM=$(tr \. _ <<<$PRGNAM)
+VERSION=${VERSION:-7.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -56,9 +57,9 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
+cd $SRCNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
diff --git a/libraries/zope.hookable/zope.hookable.info b/libraries/zope.hookable/zope.hookable.info
index 53864ba1bd..83cce5d2d7 100644
--- a/libraries/zope.hookable/zope.hookable.info
+++ b/libraries/zope.hookable/zope.hookable.info
@@ -1,8 +1,8 @@
PRGNAM="zope.hookable"
-VERSION="6.0"
+VERSION="7.0"
HOMEPAGE="https://pypi.python.org/pypi/zope.hookable"
-DOWNLOAD="https://pypi.python.org/packages/source/z/zope.hookable/zope.hookable-6.0.tar.gz"
-MD5SUM="5b922cee23c4a837f741f398ba8be55f"
+DOWNLOAD="https://pypi.python.org/packages/source/z/zope_hookable/zope_hookable-7.0.tar.gz"
+MD5SUM="e257047373df230a484c38b03674ee40"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/zope.i18nmessageid/zope.i18nmessageid.SlackBuild b/libraries/zope.i18nmessageid/zope.i18nmessageid.SlackBuild
index b9fff943bf..e99faa732c 100644
--- a/libraries/zope.i18nmessageid/zope.i18nmessageid.SlackBuild
+++ b/libraries/zope.i18nmessageid/zope.i18nmessageid.SlackBuild
@@ -26,7 +26,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=zope.i18nmessageid
-VERSION=${VERSION:-6.1.0}
+SRCNAM=$(tr \. _ <<<$PRGNAM)
+VERSION=${VERSION:-7.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -56,9 +57,9 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
+cd $SRCNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
diff --git a/libraries/zope.i18nmessageid/zope.i18nmessageid.info b/libraries/zope.i18nmessageid/zope.i18nmessageid.info
index 8f17883e1f..2282d0942f 100644
--- a/libraries/zope.i18nmessageid/zope.i18nmessageid.info
+++ b/libraries/zope.i18nmessageid/zope.i18nmessageid.info
@@ -1,8 +1,8 @@
PRGNAM="zope.i18nmessageid"
-VERSION="6.1.0"
+VERSION="7.0"
HOMEPAGE="https://pypi.python.org/pypi/zope.i18nmessageid"
-DOWNLOAD="https://pypi.python.org/packages/source/z/zope.i18nmessageid/zope.i18nmessageid-6.1.0.tar.gz"
-MD5SUM="01ac82116aecfabd86e5fec23ed62b99"
+DOWNLOAD="https://pypi.python.org/packages/source/z/zope_i18nmessageid/zope_i18nmessageid-7.0.tar.gz"
+MD5SUM="e69426b19e72b06aa6c0e8c683fb9525"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/zope.location/zope.location.SlackBuild b/libraries/zope.location/zope.location.SlackBuild
index 76a9056c2a..4fe3cfd66d 100644
--- a/libraries/zope.location/zope.location.SlackBuild
+++ b/libraries/zope.location/zope.location.SlackBuild
@@ -26,7 +26,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=zope.location
-VERSION=${VERSION:-5.0}
+SRCNAM=$(tr \. _ <<<$PRGNAM)
+VERSION=${VERSION:-5.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -56,9 +57,9 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
+cd $SRCNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
diff --git a/libraries/zope.location/zope.location.info b/libraries/zope.location/zope.location.info
index aead378524..fa6b041bbf 100644
--- a/libraries/zope.location/zope.location.info
+++ b/libraries/zope.location/zope.location.info
@@ -1,8 +1,8 @@
PRGNAM="zope.location"
-VERSION="5.0"
+VERSION="5.1"
HOMEPAGE="https://pypi.python.org/pypi/zope.location"
-DOWNLOAD="https://pypi.python.org/packages/source/z/zope.location/zope.location-5.0.tar.gz"
-MD5SUM="3ebc71530b2c36bef87d57210b15de67"
+DOWNLOAD="https://pypi.python.org/packages/source/z/zope_location/zope_location-5.1.tar.gz"
+MD5SUM="9f25225ed1cd679f5521fc83140b9537"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="zope.schema zope.proxy"
diff --git a/libraries/zope.proxy/zope.proxy.SlackBuild b/libraries/zope.proxy/zope.proxy.SlackBuild
index d57dda4671..d829836e7c 100644
--- a/libraries/zope.proxy/zope.proxy.SlackBuild
+++ b/libraries/zope.proxy/zope.proxy.SlackBuild
@@ -26,7 +26,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=zope.proxy
-VERSION=${VERSION:-5.2}
+SRCNAM=$(tr \. _ <<<$PRGNAM)
+VERSION=${VERSION:-6.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -56,9 +57,9 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
+cd $SRCNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
diff --git a/libraries/zope.proxy/zope.proxy.info b/libraries/zope.proxy/zope.proxy.info
index e17a239e05..f72524c6ba 100644
--- a/libraries/zope.proxy/zope.proxy.info
+++ b/libraries/zope.proxy/zope.proxy.info
@@ -1,8 +1,8 @@
PRGNAM="zope.proxy"
-VERSION="5.2"
+VERSION="6.1"
HOMEPAGE="https://pypi.python.org/pypi/zope.proxy"
-DOWNLOAD="https://pypi.python.org/packages/source/z/zope.proxy/zope.proxy-5.2.tar.gz"
-MD5SUM="d3084fbed488c8c6b5090cfa00ac853b"
+DOWNLOAD="https://pypi.python.org/packages/source/z/zope_proxy/zope_proxy-6.1.tar.gz"
+MD5SUM="6d6f76315521181046b1e52213b1d847"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="zope.interface"
diff --git a/libraries/zope.security/zope.security.SlackBuild b/libraries/zope.security/zope.security.SlackBuild
index 72cd8b02df..f0007184b8 100644
--- a/libraries/zope.security/zope.security.SlackBuild
+++ b/libraries/zope.security/zope.security.SlackBuild
@@ -26,7 +26,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=zope.security
-VERSION=${VERSION:-7.0}
+SRCNAM=$(tr \. _ <<<$PRGNAM)
+VERSION=${VERSION:-7.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -56,9 +57,9 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
+cd $SRCNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
diff --git a/libraries/zope.security/zope.security.info b/libraries/zope.security/zope.security.info
index 615a17aa84..0e26933a8f 100644
--- a/libraries/zope.security/zope.security.info
+++ b/libraries/zope.security/zope.security.info
@@ -1,8 +1,8 @@
PRGNAM="zope.security"
-VERSION="7.0"
+VERSION="7.3"
HOMEPAGE="https://pypi.python.org/pypi/zope.security"
-DOWNLOAD="https://pypi.python.org/packages/source/z/zope.security/zope.security-7.0.tar.gz"
-MD5SUM="a9f4d79a4baf49470b970bd1510f865f"
+DOWNLOAD="https://pypi.python.org/packages/source/z/zope_security/zope_security-7.3.tar.gz"
+MD5SUM="4e25ce70785860aa320d5c8523cdc800"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="zope.component zope.i18nmessageid zope.location"