diff options
Diffstat (limited to 'source/l')
33 files changed, 1248 insertions, 71 deletions
diff --git a/source/l/SDL2/SDL2.SlackBuild b/source/l/SDL2/SDL2.SlackBuild index 99b87eb0..984c5880 100755 --- a/source/l/SDL2/SDL2.SlackBuild +++ b/source/l/SDL2/SDL2.SlackBuild @@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd) PKGNAM=SDL2 VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} -BUILD=${BUILD:-3} +BUILD=${BUILD:-1} # Automatically determine the architecture we're building on: if [ -z "$ARCH" ]; then diff --git a/source/l/atkmm/atkmm.SlackBuild b/source/l/atkmm/atkmm.SlackBuild index db7365d6..fb955461 100755 --- a/source/l/atkmm/atkmm.SlackBuild +++ b/source/l/atkmm/atkmm.SlackBuild @@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd) PKGNAM=atkmm VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} -BUILD=${BUILD:-3} +BUILD=${BUILD:-1} if [ -z "$ARCH" ]; then case "$( uname -m )" in diff --git a/source/l/cryfs/041b5baea5a4efceff33df2f316646b47a1cd7c0.patch b/source/l/cryfs/041b5baea5a4efceff33df2f316646b47a1cd7c0.patch new file mode 100644 index 00000000..22d8b344 --- /dev/null +++ b/source/l/cryfs/041b5baea5a4efceff33df2f316646b47a1cd7c0.patch @@ -0,0 +1,27 @@ +From 041b5baea5a4efceff33df2f316646b47a1cd7c0 Mon Sep 17 00:00:00 2001 +From: Sam James <11667869+thesamesam@users.noreply.github.com> +Date: Sat, 14 Aug 2021 17:29:24 +0100 +Subject: [PATCH] src/fspp/fuse/Fuse.h: add <memory.h> include for + std::shared_ptr (#395) + +Needed to fix build with Boost 1.77 (some indirect inclusion +got lost). + +Signed-off-by: Sam James <sam@gentoo.org> +--- + src/fspp/fuse/Fuse.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/fspp/fuse/Fuse.h b/src/fspp/fuse/Fuse.h +index 2dd3c2d4d..3841e38a4 100644 +--- a/src/fspp/fuse/Fuse.h ++++ b/src/fspp/fuse/Fuse.h +@@ -11,6 +11,7 @@ + #include <boost/optional.hpp> + #include <cpp-utils/macros.h> + #include <atomic> ++#include <memory> + #include "stat_compatibility.h" + #include <fspp/fs_interface/Context.h> + + diff --git a/source/l/cryfs/27587ea1acec5f939a31217f1c43953378f18821.patch b/source/l/cryfs/27587ea1acec5f939a31217f1c43953378f18821.patch new file mode 100644 index 00000000..0d739b07 --- /dev/null +++ b/source/l/cryfs/27587ea1acec5f939a31217f1c43953378f18821.patch @@ -0,0 +1,297 @@ +From 27587ea1acec5f939a31217f1c43953378f18821 Mon Sep 17 00:00:00 2001 +From: Sebastian Messmer <messmer@cryfs.org> +Date: Sat, 8 May 2021 14:44:27 -0700 +Subject: [PATCH] Fixed an issue when compiling with GCC 11, see + https://github.com/cryfs/cryfs/issues/389 + +--- + ChangeLog.txt | 5 ++ + .../onblocks/datanodestore/DataNodeView.h | 8 +-- + .../filesystem/fsblobstore/utils/DirEntry.cpp | 66 +++++++++---------- + src/cryfs/localstate/LocalStateMetadata.cpp | 24 +++---- + src/cryfs/localstate/LocalStateMetadata.h | 10 +-- + 5 files changed, 59 insertions(+), 54 deletions(-) + +diff --git a/ChangeLog.txt b/ChangeLog.txt +index f9776eb93..9d7a6708c 100644 +--- a/ChangeLog.txt ++++ b/ChangeLog.txt +@@ -1,3 +1,8 @@ ++Version 0.10.4 (unreleased) ++-------------- ++Fixed bugs: ++* Fixed an issue when compiling with GCC 11, see https://github.com/cryfs/cryfs/issues/389 ++ + Version 0.10.3 + --------------- + Fixed bugs: +diff --git a/src/blobstore/implementations/onblocks/datanodestore/DataNodeView.h b/src/blobstore/implementations/onblocks/datanodestore/DataNodeView.h +index 256c28495..3799612e3 100644 +--- a/src/blobstore/implementations/onblocks/datanodestore/DataNodeView.h ++++ b/src/blobstore/implementations/onblocks/datanodestore/DataNodeView.h +@@ -67,7 +67,7 @@ class DataNodeView final { + + static DataNodeView create(blockstore::BlockStore *blockStore, const DataNodeLayout &layout, uint16_t formatVersion, uint8_t depth, uint32_t size, cpputils::Data data) { + ASSERT(data.size() <= layout.datasizeBytes(), "Data is too large for node"); +- cpputils::Data serialized = _serialize(layout, formatVersion, depth, size, std::move(data)); ++ cpputils::Data serialized = serialize_(layout, formatVersion, depth, size, std::move(data)); + ASSERT(serialized.size() == layout.blocksizeBytes(), "Wrong block size"); + auto block = blockStore->create(serialized); + return DataNodeView(std::move(block)); +@@ -75,7 +75,7 @@ class DataNodeView final { + + static DataNodeView initialize(cpputils::unique_ref<blockstore::Block> block, const DataNodeLayout &layout, uint16_t formatVersion, uint8_t depth, uint32_t size, cpputils::Data data) { + ASSERT(data.size() <= DataNodeLayout(block->size()).datasizeBytes(), "Data is too large for node"); +- cpputils::Data serialized = _serialize(layout, formatVersion, depth, size, std::move(data)); ++ cpputils::Data serialized = serialize_(layout, formatVersion, depth, size, std::move(data)); + ASSERT(serialized.size() == block->size(), "Block has wrong size"); + block->write(serialized.data(), 0, serialized.size()); + return DataNodeView(std::move(block)); +@@ -83,7 +83,7 @@ class DataNodeView final { + + static DataNodeView overwrite(blockstore::BlockStore *blockStore, const DataNodeLayout &layout, uint16_t formatVersion, uint8_t depth, uint32_t size, const blockstore::BlockId &blockId, cpputils::Data data) { + ASSERT(data.size() <= layout.datasizeBytes(), "Data is too large for node"); +- cpputils::Data serialized = _serialize(layout, formatVersion, depth, size, std::move(data)); ++ cpputils::Data serialized = serialize_(layout, formatVersion, depth, size, std::move(data)); + auto block = blockStore->overwrite(blockId, std::move(serialized)); + return DataNodeView(std::move(block)); + } +@@ -143,7 +143,7 @@ class DataNodeView final { + } + + private: +- static cpputils::Data _serialize(const DataNodeLayout &layout, uint16_t formatVersion, uint8_t depth, uint32_t size, cpputils::Data data) { ++ static cpputils::Data serialize_(const DataNodeLayout &layout, uint16_t formatVersion, uint8_t depth, uint32_t size, cpputils::Data data) { + cpputils::Data result(layout.blocksizeBytes()); + cpputils::serialize<uint16_t>(result.dataOffset(layout.FORMAT_VERSION_OFFSET_BYTES), formatVersion); + cpputils::serialize<uint8_t>(result.dataOffset(layout.DEPTH_OFFSET_BYTES), depth); +diff --git a/src/cryfs/filesystem/fsblobstore/utils/DirEntry.cpp b/src/cryfs/filesystem/fsblobstore/utils/DirEntry.cpp +index 941148db9..70dd5a560 100644 +--- a/src/cryfs/filesystem/fsblobstore/utils/DirEntry.cpp ++++ b/src/cryfs/filesystem/fsblobstore/utils/DirEntry.cpp +@@ -11,55 +11,55 @@ namespace cryfs { + + namespace { + template<typename DataType> +- size_t _serialize(void* dst, const DataType& obj) { ++ size_t serialize_(void* dst, const DataType& obj) { + cpputils::serialize<DataType>(dst, obj); + return sizeof(DataType); + } + + template<typename DataType> +- DataType _deserialize(const char** src) { ++ DataType deserialize_(const char** src) { + DataType result = cpputils::deserialize<DataType>(*src); + *src += sizeof(DataType); + return result; + } + +- constexpr size_t _serializedTimeValueSize() { ++ constexpr size_t serializedTimeValueSize_() { + return sizeof(uint64_t) + sizeof(uint32_t); + } + +- unsigned int _serializeTimeValue(uint8_t *dest, timespec value) { ++ unsigned int serializeTimeValue_(uint8_t *dest, timespec value) { + unsigned int offset = 0; +- offset += _serialize<uint64_t>(dest + offset, value.tv_sec); +- offset += _serialize<uint32_t>(dest + offset, value.tv_nsec); +- ASSERT(offset == _serializedTimeValueSize(), "serialized to wrong size"); ++ offset += serialize_<uint64_t>(dest + offset, value.tv_sec); ++ offset += serialize_<uint32_t>(dest + offset, value.tv_nsec); ++ ASSERT(offset == serializedTimeValueSize_(), "serialized to wrong size"); + return offset; + } + +- timespec _deserializeTimeValue(const char **pos) { ++ timespec deserializeTimeValue_(const char **pos) { + timespec value{}; +- value.tv_sec = _deserialize<uint64_t>(pos); +- value.tv_nsec = _deserialize<uint32_t>(pos); ++ value.tv_sec = deserialize_<uint64_t>(pos); ++ value.tv_nsec = deserialize_<uint32_t>(pos); + return value; + } + +- unsigned int _serializeString(uint8_t *dest, const string &value) { ++ unsigned int serializeString_(uint8_t *dest, const string &value) { + std::memcpy(dest, value.c_str(), value.size()+1); + return value.size() + 1; + } + +- string _deserializeString(const char **pos) { ++ string deserializeString_(const char **pos) { + size_t length = strlen(*pos); + string value(*pos, length); + *pos += length + 1; + return value; + } + +- unsigned int _serializeBlockId(uint8_t *dest, const BlockId &blockId) { ++ unsigned int serializeBlockId_(uint8_t *dest, const BlockId &blockId) { + blockId.ToBinary(dest); + return blockId.BINARY_LENGTH; + } + +- BlockId _deserializeBlockId(const char **pos) { ++ BlockId deserializeBlockId_(const char **pos) { + BlockId blockId = BlockId::FromBinary(*pos); + *pos += BlockId::BINARY_LENGTH; + return blockId; +@@ -75,35 +75,35 @@ namespace cryfs { + _mode.hasDirFlag()) + ", " + std::to_string(_mode.hasSymlinkFlag()) + ", " + std::to_string(static_cast<uint8_t>(_type)) + ); + unsigned int offset = 0; +- offset += _serialize<uint8_t>(dest + offset, static_cast<uint8_t>(_type)); +- offset += _serialize<uint32_t>(dest + offset, _mode.value()); +- offset += _serialize<uint32_t>(dest + offset, _uid.value()); +- offset += _serialize<uint32_t>(dest + offset, _gid.value()); +- offset += _serializeTimeValue(dest + offset, _lastAccessTime); +- offset += _serializeTimeValue(dest + offset, _lastModificationTime); +- offset += _serializeTimeValue(dest + offset, _lastMetadataChangeTime); +- offset += _serializeString(dest + offset, _name); +- offset += _serializeBlockId(dest + offset, _blockId); ++ offset += serialize_<uint8_t>(dest + offset, static_cast<uint8_t>(_type)); ++ offset += serialize_<uint32_t>(dest + offset, _mode.value()); ++ offset += serialize_<uint32_t>(dest + offset, _uid.value()); ++ offset += serialize_<uint32_t>(dest + offset, _gid.value()); ++ offset += serializeTimeValue_(dest + offset, _lastAccessTime); ++ offset += serializeTimeValue_(dest + offset, _lastModificationTime); ++ offset += serializeTimeValue_(dest + offset, _lastMetadataChangeTime); ++ offset += serializeString_(dest + offset, _name); ++ offset += serializeBlockId_(dest + offset, _blockId); + ASSERT(offset == serializedSize(), "Didn't write correct number of elements"); + } + + const char *DirEntry::deserializeAndAddToVector(const char *pos, vector<DirEntry> *result) { +- fspp::Dir::EntryType type = static_cast<fspp::Dir::EntryType>(_deserialize<uint8_t>(&pos)); +- fspp::mode_t mode = fspp::mode_t(_deserialize<uint32_t>(&pos)); +- fspp::uid_t uid = fspp::uid_t(_deserialize<uint32_t>(&pos)); +- fspp::gid_t gid = fspp::gid_t(_deserialize<uint32_t>(&pos)); +- timespec lastAccessTime = _deserializeTimeValue(&pos); +- timespec lastModificationTime = _deserializeTimeValue(&pos); +- timespec lastMetadataChangeTime = _deserializeTimeValue(&pos); +- string name = _deserializeString(&pos); +- BlockId blockId = _deserializeBlockId(&pos); ++ fspp::Dir::EntryType type = static_cast<fspp::Dir::EntryType>(deserialize_<uint8_t>(&pos)); ++ fspp::mode_t mode = fspp::mode_t(deserialize_<uint32_t>(&pos)); ++ fspp::uid_t uid = fspp::uid_t(deserialize_<uint32_t>(&pos)); ++ fspp::gid_t gid = fspp::gid_t(deserialize_<uint32_t>(&pos)); ++ timespec lastAccessTime = deserializeTimeValue_(&pos); ++ timespec lastModificationTime = deserializeTimeValue_(&pos); ++ timespec lastMetadataChangeTime = deserializeTimeValue_(&pos); ++ string name = deserializeString_(&pos); ++ BlockId blockId = deserializeBlockId_(&pos); + + result->emplace_back(type, name, blockId, mode, uid, gid, lastAccessTime, lastModificationTime, lastMetadataChangeTime); + return pos; + } + + size_t DirEntry::serializedSize() const { +- return 1 + sizeof(uint32_t) + sizeof(uint32_t) + sizeof(uint32_t) + 3*_serializedTimeValueSize() + ( ++ return 1 + sizeof(uint32_t) + sizeof(uint32_t) + sizeof(uint32_t) + 3*serializedTimeValueSize_() + ( + _name.size() + 1) + _blockId.BINARY_LENGTH; + } + } +diff --git a/src/cryfs/localstate/LocalStateMetadata.cpp b/src/cryfs/localstate/LocalStateMetadata.cpp +index 529a26129..dfa952a1a 100644 +--- a/src/cryfs/localstate/LocalStateMetadata.cpp ++++ b/src/cryfs/localstate/LocalStateMetadata.cpp +@@ -30,10 +30,10 @@ LocalStateMetadata::LocalStateMetadata(uint32_t myClientId, Hash encryptionKeyHa + + LocalStateMetadata LocalStateMetadata::loadOrGenerate(const bf::path &statePath, const Data& encryptionKey, bool allowReplacedFilesystem) { + auto metadataFile = statePath / "metadata"; +- auto loaded = _load(metadataFile); ++ auto loaded = load_(metadataFile); + if (loaded == none) { + // If it couldn't be loaded, generate a new client id. +- return _generate(metadataFile, encryptionKey); ++ return generate_(metadataFile, encryptionKey); + } + + if (!allowReplacedFilesystem && loaded->_encryptionKeyHash.digest != cpputils::hash::hash(encryptionKey, loaded->_encryptionKeyHash.salt).digest) { +@@ -42,22 +42,22 @@ LocalStateMetadata LocalStateMetadata::loadOrGenerate(const bf::path &statePath, + return *loaded; + } + +-optional<LocalStateMetadata> LocalStateMetadata::_load(const bf::path &metadataFilePath) { ++optional<LocalStateMetadata> LocalStateMetadata::load_(const bf::path &metadataFilePath) { + ifstream file(metadataFilePath.string()); + if (!file.good()) { + // State file doesn't exist + return none; + } +- return _deserialize(file); ++ return deserialize_(file); + } + +-void LocalStateMetadata::_save(const bf::path &metadataFilePath) const { ++void LocalStateMetadata::save_(const bf::path &metadataFilePath) const { + ofstream file(metadataFilePath.string(), std::ios::trunc); +- _serialize(file); ++ serialize_(file); + } + + namespace { +-uint32_t _generateClientId() { ++uint32_t generateClientId_() { + uint32_t result; + do { + result = cpputils::deserialize<uint32_t>(Random::PseudoRandom().getFixedSize<sizeof(uint32_t)>().data()); +@@ -82,8 +82,8 @@ optional<uint32_t> _tryLoadClientIdFromLegacyFile(const bf::path &metadataFilePa + #endif + } + +-LocalStateMetadata LocalStateMetadata::_generate(const bf::path &metadataFilePath, const Data& encryptionKey) { +- uint32_t myClientId = _generateClientId(); ++LocalStateMetadata LocalStateMetadata::generate_(const bf::path &metadataFilePath, const Data& encryptionKey) { ++ uint32_t myClientId = generateClientId_(); + #ifndef CRYFS_NO_COMPATIBILITY + // In the old format, this was stored in a "myClientId" file. If that file exists, load it from there. + optional<uint32_t> legacy = _tryLoadClientIdFromLegacyFile(metadataFilePath); +@@ -93,11 +93,11 @@ LocalStateMetadata LocalStateMetadata::_generate(const bf::path &metadataFilePat + #endif + + LocalStateMetadata result(myClientId, cpputils::hash::hash(encryptionKey, cpputils::hash::generateSalt())); +- result._save(metadataFilePath); ++ result.save_(metadataFilePath); + return result; + } + +-void LocalStateMetadata::_serialize(ostream& stream) const { ++void LocalStateMetadata::serialize_(ostream& stream) const { + ptree pt; + pt.put<uint32_t>("myClientId", myClientId()); + pt.put<string>("encryptionKey.salt", _encryptionKeyHash.salt.ToString()); +@@ -106,7 +106,7 @@ void LocalStateMetadata::_serialize(ostream& stream) const { + write_json(stream, pt); + } + +-LocalStateMetadata LocalStateMetadata::_deserialize(istream& stream) { ++LocalStateMetadata LocalStateMetadata::deserialize_(istream& stream) { + try { + ptree pt; + read_json(stream, pt); +diff --git a/src/cryfs/localstate/LocalStateMetadata.h b/src/cryfs/localstate/LocalStateMetadata.h +index 8b0ffc662..c06b0f05b 100644 +--- a/src/cryfs/localstate/LocalStateMetadata.h ++++ b/src/cryfs/localstate/LocalStateMetadata.h +@@ -20,11 +20,11 @@ class LocalStateMetadata final { + const uint32_t _myClientId; + const cpputils::hash::Hash _encryptionKeyHash; + +- static boost::optional<LocalStateMetadata> _load(const boost::filesystem::path &metadataFilePath); +- static LocalStateMetadata _deserialize(std::istream& stream); +- static LocalStateMetadata _generate(const boost::filesystem::path &metadataFilePath, const cpputils::Data& encryptionKey); +- void _save(const boost::filesystem::path &metadataFilePath) const; +- void _serialize(std::ostream& stream) const; ++ static boost::optional<LocalStateMetadata> load_(const boost::filesystem::path &metadataFilePath); ++ static LocalStateMetadata deserialize_(std::istream& stream); ++ static LocalStateMetadata generate_(const boost::filesystem::path &metadataFilePath, const cpputils::Data& encryptionKey); ++ void save_(const boost::filesystem::path &metadataFilePath) const; ++ void serialize_(std::ostream& stream) const; + + LocalStateMetadata(uint32_t myClientId, cpputils::hash::Hash encryptionKey); + }; + diff --git a/source/l/cryfs/cryfs.SlackBuild b/source/l/cryfs/cryfs.SlackBuild index 007bd1f7..e37b529b 100755 --- a/source/l/cryfs/cryfs.SlackBuild +++ b/source/l/cryfs/cryfs.SlackBuild @@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd) PKGNAM=cryfs VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} -BUILD=${BUILD:-2} +BUILD=${BUILD:-3} # Automatically determine the architecture we're building on: if [ -z "$ARCH" ]; then @@ -89,6 +89,12 @@ find . \ # Oddly, cryfs expects a static boost, so we'll need to hit it with the LART: export LDFLAGS="$SLKLDFLAGS -lboost_thread -lboost_program_options -lboost_filesystem -lboost_chrono -lcryptopp -lfuse" +# gcc11 fixes: +zcat $CWD/27587ea1acec5f939a31217f1c43953378f18821.patch.gz | patch -p1 --verbose || exit 1 + +# Boost 1.77.0 fix: +zcat $CWD/041b5baea5a4efceff33df2f316646b47a1cd7c0.patch.gz | patch -p1 --verbose || exit 1 + # Configure, build, and install: mkdir cmake-build cd cmake-build diff --git a/source/l/glib2/glib2.SlackBuild b/source/l/glib2/glib2.SlackBuild index ca7b1431..dc4bbfde 100755 --- a/source/l/glib2/glib2.SlackBuild +++ b/source/l/glib2/glib2.SlackBuild @@ -100,7 +100,7 @@ meson setup \ -Dselinux=disabled \ -Dfam=false \ -Dman=true \ - -Dgtk_doc=true \ + -Dgtk_doc=false \ -Dinstalled_tests=false \ .. || exit 1 "${NINJA:=ninja}" $NUMJOBS || exit 1 diff --git a/source/l/gst-plugins-base/gst-plugins-base.SlackBuild b/source/l/gst-plugins-base/gst-plugins-base.SlackBuild index 22de1419..2221f7b7 100755 --- a/source/l/gst-plugins-base/gst-plugins-base.SlackBuild +++ b/source/l/gst-plugins-base/gst-plugins-base.SlackBuild @@ -101,7 +101,7 @@ meson setup \ --buildtype=release \ -Dexamples=disabled \ .. || exit 1 - "${NINJA:=ninja}" $NUMJOBS || exit 1 + "${NINJA:=ninja}" $NUMJOBS || cp -a gst-libs/gst/gl/xdg-shell-client-protocol.h .. && "${NINJA:=ninja}" $NUMJOBS || exit 1 DESTDIR=$PKG $NINJA install || exit 1 cd .. diff --git a/source/l/gst-plugins-good/gst-plugins-good.SlackBuild b/source/l/gst-plugins-good/gst-plugins-good.SlackBuild index 1a7b8b6f..fd87f2d5 100755 --- a/source/l/gst-plugins-good/gst-plugins-good.SlackBuild +++ b/source/l/gst-plugins-good/gst-plugins-good.SlackBuild @@ -88,6 +88,8 @@ find . \ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ -exec chmod 644 {} \+ +zcat $CWD/gst-plugins-good.gcc11.patch.gz | patch -p1 --verbose || exit 1 + # Configure, build, and install: export CFLAGS="$SLKCFLAGS" export CXXFLAGS="$SLKCFLAGS" diff --git a/source/l/gst-plugins-good/gst-plugins-good.gcc11.patch b/source/l/gst-plugins-good/gst-plugins-good.gcc11.patch new file mode 100644 index 00000000..f44e3a72 --- /dev/null +++ b/source/l/gst-plugins-good/gst-plugins-good.gcc11.patch @@ -0,0 +1,316 @@ +From a1bf3d8d540a25268d612a489e1e836d6ea737b0 Mon Sep 17 00:00:00 2001 +From: Matthew Waters <matthew@centricular.com> +Date: Thu, 18 Mar 2021 19:52:53 +1100 +Subject: [PATCH] gst: don't use volatile to mean atomic + +volatile is not sufficient to provide atomic guarantees and real atomics +should be used instead. GCC 11 has started warning about using volatile +with atomic operations. + +https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719 + +Discovered in https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/868 + +Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/941> +--- + ext/jack/gstjack.c | 6 +++--- + ext/jack/gstjackaudiosink.c | 2 +- + ext/jack/gstjackaudiosrc.c | 2 +- + ext/pulse/pulsesink.h | 2 +- + ext/qt/gstqsgtexture.cc | 2 +- + ext/qt/gstqtglutility.cc | 2 +- + ext/qt/qtglrenderer.cc | 6 +++--- + ext/qt/qtitem.cc | 2 +- + ext/qt/qtwindow.cc | 4 ++-- + ext/vpx/gstvpxdec.c | 2 +- + ext/vpx/gstvpxenc.c | 14 +++++++------- + gst/audioparsers/gstac3parse.h | 2 +- + sys/rpicamsrc/gstrpicamsrc.c | 2 +- + sys/ximage/ximageutil.c | 2 +- + 14 files changed, 25 insertions(+), 25 deletions(-) + +diff --git a/ext/jack/gstjack.c b/ext/jack/gstjack.c +index ca98dc405..fdd507d87 100644 +--- a/ext/jack/gstjack.c ++++ b/ext/jack/gstjack.c +@@ -28,7 +28,7 @@ + GType + gst_jack_connect_get_type (void) + { +- static volatile gsize jack_connect_type = 0; ++ static gsize jack_connect_type = 0; + + if (g_once_init_enter (&jack_connect_type)) { + static const GEnumValue jack_connect_enums[] = { +@@ -50,7 +50,7 @@ gst_jack_connect_get_type (void) + GType + gst_jack_transport_get_type (void) + { +- static volatile gsize type = 0; ++ static gsize type = 0; + + if (g_once_init_enter (&type)) { + static const GFlagsValue flag_values[] = { +@@ -84,7 +84,7 @@ gst_jack_client_free (gpointer jclient) + GType + gst_jack_client_get_type (void) + { +- static volatile gsize jack_client_type = 0; ++ static gsize jack_client_type = 0; + + if (g_once_init_enter (&jack_client_type)) { + /* hackish, but makes it show up nicely in gst-inspect */ +diff --git a/ext/jack/gstjackaudiosink.c b/ext/jack/gstjackaudiosink.c +index ee7cea8c0..6e8d04ae5 100644 +--- a/ext/jack/gstjackaudiosink.c ++++ b/ext/jack/gstjackaudiosink.c +@@ -131,7 +131,7 @@ gst_jack_audio_sink_free_channels (GstJackAudioSink * sink) + static GType + gst_jack_ring_buffer_get_type (void) + { +- static volatile gsize ringbuffer_type = 0; ++ static gsize ringbuffer_type = 0; + + if (g_once_init_enter (&ringbuffer_type)) { + static const GTypeInfo ringbuffer_info = { +diff --git a/ext/jack/gstjackaudiosrc.c b/ext/jack/gstjackaudiosrc.c +index 1d2cf82ee..d43a447a7 100644 +--- a/ext/jack/gstjackaudiosrc.c ++++ b/ext/jack/gstjackaudiosrc.c +@@ -151,7 +151,7 @@ gst_jack_audio_src_free_channels (GstJackAudioSrc * src) + static GType + gst_jack_ring_buffer_get_type (void) + { +- static volatile gsize ringbuffer_type = 0; ++ static gsize ringbuffer_type = 0; + + if (g_once_init_enter (&ringbuffer_type)) { + static const GTypeInfo ringbuffer_info = { sizeof (GstJackRingBufferClass), +diff --git a/ext/pulse/pulsesink.h b/ext/pulse/pulsesink.h +index 86f3dcdbb..51ec86a25 100644 +--- a/ext/pulse/pulsesink.h ++++ b/ext/pulse/pulsesink.h +@@ -72,7 +72,7 @@ struct _GstPulseSink + GstStructure *properties; + pa_proplist *proplist; + +- volatile gint format_lost; ++ gint format_lost; + GstClockTime format_lost_time; + }; + +diff --git a/ext/qt/gstqsgtexture.cc b/ext/qt/gstqsgtexture.cc +index a05d26edd..bfa79cda0 100644 +--- a/ext/qt/gstqsgtexture.cc ++++ b/ext/qt/gstqsgtexture.cc +@@ -35,7 +35,7 @@ GST_DEBUG_CATEGORY_STATIC (GST_CAT_DEFAULT); + + GstQSGTexture::GstQSGTexture () + { +- static volatile gsize _debug; ++ static gsize _debug; + + initializeOpenGLFunctions(); + +diff --git a/ext/qt/gstqtglutility.cc b/ext/qt/gstqtglutility.cc +index acb89b6e1..d2c092202 100644 +--- a/ext/qt/gstqtglutility.cc ++++ b/ext/qt/gstqtglutility.cc +@@ -66,7 +66,7 @@ gst_qt_get_gl_display () + { + GstGLDisplay *display = NULL; + QGuiApplication *app = static_cast<QGuiApplication *> (QCoreApplication::instance ()); +- static volatile gsize _debug; ++ static gsize _debug; + + g_assert (app != NULL); + +diff --git a/ext/qt/qtglrenderer.cc b/ext/qt/qtglrenderer.cc +index 2ad5601fc..52965fd0b 100644 +--- a/ext/qt/qtglrenderer.cc ++++ b/ext/qt/qtglrenderer.cc +@@ -22,7 +22,7 @@ GST_DEBUG_CATEGORY_STATIC (GST_CAT_DEFAULT); + static void + init_debug (void) + { +- static volatile gsize _debug; ++ static gsize _debug; + + if (g_once_init_enter (&_debug)) { + GST_DEBUG_CATEGORY_INIT (GST_CAT_DEFAULT, "qtglrenderer", 0, +@@ -115,7 +115,7 @@ typedef enum + + struct SharedRenderData + { +- volatile int refcount; ++ int refcount; + SharedRenderDataState state; + GMutex lock; + GCond cond; +@@ -130,7 +130,7 @@ shared_render_data_new (void) + { + struct SharedRenderData *ret = g_new0 (struct SharedRenderData, 1); + +- ret->refcount = 1; ++ g_atomic_int_set (&ret->refcount, 1); + g_mutex_init (&ret->lock); + + return ret; +diff --git a/ext/qt/qtitem.cc b/ext/qt/qtitem.cc +index 7659800b6..bc99639b4 100644 +--- a/ext/qt/qtitem.cc ++++ b/ext/qt/qtitem.cc +@@ -104,7 +104,7 @@ void InitializeSceneGraph::run() + + QtGLVideoItem::QtGLVideoItem() + { +- static volatile gsize _debug; ++ static gsize _debug; + + if (g_once_init_enter (&_debug)) { + GST_DEBUG_CATEGORY_INIT (GST_CAT_DEFAULT, "qtglwidget", 0, "Qt GL Widget"); +diff --git a/ext/qt/qtwindow.cc b/ext/qt/qtwindow.cc +index 9360c3337..7c44ac54e 100644 +--- a/ext/qt/qtwindow.cc ++++ b/ext/qt/qtwindow.cc +@@ -103,7 +103,7 @@ QtGLWindow::QtGLWindow ( QWindow * parent, QQuickWindow *src ) : + QQuickWindow( parent ), source (src) + { + QGuiApplication *app = static_cast<QGuiApplication *> (QCoreApplication::instance ()); +- static volatile gsize _debug; ++ static gsize _debug; + + g_assert (app != NULL); + +@@ -152,7 +152,7 @@ QtGLWindow::beforeRendering() + + g_mutex_lock (&this->priv->lock); + +- static volatile gsize once = 0; ++ static gsize once = 0; + if (g_once_init_enter(&once)) { + this->priv->start = QDateTime::currentDateTime().toMSecsSinceEpoch(); + g_once_init_leave(&once,1); +diff --git a/ext/vpx/gstvpxdec.c b/ext/vpx/gstvpxdec.c +index e92aa85c7..74cc3c970 100644 +--- a/ext/vpx/gstvpxdec.c ++++ b/ext/vpx/gstvpxdec.c +@@ -79,7 +79,7 @@ gst_vpx_dec_post_processing_flags_get_type (void) + {C_FLAGS (VP8_MFQE), "Multi-frame quality enhancement", "mfqe"}, + {0, NULL, NULL} + }; +- static volatile GType id = 0; ++ static GType id = 0; + + if (g_once_init_enter ((gsize *) & id)) { + GType _id; +diff --git a/ext/vpx/gstvpxenc.c b/ext/vpx/gstvpxenc.c +index cd5b30d14..4b3b4f770 100644 +--- a/ext/vpx/gstvpxenc.c ++++ b/ext/vpx/gstvpxenc.c +@@ -165,7 +165,7 @@ gst_vpx_enc_end_usage_get_type (void) + {VPX_CQ, "Constant Quality Mode (CQ) mode", "cq"}, + {0, NULL, NULL} + }; +- static volatile GType id = 0; ++ static GType id = 0; + + if (g_once_init_enter ((gsize *) & id)) { + GType _id; +@@ -188,7 +188,7 @@ gst_vpx_enc_multipass_mode_get_type (void) + {VPX_RC_LAST_PASS, "Last pass of multipass encoding", "last-pass"}, + {0, NULL, NULL} + }; +- static volatile GType id = 0; ++ static GType id = 0; + + if (g_once_init_enter ((gsize *) & id)) { + GType _id; +@@ -210,7 +210,7 @@ gst_vpx_enc_kf_mode_get_type (void) + {VPX_KF_DISABLED, "Don't automatically place keyframes", "disabled"}, + {0, NULL, NULL} + }; +- static volatile GType id = 0; ++ static GType id = 0; + + if (g_once_init_enter ((gsize *) & id)) { + GType _id; +@@ -232,7 +232,7 @@ gst_vpx_enc_tuning_get_type (void) + {VP8_TUNE_SSIM, "Tune for SSIM", "ssim"}, + {0, NULL, NULL} + }; +- static volatile GType id = 0; ++ static GType id = 0; + + if (g_once_init_enter ((gsize *) & id)) { + GType _id; +@@ -256,7 +256,7 @@ gst_vpx_enc_scaling_mode_get_type (void) + {VP8E_ONETWO, "1:2", "1:2"}, + {0, NULL, NULL} + }; +- static volatile GType id = 0; ++ static GType id = 0; + + if (g_once_init_enter ((gsize *) & id)) { + GType _id; +@@ -280,7 +280,7 @@ gst_vpx_enc_token_partitions_get_type (void) + {VP8_EIGHT_TOKENPARTITION, "Eight token partitions", "8"}, + {0, NULL, NULL} + }; +- static volatile GType id = 0; ++ static GType id = 0; + + if (g_once_init_enter ((gsize *) & id)) { + GType _id; +@@ -303,7 +303,7 @@ gst_vpx_enc_er_flags_get_type (void) + "Allow partitions to be decoded independently", "partitions"}, + {0, NULL, NULL} + }; +- static volatile GType id = 0; ++ static GType id = 0; + + if (g_once_init_enter ((gsize *) & id)) { + GType _id; +diff --git a/gst/audioparsers/gstac3parse.h b/gst/audioparsers/gstac3parse.h +index 0e7af5acd..81e2104d5 100644 +--- a/gst/audioparsers/gstac3parse.h ++++ b/gst/audioparsers/gstac3parse.h +@@ -62,7 +62,7 @@ struct _GstAc3Parse { + gint blocks; + gboolean eac; + gboolean sent_codec_tag; +- volatile gint align; ++ gint align; + GstPadChainFunction baseparse_chainfunc; + }; + +diff --git a/sys/rpicamsrc/gstrpicamsrc.c b/sys/rpicamsrc/gstrpicamsrc.c +index a148d4106..f719acb4c 100644 +--- a/sys/rpicamsrc/gstrpicamsrc.c ++++ b/sys/rpicamsrc/gstrpicamsrc.c +@@ -292,7 +292,7 @@ gst_rpi_cam_src_sensor_mode_get_type (void) + "640x480 4:3 60.1-90fps", "640x480-fast"}, + {0, NULL, NULL} + }; +- static volatile GType id = 0; ++ static GType id = 0; + if (g_once_init_enter ((gsize *) & id)) { + GType _id; + _id = g_enum_register_static ("GstRpiCamSrcSensorMode", values); +diff --git a/sys/ximage/ximageutil.c b/sys/ximage/ximageutil.c +index 57c9392c7..018b60515 100644 +--- a/sys/ximage/ximageutil.c ++++ b/sys/ximage/ximageutil.c +@@ -26,7 +26,7 @@ + GType + gst_meta_ximage_api_get_type (void) + { +- static volatile GType type; ++ static GType type; + static const gchar *tags[] = { "memory", NULL }; + + if (g_once_init_enter (&type)) { +-- +GitLab + + diff --git a/source/l/gtk+3/gtk+3.SlackBuild b/source/l/gtk+3/gtk+3.SlackBuild index 377b619a..74090980 100755 --- a/source/l/gtk+3/gtk+3.SlackBuild +++ b/source/l/gtk+3/gtk+3.SlackBuild @@ -82,6 +82,9 @@ find . \ # the configure process doesn't try to call it: zcat $CWD/gtk.fix.missing.version-check.py.diff.gz | patch -p1 --verbose || exit 1 +# Loosen this up for gcc11: +zcat $CWD/gtk.array-bounds.gcc11.diff.gz | patch -p1 --verbose || exit 1 + # Configure, build, and install: export CFLAGS="$SLKCFLAGS -DG_ENABLE_DEBUG -DG_DISABLE_CAST_CHECKS" export CXXFLAGS="$SLKCFLAGS -DG_ENABLE_DEBUG -DG_DISABLE_CAST_CHECKS" diff --git a/source/l/gtk+3/gtk.array-bounds.gcc11.diff b/source/l/gtk+3/gtk.array-bounds.gcc11.diff new file mode 100644 index 00000000..99392a31 --- /dev/null +++ b/source/l/gtk+3/gtk.array-bounds.gcc11.diff @@ -0,0 +1,10 @@ +--- ./meson.build.orig 2021-08-05 23:49:52.169416580 -0500 ++++ ./meson.build 2021-08-05 23:50:01.955416038 -0500 +@@ -309,7 +309,6 @@ + '-Werror=sequence-point', + '-Werror=return-type', + '-Werror=trigraphs', +- '-Werror=array-bounds', + '-Werror=write-strings', + '-Werror=address', + '-Werror=int-to-pointer-cast', diff --git a/source/l/gtk4/doinst.sh b/source/l/gtk4/doinst.sh new file mode 100644 index 00000000..74cd752a --- /dev/null +++ b/source/l/gtk4/doinst.sh @@ -0,0 +1,21 @@ +config() { + NEW="$1" + OLD="$(dirname $NEW)/$(basename $NEW .new)" + # If there's no config file by that name, mv it over: + if [ ! -r $OLD ]; then + mv $NEW $OLD + elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then # toss the redundant copy + rm $NEW + fi + # Otherwise, we leave the .new copy for the admin to consider... +} + +# Obsolete in gtk4? +#config etc/gtk-4.0/gtkrc.new +#config etc/gtk-4.0/im-multipress.conf.new +#rm -f etc/gtk-4.0/gtkrc.new + +chroot . rm -f /usr/share/icons/*/icon-theme.cache 1> /dev/null 2> /dev/null +chroot . /usr/bin/glib-compile-schemas /usr/share/glib-2.0/schemas/ 1> /dev/null 2> /dev/null +chroot . /usr/bin/gio-querymodules /usr/lib64/gtk-4.0/4.0.0/media 1> /dev/null 2> /dev/null +chroot . /usr/bin/gio-querymodules /usr/lib64/gtk-4.0/4.0.0/printbackends 1> /dev/null 2> /dev/null diff --git a/source/l/gtk4/gtk4.SlackBuild b/source/l/gtk4/gtk4.SlackBuild new file mode 100755 index 00000000..6f6101b1 --- /dev/null +++ b/source/l/gtk4/gtk4.SlackBuild @@ -0,0 +1,161 @@ +#!/bin/bash + +# Copyright 2008, 2009, 2010, 2011, 2013, 2018, 2020, 2021 Patrick J. Volkerding, Sebeka, MN, 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) + +PKGNAM=gtk4 +VERSION=${VERSION:-$(echo gtk-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} +BUILD=${BUILD:-1} + +NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "} + +# Automatically determine the architecture we're building on: +if [ -z "$ARCH" ]; then + case "$( uname -m )" in + i?86) export ARCH=i586 ;; + arm*) export ARCH=arm ;; + # Unless $ARCH is already set, use uname -m for all other archs: + *) export 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 "$PKGNAM-$VERSION-$ARCH-$BUILD.txz" + exit 0 +fi + +TMP=${TMP:-/tmp} +PKG=$TMP/package-gtk4 + +if [ "$ARCH" = "i586" ]; then + SLKCFLAGS="-O2 -march=i586 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIRSUFFIX="64" +else + SLKCFLAGS="-O2" + LIBDIRSUFFIX="" +fi + +rm -rf $PKG +mkdir -p $TMP $PKG/usr +cd $TMP +rm -rf gtk-$VERSION +tar xvf $CWD/gtk-$VERSION.tar.?z || exit 1 +cd gtk-$VERSION || exit 1 + +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 {} \+ + +# Configure, build, and install: +export CFLAGS="$SLKCFLAGS -DG_ENABLE_DEBUG" +export CXXFLAGS="$SLKCFLAGS -DG_ENABLE_DEBUG" +mkdir meson-build +cd meson-build +meson setup \ + --prefix=/usr \ + --libdir=lib${LIBDIRSUFFIX} \ + --libexecdir=/usr/libexec \ + --bindir=/usr/bin \ + --sbindir=/usr/sbin \ + --includedir=/usr/include \ + --datadir=/usr/share \ + --mandir=/usr/man \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --buildtype=release \ + -Dman-pages=true \ + -Ddemos=true \ + -Dgtk_doc=false \ + -Dbroadway_backend=true \ + -Dexamples=false \ + -Dtests=false \ + -Dinstalled_tests=false \ + -Dwayland_backend=true \ + .. || exit 1 + "${NINJA:=ninja}" $NUMJOBS || exit 1 + DESTDIR=$PKG $NINJA install || exit 1 +cd .. + +# The following four things don't seem to be used by gtk4. But if something +# similar ends up being required, let me know. + +# Don't clobber im-multipress.conf +#mv $PKG/etc/gtk-4.0/im-multipress.conf $PKG/etc/gtk-4.0/im-multipress.conf.new + +# Install a "starter" gtkrc +#echo 'gtk-theme-name="Adwaita"' > $PKG/etc/gtk-4.0/gtkrc.new + +# We need to have separate 32-bit and 64-bit binaries for places where we have +# two copies of the GTK package installed (we might have x86_64 and i586 +# packages on the same system, for example.) +#if [ "$LIBDIRSUFFIX" = "64" ]; then +# mv $PKG/usr/bin/gtk-query-immodules-4.0{,-64} +# ( cd $PKG/usr/bin +# ln -sf gtk-query-immodules-4.0-64 gtk-query-immodules-4.0 +# ) +#else +# mv $PKG/usr/bin/gtk-query-immodules-4.0{,-32} +# ( cd $PKG/usr/bin +# ln -sf gtk-query-immodules-4.0-32 gtk-query-immodules-4.0 +# ) +#fi + +# Install wrappers for the binaries: +#cp $CWD/update-gtk-immodules-4.0 $PKG/usr/bin/update-gtk-immodules-4.0 +#chmod 0755 $PKG/usr/bin/update-* + +# Strip binaries: +find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null + +# Compress manual pages: +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 + +# Copy extra documentation into package. +mkdir -p $PKG/usr/doc/gtk4-$VERSION +cp -a \ + AUTHORS COPYING NEWS README \ + $PKG/usr/doc/gtk4-$VERSION +find $PKG/usr/doc/gtk4-$VERSION/ -type f -exec chmod 644 {} \+ +chown -R root:root $PKG/usr/doc/gtk4-$VERSION + +mkdir -p $PKG/install +zcat $CWD/doinst.sh > $PKG/install/doinst.sh +cat $CWD/slack-desc > $PKG/install/slack-desc + +cd $PKG +/sbin/makepkg -p -l y -c n $TMP/gtk4-${VERSION}-$ARCH-${BUILD}.txz diff --git a/source/l/gtk4/slack-desc b/source/l/gtk4/slack-desc new file mode 100644 index 00000000..7187360b --- /dev/null +++ b/source/l/gtk4/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------------------------------------------------------| +gtk4: gtk4 (multi-platform GUI toolkit v4) +gtk4: +gtk4: This is GTK, a multi-platform toolkit for creating graphical user +gtk4: interfaces. Offering a complete set of widgets, GTK+ is suitable for +gtk4: projects ranging from small one-off projects to complete application +gtk4: suites. +gtk4: +gtk4: +gtk4: +gtk4: +gtk4: diff --git a/source/l/gtkmm3/gtkmm3.SlackBuild b/source/l/gtkmm3/gtkmm3.SlackBuild index 1c944f61..cb5d066a 100755 --- a/source/l/gtkmm3/gtkmm3.SlackBuild +++ b/source/l/gtkmm3/gtkmm3.SlackBuild @@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd) SRCNAM=gtkmm PKGNAM=gtkmm3 VERSION=${VERSION:-$(echo $SRCNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} -BUILD=${BUILD:-3} +BUILD=${BUILD:-1} SRCNAM=gtkmm diff --git a/source/l/libwebp/libwebp.SlackBuild b/source/l/libwebp/libwebp.SlackBuild index 4474c8d2..3417a96e 100755 --- a/source/l/libwebp/libwebp.SlackBuild +++ b/source/l/libwebp/libwebp.SlackBuild @@ -26,7 +26,7 @@ cd $(dirname $0) ; CWD=$(pwd) PKGNAM=libwebp VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} -BUILD=${BUILD:-2} +BUILD=${BUILD:-1} # Automatically determine the architecture we're building on: if [ -z "$ARCH" ]; then diff --git a/source/l/libwpd/libwpd.SlackBuild b/source/l/libwpd/libwpd.SlackBuild index 86a6eeff..bd365653 100755 --- a/source/l/libwpd/libwpd.SlackBuild +++ b/source/l/libwpd/libwpd.SlackBuild @@ -81,6 +81,8 @@ find . \ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ -exec chmod 644 {} \+ +zcat $CWD/libwpd.gcc11.diff.gz | patch -p1 --verbose || exit 1 + CFLAGS="$SLKCFLAGS" \ CXXFLAGS="$SLKCFLAGS" \ ./configure \ diff --git a/source/l/libwpd/libwpd.gcc11.diff b/source/l/libwpd/libwpd.gcc11.diff new file mode 100644 index 00000000..83855a04 --- /dev/null +++ b/source/l/libwpd/libwpd.gcc11.diff @@ -0,0 +1,21 @@ +--- ./src/lib/WPXContentListener.cpp.orig 2018-12-25 10:19:19.000000000 -0600 ++++ ./src/lib/WPXContentListener.cpp 2021-08-06 00:05:53.939363381 -0500 +@@ -23,6 +23,7 @@ + * Corel Corporation or Corel Corporation Limited." + */ + ++#include <cstddef> + #include "WPXContentListener.h" + #include "WPXPageSpan.h" + #include "libwpd_internal.h" +--- ./src/lib/WPXTable.cpp.orig 2018-12-25 10:19:19.000000000 -0600 ++++ ./src/lib/WPXTable.cpp 2021-08-06 00:05:19.424365290 -0500 +@@ -25,6 +25,8 @@ + * Corel Corporation or Corel Corporation Limited." + */ + ++#include <cstddef> ++ + #include "WPXTable.h" + + #include "libwpd_internal.h" diff --git a/source/l/mlt/mlt.SlackBuild b/source/l/mlt/mlt.SlackBuild index 59182265..870e1b7d 100755 --- a/source/l/mlt/mlt.SlackBuild +++ b/source/l/mlt/mlt.SlackBuild @@ -1,7 +1,6 @@ #!/bin/bash -# Copyright 2017, 2018, 2019, 2020 Eric Hameleers, Eindhoven, NL -# Copyright 2020 Patrick J. Volkerding, Sebeka, Minnesota, USA +# Copyright 2021 Patrick J. Volkerding, Sebeka, Minnesota, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -86,66 +85,37 @@ find . \ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ -exec chmod 644 {} \+ -PYTHONSITEPKG=$(python3 -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())") - # Configure, build, and install: -if [ ! -r configure ]; then - if [ -x ./autogen.sh ]; then - NOCONFIGURE=1 ./autogen.sh - else - autoreconf -vif - fi -fi -CFLAGS="$SLKCFLAGS" \ -CXXFLAGS="$SLKCFLAGS" \ -./configure \ - --prefix=/usr \ - --libdir=/usr/lib${LIBDIRSUFFIX} \ - --sysconfdir=/etc \ - --localstatedir=/var \ - --docdir=/usr/doc/$PKGNAM-$VERSION \ - --mandir=/usr/man \ - --infodir=/usr/info \ - --disable-static \ - --avformat-swscale \ - --disable-debug \ - --enable-gpl \ - --enable-gpl3 \ - --enable-motion-est \ - --enable-opencv \ - --enable-qt \ - --qt-libdir=$(pkg-config Qt5Core --variable=libdir) \ - --qt-includedir=$(pkg-config Qt5Core --variable=includedir) \ - --swig-languages="python" \ - --build=$ARCH-slackware-linux || exit 1 -make $NUMJOBS || make || exit 1 -make install DESTDIR=$PKG || exit 1 - -# Install the extensions we enabled: -install -D -m0755 src/swig/python/_mlt.so $PKG/$PYTHONSITEPKG/_mlt.so -install -D -m0755 src/swig/python/mlt_wrap.o $PKG/$PYTHONSITEPKG/mlt_wrap.o -install -D -m0755 src/swig/python/mlt.py $PKG/$PYTHONSITEPKG/mlt.py - -# Don't ship .la files: -rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la +mkdir cmake-build +cd cmake-build + cmake \ + -DCMAKE_C_FLAGS="$SLKCFLAGS" \ + -DCMAKE_CXX_FLAGS="$SLKCFLAGS" \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DLIB_SUFFIX="$LIBDIRSUFFIX" \ + -DDOC_INSTALL_DIR="doc" \ + -DMAN_INSTALL_DIR=/usr/man \ + .. || exit 1 + make $NUMJOBS || make || exit 1 + make install DESTDIR=$PKG || exit 1 +cd .. # Strip binaries: find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Compress manual pages: +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 + # Add a documentation directory: mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION cp -a \ - AUTHORS* ChangeLog COPYING* GPL* NEWS* README* docs/*.txt \ + AUTHORS* ChangeLog CHANGES COPYING* LICENSE* NEWS* README* THANKS* TODO* \ $PKG/usr/doc/${PKGNAM}-$VERSION -# If there's a ChangeLog, installing at least part of the recent history -# is useful, but don't let it get totally out of control: -if [ -r ChangeLog ]; then - DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION) - cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog - touch -r ChangeLog $DOCSDIR/ChangeLog -fi - mkdir -p $PKG/install cat $CWD/slack-desc > $PKG/install/slack-desc diff --git a/source/l/mozilla-nss/mozilla-nss.SlackBuild b/source/l/mozilla-nss/mozilla-nss.SlackBuild index 4bef0f09..073f8b9c 100755 --- a/source/l/mozilla-nss/mozilla-nss.SlackBuild +++ b/source/l/mozilla-nss/mozilla-nss.SlackBuild @@ -26,8 +26,8 @@ cd $(dirname $0) ; CWD=$(pwd) PKGNAM=mozilla-nss SRCNAM=nss -VERSION=${VERSION:-3.67} -NSPR=${NSPR:-4.31} +VERSION=${VERSION:-3.69} +NSPR=${NSPR:-4.32} BUILD=${BUILD:-1} # Automatically determine the architecture we're building on: diff --git a/source/l/ocl-icd/ocl-icd.SlackBuild b/source/l/ocl-icd/ocl-icd.SlackBuild index c133142d..a190ca15 100755 --- a/source/l/ocl-icd/ocl-icd.SlackBuild +++ b/source/l/ocl-icd/ocl-icd.SlackBuild @@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd) PKGNAM=ocl-icd VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} -BUILD=${BUILD:-1} +BUILD=${BUILD:-2} NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "} diff --git a/source/l/openexr/openexr.SlackBuild b/source/l/openexr/openexr.SlackBuild index 6305eae9..286b4fc0 100755 --- a/source/l/openexr/openexr.SlackBuild +++ b/source/l/openexr/openexr.SlackBuild @@ -27,7 +27,7 @@ cd $(dirname $0) ; CWD=$(pwd) PKGNAM=openexr VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} -BUILD=${BUILD:-1} +BUILD=${BUILD:-2} # Automatically determine the architecture we're building on: if [ -z "$ARCH" ]; then diff --git a/source/l/pulseaudio/pulseaudio-autostart-meson.build.patch b/source/l/pulseaudio/pulseaudio-autostart-meson.build.patch new file mode 100644 index 00000000..a7fadb99 --- /dev/null +++ b/source/l/pulseaudio/pulseaudio-autostart-meson.build.patch @@ -0,0 +1,10 @@ +--- ./src/daemon/meson.build.orig 2021-07-27 15:02:27.738868200 -0500 ++++ ./src/daemon/meson.build 2021-08-09 13:15:24.344941127 -0500 +@@ -38,6 +38,7 @@ + if x11_dep.found() + conf = configuration_data() + conf.set('PACTL_BINARY', join_paths(bindir, 'pactl')) ++ conf.set('PA_BINARY', join_paths(bindir, 'pulseaudio')) + + configure_file( + input : 'start-pulseaudio-x11.in', diff --git a/source/l/pulseaudio/pulseaudio.SlackBuild b/source/l/pulseaudio/pulseaudio.SlackBuild index 39d4b77b..bf389d8f 100755 --- a/source/l/pulseaudio/pulseaudio.SlackBuild +++ b/source/l/pulseaudio/pulseaudio.SlackBuild @@ -27,7 +27,7 @@ cd $(dirname $0) ; CWD=$(pwd) PKGNAM=pulseaudio VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} -BUILD=${BUILD:-1} +BUILD=${BUILD:-2} if [ -z "$ARCH" ]; then case "$( uname -m )" in @@ -91,6 +91,8 @@ echo "X-MATE-Autostart-Phase=Initialization" >> src/daemon/pulseaudio.desktop.in # If autospawn isn't working, start-pulseaudio-x11 should start it manually: zcat $CWD/pulseaudio-autostart.patch.gz | patch -p1 --verbose || exit 1 +# When built by meson, this patch also required to fix the above issue: +zcat $CWD/pulseaudio-autostart-meson.build.patch.gz | patch -p1 --verbose || exit 1 # Configure, build, and install: export CFLAGS="$SLKCFLAGS" diff --git a/source/l/qt5/patches/0006-Fix-build-with-GCC-11-include-limits.patch b/source/l/qt5/patches/0006-Fix-build-with-GCC-11-include-limits.patch new file mode 100644 index 00000000..f014a160 --- /dev/null +++ b/source/l/qt5/patches/0006-Fix-build-with-GCC-11-include-limits.patch @@ -0,0 +1,53 @@ +From 9c56d4da2ff631a8c1c30475bd792f6c86bda53c Mon Sep 17 00:00:00 2001 +From: Thiago Macieira <thiago.macieira@intel.com> +Date: Mon, 18 Jan 2021 07:40:54 -0800 +Subject: [PATCH] Fix build with GCC 11: include <limits> + +Fixes: QTBUG-90395 +Pick-to: 6.0 +Change-Id: Iecc74d2000eb40dfbe7bfffd165b5dd3708b7a40 +Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> + +[Retrieved (and backported) from: +https://github.com/qt/qtbase/commit/9c56d4da2ff631a8c1c30475bd792f6c86bda53c] +Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> +--- + src/corelib/global/qendian.h | 6 ++++-- + src/corelib/global/qfloat16.h | 1 + + 2 files changed, 5 insertions(+), 2 deletions(-) + +diff --git a/src/corelib/global/qendian.h b/src/corelib/global/qendian.h +index 99b529f17cd..c874c5e47ab 100644 +--- a/src/corelib/global/qendian.h ++++ b/src/corelib/global/qendian.h +@@ -1,7 +1,7 @@ + /**************************************************************************** + ** +-** Copyright (C) 2016 The Qt Company Ltd. +-** Copyright (C) 2016 Intel Corporation. ++** Copyright (C) 2021 The Qt Company Ltd. ++** Copyright (C) 2021 Intel Corporation. + ** Contact: https://www.qt.io/licensing/ + ** + ** This file is part of the QtCore module of the Qt Toolkit. +@@ -44,6 +44,8 @@ + #include <QtCore/qfloat16.h> + #include <QtCore/qglobal.h> + ++#include <limits> ++ + // include stdlib.h and hope that it defines __GLIBC__ for glibc-based systems + #include <stdlib.h> + #include <string.h> +diff --git a/src/corelib/global/qfloat16.h b/src/corelib/global/qfloat16.h +index e9477d2ecec..a25fac28862 100644 +--- a/src/corelib/global/qfloat16.h ++++ b/src/corelib/global/qfloat16.h +@@ -44,6 +44,7 @@ + + #include <QtCore/qglobal.h> + #include <QtCore/qmetatype.h> ++#include <limits> + #include <string.h> + + #if defined(QT_COMPILER_SUPPORTS_F16C) && defined(__AVX2__) && !defined(__F16C__) diff --git a/source/l/qt5/patches/qt5-qtbase-gcc11.patch b/source/l/qt5/patches/qt5-qtbase-gcc11.patch new file mode 100644 index 00000000..c9567128 --- /dev/null +++ b/source/l/qt5/patches/qt5-qtbase-gcc11.patch @@ -0,0 +1,171 @@ +diff --git a/src/corelib/codecs/qtextcodec.cpp b/src/corelib/codecs/qtextcodec.cpp +index 06fd88da..dbff3239 100644 +--- a/src/corelib/codecs/qtextcodec.cpp ++++ b/src/corelib/codecs/qtextcodec.cpp +@@ -38,6 +38,7 @@ + ** + ****************************************************************************/ + ++#include <limits> + #include "qplatformdefs.h" + + #include "qtextcodec.h" +diff --git a/src/corelib/codecs/qutfcodec.cpp b/src/corelib/codecs/qutfcodec.cpp +index 8561f908..8128d3cf 100644 +--- a/src/corelib/codecs/qutfcodec.cpp ++++ b/src/corelib/codecs/qutfcodec.cpp +@@ -38,6 +38,8 @@ + ** + ****************************************************************************/ + ++#include <limits> ++ + #include "qutfcodec_p.h" + #include "qlist.h" + #include "qendian.h" +diff --git a/src/corelib/global/qendian.cpp b/src/corelib/global/qendian.cpp +index eb08b2f8..6b41b3dd 100644 +--- a/src/corelib/global/qendian.cpp ++++ b/src/corelib/global/qendian.cpp +@@ -38,6 +38,7 @@ + ** + ****************************************************************************/ + ++#include <limits> + #include "qendian.h" + + #include "qalgorithms.h" +diff --git a/src/corelib/global/qfloat16.cpp b/src/corelib/global/qfloat16.cpp +index c9733174..c62a1972 100644 +--- a/src/corelib/global/qfloat16.cpp ++++ b/src/corelib/global/qfloat16.cpp +@@ -38,6 +38,7 @@ + ** + ****************************************************************************/ + ++#include <limits> + #include "qfloat16.h" + #include "private/qsimd_p.h" + #include <cmath> // for fpclassify()'s return values +diff --git a/src/corelib/global/qrandom.cpp b/src/corelib/global/qrandom.cpp +index 10672c1f..6d5fd63e 100644 +--- a/src/corelib/global/qrandom.cpp ++++ b/src/corelib/global/qrandom.cpp +@@ -40,6 +40,7 @@ + // for rand_s + #define _CRT_RAND_S + ++#include <limits> + #include "qrandom.h" + #include "qrandom_p.h" + #include <qobjectdefs.h> +diff --git a/src/corelib/plugin/qelfparser_p.cpp b/src/corelib/plugin/qelfparser_p.cpp +index 13eee353..9e7a7a41 100644 +--- a/src/corelib/plugin/qelfparser_p.cpp ++++ b/src/corelib/plugin/qelfparser_p.cpp +@@ -37,6 +37,7 @@ + ** + ****************************************************************************/ + ++#include <limits> + #include "qelfparser_p.h" + + #if defined (Q_OF_ELF) && defined(Q_CC_GNU) +diff --git a/src/corelib/plugin/qmachparser.cpp b/src/corelib/plugin/qmachparser.cpp +index 11670caf..39f5596b 100644 +--- a/src/corelib/plugin/qmachparser.cpp ++++ b/src/corelib/plugin/qmachparser.cpp +@@ -37,6 +37,8 @@ + ** + ****************************************************************************/ + ++#include <limits> ++ + #include "qmachparser_p.h" + + #if defined(Q_OF_MACH_O) +diff --git a/src/corelib/plugin/quuid.cpp b/src/corelib/plugin/quuid.cpp +index 83873edf..5aafb4e5 100644 +--- a/src/corelib/plugin/quuid.cpp ++++ b/src/corelib/plugin/quuid.cpp +@@ -38,6 +38,7 @@ + ** + ****************************************************************************/ + ++#include <limits> + #include "quuid.h" + + #include "qcryptographichash.h" +diff --git a/src/corelib/serialization/qdatastream.cpp b/src/corelib/serialization/qdatastream.cpp +index 5082a8cb..7eecfcca 100644 +--- a/src/corelib/serialization/qdatastream.cpp ++++ b/src/corelib/serialization/qdatastream.cpp +@@ -40,6 +40,8 @@ + #include "qdatastream.h" + #include "qdatastream_p.h" + ++#include <limits> ++ + #if !defined(QT_NO_DATASTREAM) || defined(QT_BOOTSTRAPPED) + #include "qbuffer.h" + #include "qfloat16.h" +diff --git a/src/corelib/text/qbytearray.cpp b/src/corelib/text/qbytearray.cpp +index 9a72df58..6651ee98 100644 +--- a/src/corelib/text/qbytearray.cpp ++++ b/src/corelib/text/qbytearray.cpp +@@ -39,6 +39,7 @@ + ** + ****************************************************************************/ + ++#include <limits> + #include "qbytearray.h" + #include "qbytearraymatcher.h" + #include "private/qtools_p.h" +diff --git a/src/corelib/text/qbytearraymatcher.cpp b/src/corelib/text/qbytearraymatcher.cpp +index 72e09226..80511cb5 100644 +--- a/src/corelib/text/qbytearraymatcher.cpp ++++ b/src/corelib/text/qbytearraymatcher.cpp +@@ -37,6 +37,7 @@ + ** + ****************************************************************************/ + ++#include <limits> + #include "qbytearraymatcher.h" + + #include <limits.h> +diff --git a/src/corelib/tools/qbitarray.cpp b/src/corelib/tools/qbitarray.cpp +index ab3054d5..22efb3a0 100644 +--- a/src/corelib/tools/qbitarray.cpp ++++ b/src/corelib/tools/qbitarray.cpp +@@ -38,6 +38,7 @@ + ** + ****************************************************************************/ + ++#include <limits> + #include "qbitarray.h" + #include <qalgorithms.h> + #include <qdatastream.h> +diff --git a/src/corelib/tools/qcryptographichash.cpp b/src/corelib/tools/qcryptographichash.cpp +index fa8d21e0..cd85956d 100644 +--- a/src/corelib/tools/qcryptographichash.cpp ++++ b/src/corelib/tools/qcryptographichash.cpp +@@ -38,6 +38,7 @@ + ** + ****************************************************************************/ + ++#include <limits> + #include <qcryptographichash.h> + #include <qiodevice.h> + +diff --git a/src/gui/text/qfontengine_qpf2.cpp b/src/gui/text/qfontengine_qpf2.cpp +index e00f9d05..917ab5f9 100644 +--- a/src/gui/text/qfontengine_qpf2.cpp ++++ b/src/gui/text/qfontengine_qpf2.cpp +@@ -37,6 +37,7 @@ + ** + ****************************************************************************/ + ++#include <limits> + #include "qfontengine_qpf2_p.h" + + #include <QtCore/QFile> diff --git a/source/l/qt5/patches/qt5-qtdeclarative-gcc11.patch b/source/l/qt5/patches/qt5-qtdeclarative-gcc11.patch new file mode 100644 index 00000000..91ea88b9 --- /dev/null +++ b/source/l/qt5/patches/qt5-qtdeclarative-gcc11.patch @@ -0,0 +1,21 @@ +--- ./qtdeclarative/src/qml/jsruntime/qv4regexp_p.h.orig 2020-10-27 03:02:12.000000000 -0500 ++++ ./qtdeclarative/src/qml/jsruntime/qv4regexp_p.h 2021-08-05 13:38:38.366445122 -0500 +@@ -57,7 +57,7 @@ + #include <wtf/FastAllocBase.h> + #include <wtf/BumpPointerAllocator.h> + +-#include <limits.h> ++#include <limits> + + #include <yarr/Yarr.h> + #include <yarr/YarrInterpreter.h> +--- ./qtdeclarative/src/qmldebug/qqmlprofilerevent_p.h.orig 2020-10-27 03:02:12.000000000 -0500 ++++ ./qtdeclarative/src/qmldebug/qqmlprofilerevent_p.h 2021-08-05 13:39:39.671441731 -0500 +@@ -48,6 +48,7 @@ + #include <QtCore/qmetatype.h> + + #include <initializer_list> ++#include <limits> + #include <type_traits> + + // diff --git a/source/l/qt5/patches/qt5-qtwebengine-gcc11.patch b/source/l/qt5/patches/qt5-qtwebengine-gcc11.patch new file mode 100644 index 00000000..3b2606e6 --- /dev/null +++ b/source/l/qt5/patches/qt5-qtwebengine-gcc11.patch @@ -0,0 +1,20 @@ +-- a/src/3rdparty/chromium/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.cc
++++ b/src/3rdparty/chromium/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.cc
+@@ -40,6 +40,7 @@
+ #include "absl/base/internal/hide_ptr.h"
+ #include "absl/base/internal/raw_logging.h"
+ #include "absl/base/internal/spinlock.h"
++#include <limits>
+
+ // Do not use STL. This module does not use standard memory allocation.
+
+--- a/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/containers/string_pool.h
++++ b/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/containers/string_pool.h
+@@ -19,6 +19,7 @@
+
+ #include <stddef.h>
+ #include <stdint.h>
++#include <limits>
+
+ #include <unordered_map>
+ #include <vector>
diff --git a/source/l/qt5/patches/qt5-qtwebsockets-gcc11.patch b/source/l/qt5/patches/qt5-qtwebsockets-gcc11.patch new file mode 100644 index 00000000..5b33d7b3 --- /dev/null +++ b/source/l/qt5/patches/qt5-qtwebsockets-gcc11.patch @@ -0,0 +1,12 @@ +diff --git a/src/websockets/qwebsocketprotocol.cpp b/src/websockets/qwebsocketprotocol.cpp +index df87a93..9556d18 100644 +--- a/src/websockets/qwebsocketprotocol.cpp ++++ b/src/websockets/qwebsocketprotocol.cpp +@@ -38,6 +38,7 @@ + ****************************************************************************/ + + #include "qwebsocketprotocol_p.h" ++#include <limits> + #include <QtCore/QString> + #include <QtCore/QSet> + #include <QtCore/QtEndian> diff --git a/source/l/qt5/patches/qtconcurrentthreadengine.h-gcc11.patch b/source/l/qt5/patches/qtconcurrentthreadengine.h-gcc11.patch new file mode 100644 index 00000000..534b594d --- /dev/null +++ b/source/l/qt5/patches/qtconcurrentthreadengine.h-gcc11.patch @@ -0,0 +1,14 @@ +--- ./qtbase/src/concurrent/qtconcurrentthreadengine.h.orig 2020-10-27 03:02:11.000000000 -0500 ++++ ./qtbase/src/concurrent/qtconcurrentthreadengine.h 2021-08-05 14:20:37.774305766 -0500 +@@ -247,8 +247,9 @@ + class ThreadEngineStarter<void> : public ThreadEngineStarterBase<void> + { + public: +- ThreadEngineStarter<void>(ThreadEngine<void> *_threadEngine) +- :ThreadEngineStarterBase<void>(_threadEngine) {} ++ ThreadEngineStarter(ThreadEngine<void> *_threadEngine) ++ : ThreadEngineStarterBase<void>(_threadEngine) {} ++ + + void startBlocking() + { diff --git a/source/l/qt5/qt5.SlackBuild b/source/l/qt5/qt5.SlackBuild index a406bd9f..d6de2438 100755 --- a/source/l/qt5/qt5.SlackBuild +++ b/source/l/qt5/qt5.SlackBuild @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 Patrick J. Volkerding, Sebeka, MN, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -31,7 +31,7 @@ cd $(dirname $0) ; CWD=$(pwd) PKGNAM=qt5 VERSION=$(ls qt-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev) -BUILD=${BUILD:-10} +BUILD=${BUILD:-11} PKGSRC=$(echo $VERSION | cut -d - -f 1) PKGVER=$(echo $VERSION | tr - _) @@ -124,6 +124,20 @@ fi # Fix path to mysql header: zcat $CWD/patches/qt5.mysql.h.diff.gz | patch -p1 --verbose || exit 1 +# Fix build with gcc11: +cd qtbase + zcat $CWD/patches/qt5-qtbase-gcc11.patch.gz | patch -p1 --verbose || exit 1 + zcat $CWD/patches/0006-Fix-build-with-GCC-11-include-limits.patch.gz | patch -p1 --verbose || exit 1 +cd - 1>/dev/null +zcat $CWD/patches/qt5-qtdeclarative-gcc11.patch.gz | patch -p1 --verbose || exit 1 +cd qtwebsockets + zcat $CWD/patches/qt5-qtwebsockets-gcc11.patch.gz | patch -p1 --verbose || exit 1 +cd - 1>/dev/null +zcat $CWD/patches/qtconcurrentthreadengine.h-gcc11.patch.gz | patch -p1 --verbose || exit 1 +cd qtwebengine + zcat $CWD/patches/qt5-qtwebengine-gcc11.patch.gz | patch -p1 --verbose || exit 1 +cd - 1>/dev/null + # CMake generates wrong -isystem /usr/include compilations flags with Qt5::Gui # and for it breaks KWin compilation with: # /usr/include/c++/9.1.0/cstdlib:75:15: fatal error: stdlib.h: No such file or directory @@ -217,7 +231,9 @@ export QT_PLUGIN_PATH="${QTDIR}/qtbase/plugins" # Sometimes a failure happens when parallelizing make. Try again if make fails, # but make a failure the second time around (single threaded) a fatal error: -make $NUMJOBS || make || exit 1 +#### DEBUG +make $NUMJOBS || exit 1 +#make $NUMJOBS || make || exit 1 make install INSTALL_ROOT=$PKG || exit 1 # Strip binaries: diff --git a/source/l/tidy-html5/tidy-html5.SlackBuild b/source/l/tidy-html5/tidy-html5.SlackBuild index 5b42defa..70402eaa 100755 --- a/source/l/tidy-html5/tidy-html5.SlackBuild +++ b/source/l/tidy-html5/tidy-html5.SlackBuild @@ -1,6 +1,6 @@ #!/bin/bash -# Copyright 2020 Patrick J. Volkerding, Sebeka, Minnesota, USA +# Copyright 2020, 2021 Patrick J. Volkerding, Sebeka, Minnesota, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd) PKGNAM=tidy-html5 VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} -BUILD=${BUILD:-3} +BUILD=${BUILD:-1} # Automatically determine the architecture we're building on: if [ -z "$ARCH" ]; then @@ -102,7 +102,7 @@ cd cmake-build cd .. # Don't package static library: -rm -f $PKG/usr/lib${LIBDIRSUFFIX}/libtidys.a +rm -f $PKG/usr/lib${LIBDIRSUFFIX}/libtidy.a # Strip binaries: find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null diff --git a/source/l/v4l-utils/v4l-utils.SlackBuild b/source/l/v4l-utils/v4l-utils.SlackBuild index e2ac7aa3..f83a0899 100755 --- a/source/l/v4l-utils/v4l-utils.SlackBuild +++ b/source/l/v4l-utils/v4l-utils.SlackBuild @@ -79,9 +79,12 @@ find . \ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ -exec chmod 644 {} \+ +# Using -std=gnu++14 to fix compile with gcc11 - revisit later to see if it's +# still needed. + # Configure: CFLAGS="$SLKCFLAGS" \ -CXXFLAGS="$SLKCFLAGS" \ +CXXFLAGS="$SLKCFLAGS -std=gnu++14" \ ./configure \ --prefix=/usr \ --sysconfdir=/etc \ |