diff --git a/avogadrolibs/vtk9.patch b/avogadrolibs/vtk9.patch new file mode 100644 index 0000000000..1e6ef37dee --- /dev/null +++ b/avogadrolibs/vtk9.patch @@ -0,0 +1,242 @@ +diff --git a/avogadro/qtplugins/coloropacitymap/coloropacitymap.cpp b/avogadro/qtplugins/coloropacitymap/coloropacitymap.cpp +index 2ec4ea3a..ff412948 100644 +--- a/avogadro/qtplugins/coloropacitymap/coloropacitymap.cpp ++++ b/avogadro/qtplugins/coloropacitymap/coloropacitymap.cpp +@@ -180,7 +180,7 @@ void ColorOpacityMap::render() + auto widget = ActiveObjects::instance().activeWidget(); + auto vtkWidget = qobject_cast(widget); + if (vtkWidget) { +- vtkWidget->GetRenderWindow()->Render(); ++ vtkWidget->renderWindow()->Render(); + vtkWidget->update(); + } + } +diff --git a/avogadro/qtplugins/coloropacitymap/histogramwidget.cpp b/avogadro/qtplugins/coloropacitymap/histogramwidget.cpp +index de4c36ad..dc647145 100644 +--- a/avogadro/qtplugins/coloropacitymap/histogramwidget.cpp ++++ b/avogadro/qtplugins/coloropacitymap/histogramwidget.cpp +@@ -42,8 +42,8 @@ HistogramWidget::HistogramWidget(QWidget* parent) + : QWidget(parent), m_qvtk(new QVTKGLWidget(this)) + { + // Set up our little chart. +- m_histogramView->SetRenderWindow(m_qvtk->GetRenderWindow()); +- m_histogramView->SetInteractor(m_qvtk->GetInteractor()); ++ m_histogramView->SetRenderWindow(m_qvtk->renderWindow()); ++ m_histogramView->SetInteractor(m_qvtk->interactor()); + m_histogramView->GetScene()->AddItem(m_histogramColorOpacityEditor); + + // Connect events from the histogram color/opacity editor. +diff --git a/avogadro/qtplugins/coloropacitymap/qvtkwidget.cpp b/avogadro/qtplugins/coloropacitymap/qvtkwidget.cpp +index 95afd55c..a8936112 100644 +--- a/avogadro/qtplugins/coloropacitymap/qvtkwidget.cpp ++++ b/avogadro/qtplugins/coloropacitymap/qvtkwidget.cpp +@@ -12,12 +12,12 @@ + namespace Avogadro { + + QVTKGLWidget::QVTKGLWidget(QWidget* parent, Qt::WindowFlags f) +- : QVTKOpenGLWidget(parent, f) ++ : QVTKOpenGLStereoWidget(parent, f) + { + // Set some defaults for our render window. + vtkNew window; +- SetRenderWindow(window); +- auto glFormat = QVTKOpenGLWidget::defaultFormat(); ++ setRenderWindow(window); ++ auto glFormat = QVTKOpenGLStereoWidget::defaultFormat(); + glFormat.setSamples(8); + setFormat(glFormat); + } +diff --git a/avogadro/qtplugins/coloropacitymap/qvtkwidget.h b/avogadro/qtplugins/coloropacitymap/qvtkwidget.h +index a3a6ca42..32d43d4a 100644 +--- a/avogadro/qtplugins/coloropacitymap/qvtkwidget.h ++++ b/avogadro/qtplugins/coloropacitymap/qvtkwidget.h +@@ -4,11 +4,11 @@ + #ifndef AVOGADRO_QTPLUGINS_QVTKGLWidget_H + #define AVOGADRO_QTPLUGINS_QVTKGLWidget_H + +-#include ++#include + + namespace Avogadro { + +-class QVTKGLWidget : public QVTKOpenGLWidget ++class QVTKGLWidget : public QVTKOpenGLStereoWidget + { + Q_OBJECT + +@@ -17,7 +17,7 @@ class QVTKGLWidget : public QVTKOpenGLWidget + Qt::WindowFlags f = Qt::WindowFlags()); + ~QVTKGLWidget() override; + +- void setEnableHiDPI(bool enable) override; ++ void setEnableHiDPI(bool enable); + }; + } // namespace Avogadro + +diff --git a/avogadro/vtk/CMakeLists.txt b/avogadro/vtk/CMakeLists.txt +index 3c567d489..afcf59375 100644 +--- a/avogadro/vtk/CMakeLists.txt ++++ b/avogadro/vtk/CMakeLists.txt +@@ -11,13 +11,21 @@ endif() + + find_package(Qt5 COMPONENTS Widgets REQUIRED) + ++find_package(VTK QUIET COMPONENTS CommonCore) ++if(VTK_MAJOR_VERSION GREATER 8) ++ set(VCP "") # shorthand for VTK_COMPONENT_PREFIX ++ set(VMP "VTK::") # shorthand for VTK_MODULE_PREFIX ++else() ++ set(VCP "vtk") ++ set(VMP "vtk") ++ include_directories(SYSTEM ${VTK_INCLUDE_DIRS}) ++endif() ++ + find_package(VTK +- COMPONENTS +- vtkRenderingOpenGL2 vtkGUISupportQt vtkDomainsChemistry +- vtkRenderingVolumeOpenGL2 vtkViewsCore vtkRenderingFreeType +- vtkChartsCore vtkViewsContext2D vtkRenderingContextOpenGL2 +- REQUIRED) +-include_directories(SYSTEM ${VTK_INCLUDE_DIRS}) ++ REQUIRED COMPONENTS ++ ${VCP}RenderingOpenGL2 ${VCP}GUISupportQt ${VCP}DomainsChemistry ++ ${VCP}RenderingVolumeOpenGL2 ${VCP}ViewsCore ${VCP}RenderingFreeType ++ ${VCP}ChartsCore ${VCP}ViewsContext2D ${VCP}RenderingContextOpenGL2) + set_property(DIRECTORY APPEND PROPERTY COMPILE_DEFINITIONS ${VTK_DEFINITIONS}) + + set(HEADERS +@@ -35,6 +43,6 @@ set(SOURCES + avogadro_add_library(AvogadroVtk ${HEADERS} ${SOURCES}) + set_target_properties(AvogadroVtk PROPERTIES AUTOMOC TRUE) + target_link_libraries(AvogadroVtk AvogadroRendering AvogadroQtGui +- vtkRenderingOpenGL2 vtkGUISupportQt vtkRenderingVolumeOpenGL2 +- vtkRenderingFreeType vtkInteractionStyle vtkChartsCore vtkViewsContext2D +- vtkRenderingContextOpenGL2 vtkDomainsChemistryOpenGL2 Qt5::Widgets) ++ ${VMP}RenderingOpenGL2 ${VMP}GUISupportQt ${VMP}RenderingVolumeOpenGL2 ++ ${VMP}RenderingFreeType ${VMP}InteractionStyle ${VMP}ChartsCore ${VMP}ViewsContext2D ++ ${VMP}RenderingContextOpenGL2 ${VMP}DomainsChemistryOpenGL2 Qt5::Widgets) +diff --git a/avogadro/vtk/vtkglwidget.cpp b/avogadro/vtk/vtkglwidget.cpp +index 7ce08991..0192a2cf 100644 +--- a/avogadro/vtk/vtkglwidget.cpp ++++ b/avogadro/vtk/vtkglwidget.cpp +@@ -123,7 +123,7 @@ void vtkGLWidget::cubeVolume(Core::Cube* cube) + } + + vtkGLWidget::vtkGLWidget(QWidget* p, Qt::WindowFlags f) +- : QVTKOpenGLWidget(p, f), m_activeTool(nullptr), m_defaultTool(nullptr) ++ : QVTKOpenGLStereoWidget(p, f), m_activeTool(nullptr), m_defaultTool(nullptr) + { + setFocusPolicy(Qt::ClickFocus); + connect(&m_scenePlugins, +@@ -131,13 +131,13 @@ vtkGLWidget::vtkGLWidget(QWidget* p, Qt::WindowFlags f) + SLOT(updateScene())); + + // Set up our renderer, window, scene, etc. +- vtkNew renderWindow; +- SetRenderWindow(renderWindow); +- GetRenderWindow()->AddRenderer(m_vtkRenderer); +- setFormat(QVTKOpenGLWidget::defaultFormat()); +- vtkNew interactor; +- GetInteractor()->SetInteractorStyle(interactor); +- GetInteractor()->Initialize(); ++ vtkNew renderWindow_; ++ setRenderWindow(renderWindow_); ++ renderWindow()->AddRenderer(m_vtkRenderer); ++ setFormat(QVTKOpenGLStereoWidget::defaultFormat()); ++ vtkNew interactor_; ++ interactor()->SetInteractorStyle(interactor_); ++ interactor()->Initialize(); + m_vtkRenderer->SetBackground(1.0, 1.0, 1.0); + + // m_actor->setScene(&this->renderer().scene()); +@@ -175,7 +175,7 @@ void vtkGLWidget::setMolecule(QtGui::Molecule* mol) + updateCube(); + // Reset the camera, re-render. + m_vtkRenderer->ResetCamera(); +- GetRenderWindow()->Render(); ++ renderWindow()->Render(); + } + + void vtkGLWidget::updateCube() +@@ -205,7 +205,7 @@ void vtkGLWidget::moleculeChanged(unsigned int c) + auto changes = static_cast(c); + if (changes & Molecule::Added || changes & Molecule::Removed) { + updateCube(); +- GetRenderWindow()->Render(); ++ renderWindow()->Render(); + } + } + +diff --git a/avogadro/vtk/vtkglwidget.h b/avogadro/vtk/vtkglwidget.h +index 3c3e6046f..93e2e00e8 100644 +--- a/avogadro/vtk/vtkglwidget.h ++++ b/avogadro/vtk/vtkglwidget.h +@@ -19,7 +19,7 @@ + + #include "avogadrovtkexport.h" + +-#include ++#include + #include + #include + +@@ -50,7 +50,7 @@ class ToolPlugin; + + namespace VTK { + +-class AVOGADROVTK_EXPORT vtkGLWidget : public QVTKOpenGLWidget ++class AVOGADROVTK_EXPORT vtkGLWidget : public QVTKOpenGLStereoWidget + { + Q_OBJECT + +diff --git a/avogadro/vtk/vtkplot.cpp b/avogadro/vtk/vtkplot.cpp +index c76a5bf6..a0ec8f75 100644 +--- a/avogadro/vtk/vtkplot.cpp ++++ b/avogadro/vtk/vtkplot.cpp +@@ -34,7 +34,7 @@ + #include + + #include +-#include ++#include + + #include "vtkplot.h" + +@@ -45,12 +45,12 @@ using std::vector; + namespace Avogadro { + namespace VTK { + +-VtkPlot::VtkPlot() : m_widget(new QVTKOpenGLWidget) ++VtkPlot::VtkPlot() : m_widget(new QVTKOpenGLStereoWidget) + { +- m_widget->SetRenderWindow(m_renderWindow); ++ m_widget->setRenderWindow(m_renderWindow); + + // Set up the view +- m_widget->setFormat(QVTKOpenGLWidget::defaultFormat()); ++ m_widget->setFormat(QVTKOpenGLStereoWidget::defaultFormat()); + m_view->SetRenderWindow(m_renderWindow); + m_view->GetRenderer()->SetBackground(1.0, 1.0, 1.0); + m_view->GetRenderWindow()->SetSize(600, 600); +diff --git a/avogadro/vtk/vtkplot.h b/avogadro/vtk/vtkplot.h +index ef2150ac4..a39508376 100644 +--- a/avogadro/vtk/vtkplot.h ++++ b/avogadro/vtk/vtkplot.h +@@ -26,7 +26,7 @@ + #include + #include + +-class QVTKOpenGLWidget; ++class QVTKOpenGLStereoWidget; + class vtkAxis; + class vtkChartXY; + class vtkContextView; +@@ -99,7 +99,7 @@ private: + // Get a pointer to a particular axis. Returns nullptr if invalid. + vtkAxis* getAxis(Axis axis); + +- std::unique_ptr m_widget; ++ std::unique_ptr m_widget; + vtkNew m_table; + vtkNew m_renderWindow; + vtkNew m_view; diff --git a/genxrdpattern/pointer-nullcheck.patch b/genxrdpattern/pointer-nullcheck.patch new file mode 100644 index 0000000000..3e0954490c --- /dev/null +++ b/genxrdpattern/pointer-nullcheck.patch @@ -0,0 +1,11 @@ +--- newmat6.cpp ++++ newmat6.cpp +@@ -424,7 +424,7 @@ + { + if (&gm == this) { REPORT tag_val = -1; return; } + REPORT +- if (indx > 0) { delete [] indx; indx = 0; } ++ if (indx != 0) { delete [] indx; indx = 0; } + ((CroutMatrix&)gm).get_aux(*this); + Eq(gm); + } diff --git a/highway/highway-0.15.0-missing-cleanup-includes.patch b/highway/highway-0.15.0-missing-cleanup-includes.patch new file mode 100644 index 0000000000..b398d2c4d3 --- /dev/null +++ b/highway/highway-0.15.0-missing-cleanup-includes.patch @@ -0,0 +1,55 @@ +From 8ccab40c2f931aca6004d175eec342cc60f6baec Mon Sep 17 00:00:00 2001 +From: Jan Wassenberg +Date: Mon, 29 Nov 2021 08:58:39 -0800 +Subject: [PATCH] add missing+cleanup includes. Fixes #460, thanks Hello71 + +PiperOrigin-RevId: 412901594 +--- + hwy/targets.cc | 13 +++++++++---- + 1 file changed, 9 insertions(+), 4 deletions(-) + +diff --git a/hwy/targets.cc b/hwy/targets.cc +index daab3a67..b295e7ee 100644 +--- a/hwy/targets.cc ++++ b/hwy/targets.cc +@@ -15,23 +15,28 @@ + #include "hwy/targets.h" + + #include ++#include + #include + #include + + #include +-#include +-#include ++ ++#include "hwy/base.h" + + #if defined(ADDRESS_SANITIZER) || defined(MEMORY_SANITIZER) || \ + defined(THREAD_SANITIZER) + #include "sanitizer/common_interface_defs.h" // __sanitizer_print_stack_trace + #endif // defined(*_SANITIZER) + ++#if HWY_COMPILER_MSVC || HWY_ARCH_RVV ++#include // abort / exit ++#endif ++ + #if HWY_ARCH_X86 + #include + #if HWY_COMPILER_MSVC + #include +-#else // HWY_COMPILER_MSVC ++#else // !HWY_COMPILER_MSVC + #include + #endif // HWY_COMPILER_MSVC + #endif // HWY_ARCH_X86 +@@ -93,7 +98,7 @@ std::atomic supported_{0}; // Not yet initialized + uint32_t supported_targets_for_test_ = 0; + + // Mask of targets disabled at runtime with DisableTargets. +-uint32_t supported_mask_{std::numeric_limits::max()}; ++uint32_t supported_mask_{LimitsMax()}; + + #if HWY_ARCH_X86 + // Arbritrary bit indices indicating which instruction set extensions are diff --git a/kde/k3b/ffmpeg5.patch b/kde/k3b/ffmpeg5.patch new file mode 100644 index 0000000000..c2be65a072 --- /dev/null +++ b/kde/k3b/ffmpeg5.patch @@ -0,0 +1,72 @@ +diff -up k3b-21.12.1/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp.omv~ k3b-21.12.1/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp +--- k3b-21.12.1/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp.omv~ 2022-01-17 19:44:11.314744839 +0100 ++++ k3b-21.12.1/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp 2022-01-17 19:55:07.045724184 +0100 +@@ -38,7 +38,20 @@ extern "C" { + #include + + ++#if LIBAVCODEC_VERSION_MAJOR < 59 + #define FFMPEG_CODEC(s) (s->codec) ++#else ++static QMap k3b_codec_contexts; ++static inline AVCodecContext *FFMPEG_CODEC(AVStream *s) { ++ if(!k3b_codec_contexts.contains(s)) { ++ const AVCodec *codec = avcodec_find_decoder(s->codecpar->codec_id); ++ AVCodecContext *ctx = avcodec_alloc_context3(codec); ++ avcodec_parameters_to_context(ctx, s->codecpar); ++ k3b_codec_contexts.insert(s, ctx); ++ } ++ return k3b_codec_contexts.value(s); ++} ++#endif + + #ifndef HAVE_FFMPEG_AVFORMAT_OPEN_INPUT + // this works because the parameters/options are not used +@@ -70,7 +83,7 @@ class K3bFFMpegFile::Private + { + public: + ::AVFormatContext* formatContext; +- ::AVCodec* codec; ++ const ::AVCodec* codec; + ::AVStream *audio_stream; + + K3b::Msf length; +@@ -320,11 +333,28 @@ int K3bFFMpegFile::fillOutputBuffer() + } + + int gotFrame = 0; ++#if LIBAVCODEC_VERSION_MAJOR < 59 + int len = ::avcodec_decode_audio4( + FFMPEG_CODEC(d->audio_stream), + d->frame, + &gotFrame, + &d->packet ); ++#else ++ int ret = ::avcodec_receive_frame( ++ FFMPEG_CODEC(d->audio_stream), ++ d->frame); ++ ++ gotFrame = (ret == 0); ++ ++ ret = avcodec_send_packet( ++ FFMPEG_CODEC(d->audio_stream), ++ &d->packet ); ++ if (ret < 0) { ++ qDebug() << "(K3bFFMpegFile) decoding failed for " << m_filename; ++ return -1; ++ } ++ int len = d->packet.size; ++#endif + + if( d->packetSize <= 0 || len < 0 ) + ::av_packet_unref( &d->packet ); +@@ -393,7 +423,9 @@ bool K3bFFMpegFile::seek( const K3b::Msf + + K3bFFMpegWrapper::K3bFFMpegWrapper() + { ++#if LIBAVCODEC_VERSION_MAJOR < 59 + ::av_register_all(); ++#endif + } + + diff --git a/libpcap/PKGBUILD b/libpcap/PKGBUILD index c816638f81..ee32b312dd 100644 --- a/libpcap/PKGBUILD +++ b/libpcap/PKGBUILD @@ -5,14 +5,15 @@ pkgname=libpcap pkgver=1.10.1 -pkgrel=1 +pkgrel=2 pkgdesc='A system-independent interface for user-level packet capture' arch=(x86_64 powerpc64le powerpc riscv64) url='https://www.tcpdump.org/' -license=('BSD') -depends=('glibc' 'libnl' 'sh') -#makedepends=('bluez-libs' 'dbus') -provides=('libpcap.so') +license=(BSD) +depends=(glibc libnl sh) +makedepends=(bluez-libs dbus) +provides=(libpcap.so) +options=(debug) source=("https://www.tcpdump.org/release/${pkgname}-${pkgver}.tar.gz"{,.sig}) sha512sums=('56c314f19c2b857742bf8abcb1e78066986aaa95cec339b75a3c8b70a9fa2b5167da98708352f9ec97a1cea2700cfb4e040bda108d58ac46cec9b7deab88d171' 'SKIP') @@ -21,25 +22,25 @@ b2sums=('0ec028e5d026a97b92ba6f23f88daf36b827eee08a752a0162fbabd1b5a2a70141ec403 validpgpkeys=('1F166A5742ABB9E0249A8D30E089DEF1D9C15D0D') # The Tcpdump Group prepare() { - cd "$pkgname-$pkgver" + cd $pkgname-$pkgver autoreconf -fiv } build() { - cd "$pkgname-$pkgver" - ./configure --prefix='/usr' \ + cd $pkgname-$pkgver + ./configure --prefix=/usr \ --enable-ipv6 \ - --disable-bluetooth \ + --enable-bluetooth \ --enable-usb \ --with-libnl make } package() { - #depends+=('libdbus-1.so') - cd "$pkgname-$pkgver" + depends+=(libdbus-1.so) + + cd $pkgname-$pkgver make DESTDIR="$pkgdir" install install -vDm 644 LICENSE -t "$pkgdir/usr/share/licenses/$pkgname/" - install -vDm 644 {CHANGES,{CONTRIBUTING,README}.md} \ - -t "${pkgdir}/usr/share/doc/${pkgname}/" + install -vDm 644 {CHANGES,{CONTRIBUTING,README}.md} -t "$pkgdir/usr/share/doc/$pkgname/" } diff --git a/modemmanager/meson-0.61.patch b/modemmanager/meson-0.61.patch new file mode 100644 index 0000000000..14a99b6b5b --- /dev/null +++ b/modemmanager/meson-0.61.patch @@ -0,0 +1,10 @@ +--- ModemManager/data/meson.build.orig 2022-02-10 09:59:08.108192284 +0100 ++++ ModemManager/data/meson.build 2022-02-10 09:59:18.063180648 +0100 +@@ -38,7 +38,6 @@ + + # build file with translations, which we will include in dist + i18n.merge_file( +- policy, + input: configure_file( + input: policy + '.in.in', + output: '@BASENAME@', diff --git a/modemmanager/strict-filter.diff b/modemmanager/strict-filter.diff deleted file mode 100644 index fb144f6c48..0000000000 --- a/modemmanager/strict-filter.diff +++ /dev/null @@ -1,13 +0,0 @@ -diff --git i/src/mm-context.c w/src/mm-context.c -index 88d71384..fd17f830 100644 ---- i/src/mm-context.c -+++ w/src/mm-context.c -@@ -38,7 +38,7 @@ - static gboolean help_flag; - static gboolean version_flag; - static gboolean debug; --static MMFilterRule filter_policy = MM_FILTER_POLICY_DEFAULT; -+static MMFilterRule filter_policy = MM_FILTER_POLICY_STRICT; - static gboolean no_auto_scan = NO_AUTO_SCAN_DEFAULT; - static const gchar *initial_kernel_events; - diff --git a/msgpak-c/PKGBUILD b/msgpak-c/PKGBUILD deleted file mode 100644 index 874e457d50..0000000000 --- a/msgpak-c/PKGBUILD +++ /dev/null @@ -1,41 +0,0 @@ -# POWER Maintainer: Alexander Baldeck -# Maintainer: Baptiste Jonglez -# Contributor: Leen Jewel -# Contributor: Auguste Pop - -pkgname=msgpack-c -pkgver=3.2.1 -pkgrel=1 -pkgdesc='An efficient object serialization library' -arch=(x86_64 powerpc64le) -url='https://msgpack.org/' -license=("Apache") -depends=("glibc") -checkdepends=("gtest") -makedepends=("cmake") -source=("https://github.com/msgpack/msgpack-c/releases/download/cpp-${pkgver}/msgpack-${pkgver}.tar.gz") -sha256sums=('433cbcd741e1813db9ae4b2e192b83ac7b1d2dd7968a3e11470eacc6f4ab58d2') - -build() { - cd "msgpack-${pkgver}" - cmake -DCMAKE_INSTALL_PREFIX=/usr \ - -DCMAKE_BUILD_TYPE=None \ - -DBUILD_SHARED_LIBS=ON \ - -DMSGPACK_ENABLE_STATIC=OFF \ - -DMSGPACK_CXX11=ON \ - -DMSGPACK_BUILD_EXAMPLES=OFF \ - -DMSGPACK_ENABLE_STATIC=OFF \ - -DBUILD_SHARED_LIBS=ON \ - . - make -} - -check() { - cd "msgpack-${pkgver}" - make test -} - -package() { - cd "msgpack-${pkgver}" - make DESTDIR="$pkgdir" install -} diff --git a/openshadinglanguage/llvm13.patch b/openshadinglanguage/llvm13.patch new file mode 100644 index 0000000000..34adf4c955 --- /dev/null +++ b/openshadinglanguage/llvm13.patch @@ -0,0 +1,48 @@ +From 8682211d0bfe5c4be63a4a003d06037ff9721e66 Mon Sep 17 00:00:00 2001 +From: Luya Tshimbalanga +Date: Tue, 28 Sep 2021 10:08:01 -0700 +Subject: [PATCH] Fix compatibility with LLVM 12 and up (#1412) + +Upstream LLVM stopped using the compatibility +spellings of OF_{None,Text,Append} from version 12 and up. + +https://reviews.llvm.org/D101650 + +Signed-off-by: Luya Tshimbalanga +--- + src/liboslexec/llvm_util.cpp | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +diff --git a/src/liboslexec/llvm_util.cpp b/src/liboslexec/llvm_util.cpp +index 4bd0dca35..4d0e1752d 100644 +--- a/src/liboslexec/llvm_util.cpp ++++ b/src/liboslexec/llvm_util.cpp +@@ -1407,7 +1407,9 @@ LLVM_Util::make_jit_execengine (std::string *err, + + options.NoZerosInBSS = false; + options.GuaranteedTailCallOpt = false; ++#if OSL_LLVM_VERSION < 120 + options.StackAlignmentOverride = 0; ++#endif + options.FunctionSections = true; + options.UseInitArray = false; + options.FloatABIType = llvm::FloatABI::Default; +@@ -5385,7 +5387,7 @@ void + LLVM_Util::write_bitcode_file (const char *filename, std::string *err) + { + std::error_code local_error; +- llvm::raw_fd_ostream out (filename, local_error, llvm::sys::fs::F_None); ++ llvm::raw_fd_ostream out (filename, local_error, llvm::sys::fs::OF_None); + if (! out.has_error()) { + llvm::WriteBitcodeToFile (*module(), out); + if (err && local_error) +@@ -5447,7 +5449,9 @@ LLVM_Util::ptx_compile_group (llvm::Module* lib_module, const std::string& name, + options.AllowFPOpFusion = llvm::FPOpFusion::Fast; + options.NoZerosInBSS = 0; + options.GuaranteedTailCallOpt = 0; ++#if OSL_LLVM_VERSION < 120 + options.StackAlignmentOverride = 0; ++#endif + options.UseInitArray = 0; + + llvm::TargetMachine* target_machine = llvm_target->createTargetMachine( diff --git a/qt5/qt5-quick3d/qt5-quick3d-assimp-5.1.patch b/qt5/qt5-quick3d/qt5-quick3d-assimp-5.1.patch new file mode 100644 index 0000000000..3bbae9cd61 --- /dev/null +++ b/qt5/qt5-quick3d/qt5-quick3d-assimp-5.1.patch @@ -0,0 +1,15 @@ +diff --git a/src/plugins/assetimporters/assimp/assimpimporter.cpp b/src/plugins/assetimporters/assimp/assimpimporter.cpp +index f3660fdd..0f5fc901 100644 +--- a/src/plugins/assetimporters/assimp/assimpimporter.cpp ++++ b/src/plugins/assetimporters/assimp/assimpimporter.cpp +@@ -1082,9 +1082,7 @@ void AssimpImporter::generateMaterial(aiMaterial *material, QTextStream &output, + } + + // SpecularGlossiness Properties +- bool hasSpecularGlossiness; +- result = material->Get(AI_MATKEY_GLTF_PBRSPECULARGLOSSINESS, hasSpecularGlossiness); +- if (result == aiReturn_SUCCESS && hasSpecularGlossiness) { ++ { + + // diffuseFactor (color) // not used (yet), but ends up being diffuseColor + // { diff --git a/qt5/qt5-webkit/ppc-llint.patch b/qt5/qt5-webkit/ppc-llint.patch new file mode 100644 index 0000000000..96440d2e2e --- /dev/null +++ b/qt5/qt5-webkit/ppc-llint.patch @@ -0,0 +1,32 @@ +This fixes JavaScriptCore on big endian systems (mainly ppc). + +Without the patch, attempting to run any JS results in +a crash as the generated code was endian specific. + +--- a/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm ++++ b/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm +@@ -1500,13 +1500,13 @@ _llint_op_put_by_id: + loadp StructureChain::m_vector[t3], t3 + assert(macro (ok) btpnz t3, ok end) + +- loadp Structure::m_prototype[t2], t2 ++ loadp Structure::m_prototype + PayloadOffset[t2], t2 + btpz t2, .opPutByIdTransitionChainDone + .opPutByIdTransitionChainLoop: + loadp [t3], t1 + bpneq t1, JSCell::m_structureID[t2], .opPutByIdSlow + addp 4, t3 +- loadp Structure::m_prototype[t1], t2 ++ loadp Structure::m_prototype + PayloadOffset[t1], t2 + btpnz t2, .opPutByIdTransitionChainLoop + + .opPutByIdTransitionChainDone: +@@ -1984,7 +1984,7 @@ _llint_throw_from_slow_path_trampoline: + # When throwing from the interpreter (i.e. throwing from LLIntSlowPaths), so + # the throw target is not necessarily interpreted code, we come to here. + # This essentially emulates the JIT's throwing protocol. +- loadp Callee[cfr], t1 ++ loadp Callee + PayloadOffset[cfr], t1 + andp MarkedBlockMask, t1 + loadp MarkedBlock::m_weakSet + WeakSet::m_vm[t1], t1 + copyCalleeSavesToVMCalleeSavesBuffer(t1, t2) diff --git a/qt5/qt5-webkit/reduce-exports.patch b/qt5/qt5-webkit/reduce-exports.patch new file mode 100644 index 0000000000..f5c2a5d82d --- /dev/null +++ b/qt5/qt5-webkit/reduce-exports.patch @@ -0,0 +1,27 @@ +Description: reduce the number of exported symbols in libQt5WebKit.so.5 +Author: Dmitry Shachnev +Forwarded: not-needed +Last-Update: 2017-08-27 + +--- a/Source/WTF/wtf/ExportMacros.h ++++ b/Source/WTF/wtf/ExportMacros.h +@@ -56,7 +56,7 @@ + + #elif defined(__GNUC__) && !defined(__CC_ARM) && !defined(__ARMCC__) + +-#define WTF_EXPORT_DECLARATION __attribute__((visibility("default"))) ++#define WTF_EXPORT_DECLARATION + #define WTF_IMPORT_DECLARATION WTF_EXPORT_DECLARATION + #define WTF_HIDDEN_DECLARATION __attribute__((visibility("hidden"))) + +--- a/Source/cmake/OptionsQt.cmake ++++ b/Source/cmake/OptionsQt.cmake +@@ -658,6 +658,7 @@ if (COMPILER_IS_GCC_OR_CLANG AND UNIX) + if (NOT SHARED_CORE) + set(CMAKE_C_FLAGS "-fvisibility=hidden ${CMAKE_C_FLAGS}") + set(CMAKE_CXX_FLAGS "-fvisibility=hidden -fvisibility-inlines-hidden ${CMAKE_CXX_FLAGS}") ++ add_definitions(-DJS_NO_EXPORT) + endif () + endif () + + diff --git a/swig/jdk17.patch b/swig/jdk17.patch new file mode 100644 index 0000000000..0270c209df --- /dev/null +++ b/swig/jdk17.patch @@ -0,0 +1,28 @@ +From 34e663a61af13eec62050d2b105ace418929e289 Mon Sep 17 00:00:00 2001 +From: William S Fulton +Date: Sat, 20 Mar 2021 09:49:30 +0000 +Subject: [PATCH] Test a different C# keyword rename + +Worked around warning in java jdk-15: + warning: 'sealed' may become a restricted type name in a future release + and may be unusable for type declarations or as the element type of an array + +Adding sealed to the list of automatically renamed keywords in Java does +not seem prudent. +--- + Examples/test-suite/keyword_rename.i | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Examples/test-suite/keyword_rename.i b/Examples/test-suite/keyword_rename.i +index 23c01087dc4..645f0266112 100644 +--- a/Examples/test-suite/keyword_rename.i ++++ b/Examples/test-suite/keyword_rename.i +@@ -27,7 +27,7 @@ KW(synchronized, final) + + /* C# Keywords */ + KW(string, out) +-struct sealed {int i;}; ++struct stackalloc {int i;}; + + /* Go Keywords */ + KW(go, defer) diff --git a/swig/python310.patch b/swig/python310.patch new file mode 100644 index 0000000000..a3c8cff26c --- /dev/null +++ b/swig/python310.patch @@ -0,0 +1,23 @@ +From a2850397ba3eec5d4c58304cf8277ca535919760 Mon Sep 17 00:00:00 2001 +From: Julien Schueller +Date: Thu, 5 Aug 2021 14:05:10 +0200 +Subject: [PATCH] [Python] Fix overload_simple_cast test with 3.10 + +Closes #2044 +--- + Examples/test-suite/python/python_overload_simple_cast_runme.py | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/Examples/test-suite/python/python_overload_simple_cast_runme.py b/Examples/test-suite/python/python_overload_simple_cast_runme.py +index fc398ab29b9..7a0174af8a2 100644 +--- a/Examples/test-suite/python/python_overload_simple_cast_runme.py ++++ b/Examples/test-suite/python/python_overload_simple_cast_runme.py +@@ -9,6 +9,8 @@ def __init__(self, x): + def __int__(self): + return self.x + ++ def __index__(self): ++ return self.x + + class Ad: + diff --git a/wpa_supplicant/wpa_supplicant_config b/wpa_supplicant/wpa_supplicant_config new file mode 100644 index 0000000000..203285733e --- /dev/null +++ b/wpa_supplicant/wpa_supplicant_config @@ -0,0 +1,637 @@ +# Example wpa_supplicant build time configuration +# +# This file lists the configuration options that are used when building the +# wpa_supplicant binary. All lines starting with # are ignored. Configuration +# option lines must be commented out complete, if they are not to be included, +# i.e., just setting VARIABLE=n is not disabling that variable. +# +# This file is included in Makefile, so variables like CFLAGS and LIBS can also +# be modified from here. In most cases, these lines should use += in order not +# to override previous values of the variables. + + +# Uncomment following two lines and fix the paths if you have installed OpenSSL +# or GnuTLS in non-default location +#CFLAGS += -I/usr/local/openssl/include +#LIBS += -L/usr/local/openssl/lib + +# Some Red Hat versions seem to include kerberos header files from OpenSSL, but +# the kerberos files are not in the default include path. Following line can be +# used to fix build issues on such systems (krb5.h not found). +#CFLAGS += -I/usr/include/kerberos + +# Driver interface for generic Linux wireless extensions +# Note: WEXT is deprecated in the current Linux kernel version and no new +# functionality is added to it. nl80211-based interface is the new +# replacement for WEXT and its use allows wpa_supplicant to properly control +# the driver to improve existing functionality like roaming and to support new +# functionality. +CONFIG_DRIVER_WEXT=y + +# Driver interface for Linux drivers using the nl80211 kernel interface +CONFIG_DRIVER_NL80211=y + +# QCA vendor extensions to nl80211 +CONFIG_DRIVER_NL80211_QCA=y + +# driver_nl80211.c requires libnl. If you are compiling it yourself +# you may need to point hostapd to your version of libnl. +# +#CFLAGS += -I$ +#LIBS += -L$ + +# Use libnl v2.0 (or 3.0) libraries. +#CONFIG_LIBNL20=y + +# Use libnl 3.2 libraries (if this is selected, CONFIG_LIBNL20 is ignored) +CONFIG_LIBNL32=y + + +# Driver interface for FreeBSD net80211 layer (e.g., Atheros driver) +#CONFIG_DRIVER_BSD=y +#CFLAGS += -I/usr/local/include +#LIBS += -L/usr/local/lib +#LIBS_p += -L/usr/local/lib +#LIBS_c += -L/usr/local/lib + +# Driver interface for Windows NDIS +#CONFIG_DRIVER_NDIS=y +#CFLAGS += -I/usr/include/w32api/ddk +#LIBS += -L/usr/local/lib +# For native build using mingw +#CONFIG_NATIVE_WINDOWS=y +# Additional directories for cross-compilation on Linux host for mingw target +#CFLAGS += -I/opt/mingw/mingw32/include/ddk +#LIBS += -L/opt/mingw/mingw32/lib +#CC=mingw32-gcc +# By default, driver_ndis uses WinPcap for low-level operations. This can be +# replaced with the following option which replaces WinPcap calls with NDISUIO. +# However, this requires that WZC is disabled (net stop wzcsvc) before starting +# wpa_supplicant. +# CONFIG_USE_NDISUIO=y + +# Driver interface for wired Ethernet drivers +CONFIG_DRIVER_WIRED=y + +# Driver interface for MACsec capable Qualcomm Atheros drivers +#CONFIG_DRIVER_MACSEC_QCA=y + +# Driver interface for Linux MACsec drivers +CONFIG_DRIVER_MACSEC_LINUX=y + +# Driver interface for the Broadcom RoboSwitch family +#CONFIG_DRIVER_ROBOSWITCH=y + +# Driver interface for no driver (e.g., WPS ER only) +CONFIG_DRIVER_NONE=y + +# Solaris libraries +#LIBS += -lsocket -ldlpi -lnsl +#LIBS_c += -lsocket + +# Enable IEEE 802.1X Supplicant (automatically included if any EAP method or +# MACsec is included) +CONFIG_IEEE8021X_EAPOL=y + +# EAP-MD5 +CONFIG_EAP_MD5=y + +# EAP-MSCHAPv2 +CONFIG_EAP_MSCHAPV2=y + +# EAP-TLS +CONFIG_EAP_TLS=y + +# EAL-PEAP +CONFIG_EAP_PEAP=y + +# EAP-TTLS +CONFIG_EAP_TTLS=y + +# EAP-FAST +CONFIG_EAP_FAST=y + +# EAP-TEAP +# Note: The current EAP-TEAP implementation is experimental and should not be +# enabled for production use. The IETF RFC 7170 that defines EAP-TEAP has number +# of conflicting statements and missing details and the implementation has +# vendor specific workarounds for those and as such, may not interoperate with +# any other implementation. This should not be used for anything else than +# experimentation and interoperability testing until those issues has been +# resolved. +#CONFIG_EAP_TEAP=y + +# EAP-GTC +CONFIG_EAP_GTC=y + +# EAP-OTP +CONFIG_EAP_OTP=y + +# EAP-SIM (enable CONFIG_PCSC, if EAP-SIM is used) +CONFIG_EAP_SIM=y + +# Enable SIM simulator (Milenage) for EAP-SIM +#CONFIG_SIM_SIMULATOR=y + +# EAP-PSK (experimental; this is _not_ needed for WPA-PSK) +CONFIG_EAP_PSK=y + +# EAP-pwd (secure authentication using only a password) +CONFIG_EAP_PWD=y + +# EAP-PAX +CONFIG_EAP_PAX=y + +# LEAP +CONFIG_EAP_LEAP=y + +# EAP-AKA (enable CONFIG_PCSC, if EAP-AKA is used) +CONFIG_EAP_AKA=y + +# EAP-AKA' (enable CONFIG_PCSC, if EAP-AKA' is used). +# This requires CONFIG_EAP_AKA to be enabled, too. +CONFIG_EAP_AKA_PRIME=y + +# Enable USIM simulator (Milenage) for EAP-AKA +#CONFIG_USIM_SIMULATOR=y + +# EAP-SAKE +CONFIG_EAP_SAKE=y + +# EAP-GPSK +CONFIG_EAP_GPSK=y +# Include support for optional SHA256 cipher suite in EAP-GPSK +CONFIG_EAP_GPSK_SHA256=y + +# EAP-TNC and related Trusted Network Connect support (experimental) +CONFIG_EAP_TNC=y + +# Wi-Fi Protected Setup (WPS) +CONFIG_WPS=y +# Enable WPS external registrar functionality +CONFIG_WPS_ER=y +# Disable credentials for an open network by default when acting as a WPS +# registrar. +CONFIG_WPS_REG_DISABLE_OPEN=y +# Enable WPS support with NFC config method +CONFIG_WPS_NFC=y + +# EAP-IKEv2 +CONFIG_EAP_IKEV2=y + +# EAP-EKE +CONFIG_EAP_EKE=y + +# MACsec +CONFIG_MACSEC=y + +# PKCS#12 (PFX) support (used to read private key and certificate file from +# a file that usually has extension .p12 or .pfx) +CONFIG_PKCS12=y + +# Smartcard support (i.e., private key on a smartcard), e.g., with openssl +# engine. +CONFIG_SMARTCARD=y + +# PC/SC interface for smartcards (USIM, GSM SIM) +# Enable this if EAP-SIM or EAP-AKA is included +#CONFIG_PCSC=y + +# Support HT overrides (disable HT/HT40, mask MCS rates, etc.) +CONFIG_HT_OVERRIDES=y + +# Support VHT overrides (disable VHT, mask MCS rates, etc.) +CONFIG_VHT_OVERRIDES=y + +# Development testing +#CONFIG_EAPOL_TEST=y + +# Select control interface backend for external programs, e.g, wpa_cli: +# unix = UNIX domain sockets (default for Linux/*BSD) +# udp = UDP sockets using localhost (127.0.0.1) +# udp6 = UDP IPv6 sockets using localhost (::1) +# named_pipe = Windows Named Pipe (default for Windows) +# udp-remote = UDP sockets with remote access (only for tests systems/purpose) +# udp6-remote = UDP IPv6 sockets with remote access (only for tests purpose) +# y = use default (backwards compatibility) +# If this option is commented out, control interface is not included in the +# build. +CONFIG_CTRL_IFACE=y + +# Include support for GNU Readline and History Libraries in wpa_cli. +# When building a wpa_cli binary for distribution, please note that these +# libraries are licensed under GPL and as such, BSD license may not apply for +# the resulting binary. +CONFIG_READLINE=y + +# Include internal line edit mode in wpa_cli. This can be used as a replacement +# for GNU Readline to provide limited command line editing and history support. +#CONFIG_WPA_CLI_EDIT=y + +# Remove debugging code that is printing out debug message to stdout. +# This can be used to reduce the size of the wpa_supplicant considerably +# if debugging code is not needed. The size reduction can be around 35% +# (e.g., 90 kB). +#CONFIG_NO_STDOUT_DEBUG=y + +# Remove WPA support, e.g., for wired-only IEEE 802.1X supplicant, to save +# 35-50 kB in code size. +#CONFIG_NO_WPA=y + +# Remove IEEE 802.11i/WPA-Personal ASCII passphrase support +# This option can be used to reduce code size by removing support for +# converting ASCII passphrases into PSK. If this functionality is removed, the +# PSK can only be configured as the 64-octet hexstring (e.g., from +# wpa_passphrase). This saves about 0.5 kB in code size. +#CONFIG_NO_WPA_PASSPHRASE=y + +# Simultaneous Authentication of Equals (SAE), WPA3-Personal +CONFIG_SAE=y + +# Disable scan result processing (ap_scan=1) to save code size by about 1 kB. +# This can be used if ap_scan=1 mode is never enabled. +#CONFIG_NO_SCAN_PROCESSING=y + +# Select configuration backend: +# file = text file (e.g., wpa_supplicant.conf; note: the configuration file +# path is given on command line, not here; this option is just used to +# select the backend that allows configuration files to be used) +# winreg = Windows registry (see win_example.reg for an example) +CONFIG_BACKEND=file + +# Remove configuration write functionality (i.e., to allow the configuration +# file to be updated based on runtime configuration changes). The runtime +# configuration can still be changed, the changes are just not going to be +# persistent over restarts. This option can be used to reduce code size by +# about 3.5 kB. +#CONFIG_NO_CONFIG_WRITE=y + +# Remove support for configuration blobs to reduce code size by about 1.5 kB. +#CONFIG_NO_CONFIG_BLOBS=y + +# Select program entry point implementation: +# main = UNIX/POSIX like main() function (default) +# main_winsvc = Windows service (read parameters from registry) +# main_none = Very basic example (development use only) +CONFIG_MAIN=main + +# Select wrapper for operating system and C library specific functions +# unix = UNIX/POSIX like systems (default) +# win32 = Windows systems +# none = Empty template +CONFIG_OS=unix + +# Select event loop implementation +# eloop = select() loop (default) +# eloop_win = Windows events and WaitForMultipleObject() loop +CONFIG_ELOOP=eloop + +# Should we use poll instead of select? Select is used by default. +#CONFIG_ELOOP_POLL=y + +# Should we use epoll instead of select? Select is used by default. +#CONFIG_ELOOP_EPOLL=y + +# Should we use kqueue instead of select? Select is used by default. +#CONFIG_ELOOP_KQUEUE=y + +# Select layer 2 packet implementation +# linux = Linux packet socket (default) +# pcap = libpcap/libdnet/WinPcap +# freebsd = FreeBSD libpcap +# winpcap = WinPcap with receive thread +# ndis = Windows NDISUIO (note: requires CONFIG_USE_NDISUIO=y) +# none = Empty template +CONFIG_L2_PACKET=linux + +# Disable Linux packet socket workaround applicable for station interface +# in a bridge for EAPOL frames. This should be uncommented only if the kernel +# is known to not have the regression issue in packet socket behavior with +# bridge interfaces (commit 'bridge: respect RFC2863 operational state')'). +#CONFIG_NO_LINUX_PACKET_SOCKET_WAR=y + +# Support Operating Channel Validation +#CONFIG_OCV=y + +# Select TLS implementation +# openssl = OpenSSL (default) +# gnutls = GnuTLS +# internal = Internal TLSv1 implementation (experimental) +# linux = Linux kernel AF_ALG and internal TLSv1 implementation (experimental) +# none = Empty template +CONFIG_TLS=openssl + +# TLS-based EAP methods require at least TLS v1.0. Newer version of TLS (v1.1) +# can be enabled to get a stronger construction of messages when block ciphers +# are used. It should be noted that some existing TLS v1.0 -based +# implementation may not be compatible with TLS v1.1 message (ClientHello is +# sent prior to negotiating which version will be used) +CONFIG_TLSV11=y + +# TLS-based EAP methods require at least TLS v1.0. Newer version of TLS (v1.2) +# can be enabled to enable use of stronger crypto algorithms. It should be +# noted that some existing TLS v1.0 -based implementation may not be compatible +# with TLS v1.2 message (ClientHello is sent prior to negotiating which version +# will be used) +CONFIG_TLSV12=y + +# Select which ciphers to use by default with OpenSSL if the user does not +# specify them. +#CONFIG_TLS_DEFAULT_CIPHERS="DEFAULT:!EXP:!LOW" +CONFIG_TLS_DEFAULT_CIPHERS="DEFAULT@SECLEVEL=1" + +# If CONFIG_TLS=internal is used, additional library and include paths are +# needed for LibTomMath. Alternatively, an integrated, minimal version of +# LibTomMath can be used. See beginning of libtommath.c for details on benefits +# and drawbacks of this option. +#CONFIG_INTERNAL_LIBTOMMATH=y +#ifndef CONFIG_INTERNAL_LIBTOMMATH +#LTM_PATH=/usr/src/libtommath-0.39 +#CFLAGS += -I$(LTM_PATH) +#LIBS += -L$(LTM_PATH) +#LIBS_p += -L$(LTM_PATH) +#endif +# At the cost of about 4 kB of additional binary size, the internal LibTomMath +# can be configured to include faster routines for exptmod, sqr, and div to +# speed up DH and RSA calculation considerably +#CONFIG_INTERNAL_LIBTOMMATH_FAST=y + +# Include NDIS event processing through WMI into wpa_supplicant/wpasvc. +# This is only for Windows builds and requires WMI-related header files and +# WbemUuid.Lib from Platform SDK even when building with MinGW. +#CONFIG_NDIS_EVENTS_INTEGRATED=y +#PLATFORMSDKLIB="/opt/Program Files/Microsoft Platform SDK/Lib" + +# Add support for new DBus control interface +# (fi.w1.wpa_supplicant1) +CONFIG_CTRL_IFACE_DBUS_NEW=y + +# Add introspection support for new DBus control interface +CONFIG_CTRL_IFACE_DBUS_INTRO=y + +# Add support for loading EAP methods dynamically as shared libraries. +# When this option is enabled, each EAP method can be either included +# statically (CONFIG_EAP_=y) or dynamically (CONFIG_EAP_=dyn). +# Dynamic EAP methods are build as shared objects (eap_*.so) and they need to +# be loaded in the beginning of the wpa_supplicant configuration file +# (see load_dynamic_eap parameter in the example file) before being used in +# the network blocks. +# +# Note that some shared parts of EAP methods are included in the main program +# and in order to be able to use dynamic EAP methods using these parts, the +# main program must have been build with the EAP method enabled (=y or =dyn). +# This means that EAP-TLS/PEAP/TTLS/FAST cannot be added as dynamic libraries +# unless at least one of them was included in the main build to force inclusion +# of the shared code. Similarly, at least one of EAP-SIM/AKA must be included +# in the main build to be able to load these methods dynamically. +# +# Please also note that using dynamic libraries will increase the total binary +# size. Thus, it may not be the best option for targets that have limited +# amount of memory/flash. +#CONFIG_DYNAMIC_EAP_METHODS=y + +# IEEE Std 802.11r-2008 (Fast BSS Transition) for station mode +CONFIG_IEEE80211R=y + +# Add support for writing debug log to a file (/tmp/wpa_supplicant-log-#.txt) +CONFIG_DEBUG_FILE=y + +# Send debug messages to syslog instead of stdout +CONFIG_DEBUG_SYSLOG=y +# Set syslog facility for debug messages +CONFIG_DEBUG_SYSLOG_FACILITY=LOG_DAEMON + +# Add support for sending all debug messages (regardless of debug verbosity) +# to the Linux kernel tracing facility. This helps debug the entire stack by +# making it easy to record everything happening from the driver up into the +# same file, e.g., using trace-cmd. +CONFIG_DEBUG_LINUX_TRACING=y + +# Add support for writing debug log to Android logcat instead of standard +# output +#CONFIG_ANDROID_LOG=y + +# Enable privilege separation (see README 'Privilege separation' for details) +#CONFIG_PRIVSEP=y + +# Enable mitigation against certain attacks against TKIP by delaying Michael +# MIC error reports by a random amount of time between 0 and 60 seconds +CONFIG_DELAYED_MIC_ERROR_REPORT=y + +# Enable tracing code for developer debugging +# This tracks use of memory allocations and other registrations and reports +# incorrect use with a backtrace of call (or allocation) location. +#CONFIG_WPA_TRACE=y +# For BSD, uncomment these. +#LIBS += -lexecinfo +#LIBS_p += -lexecinfo +#LIBS_c += -lexecinfo + +# Use libbfd to get more details for developer debugging +# This enables use of libbfd to get more detailed symbols for the backtraces +# generated by CONFIG_WPA_TRACE=y. +#CONFIG_WPA_TRACE_BFD=y +# For BSD, uncomment these. +#LIBS += -lbfd -liberty -lz +#LIBS_p += -lbfd -liberty -lz +#LIBS_c += -lbfd -liberty -lz + +# wpa_supplicant depends on strong random number generation being available +# from the operating system. os_get_random() function is used to fetch random +# data when needed, e.g., for key generation. On Linux and BSD systems, this +# works by reading /dev/urandom. It should be noted that the OS entropy pool +# needs to be properly initialized before wpa_supplicant is started. This is +# important especially on embedded devices that do not have a hardware random +# number generator and may by default start up with minimal entropy available +# for random number generation. +# +# As a safety net, wpa_supplicant is by default trying to internally collect +# additional entropy for generating random data to mix in with the data fetched +# from the OS. This by itself is not considered to be very strong, but it may +# help in cases where the system pool is not initialized properly. However, it +# is very strongly recommended that the system pool is initialized with enough +# entropy either by using hardware assisted random number generator or by +# storing state over device reboots. +# +# wpa_supplicant can be configured to maintain its own entropy store over +# restarts to enhance random number generation. This is not perfect, but it is +# much more secure than using the same sequence of random numbers after every +# reboot. This can be enabled with -e command line option. The +# specified file needs to be readable and writable by wpa_supplicant. +# +# If the os_get_random() is known to provide strong random data (e.g., on +# Linux/BSD, the board in question is known to have reliable source of random +# data from /dev/urandom), the internal wpa_supplicant random pool can be +# disabled. This will save some in binary size and CPU use. However, this +# should only be considered for builds that are known to be used on devices +# that meet the requirements described above. +CONFIG_NO_RANDOM_POOL=y + +# Should we attempt to use the getrandom(2) call that provides more reliable +# yet secure randomness source than /dev/random on Linux 3.17 and newer. +# Requires glibc 2.25 to build, falls back to /dev/random if unavailable. +CONFIG_GETRANDOM=y + +# IEEE 802.11ac (Very High Throughput) support (mainly for AP mode) +CONFIG_IEEE80211AC=y + +# Wireless Network Management (IEEE Std 802.11v-2011) +# Note: This is experimental and not complete implementation. +#CONFIG_WNM=y + +# Interworking (IEEE 802.11u) +# This can be used to enable functionality to improve interworking with +# external networks (GAS/ANQP to learn more about the networks and network +# selection based on available credentials). +CONFIG_INTERWORKING=y + +# Hotspot 2.0 +CONFIG_HS20=y + +# Enable interface matching in wpa_supplicant +#CONFIG_MATCH_IFACE=y + +# Disable roaming in wpa_supplicant +#CONFIG_NO_ROAMING=y + +# AP mode operations with wpa_supplicant +# This can be used for controlling AP mode operations with wpa_supplicant. It +# should be noted that this is mainly aimed at simple cases like +# WPA2-Personal while more complex configurations like WPA2-Enterprise with an +# external RADIUS server can be supported with hostapd. +CONFIG_AP=y + +# P2P (Wi-Fi Direct) +# This can be used to enable P2P support in wpa_supplicant. See README-P2P for +# more information on P2P operations. +CONFIG_P2P=y + +# Enable TDLS support +CONFIG_TDLS=y + +# Wi-Fi Display +# This can be used to enable Wi-Fi Display extensions for P2P using an external +# program to control the additional information exchanges in the messages. +CONFIG_WIFI_DISPLAY=y + +# Autoscan +# This can be used to enable automatic scan support in wpa_supplicant. +# See wpa_supplicant.conf for more information on autoscan usage. +# +# Enabling directly a module will enable autoscan support. +# For exponential module: +CONFIG_AUTOSCAN_EXPONENTIAL=y +# For periodic module: +CONFIG_AUTOSCAN_PERIODIC=y + +# Password (and passphrase, etc.) backend for external storage +# These optional mechanisms can be used to add support for storing passwords +# and other secrets in external (to wpa_supplicant) location. This allows, for +# example, operating system specific key storage to be used +# +# External password backend for testing purposes (developer use) +#CONFIG_EXT_PASSWORD_TEST=y +# File-based backend to read passwords from an external file. +#CONFIG_EXT_PASSWORD_FILE=y + +# Enable Fast Session Transfer (FST) +CONFIG_FST=y + +# Enable CLI commands for FST testing +#CONFIG_FST_TEST=y + +# OS X builds. This is only for building eapol_test. +#CONFIG_OSX=y + +# Automatic Channel Selection +# This will allow wpa_supplicant to pick the channel automatically when channel +# is set to "0". +# +# TODO: Extend parser to be able to parse "channel=acs_survey" as an alternative +# to "channel=0". This would enable us to eventually add other ACS algorithms in +# similar way. +# +# Automatic selection is currently only done through initialization, later on +# we hope to do background checks to keep us moving to more ideal channels as +# time goes by. ACS is currently only supported through the nl80211 driver and +# your driver must have survey dump capability that is filled by the driver +# during scanning. +# +# TODO: In analogy to hostapd be able to customize the ACS survey algorithm with +# a newly to create wpa_supplicant.conf variable acs_num_scans. +# +# Supported ACS drivers: +# * ath9k +# * ath5k +# * ath10k +# +# For more details refer to: +# http://wireless.kernel.org/en/users/Documentation/acs +CONFIG_ACS=y + +# Support Multi Band Operation +#CONFIG_MBO=y + +# Fast Initial Link Setup (FILS) (IEEE 802.11ai) +#CONFIG_FILS=y +# FILS shared key authentication with PFS +#CONFIG_FILS_SK_PFS=y + +# Support RSN on IBSS networks +# This is needed to be able to use mode=1 network profile with proto=RSN and +# key_mgmt=WPA-PSK (i.e., full key management instead of WPA-None). +CONFIG_IBSS_RSN=y + +# External PMKSA cache control +# This can be used to enable control interface commands that allow the current +# PMKSA cache entries to be fetched and new entries to be added. +CONFIG_PMKSA_CACHE_EXTERNAL=y + +# Mesh Networking (IEEE 802.11s) +#CONFIG_MESH=y + +# Background scanning modules +# These can be used to request wpa_supplicant to perform background scanning +# operations for roaming within an ESS (same SSID). See the bgscan parameter in +# the wpa_supplicant.conf file for more details. +# Periodic background scans based on signal strength +CONFIG_BGSCAN_SIMPLE=y +# Learn channels used by the network and try to avoid bgscans on other +# channels (experimental) +CONFIG_BGSCAN_LEARN=y + +# Opportunistic Wireless Encryption (OWE) +# Experimental implementation of draft-harkins-owe-07.txt +CONFIG_OWE=y + +# Device Provisioning Protocol (DPP) (also known as Wi-Fi Easy Connect) +CONFIG_DPP=y +# DPP version 2 support +CONFIG_DPP2=y +# DPP version 3 support (experimental and still changing; do not enable for +# production use) +#CONFIG_DPP3=y + +# Wired equivalent privacy (WEP) +# WEP is an obsolete cryptographic data confidentiality algorithm that is not +# considered secure. It should not be used for anything anymore. The +# functionality needed to use WEP is available in the current wpa_supplicant +# release under this optional build parameter. This functionality is subject to +# be completely removed in a future release. +#CONFIG_WEP=y + +# Remove all TKIP functionality +# TKIP is an old cryptographic data confidentiality algorithm that is not +# considered secure. It should not be used anymore for anything else than a +# backwards compatibility option as a group cipher when connecting to APs that +# use WPA+WPA2 mixed mode. For now, the default wpa_supplicant build includes +# support for this by default, but that functionality is subject to be removed +# in the future. +#CONFIG_NO_TKIP=y + +# Pre-Association Security Negotiation (PASN) +# Experimental implementation based on IEEE P802.11z/D2.6 and the protocol +# design is still subject to change. As such, this should not yet be enabled in +# production use. +#CONFIG_PASN=y +CONFIG_IPV6=y diff --git a/wpa_supplicant/wpa_supplicant_dbus_service_syslog.patch b/wpa_supplicant/wpa_supplicant_dbus_service_syslog.patch new file mode 100644 index 0000000000..5abc41b129 --- /dev/null +++ b/wpa_supplicant/wpa_supplicant_dbus_service_syslog.patch @@ -0,0 +1,36 @@ +From: Kel Modderman +Date: Sat, 21 Apr 2012 15:59:32 +1000 +Subject: Tweak D-Bus/systemd service activation configuration files: + + * log wpa_supplicant messages to syslog + * activate control socket interface so that wpa_cli can be used by D-Bus + activated wpa_supplicant daemon +--- + wpa_supplicant/dbus/fi.w1.wpa_supplicant1.service.in | 2 +- + wpa_supplicant/systemd/wpa_supplicant.service.in | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/wpa_supplicant/dbus/fi.w1.wpa_supplicant1.service.in b/wpa_supplicant/dbus/fi.w1.wpa_supplicant1.service.in +index d97ff39..3b0af67 100644 +--- a/wpa_supplicant/dbus/fi.w1.wpa_supplicant1.service.in ++++ b/wpa_supplicant/dbus/fi.w1.wpa_supplicant1.service.in +@@ -1,5 +1,5 @@ + [D-BUS Service] + Name=fi.w1.wpa_supplicant1 +-Exec=@BINDIR@/wpa_supplicant -u ++Exec=@BINDIR@/wpa_supplicant -u -s -O /run/wpa_supplicant + User=root + SystemdService=wpa_supplicant.service +diff --git a/wpa_supplicant/systemd/wpa_supplicant.service.in b/wpa_supplicant/systemd/wpa_supplicant.service.in +index 58a6228..bc0688a 100644 +--- a/wpa_supplicant/systemd/wpa_supplicant.service.in ++++ b/wpa_supplicant/systemd/wpa_supplicant.service.in +@@ -7,7 +7,7 @@ Wants=network.target + [Service] + Type=dbus + BusName=fi.w1.wpa_supplicant1 +-ExecStart=@BINDIR@/wpa_supplicant -u ++ExecStart=@BINDIR@/wpa_supplicant -u -s -O /run/wpa_supplicant + + [Install] + WantedBy=multi-user.target diff --git a/wpa_supplicant/wpa_supplicant_service_ignore-on-isolate.patch b/wpa_supplicant/wpa_supplicant_service_ignore-on-isolate.patch new file mode 100644 index 0000000000..454030dcf0 --- /dev/null +++ b/wpa_supplicant/wpa_supplicant_service_ignore-on-isolate.patch @@ -0,0 +1,36 @@ +From: Mathieu Trudel-Lapierre +Date: Mon, 13 Mar 2017 13:46:12 -0400 +Subject: Add IgnoreOnIsolate=yes to keep wpa-supplicant running while + systemctl isolate + +> Add IgnoreOnIsolate=yes so that when switching "runlevels" in +> oem-config will not kill off wpa and cause wireless to be +> unavailable on first boot. (LP: #1576024) + +Also happens when running systemctl isolate default.target: + +> NM should be detecting that wpasupplicant is not running and start +> it -- this should already have been working by way of wpasupplicant +> being dbus-activated. +[...] +> It seems to me like IgnoreOnIsolate for wpasupplicant would be the +> right thing to do, or to figure out why it isn't being properly +> started when NM tries to use it. + +Bug-Ubuntu: https://bugs.launchpad.net/bugs/1576024 +--- + wpa_supplicant/systemd/wpa_supplicant.service.in | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/wpa_supplicant/systemd/wpa_supplicant.service.in b/wpa_supplicant/systemd/wpa_supplicant.service.in +index bc0688a..561ae8f 100644 +--- a/wpa_supplicant/systemd/wpa_supplicant.service.in ++++ b/wpa_supplicant/systemd/wpa_supplicant.service.in +@@ -3,6 +3,7 @@ Description=WPA supplicant + Before=network.target + After=dbus.service + Wants=network.target ++IgnoreOnIsolate=true + + [Service] + Type=dbus diff --git a/wpa_supplicant/wpa_supplicant_tls.patch b/wpa_supplicant/wpa_supplicant_tls.patch new file mode 100644 index 0000000000..ca1028b2f1 --- /dev/null +++ b/wpa_supplicant/wpa_supplicant_tls.patch @@ -0,0 +1,28 @@ +From: Andrej Shadura +Date: Sat, 15 Dec 2018 14:19:22 +0100 +Subject: Enable TLSv1.0 by default + +OpenSSL 1.1.1 disables TLSv1.0 by default and sets the security level to 2. +Some older networks may support for TLSv1.0 and less secure cyphers. +--- + src/crypto/tls_openssl.c | 7 +++++++ + 1 file changed, 7 insertions(+) + +diff --git a/src/crypto/tls_openssl.c b/src/crypto/tls_openssl.c +index c9e00b3..273e5cb 100644 +--- a/src/crypto/tls_openssl.c ++++ b/src/crypto/tls_openssl.c +@@ -1040,6 +1040,13 @@ void * tls_init(const struct tls_config *conf) + os_free(data); + return NULL; + } ++ ++#ifndef EAP_SERVER_TLS ++ /* Enable TLSv1.0 by default to allow connecting to legacy ++ * networks since Debian OpenSSL is set to minimum TLSv1.2 and SECLEVEL=2. */ ++ SSL_CTX_set_min_proto_version(ssl, TLS1_VERSION); ++#endif ++ + data->ssl = ssl; + if (conf) { + data->tls_session_lifetime = conf->tls_session_lifetime; diff --git a/xxhash/xxhash-man-symlinks.patch b/xxhash/xxhash-man-symlinks.patch new file mode 100644 index 0000000000..9ac9f98332 --- /dev/null +++ b/xxhash/xxhash-man-symlinks.patch @@ -0,0 +1,16 @@ +diff '--color=auto' -rupN xxHash.orig/Makefile xxHash/Makefile +--- xxHash.orig/Makefile 2021-12-06 11:36:16.742156574 +0100 ++++ xxHash/Makefile 2021-12-06 11:37:31.712450289 +0100 +@@ -518,9 +518,9 @@ endif + $(Q)ln -sf xxhsum $(DESTDIR)$(BINDIR)/xxh128sum + @echo Installing man pages + $(Q)$(INSTALL_DATA) $(MAN) $(DESTDIR)$(MANDIR)/xxhsum.1 +- $(Q)ln -sf $(MAN) $(DESTDIR)$(MANDIR)/xxh32sum.1 +- $(Q)ln -sf $(MAN) $(DESTDIR)$(MANDIR)/xxh64sum.1 +- $(Q)ln -sf $(MAN) $(DESTDIR)$(MANDIR)/xxh128sum.1 ++ $(Q)ln -sf xxhsum.1.gz $(DESTDIR)$(MANDIR)/xxh32sum.1.gz ++ $(Q)ln -sf xxhsum.1.gz $(DESTDIR)$(MANDIR)/xxh64sum.1.gz ++ $(Q)ln -sf xxhsum.1.gz $(DESTDIR)$(MANDIR)/xxh128sum.1.gz + @echo xxhash installation completed + + .PHONY: uninstall