summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--README16
-rw-r--r--academic/antiprism/antiprism.SlackBuild2
-rw-r--r--academic/gelemental/gcc.patch12
-rw-r--r--academic/gelemental/gelemental.SlackBuild3
-rw-r--r--academic/genius/README2
-rw-r--r--academic/genometools/genometools.SlackBuild2
-rw-r--r--academic/primer3/primer3.SlackBuild4
-rw-r--r--academic/root/root.SlackBuild9
-rw-r--r--academic/root/root.info8
-rw-r--r--academic/t_coffee/t_coffee.SlackBuild3
-rw-r--r--academic/tophat/make_pair.patch24
-rw-r--r--academic/tophat/tophat.SlackBuild3
-rw-r--r--academic/ugene/ugene-1.22.0-dont_hardcode_includes.patch24
-rw-r--r--academic/ugene/ugene.SlackBuild3
-rw-r--r--academic/veusz/veusz.SlackBuild4
-rw-r--r--accessibility/easystroke/easystroke.SlackBuild1
-rw-r--r--accessibility/easystroke/gcc7-build-fix.patch40
-rw-r--r--accessibility/flite/flite.info2
-rw-r--r--accessibility/jpilot/jpilot.SlackBuild23
-rw-r--r--accessibility/jpilot/jpilot.info6
-rw-r--r--audio/aacgain/aacgain.SlackBuild2
-rw-r--r--audio/alsamodularsynth/alsamodularsynth.SlackBuild9
-rw-r--r--audio/audacious-aac/audacious-aac.SlackBuild8
-rw-r--r--audio/audacious-aac/audacious-aac.info6
-rw-r--r--audio/audacious-cue/audacious-cue.SlackBuild8
-rw-r--r--audio/audacious-cue/audacious-cue.info6
-rw-r--r--audio/audacious-ffmpeg/README4
-rw-r--r--audio/audacious-ffmpeg/audacious-ffmpeg.SlackBuild106
-rw-r--r--audio/audacious-ffmpeg/audacious-ffmpeg.info10
-rw-r--r--audio/audacious-ffmpeg/patches/enable_only_ffmpeg_plugin.diff8
-rw-r--r--audio/audacious-ffmpeg/slack-desc19
-rw-r--r--audio/butt/butt.SlackBuild2
-rw-r--r--audio/calf-ladspa/calf-ladspa.SlackBuild2
-rw-r--r--audio/darkice/darkice.SlackBuild2
-rw-r--r--audio/easytag/README7
-rw-r--r--audio/easytag/doinst.sh13
-rw-r--r--audio/easytag/easytag.SlackBuild98
-rw-r--r--audio/easytag/easytag.info10
-rw-r--r--audio/easytag/slack-desc19
-rw-r--r--audio/fluidsynth/README9
-rw-r--r--audio/fluidsynth/fluidsynth.SlackBuild104
-rw-r--r--audio/fluidsynth/fluidsynth.info10
-rw-r--r--audio/fluidsynth/slack-desc19
-rw-r--r--audio/lash/lash.SlackBuild2
-rw-r--r--audio/lmms/gcc6.patch112
-rw-r--r--audio/lmms/lmms.SlackBuild3
-rw-r--r--audio/mac/gcc6.patch181
-rw-r--r--audio/mac/mac.SlackBuild2
-rw-r--r--audio/milkytracker/README3
-rw-r--r--audio/milkytracker/milkytracker.SlackBuild50
-rw-r--r--audio/milkytracker/milkytracker.info8
-rw-r--r--audio/milkytracker/sdlmain.patch12
-rw-r--r--audio/muse/README6
-rw-r--r--audio/muse/muse.SlackBuild23
-rw-r--r--audio/muse/muse.info8
-rw-r--r--audio/ocp/ocp.SlackBuild2
-rw-r--r--audio/opus-tools/README2
-rw-r--r--audio/opus-tools/opus-tools.SlackBuild102
-rw-r--r--audio/opus-tools/opus-tools.info10
-rw-r--r--audio/opus-tools/slack-desc19
-rw-r--r--audio/opus/README4
-rw-r--r--audio/opus/opus.SlackBuild104
-rw-r--r--audio/opus/opus.info10
-rw-r--r--audio/opus/slack-desc19
-rw-r--r--audio/opusfile/README2
-rw-r--r--audio/opusfile/opusfile.info10
-rw-r--r--audio/opusfile/slack-desc19
-rw-r--r--audio/pithos/doinst.sh6
-rw-r--r--audio/pithos/pithos.SlackBuild32
-rw-r--r--audio/pithos/pithos.info10
-rw-r--r--audio/pithos/slack-desc2
-rw-r--r--audio/rumor/gcc7.diff12
-rw-r--r--audio/rumor/rumor.SlackBuild3
-rw-r--r--audio/seq24/perfedit.patch29
-rw-r--r--audio/seq24/seq24.SlackBuild27
-rw-r--r--audio/seq24/seq24.info6
-rw-r--r--audio/shell-fm/README12
-rw-r--r--audio/shell-fm/shell-fm.SlackBuild91
-rw-r--r--audio/shell-fm/shell-fm.info10
-rw-r--r--audio/shell-fm/slack-desc19
-rw-r--r--audio/sidplayfp/sidplayfp.SlackBuild10
-rw-r--r--audio/sidplayfp/sidplayfp.info6
-rw-r--r--audio/speex/README7
-rw-r--r--audio/speex/slack-desc19
-rw-r--r--audio/speex/speex.SlackBuild116
-rw-r--r--audio/speex/speex.info10
-rw-r--r--audio/xmms2/xmms2.SlackBuild2
-rw-r--r--audio/xmms2/xmms2.info6
-rw-r--r--desktop/arc-theme/README2
-rw-r--r--desktop/arc-theme/arc-theme.SlackBuild10
-rw-r--r--desktop/arc-theme/arc-theme.info10
-rw-r--r--desktop/arc-theme/slack-desc2
-rw-r--r--desktop/cairo-dock-plugins/README2
-rw-r--r--desktop/cairo-dock-plugins/cairo-dock-plugins.SlackBuild32
-rw-r--r--desktop/cairo-dock-plugins/cairo-dock-plugins.info6
-rw-r--r--desktop/cairo-dock-plugins/patches/mono.patch106
-rw-r--r--desktop/cairo-dock-plugins/patches/time_h-confict.patch137
-rw-r--r--desktop/cairo-dock/cairo-dock.SlackBuild17
-rw-r--r--desktop/cairo-dock/cairo-dock.info6
-rw-r--r--desktop/ceti-2-theme/README10
-rw-r--r--desktop/ceti-2-theme/ceti-2-theme.SlackBuild77
-rw-r--r--desktop/ceti-2-theme/ceti-2-theme.info10
-rw-r--r--desktop/ceti-2-theme/doinst.sh13
-rw-r--r--desktop/ceti-2-theme/slack-desc19
-rw-r--r--desktop/devilspie/devilspie.SlackBuild2
-rw-r--r--desktop/enlightenment/enlightenment.SlackBuild2
-rw-r--r--desktop/enlightenment/enlightenment.info6
-rw-r--r--desktop/lumina/lumina.SlackBuild1
-rw-r--r--desktop/polybar/00165e1a6d5dd61bc153e1352b21ec07fc81245d.patch44
-rw-r--r--desktop/polybar/polybar.SlackBuild5
-rw-r--r--desktop/seafile-client/README (renamed from desktop/seafile-gui/README)0
-rw-r--r--desktop/seafile-client/doinst.sh (renamed from desktop/seafile-gui/doinst.sh)0
-rw-r--r--desktop/seafile-client/seafile-client.SlackBuild (renamed from desktop/seafile-gui/seafile-gui.SlackBuild)19
-rw-r--r--desktop/seafile-client/seafile-client.info10
-rw-r--r--desktop/seafile-client/slack-desc (renamed from network/seafile-client/slack-desc)8
-rw-r--r--desktop/seafile-gui/seafile-gui.info10
-rw-r--r--desktop/searchmonkey/patch.txt11
-rw-r--r--desktop/searchmonkey/searchmonkey.SlackBuild1
-rw-r--r--desktop/thunar-archive-plugin/thunar-archive-plugin.SlackBuild8
-rw-r--r--desktop/thunar-archive-plugin/thunar-archive-plugin.info6
-rw-r--r--desktop/thunar-dropbox/README1
-rw-r--r--desktop/thunar-dropbox/doinst.sh6
-rw-r--r--desktop/thunar-dropbox/slack-desc19
-rw-r--r--desktop/thunar-dropbox/thunar-dropbox.info10
-rw-r--r--desktop/wbar/wbar.SlackBuild2
-rw-r--r--development/ChezScheme/ChezScheme.SlackBuild1
-rw-r--r--development/Coin/Coin.SlackBuild3
-rw-r--r--development/Coin/memhandler-initialization.patch20
-rw-r--r--development/FreeBASIC/FreeBASIC.SlackBuild7
-rw-r--r--development/MySQL-python/MySQL-python.SlackBuild2
-rw-r--r--development/SDL2_gfx/README3
-rw-r--r--development/SDL2_gfx/SDL2_gfx.SlackBuild99
-rw-r--r--development/SDL2_gfx/SDL2_gfx.info10
-rw-r--r--development/SDL2_gfx/slack-desc19
-rw-r--r--development/acpica/acpica.SlackBuild6
-rw-r--r--development/acpica/acpica.info6
-rw-r--r--development/android-tools/README4
-rw-r--r--development/android-tools/android-tools.SlackBuild40
-rw-r--r--development/android-tools/android-tools.info24
-rw-r--r--development/android-tools/bash_completion.fastboot90
-rw-r--r--development/android-tools/fix_build_core.patch83
-rw-r--r--development/android-tools/fix_build_e2fsprogs.patch83
-rw-r--r--development/android-tools/generate_build.rb247
-rw-r--r--development/anjuta/anjuta.SlackBuild2
-rw-r--r--development/apache-log4cxx/apache-log4cxx.SlackBuild1
-rw-r--r--development/apache-log4cxx/narrowing-fixes.patch.gzbin0 -> 1631 bytes
-rw-r--r--development/arm-gcc/README2
-rw-r--r--development/arm-gcc/arm-gcc.SlackBuild7
-rw-r--r--development/arm-gcc/arm-gcc.info6
-rw-r--r--development/atom/atom.SlackBuild13
-rw-r--r--development/atom/atom.info6
-rw-r--r--development/autogen/autogen.SlackBuild7
-rw-r--r--development/autogen/guile-2.2.patch78
-rw-r--r--development/avr-binutils/avr-binutils.SlackBuild18
-rw-r--r--development/avr-binutils/avr-binutils.info6
-rw-r--r--development/avr-binutils/avr-size.patch385
-rw-r--r--development/avr-gcc/avr-gcc.SlackBuild48
-rw-r--r--development/avr-gcc/avr-gcc.info8
-rw-r--r--development/docutils/README6
-rw-r--r--development/docutils/docutils.SlackBuild71
-rw-r--r--development/docutils/docutils.info10
-rw-r--r--development/docutils/slack-desc19
-rw-r--r--development/freetds/freetds.SlackBuild2
-rw-r--r--development/freetds/freetds.info6
-rw-r--r--development/gcc5/README46
-rw-r--r--development/gcc5/c89.sh11
-rw-r--r--development/gcc5/c99.sh11
-rw-r--r--development/gcc5/ecj.sh5
-rw-r--r--development/gcc5/fastjar-patches/1000-fastjar-0.97-segfault.patch29
-rw-r--r--development/gcc5/fastjar-patches/1001-fastjar-0.97-len1.patch16
-rw-r--r--development/gcc5/fastjar-patches/1002-fastjar-0.97-filename0.patch14
-rw-r--r--development/gcc5/fastjar-patches/1003-fastjar-CVE-2010-0831.patch102
-rw-r--r--development/gcc5/fastjar-patches/1004-fastjar-man.patch27
-rw-r--r--development/gcc5/gcc5.SlackBuild565
-rw-r--r--development/gcc5/gcc5.info17
-rw-r--r--development/gcc5/libgcj-5.pc10
-rw-r--r--development/gcc5/patches/0001-i386-Move-struct-ix86_frame-to-machine_function.diff239
-rw-r--r--development/gcc5/patches/0002-i386-Use-reference-of-struct-ix86_frame-to-avoid-cop.diff72
-rw-r--r--development/gcc5/patches/0003-i386-More-use-reference-of-struct-ix86_frame-to-avoi.diff59
-rw-r--r--development/gcc5/patches/0004-i386-Don-t-use-reference-of-struct-ix86_frame.diff63
-rw-r--r--development/gcc5/patches/0005-x86-Add-mindirect-branch-doc.diff279
-rw-r--r--development/gcc5/patches/0005-x86-Add-mindirect-branch.diff1870
-rw-r--r--development/gcc5/patches/0006-x86-Add-mfunction-return-doc.diff300
-rw-r--r--development/gcc5/patches/0006-x86-Add-mfunction-return.diff1409
-rw-r--r--development/gcc5/patches/0007-x86-Add-mindirect-branch-register-doc.diff231
-rw-r--r--development/gcc5/patches/0007-x86-Add-mindirect-branch-register.diff812
-rw-r--r--development/gcc5/patches/0008-x86-Add-V-register-operand-modifier-doc.diff65
-rw-r--r--development/gcc5/patches/0008-x86-Add-V-register-operand-modifier.diff125
-rw-r--r--development/gcc5/patches/0009-x86-Disallow-mindirect-branch-mfunction-return-with-.diff275
-rw-r--r--development/gcc5/patches/0009-x86-Disallow-mindirect-branch-mfunction-return-with-doc.diff102
-rw-r--r--development/gcc5/patches/gcc-no_fixincludes.diff27
-rw-r--r--development/gcc5/patches/gcc.66782.diff124
-rw-r--r--development/gcc5/patches/gcc.69140.diff13
-rw-r--r--development/gcc5/profile.d/gcc5.csh7
-rw-r--r--development/gcc5/profile.d/gcc5.sh7
-rw-r--r--development/gcc5/slack-desc.gcc519
-rw-r--r--development/geany/geany.info2
-rw-r--r--development/gedit/gedit.SlackBuild1
-rw-r--r--development/glade/glade.SlackBuild8
-rw-r--r--development/glade/glade.info6
-rw-r--r--development/gnats/gnats.SlackBuild2
-rw-r--r--development/gpsim/gpsim.SlackBuild2
-rw-r--r--development/gsoap/gsoap-libtool.patch73
-rw-r--r--development/gsoap/gsoap.SlackBuild4
-rw-r--r--development/gsoap/gsoap.info6
-rw-r--r--development/hte/hte.SlackBuild24
-rw-r--r--development/hte/hte.info6
-rw-r--r--development/hte/hteditor-2.1.0-gcc-7.patch32
-rw-r--r--development/icecream/README12
-rw-r--r--development/icecream/doinst.sh30
-rw-r--r--development/icecream/icecream.SlackBuild133
-rw-r--r--development/icecream/icecream.info10
-rw-r--r--development/icecream/profile.d/icecream.csh2
-rw-r--r--development/icecream/profile.d/icecream.sh2
-rw-r--r--development/icecream/rc.icecc-scheduler50
-rw-r--r--development/icecream/rc.iceccd50
-rw-r--r--development/icecream/rc.icecream.conf8
-rw-r--r--development/icecream/slack-desc19
-rw-r--r--development/jdk/profile.d/jdk.csh1
-rw-r--r--development/jdk/profile.d/jdk.sh1
-rw-r--r--development/kicad/boost-1.61.patch347
-rw-r--r--development/kicad/kicad.SlackBuild8
-rw-r--r--development/kicad/kicad.info8
-rw-r--r--development/latrace/fix-scanner-config-for-flex-2.6.x.patch23
-rw-r--r--development/latrace/latrace.SlackBuild3
-rw-r--r--development/lmdb/README2
-rw-r--r--development/lmdb/lmdb.SlackBuild95
-rw-r--r--development/lmdb/lmdb.info10
-rw-r--r--development/lmdb/slack-desc19
-rw-r--r--development/meson/README9
-rw-r--r--development/meson/meson.SlackBuild91
-rw-r--r--development/meson/meson.info10
-rw-r--r--development/meson/slack-desc19
-rw-r--r--development/mozjs/README3
-rw-r--r--development/mozjs/mozjs.SlackBuild143
-rw-r--r--development/mozjs/mozjs.info10
-rw-r--r--development/mozjs/patches/moz38-dont-hardcode-libc-soname.patch15
-rw-r--r--development/mozjs/slack-desc19
-rw-r--r--development/mysql-pinba/mysql-pinba.SlackBuild2
-rw-r--r--development/mysql-workbench/mysql-workbench.SlackBuild5
-rw-r--r--development/ninja/README4
-rw-r--r--development/ninja/ninja.SlackBuild95
-rw-r--r--development/ninja/ninja.info10
-rw-r--r--development/ninja/slack-desc19
-rw-r--r--development/odb/odb.SlackBuild3
-rw-r--r--development/odb/odb_gcc6.patch355
-rw-r--r--development/opencl-headers/README3
-rw-r--r--development/opencl-headers/opencl-headers.SlackBuild57
-rw-r--r--development/opencl-headers/opencl-headers.info10
-rw-r--r--development/opencl-headers/slack-desc19
-rw-r--r--development/openocd/openocd.SlackBuild10
-rw-r--r--development/openocd/openocd.info6
-rw-r--r--development/perf/perf.SlackBuild2
-rw-r--r--development/perf/perf.info2
-rw-r--r--development/php-apcu/php-apcu.SlackBuild2
-rw-r--r--development/php-apcu/php-apcu.info6
-rw-r--r--development/poedit/poedit.SlackBuild6
-rw-r--r--development/poedit/poedit.info6
-rw-r--r--development/poedit/setvalue.diff11
-rw-r--r--development/qbs/qbs.SlackBuild2
-rw-r--r--development/qbs/qbs.info6
-rw-r--r--development/qt-creator/qt-creator.SlackBuild2
-rw-r--r--development/qt-creator/qt-creator.info6
-rw-r--r--development/re2c/README6
-rw-r--r--development/re2c/re2c.SlackBuild110
-rw-r--r--development/re2c/re2c.info10
-rw-r--r--development/re2c/slack-desc19
-rw-r--r--development/sbcl/glibc-2.26.patch13
-rw-r--r--development/sbcl/sbcl.SlackBuild2
-rw-r--r--development/srcML/srcML.info4
-rw-r--r--development/swfmill/swfmill.SlackBuild2
-rw-r--r--development/tora/README2
-rw-r--r--development/tora/tora.SlackBuild14
-rw-r--r--development/tora/tora.info8
-rw-r--r--development/vala/README4
-rw-r--r--development/vala/patch_support-gtk318.diff50
-rw-r--r--development/vala/slack-desc19
-rw-r--r--development/vala/vala.SlackBuild100
-rw-r--r--development/vala/vala.info10
-rw-r--r--games/0ad-data/0ad-data.SlackBuild2
-rw-r--r--games/0ad-data/0ad-data.info6
-rw-r--r--games/0ad/0ad.SlackBuild20
-rw-r--r--games/0ad/0ad.info8
-rw-r--r--games/alienarena/alienarena-7.66-no-qglBlitFramebufferEXT.patch22
-rw-r--r--games/alienarena/alienarena.SlackBuild30
-rw-r--r--games/alienarena/alienarena.info4
-rw-r--r--games/alienarena/checkout_code.sh6
-rw-r--r--games/assaultcube/assaultcube-gcc6.patch301
-rw-r--r--games/assaultcube/assaultcube.SlackBuild2
-rw-r--r--games/berusky2/berusky2.SlackBuild6
-rw-r--r--games/berusky2/berusky2.info6
-rw-r--r--games/blobwars/blobwars.SlackBuild2
-rw-r--r--games/bloodfrontier/bloodfrontier.SlackBuild2
-rw-r--r--games/brainparty/brainparty.SlackBuild3
-rw-r--r--games/brainparty/patches/gcc-6.patch47
-rw-r--r--games/chroma/chroma.SlackBuild19
-rw-r--r--games/chroma/gcc.patch30
-rw-r--r--games/desmume/desmume.SlackBuild27
-rw-r--r--games/desmume/desmume.info6
-rw-r--r--games/desmume/osmesa-header-fix.patch11
-rw-r--r--games/dolphin-emu/dolphin-emu.SlackBuild4
-rw-r--r--games/dolphin-emu/dolphin-emu.info6
-rw-r--r--games/etlegacy-from-source/README25
-rw-r--r--games/etlegacy-from-source/doinst.sh (renamed from office/juffed/doinst.sh)0
-rw-r--r--games/etlegacy-from-source/etlegacy-from-source.SlackBuild186
-rw-r--r--games/etlegacy-from-source/etlegacy-from-source.info16
-rw-r--r--games/etlegacy-from-source/files/etlegacy.desktop9
-rw-r--r--games/etlegacy-from-source/files/etlegacy.svg100
-rw-r--r--games/etlegacy-from-source/files/get_tarball_from_git.sh31
-rw-r--r--games/etlegacy-from-source/files/openurl.sh15
-rw-r--r--games/etlegacy-from-source/slack-desc19
-rw-r--r--games/f1spirit/03_gcc6.patch12
-rw-r--r--games/f1spirit/f1spirit.SlackBuild3
-rw-r--r--games/frogatto/frogatto.SlackBuild6
-rw-r--r--games/gargoyle/gargoyle.SlackBuild2
-rw-r--r--games/glob2/c++14.patch46
-rw-r--r--games/glob2/glob2.SlackBuild3
-rw-r--r--games/gnubg/gnubg.SlackBuild2
-rw-r--r--games/goonies/gcc6.patch12
-rw-r--r--games/goonies/goonies.SlackBuild3
-rw-r--r--games/higan-libretro/higan-libretro.SlackBuild4
-rw-r--r--games/higan-libretro/openmp.patch.gzbin457 -> 0 bytes
-rw-r--r--games/micropolis/micropolis.SlackBuild2
-rw-r--r--games/nlarn/nlarn.SlackBuild3
-rw-r--r--games/noteye/noteye.SlackBuild3
-rw-r--r--games/openlierox/http_curl.patch20
-rw-r--r--games/openlierox/openlierox.SlackBuild8
-rw-r--r--games/openlierox/openlierox.info8
-rw-r--r--games/openttd/openttd.SlackBuild2
-rw-r--r--games/pcsxr/pcsxr.SlackBuild3
-rw-r--r--games/pcsxr/zlib129fix.patch34
-rw-r--r--games/pingus/missing-header.patch22
-rw-r--r--games/pingus/pingus.SlackBuild3
-rw-r--r--games/pokerth/pokerth-1.1.1-boost-1.65-ambiguous-advance.patch14
-rw-r--r--games/pokerth/pokerth-1.1.2-boost-1.66-remove-deprecated.patch26
-rw-r--r--games/pokerth/pokerth.SlackBuild33
-rw-r--r--games/pokerth/pokerth.info6
-rw-r--r--games/quakespasm/README1
-rw-r--r--games/quakespasm/doinst.sh3
-rw-r--r--games/quakespasm/quakespasm.SlackBuild (renamed from desktop/thunar-dropbox/thunar-dropbox.SlackBuild)35
-rw-r--r--games/quakespasm/quakespasm.desktop9
-rw-r--r--games/quakespasm/quakespasm.info10
-rw-r--r--games/quakespasm/slack-desc (renamed from system/f2fs_tools/slack-desc)22
-rw-r--r--games/rlvm/gcc.patch24
-rw-r--r--games/rlvm/rlvm.SlackBuild3
-rw-r--r--games/roadfighter/gcc.patch11
-rw-r--r--games/roadfighter/roadfighter.SlackBuild3
-rw-r--r--games/speed-dreams/speed-dreams-params-conversion.patch22
-rw-r--r--games/speed-dreams/speed-dreams.SlackBuild3
-rw-r--r--games/supertux/README2
-rw-r--r--games/supertux/supertux.SlackBuild13
-rw-r--r--games/supertux/supertux.info6
-rw-r--r--games/supertuxkart/mesa-18.3.patch23
-rw-r--r--games/supertuxkart/supertuxkart.SlackBuild3
-rw-r--r--games/torcs/torcs.SlackBuild2
-rw-r--r--games/trackballs/trackballs.SlackBuild53
-rw-r--r--games/trackballs/trackballs.info8
-rw-r--r--games/warmux/patches/return-null.patch11
-rw-r--r--games/warmux/warmux.SlackBuild5
-rw-r--r--games/widelands/widelands-gcc47.patch12
-rw-r--r--games/widelands/widelands.SlackBuild12
-rw-r--r--games/widelands/widelands.info6
-rw-r--r--games/xmoto/xmoto.SlackBuild2
-rw-r--r--games/xu4/gcc7.patch90
-rw-r--r--games/xu4/xu4.SlackBuild3
-rw-r--r--games/xye/xye.SlackBuild2
-rw-r--r--gis/gdal/gdal.SlackBuild2
-rw-r--r--gis/grass/gcc7.patch90
-rw-r--r--gis/grass/grass.SlackBuild2
-rw-r--r--graphics/Blender/0001-Added-extra-const-to-satisfy-the-strict-clang-versio.patch25
-rw-r--r--graphics/Blender/0001-Cycles-Fix-bad-register-cast-in-sseb.patch25
-rw-r--r--graphics/Blender/Blender.SlackBuild4
-rw-r--r--graphics/fontforge/fontforge.SlackBuild2
-rw-r--r--graphics/fontforge/fontforge.info4
-rw-r--r--graphics/goocanvas/goocanvas.SlackBuild1
-rw-r--r--graphics/graphite2/README8
-rw-r--r--graphics/graphite2/graphite2.SlackBuild96
-rw-r--r--graphics/graphite2/graphite2.info10
-rw-r--r--graphics/graphite2/slack-desc19
-rw-r--r--graphics/graphviz/graphviz.SlackBuild1
-rw-r--r--graphics/k3d/README1
-rw-r--r--graphics/k3d/gcc7.patch23
-rw-r--r--graphics/k3d/k3d.SlackBuild3
-rw-r--r--graphics/k3d/k3d.info2
-rw-r--r--graphics/kuickshow/kuickshow.SlackBuild8
-rw-r--r--graphics/mypaint/mypaint.SlackBuild8
-rw-r--r--graphics/mypaint/mypaint.info8
-rw-r--r--graphics/opencollada/opencollada.SlackBuild3
-rw-r--r--graphics/opencollada/pcre.patch13
-rw-r--r--graphics/opencolorio/opencolorio.SlackBuild2
-rw-r--r--graphics/openimageio/openimageio.SlackBuild9
-rw-r--r--graphics/photoprint/photoprint.SlackBuild20
-rw-r--r--graphics/potrace/potrace.SlackBuild1
-rw-r--r--graphics/povray/povray.SlackBuild10
-rw-r--r--graphics/povray/povray.info6
-rw-r--r--graphics/rawstudio/rawstudio.SlackBuild2
-rw-r--r--graphics/simple-scan/simple-scan.SlackBuild2
-rw-r--r--graphics/simple-scan/simple-scan.info8
-rw-r--r--graphics/simple-scan/slack-desc2
-rw-r--r--graphics/vulkansdk/README15
-rw-r--r--graphics/vulkansdk/slack-desc19
-rw-r--r--graphics/vulkansdk/vulkansdk.SlackBuild84
-rw-r--r--graphics/vulkansdk/vulkansdk.info10
-rw-r--r--graphics/yafaray-blender/yafaray-blender.SlackBuild28
-rw-r--r--graphics/yafaray-blender/yafaray-blender.info6
-rw-r--r--graphics/yafaray/README8
-rw-r--r--graphics/yafaray/yafaray.SlackBuild92
-rw-r--r--graphics/yafaray/yafaray.info8
-rw-r--r--ham/fldigi/fldigi.SlackBuild2
-rw-r--r--ham/soundmodem/soundmodem.SlackBuild2
-rw-r--r--ham/svxlink/gcc6.patch23
-rw-r--r--ham/svxlink/svxlink.SlackBuild5
-rw-r--r--libraries/Atlas-C++/Atlas-C++.SlackBuild2
-rw-r--r--libraries/CEGUI0.7/CEGUI0.7.SlackBuild2
-rw-r--r--libraries/FreeImage/FreeImage.SlackBuild5
-rw-r--r--libraries/OpenAL/OpenAL.SlackBuild8
-rw-r--r--libraries/PyQt5/PyQt5.SlackBuild4
-rw-r--r--libraries/PyQt5/PyQt5.info2
-rw-r--r--libraries/SDL2/README7
-rw-r--r--libraries/SDL2/SDL2.SlackBuild93
-rw-r--r--libraries/SDL2/SDL2.info10
-rw-r--r--libraries/SDL2/slack-desc19
-rw-r--r--libraries/SDL2_image/README4
-rw-r--r--libraries/SDL2_image/SDL2_image.SlackBuild99
-rw-r--r--libraries/SDL2_image/SDL2_image.info10
-rw-r--r--libraries/SDL2_image/slack-desc19
-rw-r--r--libraries/SDL2_mixer/README11
-rw-r--r--libraries/SDL2_mixer/SDL2_mixer.SlackBuild99
-rw-r--r--libraries/SDL2_mixer/SDL2_mixer.info10
-rw-r--r--libraries/SDL2_mixer/slack-desc19
-rw-r--r--libraries/SDL2_net/README3
-rw-r--r--libraries/SDL2_net/SDL2_net.SlackBuild100
-rw-r--r--libraries/SDL2_net/SDL2_net.info10
-rw-r--r--libraries/SDL2_net/slack-desc19
-rw-r--r--libraries/SDL2_ttf/README4
-rw-r--r--libraries/SDL2_ttf/SDL2_ttf.SlackBuild99
-rw-r--r--libraries/SDL2_ttf/SDL2_ttf.info10
-rw-r--r--libraries/SDL2_ttf/slack-desc19
-rw-r--r--libraries/SDL_sound/SDL_sound.SlackBuild1
-rw-r--r--libraries/SFGUI/SFGUI.SlackBuild18
-rw-r--r--libraries/SFGUI/SFGUI.info6
-rw-r--r--libraries/agg/agg.SlackBuild1
-rw-r--r--libraries/agg/patches/0016-bad-const.patch12
-rw-r--r--libraries/allegro/allegro.SlackBuild4
-rw-r--r--libraries/allegro/allegro.info6
-rw-r--r--libraries/avr-libc/avr-libc.SlackBuild15
-rw-r--r--libraries/avr-libc/avr-libc.info6
-rw-r--r--libraries/bamf/bamf.SlackBuild2
-rw-r--r--libraries/beignet/beignet.SlackBuild4
-rw-r--r--libraries/beignet/beignet.info6
-rw-r--r--libraries/beignet/llvm6.patch30
-rw-r--r--libraries/ccrtp/ccrtp.SlackBuild2
-rw-r--r--libraries/ccrtp/ccrtp.info6
-rw-r--r--libraries/cuneiform/cuneiform-gcc.patch98
-rw-r--r--libraries/cuneiform/cuneiform.SlackBuild12
-rw-r--r--libraries/efivar/README1
-rw-r--r--libraries/efivar/efivar.SlackBuild95
-rw-r--r--libraries/efivar/efivar.info10
-rw-r--r--libraries/efivar/slack-desc19
-rw-r--r--libraries/efl/0d2b624f1e24240a1c4e651aa1cfe9a8dd10a573.patch31
-rw-r--r--libraries/efl/efl.SlackBuild4
-rw-r--r--libraries/efl/efl.info6
-rw-r--r--libraries/fuzzylite/fuzzylite.SlackBuild6
-rw-r--r--libraries/fuzzylite/fuzzylite.info6
-rw-r--r--libraries/gstreamer-editing-services/gstreamer-editing-services.SlackBuild2
-rw-r--r--libraries/gstreamer-editing-services/gstreamer-editing-services.info6
-rw-r--r--libraries/gstreamermm/fix_warnings.patch15
-rw-r--r--libraries/gstreamermm/gstreamermm.SlackBuild3
-rw-r--r--libraries/gtkglext/gtkglext.SlackBuild3
-rw-r--r--libraries/hpx/gcc7.patch23
-rw-r--r--libraries/hpx/hpx.SlackBuild4
-rw-r--r--libraries/http-parser/http-parser.SlackBuild2
-rw-r--r--libraries/id3lib/README13
-rw-r--r--libraries/id3lib/id3lib.SlackBuild119
-rw-r--r--libraries/id3lib/id3lib.info10
-rw-r--r--libraries/id3lib/patches/id3lib-3.8.3-GCC43FIX-1.patch90
-rw-r--r--libraries/id3lib/patches/id3lib_3.8.3_UTF16_writing_bug.patch39
-rw-r--r--libraries/id3lib/patches/id3lib_Doxyfile.patch22
-rw-r--r--libraries/id3lib/slack-desc19
-rw-r--r--libraries/jansson/README1
-rw-r--r--libraries/jansson/jansson.SlackBuild99
-rw-r--r--libraries/jansson/jansson.info10
-rw-r--r--libraries/json-glib/README3
-rw-r--r--libraries/json-glib/json-glib.SlackBuild97
-rw-r--r--libraries/json-glib/json-glib.info10
-rw-r--r--libraries/json-glib/slack-desc19
-rw-r--r--libraries/lame/CVE-2017-15018.patch.gzbin307 -> 0 bytes
-rw-r--r--libraries/lame/README3
-rw-r--r--libraries/lame/lame.SlackBuild113
-rw-r--r--libraries/lame/lame.info10
-rw-r--r--libraries/lame/slack-desc19
-rw-r--r--libraries/libart-lgpl/README3
-rw-r--r--libraries/libart-lgpl/libart-lgpl.SlackBuild (renamed from audio/opusfile/opusfile.SlackBuild)12
-rw-r--r--libraries/libart-lgpl/libart-lgpl.info10
-rw-r--r--libraries/libart-lgpl/slack-desc (renamed from desktop/seafile-gui/slack-desc)23
-rw-r--r--libraries/libbluray/README15
-rw-r--r--libraries/libbluray/libbluray.SlackBuild111
-rw-r--r--libraries/libbluray/libbluray.info10
-rw-r--r--libraries/libbluray/slack-desc19
-rw-r--r--libraries/libc++/README5
-rw-r--r--libraries/libc++/libc++.SlackBuild130
-rw-r--r--libraries/libc++/libc++.info14
-rw-r--r--libraries/libc++/slack-desc19
-rw-r--r--libraries/libclaw/lib.patch11
-rw-r--r--libraries/libclaw/libclaw.SlackBuild6
-rw-r--r--libraries/libclaw/patches/01_libclaw-1.7.4-libdir.patch36
-rw-r--r--libraries/libclaw/patches/02_libclaw-1.7.4-gcc62.patch89
-rw-r--r--libraries/libclaw/patches/03_libclaw-1.7.4-gcc7.patch36
-rw-r--r--libraries/libcuefile/libcuefile.SlackBuild18
-rw-r--r--libraries/libdbus-c++/gcc47.patch10
-rw-r--r--libraries/libdbus-c++/libdbus-c++.SlackBuild22
-rw-r--r--libraries/libdbus-c++/libdbus-c++.info6
-rw-r--r--libraries/libdbus-c++/nested_variant_map.patch11
-rw-r--r--libraries/libdbus-c++/patches/libdbus-c++-gcc7.patch11
-rw-r--r--libraries/libdbus-c++/patches/libdbus-c++-glibmm-2.43.patch13
-rw-r--r--libraries/libdbus-c++/patches/libdbus-c++-nodocdatetime.patch25
-rw-r--r--libraries/libdbus-c++/patches/libdbus-c++-noreturn.patch21
-rw-r--r--libraries/libdbus-c++/patches/libdbus-c++-pthread.patch11
-rw-r--r--libraries/libdbus-c++/patches/libdbus-c++-sover.patch28
-rw-r--r--libraries/libedit/README11
-rw-r--r--libraries/libedit/libedit.SlackBuild105
-rw-r--r--libraries/libedit/libedit.info10
-rw-r--r--libraries/libedit/slack-desc19
-rw-r--r--libraries/libevhtp/libevhtp.SlackBuild10
-rw-r--r--libraries/libevhtp/libevhtp.info6
-rw-r--r--libraries/libffado/libffado.SlackBuild23
-rw-r--r--libraries/libffado/libffado.info8
-rw-r--r--libraries/libgda/libgda.SlackBuild8
-rw-r--r--libraries/libgda/libgda.info2
-rw-r--r--libraries/libgexiv2/README3
-rw-r--r--libraries/libgexiv2/libgexiv2.SlackBuild95
-rw-r--r--libraries/libgexiv2/libgexiv2.info10
-rw-r--r--libraries/libgexiv2/slack-desc19
-rw-r--r--libraries/libgksu/libgksu.SlackBuild1
-rw-r--r--libraries/libgnome/libgnome.SlackBuild6
-rw-r--r--libraries/libgnome/libgnome.info2
-rw-r--r--libraries/libgnomecanvas/libgnomecanvas.info2
-rw-r--r--libraries/libgnomeui/libgnomeui.SlackBuild6
-rw-r--r--libraries/libidn2/README5
-rw-r--r--libraries/libidn2/libidn2.SlackBuild107
-rw-r--r--libraries/libidn2/libidn2.info10
-rw-r--r--libraries/libidn2/slack-desc19
-rw-r--r--libraries/libindicator3/libindicator3.SlackBuild2
-rw-r--r--libraries/libinput/README11
-rw-r--r--libraries/libinput/libinput.SlackBuild93
-rw-r--r--libraries/libinput/libinput.info10
-rw-r--r--libraries/libinput/slack-desc19
-rw-r--r--libraries/libircclient/libircclient.SlackBuild4
-rw-r--r--libraries/libkqueue/libkqueue.SlackBuild4
-rw-r--r--libraries/libkqueue/libkqueue.info6
-rw-r--r--libraries/libmemcached/libmemcached.SlackBuild2
-rw-r--r--libraries/libmp4v2/libmp4v2.SlackBuild2
-rw-r--r--libraries/libmusicbrainz/libmusicbrainz.SlackBuild2
-rw-r--r--libraries/libmwaw/libmwaw.SlackBuild2
-rw-r--r--libraries/liboauth/liboauth-1.0.3-openssl-1.1.0-2.patch147
-rw-r--r--libraries/liboauth/liboauth.SlackBuild3
-rw-r--r--libraries/libopusenc/README2
-rw-r--r--libraries/libopusenc/libopusenc.SlackBuild99
-rw-r--r--libraries/libopusenc/libopusenc.info10
-rw-r--r--libraries/libopusenc/slack-desc19
-rw-r--r--libraries/libpqxx/libpqxx.SlackBuild16
-rw-r--r--libraries/libpqxx/libpqxx.info8
-rw-r--r--libraries/libqinfinity/libqinfinity.SlackBuild2
-rw-r--r--libraries/libqxt/libqxt-gcc6.patch11
-rw-r--r--libraries/libqxt/libqxt.SlackBuild3
-rw-r--r--libraries/libreplaygain/libreplaygain.SlackBuild16
-rw-r--r--libraries/libsearpc/libsearpc.SlackBuild14
-rw-r--r--libraries/libsearpc/libsearpc.info4
-rw-r--r--libraries/libsidplayfp/libsidplayfp.SlackBuild8
-rw-r--r--libraries/libsidplayfp/libsidplayfp.info6
-rw-r--r--libraries/libsodium/README2
-rw-r--r--libraries/libsodium/libsodium.SlackBuild98
-rw-r--r--libraries/libsodium/libsodium.info10
-rw-r--r--libraries/libsodium/slack-desc19
-rw-r--r--libraries/libtorrent/libtorrent-openssl-1.1.patch105
-rw-r--r--libraries/libtorrent/libtorrent.SlackBuild4
-rw-r--r--libraries/libtxc_dxtn/README5
-rw-r--r--libraries/libtxc_dxtn/libtxc_dxtn.SlackBuild96
-rw-r--r--libraries/libtxc_dxtn/libtxc_dxtn.info10
-rw-r--r--libraries/libtxc_dxtn/slack-desc19
-rw-r--r--libraries/libunwind/README9
-rw-r--r--libraries/libunwind/libunwind.SlackBuild104
-rw-r--r--libraries/libunwind/libunwind.info10
-rw-r--r--libraries/libunwind/slack-desc19
-rw-r--r--libraries/libvirt-glib/libvirt-glib.SlackBuild2
-rw-r--r--libraries/libvirt-glib/libvirt-glib.info6
-rw-r--r--libraries/libvirt-python/libvirt-python.SlackBuild3
-rw-r--r--libraries/libvirt-python/libvirt-python.info6
-rw-r--r--libraries/libvirt/libvirt.SlackBuild4
-rw-r--r--libraries/libvirt/libvirt.info6
-rw-r--r--libraries/libwacom/README5
-rw-r--r--libraries/libwacom/libwacom.SlackBuild102
-rw-r--r--libraries/libwacom/libwacom.info10
-rw-r--r--libraries/libwacom/slack-desc19
-rw-r--r--libraries/libwebp/README18
-rw-r--r--libraries/libwebp/libwebp.SlackBuild98
-rw-r--r--libraries/libwebp/libwebp.info10
-rw-r--r--libraries/libwebp/slack-desc19
-rw-r--r--libraries/libwebsockets/libwebsockets.SlackBuild2
-rw-r--r--libraries/libwebsockets/libwebsockets.info6
-rw-r--r--libraries/libwps/libwps.SlackBuild2
-rw-r--r--libraries/libzdb/libzdb.SlackBuild1
-rw-r--r--libraries/libzrtpcpp/libzrtpcpp.SlackBuild4
-rw-r--r--libraries/libzrtpcpp/libzrtpcpp.info6
-rw-r--r--libraries/live555/live555.SlackBuild4
-rw-r--r--libraries/med/med.SlackBuild1
-rw-r--r--libraries/npth/README11
-rw-r--r--libraries/npth/npth.SlackBuild95
-rw-r--r--libraries/npth/npth.info10
-rw-r--r--libraries/npth/slack-desc19
-rw-r--r--libraries/ocl-icd/README19
-rw-r--r--libraries/ocl-icd/ocl-icd.SlackBuild109
-rw-r--r--libraries/ocl-icd/ocl-icd.info10
-rw-r--r--libraries/ocl-icd/slack-desc19
-rw-r--r--libraries/openbabel/openbabel.SlackBuild14
-rw-r--r--libraries/openbabel/openbabel.info6
-rw-r--r--libraries/pcre2/README2
-rw-r--r--libraries/pcre2/pcre2.SlackBuild103
-rw-r--r--libraries/pcre2/pcre2.info10
-rw-r--r--libraries/physfs/physfs.SlackBuild4
-rw-r--r--libraries/podofo/podofo.SlackBuild2
-rw-r--r--libraries/poppler-qt5/poppler-qt5.SlackBuild54
-rw-r--r--libraries/poppler-qt5/poppler-qt5.info6
-rw-r--r--libraries/ptlib/ptlib-2.10.10-mga-bison-parameter.patch39
-rw-r--r--libraries/ptlib/ptlib-2.10.11-bison_fixes-2.patch2951
-rw-r--r--libraries/ptlib/ptlib.SlackBuild3
-rw-r--r--libraries/python3-PyQt5/python3-PyQt5.SlackBuild4
-rw-r--r--libraries/python3-pillow/README8
-rw-r--r--libraries/python3-pillow/python3-pillow.SlackBuild107
-rw-r--r--libraries/python3-pillow/python3-pillow.info10
-rw-r--r--libraries/python3-pillow/slack-desc19
-rw-r--r--libraries/qt5-webkit/qt5-webkit.SlackBuild4
-rw-r--r--libraries/qt5-webkit/qt5-webkit.info6
-rw-r--r--libraries/qt5/patches/0001-QSslSocket-OpenSSL-1.1-backend.patch4238
-rw-r--r--libraries/qt5/patches/qtwebengine-5.9.6-gcc8.patch24
-rw-r--r--libraries/qt5/qt5.SlackBuild18
-rw-r--r--libraries/qt5/qt5.info6
-rw-r--r--libraries/rapidjson/rapidjson.SlackBuild2
-rw-r--r--libraries/rudiments/rudiments.SlackBuild8
-rw-r--r--libraries/rudiments/rudiments.info6
-rw-r--r--libraries/sdformat/cmake.patch20
-rw-r--r--libraries/sdformat/sdformat.SlackBuild3
-rw-r--r--libraries/tls/tls.SlackBuild5
-rw-r--r--libraries/tls/tls.info6
-rw-r--r--libraries/totem-pl-parser/totem-pl-parser.SlackBuild42
-rw-r--r--libraries/totem-pl-parser/totem-pl-parser.info8
-rw-r--r--libraries/ucl/ucl.SlackBuild1
-rw-r--r--libraries/ucommon/ucommon.SlackBuild2
-rw-r--r--libraries/ucommon/ucommon.info6
-rw-r--r--libraries/vte2/README7
-rw-r--r--libraries/vte2/fix_meta_alt_keybinding.patch74
-rw-r--r--libraries/vte2/slack-desc (renamed from libraries/vte3/slack-desc)22
-rw-r--r--libraries/vte2/vte.escape.cpu.usage.diff89
-rw-r--r--libraries/vte2/vte2.SlackBuild (renamed from libraries/vte3/vte3.SlackBuild)26
-rw-r--r--libraries/vte2/vte2.info10
-rw-r--r--libraries/vte3/README7
-rw-r--r--libraries/vte3/vte3.info10
-rw-r--r--libraries/webkit2gtk/webkit2gtk.info2
-rw-r--r--libraries/webkitgtk3/webkitgtk3.SlackBuild4
-rw-r--r--libraries/wvstreams/patches/0001-Use-explicit-cast-and-prevent-compiler-error.patch50
-rw-r--r--libraries/wvstreams/patches/05_gcc.diff13
-rw-r--r--libraries/wvstreams/patches/openssl-buildfix.patch16
-rw-r--r--libraries/wvstreams/wvstreams.SlackBuild9
-rw-r--r--libraries/xf86-input-libinput/README20
-rw-r--r--libraries/xf86-input-libinput/slack-desc19
-rw-r--r--libraries/xf86-input-libinput/xf86-input-libinput.SlackBuild116
-rw-r--r--libraries/xf86-input-libinput/xf86-input-libinput.info10
-rw-r--r--libraries/xulrunner/README12
-rw-r--r--libraries/xulrunner/ftfntfmt.patch35
-rw-r--r--libraries/xulrunner/gold/gold2
-rw-r--r--libraries/xulrunner/gold/ld2
-rw-r--r--libraries/xulrunner/slack-desc19
-rw-r--r--libraries/xulrunner/xulrunner.SlackBuild162
-rw-r--r--libraries/xulrunner/xulrunner.info10
-rw-r--r--libraries/yaml-cpp/boost_patch.diff11
-rw-r--r--libraries/yaml-cpp/yaml-cpp.SlackBuild2
-rw-r--r--misc/dmg2img/0001-openssl-1.1-compatibility.patch219
-rw-r--r--misc/dmg2img/dmg2img.SlackBuild3
-rw-r--r--misc/glogg/glogg.SlackBuild4
-rw-r--r--misc/glogg/glogg.info8
-rw-r--r--misc/gourmet/gourmet.SlackBuild5
-rw-r--r--misc/gourmet/gourmet.info2
-rw-r--r--misc/gourmet/slack-desc2
-rw-r--r--misc/gourmet/tostring-to-tobytes.patch26
-rw-r--r--misc/ibus-unikey/ibus-unikey.SlackBuild2
-rw-r--r--misc/krename/krename.SlackBuild3
-rw-r--r--misc/krename/null.patch12
-rw-r--r--misc/stardict-tools/stardict-tools.SlackBuild3
-rw-r--r--misc/xca/xca.SlackBuild4
-rw-r--r--misc/yapet/gcc6.patch11
-rw-r--r--misc/yapet/yapet.SlackBuild3
-rw-r--r--misc/zinnia/zinnia-fixes-gcc6-compile.patch22
-rw-r--r--misc/zinnia/zinnia.SlackBuild3
-rw-r--r--multimedia/MuseScore/MuseScore.SlackBuild3
-rw-r--r--multimedia/MuseScore/all.h.patch18
-rw-r--r--multimedia/aegisub/aegisub.SlackBuild5
-rw-r--r--multimedia/aegisub/boost-1.68.patch34
-rw-r--r--multimedia/aegisub/icu59.patch.gzbin0 -> 240 bytes
-rw-r--r--multimedia/bombono-dvd/bombono-dvd.SlackBuild2
-rw-r--r--multimedia/bombono-dvd/patches/fix_operator_ambiguity.patch352
-rw-r--r--multimedia/bombono-dvd/patches/fix_throw_specifications.patch24
-rw-r--r--multimedia/dvgrab/dvgrab.SlackBuild2
-rw-r--r--multimedia/ffmpeg/README70
-rw-r--r--multimedia/ffmpeg/ffmpeg-3.2.4-libfdk_aac-2.0.0.patch11
-rw-r--r--multimedia/ffmpeg/ffmpeg-3.2.4-openjpeg2.3.patch102
-rw-r--r--multimedia/ffmpeg/ffmpeg.SlackBuild261
-rw-r--r--multimedia/ffmpeg/ffmpeg.info10
-rw-r--r--multimedia/ffmpeg/slack-desc19
-rw-r--r--multimedia/ffmpeg4/ffmpeg4.SlackBuild2
-rw-r--r--multimedia/gnash/gnash.SlackBuild42
-rw-r--r--multimedia/gnash/gnash.info8
-rw-r--r--multimedia/gnash/patch/58dcdd9338d965e54c8f03ce3d2757388d82b7a3.patch25
-rw-r--r--multimedia/gnash/patch/cc22f2d0597f3a9547980f4786d918f8b5635472.patch31
-rw-r--r--multimedia/gnash/patch/gcc47.patch11
-rw-r--r--multimedia/gnash/patch/gnash-0.8.10-boost-1.50.patch24
-rw-r--r--multimedia/gnash/patch/gnash-0.8.10-cve-2012-1175.patch63
-rw-r--r--multimedia/gnash/patch/gnash-0.8.10-kde4-libdir.patch12
-rw-r--r--multimedia/gnash/patch/gnash-0.8.10-klash.patch12
-rw-r--r--multimedia/gnash/patch/gnash-boost.patch14
-rw-r--r--multimedia/gpac/gpac.SlackBuild3
-rw-r--r--multimedia/gst-libav/README2
-rw-r--r--multimedia/gst-libav/gst-libav.SlackBuild96
-rw-r--r--multimedia/gst-libav/gst-libav.info10
-rw-r--r--multimedia/gst-libav/slack-desc19
-rw-r--r--multimedia/gst-plugins-bad/README4
-rw-r--r--multimedia/gst-plugins-bad/gst-plugins-bad.SlackBuild19
-rw-r--r--multimedia/gst-plugins-bad/gst-plugins-bad.info6
-rw-r--r--multimedia/gst-plugins-bad/libfdk-aac-2.0.0-1.patch47
-rw-r--r--multimedia/gst-plugins-bad/libfdk-aac-2.0.0-2.patch30
-rw-r--r--multimedia/gst-plugins-ugly/gst-plugins-ugly.SlackBuild8
-rw-r--r--multimedia/gst-plugins-ugly/gst-plugins-ugly.info6
-rw-r--r--multimedia/gst0-plugins-bad/gst0-plugins-bad.SlackBuild2
-rw-r--r--multimedia/k9copy-reloaded/k9copy-reloaded.SlackBuild1
-rw-r--r--multimedia/k9copy-reloaded/patches/ffmpeg3andgcc6.patch74
-rw-r--r--multimedia/kdenlive/kdenlive.SlackBuild3
-rw-r--r--multimedia/mkvtoolnix/boost-1.69.0.patch51
-rw-r--r--multimedia/mkvtoolnix/mkvtoolnix.SlackBuild5
-rw-r--r--multimedia/mkvtoolnix/mkvtoolnix.info6
-rw-r--r--multimedia/mlt/mlt.SlackBuild4
-rw-r--r--multimedia/mythtv/libvpxenc.patch42
-rw-r--r--multimedia/mythtv/mythtv.SlackBuild8
-rw-r--r--multimedia/mythtv/mythtv.info8
-rw-r--r--multimedia/oggvideotools/oggvideotools.SlackBuild2
-rw-r--r--multimedia/rtmpdump/rtmpdump.SlackBuild8
-rw-r--r--multimedia/smpeg/smpeg.SlackBuild4
-rw-r--r--multimedia/spotify/spotify.SlackBuild9
-rw-r--r--multimedia/spotify/spotify.info14
-rw-r--r--multimedia/subtitleeditor/fix-23714-cxx11-v2.patch273
-rw-r--r--multimedia/subtitleeditor/subtitleeditor.SlackBuild13
-rw-r--r--multimedia/subtitleeditor/subtitleeditor.info6
-rw-r--r--multimedia/tvheadend/tvheadend.SlackBuild5
-rw-r--r--multimedia/tvheadend/tvheadend.info6
-rw-r--r--multimedia/tvtime/tvtime.SlackBuild23
-rw-r--r--multimedia/tvtime/tvtime.info6
-rw-r--r--multimedia/vcdimager/vcdimager.SlackBuild14
-rw-r--r--multimedia/vcdimager/vcdimager.info6
-rw-r--r--multimedia/vlc/README4
-rw-r--r--multimedia/vlc/vlc.SlackBuild7
-rw-r--r--network/NetworkManager-openvpn/NetworkManager-openvpn.SlackBuild2
-rw-r--r--network/NetworkManager-openvpn/NetworkManager-openvpn.info6
-rw-r--r--network/RSSOwl/RSSOwl.SlackBuild2
-rw-r--r--network/bip/bip.SlackBuild2
-rw-r--r--network/bitcoin/bitcoin.SlackBuild2
-rw-r--r--network/bitcoin/boost-1.66.0.patch82
-rw-r--r--network/bro/bro.SlackBuild7
-rw-r--r--network/bwm-ng/bwm-ng.SlackBuild3
-rw-r--r--network/bwm-ng/fix_gcc7_inline.patch40
-rw-r--r--network/ccnet/ccnet.SlackBuild10
-rw-r--r--network/ccnet/ccnet.info6
-rw-r--r--network/cherokee/cherokee.SlackBuild8
-rw-r--r--network/cherokee/cherokee.info6
-rw-r--r--network/dobbscoin/dobbscoin.SlackBuild9
-rw-r--r--network/dovecot/README27
-rw-r--r--network/dovecot/doinst.sh26
-rw-r--r--network/dovecot/dovecot.SlackBuild133
-rw-r--r--network/dovecot/dovecot.info10
-rw-r--r--network/dovecot/rc.dovecot55
-rw-r--r--network/dovecot/slack-desc19
-rw-r--r--network/dsniff/24_Fix-OpenSSL1.1.0-Build.patch202
-rw-r--r--network/dsniff/dsniff.SlackBuild2
-rw-r--r--network/emacs-w3m/emacs-w3m.SlackBuild8
-rw-r--r--network/emacs-w3m/emacs-w3m.info6
-rw-r--r--network/ettercap/ettercap.SlackBuild3
-rw-r--r--network/ettercap/patches/0001-First-draft-of-openssl-1.1-compatibility-layer-from-.patch257
-rw-r--r--network/ettercap/patches/CVE-2017-6430.patch68
-rw-r--r--network/ettercap/patches/CVE-2017-8366.patch258
-rw-r--r--network/fcgiwrap/fcgiwrap.SlackBuild2
-rw-r--r--network/fqterm/fqterm.SlackBuild32
-rw-r--r--network/fqterm/fqterm.info6
-rw-r--r--network/hylafax/gcc.patch12
-rw-r--r--network/hylafax/hylafax.SlackBuild2
-rw-r--r--network/ifstatus/README10
-rw-r--r--network/ifstatus/ifstatus.SlackBuild91
-rw-r--r--network/ifstatus/ifstatus.info10
-rw-r--r--network/ifstatus/ifstatus.patch66
-rw-r--r--network/ifstatus/slack-desc19
-rw-r--r--network/iperf/iperf.SlackBuild29
-rw-r--r--network/iperf/iperf.info6
-rw-r--r--network/iperf/patches/0_iperf-2.0.8-debuginfo.patch17
-rw-r--r--network/iperf/patches/1_iperf-2.0.8-bindfail.patch42
-rw-r--r--network/iperf/patches/2_iperf-2.0.8-math.patch75
-rw-r--r--network/jigdo/jigdo-0.7.3-gcc7.patch39
-rw-r--r--network/jigdo/jigdo.SlackBuild3
-rw-r--r--network/kmess/README5
-rw-r--r--network/kmess/doinst.sh10
-rw-r--r--network/kmess/giflib-5.0.patch95
-rw-r--r--network/kmess/kmess.SlackBuild100
-rw-r--r--network/kmess/kmess.info10
-rw-r--r--network/kmess/slack-desc19
-rw-r--r--network/knock/knock.SlackBuild26
-rw-r--r--network/knock/knock.info6
-rw-r--r--network/leechcraft/README26
-rw-r--r--network/leechcraft/doinst.sh22
-rw-r--r--network/leechcraft/leechcraft.SlackBuild111
-rw-r--r--network/leechcraft/leechcraft.info10
-rw-r--r--network/leechcraft/slack-desc19
-rw-r--r--network/linuxdcpp/linuxdcpp.SlackBuild2
-rw-r--r--network/memcached/memcached.SlackBuild2
-rw-r--r--network/midori/README10
-rw-r--r--network/midori/doinst.sh16
-rw-r--r--network/midori/midori.SlackBuild47
-rw-r--r--network/midori/midori.info10
-rw-r--r--network/midori/slack-desc6
-rw-r--r--network/mldonkey/mldonkey.SlackBuild20
-rw-r--r--network/mldonkey/mldonkey.info6
-rw-r--r--network/mosh/mosh.SlackBuild2
-rw-r--r--network/mumble/boost-1.66.patch32
-rw-r--r--network/mumble/mumble.SlackBuild3
-rw-r--r--network/museek+/README23
-rw-r--r--network/museek+/doinst.sh26
-rw-r--r--network/museek+/museek+.SlackBuild90
-rw-r--r--network/museek+/museek+.info10
-rw-r--r--network/museek+/museek-python.diff44
-rw-r--r--network/museek+/rc.museekd105
-rw-r--r--network/museek+/slack-desc19
-rw-r--r--network/ncrack/ncrack.SlackBuild2
-rw-r--r--network/nghttp2/README4
-rw-r--r--network/nghttp2/nghttp2.SlackBuild102
-rw-r--r--network/nghttp2/nghttp2.info10
-rw-r--r--network/nghttp2/slack-desc19
-rw-r--r--network/opendkim/opendkim.SlackBuild3
-rw-r--r--network/opendkim/openssl_1.1.0_compat.patch90
-rw-r--r--network/pidgin-musictracker/pidgin-musictracker.SlackBuild2
-rw-r--r--network/postfix/README39
-rw-r--r--network/postfix/doinst.sh40
-rw-r--r--network/postfix/patches/postconf.diff31
-rw-r--r--network/postfix/postfix.SlackBuild199
-rw-r--r--network/postfix/postfix.info10
-rw-r--r--network/postfix/rc.postfix67
-rw-r--r--network/postfix/slack-desc19
-rw-r--r--network/razor-agents/razor-agents.SlackBuild2
-rw-r--r--network/remmina/find_libssh.patch25
-rw-r--r--network/remmina/remmina.SlackBuild2
-rw-r--r--network/seafile-client/seafile-client.SlackBuild103
-rw-r--r--network/seafile-client/seafile-client.info10
-rw-r--r--network/seafile/README (renamed from network/seafile-client/README)0
-rw-r--r--network/seafile/seafile.SlackBuild (renamed from system/parallel/parallel.SlackBuild)21
-rw-r--r--network/seafile/seafile.info10
-rw-r--r--network/seafile/slack-desc (renamed from libraries/jansson/slack-desc)22
-rw-r--r--network/sqlrelay/sqlrelay.SlackBuild8
-rw-r--r--network/sqlrelay/sqlrelay.info6
-rw-r--r--network/sshfs-fuse/README10
-rw-r--r--network/sshfs-fuse/slack-desc19
-rw-r--r--network/sshfs-fuse/sshfs-fuse.SlackBuild99
-rw-r--r--network/sshfs-fuse/sshfs-fuse.info10
-rw-r--r--network/transmission-remote-gtk/README4
-rw-r--r--network/transmission-remote-gtk/transmission-remote-gtk.SlackBuild18
-rw-r--r--network/transmission-remote-gtk/transmission-remote-gtk.info6
-rw-r--r--network/vde2/vde2.SlackBuild3
-rw-r--r--network/vde2/vde_cryptcab-compile-against-openssl-1.1.0.patch92
-rw-r--r--network/verlihub/verlihub-gcc7.patch18
-rw-r--r--network/verlihub/verlihub.SlackBuild3
-rw-r--r--office/LibreOffice/LibreOffice.SlackBuild1
-rw-r--r--office/abiword/abiword.SlackBuild2
-rw-r--r--office/abiword/libical-deprecated.patch13
-rw-r--r--office/apvlv/apvlv.SlackBuild25
-rw-r--r--office/apvlv/apvlv.info6
-rw-r--r--office/calibre/calibre.SlackBuild4
-rw-r--r--office/coolreader/coolreader.SlackBuild45
-rw-r--r--office/coolreader/coolreader.info6
-rw-r--r--office/fbreader/fbreader.SlackBuild3
-rw-r--r--office/gbgoffice/gbgoffice.SlackBuild1
-rw-r--r--office/gbgoffice/patches/12_gcc6.patch21
-rw-r--r--office/gnokii/gnokii-0.6.31-gcc7.patch17
-rw-r--r--office/gnokii/gnokii.SlackBuild3
-rw-r--r--office/gnucash-legacy/gnucash-legacy.info2
-rw-r--r--office/gnumeric/gnumeric.SlackBuild4
-rw-r--r--office/htmldoc/build_fix.patch13
-rw-r--r--office/htmldoc/htmldoc.SlackBuild20
-rw-r--r--office/htmldoc/htmldoc.info6
-rw-r--r--office/juffed/README6
-rw-r--r--office/juffed/juffed.SlackBuild98
-rw-r--r--office/juffed/juffed.info10
-rw-r--r--office/juffed/slack-desc19
-rw-r--r--office/kbgoffice/gcc6.patch17
-rw-r--r--office/kbgoffice/kbgoffice.SlackBuild3
-rw-r--r--office/pdfjam/README4
-rw-r--r--office/pdfjam/pdfjam.SlackBuild56
-rw-r--r--office/pdfjam/pdfjam.info10
-rw-r--r--office/pdfjam/slack-desc19
-rw-r--r--office/pdftk/README7
-rw-r--r--office/pdftk/pdftk-1.44-add_custom_optflags.patch26
-rw-r--r--office/pdftk/pdftk-2.02-use-gcc5.patch15
-rw-r--r--office/pdftk/pdftk.SlackBuild11
-rw-r--r--office/pdftk/pdftk.info2
-rw-r--r--office/qpdfview/qpdfview-synctex-2018.patch85
-rw-r--r--office/qpdfview/qpdfview.SlackBuild7
-rw-r--r--office/qpdfview/qpdfview.info6
-rw-r--r--office/referencer/referencer-lib_path.patch11
-rw-r--r--office/referencer/referencer.SlackBuild3
-rw-r--r--office/sc-im/README2
-rw-r--r--office/sc-im/sc-im.SlackBuild99
-rw-r--r--office/sc-im/sc-im.info10
-rw-r--r--office/sc-im/slack-desc19
-rw-r--r--office/scribus/scribus.SlackBuild10
-rw-r--r--office/scribus/scribus.info6
-rw-r--r--office/texlive/README14
-rw-r--r--office/texlive/README.tlpkg17
-rw-r--r--office/texlive/doinst.sh5
-rw-r--r--office/texlive/patches/20180625.diff688
-rw-r--r--office/texlive/patches/synctex-missing-header.patch18
-rw-r--r--office/texlive/prep/texmf_get.sh1076
-rw-r--r--office/texlive/slack-desc19
-rw-r--r--office/texlive/texlive.SlackBuild254
-rw-r--r--office/texlive/texlive.info12
-rw-r--r--perl/perl-Authen-SASL/README5
-rw-r--r--perl/perl-Authen-SASL/perl-Authen-SASL.SlackBuild106
-rw-r--r--perl/perl-Authen-SASL/perl-Authen-SASL.info10
-rw-r--r--perl/perl-Authen-SASL/slack-desc19
-rw-r--r--perl/perl-DateTime-Format-Strptime/perl-DateTime-Format-Strptime.SlackBuild1
-rw-r--r--perl/perl-Devel-CheckLib/README2
-rw-r--r--perl/perl-Devel-CheckLib/perl-Devel-CheckLib.SlackBuild98
-rw-r--r--perl/perl-Devel-CheckLib/perl-Devel-CheckLib.info10
-rw-r--r--perl/perl-Devel-CheckLib/slack-desc19
-rw-r--r--perl/perl-Gnome2-Vte/perl-Gnome2-Vte.info2
-rw-r--r--perl/perl-Module-Runtime/perl-Module-Runtime.SlackBuild16
-rw-r--r--perl/perl-Module-Runtime/perl-Module-Runtime.info6
-rw-r--r--perl/perl-cairo/perl-cairo.SlackBuild2
-rw-r--r--perl/perl-libnet/README3
-rw-r--r--perl/perl-libnet/libnet-3.08-Do-not-create-Net-libnet.cfg.patch43
-rw-r--r--perl/perl-libnet/perl-libnet.SlackBuild104
-rw-r--r--perl/perl-libnet/perl-libnet.info10
-rw-r--r--perl/perl-libnet/slack-desc19
-rw-r--r--python/Mako/Mako.SlackBuild69
-rw-r--r--python/Mako/Mako.info10
-rw-r--r--python/Mako/README9
-rw-r--r--python/Mako/slack-desc19
-rw-r--r--python/dbus-python3/README6
-rw-r--r--python/dbus-python3/dbus-python3.SlackBuild101
-rw-r--r--python/dbus-python3/dbus-python3.info10
-rw-r--r--python/dbus-python3/slack-desc19
-rw-r--r--python/gst-python/gst-python.SlackBuild8
-rw-r--r--python/gst-python/gst-python.info6
-rw-r--r--python/gst-python3/gst-python3.SlackBuild4
-rw-r--r--python/gst-python3/gst-python3.info6
-rw-r--r--python/halberd/halberd.SlackBuild3
-rw-r--r--python/halberd/make-pdf-manual.diff14
-rw-r--r--python/idna/README3
-rw-r--r--python/idna/idna.info10
-rw-r--r--python/idna/slack-desc19
-rw-r--r--python/packaging/README1
-rw-r--r--python/packaging/packaging.SlackBuild86
-rw-r--r--python/packaging/packaging.info10
-rw-r--r--python/packaging/slack-desc19
-rw-r--r--python/pip/README24
-rw-r--r--python/pip/pip.SlackBuild71
-rw-r--r--python/pip/pip.info10
-rw-r--r--python/pip/pip.sh9
-rw-r--r--python/pip/slack-desc19
-rw-r--r--python/py3cairo/README8
-rw-r--r--python/py3cairo/py3cairo.SlackBuild108
-rw-r--r--python/py3cairo/py3cairo.info10
-rw-r--r--python/py3cairo/pycairo-1.10.0-waf_python_3_4-1.patch19
-rw-r--r--python/py3cairo/pycairo-1.10.0-waf_unpack-1.patch20
-rw-r--r--python/py3cairo/slack-desc19
-rw-r--r--python/pygobject3-python3/README3
-rw-r--r--python/pygobject3-python3/pygobject3-python3.SlackBuild100
-rw-r--r--python/pygobject3-python3/pygobject3-python3.info10
-rw-r--r--python/pygobject3-python3/slack-desc19
-rw-r--r--python/pyparsing/README5
-rw-r--r--python/pyparsing/pyparsing.SlackBuild87
-rw-r--r--python/pyparsing/pyparsing.info10
-rw-r--r--python/pyparsing/slack-desc19
-rw-r--r--python/python-certifi/README5
-rw-r--r--python/python-certifi/python-certifi.SlackBuild90
-rw-r--r--python/python-certifi/python-certifi.info10
-rw-r--r--python/python-certifi/slack-desc19
-rw-r--r--python/python-chardet/README3
-rw-r--r--python/python-chardet/python-chardet.SlackBuild76
-rw-r--r--python/python-chardet/python-chardet.info10
-rw-r--r--python/python-chardet/slack-desc19
-rw-r--r--python/python-gattlib/dont_hardcode_python_versions.patch19
-rw-r--r--python/python-gattlib/python-gattlib.SlackBuild2
-rw-r--r--python/python-notify2/README4
-rw-r--r--python/python-notify2/python-notify2.SlackBuild86
-rw-r--r--python/python-notify2/python-notify2.info10
-rw-r--r--python/python-notify2/slack-desc19
-rw-r--r--python/python-requests/README4
-rw-r--r--python/python-requests/python-requests.SlackBuild91
-rw-r--r--python/python-requests/python-requests.info10
-rw-r--r--python/python-requests/slack-desc19
-rw-r--r--python/python-urllib3/README12
-rw-r--r--python/python-urllib3/python-urllib3.SlackBuild89
-rw-r--r--python/python-urllib3/python-urllib3.info10
-rw-r--r--python/python-urllib3/slack-desc19
-rw-r--r--python/python2-sip/README15
-rw-r--r--python/python2-sip/python2-sip.SlackBuild119
-rw-r--r--python/python2-sip/python2-sip.info10
-rw-r--r--python/python2-sip/slack-desc19
-rw-r--r--python/python3-Cython/README5
-rw-r--r--python/python3-Cython/python3-Cython.SlackBuild89
-rw-r--r--python/python3-Cython/python3-Cython.info10
-rw-r--r--python/python3-Cython/slack-desc19
-rw-r--r--python/python3-appdirs/README2
-rw-r--r--python/python3-appdirs/python3-appdirs.SlackBuild86
-rw-r--r--python/python3-appdirs/python3-appdirs.info10
-rw-r--r--python/python3-appdirs/slack-desc19
-rw-r--r--python/python3-pyparsing/README8
-rw-r--r--python/python3-pyparsing/python3-pyparsing.SlackBuild88
-rw-r--r--python/python3-pyparsing/python3-pyparsing.info10
-rw-r--r--python/python3-pyparsing/slack-desc19
-rw-r--r--python/python3-sip/README4
-rw-r--r--python/python3-sip/python3-sip.SlackBuild108
-rw-r--r--python/python3-sip/python3-sip.info10
-rw-r--r--python/python3-sip/slack-desc19
-rw-r--r--python/python3-six/README4
-rw-r--r--python/python3-six/python3-six.SlackBuild75
-rw-r--r--python/python3-six/python3-six.info10
-rw-r--r--python/python3-six/slack-desc19
-rw-r--r--python/python3/README18
-rw-r--r--python/python3/patches/python3.no-static-library.diff59
-rw-r--r--python/python3/patches/python3.readline.set_pre_input_hook.diff12
-rw-r--r--python/python3/patches/python3.x86_64.diff164
-rw-r--r--python/python3/python3.SlackBuild155
-rw-r--r--python/python3/python3.info10
-rw-r--r--python/python3/slack-desc19
-rw-r--r--python/six/README6
-rw-r--r--python/six/six.SlackBuild83
-rw-r--r--python/six/six.info10
-rw-r--r--python/six/slack-desc19
-rw-r--r--python/typing/README4
-rw-r--r--python/typing/slack-desc19
-rw-r--r--python/typing/typing.SlackBuild90
-rw-r--r--python/typing/typing.info10
-rw-r--r--system/acpi_call/acpi_call.SlackBuild3
-rw-r--r--system/brasero/brasero.SlackBuild2
-rw-r--r--system/bulk_extractor/bulk_extractor.SlackBuild6
-rw-r--r--system/bulk_extractor/bulk_extractor.info6
-rw-r--r--system/caprice32/caprice32.SlackBuild2
-rw-r--r--system/colord/colord.SlackBuild5
-rw-r--r--system/conky/conky-1.10.6-gcc7.patch11
-rw-r--r--system/conky/conky.SlackBuild3
-rw-r--r--system/dash/README4
-rw-r--r--system/dash/dash.SlackBuild90
-rw-r--r--system/dash/dash.info10
-rw-r--r--system/dash/slack-desc19
-rw-r--r--system/dymo-cups-drivers/cups-ppd-header.patch40
-rw-r--r--system/dymo-cups-drivers/dymo-cups-drivers.SlackBuild3
-rw-r--r--system/dynamips/dynamips.SlackBuild1
-rw-r--r--system/ecryptfs-utils/ecryptfs-utils.SlackBuild4
-rw-r--r--system/ecryptfs-utils/openssl.patch76
-rw-r--r--system/efitools/efitools.SlackBuild8
-rw-r--r--system/efitools/efitools.info6
-rw-r--r--system/evilvte/evilvte.info2
-rw-r--r--system/extundelete/extundelete-e2fsprogs-1.44.1.patch12
-rw-r--r--system/extundelete/extundelete.SlackBuild2
-rw-r--r--system/f2fs_tools/README1
-rw-r--r--system/f2fs_tools/f2fs_tools.SlackBuild88
-rw-r--r--system/f2fs_tools/f2fs_tools.info10
-rw-r--r--system/facter/facter.SlackBuild2
-rw-r--r--system/gnome-terminal/gnome-terminal.info2
-rw-r--r--system/gnome-vfs/gnome-vfs.SlackBuild2
-rw-r--r--system/guake/guake.info2
-rw-r--r--system/guefi/README3
-rw-r--r--system/guefi/guefi.SlackBuild (renamed from python/idna/idna.SlackBuild)22
-rw-r--r--system/guefi/guefi.info10
-rw-r--r--system/guefi/slack-desc (renamed from libraries/pcre2/slack-desc)22
-rw-r--r--system/haveged/README27
-rw-r--r--system/haveged/doinst.sh28
-rw-r--r--system/haveged/haveged.SlackBuild121
-rw-r--r--system/haveged/haveged.info10
-rw-r--r--system/haveged/rc.haveged47
-rw-r--r--system/haveged/slack-desc19
-rw-r--r--system/innotop/README6
-rw-r--r--system/innotop/innotop.SlackBuild74
-rw-r--r--system/innotop/innotop.info10
-rw-r--r--system/innotop/slack-desc19
-rw-r--r--system/ipmitool/ipmitool.SlackBuild28
-rw-r--r--system/ipmitool/ipmitool.info6
-rw-r--r--system/ipmitool/openssl-1.1.x.patch89
-rw-r--r--system/jmtpfs/README10
-rw-r--r--system/jmtpfs/jmtpfs.SlackBuild91
-rw-r--r--system/jmtpfs/jmtpfs.info10
-rw-r--r--system/jmtpfs/slack-desc19
-rw-r--r--system/kyotocabinet/kyotocabinet-1.2.76-gcc6.patch45
-rw-r--r--system/kyotocabinet/kyotocabinet.SlackBuild5
-rw-r--r--system/lbzip2/README2
-rw-r--r--system/lbzip2/lbzip2.SlackBuild121
-rw-r--r--system/lbzip2/lbzip2.info10
-rw-r--r--system/lbzip2/slack-desc19
-rw-r--r--system/lilyterm/lilyterm.SlackBuild2
-rw-r--r--system/lilyterm/lilyterm.info8
-rw-r--r--system/lxterminal/lxterminal.info2
-rw-r--r--system/mailutils/mailutils.SlackBuild7
-rw-r--r--system/mailutils/mailutils.info6
-rw-r--r--system/man-db/README13
-rw-r--r--system/man-db/README.Slackware49
-rw-r--r--system/man-db/doinst.sh48
-rw-r--r--system/man-db/dont_write_in_usr.diff50
-rw-r--r--system/man-db/man-db.SlackBuild230
-rw-r--r--system/man-db/man-db.cron30
-rw-r--r--system/man-db/man-db.csh12
-rw-r--r--system/man-db/man-db.info12
-rw-r--r--system/man-db/man-db.sh16
-rw-r--r--system/man-db/man_db.conf.new.gzbin2404 -> 0 bytes
-rw-r--r--system/man-db/slack-desc19
-rw-r--r--system/numactl/numactl.SlackBuild12
-rw-r--r--system/numactl/numactl.info6
-rw-r--r--system/nvidia-driver/nvidia-driver.SlackBuild13
-rw-r--r--system/nvidia-driver/nvidia-switch4
-rw-r--r--system/nvidia-legacy304-kernel/4.14_kernel.patch26
-rw-r--r--system/nvidia-legacy304-kernel/4.15_kernel.patch48
-rw-r--r--system/nvidia-legacy304-kernel/nvidia-legacy304-kernel.SlackBuild4
-rw-r--r--system/nvidia-legacy340-driver/nvidia-legacy340-driver.SlackBuild2
-rw-r--r--system/nvidia-legacy340-driver/nvidia-legacy340-driver.info42
-rw-r--r--system/nvidia-legacy340-kernel/nvidia-legacy340-kernel.SlackBuild3
-rw-r--r--system/nvidia-legacy340-kernel/nvidia-legacy340-kernel.info10
-rw-r--r--system/nvidia-legacy390-driver/nvidia-legacy390-driver.SlackBuild13
-rw-r--r--system/nvidia-legacy390-driver/nvidia-switch4
-rw-r--r--system/nvidia-legacy390-kernel/4.18.patch24
-rw-r--r--system/nvidia-legacy390-kernel/4.19.patch23
-rw-r--r--system/nvidia-legacy390-kernel/4.20.patch20
-rw-r--r--system/nvidia-legacy390-kernel/nvidia-legacy390-kernel.SlackBuild5
-rw-r--r--system/opensc/opensc.SlackBuild14
-rw-r--r--system/opensc/opensc.info6
-rw-r--r--system/packagekit/doinst.sh1
-rw-r--r--system/packagekit/force_polkit_version.patch16
-rw-r--r--system/packagekit/packagekit.SlackBuild6
-rw-r--r--system/packagekit/packagekit.info8
-rw-r--r--system/parallel/README9
-rw-r--r--system/parallel/parallel.info10
-rw-r--r--system/parallel/slack-desc19
-rw-r--r--system/patchelf/README3
-rw-r--r--system/patchelf/patchelf.SlackBuild97
-rw-r--r--system/patchelf/patchelf.info10
-rw-r--r--system/patchelf/slack-desc19
-rw-r--r--system/percona-xtrabackup/README2
-rw-r--r--system/percona-xtrabackup/percona-xtrabackup.SlackBuild155
-rw-r--r--system/percona-xtrabackup/percona-xtrabackup.info10
-rw-r--r--system/percona-xtrabackup/slack-desc19
-rw-r--r--system/roxterm/roxterm.info2
-rw-r--r--system/rxvt-unicode/README8
-rw-r--r--system/rxvt-unicode/rxvt-unicode.SlackBuild162
-rw-r--r--system/rxvt-unicode/rxvt-unicode.desktop9
-rw-r--r--system/rxvt-unicode/rxvt-unicode.info10
-rw-r--r--system/rxvt-unicode/slack-desc19
-rw-r--r--system/rxvt-unicode/urxvt.xpm141
-rw-r--r--system/sbsigntools/autogen.patch277
-rw-r--r--system/sbsigntools/ccan_makefile.patch20
-rw-r--r--system/sbsigntools/fix_efi_arch.patch26
-rw-r--r--system/sbsigntools/sbsigntools.SlackBuild33
-rw-r--r--system/sbsigntools/sbsigntools.info8
-rw-r--r--system/spacefm/glibc-2.28.patch12
-rw-r--r--system/spacefm/spacefm.SlackBuild3
-rw-r--r--system/t1utils/README17
-rw-r--r--system/t1utils/slack-desc19
-rw-r--r--system/t1utils/t1utils.SlackBuild100
-rw-r--r--system/t1utils/t1utils.info10
-rw-r--r--system/terminator/terminator.info2
-rw-r--r--system/tinyterm/tinyterm.info2
-rw-r--r--system/ttyrec/ttyrec.SlackBuild2
-rw-r--r--system/uhd/uhd.SlackBuild14
-rw-r--r--system/uhd/uhd.info8
-rw-r--r--system/virt-manager/Add-Slackware-to-OS-choices.patch30
-rw-r--r--system/virt-manager/virt-manager.SlackBuild6
-rw-r--r--system/virt-manager/virt-manager.info8
-rw-r--r--system/virtualbox-addons/rc.vboxadd.diff303
-rw-r--r--system/virtualbox-addons/virtualbox-addons.SlackBuild44
-rw-r--r--system/virtualbox-addons/virtualbox-addons.info6
-rw-r--r--system/virtualbox-extension-pack/virtualbox-extension-pack.SlackBuild4
-rw-r--r--system/virtualbox-extension-pack/virtualbox-extension-pack.info6
-rw-r--r--system/virtualbox-kernel-addons/virtualbox-kernel-addons.SlackBuild24
-rw-r--r--system/virtualbox-kernel-addons/virtualbox-kernel-addons.info6
-rw-r--r--system/virtualbox-kernel/virtualbox-kernel.SlackBuild14
-rw-r--r--system/virtualbox-kernel/virtualbox-kernel.info6
-rw-r--r--system/virtualbox/LocalConfig.kmk3
-rw-r--r--system/virtualbox/vboxdrv.sh-setup.diff299
-rw-r--r--system/virtualbox/virtualbox-gsoap.patch40
-rw-r--r--system/virtualbox/virtualbox.SlackBuild26
-rw-r--r--system/virtualbox/virtualbox.info20
-rw-r--r--system/xnp2/gcc6.patch17
-rw-r--r--system/xnp2/xnp2.SlackBuild3
-rw-r--r--system/zstd/README5
-rw-r--r--system/zstd/slack-desc19
-rw-r--r--system/zstd/zstd.SlackBuild88
-rw-r--r--system/zstd/zstd.info10
1196 files changed, 23947 insertions, 21731 deletions
diff --git a/README b/README
index 2a7d813872..b31c68f074 100644
--- a/README
+++ b/README
@@ -1,3 +1,19 @@
+SBo-git - slackbuilds repository for slackware-current
+- - -
+
+this is a unofficial fork of master branch from slackbuilds.org's
+git repository (http://slackbuilds.org/cgit/slackbuilds/).
+
+here I put my unofficial mods to their slackbuilds to run on
+slackware-current with sbopkg (http://www.sbopkg.org).
+
+Check https://github.com/Ponce/slackbuilds/wiki for additional informations.
+
+See https://github.com/Ponce/slackbuilds/wiki/configuring-the-current-repository-with-sbopkg
+for instructions on how to use this repository with sbopkg.
+
+original README from slackbuilds.org follows:
+---------------------------------------------
See https://slackbuilds.org/howto/ for instructions on
how to use the contents of this directory.
diff --git a/academic/antiprism/antiprism.SlackBuild b/academic/antiprism/antiprism.SlackBuild
index 271184a166..f3c6c291e6 100644
--- a/academic/antiprism/antiprism.SlackBuild
+++ b/academic/antiprism/antiprism.SlackBuild
@@ -55,7 +55,7 @@ find -L . \
sed "/^docdir/s|= .*|= @docdir@|" -i Makefile.in
CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS -fpermissive" \
./configure \
--prefix=/usr \
--libdir=/usr/lib$LIBDIRSUFFIX \
diff --git a/academic/gelemental/gcc.patch b/academic/gelemental/gcc.patch
new file mode 100644
index 0000000000..eeb16293d9
--- /dev/null
+++ b/academic/gelemental/gcc.patch
@@ -0,0 +1,12 @@
+diff -Naur gelemental-1.2.0.orig/src/dialogs.cc gelemental-1.2.0/src/dialogs.cc
+--- gelemental-1.2.0.orig/src/dialogs.cc 2007-09-25 06:49:33.000000000 +0200
++++ gelemental-1.2.0/src/dialogs.cc 2017-07-27 21:45:34.356776770 +0200
+@@ -247,7 +247,7 @@
+ const Gtk::TreePath& tpath, bool)
+ {
+ Gtk::TreeIter iter = store->get_iter (tpath);
+- return iter ? iter->get_value (cols.property) : false;
++ return iter ? static_cast<bool>(iter->get_value (cols.property)) : false;
+ }
+
+
diff --git a/academic/gelemental/gelemental.SlackBuild b/academic/gelemental/gelemental.SlackBuild
index 22beaf7d9c..f8a08e984d 100644
--- a/academic/gelemental/gelemental.SlackBuild
+++ b/academic/gelemental/gelemental.SlackBuild
@@ -84,6 +84,9 @@ sed -i "s:set_size_request (50, 50):set_size_request (64, 64):" src/buttons.cc
# include glib.h instead of individual headers.
patch -p1 -i $CWD/glib-single-include.patch
+# Fix for the newer gcc
+patch -p1 -i $CWD/gcc.patch
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS -std=c++11" \
./configure \
diff --git a/academic/genius/README b/academic/genius/README
index d4a270574c..fa2fa4b67b 100644
--- a/academic/genius/README
+++ b/academic/genius/README
@@ -7,5 +7,5 @@ or educational tool. The syntax is very intuitive and
is designed to mimic how mathematics is usually written.
If you would like the GUI interface as well, it requires
-libgnomeui and gtksourceview. If you have these dependencies,
+libgnomeui, gtksourceview and vte2. If you have these dependencies,
pass the variable of GNOME=YES (or anything that isn't NO ;)
diff --git a/academic/genometools/genometools.SlackBuild b/academic/genometools/genometools.SlackBuild
index f4af4db0f9..117e1bb420 100644
--- a/academic/genometools/genometools.SlackBuild
+++ b/academic/genometools/genometools.SlackBuild
@@ -76,7 +76,7 @@ find -L . \
sed -i "s:lib/libgenometools:lib${LIBDIRSUFFIX}/libgenometools:g" Makefile
sed -i "s:\$(prefix)/lib:\$(prefix)/lib${LIBDIRSUFFIX}:g" Makefile
-CFLAGS="$SLKCFLAGS" \
+CFLAGS="$SLKCFLAGS -Wno-error=format-truncation=" \
CXXFLAGS="$SLKCFLAGS" \
make $BUILDARCH \
prefix=/usr
diff --git a/academic/primer3/primer3.SlackBuild b/academic/primer3/primer3.SlackBuild
index d3ae1b399c..514f65fd23 100644
--- a/academic/primer3/primer3.SlackBuild
+++ b/academic/primer3/primer3.SlackBuild
@@ -75,13 +75,11 @@ patch -p1 -i $CWD/gcc-7.patch
cd ./src
# Use our CFLAGS
-sed -i "/^CFLAGS/s/=/+=/" Makefile
+sed -i -e "s|-O2|$SLKCFLAGS|" -e "s|-g -Wall|-fpermissive|" Makefile
# Look for configuration files in /usr/share instead of /opt
sed -i "s:/opt/primer3_config:/usr/share/$PRGNAM/primer3_config:g" thal_main.c primer3_boulder_main.c
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
make
# This is recommended, but the tests take a really long time. Be patient
diff --git a/academic/root/root.SlackBuild b/academic/root/root.SlackBuild
index bb507f0536..e0ec409dca 100644
--- a/academic/root/root.SlackBuild
+++ b/academic/root/root.SlackBuild
@@ -18,7 +18,7 @@
# Modified by the slackbuilds.org project
PRGNAM=root
-VERSION=${VERSION:-5.34.36}
+VERSION=${VERSION:-6.10.02}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -79,9 +79,9 @@ fi
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM
+rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM\_v$VERSION.source.tar.gz
-cd $PRGNAM
+cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -134,9 +134,8 @@ mkdir -p $PKG$PYTHONDIR
mv \
$PKG$PREFIX/lib$LIBDIRSUFFIX/*.py \
$PKG$PREFIX/lib$LIBDIRSUFFIX/*.pyc \
- $PKG$PREFIX/lib$LIBDIRSUFFIX/python/genreflex \
+ $PKG$PREFIX/lib$LIBDIRSUFFIX/*.pyo \
$PKG$PYTHONDIR
-rm -fr $PKG$PREFIX/lib$LIBDIRSUFFIX/python
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneded 2> /dev/null || true
diff --git a/academic/root/root.info b/academic/root/root.info
index 450e1bde00..7df5c81738 100644
--- a/academic/root/root.info
+++ b/academic/root/root.info
@@ -1,10 +1,10 @@
PRGNAM="root"
-VERSION="5.34.36"
+VERSION="6.10.02"
HOMEPAGE="http://root.cern.ch/drupal/"
-DOWNLOAD="https://root.cern.ch/download/root_v5.34.36.source.tar.gz"
-MD5SUM="6a1ad549b3b79b10bbb1f116b49067ee"
+DOWNLOAD="https://root.cern.ch/download/root_v6.10.02.source.tar.gz"
+MD5SUM="19f2285c845a48355db779938fb4db99"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="ftgl"
+REQUIRES="ftgl unixODBC"
MAINTAINER="Jože Zobec"
EMAIL="jozze.zepl@gmail.com"
diff --git a/academic/t_coffee/t_coffee.SlackBuild b/academic/t_coffee/t_coffee.SlackBuild
index 7329c61e2f..b2b07568f2 100644
--- a/academic/t_coffee/t_coffee.SlackBuild
+++ b/academic/t_coffee/t_coffee.SlackBuild
@@ -73,7 +73,8 @@ find -L . \
cd t_coffee_source
-CFLAGS="$SLKCFLAGS" \
+sed -i "s|-O3|$SLKCFLAGS -fpermissive|" makefile
+
CC="gcc" \
FCC="gfortran" \
make -i all
diff --git a/academic/tophat/make_pair.patch b/academic/tophat/make_pair.patch
new file mode 100644
index 0000000000..44b71d1059
--- /dev/null
+++ b/academic/tophat/make_pair.patch
@@ -0,0 +1,24 @@
+diff -uBw -aur tophat-2.1.1/src/juncs_db.cpp tophat-2.1.1-patched/src/juncs_db.cpp
+--- tophat-2.1.1/src/juncs_db.cpp 2016-02-14 19:21:17.354079000 +0100
++++ tophat-2.1.1-patched/src/juncs_db.cpp 2016-06-02 11:26:34.097425159 +0200
+@@ -338,7 +338,7 @@
+ uint32_t left_coord = atoi(scan_left_coord);
+ uint32_t right_coord = atoi(scan_right_coord);
+ bool antisense = *orientation == '-';
+- junctions.insert(make_pair<Junction, JunctionStats>(Junction(ref_id, left_coord, right_coord, antisense), JunctionStats()));
++ junctions.insert(make_pair(Junction(ref_id, left_coord, right_coord, antisense), JunctionStats()));
+ }
+ }
+
+diff -uBw -aur tophat-2.1.1/src/tophat_reports.cpp tophat-2.1.1-patched/src/tophat_reports.cpp
+--- tophat-2.1.1/src/tophat_reports.cpp 2016-02-23 22:20:44.320710000 +0100
++++ tophat-2.1.1-patched/src/tophat_reports.cpp 2016-06-02 11:26:22.057239478 +0200
+@@ -2705,7 +2705,7 @@
+ junction_stat.gtf_match = true;
+ junction_stat.accepted = true;
+
+- gtf_junctions.insert(make_pair<Junction, JunctionStats>(Junction(ref_id, left_coord, right_coord, antisense), junction_stat));
++ gtf_junctions.insert(make_pair(Junction(ref_id, left_coord, right_coord, antisense), junction_stat));
+ }
+ }
+ fprintf(stderr, "Loaded %d GFF junctions from %s.\n", (int)(gtf_junctions.size()), gtf_juncs.c_str());
diff --git a/academic/tophat/tophat.SlackBuild b/academic/tophat/tophat.SlackBuild
index e579ff1e9a..bdddfa4182 100644
--- a/academic/tophat/tophat.SlackBuild
+++ b/academic/tophat/tophat.SlackBuild
@@ -69,6 +69,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# Thanks archlinux
+patch -p1 < $CWD/make_pair.patch
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
diff --git a/academic/ugene/ugene-1.22.0-dont_hardcode_includes.patch b/academic/ugene/ugene-1.22.0-dont_hardcode_includes.patch
new file mode 100644
index 0000000000..6bc26e1f19
--- /dev/null
+++ b/academic/ugene/ugene-1.22.0-dont_hardcode_includes.patch
@@ -0,0 +1,24 @@
+diff -up ugene-1.22.0/src/libs_3rdparty/samtools/samtools.pri.dont_hardcode_includes ugene-1.22.0/src/libs_3rdparty/samtools/samtools.pri
+--- ugene-1.22.0/src/libs_3rdparty/samtools/samtools.pri.dont_hardcode_includes 2016-03-31 07:21:56.000000000 -0500
++++ ugene-1.22.0/src/libs_3rdparty/samtools/samtools.pri 2016-06-02 17:49:02.383069490 -0500
+@@ -3,7 +3,7 @@ UGENE_RELATIVE_DESTDIR = ''
+
+ TEMPLATE = lib
+ CONFIG +=thread debug_and_release staticlib warn_off
+-INCLUDEPATH += src src/samtools ../../include /usr/include
++INCLUDEPATH += src src/samtools ../../include
+ win32 : INCLUDEPATH += src/samtools/win32
+ DEFINES+="_FILE_OFFSET_BITS=64" _LARGEFILE64_SOURCE _USE_KNETFILE
+ win32 : DEFINES += _USE_MATH_DEFINES "inline=__inline" "__func__=__FUNCTION__" "R_OK=4" "atoll=_atoi64" "alloca=_alloca"
+diff -up ugene-1.22.0/src/plugins_3rdparty/variants/variants.pri.dont_hardcode_includes ugene-1.22.0/src/plugins_3rdparty/variants/variants.pri
+--- ugene-1.22.0/src/plugins_3rdparty/variants/variants.pri.dont_hardcode_includes 2016-03-31 07:22:09.000000000 -0500
++++ ugene-1.22.0/src/plugins_3rdparty/variants/variants.pri 2016-06-02 20:26:35.265356432 -0500
+@@ -20,7 +20,7 @@ use_bundled_zlib() {
+ win32 : LIBS += -lwsock32
+
+
+-INCLUDEPATH += src ../../include /usr/include
++INCLUDEPATH += src ../../include
+ INCLUDEPATH += ../../libs_3rdparty/samtools/src/samtools
+ INCLUDEPATH += ../../libs_3rdparty/samtools/src
+ INCLUDEPATH += ../../libs_3rdparty/samtools/src/samtools/bcftools
diff --git a/academic/ugene/ugene.SlackBuild b/academic/ugene/ugene.SlackBuild
index c93a523b65..b124c211b1 100644
--- a/academic/ugene/ugene.SlackBuild
+++ b/academic/ugene/ugene.SlackBuild
@@ -73,6 +73,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# Thanks fedora
+patch -p1 < $CWD/ugene-1.22.0-dont_hardcode_includes.patch
+
# Fix libraries and man pages paths
sed -i "s:/lib:/lib${LIBDIRSUFFIX}:g" src/ugene_globals.pri
sed -i "s:/share/man:/man:g" src/ugene_globals.pri
diff --git a/academic/veusz/veusz.SlackBuild b/academic/veusz/veusz.SlackBuild
index 119648fd3d..21c0875fa3 100644
--- a/academic/veusz/veusz.SlackBuild
+++ b/academic/veusz/veusz.SlackBuild
@@ -69,10 +69,6 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-PYTHONVER=$(python -V 2>&1 | cut -f 2 -d' ' | cut -f 1-2 -d.)
-export SIP_EXE=/usr/bin/python2-sip
-export SIP_INCLUDE_DIR="/usr/include/python$PYTHONVER/python2-sip"
-
python setup.py install --root $PKG
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
diff --git a/accessibility/easystroke/easystroke.SlackBuild b/accessibility/easystroke/easystroke.SlackBuild
index 29b04e812b..3e2f2fedcc 100644
--- a/accessibility/easystroke/easystroke.SlackBuild
+++ b/accessibility/easystroke/easystroke.SlackBuild
@@ -59,6 +59,7 @@ sed -i 's|-lboost_serialization-mt|-lboost_serialization|' Makefile
# Thanks to ARCH Linux
patch -p1 < $CWD/lambda.patch
+patch -p1 < $CWD/gcc7-build-fix.patch
make CXX="g++ $SLKCFLAGS" CC="gcc -std=c99 $SLKCFLAGS" PREFIX=/usr
diff --git a/accessibility/easystroke/gcc7-build-fix.patch b/accessibility/easystroke/gcc7-build-fix.patch
new file mode 100644
index 0000000000..b66bcb4edf
--- /dev/null
+++ b/accessibility/easystroke/gcc7-build-fix.patch
@@ -0,0 +1,40 @@
+From 9e2c32390c5c253aade3bb703e51841748d2c37e Mon Sep 17 00:00:00 2001
+From: Jonathan Wakely <jwakely@redhat.com>
+Date: Sat, 28 Jan 2017 01:26:00 +0000
+Subject: [PATCH] Remove abs(float) function that clashes with std::abs(float)
+
+Depending on which C++ standard library headers have been included there
+might an abs(float) function already declared in the global namespace,
+so the definition in this file conflicts with it. This cause a build
+failure with GCC 7, which conforms more closely to the C++ standard with
+respect to overloads of abs.
+
+Including <cmath> and adding a using-declaration for std::abs ensures
+that the standard std::abs(float) function is available. This solution
+should be portable to all compilers.
+---
+ handler.cc | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/handler.cc b/handler.cc
+index 8830ea2..685b1ff 100644
+--- a/handler.cc
++++ b/handler.cc
+@@ -23,6 +23,8 @@
+ #include <X11/extensions/XTest.h>
+ #include <X11/XKBlib.h>
+ #include <X11/Xproto.h>
++#include <cmath> // std::abs(float)
++using std::abs;
+
+ XState *xstate = nullptr;
+
+@@ -533,8 +535,6 @@ class WaitForPongHandler : public Handler, protected Timeout {
+ virtual Grabber::State grab_mode() { return parent->grab_mode(); }
+ };
+
+-static inline float abs(float x) { return x > 0 ? x : -x; }
+-
+ class AbstractScrollHandler : public Handler {
+ bool have_x, have_y;
+ float last_x, last_y;
diff --git a/accessibility/flite/flite.info b/accessibility/flite/flite.info
index 4b6c62b261..05d4e52227 100644
--- a/accessibility/flite/flite.info
+++ b/accessibility/flite/flite.info
@@ -5,6 +5,6 @@ DOWNLOAD="http://festvox.org/flite/packed/flite-2.1/flite-2.1-release.tar.bz2"
MD5SUM="915ac91068fc962f4a0e8aa26164cc8a"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES=""
+REQUIRES="texi2html"
MAINTAINER="B. Watson"
EMAIL="yalhcru@gmail.com"
diff --git a/accessibility/jpilot/jpilot.SlackBuild b/accessibility/jpilot/jpilot.SlackBuild
index 78eeb3f868..e2dd848145 100644
--- a/accessibility/jpilot/jpilot.SlackBuild
+++ b/accessibility/jpilot/jpilot.SlackBuild
@@ -25,13 +25,13 @@
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=jpilot
-VERSION=${VERSION:-1.8.1}
+VERSION=${VERSION:-1.8.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -42,8 +42,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -60,15 +60,16 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
-cd $TMP rm -rf $PRGNAM-$VERSION
+cd $TMP
+rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
CFLAGS="$SLKCFLAGS -std=gnu89" \
CXXFLAGS="$SLKCFLAGS -std=gnu89" \
@@ -84,10 +85,8 @@ CXXFLAGS="$SLKCFLAGS -std=gnu89" \
make
make install-strip DESTDIR=$PKG
-( cd $PKG/usr/man
- find . -type f -exec gzip -9 {} \;
- for i in $( find . -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-)
+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
mv $PKG/usr/share/doc $PKG/usr
mv $PKG/usr/doc/jpilot $PKG/usr/doc/jpilot-$VERSION
diff --git a/accessibility/jpilot/jpilot.info b/accessibility/jpilot/jpilot.info
index 4030813d5e..9d14b884f0 100644
--- a/accessibility/jpilot/jpilot.info
+++ b/accessibility/jpilot/jpilot.info
@@ -1,8 +1,8 @@
PRGNAM="jpilot"
-VERSION="1.8.1"
+VERSION="1.8.2"
HOMEPAGE="http://www.jpilot.org"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/jpilot-1.8.1.tar.gz"
-MD5SUM="ac59a5708f37e30d39e85b1fcedd266f"
+DOWNLOAD="http://jpilot.org/tarballs/jpilot-1.8.2.tar.gz"
+MD5SUM="8b539d8943ac75c7890fc5c071e89adb"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/audio/aacgain/aacgain.SlackBuild b/audio/aacgain/aacgain.SlackBuild
index 2a138e95c9..cabdf16c33 100644
--- a/audio/aacgain/aacgain.SlackBuild
+++ b/audio/aacgain/aacgain.SlackBuild
@@ -120,7 +120,7 @@ cd ../mp4v2
patch -p2 -i ../$PRGNAM/mp4v2.patch
CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS -fpermissive" \
./configure \
--build=$ARCH-slackware-linux
diff --git a/audio/alsamodularsynth/alsamodularsynth.SlackBuild b/audio/alsamodularsynth/alsamodularsynth.SlackBuild
index 60c79fccb5..088d4c44dd 100644
--- a/audio/alsamodularsynth/alsamodularsynth.SlackBuild
+++ b/audio/alsamodularsynth/alsamodularsynth.SlackBuild
@@ -31,7 +31,7 @@ TARNAM=ams
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -42,8 +42,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -72,6 +72,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+export CC=clang
+export CXX=clang++
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
LIBS="-ldl" \
diff --git a/audio/audacious-aac/audacious-aac.SlackBuild b/audio/audacious-aac/audacious-aac.SlackBuild
index fa61144a3d..686aee386c 100644
--- a/audio/audacious-aac/audacious-aac.SlackBuild
+++ b/audio/audacious-aac/audacious-aac.SlackBuild
@@ -23,7 +23,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=audacious-aac
-VERSION=${VERSION:-3.7.2}
+VERSION=${VERSION:-3.8.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -31,7 +31,7 @@ SRCNAM=audacious-plugins
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -42,8 +42,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
ARCHOPTS="--disable-sse2"
elif [ "$ARCH" = "i686" ]; then
diff --git a/audio/audacious-aac/audacious-aac.info b/audio/audacious-aac/audacious-aac.info
index 6b6130fe82..a55c639a2d 100644
--- a/audio/audacious-aac/audacious-aac.info
+++ b/audio/audacious-aac/audacious-aac.info
@@ -1,8 +1,8 @@
PRGNAM="audacious-aac"
-VERSION="3.7.2"
+VERSION="3.8.2"
HOMEPAGE="https://audacious-media-player.org/"
-DOWNLOAD="https://distfiles.audacious-media-player.org/audacious-plugins-3.7.2.tar.bz2"
-MD5SUM="6ae2f17885897e717b8bbafc32858e2f"
+DOWNLOAD="https://distfiles.audacious-media-player.org/audacious-plugins-3.8.2.tar.bz2"
+MD5SUM="20710cd19fa08c4bffb6cb33002872df"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="faad2"
diff --git a/audio/audacious-cue/audacious-cue.SlackBuild b/audio/audacious-cue/audacious-cue.SlackBuild
index a3a796cd74..8d018fdadb 100644
--- a/audio/audacious-cue/audacious-cue.SlackBuild
+++ b/audio/audacious-cue/audacious-cue.SlackBuild
@@ -23,7 +23,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=audacious-cue
-VERSION=${VERSION:-3.7.2}
+VERSION=${VERSION:-3.8.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -31,7 +31,7 @@ SRCNAM=audacious-plugins
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -42,8 +42,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
ARCHOPTS="--disable-sse2"
elif [ "$ARCH" = "i686" ]; then
diff --git a/audio/audacious-cue/audacious-cue.info b/audio/audacious-cue/audacious-cue.info
index 3ae7eef3e3..31b7a1a12c 100644
--- a/audio/audacious-cue/audacious-cue.info
+++ b/audio/audacious-cue/audacious-cue.info
@@ -1,8 +1,8 @@
PRGNAM="audacious-cue"
-VERSION="3.7.2"
+VERSION="3.8.2"
HOMEPAGE="https://audacious-media-player.org/"
-DOWNLOAD="https://distfiles.audacious-media-player.org/audacious-plugins-3.7.2.tar.bz2"
-MD5SUM="6ae2f17885897e717b8bbafc32858e2f"
+DOWNLOAD="https://distfiles.audacious-media-player.org/audacious-plugins-3.8.2.tar.bz2"
+MD5SUM="20710cd19fa08c4bffb6cb33002872df"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="libcue"
diff --git a/audio/audacious-ffmpeg/README b/audio/audacious-ffmpeg/README
deleted file mode 100644
index 04da987f9f..0000000000
--- a/audio/audacious-ffmpeg/README
+++ /dev/null
@@ -1,4 +0,0 @@
-audacious-ffmpeg (ffmpeg Decoder Plugin used by the Audacious player)
-
-This plugin adds all audio ffmpeg decoders to the Audacious media
-player that comes with Slackware stock packages
diff --git a/audio/audacious-ffmpeg/audacious-ffmpeg.SlackBuild b/audio/audacious-ffmpeg/audacious-ffmpeg.SlackBuild
deleted file mode 100644
index f45b5c764f..0000000000
--- a/audio/audacious-ffmpeg/audacious-ffmpeg.SlackBuild
+++ /dev/null
@@ -1,106 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for audacious-ffmpeg
-
-# Copyright 2016 Johannes Schoepfer, Herrenberg, BW; Germany
-# 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.
-
-PRGNAM=audacious-ffmpeg
-VERSION=${VERSION:-3.7.2}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-SRCNAM=audacious-plugins
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
- LIBDIRSUFFIX=""
- ARCHOPTS="--disable-sse2"
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
- ARCHOPTS="--disable-sse2"
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
- ARCHOPTS=""
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
- ARCHOPTS=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $SRCNAM-$VERSION
-tar xvf $CWD/$SRCNAM-$VERSION.tar.bz2
-cd $SRCNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-# Patch Makefile to build only aac plugin
-patch -p1 <$CWD/patches/enable_only_ffmpeg_plugin.diff || exit 1
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --disable-aac \
- --program-prefix= \
- --program-suffix= \
- ${ARCHOPTS} \
- --build=$ARCH-slackware-linux
-
-make
-make install DESTDIR=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a COPYING INSTALL $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/audio/audacious-ffmpeg/audacious-ffmpeg.info b/audio/audacious-ffmpeg/audacious-ffmpeg.info
deleted file mode 100644
index 4d49914a64..0000000000
--- a/audio/audacious-ffmpeg/audacious-ffmpeg.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="audacious-ffmpeg"
-VERSION="3.7.2"
-HOMEPAGE="https://audacious-media-player.org/"
-DOWNLOAD="https://distfiles.audacious-media-player.org/audacious-plugins-3.7.2.tar.bz2"
-MD5SUM="6ae2f17885897e717b8bbafc32858e2f"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="ffmpeg"
-MAINTAINER="Johannes Schoepfer"
-EMAIL="slackbuilds[at]schoepfer[dot]info"
diff --git a/audio/audacious-ffmpeg/patches/enable_only_ffmpeg_plugin.diff b/audio/audacious-ffmpeg/patches/enable_only_ffmpeg_plugin.diff
deleted file mode 100644
index feb3fab813..0000000000
--- a/audio/audacious-ffmpeg/patches/enable_only_ffmpeg_plugin.diff
+++ /dev/null
@@ -1,8 +0,0 @@
---- audacious-plugins-3.6.1/Makefile.ORIG 2015-04-04 02:02:06.000000000 +0200
-+++ audacious-plugins-3.6.1/Makefile 2015-04-23 19:59:48.072721987 +0200
-@@ -1,4 +1,4 @@
--SUBDIRS = src po
-+SUBDIRS = src/ffaudio
-
- DISTCLEAN = buildsys.mk config.h config.log config.status extra.mk
-
diff --git a/audio/audacious-ffmpeg/slack-desc b/audio/audacious-ffmpeg/slack-desc
deleted file mode 100644
index e14234a198..0000000000
--- a/audio/audacious-ffmpeg/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-audacious-ffmpeg: audacious-ffmpeg (ffmpeg Decoder Plugin)
-audacious-ffmpeg:
-audacious-ffmpeg: This plugin adds all audio ffmpeg decoders to the Audacious media
-audacious-ffmpeg: player that comes with Slackware stock packages
-audacious-ffmpeg:
-audacious-ffmpeg: Homepage: https://audacious-media-player.org/
-audacious-ffmpeg:
-audacious-ffmpeg:
-audacious-ffmpeg:
-audacious-ffmpeg:
-audacious-ffmpeg:
diff --git a/audio/butt/butt.SlackBuild b/audio/butt/butt.SlackBuild
index 8cfe05ed28..5a9e116b18 100644
--- a/audio/butt/butt.SlackBuild
+++ b/audio/butt/butt.SlackBuild
@@ -55,7 +55,7 @@ find . \
-exec chmod 644 {} \;
CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS -fpermissive" \
./configure \
--prefix $PREFIX \
--docdir $DOCDIR
diff --git a/audio/calf-ladspa/calf-ladspa.SlackBuild b/audio/calf-ladspa/calf-ladspa.SlackBuild
index f78f393bc7..2d85f57020 100644
--- a/audio/calf-ladspa/calf-ladspa.SlackBuild
+++ b/audio/calf-ladspa/calf-ladspa.SlackBuild
@@ -98,7 +98,7 @@ patch -p1 < $CWD/disable-jack-and-fluidsynth.diff
# This patch replaces them with C-style MIN and MAX macros. Not actually
# needed on Slack 14.2, so it's commented out, but I'm checking the actual
# patch into git so I won't lose track of it.
-#patch -p1 < $CWD/minmax.diff
+patch -p1 < $CWD/minmax.diff
autoreconf -if
diff --git a/audio/darkice/darkice.SlackBuild b/audio/darkice/darkice.SlackBuild
index b9829076da..887e4fa8d4 100644
--- a/audio/darkice/darkice.SlackBuild
+++ b/audio/darkice/darkice.SlackBuild
@@ -71,7 +71,7 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-CXXFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS -fpermissive" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
diff --git a/audio/easytag/README b/audio/easytag/README
deleted file mode 100644
index b03cc1adc5..0000000000
--- a/audio/easytag/README
+++ /dev/null
@@ -1,7 +0,0 @@
-EasyTAG - Tag editor for MP3, ogg vorbis and various other files.
-
-EasyTAG is a utility for viewing and editing tags for MP3, MP2, FLAC
-Ogg Vorbis, MP4/AAC, MusePack and Monkey's Audio files. Its simple
-and nice GTK2 interface makes tagging easier under GNU/Linux.
-
-libmp4v2 is an optional dependency.
diff --git a/audio/easytag/doinst.sh b/audio/easytag/doinst.sh
deleted file mode 100644
index aea0f894eb..0000000000
--- a/audio/easytag/doinst.sh
+++ /dev/null
@@ -1,13 +0,0 @@
-if [ -x /usr/bin/update-desktop-database ]; then
- /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
-fi
-
-if [ -x /usr/bin/update-mime-database ]; then
- /usr/bin/update-mime-database usr/share/mime >/dev/null 2>&1
-fi
-
-if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
- if [ -x /usr/bin/gtk-update-icon-cache ]; then
- /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
- fi
-fi
diff --git a/audio/easytag/easytag.SlackBuild b/audio/easytag/easytag.SlackBuild
deleted file mode 100644
index 7ad594517c..0000000000
--- a/audio/easytag/easytag.SlackBuild
+++ /dev/null
@@ -1,98 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for easytag
-
-# Copyright 2006 Halim Issa <yallaone@gmail.com>
-# Copyright 2013-2014 LEVAI Daniel <leva@ecentrum.hu>
-# 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.
-
-PRGNAM=easytag
-VERSION=${VERSION:-2.1.10}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i486 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --mandir=/usr/man \
- --build=$ARCH-slackware-linux
-
-make
-make install-strip DESTDIR=$PKG
-
-DOCS="AUTHORS ChangeLog COPYING HACKING INSTALL README NEWS THANKS TODO"
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-cat $CWD/$PRGNAM.info > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.info
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $(find $PKG/usr/man -type l) ; do ln -s $(readlink $i).gz $i.gz ; rm $i ; done
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-cat $CWD/doinst.sh > $PKG/install/doinst.sh
-
-cd $PKG
-/sbin/makepkg -p -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/audio/easytag/easytag.info b/audio/easytag/easytag.info
deleted file mode 100644
index b35369e4a5..0000000000
--- a/audio/easytag/easytag.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="easytag"
-VERSION="2.1.10"
-HOMEPAGE="http://projects.gnome.org/easytag/"
-DOWNLOAD="http://download.gnome.org/sources/easytag/2.1/easytag-2.1.10.tar.xz"
-MD5SUM="feafcd13508c26171f1376aa4b0629c4"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="id3lib"
-MAINTAINER="LEVAI Daniel"
-EMAIL="leva@ecentrum.hu"
diff --git a/audio/easytag/slack-desc b/audio/easytag/slack-desc
deleted file mode 100644
index 07c27c80ce..0000000000
--- a/audio/easytag/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-easytag: easytag (Tag editor for MP3 and Ogg Vorbis files)
-easytag:
-easytag: EasyTAG is a utility for viewing and editing tags for MP3, MP2, FLAC
-easytag: Ogg Vorbis, MP4/AAC, MusePack and Monkey's Audio files. Its simple
-easytag: and nice GTK2 interface makes tagging easier under GNU/Linux.
-easytag:
-easytag: Website : http://easytag.sourceforge.net
-easytag:
-easytag:
-easytag:
-easytag:
diff --git a/audio/fluidsynth/README b/audio/fluidsynth/README
deleted file mode 100644
index a309ca2db2..0000000000
--- a/audio/fluidsynth/README
+++ /dev/null
@@ -1,9 +0,0 @@
-FluidSynth is a software real-time synthesizer based on the Soundfont 2
-specifications. FluidSynth reads and handles MIDI events from the MIDI
-input device. It is the software analogue of a MIDI synthesizer.
-FluidSynth can also play midifiles using a Soundfont.
-
-If you want to build support for ladspa plugins, you can pass
-LADSPA=yes to the script. That requires ladspa_sdk.
-
-Optional deps are lash, portaudio, and jack-audio-connection-kit.
diff --git a/audio/fluidsynth/fluidsynth.SlackBuild b/audio/fluidsynth/fluidsynth.SlackBuild
deleted file mode 100644
index 7cf814a89d..0000000000
--- a/audio/fluidsynth/fluidsynth.SlackBuild
+++ /dev/null
@@ -1,104 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for fluidsynth
-
-# Copyright 2008-2013 Heinz Wiesinger, Amsterdam, The Netherlands
-# 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.
-
-PRGNAM=fluidsynth
-VERSION=${VERSION:-1.1.6}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-mkdir build
-cd build
- cmake \
- -DCMAKE_C_FLAGS="$SLKCFLAGS" \
- -DCMAKE_CXX_FLAGS="$SLKCFLAGS" \
- -DCMAKE_EXE_LINKER_FLAGS="-ltermcap" \
- -DCMAKE_SHARED_LINKER_FLAGS="-ltermcap" \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DLIB_SUFFIX="$LIBDIRSUFFIX" \
- -DDOC_INSTALL_DIR="doc" \
- -DMAN_INSTALL_DIR="man/man1" \
- -Denable-ladspa="${LADSPA:-no}" \
- ..
-
- make
- make install DESTDIR=$PKG
-cd -
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS ChangeLog COPYING INSTALL NEWS README THANKS TODO \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/audio/fluidsynth/fluidsynth.info b/audio/fluidsynth/fluidsynth.info
deleted file mode 100644
index d3b454c60f..0000000000
--- a/audio/fluidsynth/fluidsynth.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="fluidsynth"
-VERSION="1.1.6"
-HOMEPAGE="http://www.fluidsynth.org/"
-DOWNLOAD="http://downloads.sourceforge.net/fluidsynth/fluidsynth-1.1.6.tar.gz"
-MD5SUM="ae5aca6de824b4173667cbd3a310b263"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Heinz Wiesinger"
-EMAIL="pprkut@liwjatan.at"
diff --git a/audio/fluidsynth/slack-desc b/audio/fluidsynth/slack-desc
deleted file mode 100644
index 46df5825cd..0000000000
--- a/audio/fluidsynth/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-fluidsynth: fluidsynth (Software Synthesizer)
-fluidsynth:
-fluidsynth: FluidSynth is a software real-time synthesizer based on the
-fluidsynth: Soundfont 2 specifications. FluidSynth reads and handles MIDI
-fluidsynth: events from the MIDI input device. It is the software analogue
-fluidsynth: of a MIDI synthesizer. FluidSynth can also play midifiles
-fluidsynth: using a Soundfont.
-fluidsynth:
-fluidsynth: Homepage: http://www.fluidsynth.org/
-fluidsynth:
-fluidsynth:
diff --git a/audio/lash/lash.SlackBuild b/audio/lash/lash.SlackBuild
index 0918bdd95d..7b197365b9 100644
--- a/audio/lash/lash.SlackBuild
+++ b/audio/lash/lash.SlackBuild
@@ -76,6 +76,8 @@ if [ "$(/usr/share/texmf/bin/texi2html --version)" != "1.76" ]; then
patch -p1 --verbose < $CWD/texlive.patch
fi
+export LDFLAGS="-ldl -lm"
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
diff --git a/audio/lmms/gcc6.patch b/audio/lmms/gcc6.patch
new file mode 100644
index 0000000000..ef7fbe75c9
--- /dev/null
+++ b/audio/lmms/gcc6.patch
@@ -0,0 +1,112 @@
+From a06cb0126ccb025993efb2d81c7cbfd8edd60609 Mon Sep 17 00:00:00 2001
+From: Javier Serrano Polo <javier@jasp.net>
+Date: Sat, 30 Apr 2016 00:00:09 +0200
+Subject: [PATCH] Fixed build problems with GCC 6
+
+---
+ plugins/LadspaEffect/calf/src/modules_limit.cpp | 3 ++-
+ plugins/opl2/fmopl.c | 29 +++++++++++-----------
+ .../zynaddsubfx/zynaddsubfx/src/UI/EnvelopeUI.fl | 6 +++--
+ .../zynaddsubfx/zynaddsubfx/src/UI/ResonanceUI.fl | 6 +++--
+ 5 files changed, 29 insertions(+), 22 deletions(-)
+
+diff --git a/plugins/LadspaEffect/calf/src/modules_limit.cpp b/plugins/LadspaEffect/calf/src/modules_limit.cpp
+index 3930078..cd3d6fa 100644
+--- a/plugins/LadspaEffect/calf/src/modules_limit.cpp
++++ b/plugins/LadspaEffect/calf/src/modules_limit.cpp
+@@ -540,7 +540,8 @@ uint32_t multibandlimiter_audio_module::process(uint32_t offset, uint32_t numsam
+ } // process single strip with filter
+
+ // write multiband coefficient to buffer
+- buffer[pos] = std::min(*params[param_limit] / std::max(fabs(sum_left), fabs(sum_right)), 1.0);
++ float pre_buffer = *params[param_limit] / std::max(fabs(sum_left), fabs(sum_right));
++ buffer[pos] = std::min(pre_buffer, 1.0f);
+
+ for (int i = 0; i < strips; i++) {
+ // process gain reduction
+diff --git a/plugins/opl2/fmopl.c b/plugins/opl2/fmopl.c
+index 9b411a2..3dd4a51 100644
+--- a/plugins/opl2/fmopl.c
++++ b/plugins/opl2/fmopl.c
+@@ -653,21 +653,21 @@ static void init_timetables( FM_OPL *OPL , int ARRATE , int DRRATE ) {
+ double rate;
+
+ /* make attack rate & decay rate tables */
+- for ( i = 0; i < 4; i++ ) OPL->AR_TABLE[i] = OPL->DR_TABLE[i] = 0; {
+- for (i = 4; i <= 60; i++) {
+- rate = OPL->freqbase; /* frequency rate */
+- if( i < 60 ) {
+- rate *= 1.0+(i&3)*0.25; /* b0-1 : x1 , x1.25 , x1.5 , x1.75 */
+- }
+- rate *= 1<<((i>>2)-1); /* b2-5 : shift bit */
+- rate *= (double)(EG_ENT<<ENV_BITS);
+- OPL->AR_TABLE[i] = rate / ARRATE;
+- OPL->DR_TABLE[i] = rate / DRRATE;
+- }
+- for ( i = 60; i < 75; i++ ) {
+- OPL->AR_TABLE[i] = EG_AED-1;
+- OPL->DR_TABLE[i] = OPL->DR_TABLE[60];
++ for ( i = 0; i < 4; i++ ) OPL->AR_TABLE[i] = OPL->DR_TABLE[i] = 0;
++ for (i = 4; i <= 60; i++) {
++ rate = OPL->freqbase; /* frequency rate */
++ if( i < 60 ) {
++ rate *= 1.0+(i&3)*0.25; /* b0-1 : x1 , x1.25 , x1.5 , x1.75 */
+ }
++ rate *= 1<<((i>>2)-1); /* b2-5 : shift bit */
++ rate *= (double)(EG_ENT<<ENV_BITS);
++ OPL->AR_TABLE[i] = rate / ARRATE;
++ OPL->DR_TABLE[i] = rate / DRRATE;
++ }
++ for ( i = 60; i < 75; i++ ) {
++ OPL->AR_TABLE[i] = EG_AED-1;
++ OPL->DR_TABLE[i] = OPL->DR_TABLE[60];
++ }
+ #if 0
+ for ( i = 0; i < 64 ; i++ ) { /* make for overflow area */
+ LOG(LOG_WAR,("rate %2d , ar %f ms , dr %f ms \n",i,
+@@ -675,7 +675,6 @@ static void init_timetables( FM_OPL *OPL , int ARRATE , int DRRATE ) {
+ ((double)(EG_ENT<<ENV_BITS) / OPL->DR_TABLE[i]) * (1000.0 / OPL->rate) ));
+ }
+ #endif
+- }
+ }
+
+ /* ---------- generic table initialize ---------- */
+diff --git a/plugins/zynaddsubfx/zynaddsubfx/src/UI/EnvelopeUI.fl b/plugins/zynaddsubfx/zynaddsubfx/src/UI/EnvelopeUI.fl
+index 359f64c..db70677 100644
+--- a/plugins/zynaddsubfx/zynaddsubfx/src/UI/EnvelopeUI.fl
++++ b/plugins/zynaddsubfx/zynaddsubfx/src/UI/EnvelopeUI.fl
+@@ -204,12 +204,14 @@ if (event==FL_RELEASE){
+
+ if ((event==FL_DRAG)&&(currentpoint>=0)){
+ int ny=127-(int) (y_*127.0/h());
+- if (ny<0) ny=0;if (ny>127) ny=127;
++ if (ny<0) ny=0;
++ if (ny>127) ny=127;
+ env->Penvval[currentpoint]=ny;
+
+ int dx=(int)((x_-cpx)*0.1);
+ int newdt=cpdt+dx;
+- if (newdt<0) newdt=0;if (newdt>127) newdt=127;
++ if (newdt<0) newdt=0;
++ if (newdt>127) newdt=127;
+ if (currentpoint!=0) env->Penvdt[currentpoint]=newdt;
+ else env->Penvdt[currentpoint]=0;
+
+diff --git a/plugins/zynaddsubfx/zynaddsubfx/src/UI/ResonanceUI.fl b/plugins/zynaddsubfx/zynaddsubfx/src/UI/ResonanceUI.fl
+index f1b887c..5ab7290 100644
+--- a/plugins/zynaddsubfx/zynaddsubfx/src/UI/ResonanceUI.fl
++++ b/plugins/zynaddsubfx/zynaddsubfx/src/UI/ResonanceUI.fl
+@@ -133,8 +133,10 @@ if ( (x_>=0)&&(x_<w()) && (y_>=0)&&(y_<h())){
+ if ((event==FL_PUSH)||(event==FL_DRAG)){
+ int leftbutton=1;
+ if (Fl::event_button()==FL_RIGHT_MOUSE) leftbutton=0;
+- if (x_<0) x_=0;if (y_<0) y_=0;
+- if (x_>=w()) x_=w();if (y_>=h()-1) y_=h()-1;
++ if (x_<0) x_=0;
++ if (y_<0) y_=0;
++ if (x_>=w()) x_=w();
++ if (y_>=h()-1) y_=h()-1;
+
+ if ((oldx<0)||(oldx==x_)){
+ int sn=(int)(x_*1.0/w()*N_RES_POINTS);
diff --git a/audio/lmms/lmms.SlackBuild b/audio/lmms/lmms.SlackBuild
index 521fc88259..2d2981d37b 100644
--- a/audio/lmms/lmms.SlackBuild
+++ b/audio/lmms/lmms.SlackBuild
@@ -51,6 +51,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# Thanks archlinux
+patch -p1 < $CWD/gcc6.patch
+
mkdir build
cd build
cmake \
diff --git a/audio/mac/gcc6.patch b/audio/mac/gcc6.patch
new file mode 100644
index 0000000000..e22d1c1f53
--- /dev/null
+++ b/audio/mac/gcc6.patch
@@ -0,0 +1,181 @@
+From: Peter Levine <plevine457@gmail.com>
+--- mac-3.99-u4-b5-s7/src/Shared/NoWindows.h.old 2016-09-18 21:37:56.049105791 -0400
++++ mac-3.99-u4-b5-s7/src/Shared/NoWindows.h 2016-09-18 21:55:29.666295506 -0400
+@@ -39,8 +39,8 @@
+ typedef const wchar_t * LPCWSTR;
+
+ #define ZeroMemory(POINTER, BYTES) memset(POINTER, 0, BYTES);
+-#define max(a,b) (((a) > (b)) ? (a) : (b))
+-#define min(a,b) (((a) < (b)) ? (a) : (b))
++#define max_macro(a,b) (((a) > (b)) ? (a) : (b))
++#define min_macro(a,b) (((a) < (b)) ? (a) : (b))
+
+ #define __stdcall
+ #define CALLBACK
+--- mac-3.99-u4-b5-s7/src/Shared/CircleBuffer.cpp.old 2016-09-18 21:43:44.270495095 -0400
++++ mac-3.99-u4-b5-s7/src/Shared/CircleBuffer.cpp 2016-09-18 21:44:47.960148731 -0400
+@@ -45,7 +45,7 @@
+
+ if (pBuffer != NULL && nBytes > 0)
+ {
+- int nHeadBytes = min(m_nEndCap - m_nHead, nBytes);
++ int nHeadBytes = min_macro(m_nEndCap - m_nHead, nBytes);
+ int nFrontBytes = nBytes - nHeadBytes;
+
+ memcpy(&pBuffer[0], &m_pBuffer[m_nHead], nHeadBytes);
+@@ -72,7 +72,7 @@
+
+ int CCircleBuffer::RemoveHead(int nBytes)
+ {
+- nBytes = min(MaxGet(), nBytes);
++ nBytes = min_macro(MaxGet(), nBytes);
+ m_nHead += nBytes;
+ if (m_nHead >= m_nEndCap)
+ m_nHead -= m_nEndCap;
+@@ -81,7 +81,7 @@
+
+ int CCircleBuffer::RemoveTail(int nBytes)
+ {
+- nBytes = min(MaxGet(), nBytes);
++ nBytes = min_macro(MaxGet(), nBytes);
+ m_nTail -= nBytes;
+ if (m_nTail < 0)
+ m_nTail += m_nEndCap;
+--- mac-3.99-u4-b5-s7/src/MACLib/APECompress.cpp.old 2016-09-18 21:48:40.916547811 -0400
++++ mac-3.99-u4-b5-s7/src/MACLib/APECompress.cpp 2016-09-18 21:51:43.670733601 -0400
+@@ -117,7 +117,7 @@
+ return ERROR_UNDEFINED;
+
+ // calculate how many bytes to copy and add that much to the buffer
+- int nBytesToProcess = min(nBytesAvailable, nBytes - nBytesDone);
++ int nBytesToProcess = min_macro(nBytesAvailable, nBytes - nBytesDone);
+ memcpy(pBuffer, &pData[nBytesDone], nBytesToProcess);
+
+ // unlock the buffer (fail if not successful)
+@@ -162,7 +162,7 @@
+
+ while ((m_nBufferTail - m_nBufferHead) >= nThreshold)
+ {
+- int nFrameBytes = min(m_spAPECompressCreate->GetFullFrameBytes(), m_nBufferTail - m_nBufferHead);
++ int nFrameBytes = min_macro(m_spAPECompressCreate->GetFullFrameBytes(), m_nBufferTail - m_nBufferHead);
+
+ if (nFrameBytes == 0)
+ break;
+--- mac-3.99-u4-b5-s7/src/MACLib/APEDecompress.cpp.old 2016-09-18 21:46:56.962072960 -0400
++++ mac-3.99-u4-b5-s7/src/MACLib/APEDecompress.cpp 2016-09-18 22:01:14.402044817 -0400
+@@ -35,8 +35,8 @@
+ m_bErrorDecodingCurrentFrame = FALSE;
+
+ // set the "real" start and finish blocks
+- m_nStartBlock = (nStartBlock < 0) ? 0 : min(nStartBlock, GetInfo(APE_INFO_TOTAL_BLOCKS));
+- m_nFinishBlock = (nFinishBlock < 0) ? GetInfo(APE_INFO_TOTAL_BLOCKS) : min(nFinishBlock, GetInfo(APE_INFO_TOTAL_BLOCKS));
++ m_nStartBlock = (nStartBlock < 0) ? 0 : min_macro(nStartBlock, GetInfo(APE_INFO_TOTAL_BLOCKS));
++ m_nFinishBlock = (nFinishBlock < 0) ? GetInfo(APE_INFO_TOTAL_BLOCKS) : min_macro(nFinishBlock, GetInfo(APE_INFO_TOTAL_BLOCKS));
+ m_bIsRanged = (m_nStartBlock != 0) || (m_nFinishBlock != GetInfo(APE_INFO_TOTAL_BLOCKS));
+ }
+
+@@ -85,7 +85,7 @@
+
+ // cap
+ int nBlocksUntilFinish = m_nFinishBlock - m_nCurrentBlock;
+- const int nBlocksToRetrieve = min(nBlocks, nBlocksUntilFinish);
++ const int nBlocksToRetrieve = min_macro(nBlocks, nBlocksUntilFinish);
+
+ // get the data
+ unsigned char * pOutputBuffer = (unsigned char *) pBuffer;
+@@ -99,7 +99,7 @@
+
+ // analyze how much to remove from the buffer
+ const int nFrameBufferBlocks = m_nFrameBufferFinishedBlocks;
+- nBlocksThisPass = min(nBlocksLeft, nFrameBufferBlocks);
++ nBlocksThisPass = min_macro(nBlocksLeft, nFrameBufferBlocks);
+
+ // remove as much as possible
+ if (nBlocksThisPass > 0)
+@@ -182,7 +182,7 @@
+
+ int nFrameOffsetBlocks = m_nCurrentFrameBufferBlock % GetInfo(APE_INFO_BLOCKS_PER_FRAME);
+ int nFrameBlocksLeft = nFrameBlocks - nFrameOffsetBlocks;
+- int nBlocksThisPass = min(nFrameBlocksLeft, nBlocksLeft);
++ int nBlocksThisPass = min_macro(nFrameBlocksLeft, nBlocksLeft);
+
+ // start the frame if we need to
+ if (nFrameOffsetBlocks == 0)
+--- mac-3.99-u4-b5-s7/src/MACLib/APESimple.cpp.old 2016-09-18 21:47:16.972925909 -0400
++++ mac-3.99-u4-b5-s7/src/MACLib/APESimple.cpp 2016-09-18 21:52:39.022779503 -0400
+@@ -193,7 +193,7 @@
+ nBytesRead = 1;
+ while ((nBytesLeft > 0) && (nBytesRead > 0))
+ {
+- int nBytesToRead = min(16384, nBytesLeft);
++ int nBytesToRead = min_macro(16384, nBytesLeft);
+ if (pIO->Read(spBuffer, nBytesToRead, &nBytesRead) != ERROR_SUCCESS)
+ return ERROR_IO_READ;
+
+--- mac-3.99-u4-b5-s7/src/MACLib/APETag.cpp.old 2016-09-18 21:55:53.331533348 -0400
++++ mac-3.99-u4-b5-s7/src/MACLib/APETag.cpp 2016-09-18 21:58:21.508345586 -0400
+@@ -16,7 +16,7 @@
+ memcpy(m_spFieldNameUTF16, pFieldName, (wcslen(pFieldName) + 1) * sizeof(str_utf16));
+
+ // data (we'll always allocate two extra bytes and memset to 0 so we're safely NULL terminated)
+- m_nFieldValueBytes = max(nFieldBytes, 0);
++ m_nFieldValueBytes = max_macro(nFieldBytes, 0);
+ m_spFieldValue.Assign(new char [m_nFieldValueBytes + 2], TRUE);
+ memset(m_spFieldValue, 0, m_nFieldValueBytes + 2);
+ if (m_nFieldValueBytes > 0)
+--- mac-3.99-u4-b5-s7/src/MACLib/BitArray.cpp.old 2016-09-18 21:53:24.090030009 -0400
++++ mac-3.99-u4-b5-s7/src/MACLib/BitArray.cpp 2016-09-18 22:00:13.500083252 -0400
+@@ -113,7 +113,7 @@
+ m_nCurrentBitIndex = (m_nCurrentBitIndex & 31);
+
+ // zero the rest of the memory (may not need the +1 because of frame byte alignment)
+- memset(&m_pBitArray[1], 0, min(nBytesToWrite + 1, BIT_ARRAY_BYTES - 1));
++ memset(&m_pBitArray[1], 0, min_macro(nBytesToWrite + 1, BIT_ARRAY_BYTES - 1));
+ }
+
+ // return a success
+@@ -247,7 +247,7 @@
+ BitArrayState.k++;
+
+ // figure the pivot value
+- int nPivotValue = max(nOriginalKSum / 32, 1);
++ int nPivotValue = max_macro(nOriginalKSum / 32, 1);
+ int nOverflow = nEncode / nPivotValue;
+ int nBase = nEncode - (nOverflow * nPivotValue);
+
+--- mac-3.99-u4-b5-s7/src/MACLib/MACProgressHelper.cpp.old 2016-09-18 21:56:44.606337012 -0400
++++ mac-3.99-u4-b5-s7/src/MACLib/MACProgressHelper.cpp 2016-09-18 21:59:55.854310134 -0400
+@@ -35,7 +35,7 @@
+ m_nCurrentStep = nCurrentStep;
+
+ // figure the percentage done
+- float fPercentageDone = float(m_nCurrentStep) / float(max(m_nTotalSteps, 1));
++ float fPercentageDone = float(m_nCurrentStep) / float(max_macro(m_nTotalSteps, 1));
+ int nPercentageDone = (int) (fPercentageDone * 1000 * 100);
+ if (nPercentageDone > 100000) nPercentageDone = 100000;
+
+--- mac-3.99-u4-b5-s7/src/MACLib/Prepare.cpp.old 2016-09-18 21:56:29.974394222 -0400
++++ mac-3.99-u4-b5-s7/src/MACLib/Prepare.cpp 2016-09-18 21:59:28.214726465 -0400
+@@ -177,9 +177,9 @@
+
+ if (LPeak == 0) { *pSpecialCodes |= SPECIAL_FRAME_LEFT_SILENCE; }
+ if (RPeak == 0) { *pSpecialCodes |= SPECIAL_FRAME_RIGHT_SILENCE; }
+- if (max(LPeak, RPeak) > *pPeakLevel)
++ if (max_macro(LPeak, RPeak) > *pPeakLevel)
+ {
+- *pPeakLevel = max(LPeak, RPeak);
++ *pPeakLevel = max_macro(LPeak, RPeak);
+ }
+
+ // check for pseudo-stereo files
+--- mac-3.99-u4-b5-s7/src/MACLib/UnBitArray.cpp.old 2016-09-18 21:56:16.548445898 -0400
++++ mac-3.99-u4-b5-s7/src/MACLib/UnBitArray.cpp 2016-09-18 21:58:56.148161050 -0400
+@@ -110,7 +110,7 @@
+ if (m_nVersion >= 3990)
+ {
+ // figure the pivot value
+- int nPivotValue = max(BitArrayState.nKSum / 32, 1);
++ int nPivotValue = max_macro(BitArrayState.nKSum / 32, 1);
+
+ // get the overflow
+ int nOverflow = 0;
diff --git a/audio/mac/mac.SlackBuild b/audio/mac/mac.SlackBuild
index eb2e3ada5b..c2bcab4668 100644
--- a/audio/mac/mac.SlackBuild
+++ b/audio/mac/mac.SlackBuild
@@ -78,6 +78,8 @@ if [ "${FORCE_SLACK_CFLAGS:-no}" = "yes" ]; then
sed -i 's,-O3\>,,' configure
fi
+patch -p1 < $CWD/gcc6.patch
+
LDFLAGS="-Wl,-s" \
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
diff --git a/audio/milkytracker/README b/audio/milkytracker/README
index f16c7e8551..b940d275bb 100644
--- a/audio/milkytracker/README
+++ b/audio/milkytracker/README
@@ -1,5 +1,4 @@
This is MilkyTracker 0.90.80. MilkyTracker is an audio tracker, and can create
standard .MOD and .XM module files.
-JACK support is optional and can be added by doing:
- JACK=yes ./milkytracker.SlackBuild
+lhasa is an optional dependency.
diff --git a/audio/milkytracker/milkytracker.SlackBuild b/audio/milkytracker/milkytracker.SlackBuild
index 7f6841c8f1..fc2a020d71 100644
--- a/audio/milkytracker/milkytracker.SlackBuild
+++ b/audio/milkytracker/milkytracker.SlackBuild
@@ -24,13 +24,14 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=milkytracker
-VERSION=${VERSION:-0.90.86}
+SRCNAM=MilkyTracker
+VERSION=${VERSION:-1.02.00}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -41,8 +42,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -60,34 +61,37 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
-cd $PRGNAM-$VERSION
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.?z*
+cd $SRCNAM-$VERSION
chown -R root:root .
find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -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 {} \;
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS -lasound" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --with-jack=${JACK:-no}
+# Thanks fedora
+patch -p1 < $CWD/sdlmain.patch
-make
-make install DESTDIR=$PKG
+mkdir -p build
+cd build
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_DOCDIR=/usr/doc/$PRGNAM-$VERSION \
+ -DCMAKE_BUILD_TYPE=Release \
+ ..
+ make
+ make install DESTDIR=$PKG
+cd ..
mkdir -p $PKG/usr/share/{applications,pixmaps}
cp $CWD/milkytracker.desktop $PKG/usr/share/applications
cp resources/pictures/carton.png $PKG/usr/share/pixmaps/milkytracker-icon-128.png
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
diff --git a/audio/milkytracker/milkytracker.info b/audio/milkytracker/milkytracker.info
index cdab01e8f0..d1ff04930b 100644
--- a/audio/milkytracker/milkytracker.info
+++ b/audio/milkytracker/milkytracker.info
@@ -1,10 +1,10 @@
PRGNAM="milkytracker"
-VERSION="0.90.86"
+VERSION="1.02.00"
HOMEPAGE="http://www.milkytracker.org/"
-DOWNLOAD="http://www.milkytracker.org/files/milkytracker-0.90.86.tar.bz2"
-MD5SUM="1ef462969cf54ba61748d4d878b5747e"
+DOWNLOAD="https://github.com/milkytracker/MilkyTracker/archive/v1.02.00/milkytracker-1.02.00.tar.gz"
+MD5SUM="ab4c881b8bbd41fde60823c191c7c6ce"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="zziplib"
+REQUIRES="jack-audio-connection-kit zziplib"
MAINTAINER="Erik Hanson"
EMAIL="erik@slackbuilds.org"
diff --git a/audio/milkytracker/sdlmain.patch b/audio/milkytracker/sdlmain.patch
new file mode 100644
index 0000000000..3917a062d6
--- /dev/null
+++ b/audio/milkytracker/sdlmain.patch
@@ -0,0 +1,12 @@
+diff -ru MilkyTracker-1.0.0/cmake/FindSDL2.cmake MilkyTracker-sdlmain/cmake/FindSDL2.cmake
+--- MilkyTracker-1.0.0/cmake/FindSDL2.cmake 2017-03-12 21:30:25.000000000 +0200
++++ MilkyTracker-sdlmain/cmake/FindSDL2.cmake 2017-03-19 20:23:15.773398294 +0200
+@@ -93,7 +93,7 @@
+ endif()
+
+ set(SDL2_INCLUDE_DIRS ${SDL2_INCLUDE_DIR})
+-set(SDL2_LIBRARIES ${SDL2MAIN_LIBRARY} ${SDL2_LIBRARY})
++set(SDL2_LIBRARIES ${SDL2_LIBRARY})
+
+ include(FindPackageHandleStandardArgs)
+
diff --git a/audio/muse/README b/audio/muse/README
index 232eb66968..9930502f1b 100644
--- a/audio/muse/README
+++ b/audio/muse/README
@@ -4,6 +4,10 @@ the MusE development team. MusE aims to be a complete multitrack
virtual studio for Linux, it is published under the GNU General Public
License.
-Optional dependencies are fluidsynth, dssi and lash.
+Optional dependencies are fluidsynth, lash and lilv.
To start MusE, the user has to be in the "audio" group.
+
+NOTE: it seems like native vst support is broken on x86 so we
+disable it on this platform: vst plugins on x86 can still be used
+through the optional dependency dssi-vst.
diff --git a/audio/muse/muse.SlackBuild b/audio/muse/muse.SlackBuild
index 833fd3ba30..90dffd9086 100644
--- a/audio/muse/muse.SlackBuild
+++ b/audio/muse/muse.SlackBuild
@@ -5,13 +5,13 @@
# Written by Felix Pfeifer pfeifer[dot]felix[at]googlemail[dot]com
PRGNAM=muse
-VERSION=${VERSION:-2.1.2}
+VERSION=${VERSION:-3.0pre2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -22,8 +22,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -36,6 +36,9 @@ else
LIBDIRSUFFIX=""
fi
+native_vst=""
+[ "$ARCH" = "i586" ] && native_vst="-DENABLE_VST_NATIVE=0 -DENABLE_VST_VESTIGE=0"
+
set -e
rm -rf $PKG
@@ -46,19 +49,21 @@ tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+echo $native_vst
mkdir -p build
cd build
cmake \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS -fpermissive" \
-DCMAKE_INSTALL_PREFIX=/usr \
-DLIB_SUFFIX=${LIBDIRSUFFIX} \
-DENABLE_PYTHON:STRING="ON" \
+ $native_vst \
-DCMAKE_BUILD_TYPE=Release ..
make
make install DESTDIR=$PKG
diff --git a/audio/muse/muse.info b/audio/muse/muse.info
index f72af27286..c4baf66135 100644
--- a/audio/muse/muse.info
+++ b/audio/muse/muse.info
@@ -1,10 +1,10 @@
PRGNAM="muse"
-VERSION="2.1.2"
+VERSION="3.0pre2"
HOMEPAGE="http://muse-sequencer.org/"
-DOWNLOAD="http://downloads.sf.net/lmuse/muse-2.1.2.tar.gz"
-MD5SUM="ad917335ac05a3d62e3cd073af901001"
+DOWNLOAD="http://downloads.sf.net/lmuse/muse-3.0pre2.tar.gz"
+MD5SUM="9737152b13ff90959507890ed1491bfa"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="jack-audio-connection-kit ladspa_sdk liblo"
+REQUIRES="dssi jack-audio-connection-kit ladspa_sdk liblo qt5"
MAINTAINER="Felix Pfeifer"
EMAIL="pfeifer[dot]felix[at]googlemail[dot]com"
diff --git a/audio/ocp/ocp.SlackBuild b/audio/ocp/ocp.SlackBuild
index 523d4638c8..4351552662 100644
--- a/audio/ocp/ocp.SlackBuild
+++ b/audio/ocp/ocp.SlackBuild
@@ -70,7 +70,7 @@ find -L . \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
sed -i "s/0.1.20/0.1.21/g" configure
-sed -i "4592c2.95.[2-9]|2.95.[2-9][-.]*|3.[0-9]|3.[0-9].[0-9]|3.[0-9]|3.[0-9].[0-9]-*|4.*|5.*)" configure
+sed -i "4592c2.95.[2-9]|2.95.[2-9][-.]*|3.[0-9]|3.[0-9].[0-9]|3.[0-9]|3.[0-9].[0-9]-*|4.*|5.*|6.*|7.*)" configure
CFLAGS="$SLKCFLAGS" \
./configure \
diff --git a/audio/opus-tools/README b/audio/opus-tools/README
deleted file mode 100644
index 4f031bf99a..0000000000
--- a/audio/opus-tools/README
+++ /dev/null
@@ -1,2 +0,0 @@
-opus-tools provides command-line utilities to encode, inspect and
-decode .opus files.
diff --git a/audio/opus-tools/opus-tools.SlackBuild b/audio/opus-tools/opus-tools.SlackBuild
deleted file mode 100644
index 56c5cb9b65..0000000000
--- a/audio/opus-tools/opus-tools.SlackBuild
+++ /dev/null
@@ -1,102 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for opus-tools
-
-# Copyright 2013-2018 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
-# 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.
-
-PRGNAM=opus-tools
-VERSION=${VERSION:-0.1.10}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-DOCS="AUTHORS COPYING"
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.?z*
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --build=$ARCH-slackware-linux
-
-make
-make install DESTDIR=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/audio/opus-tools/opus-tools.info b/audio/opus-tools/opus-tools.info
deleted file mode 100644
index 9ee074f07d..0000000000
--- a/audio/opus-tools/opus-tools.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="opus-tools"
-VERSION="0.1.10"
-HOMEPAGE="http://www.opus-codec.org"
-DOWNLOAD="https://ftp.mozilla.org/pub/mozilla.org/opus/opus-tools-0.1.10.tar.gz"
-MD5SUM="6b78535d58b94832710b14e219f65a91"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="opus"
-MAINTAINER="Matteo Bernardini"
-EMAIL="ponce@slackbuilds.org"
diff --git a/audio/opus-tools/slack-desc b/audio/opus-tools/slack-desc
deleted file mode 100644
index 39aaf10819..0000000000
--- a/audio/opus-tools/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-opus-tools: opus-tools (utilities for opus)
-opus-tools:
-opus-tools: opus-tools provides command-line utilities to encode, inspect and
-opus-tools: decode .opus files.
-opus-tools:
-opus-tools: homepage: http://www.opus-codec.org
-opus-tools:
-opus-tools:
-opus-tools:
-opus-tools:
-opus-tools:
diff --git a/audio/opus/README b/audio/opus/README
deleted file mode 100644
index df5dd26216..0000000000
--- a/audio/opus/README
+++ /dev/null
@@ -1,4 +0,0 @@
-Opus is a totally open, royalty-free, highly versatile audio codec.
-It is standardized by the Internet Engineering Task Force (IETF)
-as RFC 6716 which incorporated technology from Skype's SILK codec
-and Xiph.Org's CELT codec.
diff --git a/audio/opus/opus.SlackBuild b/audio/opus/opus.SlackBuild
deleted file mode 100644
index 0775667b2d..0000000000
--- a/audio/opus/opus.SlackBuild
+++ /dev/null
@@ -1,104 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for opus
-
-# Copyright 2012-2017 Willy Sudiarto Raharjo <willysr@slackbuilds.org>
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=opus
-VERSION=${VERSION:-1.3}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --disable-static \
- --enable-intrinsics \
- --enable-ambisonics \
- --enable-rtcd \
- --build=$ARCH-slackware-linux
-
-make
-make install DESTDIR=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS COPYING INSTALL README $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/audio/opus/opus.info b/audio/opus/opus.info
deleted file mode 100644
index 7006fbabfc..0000000000
--- a/audio/opus/opus.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="opus"
-VERSION="1.3"
-HOMEPAGE="https://opus-codec.org/"
-DOWNLOAD="https://archive.mozilla.org/pub/opus/opus-1.3.tar.gz"
-MD5SUM="c4143b6823f2f0d5520d1be2155db2eb"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Willy Sudiarto Raharjo"
-EMAIL="willysr@slackbuilds.org"
diff --git a/audio/opus/slack-desc b/audio/opus/slack-desc
deleted file mode 100644
index fb36dc8f15..0000000000
--- a/audio/opus/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-opus: opus (Audio Codec)
-opus:
-opus: Opus is a totally open, royalty-free, highly versatile audio codec.
-opus: It is standardized by the Internet Engineering Task Force (IETF)
-opus: as RFC 6716 which incorporated technology from Skype's SILK codec
-opus: and Xiph.Org's CELT codec.
-opus:
-opus: Project site: https://opus-codec.org/
-opus:
-opus:
-opus:
diff --git a/audio/opusfile/README b/audio/opusfile/README
deleted file mode 100644
index 4c32609f79..0000000000
--- a/audio/opusfile/README
+++ /dev/null
@@ -1,2 +0,0 @@
-opusfile provides application developers with a high-level API for
-decoding and seeking in .opus files.
diff --git a/audio/opusfile/opusfile.info b/audio/opusfile/opusfile.info
deleted file mode 100644
index 5a1d075dc5..0000000000
--- a/audio/opusfile/opusfile.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="opusfile"
-VERSION="0.11"
-HOMEPAGE="http://www.opus-codec.org"
-DOWNLOAD="https://ftp.mozilla.org/pub/mozilla.org/opus/opusfile-0.11.tar.gz"
-MD5SUM="e1e94a9a663b4ca7a388f367baf1a7e3"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="opus"
-MAINTAINER="Matteo Bernardini"
-EMAIL="ponce@slackbuilds.org"
diff --git a/audio/opusfile/slack-desc b/audio/opusfile/slack-desc
deleted file mode 100644
index e77532d058..0000000000
--- a/audio/opusfile/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-opusfile: opusfile (opus decoding API)
-opusfile:
-opusfile: opusfile provides application developers with a high-level API for
-opusfile: decoding and seeking in .opus files.
-opusfile:
-opusfile: homepage: http://www.opus-codec.org
-opusfile:
-opusfile:
-opusfile:
-opusfile:
-opusfile:
diff --git a/audio/pithos/doinst.sh b/audio/pithos/doinst.sh
index 4a25de5e6f..e924bab47c 100644
--- a/audio/pithos/doinst.sh
+++ b/audio/pithos/doinst.sh
@@ -8,3 +8,9 @@ if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
fi
fi
+if [ -e usr/share/glib-2.0/schemas ]; then
+ if [ -x /usr/bin/glib-compile-schemas ]; then
+ /usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas >/dev/null 2>&1
+ fi
+fi
+
diff --git a/audio/pithos/pithos.SlackBuild b/audio/pithos/pithos.SlackBuild
index 32579cffe5..0d7c1f9b1e 100644
--- a/audio/pithos/pithos.SlackBuild
+++ b/audio/pithos/pithos.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for pithos
-# Copyright 2013 Robby Workman, Northport, Alabama, USA
+# Copyright 2013,2017 Robby Workman, Tuscaloosa, Alabama, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,13 +23,13 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=pithos
-VERSION=${VERSION:-git_ed501485}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-1.4.0}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -40,8 +40,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -61,15 +61,25 @@ mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
+chown -R root:root $PRGNAM-$VERSION
+find -L $PRGNAM-$VERSION \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
-o -perm 511 \) -exec chmod 755 {} \; -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-python setup.py install --root=$PKG
+mkdir -p $PRGNAM-$VERSION/build
+meson \
+ --prefix=/usr \
+ --libdir=/usr/lib64 \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --infodir=/usr/info \
+ $PRGNAM-$VERSION \
+ $PRGNAM-$VERSION/build
+
+DESTDIR=$PKG ninja -C $PRGNAM-$VERSION/build install
cat $CWD/contrib/pithosctl > $PKG/usr/bin/pithosctl
chmod 0755 $PKG/usr/bin/pithosctl
@@ -78,7 +88,7 @@ find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | gr
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a CHANGELOG README.md $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a $PRGNAM-$VERSION/README.md $PRGNAM-$VERSION/license $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/audio/pithos/pithos.info b/audio/pithos/pithos.info
index c276852bd2..198bec9218 100644
--- a/audio/pithos/pithos.info
+++ b/audio/pithos/pithos.info
@@ -1,10 +1,10 @@
PRGNAM="pithos"
-VERSION="git_ed501485"
-HOMEPAGE="http://kevinmehall.net/p/pithos/"
-DOWNLOAD="http://harrier.slackbuilds.org/misc/pithos-git_ed501485.tar.xz"
-MD5SUM="fb7f45ff93b5aab7b60e5b943d7bb024"
+VERSION="1.4.0"
+HOMEPAGE="https://github.com/pithos/pithos"
+DOWNLOAD="https://github.com/pithos/pithos/releases/download/1.4.0/pithos-1.4.0.tar.xz"
+MD5SUM="2324a9ed104682fb2417f662a82cc8bb"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="gst0-python gst0-ffmpeg"
+REQUIRES="meson gst-python gst-libav"
MAINTAINER="Robby Workman"
EMAIL="rworkman@slackbuilds.org"
diff --git a/audio/pithos/slack-desc b/audio/pithos/slack-desc
index 3ac97f0f7d..c55001e893 100644
--- a/audio/pithos/slack-desc
+++ b/audio/pithos/slack-desc
@@ -13,7 +13,7 @@ pithos: lightweight than the Pandora.com web client and integrates with
pithos: desktop features such as media keys, notifications, and the sound
pithos: menu.
pithos:
-pithos: Homepage: http://kevinmehall.net/p/pithos/
+pithos: Homepage: https://github.com/pithos/pithos
pithos:
pithos:
pithos:
diff --git a/audio/rumor/gcc7.diff b/audio/rumor/gcc7.diff
new file mode 100644
index 0000000000..a8c54f20c0
--- /dev/null
+++ b/audio/rumor/gcc7.diff
@@ -0,0 +1,12 @@
+diff -Naur rumor-1.0.5.orig/src/notator.cc rumor-1.0.5.new/src/notator.cc
+--- rumor-1.0.5.orig/src/notator.cc 2010-11-15 18:40:22.000000000 +0100
++++ rumor-1.0.5.new/src/notator.cc 2017-05-31 15:51:42.014855383 +0200
+@@ -334,7 +334,7 @@
+ }
+ } else {
+ OctaveTic=(RefPitch_wt>AbsPitch_wt?',':'\'');
+- NumTics=(abs(RefPitch_wt-AbsPitch_wt)+3)/7;
++ NumTics=(RefPitch_wt-AbsPitch_wt+3)/7;
+ RefPitch_wt=AbsPitch_wt;
+ }
+ for (int i=0; i<NumTics; i++){
diff --git a/audio/rumor/rumor.SlackBuild b/audio/rumor/rumor.SlackBuild
index daeebef2b9..d3ee309487 100644
--- a/audio/rumor/rumor.SlackBuild
+++ b/audio/rumor/rumor.SlackBuild
@@ -49,6 +49,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+# Thanks to archlinux
+patch -p1 < $CWD/gcc7.diff
+
./autogen.sh
CFLAGS="$SLKCFLAGS" \
diff --git a/audio/seq24/perfedit.patch b/audio/seq24/perfedit.patch
deleted file mode 100644
index 960e6d2bcc..0000000000
--- a/audio/seq24/perfedit.patch
+++ /dev/null
@@ -1,29 +0,0 @@
---- seq24/trunk/src/perfedit.cpp.old 2016-01-03 23:30:55.562890265 +0700
-+++ seq24/trunk/src/perfedit.cpp 2016-01-03 23:32:24.958812214 +0700
-@@ -119,7 +119,7 @@
- /* snap */
- m_button_snap = manage( new Button());
- m_button_snap->add( *manage( new Image(Gdk::Pixbuf::create_from_xpm_data( snap_xpm ))));
-- m_button_snap->signal_clicked().connect( bind<Menu *>( mem_fun( *this, &perfedit::popup_menu), m_menu_snap ));
-+ m_button_snap->signal_clicked().connect( bind<void>( mem_fun( *this, &perfedit::popup_menu), m_menu_snap ));
- add_tooltip( m_button_snap, "Grid snap. (Fraction of Measure Length)" );
- m_entry_snap = manage( new Entry());
- m_entry_snap->set_size_request( 40, -1 );
-@@ -152,7 +152,7 @@
- /* beats per measure */
- m_button_bpm = manage( new Button());
- m_button_bpm->add( *manage( new Image(Gdk::Pixbuf::create_from_xpm_data( down_xpm ))));
-- m_button_bpm->signal_clicked().connect( bind<Menu *>( mem_fun( *this, &perfedit::popup_menu), m_menu_bpm ));
-+ m_button_bpm->signal_clicked().connect( bind<void>( mem_fun( *this, &perfedit::popup_menu), m_menu_bpm ));
- add_tooltip( m_button_bpm, "Time Signature. Beats per Measure" );
- m_entry_bpm = manage( new Entry());
- m_entry_bpm->set_width_chars(2);
-@@ -162,7 +162,7 @@
- /* beat width */
- m_button_bw = manage( new Button());
- m_button_bw->add( *manage( new Image(Gdk::Pixbuf::create_from_xpm_data( down_xpm ))));
-- m_button_bw->signal_clicked().connect( bind<Menu *>( mem_fun( *this, &perfedit::popup_menu), m_menu_bw ));
-+ m_button_bw->signal_clicked().connect( bind<void>( mem_fun( *this, &perfedit::popup_menu), m_menu_bw ));
- add_tooltip( m_button_bw, "Time Signature. Length of Beat" );
- m_entry_bw = manage( new Entry());
- m_entry_bw->set_width_chars(2);
diff --git a/audio/seq24/seq24.SlackBuild b/audio/seq24/seq24.SlackBuild
index 39df07766b..4b8cf91b27 100644
--- a/audio/seq24/seq24.SlackBuild
+++ b/audio/seq24/seq24.SlackBuild
@@ -23,13 +23,13 @@
# YOUR DATA IS DESTROYED.
PRGNAM=seq24
-VERSION=${VERSION:-rev136}
+VERSION=${VERSION:-0.9.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -40,8 +40,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -59,9 +59,9 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM/trunk
-tar -xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM/trunk
+rm -rf $PRGNAM-$VERSION
+tar -xvf $CWD/$PRGNAM-$VERSION.tar.?z*
+cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -69,12 +69,17 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-autoreconf -i
-
-patch -p2 < $CWD/perfedit.patch
+# Thanks to fedora for this:
+# class "mutex" in src/* clashes with "std::mutex" due
+# to "using namespace std;". Rename mutex to seq24_mutex.
+sed -i \
+ -e 's,mutex::,seq24_mutex::,' \
+ -e 's,\([ cs]\) mutex,\1 seq24_mutex,' \
+ -e 's,::mutex,::seq24_mutex,' \
+ src/*.h src/*.cpp
CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS -O2 -std=c++11" \
+CXXFLAGS="$SLKCFLAGS -std=c++11" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
diff --git a/audio/seq24/seq24.info b/audio/seq24/seq24.info
index 7681d18b95..3ebc841eb3 100644
--- a/audio/seq24/seq24.info
+++ b/audio/seq24/seq24.info
@@ -1,8 +1,8 @@
PRGNAM="seq24"
-VERSION="rev136"
+VERSION="0.9.3"
HOMEPAGE="http://filter24.org/seq24/"
-DOWNLOAD="http://master.dl.sourceforge.net/project/slackbuildsdirectlinks/seq24/seq24-rev136.tar.gz"
-MD5SUM="e3616365eefa04349773198fec794241"
+DOWNLOAD="https://launchpad.net/seq24/trunk/0.9.3/+download/seq24-0.9.3.tar.bz2"
+MD5SUM="e7c653abb71f17e5cc070ef1d8406a1a"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/audio/shell-fm/README b/audio/shell-fm/README
deleted file mode 100644
index fdf6eca651..0000000000
--- a/audio/shell-fm/README
+++ /dev/null
@@ -1,12 +0,0 @@
-shell-fm is a lightweight, console-based player for Last.FM radio streams.
-It's pretty small (the binary is currently a little smaller than 60K, or
-50K when stripped) and it has most features the "official" player has, if
-not even a few more. Additional features are, for example:
-
-network interface (control shell-fm remotely)
-autoban (automatically ban all tracks of an artist you don't like)
-bookmark stations (quickly jump to bookmarked stations with a single key)
-... probably more
-
-*NOTE: Last-FM have changed their API so that only PAID subscribers
-can listen to streams in shell-fm.
diff --git a/audio/shell-fm/shell-fm.SlackBuild b/audio/shell-fm/shell-fm.SlackBuild
deleted file mode 100644
index 94028cc20f..0000000000
--- a/audio/shell-fm/shell-fm.SlackBuild
+++ /dev/null
@@ -1,91 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for shell-fm
-
-# Copyright 2009-2013 David Woodfall <dave@dawoodfall.net>
-# 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.
-
-PRGNAM=shell-fm
-VERSION=${VERSION:-0.8}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-CFLAGS="$SLKCFLAGS" \
-make
-make install DESTDIR=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a INSTALL AUTHORS RELEASE \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/audio/shell-fm/shell-fm.info b/audio/shell-fm/shell-fm.info
deleted file mode 100644
index 28956094c1..0000000000
--- a/audio/shell-fm/shell-fm.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="shell-fm"
-VERSION="0.8"
-HOMEPAGE="https://github.com/jkramer/shell-fm"
-DOWNLOAD="https://github.com/jkramer/shell-fm/archive/v0.8/shell-fm-0.8.tar.gz"
-MD5SUM="6d6aca71fb8a33562ecf614a10a45255"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="David Woodfall"
-EMAIL="dave@dawoodfall.net"
diff --git a/audio/shell-fm/slack-desc b/audio/shell-fm/slack-desc
deleted file mode 100644
index 3bf0b1a989..0000000000
--- a/audio/shell-fm/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-shell-fm: shell-fm (a command line last.fm player)
-shell-fm:
-shell-fm: shell-fm is a lightweight, console-based player for Last.FM radio
-shell-fm: streams. It's pretty small (the binary is currently a little smaller
-shell-fm: than 60K, or 50K when stripped) and it has most features the
-shell-fm: "official" player has, if not even a few more.
-shell-fm:
-shell-fm: Homepage: https://github.com/jkramer/shell-fm
-shell-fm:
-shell-fm:
-shell-fm:
diff --git a/audio/sidplayfp/sidplayfp.SlackBuild b/audio/sidplayfp/sidplayfp.SlackBuild
index ae706d48f7..dd201aac7e 100644
--- a/audio/sidplayfp/sidplayfp.SlackBuild
+++ b/audio/sidplayfp/sidplayfp.SlackBuild
@@ -25,13 +25,13 @@
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=sidplayfp
-VERSION=${VERSION:-1.3.0}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-1.4.3}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -42,8 +42,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
diff --git a/audio/sidplayfp/sidplayfp.info b/audio/sidplayfp/sidplayfp.info
index 8c8d1ac6dd..1c16a8fcd7 100644
--- a/audio/sidplayfp/sidplayfp.info
+++ b/audio/sidplayfp/sidplayfp.info
@@ -1,8 +1,8 @@
PRGNAM="sidplayfp"
-VERSION="1.3.0"
+VERSION="1.4.3"
HOMEPAGE="https://sourceforge.net/projects/sidplay-residfp/"
-DOWNLOAD="https://sourceforge.net/projects/sidplay-residfp/files/sidplayfp/1.3/sidplayfp-1.3.0.tar.gz"
-MD5SUM="65ae736d372860223bee9bceb00a3b91"
+DOWNLOAD="https://downloads.sourceforge.net/sidplay-residfp/sidplayfp-1.4.3.tar.gz"
+MD5SUM="be020b5927c80c4269273895400a8120"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="libsidplayfp"
diff --git a/audio/speex/README b/audio/speex/README
deleted file mode 100644
index 339c23c818..0000000000
--- a/audio/speex/README
+++ /dev/null
@@ -1,7 +0,0 @@
-Speex is an Open Source/Free Software patent-free audio compression
-format designed for speech. The Speex Project aims to lower the barrier
-of entry for voice applications by providing a free alternative to
-expensive proprietary speech codecs. Moreover, Speex is well-adapted
-to Internet applications and provides useful features that are not
-present in most other codecs. Finally, Speex is part of the GNU
-Project and is available under the revised BSD license.
diff --git a/audio/speex/slack-desc b/audio/speex/slack-desc
deleted file mode 100644
index a675982e71..0000000000
--- a/audio/speex/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-speex: speex (an audio compression format designed for speech)
-speex:
-speex: Speex is an Open Source/Free Software patent-free audio compression
-speex: format designed for speech. The Speex Project aims to lower the
-speex: barrier of entry for voice applications by providing a free
-speex: alternative to expensive proprietary speech codecs. Moreover, Speex
-speex: is well-adapted to Internet applications and provides useful features
-speex: that are not present in most other codecs. Finally, Speex is part of
-speex: the GNU Project and is available under the revised BSD license.
-speex:
-speex: homepage: https://speex.org/
diff --git a/audio/speex/speex.SlackBuild b/audio/speex/speex.SlackBuild
deleted file mode 100644
index dba755fb36..0000000000
--- a/audio/speex/speex.SlackBuild
+++ /dev/null
@@ -1,116 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for speex
-
-# Copyright (c) 2007 Alex Lysenka <me@alkos333.net>
-# Copyright (c) 2012 Vliegendehuiskat
-# Copyright (c) 2014-2016 Matteo Bernardini <ponce@slackbuilds.org>
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-# Modified by SlackBuilds.org
-
-PRGNAM=speex
-VERSION=${VERSION:-1.2.0}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-# Fix end-of-line encoding.
-sed -i 's/\r//' README.TI-DSP
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-SPEEXDSP_CFLAGS="-I$PKG/usr/include" \
-SPEEXDSP_LIBS="-L$PKG/usr/lib${LIBDIRSUFFIX} -lspeexdsp" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --mandir=/usr/man \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --enable-static=no \
- --enable-binaries \
- --build=$ARCH-slackware-linux
-
-# Hack to also make it look in the right directory on multilib systems
-make LDFLAGS="-L/usr/lib${LIBDIRSUFFIX} -L$PKG/usr/lib${LIBDIRSUFFIX} -lspeexdsp"
-make install DESTDIR=$PKG
-
-find $PKG/usr/man -type f -exec gzip -9 '{}' \;
-
-# Fix libspeex.la (if present)
-sed -i "s|-L$PKG.*/lib${LIBDIRSUFFIX} ||" $PKG/usr/lib${LIBDIRSUFFIX}/libspeex.la || true
-
-cp -a \
- AUTHORS COPYING ChangeLog INSTALL NEWS README* TODO \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-find $PKG/usr/doc -type f -exec chown root:root {} \; -exec chmod 644 {} \;
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/audio/speex/speex.info b/audio/speex/speex.info
deleted file mode 100644
index 0fb235e318..0000000000
--- a/audio/speex/speex.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="speex"
-VERSION="1.2.0"
-HOMEPAGE="https://speex.org"
-DOWNLOAD="https://ftp.osuosl.org/pub/xiph/releases/speex/speex-1.2.0.tar.gz"
-MD5SUM="8ab7bb2589110dfaf0ed7fa7757dc49c"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Matteo Bernardini"
-EMAIL="ponce@slackbuilds.org"
diff --git a/audio/xmms2/xmms2.SlackBuild b/audio/xmms2/xmms2.SlackBuild
index fcd1ede0a8..21a5a5e300 100644
--- a/audio/xmms2/xmms2.SlackBuild
+++ b/audio/xmms2/xmms2.SlackBuild
@@ -7,7 +7,7 @@
# Updated by Andrew Brouwers, abrouwers at gmail d0t com (13.0, 64-bit)
PRGNAM=xmms2
-VERSION=${VERSION:-"20150712_942b17f"}
+VERSION=${VERSION:-"20170827_dedc33d"}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
diff --git a/audio/xmms2/xmms2.info b/audio/xmms2/xmms2.info
index 61f3ec488c..e4ba4787bd 100644
--- a/audio/xmms2/xmms2.info
+++ b/audio/xmms2/xmms2.info
@@ -1,8 +1,8 @@
PRGNAM="xmms2"
-VERSION="20150712_942b17f"
+VERSION="20170827_dedc33d"
HOMEPAGE="http://wiki.xmms2.xmms.se/"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/xmms2-20150712_942b17f.tar.xz"
-MD5SUM="8a5c43ef18fdaf24f6853ced83ce1620"
+DOWNLOAD="http://ponce.cc/slackware/sources/repo/xmms2-20170827_dedc33d.tar.xz"
+MD5SUM="082e47f3ca4f40b5c0029e8a3f0a7d55"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/desktop/arc-theme/README b/desktop/arc-theme/README
index a9fc04447a..9b44fa96a7 100644
--- a/desktop/arc-theme/README
+++ b/desktop/arc-theme/README
@@ -1,3 +1,5 @@
Arc is a flat theme with transparent elements for GTK 3, GTK 2 and
Gnome-Shell which supports GTK 3 and GTK 2 based desktop
environments like Gnome, Unity, Budgie, Pantheon, XFCE, Mate, etc.
+
+inkscape is a build-time dependency.
diff --git a/desktop/arc-theme/arc-theme.SlackBuild b/desktop/arc-theme/arc-theme.SlackBuild
index d3a596f6b3..0e3ce271dc 100644
--- a/desktop/arc-theme/arc-theme.SlackBuild
+++ b/desktop/arc-theme/arc-theme.SlackBuild
@@ -25,7 +25,7 @@
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=arc-theme
-VERSION=${VERSION:-20170302}
+VERSION=${VERSION:-20181022}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -56,13 +56,15 @@ else
LIBDIRSUFFIX=""
fi
+gnome_shell="--disable-gnome-shell" ; [[ $(which gnome-shell) ]] && gnome_shell=""
+
set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+tar xvf $CWD/$PRGNAM-$VERSION.tar.?z
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
@@ -71,16 +73,16 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-sh autogen.sh
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
-./configure \
+./autogen.sh \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--sysconfdir=/etc \
--localstatedir=/var \
--mandir=/usr/man \
--docdir=/usr/doc/$PRGNAM-$VERSION \
+ $gnome_shell \
--build=$ARCH-slackware-linux
make
diff --git a/desktop/arc-theme/arc-theme.info b/desktop/arc-theme/arc-theme.info
index e653a09f81..3f7b6a1e22 100644
--- a/desktop/arc-theme/arc-theme.info
+++ b/desktop/arc-theme/arc-theme.info
@@ -1,10 +1,10 @@
PRGNAM="arc-theme"
-VERSION="20170302"
-HOMEPAGE="https://github.com/horst3180/arc-theme/"
-DOWNLOAD="https://github.com/horst3180/arc-theme/archive/20170302/arc-theme-20170302.tar.gz"
-MD5SUM="fe3e397ffc3633c1b5ba3b1d6e2456a7"
+VERSION="20181022"
+HOMEPAGE="https://github.com/NicoHood/arc-theme/"
+DOWNLOAD="https://github.com/NicoHood/arc-theme/releases/download/20181022/arc-theme-20181022.tar.xz"
+MD5SUM="4819afac384c9c63dabf4969026ad098"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES=""
+REQUIRES="inkscape murrine optipng sassc"
MAINTAINER="Marcel Saegebarth"
EMAIL="marc@mos6581.de"
diff --git a/desktop/arc-theme/slack-desc b/desktop/arc-theme/slack-desc
index a4387212a0..5baedd24ef 100644
--- a/desktop/arc-theme/slack-desc
+++ b/desktop/arc-theme/slack-desc
@@ -12,7 +12,7 @@ arc-theme: Arc is a flat theme with transparent elements for GTK 3, GTK 2 and
arc-theme: Gnome-Shell which supports GTK 3 and GTK 2 based desktop
arc-theme: environments like Gnome, Unity, Budgie, Pantheon, XFCE, Mate, etc.
arc-theme:
-arc-theme: Homepage: https://github.com/horst3180/arc-theme/
+arc-theme: Homepage: https://github.com/NicoHood/arc-theme/
arc-theme:
arc-theme:
arc-theme:
diff --git a/desktop/cairo-dock-plugins/README b/desktop/cairo-dock-plugins/README
index d758f4c722..496a240ad9 100644
--- a/desktop/cairo-dock-plugins/README
+++ b/desktop/cairo-dock-plugins/README
@@ -3,4 +3,4 @@ plug-ins for Cairo-Dock It provides some new functionnalities like
controling music players or note-taking, a clock or a desktop
switcher but also some views, dialogs and desklets skins, etc.
-vala, python3 and mono are optional dependencies.
+libetpan, vala, python3 and mono are optional dependencies.
diff --git a/desktop/cairo-dock-plugins/cairo-dock-plugins.SlackBuild b/desktop/cairo-dock-plugins/cairo-dock-plugins.SlackBuild
index 1ef6650ec5..ff20324bc6 100644
--- a/desktop/cairo-dock-plugins/cairo-dock-plugins.SlackBuild
+++ b/desktop/cairo-dock-plugins/cairo-dock-plugins.SlackBuild
@@ -23,13 +23,13 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=cairo-dock-plugins
-VERSION=${VERSION:-3.3.2}
+VERSION=${VERSION:-3.4.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -40,8 +40,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -59,9 +59,9 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$VERSION
+rm -rf cairo-dock-plug-ins-$VERSION
tar -xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
+cd cairo-dock-plug-ins-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -69,25 +69,33 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# Thanks to fedora and archlinux
+patch -p1 < $CWD/patches/mono.patch
+patch -p1 < $CWD/patches/time_h-confict.patch
+sed -i.wall -e 's|-Wno-all||' Dbus/interfaces/vala/src/CMakeLists.txt
+
+mkdir build
+cd build
cmake \
-DCMAKE_C_FLAGS_RELEASE:STRING="$SLKCFLAGS" \
-DCMAKE_CXX_FLAGS_RELEASE:STRING="$SLKCFLAGS" \
-DLIB_SUFFIX=${LIBDIRSUFFIX} \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_BUILD_TYPE=Release .
+ -DCMAKE_BUILD_TYPE=Release ..
make VERBOSE=1
make install DESTDIR=$PKG
+cd ..
# Sheesh. Donchaloveruby?
-mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/ruby/1.9.1
+mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/ruby/2.4.0
if [ -d $PKG/usr/usr ]; then
- mv $PKG/usr/usr/lib${LIBDIRSUFFIX}/ruby/1.9.1/CDApplet.rb \
- $PKG/usr/lib${LIBDIRSUFFIX}/ruby/1.9.1
+ mv $PKG/usr/usr/lib${LIBDIRSUFFIX}/ruby/2.4.0/CDApplet.rb \
+ $PKG/usr/lib${LIBDIRSUFFIX}/ruby/2.4.0
rm -rf $PKG/usr/usr
elif [ -e $PKG/usr/CDApplet.rb ]; then
- mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/ruby/1.9.1
- mv $PKG/usr/CDApplet.rb $PKG/usr/lib${LIBDIRSUFFIX}/ruby/1.9.1
+ mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/ruby/2.4.0
+ mv $PKG/usr/CDApplet.rb $PKG/usr/lib${LIBDIRSUFFIX}/ruby/2.4.0
fi
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
diff --git a/desktop/cairo-dock-plugins/cairo-dock-plugins.info b/desktop/cairo-dock-plugins/cairo-dock-plugins.info
index b28117ab5d..3fb0f52e51 100644
--- a/desktop/cairo-dock-plugins/cairo-dock-plugins.info
+++ b/desktop/cairo-dock-plugins/cairo-dock-plugins.info
@@ -1,8 +1,8 @@
PRGNAM="cairo-dock-plugins"
-VERSION="3.3.2"
+VERSION="3.4.1"
HOMEPAGE="http://www.glx-dock.org"
-DOWNLOAD="https://launchpad.net/cairo-dock-plug-ins/3.3/3.3.2/+download/cairo-dock-plugins-3.3.2.tar.gz"
-MD5SUM="3c40afe91cba65da68a70e5e78b76c24"
+DOWNLOAD="https://github.com/Cairo-Dock/cairo-dock-plug-ins/archive/3.4.1/cairo-dock-plugins-3.4.1.tar.gz"
+MD5SUM="434941926f9205fd8562a15b6ac5f243"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="cairo-dock"
diff --git a/desktop/cairo-dock-plugins/patches/mono.patch b/desktop/cairo-dock-plugins/patches/mono.patch
new file mode 100644
index 0000000000..6e6ecfecb6
--- /dev/null
+++ b/desktop/cairo-dock-plugins/patches/mono.patch
@@ -0,0 +1,106 @@
+diff -rupN cairo-dock-plug-ins-3.4.1.orig/CMakeLists.txt cairo-dock-plug-ins-3.4.1/CMakeLists.txt
+--- cairo-dock-plug-ins-3.4.1.orig/CMakeLists.txt 2015-03-12 09:43:57.171067365 +0100
++++ cairo-dock-plug-ins-3.4.1/CMakeLists.txt 2015-03-12 09:46:20.717120675 +0100
+@@ -573,11 +573,11 @@ if (enable-mono-interface)
+ if (NOT GMCS_EXECUTABLE OR NOT EXISTS ${GMCS_EXECUTABLE})
+ message (STATUS "Could not find Mono compiler gmcs, won't build Mono interface.")
+ else()
+- pkg_check_modules (MONO_PACKAGE glib-sharp-2.0 ndesk-dbus-1.0 ndesk-dbus-glib-1.0)
++ pkg_check_modules (MONO_PACKAGE dbus-sharp-2.0 dbus-sharp-glib-2.0 glib-sharp-3.0)
+ if (NOT MONO_PACKAGE_FOUND)
+- message (STATUS "Could not find glib-sharp-2.0, ndesk-dbus-1.0 or ndesk-dbus-glib-1.0; won't be built Mono interface.")
+- message (WARNING "These modules are required to compile DBus applet with Mono interface: glib-sharp-2.0, ndesk-dbus-1.0 and ndesk-dbus-glib-1.0")
+- set (MODULES_MISSING "${MODULES_MISSING} glib-sharp-2.0 ndesk-dbus-1.0 ndesk-dbus-glib-1.0")
++ message (STATUS "Could not find dbus-sharp-2.0, dbus-sharp-glib-2.0 or glib-sharp-3.0; won't be built Mono interface.")
++ message (WARNING "These modules are required to compile DBus applet with Mono interface: dbus-sharp-2.0, dbus-sharp-glib-2.0 and glib-sharp-3.0")
++ set (MODULES_MISSING "${MODULES_MISSING} dbus-sharp-2.0 dbus-sharp-glib-2.0 glib-sharp-3.0")
+ else()
+ set (MONO_FOUND TRUE)
+ set (with_mono yes)
+diff -rupN cairo-dock-plug-ins-3.4.1.orig/Dbus/interfaces/mono/CDApplet.cs cairo-dock-plug-ins-3.4.1/Dbus/interfaces/mono/CDApplet.cs
+--- cairo-dock-plug-ins-3.4.1.orig/Dbus/interfaces/mono/CDApplet.cs 2015-03-12 09:52:56.491934965 +0100
++++ cairo-dock-plug-ins-3.4.1/Dbus/interfaces/mono/CDApplet.cs 2015-03-12 09:56:50.191652099 +0100
+@@ -21,7 +21,7 @@
+ // Make your own class derive from a CDApplet, and override the functions you need (the ones which don't start with an underscore).
+
+ // Compile it with the following command, then rename 'demo_mono.exe' to 'demo_mono'.
+-// gmcs /target:library CDApplet.cs ISubApplet.cs IApplet.cs -pkg:glib-sharp-2.0 -pkg:ndesk-dbus-1.0 -pkg:ndesk-dbus-glib-1.0
++// gmcs /target:library CDApplet.cs ISubApplet.cs IApplet.cs -pkg:dbus-sharp-2.0 -pkg:dbus-sharp-glib-2.0 -pkg:glib-sharp-3.0
+ //////////////////////////
+ ////// dependancies //////
+ //////////////////////////
+@@ -29,7 +29,7 @@ using System; // Environment
+ using System.IO; // Path, Directory
+ using System.Reflection;
+ using GLib;
+-using NDesk.DBus;
++using DBus;
+ using CairoDock.Applet;
+
+ //namespace CairoDock.Applet
+@@ -258,8 +258,8 @@ public class CDApplet
+
+ private void _connect_to_dock ()
+ {
+- NDesk.DBus.BusG.Init();
+- NDesk.DBus.Bus bus = NDesk.DBus.Bus.Session;
++ DBus.BusG.Init();
++ DBus.Bus bus = DBus.Bus.Session;
+ this.icon = bus.GetObject<IApplet> ("org.cairodock.CairoDock", new ObjectPath (this.cBusPath));
+ this.icon.on_click += new OnClickEvent (on_click);
+ this.icon.on_middle_click += new OnMiddleClickEvent (on_middle_click);
+diff -rupN cairo-dock-plug-ins-3.4.1.orig/Dbus/interfaces/mono/CMakeLists.txt cairo-dock-plug-ins-3.4.1/Dbus/interfaces/mono/CMakeLists.txt
+--- cairo-dock-plug-ins-3.4.1.orig/Dbus/interfaces/mono/CMakeLists.txt 2015-03-12 09:52:56.491934965 +0100
++++ cairo-dock-plug-ins-3.4.1/Dbus/interfaces/mono/CMakeLists.txt 2015-03-12 09:54:07.418777441 +0100
+@@ -3,7 +3,7 @@
+
+ execute_process(COMMAND ${GMCS_EXECUTABLE}
+ -target:library
+- -pkg:glib-sharp-2.0 -pkg:ndesk-dbus-1.0 -pkg:ndesk-dbus-glib-1.0
++ -pkg:dbus-sharp-2.0 -pkg:dbus-sharp-glib-2.0 -pkg:glib-sharp-3.0
+ -out:${CMAKE_CURRENT_BINARY_DIR}/CDApplet.dll
+ ${CMAKE_CURRENT_SOURCE_DIR}/CDApplet.cs ${CMAKE_CURRENT_SOURCE_DIR}/ISubApplet.cs ${CMAKE_CURRENT_SOURCE_DIR}/IApplet.cs)
+ ### find how to register to GAC ...
+diff -rupN cairo-dock-plug-ins-3.4.1.orig/Dbus/demos/demo_mono/demo_mono.cs cairo-dock-plug-ins-3.4.1/Dbus/demos/demo_mono/demo_mono.cs
+--- cairo-dock-plug-ins-3.4.1.orig/Dbus/demos/demo_mono/demo_mono.cs 2015-03-12 09:59:41.064312097 +0100
++++ cairo-dock-plug-ins-3.4.1/Dbus/demos/demo_mono/demo_mono.cs 2015-03-12 10:02:39.473424651 +0100
+@@ -138,7 +138,7 @@ public class Applet : CDApplet
+ public override void on_build_menu ()
+ {
+ Console.WriteLine("*** build menu");
+- /// Warning : teh AddMenuItems fails with NDesk-DBus 0.6.0; until this is fixed, use the PopulateMenu method.
++ /// Warning : the AddMenuItems fails with DBus Sharp 0.6.0; until this is fixed, use the PopulateMenu method.
+ /**Dictionary<string, object>[] pItems = new Dictionary<string, object>[] {
+ new Dictionary<string, object>()
+ {
+diff -rupN cairo-dock-plug-ins-3.4.1.orig/Dbus/interfaces/mono/IApplet.cs cairo-dock-plug-ins-3.4.1/Dbus/interfaces/mono/IApplet.cs
+--- cairo-dock-plug-ins-3.4.1.orig/Dbus/interfaces/mono/IApplet.cs 2015-03-12 09:59:41.067645289 +0100
++++ cairo-dock-plug-ins-3.4.1/Dbus/interfaces/mono/IApplet.cs 2015-03-12 10:00:35.395334804 +0100
+@@ -1,6 +1,6 @@
+ using System;
+ using System.Collections.Generic; // Dictionnary
+-using NDesk.DBus;
++using DBus;
+
+ namespace CairoDock.Applet
+ {
+@@ -27,7 +27,7 @@ namespace CairoDock.Applet
+ Left
+ }
+
+- [NDesk.DBus.Interface("org.cairodock.CairoDock.applet")]
++ [DBus.Interface("org.cairodock.CairoDock.applet")]
+ public interface IApplet
+ {
+ object Get(string cProperty);
+diff -rupN cairo-dock-plug-ins-3.4.1.orig/Dbus/interfaces/mono/ISubApplet.cs cairo-dock-plug-ins-3.4.1/Dbus/interfaces/mono/ISubApplet.cs
+--- cairo-dock-plug-ins-3.4.1.orig/Dbus/interfaces/mono/ISubApplet.cs 2015-03-12 09:59:41.067645289 +0100
++++ cairo-dock-plug-ins-3.4.1/Dbus/interfaces/mono/ISubApplet.cs 2015-03-12 10:00:16.522802989 +0100
+@@ -1,6 +1,6 @@
+ using System;
+ using System.Collections.Generic; // Dictionnary
+-using NDesk.DBus;
++using DBus;
+
+ namespace CairoDock.Applet
+ {
diff --git a/desktop/cairo-dock-plugins/patches/time_h-confict.patch b/desktop/cairo-dock-plugins/patches/time_h-confict.patch
new file mode 100644
index 0000000000..0a2ea720d1
--- /dev/null
+++ b/desktop/cairo-dock-plugins/patches/time_h-confict.patch
@@ -0,0 +1,137 @@
+--- cairo-dock-plugins-3.4.1/Sound-Effects/src/applet-config.c.glibc 2016-12-11 16:10:41.656840262 +0900
++++ cairo-dock-plugins-3.4.1/Sound-Effects/src/applet-config.c 2016-12-11 16:23:31.875117800 +0900
+@@ -17,6 +17,7 @@
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
++#include "applet-time_h-struct.h"
+ #include <string.h>
+
+ #include "applet-struct.h"
+--- cairo-dock-plugins-3.4.1/Sound-Effects/src/applet-init.c.glibc 2016-12-11 16:10:41.657840257 +0900
++++ cairo-dock-plugins-3.4.1/Sound-Effects/src/applet-init.c 2016-12-11 16:22:24.465443591 +0900
+@@ -17,6 +17,7 @@
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
++#include "applet-time_h-struct.h"
+ #include "stdlib.h"
+
+ #include "applet-struct.h"
+--- cairo-dock-plugins-3.4.1/Sound-Effects/src/applet-notifications.c.glibc 2015-02-20 01:13:47.000000000 +0900
++++ cairo-dock-plugins-3.4.1/Sound-Effects/src/applet-notifications.c 2016-12-11 16:24:08.991938415 +0900
+@@ -17,6 +17,7 @@
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
++#include "applet-time_h-struct.h"
+ #include <stdlib.h>
+ #include <string.h>
+
+@@ -66,4 +67,4 @@
+
+
+ return GLDI_NOTIFICATION_LET_PASS;
+-}
+\ ファイル末尾ã«æ”¹è¡ŒãŒã‚ã‚Šã¾ã›ã‚“
++}
+--- cairo-dock-plugins-3.4.1/Sound-Effects/src/applet-sound.c.glibc 2015-02-20 01:13:47.000000000 +0900
++++ cairo-dock-plugins-3.4.1/Sound-Effects/src/applet-sound.c 2016-12-11 16:23:55.137005376 +0900
+@@ -19,6 +19,7 @@
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
++#include "applet-time_h-struct.h"
+ #include <stdlib.h>
+ #ifndef __FreeBSD__
+ #include <endian.h>
+--- cairo-dock-plugins-3.4.1/Sound-Effects/src/applet-struct.h.glibc 2016-12-11 16:10:41.657840257 +0900
++++ cairo-dock-plugins-3.4.1/Sound-Effects/src/applet-struct.h 2016-12-11 16:22:59.589273837 +0900
+@@ -21,6 +21,7 @@
+ #ifndef __CD_APPLET_STRUCT__
+ #define __CD_APPLET_STRUCT__
+
++#include "applet-time_h-struct.h"
+ #include <sys/types.h>
+ #include <alsa/asoundlib.h>
+ #define _STRUCT_TIMEVAL
+--- cairo-dock-plugins-3.4.1/Sound-Effects/src/applet-time_h-struct.h.glibc 2016-12-11 16:11:55.464483550 +0900
++++ cairo-dock-plugins-3.4.1/Sound-Effects/src/applet-time_h-struct.h 2016-12-11 16:19:52.003180440 +0900
+@@ -0,0 +1,27 @@
++/**
++* This file is a part of the Cairo-Dock project
++*
++* Copyright : (C) see the 'copyright' file.
++* E-mail : see the 'copyright' file.
++*
++* This program is free software; you can redistribute it and/or
++* modify it under the terms of the GNU General Public License
++* as published by the Free Software Foundation; either version 3
++* of the License, or (at your option) any later version.
++*
++* This program is distributed in the hope that it will be useful,
++* but WITHOUT ANY WARRANTY; without even the implied warranty of
++* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++* GNU General Public License for more details.
++* You should have received a copy of the GNU General Public License
++* along with this program. If not, see <http://www.gnu.org/licenses/>.
++*/
++
++#ifndef __CD_APPLET_TIME_H_STRUCT__
++#define __CD_APPLET_TIME_H_STRUCT__
++
++#define _POSIX_C_SOURCE 200809L
++#include <time.h>
++
++#endif
++
+--- cairo-dock-plugins-3.4.1/alsaMixer/src/applet-generic.c.glibc 2015-02-20 01:13:47.000000000 +0900
++++ cairo-dock-plugins-3.4.1/alsaMixer/src/applet-generic.c 2016-12-11 16:20:44.168928323 +0900
+@@ -20,6 +20,7 @@
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
++#include "applet-time_h-struct.h"
+ #include <stdlib.h>
+
+ #include "applet-struct.h"
+--- cairo-dock-plugins-3.4.1/alsaMixer/src/applet-struct.h.glibc 2015-02-20 01:13:47.000000000 +0900
++++ cairo-dock-plugins-3.4.1/alsaMixer/src/applet-struct.h 2016-12-11 16:19:47.713201174 +0900
+@@ -20,6 +20,7 @@
+ #ifndef __CD_APPLET_STRUCT__
+ #define __CD_APPLET_STRUCT__
+
++#include "applet-time_h-struct.h"
+ #include <sys/types.h>
+ #include <alsa/asoundlib.h>
+ #define _STRUCT_TIMEVAL
+--- cairo-dock-plugins-3.4.1/alsaMixer/src/applet-time_h-struct.h.glibc 2016-12-11 16:11:55.464483550 +0900
++++ cairo-dock-plugins-3.4.1/alsaMixer/src/applet-time_h-struct.h 2016-12-11 16:19:52.003180440 +0900
+@@ -0,0 +1,27 @@
++/**
++* This file is a part of the Cairo-Dock project
++*
++* Copyright : (C) see the 'copyright' file.
++* E-mail : see the 'copyright' file.
++*
++* This program is free software; you can redistribute it and/or
++* modify it under the terms of the GNU General Public License
++* as published by the Free Software Foundation; either version 3
++* of the License, or (at your option) any later version.
++*
++* This program is distributed in the hope that it will be useful,
++* but WITHOUT ANY WARRANTY; without even the implied warranty of
++* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++* GNU General Public License for more details.
++* You should have received a copy of the GNU General Public License
++* along with this program. If not, see <http://www.gnu.org/licenses/>.
++*/
++
++#ifndef __CD_APPLET_TIME_H_STRUCT__
++#define __CD_APPLET_TIME_H_STRUCT__
++
++#define _POSIX_C_SOURCE 200809L
++#include <time.h>
++
++#endif
++
diff --git a/desktop/cairo-dock/cairo-dock.SlackBuild b/desktop/cairo-dock/cairo-dock.SlackBuild
index f12d52fb2d..9935833256 100644
--- a/desktop/cairo-dock/cairo-dock.SlackBuild
+++ b/desktop/cairo-dock/cairo-dock.SlackBuild
@@ -23,13 +23,13 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=cairo-dock
-VERSION=${VERSION:-3.3.2}
+VERSION=${VERSION:-3.4.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -40,8 +40,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -59,9 +59,9 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$VERSION
+rm -rf $PRGNAM-core-$VERSION
tar -xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
+cd $PRGNAM-core-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -69,16 +69,19 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+mkdir build
+cd build
cmake \
-DCMAKE_C_FLAGS_RELEASE:STRING="$SLKCFLAGS" \
-DCMAKE_CXX_FLAGS_RELEASE:STRING="$SLKCFLAGS" \
-DLIB_SUFFIX=${LIBDIRSUFFIX} \
-DCMAKE_INSTALL_PREFIX=/usr \
-DMAN_INSTALL_DIR=/usr/man \
- -DCMAKE_BUILD_TYPE=Release .
+ -DCMAKE_BUILD_TYPE=Release ..
make VERBOSE=1
make install DESTDIR=$PKG
+cd ..
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
diff --git a/desktop/cairo-dock/cairo-dock.info b/desktop/cairo-dock/cairo-dock.info
index d439b98f7a..1c6f1ba104 100644
--- a/desktop/cairo-dock/cairo-dock.info
+++ b/desktop/cairo-dock/cairo-dock.info
@@ -1,8 +1,8 @@
PRGNAM="cairo-dock"
-VERSION="3.3.2"
+VERSION="3.4.1"
HOMEPAGE="http://www.glx-dock.org"
-DOWNLOAD="https://launchpad.net/cairo-dock-core/3.3/3.3.2/+download/cairo-dock-3.3.2.tar.gz"
-MD5SUM="aae077803322049e2488ca7c2980cd0d"
+DOWNLOAD="https://github.com/Cairo-Dock/cairo-dock-core/archive/3.4.1/cairo-dock-3.4.1.tar.gz"
+MD5SUM="63285f2744a76354cea9cc4c012b3c11"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="gtkglext"
diff --git a/desktop/ceti-2-theme/README b/desktop/ceti-2-theme/README
deleted file mode 100644
index 81caf7d90f..0000000000
--- a/desktop/ceti-2-theme/README
+++ /dev/null
@@ -1,10 +0,0 @@
-ceti-2-theme (GTK2|GTK3 themes)
-
-ceti-2 is a theme for GTK 3, GTK 2 and Gnome-Shell. It supports GTK 3
-and GTK 2 based desktop environments like Gnome, Unity, Budgie,
-Pantheon, etc.
-
-It is the Official continuation of ceti for Gnome 3.14, 3.16 and 3.18.
-It has been completely revamped and is now based on Vertex.
-
-Optional dependencies: gtk-engines, gtk-engines-unico.
diff --git a/desktop/ceti-2-theme/ceti-2-theme.SlackBuild b/desktop/ceti-2-theme/ceti-2-theme.SlackBuild
deleted file mode 100644
index f5ed3c662c..0000000000
--- a/desktop/ceti-2-theme/ceti-2-theme.SlackBuild
+++ /dev/null
@@ -1,77 +0,0 @@
-#!/bin/sh
-#
-# Slackware build script for ceti-2-theme.
-#
-# Copyright 2016 Edinaldo P. Silva, Rio de Janeiro, Brazil.
-# 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.
-
-PRGNAM="ceti-2-theme"
-VERSION=${VERSION:-20150923}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-ARCH=noarch
-
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-CWD=$(pwd)
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-./autogen.sh \
- --prefix=/usr \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --enable-silent-rules \
- --disable-gnome-shell \
- --disable-unity \
- --build=$ARCH-slackware-linux
-
-make install DESTDIR=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS COPYING README.md $PKG/usr/doc/$PRGNAM-$VERSION/
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-cat $CWD/doinst.sh > $PKG/install/doinst.sh
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/desktop/ceti-2-theme/ceti-2-theme.info b/desktop/ceti-2-theme/ceti-2-theme.info
deleted file mode 100644
index 28f1dffa11..0000000000
--- a/desktop/ceti-2-theme/ceti-2-theme.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="ceti-2-theme"
-VERSION="20150923"
-HOMEPAGE="https://github.com/horst3180/Ceti-2-theme"
-DOWNLOAD="https://github.com/horst3180/ceti-2-theme/archive/20150923/ceti-2-theme-20150923.tar.gz"
-MD5SUM="5da8e4e6c2260113b12fafc0a682b389"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="murrine"
-MAINTAINER="Edinaldo P. Silva"
-EMAIL="edps.mundognu@gmail.com"
diff --git a/desktop/ceti-2-theme/doinst.sh b/desktop/ceti-2-theme/doinst.sh
deleted file mode 100644
index aea0f894eb..0000000000
--- a/desktop/ceti-2-theme/doinst.sh
+++ /dev/null
@@ -1,13 +0,0 @@
-if [ -x /usr/bin/update-desktop-database ]; then
- /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
-fi
-
-if [ -x /usr/bin/update-mime-database ]; then
- /usr/bin/update-mime-database usr/share/mime >/dev/null 2>&1
-fi
-
-if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
- if [ -x /usr/bin/gtk-update-icon-cache ]; then
- /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
- fi
-fi
diff --git a/desktop/ceti-2-theme/slack-desc b/desktop/ceti-2-theme/slack-desc
deleted file mode 100644
index efcdc3ee26..0000000000
--- a/desktop/ceti-2-theme/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-ceti-2-theme: ceti-2-theme (GTK2|GTK3 themes)
-ceti-2-theme:
-ceti-2-theme: ceti-2 is a theme for GTK 3, GTK 2 and Gnome-Shell. It supports GTK 3
-ceti-2-theme: and GTK 2 based desktop environments like Gnome, Unity, Budgie,
-ceti-2-theme: Pantheon, etc.
-ceti-2-theme:
-ceti-2-theme: It is the Official continuation of Ceti for Gnome 3.14, 3.16 and 3.18.
-ceti-2-theme: It has been completely revamped and is now based on Vertex.
-ceti-2-theme:
-ceti-2-theme: Home page: https://github.com/horst3180/Ceti-2-theme
-ceti-2-theme:
diff --git a/desktop/devilspie/devilspie.SlackBuild b/desktop/devilspie/devilspie.SlackBuild
index 471bd18014..5334d2b91d 100644
--- a/desktop/devilspie/devilspie.SlackBuild
+++ b/desktop/devilspie/devilspie.SlackBuild
@@ -55,7 +55,7 @@ sed -i -e '/-DG.*_DISABLE_DEPRECATED/d' src/Makefile.am
autoreconf -i
LDFLAGS="-lX11" \
-CFLAGS="$SLKCFLAGS" \
+CFLAGS="$SLKCFLAGS -Wno-error=format-y2k" \
CPPFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
diff --git a/desktop/enlightenment/enlightenment.SlackBuild b/desktop/enlightenment/enlightenment.SlackBuild
index 803cbf19c6..5a1b7bb3a2 100644
--- a/desktop/enlightenment/enlightenment.SlackBuild
+++ b/desktop/enlightenment/enlightenment.SlackBuild
@@ -24,7 +24,7 @@
# <http://www.gnu.org/licenses/>.
PRGNAM=enlightenment
-VERSION=${VERSION:-0.22.3}
+VERSION=${VERSION:-0.22.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
diff --git a/desktop/enlightenment/enlightenment.info b/desktop/enlightenment/enlightenment.info
index bf4dbe6b3a..0bbd48d1aa 100644
--- a/desktop/enlightenment/enlightenment.info
+++ b/desktop/enlightenment/enlightenment.info
@@ -1,8 +1,8 @@
PRGNAM="enlightenment"
-VERSION="0.22.3"
+VERSION="0.22.4"
HOMEPAGE="https://www.enlightenment.org/"
-DOWNLOAD="https://download.enlightenment.org/rel/apps/enlightenment/enlightenment-0.22.3.tar.xz"
-MD5SUM="b46f7cc76bb7113df704a2b8b464402e"
+DOWNLOAD="https://download.enlightenment.org/rel/apps/enlightenment/enlightenment-0.22.4.tar.xz"
+MD5SUM="2444a699b4c995eb83c813aa555ca418"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="efl"
diff --git a/desktop/lumina/lumina.SlackBuild b/desktop/lumina/lumina.SlackBuild
index 6814c758bb..fddcea452b 100644
--- a/desktop/lumina/lumina.SlackBuild
+++ b/desktop/lumina/lumina.SlackBuild
@@ -80,6 +80,7 @@ qmake-qt5 \
LIBPREFIX=/usr/lib${LIBDIRSUFFIX} \
QMAKE_CFLAGS="$SLKCFLAGS" \
QMAKE_CXXFLAGS="$SLKCFLAGS" \
+ QMAKE_CFLAGS_ISYSTEM= \
QT5LIBDIR=/usr/lib${LIBDIRSUFFIX}/qt5 \
L_ETCDIR=/etc \
diff --git a/desktop/polybar/00165e1a6d5dd61bc153e1352b21ec07fc81245d.patch b/desktop/polybar/00165e1a6d5dd61bc153e1352b21ec07fc81245d.patch
new file mode 100644
index 0000000000..81783617b9
--- /dev/null
+++ b/desktop/polybar/00165e1a6d5dd61bc153e1352b21ec07fc81245d.patch
@@ -0,0 +1,44 @@
+From 00165e1a6d5dd61bc153e1352b21ec07fc81245d Mon Sep 17 00:00:00 2001
+From: patrick96 <p.ziegler96@gmail.com>
+Date: Sun, 11 Feb 2018 21:27:52 +0100
+Subject: [PATCH] fix(generators): Add support for eventstruct
+
+Newer xcb-proto commits after the 1.12 release require the 'eventstruct'
+key in the output dictionary, otherwise the generator crashes.
+
+I don't see a need for xpp to actually support the eventstruct key and
+thus it uses a NOP lambda function
+---
+ generators/cpp_client.py | 19 ++++++++++---------
+ 1 file changed, 10 insertions(+), 9 deletions(-)
+
+diff --git a/generators/cpp_client.py b/generators/cpp_client.py
+index 20d116f..709e8d8 100644
+--- a/generators/cpp_client.py
++++ b/generators/cpp_client.py
+@@ -3130,15 +3130,16 @@ def cpp_type_classes():
+ # }
+
+ # Must create an "output" dictionary before any xcbgen imports.
+-output = {'open' : c_open,
+- 'close' : c_close,
+- 'simple' : c_simple, # lambda x, y: None,
+- 'enum' : lambda x, y: None,
+- 'struct' : lambda x, y: None,
+- 'union' : lambda x, y: None,
+- 'request' : c_request,
+- 'event' : cpp_event,
+- 'error' : cpp_error,
++output = {'open' : c_open,
++ 'close' : c_close,
++ 'simple' : c_simple, # lambda x, y: None,
++ 'enum' : lambda x, y: None,
++ 'struct' : lambda x, y: None,
++ 'union' : lambda x, y: None,
++ 'request' : c_request,
++ 'event' : cpp_event,
++ 'error' : cpp_error,
++ 'eventstruct' : lambda x, y: None,
+ }
+
+ # Boilerplate below this point
diff --git a/desktop/polybar/polybar.SlackBuild b/desktop/polybar/polybar.SlackBuild
index c2e6b4cb72..a8e7059fda 100644
--- a/desktop/polybar/polybar.SlackBuild
+++ b/desktop/polybar/polybar.SlackBuild
@@ -75,6 +75,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+( cd lib/xpp
+ patch -p1 < $CWD/00165e1a6d5dd61bc153e1352b21ec07fc81245d.patch )
+
# Fixes install location
sed -i -e '/share\/doc\/polybar/s/share\///' doc/CMakeLists.txt
sed -i -e '/share\/man\/man1/s/share\///' man/CMakeLists.txt
@@ -83,7 +86,7 @@ mkdir -p build
cd build
cmake \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS -Wno-error=implicit-fallthrough -Wno-error=stringop-truncation" \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_BUILD_TYPE=Release ..
make -j1
diff --git a/desktop/seafile-gui/README b/desktop/seafile-client/README
index 94ced6564e..94ced6564e 100644
--- a/desktop/seafile-gui/README
+++ b/desktop/seafile-client/README
diff --git a/desktop/seafile-gui/doinst.sh b/desktop/seafile-client/doinst.sh
index 65c7e2eeb9..65c7e2eeb9 100644
--- a/desktop/seafile-gui/doinst.sh
+++ b/desktop/seafile-client/doinst.sh
diff --git a/desktop/seafile-gui/seafile-gui.SlackBuild b/desktop/seafile-client/seafile-client.SlackBuild
index 9b7e62a867..a50bcb3248 100644
--- a/desktop/seafile-gui/seafile-gui.SlackBuild
+++ b/desktop/seafile-client/seafile-client.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/sh
-# Slackware build script for "seafile-client".
+# Slackware build script for seafile-client.
# Copyright 2015 Marcel Saegebarth <marc@mos6581.de>
# All rights reserved.
@@ -24,15 +24,14 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-PRGNAM=seafile-gui
-SRCNAM=seafile-client
-VERSION=${VERSION:-4.4.2}
+PRGNAM=seafile-client
+VERSION=${VERSION:-6.2.5}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -43,8 +42,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -62,9 +61,9 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $SRCNAM-$VERSION
-tar xvf $CWD/v$VERSION.tar.gz || tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
-cd $SRCNAM-$VERSION
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
diff --git a/desktop/seafile-client/seafile-client.info b/desktop/seafile-client/seafile-client.info
new file mode 100644
index 0000000000..92933b6c01
--- /dev/null
+++ b/desktop/seafile-client/seafile-client.info
@@ -0,0 +1,10 @@
+PRGNAM="seafile-client"
+VERSION="6.2.5"
+HOMEPAGE="http://seafile.com/"
+DOWNLOAD="https://github.com/haiwen/seafile-client/archive/v6.2.5/seafile-client-6.2.5.tar.gz"
+MD5SUM="3f3cd465109e1d49888fbca310033a3b"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="qt5 seafile"
+MAINTAINER="Marcel Saegebarth"
+EMAIL="marc@mos6581.de"
diff --git a/network/seafile-client/slack-desc b/desktop/seafile-client/slack-desc
index e41d278faa..2f39a14e33 100644
--- a/network/seafile-client/slack-desc
+++ b/desktop/seafile-client/slack-desc
@@ -6,14 +6,14 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-seafile-client: seafile-client (Cloud Storage System)
+seafile-client: seafile-client (Seafile Desktop Client)
seafile-client:
-seafile-client: Seafile is a next-generation open source cloud storage system with
-seafile-client: advanced support for file syncing, privacy protection and teamwork.
+seafile-client: Graphical desktop client for the Seafile next-generation open
+seafile-client: source cloud storage system with advanced support for file syncing,
+seafile-client: privacy protection and teamwork.
seafile-client:
seafile-client: Homepage: http://seafile.com/
seafile-client:
seafile-client:
seafile-client:
seafile-client:
-seafile-client:
diff --git a/desktop/seafile-gui/seafile-gui.info b/desktop/seafile-gui/seafile-gui.info
deleted file mode 100644
index a878209924..0000000000
--- a/desktop/seafile-gui/seafile-gui.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="seafile-gui"
-VERSION="4.4.2"
-HOMEPAGE="http://seafile.com/"
-DOWNLOAD="https://github.com/haiwen/seafile-client/archive/v4.4.2.tar.gz"
-MD5SUM="8749f059e9209df31e662c9325c735e5"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="seafile-client"
-MAINTAINER="Marcel Saegebarth"
-EMAIL="marc@mos6581.de"
diff --git a/desktop/searchmonkey/patch.txt b/desktop/searchmonkey/patch.txt
new file mode 100644
index 0000000000..08d9959efd
--- /dev/null
+++ b/desktop/searchmonkey/patch.txt
@@ -0,0 +1,11 @@
+--- ./mainwindow.cpp 2010-05-16 11:42:14.000000000 -0400
++++ ./mainwindow.cpp.new 2016-09-06 21:07:18.462298114 -0400
+@@ -781,7 +781,7 @@
+ ******************************************************************************/
+ void MainWindow::find () throw() {
+
+- auto autoSettingsReset asr(sui); // dtor calls sui->reset()
++
+
+ bool modeAdvanced = ui->actionAdvanced->isChecked();
+ qDebug() << "modeAdvanced-" << modeAdvanced;
diff --git a/desktop/searchmonkey/searchmonkey.SlackBuild b/desktop/searchmonkey/searchmonkey.SlackBuild
index b1c2ef0824..f807c46128 100644
--- a/desktop/searchmonkey/searchmonkey.SlackBuild
+++ b/desktop/searchmonkey/searchmonkey.SlackBuild
@@ -69,6 +69,7 @@ find -L . \
-exec chmod 644 {} \;
patch -p1 --verbose <$CWD/searchmonkey-2.0.0-gcc4.7.patch
+patch -p1 --verbose <$CWD/patch.txt
qmake \
QMAKE_CFLAGS="$SLKCFLAGS" \
diff --git a/desktop/thunar-archive-plugin/thunar-archive-plugin.SlackBuild b/desktop/thunar-archive-plugin/thunar-archive-plugin.SlackBuild
index fd27c5b191..4b3135bcda 100644
--- a/desktop/thunar-archive-plugin/thunar-archive-plugin.SlackBuild
+++ b/desktop/thunar-archive-plugin/thunar-archive-plugin.SlackBuild
@@ -23,13 +23,13 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=thunar-archive-plugin
-VERSION=${VERSION:-0.3.1}
+VERSION=${VERSION:-0.4.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -40,8 +40,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
diff --git a/desktop/thunar-archive-plugin/thunar-archive-plugin.info b/desktop/thunar-archive-plugin/thunar-archive-plugin.info
index 7181974b68..88e6670e73 100644
--- a/desktop/thunar-archive-plugin/thunar-archive-plugin.info
+++ b/desktop/thunar-archive-plugin/thunar-archive-plugin.info
@@ -1,8 +1,8 @@
PRGNAM="thunar-archive-plugin"
-VERSION="0.3.1"
+VERSION="0.4.0"
HOMEPAGE="https://goodies.xfce.org/projects/thunar-plugins/thunar-archive-plugin"
-DOWNLOAD="https://archive.xfce.org/src/thunar-plugins/thunar-archive-plugin/0.3/thunar-archive-plugin-0.3.1.tar.bz2"
-MD5SUM="425f4faaace6dc7a4716a35b7795463a"
+DOWNLOAD="http://archive.xfce.org/src/thunar-plugins/thunar-archive-plugin/0.4/thunar-archive-plugin-0.4.0.tar.bz2"
+MD5SUM="0a7738a3a5f84bf218ece3ffb5241c63"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="xarchiver"
diff --git a/desktop/thunar-dropbox/README b/desktop/thunar-dropbox/README
deleted file mode 100644
index 23795731f9..0000000000
--- a/desktop/thunar-dropbox/README
+++ /dev/null
@@ -1 +0,0 @@
-Thunar-dropbox is a Thunar plugin that adds context-menu items from dropbox.
diff --git a/desktop/thunar-dropbox/doinst.sh b/desktop/thunar-dropbox/doinst.sh
deleted file mode 100644
index 19400050fd..0000000000
--- a/desktop/thunar-dropbox/doinst.sh
+++ /dev/null
@@ -1,6 +0,0 @@
-if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
- if [ -x /usr/bin/gtk-update-icon-cache ]; then
- /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
- fi
-fi
-
diff --git a/desktop/thunar-dropbox/slack-desc b/desktop/thunar-dropbox/slack-desc
deleted file mode 100644
index 2f60412719..0000000000
--- a/desktop/thunar-dropbox/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-thunar-dropbox: thunar-dropbox (dropbox plugin for thunar)
-thunar-dropbox:
-thunar-dropbox: Thunar Dropbox is a plugin for thunar that adds context-menu
-thunar-dropbox: items from dropbox.
-thunar-dropbox:
-thunar-dropbox: http://www.softwarebakery.com/maato/thunar-dropbox.html
-thunar-dropbox:
-thunar-dropbox:
-thunar-dropbox:
-thunar-dropbox:
-thunar-dropbox:
diff --git a/desktop/thunar-dropbox/thunar-dropbox.info b/desktop/thunar-dropbox/thunar-dropbox.info
deleted file mode 100644
index 1d8bd2a7f3..0000000000
--- a/desktop/thunar-dropbox/thunar-dropbox.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="thunar-dropbox"
-VERSION="0.2.1"
-HOMEPAGE="http://www.softwarebakery.com/maato/thunar-dropbox.html"
-DOWNLOAD="http://www.softwarebakery.com/maato/files/thunar-dropbox/thunar-dropbox-0.2.1.tar.bz2"
-MD5SUM="52bb2caa26afaf80835a56b9ad3d2155"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Murat D. Kadirov"
-EMAIL="banderols@gmail.com"
diff --git a/desktop/wbar/wbar.SlackBuild b/desktop/wbar/wbar.SlackBuild
index 09fd3d2bc5..d16ff8a236 100644
--- a/desktop/wbar/wbar.SlackBuild
+++ b/desktop/wbar/wbar.SlackBuild
@@ -74,7 +74,7 @@ find -L . \
sed -i 's|pidof|/sbin/pidof|g' src/config/Run.cc
CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS -Wno-error=literal-suffix" \
./configure \
--prefix=/usr \
--exec-prefix=/usr \
diff --git a/development/ChezScheme/ChezScheme.SlackBuild b/development/ChezScheme/ChezScheme.SlackBuild
index 9b36c4bce6..16124c9120 100644
--- a/development/ChezScheme/ChezScheme.SlackBuild
+++ b/development/ChezScheme/ChezScheme.SlackBuild
@@ -86,6 +86,7 @@ find -L . \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
./configure \
+ CFLAGS="-Wno-error=implicit-fallthrough=" \
$WSIZE \
$THREADS \
--installprefix=/usr \
diff --git a/development/Coin/Coin.SlackBuild b/development/Coin/Coin.SlackBuild
index 96953fa909..eb99408893 100644
--- a/development/Coin/Coin.SlackBuild
+++ b/development/Coin/Coin.SlackBuild
@@ -61,6 +61,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+# Thanks Fedora
+patch -p1 < $CWD/memhandler-initialization.patch
+
# Thanks Debian
patch -p1 < $CWD/coin-include_and_js.patch
diff --git a/development/Coin/memhandler-initialization.patch b/development/Coin/memhandler-initialization.patch
new file mode 100644
index 0000000000..4c346487ed
--- /dev/null
+++ b/development/Coin/memhandler-initialization.patch
@@ -0,0 +1,20 @@
+--- Coin-3.1.3/src/misc/SbHash.h.init 2010-03-02 22:20:09.000000000 +0900
++++ Coin-3.1.3/src/misc/SbHash.h 2016-04-22 16:52:39.888883757 +0900
+@@ -89,6 +89,8 @@
+ cc_memalloc_deallocate(entry->memhandler, ptr);
+ }
+ SbHashEntry(const Key & key, const Type & obj) : key(key), obj(obj) {}
++ SbHashEntry(const Key & key, const Type & obj, cc_memalloc *memhandler)
++ : key(key), obj(obj), memhandler(memhandler) {}
+
+ Key key;
+ Type obj;
+@@ -218,7 +220,7 @@
+ /* Key not already in the hash table; insert a new
+ * entry as the first element in the bucket
+ */
+- entry = new (this->memhandler) SbHashEntry<Type, Key>(key, obj);
++ entry = new (this->memhandler) SbHashEntry<Type, Key>(key, obj, this->memhandler);
+ entry->next = this->buckets[i];
+ this->buckets[i] = entry;
+
diff --git a/development/FreeBASIC/FreeBASIC.SlackBuild b/development/FreeBASIC/FreeBASIC.SlackBuild
index bba9d245a7..70775745d0 100644
--- a/development/FreeBASIC/FreeBASIC.SlackBuild
+++ b/development/FreeBASIC/FreeBASIC.SlackBuild
@@ -89,13 +89,10 @@ if [ "$ARCH" = "x86_64" ]; then
$PKG/usr/lib/${PRGNAM,,}
fi
-# fix linking with libtinfo over libncurses
+# fix linking libtinfo over the newer version - WARNING, UGLY SHIT! -ponce
ln -sf \
- /usr/lib${LIBDIRSUFFIX}/libncurses.so.5 \
+ /usr/lib${LIBDIRSUFFIX}/libtinfo.so.6 \
$PKG/usr/lib${LIBDIRSUFFIX}/libtinfo.so.5
-ln -sf \
- /usr/lib${LIBDIRSUFFIX}/libtinfo.so.5 \
- $PKG/usr/lib${LIBDIRSUFFIX}/libtinfo.so
# gzip man page
gzip -c doc/fbc.1 > $PKG/usr/man/man1/fbc.1.gz
diff --git a/development/MySQL-python/MySQL-python.SlackBuild b/development/MySQL-python/MySQL-python.SlackBuild
index c367b99dc9..cc212f17be 100644
--- a/development/MySQL-python/MySQL-python.SlackBuild
+++ b/development/MySQL-python/MySQL-python.SlackBuild
@@ -57,7 +57,7 @@ patch -p1 < $CWD/patches/no_distribute_download.patch
# Include my_config.h first
patch -p1 < $CWD/patches/MySQL-python-1.2.4-include-my_config-first.patch
-python setup.py install --root=$PKG
+CPPFLAGS="-I/usr/include/mysql/server" python setup.py install --root=$PKG
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
diff --git a/development/SDL2_gfx/README b/development/SDL2_gfx/README
deleted file mode 100644
index 6be21f40d1..0000000000
--- a/development/SDL2_gfx/README
+++ /dev/null
@@ -1,3 +0,0 @@
-SDL graphics drawing primitives and other support functions
-wrapped up in an addon library for the Simple Direct Media
-(SDL) cross-platform API layer.
diff --git a/development/SDL2_gfx/SDL2_gfx.SlackBuild b/development/SDL2_gfx/SDL2_gfx.SlackBuild
deleted file mode 100644
index cdf7a8fb56..0000000000
--- a/development/SDL2_gfx/SDL2_gfx.SlackBuild
+++ /dev/null
@@ -1,99 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for SDL2_gfx
-
-# Copyright 2014-2018 Dimitris Zlatanidis Orestiada, Greece
-# 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.
-
-PRGNAM=SDL2_gfx
-VERSION=${VERSION:-1.0.4}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-./autogen.sh
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --disable-static \
- --build=$ARCH-slackware-linux
-
-make
-make install DESTDIR=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS COPYING ChangeLog NEWS README $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/development/SDL2_gfx/SDL2_gfx.info b/development/SDL2_gfx/SDL2_gfx.info
deleted file mode 100644
index 2f64868bd2..0000000000
--- a/development/SDL2_gfx/SDL2_gfx.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="SDL2_gfx"
-VERSION="1.0.4"
-HOMEPAGE="http://www.ferzkopp.net/wordpress/2016/01/02/sdl_gfx-sdl2_gfx/"
-DOWNLOAD="http://www.ferzkopp.net/Software/SDL2_gfx/SDL2_gfx-1.0.4.tar.gz"
-MD5SUM="15f9866c6464ca298f28f62fe5b36d9f"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="SDL2"
-MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
diff --git a/development/SDL2_gfx/slack-desc b/development/SDL2_gfx/slack-desc
deleted file mode 100644
index 72864f2da7..0000000000
--- a/development/SDL2_gfx/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-SDL2_gfx: SDL2_gfx (addon library for the SDL2)
-SDL2_gfx:
-SDL2_gfx: SDL graphics drawing primitives and other support functions
-SDL2_gfx: wrapped up in an addon library for the Simple Direct Media (SDL)
-SDL2_gfx: cross-platform API layer.
-SDL2_gfx:
-SDL2_gfx: Homepage:
-SDL2_gfx: http://www.ferzkopp.net/wordpress/2016/01/02/sdl_gfx-sdl2_gfx/
-SDL2_gfx:
-SDL2_gfx:
-SDL2_gfx:
diff --git a/development/acpica/acpica.SlackBuild b/development/acpica/acpica.SlackBuild
index f3ffc6d06f..9fdf830070 100644
--- a/development/acpica/acpica.SlackBuild
+++ b/development/acpica/acpica.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for acpica
-# Copyright 2008-2017 Heinz Wiesinger, Amsterdam, The Netherlands
+# Copyright 2008-2018 Heinz Wiesinger, Amsterdam, The Netherlands
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,7 +23,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=acpica
-VERSION=${VERSION:-20170531}
+VERSION=${VERSION:-20180105}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -74,7 +74,7 @@ find -L . \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
cd generate/unix
- CFLAGS="$SLKCFLAGS" \
+ CFLAGS="$SLKCFLAGS -Wno-error=format-overflow" \
CXXFLAGS="$SLKCFLAGS" \
make BITS=$BITS
diff --git a/development/acpica/acpica.info b/development/acpica/acpica.info
index dea5cd5d50..3ac0a61986 100644
--- a/development/acpica/acpica.info
+++ b/development/acpica/acpica.info
@@ -1,8 +1,8 @@
PRGNAM="acpica"
-VERSION="20170531"
+VERSION="20180105"
HOMEPAGE="http://www.acpica.org"
-DOWNLOAD="https://acpica.org/sites/acpica/files/acpica-unix2-20170531.tar.gz"
-MD5SUM="46c4c93435ad1d8c4eb5bacde17503b8"
+DOWNLOAD="https://acpica.org/sites/acpica/files/acpica-unix2-20180105.tar.gz"
+MD5SUM="5aa086f71f4b5273c0932a1e04419a37"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/development/android-tools/README b/development/android-tools/README
index e7d793fe84..f8f0f70641 100644
--- a/development/android-tools/README
+++ b/development/android-tools/README
@@ -1,2 +1,2 @@
-These are the adb, fastboot, mkbootimg and make_ext4fs tools from the
-android sdk.
+These are the adb, fastboot, mkbootimg, mke2fs.android, e2fsdroid
+and ext2simg tools from the android sdk.
diff --git a/development/android-tools/android-tools.SlackBuild b/development/android-tools/android-tools.SlackBuild
index 8e141f5fbd..d967c127d6 100644
--- a/development/android-tools/android-tools.SlackBuild
+++ b/development/android-tools/android-tools.SlackBuild
@@ -25,13 +25,13 @@
PRGNAM=android-tools
-VERSION=${VERSION:-8.0.0_r24}
-SRC1=core-6cd85e2a89347e0a107f59e38ece61fa19e6da78.tar.gz
-SRC2=extras-af2dce5151ad478673401211dd71ae1579d2b5be.tar.gz
-SRC3=selinux-be29c2550c3ff6551a56048c075a88da01b46cab.tar.gz
-SRC4=f2fs-tools-b8baf1712d991541141bb0bdddd625f527e6d41f.tar.gz
-SRC5=boringssl-58e449904e248f34bdfc2be7a609c58bcb0257b7.tar.gz
-
+VERSION=${VERSION:-9.0.0_r18}
+SRC1=core-c9602275fc7dae822d22ba36c933d29f4556d6aa.tar.gz
+SRC2=e2fsprogs-fecf0a211618bbed183ebf58d5bf489105bed72c.tar.gz
+SRC3=extras-9d680761912ab259ffd35b05c880b9e49d800bc8.tar.gz
+SRC4=f2fs-tools-d2d127499ebdfaa681df4c13a303a7d0445f1e80.tar.gz
+SRC5=selinux-0d8f825909d3e600facbf23be4758877f98c2602.tar.gz
+SRC6=boringssl-45210dd4e21ace9d28cb76b3f83303fcdd2efcce.tar.gz
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -73,19 +73,25 @@ cd $TMP/android-tools
mkdir core
tar -xvf $CWD/$SRC1 -C core
+mkdir e2fsprogs
+tar -xvf $CWD/$SRC2 -C e2fsprogs
mkdir extras
-tar -xvf $CWD/$SRC2 -C extras
-mkdir selinux
-tar -xvf $CWD/$SRC3 -C selinux
+tar -xvf $CWD/$SRC3 -C extras
mkdir f2fs-tools
tar -xvf $CWD/$SRC4 -C f2fs-tools
+mkdir selinux
+tar -xvf $CWD/$SRC5 -C selinux
mkdir boringssl
-tar -xvf $CWD/$SRC5 -C boringssl
+tar -xvf $CWD/$SRC6 -C boringssl
+## android.googlesource.com stuff takes android-$VERSION as a tag
#git clone --branch android-$VERSION --depth 1 https://android.googlesource.com/platform/system/core
#git clone --branch android-$VERSION --depth 1 https://android.googlesource.com/platform/system/extras
-#git clone --branch android-$VERSION --depth 1 https://android.googlesource.com/platform/external/libselinux
+#git clone --branch android-$VERSION --depth 1 https://android.googlesource.com/platform/external/selinux
+#git clone --branch android-$VERSION --depth 1 https://android.googlesource.com/platform/external/e2fsprogs
#git clone --branch android-$VERSION --depth 1 https://android.googlesource.com/platform/external/f2fs-tools
+## boringssl commit id is from https://android.googlesource.com/platform/external/boringssl/+/$VERSION/BORINGSSL_REVISION
+#git clone https://boringssl.googlesource.com/boringssl
# generate_build.rb borrowed from Arch Linux
# And thanks to Alan Alberghini for the make_ext4fs patch.
@@ -95,6 +101,10 @@ cd core
patch -p1 < $CWD/fix_build_core.patch
cd ..
+cd e2fsprogs
+patch -p1 < $CWD/fix_build_e2fsprogs.patch
+cd ..
+
cd selinux
patch -p1 < $CWD/fix_build_selinux.patch
cd ..
@@ -119,7 +129,11 @@ mkdir -p $PKG/usr/bin
install -Dm 755 adb $PKG/usr/bin/adb
install -Dm 755 fastboot $PKG/usr/bin/fastboot
install -Dm 755 core/mkbootimg/mkbootimg $PKG/usr/bin/mkbootimg
-install -Dm 755 make_ext4fs $PKG/usr/bin/make_ext4fs
+install -Dm 755 mke2fs.android $PKG/usr/bin/mke2fs.android
+install -Dm 755 e2fsdroid $PKG/usr/bin/e2fsdroid
+install -Dm 755 ext2simg $PKG/usr/bin/ext2simg
+
+install -Dm 644 $CWD/bash_completion.fastboot $PKG/usr/share/bash-completion/completions/fastboot
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
diff --git a/development/android-tools/android-tools.info b/development/android-tools/android-tools.info
index ba44d787e2..0be06697ab 100644
--- a/development/android-tools/android-tools.info
+++ b/development/android-tools/android-tools.info
@@ -1,16 +1,18 @@
PRGNAM="android-tools"
-VERSION="8.0.0_r24"
+VERSION="9.0.0_r18"
HOMEPAGE="http://developer.android.com/sdk/"
-DOWNLOAD="https://sourceforge.net/projects/slackbuildsdirectlinks/files/android-tools/8.0.0_r24/core-6cd85e2a89347e0a107f59e38ece61fa19e6da78.tar.gz \
- https://sourceforge.net/projects/slackbuildsdirectlinks/files/android-tools/8.0.0_r24/extras-af2dce5151ad478673401211dd71ae1579d2b5be.tar.gz \
- https://sourceforge.net/projects/slackbuildsdirectlinks/files/android-tools/8.0.0_r24/f2fs-tools-b8baf1712d991541141bb0bdddd625f527e6d41f.tar.gz \
- https://sourceforge.net/projects/slackbuildsdirectlinks/files/android-tools/8.0.0_r24/selinux-be29c2550c3ff6551a56048c075a88da01b46cab.tar.gz \
- https://sourceforge.net/projects/slackbuildsdirectlinks/files/android-tools/8.0.0_r24/boringssl-58e449904e248f34bdfc2be7a609c58bcb0257b7.tar.gz"
-MD5SUM="b5b3857b5edae7305f5348e1db148b61 \
- 19bdc27835ed340fdbb4205d6af8e721 \
- 2ebe16bb82a5b24706d78d9e16d66f6e \
- 0599c72a1ff3142ad6baed8886d074a3 \
- 83ed1371eee7769f29b767c217e865e7"
+DOWNLOAD="http://ponce.cc/slackware/sources/repo/android-tools/9.0.0_r18/core-c9602275fc7dae822d22ba36c933d29f4556d6aa.tar.gz \
+ http://ponce.cc/slackware/sources/repo/android-tools/9.0.0_r18/e2fsprogs-fecf0a211618bbed183ebf58d5bf489105bed72c.tar.gz \
+ http://ponce.cc/slackware/sources/repo/android-tools/9.0.0_r18/extras-9d680761912ab259ffd35b05c880b9e49d800bc8.tar.gz \
+ http://ponce.cc/slackware/sources/repo/android-tools/9.0.0_r18/f2fs-tools-d2d127499ebdfaa681df4c13a303a7d0445f1e80.tar.gz \
+ http://ponce.cc/slackware/sources/repo/android-tools/9.0.0_r18/selinux-0d8f825909d3e600facbf23be4758877f98c2602.tar.gz \
+ http://ponce.cc/slackware/sources/repo/android-tools/9.0.0_r18/boringssl-45210dd4e21ace9d28cb76b3f83303fcdd2efcce.tar.gz"
+MD5SUM="8bba902ab4b5aace76e2efc34e47fe46 \
+ 8f01009b219d13fce4960a9b5de2e868 \
+ 44894217f0c6b8dcae77292b08e51d40 \
+ 789498e1c7f5dc2851590d8e2fa05028 \
+ b94232d9153df5a020419ac228153837 \
+ a532caf142cb80ca418629e45cfa4b67"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="gtest ninja pcre2"
diff --git a/development/android-tools/bash_completion.fastboot b/development/android-tools/bash_completion.fastboot
new file mode 100644
index 0000000000..bc59ee8636
--- /dev/null
+++ b/development/android-tools/bash_completion.fastboot
@@ -0,0 +1,90 @@
+## Bash completion for the Android SDK tools.
+##
+## Copyright (c) 2009 Matt Brubeck
+##
+## Permission is hereby granted, free of charge, to any person obtaining a copy
+## of this software and associated documentation files (the "Software"), to deal
+## in the Software without restriction, including without limitation the rights
+## to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+## copies of the Software, and to permit persons to whom the Software is
+## furnished to do so, subject to the following conditions:
+##
+## The above copyright notice and this permission notice shall be included in
+## all copies or substantial portions of the Software.
+##
+## THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+## IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+## FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+## AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+## LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+## OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+## THE SOFTWARE.
+
+
+function _fastboot()
+{
+ local cur prev opts cmds c subcommand device_selected
+ COMPREPLY=()
+ cur="${COMP_WORDS[COMP_CWORD]}"
+ prev="${COMP_WORDS[COMP_CWORD-1]}"
+ opts="-w -s -p -c -i -b -n"
+ cmds="update flashall flash erase getvar boot devices \
+ reboot reboot-bootloader oem continue"
+ subcommand=""
+ partition_list="boot recovery system userdata bootloader radio"
+ device_selected=""
+
+ # Look for the subcommand.
+ c=1
+ while [ $c -lt $COMP_CWORD ]; do
+ word="${COMP_WORDS[c]}"
+ if [ "$word" = "-s" ]; then
+ device_selected=true
+ fi
+ for cmd in $cmds; do
+ if [ "$cmd" = "$word" ]; then
+ subcommand="$word"
+ fi
+ done
+ c=$((++c))
+ done
+
+ case "${subcommand}" in
+ '')
+ case "${prev}" in
+ -s)
+ # Use 'fastboot devices' to list serial numbers.
+ COMPREPLY=( $(compgen -W "$(fastboot devices|cut -f1)" -- ${cur} ) )
+ return 0
+ ;;
+ esac
+ case "${cur}" in
+ -*)
+ COMPREPLY=( $(compgen -W "$opts" -- ${cur}) )
+ return 0
+ ;;
+ esac
+ if [ -z "$device_selected" ]; then
+ local num_devices=$(( $(fastboot devices 2>/dev/null|wc -l) ))
+ if [ "$num_devices" -gt "1" ]; then
+ # With multiple devices, you must choose a device first.
+ COMPREPLY=( $(compgen -W "-s" -- ${cur}) )
+ return 0
+ fi
+ fi
+ COMPREPLY=( $(compgen -W "${cmds}" -- ${cur}) )
+ return 0
+ ;;
+ flash)
+ # partition name
+ COMPREPLY=( $(compgen -W "${partition_list}" -- ${cur}) )
+ return 0
+ ;;
+ erase)
+ # partition name
+ COMPREPLY=( $(compgen -W "${partition_list}" -- ${cur}) )
+ return 0
+ ;;
+ esac
+}
+complete -o default -F _fastboot fastboot
diff --git a/development/android-tools/fix_build_core.patch b/development/android-tools/fix_build_core.patch
index b67a540199..7b163633de 100644
--- a/development/android-tools/fix_build_core.patch
+++ b/development/android-tools/fix_build_core.patch
@@ -1,16 +1,16 @@
diff --git a/adb/client/usb_libusb.cpp b/adb/client/usb_libusb.cpp
-index 7025f283c..66fad6564 100644
+index 46c3f58ec5..a0c36f0151 100644
--- a/adb/client/usb_libusb.cpp
+++ b/adb/client/usb_libusb.cpp
-@@ -21,6 +21,7 @@
- #include <stdint.h>
+@@ -22,6 +22,7 @@
+ #include <stdlib.h>
#include <atomic>
+#include <condition_variable>
#include <chrono>
+ #include <condition_variable>
#include <memory>
- #include <mutex>
-@@ -28,7 +29,7 @@
+@@ -30,7 +31,7 @@
#include <thread>
#include <unordered_map>
@@ -19,20 +19,32 @@ index 7025f283c..66fad6564 100644
#include <android-base/file.h>
#include <android-base/logging.h>
+diff --git a/adb/client/usb_linux.cpp b/adb/client/usb_linux.cpp
+index 1f376a4c93..f1d6779159 100644
+--- a/adb/client/usb_linux.cpp
++++ b/adb/client/usb_linux.cpp
+@@ -29,6 +29,7 @@
+ #include <stdlib.h>
+ #include <string.h>
+ #include <sys/ioctl.h>
++#include <sys/sysmacros.h>
+ #include <sys/time.h>
+ #include <sys/types.h>
+ #include <unistd.h>
diff --git a/adb/sysdeps/posix/network.cpp b/adb/sysdeps/posix/network.cpp
-index 45da5af4a..516c716d9 100644
+index ecd1fd24ec..86166c0e2c 100644
--- a/adb/sysdeps/posix/network.cpp
+++ b/adb/sysdeps/posix/network.cpp
-@@ -16,6 +16,7 @@
+@@ -21,6 +21,7 @@
+ #include <sys/socket.h>
- #include "sysdeps/network.h"
+ #include <string>
++#include <string.h>
+
+ #include "adb_unique_fd.h"
-+#include <cstring>
- #include <errno.h>
- #include <netinet/in.h>
- #include <sys/socket.h>
diff --git a/base/errors_unix.cpp b/base/errors_unix.cpp
-index 296995efe..48269b675 100644
+index 296995efe2..48269b6750 100644
--- a/base/errors_unix.cpp
+++ b/base/errors_unix.cpp
@@ -17,6 +17,7 @@
@@ -44,7 +56,7 @@ index 296995efe..48269b675 100644
namespace android {
namespace base {
diff --git a/base/file.cpp b/base/file.cpp
-index 2f697a1cc..81aef5758 100644
+index 2f697a1cc1..81aef5758c 100644
--- a/base/file.cpp
+++ b/base/file.cpp
@@ -22,6 +22,7 @@
@@ -56,7 +68,7 @@ index 2f697a1cc..81aef5758 100644
#include <memory>
#include <mutex>
diff --git a/base/logging.cpp b/base/logging.cpp
-index 6357b4ba7..3c7dbce13 100644
+index a31feefab2..d746cc4d78 100644
--- a/base/logging.cpp
+++ b/base/logging.cpp
@@ -23,6 +23,7 @@
@@ -67,15 +79,40 @@ index 6357b4ba7..3c7dbce13 100644
// For getprogname(3) or program_invocation_short_name.
#if defined(__ANDROID__) || defined(__APPLE__)
+diff --git a/fastboot/fs.cpp b/fastboot/fs.cpp
+index c30ca1e4b3..fdc042ff36 100644
+--- a/fastboot/fs.cpp
++++ b/fastboot/fs.cpp
+@@ -117,7 +117,7 @@ static int generate_ext4_image(const char* fileName, long long partSize,
+ static constexpr int block_size = 4096;
+ const std::string exec_dir = android::base::GetExecutableDirectory();
+
+- const std::string mke2fs_path = exec_dir + "/mke2fs";
++ const std::string mke2fs_path = exec_dir + "/mke2fs.android";
+ std::vector<const char*> mke2fs_args = {mke2fs_path.c_str(), "-t", "ext4", "-b"};
+
+ std::string block_size_str = std::to_string(block_size);
diff --git a/libsparse/sparse_read.cpp b/libsparse/sparse_read.cpp
-index bd668735a..76cf43299 100644
+index 4379635270..ccb565bb63 100644
--- a/libsparse/sparse_read.cpp
+++ b/libsparse/sparse_read.cpp
-@@ -18,6 +18,7 @@
- #define _LARGEFILE64_SOURCE 1
+@@ -26,6 +26,7 @@
+ #include <stdlib.h>
+ #include <string.h>
+ #include <string>
++#include <string.h>
+ #include <unistd.h>
- #include <algorithm>
-+#include <cstring>
- #include <inttypes.h>
- #include <fcntl.h>
- #include <stdarg.h>
+ #include <sparse/sparse.h>
+diff --git a/libziparchive/zip_archive.cc b/libziparchive/zip_archive.cc
+index 5e5e7afd18..ebbc819a7a 100644
+--- a/libziparchive/zip_archive.cc
++++ b/libziparchive/zip_archive.cc
+@@ -29,6 +29,7 @@
+ #include <string.h>
+ #include <time.h>
+ #include <unistd.h>
++#include <string_view>
+
+ #include <memory>
+ #include <vector>
diff --git a/development/android-tools/fix_build_e2fsprogs.patch b/development/android-tools/fix_build_e2fsprogs.patch
new file mode 100644
index 0000000000..b9fdb5eafe
--- /dev/null
+++ b/development/android-tools/fix_build_e2fsprogs.patch
@@ -0,0 +1,83 @@
+diff --git a/contrib/android/perms.c b/contrib/android/perms.c
+index d83ad35a..dca5b620 100644
+--- a/contrib/android/perms.c
++++ b/contrib/android/perms.c
+@@ -5,6 +5,7 @@
+ #include "support/nls-enable.h"
+ #include <time.h>
+ #include <sys/stat.h>
++#include "private/android_filesystem_capability.h"
+
+ #ifndef XATTR_SELINUX_SUFFIX
+ # define XATTR_SELINUX_SUFFIX "selinux"
+diff --git a/lib/ext2fs/bitops.h b/lib/ext2fs/bitops.h
+index 505b3c9c..7be5105f 100644
+--- a/lib/ext2fs/bitops.h
++++ b/lib/ext2fs/bitops.h
+@@ -233,11 +233,11 @@ extern errcode_t ext2fs_find_first_set_generic_bmap(ext2fs_generic_bitmap bitmap
+ #if (__STDC_VERSION__ >= 199901L)
+ #define _INLINE_ extern inline
+ #else
+-#define _INLINE_ inline
++#define _INLINE_ static inline
+ #endif
+ #else /* !INCLUDE_INLINE FUNCS */
+ #if (__STDC_VERSION__ >= 199901L)
+-#define _INLINE_ inline
++#define _INLINE_ static inline
+ #else /* not C99 */
+ #ifdef __GNUC__
+ #define _INLINE_ extern __inline__
+diff --git a/lib/ext2fs/ext2fs.h b/lib/ext2fs/ext2fs.h
+index 470e7d7a..95a41e0d 100644
+--- a/lib/ext2fs/ext2fs.h
++++ b/lib/ext2fs/ext2fs.h
+@@ -1743,7 +1743,7 @@ extern const struct ext2_inode *ext2fs_const_inode(const struct ext2_inode_large
+ #define _INLINE_ extern
+ #else
+ #if (__STDC_VERSION__ >= 199901L)
+-#define _INLINE_ inline
++#define _INLINE_ static inline
+ #else
+ #ifdef __GNUC__
+ #define _INLINE_ extern __inline__
+diff --git a/misc/create_inode.c b/misc/create_inode.c
+index 1373b46b..e6f34bd9 100644
+--- a/misc/create_inode.c
++++ b/misc/create_inode.c
+@@ -403,7 +403,7 @@ static ssize_t my_pread(int fd, void *buf, size_t count, off_t offset)
+ }
+ #endif /* !defined HAVE_PREAD64 && !defined HAVE_PREAD */
+
+-static errcode_t copy_file_range(ext2_filsys fs, int fd, ext2_file_t e2_file,
++static errcode_t e2_copy_file_range(ext2_filsys fs, int fd, ext2_file_t e2_file,
+ off_t start, off_t end, char *buf,
+ char *zerobuf)
+ {
+@@ -477,7 +477,7 @@ static errcode_t try_lseek_copy(ext2_filsys fs, int fd, struct stat *statbuf,
+
+ data_blk = data & ~(fs->blocksize - 1);
+ hole_blk = (hole + (fs->blocksize - 1)) & ~(fs->blocksize - 1);
+- err = copy_file_range(fs, fd, e2_file, data_blk, hole_blk, buf,
++ err = e2_copy_file_range(fs, fd, e2_file, data_blk, hole_blk, buf,
+ zerobuf);
+ if (err)
+ return err;
+@@ -527,7 +527,7 @@ static errcode_t try_fiemap_copy(ext2_filsys fs, int fd, ext2_file_t e2_file,
+ }
+ for (i = 0, ext = ext_buf; i < fiemap_buf->fm_mapped_extents;
+ i++, ext++) {
+- err = copy_file_range(fs, fd, e2_file, ext->fe_logical,
++ err = e2_copy_file_range(fs, fd, e2_file, ext->fe_logical,
+ ext->fe_logical + ext->fe_length,
+ buf, zerobuf);
+ if (err)
+@@ -580,7 +580,7 @@ static errcode_t copy_file(ext2_filsys fs, int fd, struct stat *statbuf,
+ goto out;
+ #endif
+
+- err = copy_file_range(fs, fd, e2_file, 0, statbuf->st_size, buf,
++ err = e2_copy_file_range(fs, fd, e2_file, 0, statbuf->st_size, buf,
+ zerobuf);
+ out:
+ ext2fs_free_mem(&zerobuf);
diff --git a/development/android-tools/generate_build.rb b/development/android-tools/generate_build.rb
index cb3e1e685c..91f42fec0b 100644
--- a/development/android-tools/generate_build.rb
+++ b/development/android-tools/generate_build.rb
@@ -5,7 +5,7 @@
# This script tries to mimic Android build rules.
def expand(dir, files)
- files.map{|f| File.join(dir,f)}
+ files.map { |f| File.join(dir, f) }
end
# Compiles sources to *.o files.
@@ -16,17 +16,17 @@ def compile(sources, cflags)
ext = File.extname(s)
case ext
- when '.c'
- cc = 'cc'
- lang_flags = '-std=gnu11 $CFLAGS $CPPFLAGS'
- when '.cpp', '.cc'
- cc = 'cxx'
- lang_flags = '-std=gnu++14 $CXXFLAGS $CPPFLAGS'
+ when ".c"
+ cc = "cc"
+ lang_flags = "-std=gnu11 $CFLAGS $CPPFLAGS"
+ when ".cpp", ".cc"
+ cc = "cxx"
+ lang_flags = "-std=gnu++17 $CXXFLAGS $CPPFLAGS"
else
- raise "Unknown extension #{ext}"
+ raise "Unknown extension #{ext}"
end
- output = s + '.o'
+ output = s + ".o"
outputs << output
puts "build #{output}: #{cc} #{s}\n cflags = #{lang_flags} #{cflags}"
end
@@ -38,24 +38,23 @@ end
# lib - static library path relative to dir
def subninja(dir, lib)
puts "subninja #{dir}build.ninja"
- return lib.each{|l| dir + l}
+ return lib.each { |l| dir + l }
end
# Links object files
def link(output, objects, ldflags)
- puts "build #{output}: link #{objects.join(' ')}\n ldflags = #{ldflags} $LDFLAGS"
+ puts "build #{output}: link #{objects.join(" ")}\n ldflags = #{ldflags} $LDFLAGS"
end
puts "# This set of commands generated by generate_build.rb script\n\n"
-puts "CC = #{ENV['CC'] || 'clang'}"
-puts "CXX = #{ENV['CXX'] || 'clang++'}\n\n"
-puts "CFLAGS = #{ENV['CFLAGS']}"
-puts "CXXFLAGS = #{ENV['CXXFLAGS']}"
-puts "LDFLAGS = #{ENV['LDFLAGS']}"
-puts "PKGVER = #{ENV['PKGVER']}\n\n"
-
-
-puts """
+puts "CC = #{ENV["CC"] || "clang"}"
+puts "CXX = #{ENV["CXX"] || "clang++"}\n\n"
+puts "CFLAGS = #{ENV["CFLAGS"]}"
+puts "CXXFLAGS = #{ENV["CXXFLAGS"]}"
+puts "LDFLAGS = #{ENV["LDFLAGS"]}"
+puts "PKGVER = #{ENV["PKGVER"]}\n\n"
+
+puts "" "
rule cc
command = $CC $cflags -c $in -o $out
@@ -66,7 +65,7 @@ rule link
command = $CXX $ldflags $LDFLAGS $in -o $out
-"""
+" ""
adbdfiles = %w(
adb.cpp
@@ -85,7 +84,7 @@ adbdfiles = %w(
adb_auth_host.cpp
shell_service_protocol.cpp
)
-libadbd = compile(expand('core/adb', adbdfiles), '-DADB_VERSION="\"$PKGVER\"" -DADB_HOST=1 -Icore/include -Icore/base/include -Icore/adb -Icore/libcrypto_utils/include -Iboringssl/include')
+libadbd = compile(expand("core/adb", adbdfiles), '-DADB_VERSION="\"$PKGVER\"" -DADB_HOST=1 -Icore/include -Icore/base/include -Icore/adb -Icore/libcrypto_utils/include -Iboringssl/include')
adbfiles = %w(
console.cpp
@@ -96,13 +95,13 @@ adbfiles = %w(
file_sync_client.cpp
sysdeps_unix.cpp
sysdeps/errno.cpp
- sysdeps/posix/network.cpp
client/main.cpp
client/usb_dispatch.cpp
client/usb_linux.cpp
client/usb_libusb.cpp
+ sysdeps/posix/network.cpp
)
-libadb = compile(expand('core/adb', adbfiles), '-D_GNU_SOURCE -DADB_HOST=1 -Icore/include -Icore/base/include -Icore/adb')
+libadb = compile(expand("core/adb", adbfiles), "-D_GNU_SOURCE -DADB_HOST=1 -Icore/include -Icore/base/include -Icore/adb")
basefiles = %w(
file.cpp
@@ -113,7 +112,7 @@ basefiles = %w(
errors_unix.cpp
test_utils.cpp
)
-libbase = compile(expand('core/base', basefiles), '-DADB_HOST=1 -Icore/base/include -Icore/include')
+libbase = compile(expand("core/base", basefiles), "-DADB_HOST=1 -Icore/base/include -Icore/include")
logfiles = %w(
log_event_write.c
@@ -129,39 +128,38 @@ logfiles = %w(
stderr_write.c
logprint.c
)
-liblog = compile(expand('core/liblog', logfiles), '-DLIBLOG_LOG_TAG=1006 -D_XOPEN_SOURCE=700 -DFAKE_LOG_DEVICE=1 -Icore/log/include -Icore/include')
+liblog = compile(expand("core/liblog", logfiles), "-DLIBLOG_LOG_TAG=1006 -D_XOPEN_SOURCE=700 -DFAKE_LOG_DEVICE=1 -Icore/log/include -Icore/include")
cutilsfiles = %w(
- load_file.c
- canned_fs_config.c
- fs_config.cpp
- socket_local_client_unix.c
- socket_network_client_unix.c
- socket_local_server_unix.c
+ load_file.cpp
+ socket_local_client_unix.cpp
+ socket_network_client_unix.cpp
+ socket_local_server_unix.cpp
sockets_unix.cpp
- socket_inaddr_any_server_unix.c
+ socket_inaddr_any_server_unix.cpp
sockets.cpp
android_get_control_file.cpp
- threads.c
+ threads.cpp
+ fs_config.cpp
+ canned_fs_config.cpp
)
-libcutils = compile(expand('core/libcutils', cutilsfiles), '-D_GNU_SOURCE -Icore/include -Icore/libcutils/include')
+libcutils = compile(expand("core/libcutils", cutilsfiles), "-D_GNU_SOURCE -Icore/libcutils/include -Icore/include")
diagnoseusbfiles = %w(
diagnose_usb.cpp
)
-libdiagnoseusb = compile(expand('core/adb', diagnoseusbfiles), '-Icore/include -Icore/base/include')
+libdiagnoseusb = compile(expand("core/adb", diagnoseusbfiles), "-Icore/include -Icore/base/include")
libcryptofiles = %w(
android_pubkey.c
)
-libcrypto = compile(expand('core/libcrypto_utils', libcryptofiles), '-Icore/libcrypto_utils/include -Iboringssl/include')
+libcrypto = compile(expand("core/libcrypto_utils", libcryptofiles), "-Icore/libcrypto_utils/include -Iboringssl/include")
# TODO: make subninja working
#boringssl = subninja('boringssl/build/', ['crypto/libcrypto.a'])
-boringssl = ['boringssl/build/crypto/libcrypto.a']
-
-link('adb', libbase + liblog + libcutils + libadbd + libadb + libdiagnoseusb + libcrypto + boringssl, '-lpthread -lusb-1.0')
+boringssl = ["boringssl/build/crypto/libcrypto.a"]
+link("adb", libbase + liblog + libcutils + libadbd + libadb + libdiagnoseusb + libcrypto + boringssl, "-lpthread -lusb-1.0")
fastbootfiles = %w(
protocol.cpp
@@ -175,7 +173,7 @@ fastbootfiles = %w(
tcp.cpp
udp.cpp
)
-libfastboot = compile(expand('core/fastboot', fastbootfiles), '-DFASTBOOT_VERSION="\"$PKGVER\"" -D_GNU_SOURCE -D_XOPEN_SOURCE=700 -DUSE_F2FS -Icore/base/include -Icore/include -Icore/adb -Icore/libsparse/include -Icore/mkbootimg -Iextras/ext4_utils/include -Iextras/f2fs_utils')
+libfastboot = compile(expand("core/fastboot", fastbootfiles), '-DFASTBOOT_VERSION="\"$PKGVER\"" -D_GNU_SOURCE -D_XOPEN_SOURCE=700 -DUSE_F2FS -Icore/base/include -Icore/include -Icore/adb -Icore/libsparse/include -Icore/mkbootimg -Iextras/ext4_utils/include -Iextras/f2fs_utils -Icore/libziparchive/include -Icore/mkbootimg/include/bootimg')
sparsefiles = %w(
backed_block.c
@@ -185,44 +183,28 @@ sparsefiles = %w(
sparse_err.c
sparse_read.cpp
)
-libsparse = compile(expand('core/libsparse', sparsefiles), '-Icore/libsparse/include -Icore/base/include')
+libsparse = compile(expand("core/libsparse", sparsefiles), "-Icore/libsparse/include -Icore/base/include")
f2fsfiles = %w(
- f2fs_utils.c
- f2fs_ioutils.c
- f2fs_dlutils.c
)
-f2fs = compile(expand('extras/f2fs_utils', f2fsfiles), '-Iextras/f2fs_utils -If2fs-tools/include -If2fs-tools/mkfs -Icore/libsparse/include -Iselinux/libselinux/include')
+f2fs = compile(expand("extras/f2fs_utils", f2fsfiles), "-DHAVE_LINUX_TYPES_H -If2fs-tools/include -Icore/liblog/include")
zipfiles = %w(
zip_archive.cc
)
-libzip = compile(expand('core/libziparchive', zipfiles), '-Icore/base/include -Icore/include')
+libzip = compile(expand("core/libziparchive", zipfiles), "-Icore/base/include -Icore/include -Icore/libziparchive/include")
utilfiles = %w(
FileMap.cpp
)
-libutil = compile(expand('core/libutils', utilfiles), '-Icore/include')
+libutil = compile(expand("core/libutils", utilfiles), "-Icore/include")
ext4files = %w(
- make_ext4fs.c
- ext4fixup.c
ext4_utils.c
- allocate.c
- contents.c
- extent.c
- indirect.c
- sha1.c
wipe.c
- crc16.c
ext4_sb.c
)
-libext4 = compile(expand('extras/ext4_utils', ext4files), '-D_GNU_SOURCE -Icore/libsparse/include -Icore/include -Iselinux/libselinux/include -Iextras/ext4_utils/include -DANDROID -DHOST=1')
-
-make_ext4files = %w(
- make_ext4fs_main.c
-)
-libmake_ext4 = compile(expand('extras/ext4_utils', make_ext4files), '-DANDROID -Icore/libsparse/include -Icore/include -Iselinux/libselinux/include -Iextras/ext4_utils/include -DHOST=1')
+libext4 = compile(expand("extras/ext4_utils", ext4files), "-D_GNU_SOURCE -Icore/libsparse/include -Icore/include -Iselinux/libselinux/include -Iextras/ext4_utils/include")
selinuxfiles = %w(
callbacks.c
@@ -250,7 +232,7 @@ selinuxfiles = %w(
getenforce.c
setenforce.c
)
-libselinux = compile(expand('selinux/libselinux/src', selinuxfiles), '-DAUDITD_LOG_TAG=1003 -D_GNU_SOURCE -DHOST -DUSE_PCRE2 -DNO_PERSISTENTLY_STORED_PATTERNS -DDISABLE_SETRANS -DDISABLE_BOOL -DNO_MEDIA_BACKEND -DNO_X_BACKEND -DNO_DB_BACKEND -DPCRE2_CODE_UNIT_WIDTH=8 -Iselinux/libselinux/include -Iselinux/libsepol/include')
+libselinux = compile(expand("selinux/libselinux/src", selinuxfiles), "-DAUDITD_LOG_TAG=1003 -D_GNU_SOURCE -DHOST -DUSE_PCRE2 -DNO_PERSISTENTLY_STORED_PATTERNS -DDISABLE_SETRANS -DDISABLE_BOOL -DNO_MEDIA_BACKEND -DNO_X_BACKEND -DNO_DB_BACKEND -DPCRE2_CODE_UNIT_WIDTH=8 -Iselinux/libselinux/include -Iselinux/libsepol/include")
libsepolfiles = %w(
policydb_public.c
@@ -277,7 +259,140 @@ libsepolfiles = %w(
expand.c
hierarchy.c
)
-libsepol = compile(expand('selinux/libsepol/src', libsepolfiles), '-Iselinux/libsepol/include')
+libsepol = compile(expand("selinux/libsepol/src", libsepolfiles), "-Iselinux/libsepol/include")
+
+link("fastboot", libsparse + libzip + libcutils + liblog + libutil + libbase + libext4 + f2fs + libselinux + libsepol + libfastboot + libdiagnoseusb, "-lz -lpcre2-8 -lpthread -ldl")
+
+# mke2fs.android - a ustom version of mke2fs that supports --android_sparse (FS#56955)
+libext2fsfiles = %w(
+ lib/blkid/cache.c
+ lib/blkid/dev.c
+ lib/blkid/devname.c
+ lib/blkid/devno.c
+ lib/blkid/getsize.c
+ lib/blkid/llseek.c
+ lib/blkid/probe.c
+ lib/blkid/read.c
+ lib/blkid/resolve.c
+ lib/blkid/save.c
+ lib/blkid/tag.c
+ lib/e2p/feature.c
+ lib/e2p/hashstr.c
+ lib/e2p/mntopts.c
+ lib/e2p/ostype.c
+ lib/e2p/parse_num.c
+ lib/e2p/uuid.c
+ lib/et/com_err.c
+ lib/et/error_message.c
+ lib/et/et_name.c
+ lib/ext2fs/alloc.c
+ lib/ext2fs/alloc_sb.c
+ lib/ext2fs/alloc_stats.c
+ lib/ext2fs/alloc_tables.c
+ lib/ext2fs/atexit.c
+ lib/ext2fs/badblocks.c
+ lib/ext2fs/bb_inode.c
+ lib/ext2fs/bitmaps.c
+ lib/ext2fs/bitops.c
+ lib/ext2fs/blkmap64_ba.c
+ lib/ext2fs/blkmap64_rb.c
+ lib/ext2fs/blknum.c
+ lib/ext2fs/block.c
+ lib/ext2fs/bmap.c
+ lib/ext2fs/closefs.c
+ lib/ext2fs/crc16.c
+ lib/ext2fs/crc32c.c
+ lib/ext2fs/csum.c
+ lib/ext2fs/dirblock.c
+ lib/ext2fs/dir_iterate.c
+ lib/ext2fs/expanddir.c
+ lib/ext2fs/ext2_err.c
+ lib/ext2fs/ext_attr.c
+ lib/ext2fs/extent.c
+ lib/ext2fs/fallocate.c
+ lib/ext2fs/fileio.c
+ lib/ext2fs/freefs.c
+ lib/ext2fs/gen_bitmap64.c
+ lib/ext2fs/gen_bitmap.c
+ lib/ext2fs/get_num_dirs.c
+ lib/ext2fs/getsectsize.c
+ lib/ext2fs/getsize.c
+ lib/ext2fs/hashmap.c
+ lib/ext2fs/i_block.c
+ lib/ext2fs/ind_block.c
+ lib/ext2fs/initialize.c
+ lib/ext2fs/inline.c
+ lib/ext2fs/inline_data.c
+ lib/ext2fs/inode.c
+ lib/ext2fs/io_manager.c
+ lib/ext2fs/ismounted.c
+ lib/ext2fs/link.c
+ lib/ext2fs/llseek.c
+ lib/ext2fs/lookup.c
+ lib/ext2fs/mkdir.c
+ lib/ext2fs/mkjournal.c
+ lib/ext2fs/mmp.c
+ lib/ext2fs/namei.c
+ lib/ext2fs/newdir.c
+ lib/ext2fs/openfs.c
+ lib/ext2fs/progress.c
+ lib/ext2fs/punch.c
+ lib/ext2fs/rbtree.c
+ lib/ext2fs/read_bb.c
+ lib/ext2fs/read_bb_file.c
+ lib/ext2fs/res_gdt.c
+ lib/ext2fs/rw_bitmaps.c
+ lib/ext2fs/sha512.c
+ lib/ext2fs/sparse_io.c
+ lib/ext2fs/symlink.c
+ lib/ext2fs/undo_io.c
+ lib/ext2fs/unix_io.c
+ lib/ext2fs/valid_blk.c
+ lib/support/dict.c
+ lib/support/mkquota.c
+ lib/support/parse_qtype.c
+ lib/support/plausible.c
+ lib/support/prof_err.c
+ lib/support/profile.c
+ lib/support/quotaio.c
+ lib/support/quotaio_tree.c
+ lib/support/quotaio_v2.c
+ lib/uuid/gen_uuid.c
+ lib/uuid/isnull.c
+ lib/uuid/pack.c
+ lib/uuid/parse.c
+ lib/uuid/unpack.c
+ lib/uuid/unparse.c
+ misc/create_inode.c
+)
+libext2fs = compile(expand("e2fsprogs", libext2fsfiles), "-Ie2fsprogs/lib -Ie2fsprogs/lib/ext2fs -Icore/libsparse/include")
+
+mke2fsfiles = %w(
+ misc/default_profile.c
+ misc/mke2fs.c
+ misc/mk_hugefiles.c
+ misc/util.c
+)
+mke2fs = compile(expand("e2fsprogs", mke2fsfiles), "-Ie2fsprogs/lib")
+
+link("mke2fs.android", mke2fs + libext2fs + libsparse + libbase + libzip + liblog + libutil, "-lpthread -lz")
+
+e2fsdroidfiles = %w(
+ contrib/android/e2fsdroid.c
+ contrib/android/basefs_allocator.c
+ contrib/android/block_range.c
+ contrib/android/base_fs.c
+ contrib/android/fsmap.c
+ contrib/android/block_list.c
+ contrib/android/perms.c
+)
+e2fsdroid = compile(expand("e2fsprogs", e2fsdroidfiles), "-Ie2fsprogs/lib -Ie2fsprogs/lib/ext2fs -Iselinux/libselinux/include -Icore/libcutils/include -Ie2fsprogs/misc")
+
+link("e2fsdroid", e2fsdroid + libext2fs + libsparse + libbase + libzip + liblog + libutil + libselinux + libsepol + libcutils, "-lz -lpthread -lpcre2-8")
+
+ext2simgfiles = %w(
+ contrib/android/ext2simg.c
+)
+ext2simg = compile(expand("e2fsprogs", ext2simgfiles), "-Ie2fsprogs/lib -Icore/libsparse/include")
-link('fastboot', libsparse + libzip + libcutils + liblog + libutil + libbase + libext4 + f2fs + libselinux + libsepol + libfastboot + libdiagnoseusb, '-lz -lpcre2-8 -lpthread -ldl')
-link('make_ext4fs', libmake_ext4 + libzip + libcutils + liblog + libutil + libbase + libext4 + libselinux + libsepol + libsparse, '-lz -lpcre2-8 -lpthread')
+link("ext2simg", ext2simg + libext2fs + libsparse + libbase + libzip + liblog + libutil, "-lz -lpthread")
diff --git a/development/anjuta/anjuta.SlackBuild b/development/anjuta/anjuta.SlackBuild
index c4f11f91b6..60ab56357a 100644
--- a/development/anjuta/anjuta.SlackBuild
+++ b/development/anjuta/anjuta.SlackBuild
@@ -69,7 +69,7 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-CFLAGS="$SLKCFLAGS" \
+CFLAGS="$SLKCFLAGS -Wno-error=format-nonliteral -Wno-error=format-y2k" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
diff --git a/development/apache-log4cxx/apache-log4cxx.SlackBuild b/development/apache-log4cxx/apache-log4cxx.SlackBuild
index 8e1adafefb..a0971e9701 100644
--- a/development/apache-log4cxx/apache-log4cxx.SlackBuild
+++ b/development/apache-log4cxx/apache-log4cxx.SlackBuild
@@ -70,6 +70,7 @@ find -L . \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
zcat $CWD/fixincludes.patch.gz | patch -p1 || exit
+zcat $CWD/narrowing-fixes.patch.gz | patch -p1 || exit
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
diff --git a/development/apache-log4cxx/narrowing-fixes.patch.gz b/development/apache-log4cxx/narrowing-fixes.patch.gz
new file mode 100644
index 0000000000..cd79cc6971
--- /dev/null
+++ b/development/apache-log4cxx/narrowing-fixes.patch.gz
Binary files differ
diff --git a/development/arm-gcc/README b/development/arm-gcc/README
index 964a9570c2..c40bc6bb12 100644
--- a/development/arm-gcc/README
+++ b/development/arm-gcc/README
@@ -1,2 +1,2 @@
This package contains cross compiling version of GNU gcc, which can be
-used to compile C and C++ programs for the ARM platform.
+used to compile C programs for the ARM platform.
diff --git a/development/arm-gcc/arm-gcc.SlackBuild b/development/arm-gcc/arm-gcc.SlackBuild
index 782ac73ba1..664f99713f 100644
--- a/development/arm-gcc/arm-gcc.SlackBuild
+++ b/development/arm-gcc/arm-gcc.SlackBuild
@@ -25,7 +25,7 @@
# Written by Marek Buras <cyfr0n (at) go2 !dot pl>
PRGNAM=arm-gcc
-VERSION=${VERSION:-4.9.2}
+VERSION=${VERSION:-8.2.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -62,7 +62,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf gcc-$VERSION arm-gcc-build-$VERSION
-tar xvf $CWD/gcc-$VERSION.tar.bz2
+tar xvf $CWD/gcc-$VERSION.tar.xz
mkdir arm-gcc-build-$VERSION
cd arm-gcc-build-$VERSION
chown -R root:root .
@@ -130,6 +130,9 @@ rm -rf $PKG/usr/share
rm -rf $PKG/usr/man/man7
rm -rf $PKG/usr/libexec/gcc/arm/$VERSION/install-tools
+# These files collide with the ones from Slackware's gcc, so we move them
+mv $PKG/usr/lib$LIBDIRSUFFIX/libcc* $PKG/usr/lib$LIBDIRSUFFIX/gcc/arm-none-eabi/$VERSION/
+
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
diff --git a/development/arm-gcc/arm-gcc.info b/development/arm-gcc/arm-gcc.info
index 1aa9100d78..45dfc07ff1 100644
--- a/development/arm-gcc/arm-gcc.info
+++ b/development/arm-gcc/arm-gcc.info
@@ -1,8 +1,8 @@
PRGNAM="arm-gcc"
-VERSION="4.9.2"
+VERSION="8.2.0"
HOMEPAGE="http://www.gnu.org/software/gcc/"
-DOWNLOAD="ftp://ftp.gnu.org/pub/gnu/gcc/gcc-4.9.2/gcc-4.9.2.tar.bz2"
-MD5SUM="4df8ee253b7f3863ad0b86359cd39c43"
+DOWNLOAD="ftp://ftp.gnu.org/pub/gnu/gcc/gcc-8.2.0/gcc-8.2.0.tar.xz"
+MD5SUM="4ab282f414676496483b3e1793d07862"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="arm-binutils"
diff --git a/development/atom/atom.SlackBuild b/development/atom/atom.SlackBuild
index 4b37a523e6..cb91f78ccf 100644
--- a/development/atom/atom.SlackBuild
+++ b/development/atom/atom.SlackBuild
@@ -23,7 +23,8 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=atom
-VERSION=${VERSION:-1.23.3}
+VERSION=${VERSION:-1.32.0_beta0}
+SRCVER=$(echo $VERSION | tr _ - )
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -65,9 +66,9 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar -xvf $CWD/$PRGNAM-$VERSION.tar.gz || tar xvf $CWD/v$VERSION
-cd $PRGNAM-$VERSION
+rm -rf $PRGNAM-$SRCVER
+tar -xvf $CWD/$PRGNAM-$SRCVER.tar.gz
+cd $PRGNAM-$SRCVER
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -120,7 +121,9 @@ if [ "${ELECTRON_VERSION}" != "" ]; then
$PKG/$ATOM_RESOURCES/apm/node_modules/atom-package-manager/lib/apm.js
else
# packaged installation
- cp -r out/$PRGNAM-$VERSION-$ARCH_OUTPUT $PKG/usr/share/atom
+ BETA=""
+ if echo $VERSION | grep -q beta ; then BETA="-beta" ; fi
+ cp -r out/${PRGNAM}${BETA}-$SRCVER-$ARCH_OUTPUT $PKG/usr/share/atom
fi
install -Dm755 atom.sh $PKG/usr/bin/atom
diff --git a/development/atom/atom.info b/development/atom/atom.info
index 2f69bc17d7..6f155359b4 100644
--- a/development/atom/atom.info
+++ b/development/atom/atom.info
@@ -1,8 +1,8 @@
PRGNAM="atom"
-VERSION="1.23.3"
+VERSION="1.32.0_beta0"
HOMEPAGE="https://atom.io/"
-DOWNLOAD="https://github.com/atom/atom/archive/v1.23.3/atom-1.23.3.tar.gz"
-MD5SUM="1dfc819b29c910daaed20c11a629b28f"
+DOWNLOAD="https://github.com/atom/atom/archive/v1.32.0-beta0/atom-1.32.0-beta0.tar.gz"
+MD5SUM="eab5898091d0e5e333d847e3025a158b"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="nodejs"
diff --git a/development/autogen/autogen.SlackBuild b/development/autogen/autogen.SlackBuild
index 8318ecd660..3fdb23b320 100644
--- a/development/autogen/autogen.SlackBuild
+++ b/development/autogen/autogen.SlackBuild
@@ -70,7 +70,11 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-CFLAGS="$SLKCFLAGS" \
+# Patched for guile 2.2.x
+patch -p1 < $CWD/guile-2.2.patch
+
+autoreconf
+CFLAGS="$SLKCFLAGS -Wno-error=implicit-fallthrough -Wno-error=format-overflow" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
@@ -81,6 +85,7 @@ CXXFLAGS="$SLKCFLAGS" \
--infodir=/usr/info \
--docdir=/usr/doc/$PRGNAM-$VERSION \
--enable-static=no \
+ --disable-dependency-tracking \
--build=$ARCH-slackware-linux
make
diff --git a/development/autogen/guile-2.2.patch b/development/autogen/guile-2.2.patch
new file mode 100644
index 0000000000..b3d50f4b79
--- /dev/null
+++ b/development/autogen/guile-2.2.patch
@@ -0,0 +1,78 @@
+diff --git a/agen5/guile-iface.h b/agen5/guile-iface.h
+index 0aeabb0..6ce3520 100644
+--- a/agen5/guile-iface.h
++++ b/agen5/guile-iface.h
+@@ -9,7 +9,7 @@
+ # error AutoGen does not work with this version of Guile
+ choke me.
+
+-#elif GUILE_VERSION < 201000
++#else
+ # define AG_SCM_IS_PROC(_p) scm_is_true( scm_procedure_p(_p))
+ # define AG_SCM_LIST_P(_l) scm_is_true( scm_list_p(_l))
+ # define AG_SCM_PAIR_P(_p) scm_is_true( scm_pair_p(_p))
+@@ -24,9 +24,6 @@
+ # define AG_SCM_TO_ULONG(_v) ((unsigned long)scm_to_ulong(_v))
+ # define AG_SCM_VEC_P(_v) scm_is_vector(_v)
+
+-#else
+-# error unknown GUILE_VERSION
+- choke me.
+ #endif
+
+ #endif /* MUTATING_GUILE_IFACE_H_GUARD */
+diff --git a/configure b/configure
+index befe20b..c4254eb 100755
+--- a/configure
++++ b/configure
+@@ -14191,7 +14191,7 @@ $as_echo "no" >&6; }
+ PKG_CONFIG=""
+ fi
+ fi
+- _guile_versions_to_search="2.0 1.8"
++ _guile_versions_to_search="2.2 2.0 1.8"
+ if test -n "$GUILE_EFFECTIVE_VERSION"; then
+ _guile_tmp=""
+ for v in $_guile_versions_to_search; do
+
+diff --git a/agen5/guile-iface.h b/agen5/guile-iface.h
+index 0aeabb0..6ce3520 100644
+--- autogen-5.18.12/config/guile-orig.m4 2017-11-21 15:23:45.047606700 -0500
++++ autogen-5.18.12/config/guile.m4 2017-11-21 15:24:20.414686700 -0500
+@@ -47,7 +47,7 @@
+ # for an available version of Guile.
+ #
+ # By default, this macro will search for the latest stable version of
+-# Guile (e.g. 2.0), falling back to the previous stable version
++# Guile (e.g. 2.2), falling back to the previous stable version
+ # (e.g. 1.8) if it is available. If no guile-@var{VERSION}.pc file is
+ # found, an error is signalled. The found version is stored in
+ # @var{GUILE_EFFECTIVE_VERSION}.
+@@ -61,7 +61,7 @@
+ #
+ AC_DEFUN([GUILE_PKG],
+ [PKG_PROG_PKG_CONFIG
+- _guile_versions_to_search="m4_default([$1], [2.0 1.8])"
++ _guile_versions_to_search="m4_default([$1], [2.2 1.8])"
+ if test -n "$GUILE_EFFECTIVE_VERSION"; then
+ _guile_tmp=""
+ for v in $_guile_versions_to_search; do
+@@ -184,7 +184,7 @@
+ # If @code{guile} is not found, signal an error.
+ #
+ # By default, this macro will search for the latest stable version of
+-# Guile (e.g. 2.0). x.y or x.y.z versions can be specified. If an older
++# Guile (e.g. 2.2). x.y or x.y.z versions can be specified. If an older
+ # version is found, the macro will signal an error.
+ #
+ # The effective version of the found @code{guile} is set to
+@@ -201,7 +201,7 @@
+ [AC_PATH_PROG(GUILE,guile)
+ _guile_required_version="m4_default([$1], [$GUILE_EFFECTIVE_VERSION])"
+ if test -z "$_guile_required_version"; then
+- _guile_required_version=2.0
++ _guile_required_version=2.2
+ fi
+ if test "$GUILE" = "" ; then
+ AC_MSG_ERROR([guile required but not found])
+
diff --git a/development/avr-binutils/avr-binutils.SlackBuild b/development/avr-binutils/avr-binutils.SlackBuild
index 3b31a96b3f..a3b68d60ec 100644
--- a/development/avr-binutils/avr-binutils.SlackBuild
+++ b/development/avr-binutils/avr-binutils.SlackBuild
@@ -9,13 +9,13 @@
# This file is placed in the public domain.
PRGNAM=avr-binutils
-VERSION=${VERSION:-2.25}
+VERSION=${VERSION:-2.31}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -26,8 +26,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -50,10 +50,10 @@ tar xvf $CWD/binutils-$VERSION.tar.bz2
cd binutils-$VERSION
chown -R root:root .
find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
# Apply patch for AVR specific output of 'size' (avr-size)
patch -p0 < $CWD/avr-size.patch
@@ -95,7 +95,7 @@ rm -f $PKG/usr/man/man1/avr-dlltool.1
rm -f $PKG/usr/man/man1/avr-nlmconv.1
rm -f $PKG/usr/man/man1/avr-windres.1
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
find $PKG/usr/man -type f -exec gzip -9 {} \;
diff --git a/development/avr-binutils/avr-binutils.info b/development/avr-binutils/avr-binutils.info
index 6b640d3296..9d5458e879 100644
--- a/development/avr-binutils/avr-binutils.info
+++ b/development/avr-binutils/avr-binutils.info
@@ -1,8 +1,8 @@
PRGNAM="avr-binutils"
-VERSION="2.25"
+VERSION="2.31"
HOMEPAGE="http://www.gnu.org/software/binutils"
-DOWNLOAD="http://ftp.gnu.org/gnu/binutils/binutils-2.25.tar.bz2"
-MD5SUM="d9f3303f802a5b6b0bb73a335ab89d66"
+DOWNLOAD="http://ftp.gnu.org/gnu/binutils/binutils-2.31.tar.bz2"
+MD5SUM="50a489aa6d4b8630b7b89b2de6b185be"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/development/avr-binutils/avr-size.patch b/development/avr-binutils/avr-size.patch
index 2e01c3d31f..b36f3d6d08 100644
--- a/development/avr-binutils/avr-size.patch
+++ b/development/avr-binutils/avr-size.patch
@@ -1,8 +1,10 @@
-AVR specific only
---------------------------------------------------------------------------------
+AVR only; support -C for AVR memory usage
+
+Source: http://git.makehackvoid.com/cgi-bin/gitweb.cgi?p=mhvavrtools.git;a=blob_plain;f=mhvavrtools/patches/binutils-001-avr-size.patch;h=e80d28eae46217551d996a2253256c97d10aa4b5;hb=refs/heads/master
+===========================================================
--- binutils/size.c 2007-08-06 13:56:14.000000000 -0600
+++ binutils/size.c 2007-09-13 09:13:10.281250000 -0600
-@@ -35,10 +35,31 @@
+@@ -36,10 +36,31 @@
#include "getopt.h"
#include "bucomm.h"
@@ -36,7 +38,7 @@ AVR specific only
/* Program options. */
static enum
-@@ -47,9 +68,8 @@ static enum
+@@ -48,9 +69,8 @@ static enum
}
radix = decimal;
@@ -47,7 +49,7 @@ AVR specific only
static int show_version = 0;
static int show_help = 0;
static int show_totals = 0;
-@@ -63,6 +83,157 @@ static bfd_size_type total_textsize;
+@@ -64,6 +84,246 @@ static bfd_size_type total_textsize;
/* Program exit status. */
static int return_code = 0;
@@ -63,12 +65,18 @@ AVR specific only
+#define AVR4K 4096UL
+#define AVR8K 8192UL
+#define AVR16K 16384UL
++#define AVR20K 20480UL
+#define AVR24K 24576UL
+#define AVR32K 32768UL
++#define AVR36K 36864UL
+#define AVR40K 40960UL
+#define AVR64K 65536UL
++#define AVR68K 69632UL
+#define AVR128K 131072UL
++#define AVR136K 139264UL
++#define AVR200K 204800UL
+#define AVR256K 262144UL
++#define AVR264K 270336UL
+
+typedef struct
+{
@@ -80,123 +88,206 @@ AVR specific only
+
+avr_device_t avr[] =
+{
-+ {"atmega2560", AVR256K, AVR8K, AVR4K},
-+ {"atmega2561", AVR256K, AVR8K, AVR4K},
-+
-+ {"at43usb320", AVR128K, 608UL, 0},
-+ {"at90can128", AVR128K, AVR4K, AVR4K},
-+ {"at90usb1286", AVR128K, AVR8K, AVR4K},
-+ {"at90usb1287", AVR128K, AVR8K, AVR4K},
-+ {"atmega128", AVR128K, AVR4K, AVR4K},
-+ {"atmega1280", AVR128K, AVR8K, AVR4K},
-+ {"atmega1281", AVR128K, AVR8K, AVR4K},
-+ {"atmega1284P", AVR128K, AVR16K, AVR4K},
-+ {"atmega103", AVR128K, 4000UL, AVR4K},
-+ {"atxmega128a1",AVR128K, AVR8K, AVR2K},
-+
-+ {"at90can64", AVR64K, AVR4K, AVR2K},
-+ {"at90usb646", AVR64K, AVR4K, AVR2K},
-+ {"at90usb647", AVR64K, AVR4K, AVR2K},
-+ {"atmega64", AVR64K, AVR4K, AVR2K},
-+ {"atmega640", AVR64K, AVR8K, AVR4K},
-+ {"atmega644", AVR64K, AVR4K, AVR2K},
-+ {"atmega644p", AVR64K, AVR4K, AVR2K},
-+ {"atmega645", AVR64K, AVR4K, AVR2K},
-+ {"atmega6450", AVR64K, AVR4K, AVR2K},
-+ {"atmega649", AVR64K, AVR4K, AVR2K},
-+ {"atmega6490", AVR64K, AVR4K, AVR2K},
-+ {"atxmega64a1", AVR64K, AVR4K, AVR2K},
-+
-+ {"atmega406", AVR40K, AVR512, AVR2K},
-+
-+ {"at90can32", AVR32K, AVR2K, AVR1K},
-+ {"at94k", AVR32K, AVR4K, 0},
-+ {"atmega32", AVR32K, AVR2K, AVR1K},
-+ {"atmega323", AVR32K, AVR2K, AVR1K},
-+ {"atmega324p", AVR32K, AVR2K, AVR1K},
-+ {"atmega325", AVR32K, AVR2K, AVR1K},
-+ {"atmega325p", AVR32K, AVR2K, AVR1K},
-+ {"atmega3250", AVR32K, AVR2K, AVR1K},
-+ {"atmega3250p", AVR32K, AVR2K, AVR1K},
-+ {"atmega328p", AVR32K, AVR2K, AVR1K},
-+ {"atmega329", AVR32K, AVR2K, AVR1K},
-+ {"atmega329p", AVR32K, AVR2K, AVR1K},
-+ {"atmega3290", AVR32K, AVR2K, AVR1K},
-+ {"atmega3290p", AVR32K, AVR2K, AVR1K},
-+ {"atmega32hvb", AVR32K, AVR2K, AVR1K},
-+ {"atmega32c1", AVR32K, AVR2K, AVR1K},
-+ {"atmega32m1", AVR32K, AVR2K, AVR1K},
-+ {"atmega32u4", AVR32K, 2560UL, AVR1K},
-+
-+ {"at43usb355", AVR24K, 1120, 0},
-+
-+ {"at76c711", AVR16K, AVR2K, 0},
-+ {"at90pwm216", AVR16K, AVR1K, AVR512},
-+ {"at90pwm316", AVR16K, AVR1K, AVR512},
-+ {"at90usb162", AVR16K, AVR512, AVR512},
-+ {"atmega16", AVR16K, AVR1K, AVR512},
-+ {"atmega161", AVR16K, AVR1K, AVR512},
-+ {"atmega162", AVR16K, AVR1K, AVR512},
-+ {"atmega163", AVR16K, AVR1K, AVR512},
-+ {"atmega164", AVR16K, AVR1K, AVR512},
-+ {"atmega164p", AVR16K, AVR1K, AVR512},
-+ {"atmega165", AVR16K, AVR1K, AVR512},
-+ {"atmega165p", AVR16K, AVR1K, AVR512},
-+ {"atmega168", AVR16K, AVR1K, AVR512},
-+ {"atmega168p", AVR16K, AVR1K, AVR512},
-+ {"atmega169", AVR16K, AVR1K, AVR512},
-+ {"atmega169p", AVR16K, AVR1K, AVR512},
-+ {"attiny167", AVR16K, AVR512, AVR512},
-+ {"atxmega16d4", AVR16K, AVR2K, AVR1K},
-+
-+ {"at90c8534", AVR8K, 352, AVR512},
-+ {"at90pwm1", AVR8K, AVR512, AVR512},
-+ {"at90pwm2", AVR8K, AVR512, AVR512},
-+ {"at90pwm2b", AVR8K, AVR512, AVR512},
-+ {"at90pwm3", AVR8K, AVR512, AVR512},
-+ {"at90pwm3b", AVR8K, AVR512, AVR512},
-+ {"at90s8515", AVR8K, AVR512, AVR512},
-+ {"at90s8535", AVR8K, AVR512, AVR512},
-+ {"at90usb82", AVR8K, AVR512, AVR512},
-+ {"atmega8", AVR8K, AVR1K, AVR512},
-+ {"atmega8515", AVR8K, AVR512, AVR512},
-+ {"atmega8535", AVR8K, AVR512, AVR512},
-+ {"atmega88", AVR8K, AVR1K, AVR512},
-+ {"atmega88p", AVR8K, AVR1K, AVR512},
-+ {"attiny84", AVR8K, AVR512, AVR512},
-+ {"attiny85", AVR8K, AVR512, AVR512},
-+ {"attiny861", AVR8K, AVR512, AVR512},
-+ {"attiny88", AVR8K, AVR256, AVR64},
-+
-+ {"at90s4414", AVR4K, 352, AVR256},
-+ {"at90s4433", AVR4K, AVR128, AVR256},
-+ {"at90s4434", AVR4K, 352, AVR256},
-+ {"atmega48", AVR4K, AVR512, AVR256},
-+ {"atmega48p", AVR4K, AVR512, AVR256},
-+ {"attiny43u", AVR4K, AVR256, AVR64},
-+ {"attiny44", AVR4K, AVR256, AVR256},
-+ {"attiny45", AVR4K, AVR256, AVR256},
-+ {"attiny461", AVR4K, AVR256, AVR256},
-+ {"attiny48", AVR4K, AVR256, AVR64},
-+
-+ {"at86rf401", AVR2K, 224, AVR128},
-+ {"at90s2313", AVR2K, AVR128, AVR128},
-+ {"at90s2323", AVR2K, AVR128, AVR128},
-+ {"at90s2333", AVR2K, 224, AVR128},
-+ {"at90s2343", AVR2K, AVR128, AVR128},
-+ {"attiny22", AVR2K, 224, AVR128},
-+ {"attiny2313", AVR2K, AVR128, AVR128},
-+ {"attiny24", AVR2K, AVR128, AVR128},
-+ {"attiny25", AVR2K, AVR128, AVR128},
-+ {"attiny26", AVR2K, AVR128, AVR128},
-+ {"attiny261", AVR2K, AVR128, AVR128},
-+ {"attiny28", AVR2K, 0, 0},
-+
-+ {"at90s1200", AVR1K, 0, AVR64},
-+ {"attiny11", AVR1K, 0, AVR64},
-+ {"attiny12", AVR1K, 0, AVR64},
-+ {"attiny13", AVR1K, AVR64, AVR64},
-+ {"attiny15", AVR1K, 0, AVR64},
++ {"atxmega256a3", AVR264K, AVR16K, AVR4K},
++ {"atxmega256a3b", AVR264K, AVR16K, AVR4K},
++ {"atxmega256d3", AVR264K, AVR16K, AVR4K},
++
++ {"atmega2560", AVR256K, AVR8K, AVR4K},
++ {"atmega2561", AVR256K, AVR8K, AVR4K},
++
++ {"atxmega192a3", AVR200K, AVR16K, AVR2K},
++ {"atxmega192d3", AVR200K, AVR16K, AVR2K},
++
++ {"atxmega128a1", AVR136K, AVR8K, AVR2K},
++ {"atxmega128a1u", AVR136K, AVR8K, AVR2K},
++ {"atxmega128a3", AVR136K, AVR8K, AVR2K},
++ {"atxmega128d3", AVR136K, AVR8K, AVR2K},
++
++ {"at43usb320", AVR128K, 608UL, 0UL},
++ {"at90can128", AVR128K, AVR4K, AVR4K},
++ {"at90usb1286", AVR128K, AVR8K, AVR4K},
++ {"at90usb1287", AVR128K, AVR8K, AVR4K},
++ {"atmega128", AVR128K, AVR4K, AVR4K},
++ {"atmega1280", AVR128K, AVR8K, AVR4K},
++ {"atmega1281", AVR128K, AVR8K, AVR4K},
++ {"atmega1284p", AVR128K, AVR16K, AVR4K},
++ {"atmega128rfa1", AVR128K, AVR16K, AVR4K},
++ {"atmega103", AVR128K, 4000UL, AVR4K},
++
++ {"atxmega64a1", AVR68K, AVR4K, AVR2K},
++ {"atxmega64a1u", AVR68K, AVR4K, AVR2K},
++ {"atxmega64a3", AVR68K, AVR4K, AVR2K},
++ {"atxmega64d3", AVR68K, AVR4K, AVR2K},
++
++ {"at90can64", AVR64K, AVR4K, AVR2K},
++ {"at90scr100", AVR64K, AVR4K, AVR2K},
++ {"at90usb646", AVR64K, AVR4K, AVR2K},
++ {"at90usb647", AVR64K, AVR4K, AVR2K},
++ {"atmega64", AVR64K, AVR4K, AVR2K},
++ {"atmega640", AVR64K, AVR8K, AVR4K},
++ {"atmega644", AVR64K, AVR4K, AVR2K},
++ {"atmega644a", AVR64K, AVR4K, AVR2K},
++ {"atmega644p", AVR64K, AVR4K, AVR2K},
++ {"atmega644pa", AVR64K, AVR4K, AVR2K},
++ {"atmega645", AVR64K, AVR4K, AVR2K},
++ {"atmega645a", AVR64K, AVR4K, AVR2K},
++ {"atmega645p", AVR64K, AVR4K, AVR2K},
++ {"atmega6450", AVR64K, AVR4K, AVR2K},
++ {"atmega6450a", AVR64K, AVR4K, AVR2K},
++ {"atmega6450p", AVR64K, AVR4K, AVR2K},
++ {"atmega649", AVR64K, AVR4K, AVR2K},
++ {"atmega649a", AVR64K, AVR4K, AVR2K},
++ {"atmega649p", AVR64K, AVR4K, AVR2K},
++ {"atmega6490", AVR64K, AVR4K, AVR2K},
++ {"atmega6490a", AVR64K, AVR4K, AVR2K},
++ {"atmega6490p", AVR64K, AVR4K, AVR2K},
++ {"atmega64c1", AVR64K, AVR4K, AVR2K},
++ {"atmega64hve", AVR64K, AVR4K, AVR1K},
++ {"atmega64m1", AVR64K, AVR4K, AVR2K},
++ {"m3000", AVR64K, AVR4K, 0UL},
++
++ {"atmega406", AVR40K, AVR2K, AVR512},
++
++ {"atxmega32a4", AVR36K, AVR4K, AVR1K},
++ {"atxmega32d4", AVR36K, AVR4K, AVR1K},
++
++ {"at90can32", AVR32K, AVR2K, AVR1K},
++ {"at94k", AVR32K, AVR4K, 0UL},
++ {"atmega32", AVR32K, AVR2K, AVR1K},
++ {"atmega323", AVR32K, AVR2K, AVR1K},
++ {"atmega324a", AVR32K, AVR2K, AVR1K},
++ {"atmega324p", AVR32K, AVR2K, AVR1K},
++ {"atmega324pa", AVR32K, AVR2K, AVR1K},
++ {"atmega325", AVR32K, AVR2K, AVR1K},
++ {"atmega325a", AVR32K, AVR2K, AVR1K},
++ {"atmega325p", AVR32K, AVR2K, AVR1K},
++ {"atmega3250", AVR32K, AVR2K, AVR1K},
++ {"atmega3250a", AVR32K, AVR2K, AVR1K},
++ {"atmega3250p", AVR32K, AVR2K, AVR1K},
++ {"atmega328", AVR32K, AVR2K, AVR1K},
++ {"atmega328p", AVR32K, AVR2K, AVR1K},
++ {"atmega329", AVR32K, AVR2K, AVR1K},
++ {"atmega329a", AVR32K, AVR2K, AVR1K},
++ {"atmega329p", AVR32K, AVR2K, AVR1K},
++ {"atmega329pa", AVR32K, AVR2K, AVR1K},
++ {"atmega3290", AVR32K, AVR2K, AVR1K},
++ {"atmega3290a", AVR32K, AVR2K, AVR1K},
++ {"atmega3290p", AVR32K, AVR2K, AVR1K},
++ {"atmega32hvb", AVR32K, AVR2K, AVR1K},
++ {"atmega32c1", AVR32K, AVR2K, AVR1K},
++ {"atmega32hvb", AVR32K, AVR2K, AVR1K},
++ {"atmega32m1", AVR32K, AVR2K, AVR1K},
++ {"atmega32u2", AVR32K, AVR1K, AVR1K},
++ {"atmega32u4", AVR32K, 2560UL, AVR1K},
++ {"atmega32u6", AVR32K, 2560UL, AVR1K},
++
++ {"at43usb355", AVR24K, 1120UL, 0UL},
++
++ {"atxmega16a4", AVR20K, AVR2K, AVR1K},
++ {"atxmega16d4", AVR20K, AVR2K, AVR1K},
++
++ {"at76c711", AVR16K, AVR2K, 0UL},
++ {"at90pwm216", AVR16K, AVR1K, AVR512},
++ {"at90pwm316", AVR16K, AVR1K, AVR512},
++ {"at90usb162", AVR16K, AVR512, AVR512},
++ {"atmega16", AVR16K, AVR1K, AVR512},
++ {"atmega16a", AVR16K, AVR1K, AVR512},
++ {"atmega161", AVR16K, AVR1K, AVR512},
++ {"atmega162", AVR16K, AVR1K, AVR512},
++ {"atmega163", AVR16K, AVR1K, AVR512},
++ {"atmega164", AVR16K, AVR1K, AVR512},
++ {"atmega164a", AVR16K, AVR1K, AVR512},
++ {"atmega164p", AVR16K, AVR1K, AVR512},
++ {"atmega165a", AVR16K, AVR1K, AVR512},
++ {"atmega165", AVR16K, AVR1K, AVR512},
++ {"atmega165p", AVR16K, AVR1K, AVR512},
++ {"atmega168", AVR16K, AVR1K, AVR512},
++ {"atmega168a", AVR16K, AVR1K, AVR512},
++ {"atmega168p", AVR16K, AVR1K, AVR512},
++ {"atmega169", AVR16K, AVR1K, AVR512},
++ {"atmega169a", AVR16K, AVR1K, AVR512},
++ {"atmega169p", AVR16K, AVR1K, AVR512},
++ {"atmega169pa", AVR16K, AVR1K, AVR512},
++ {"atmega16hva", AVR16K, 768UL, AVR256},
++ {"atmega16hva2", AVR16K, AVR1K, AVR256},
++ {"atmega16hvb", AVR16K, AVR1K, AVR512},
++ {"atmega16m1", AVR16K, AVR1K, AVR512},
++ {"atmega16u2", AVR16K, AVR512, AVR512},
++ {"atmega16u4", AVR16K, 1280UL, AVR512},
++ {"attiny167", AVR16K, AVR512, AVR512},
++
++ {"at90c8534", AVR8K, 352UL, AVR512},
++ {"at90pwm1", AVR8K, AVR512, AVR512},
++ {"at90pwm2", AVR8K, AVR512, AVR512},
++ {"at90pwm2b", AVR8K, AVR512, AVR512},
++ {"at90pwm3", AVR8K, AVR512, AVR512},
++ {"at90pwm3b", AVR8K, AVR512, AVR512},
++ {"at90pwm81", AVR8K, AVR256, AVR512},
++ {"at90s8515", AVR8K, AVR512, AVR512},
++ {"at90s8535", AVR8K, AVR512, AVR512},
++ {"at90usb82", AVR8K, AVR512, AVR512},
++ {"ata6289", AVR8K, AVR512, 320UL},
++ {"atmega8", AVR8K, AVR1K, AVR512},
++ {"atmega8515", AVR8K, AVR512, AVR512},
++ {"atmega8535", AVR8K, AVR512, AVR512},
++ {"atmega88", AVR8K, AVR1K, AVR512},
++ {"atmega88a", AVR8K, AVR1K, AVR512},
++ {"atmega88p", AVR8K, AVR1K, AVR512},
++ {"atmega88pa", AVR8K, AVR1K, AVR512},
++ {"atmega8hva", AVR8K, 768UL, AVR256},
++ {"atmega8u2", AVR8K, AVR512, AVR512},
++ {"attiny84", AVR8K, AVR512, AVR512},
++ {"attiny84a", AVR8K, AVR512, AVR512},
++ {"attiny85", AVR8K, AVR512, AVR512},
++ {"attiny861", AVR8K, AVR512, AVR512},
++ {"attiny861a", AVR8K, AVR512, AVR512},
++ {"attiny87", AVR8K, AVR512, AVR512},
++ {"attiny88", AVR8K, AVR512, AVR64},
++
++ {"at90s4414", AVR4K, 352UL, AVR256},
++ {"at90s4433", AVR4K, AVR128, AVR256},
++ {"at90s4434", AVR4K, 352UL, AVR256},
++ {"atmega48", AVR4K, AVR512, AVR256},
++ {"atmega48a", AVR4K, AVR512, AVR256},
++ {"atmega48p", AVR4K, AVR512, AVR256},
++ {"attiny4313", AVR4K, AVR256, AVR256},
++ {"attiny43u", AVR4K, AVR256, AVR64},
++ {"attiny44", AVR4K, AVR256, AVR256},
++ {"attiny44a", AVR4K, AVR256, AVR256},
++ {"attiny45", AVR4K, AVR256, AVR256},
++ {"attiny461", AVR4K, AVR256, AVR256},
++ {"attiny461a", AVR4K, AVR256, AVR256},
++ {"attiny48", AVR4K, AVR256, AVR64},
++
++ {"at86rf401", AVR2K, 224UL, AVR128},
++ {"at90s2313", AVR2K, AVR128, AVR128},
++ {"at90s2323", AVR2K, AVR128, AVR128},
++ {"at90s2333", AVR2K, 224UL, AVR128},
++ {"at90s2343", AVR2K, AVR128, AVR128},
++ {"attiny20", AVR2K, AVR128, 0UL},
++ {"attiny22", AVR2K, 224UL, AVR128},
++ {"attiny2313", AVR2K, AVR128, AVR128},
++ {"attiny2313a", AVR2K, AVR128, AVR128},
++ {"attiny24", AVR2K, AVR128, AVR128},
++ {"attiny24a", AVR2K, AVR128, AVR128},
++ {"attiny25", AVR2K, AVR128, AVR128},
++ {"attiny26", AVR2K, AVR128, AVR128},
++ {"attiny261", AVR2K, AVR128, AVR128},
++ {"attiny261a", AVR2K, AVR128, AVR128},
++ {"attiny28", AVR2K, 0UL, 0UL},
++ {"attiny40", AVR2K, AVR256, 0UL},
++
++ {"at90s1200", AVR1K, 0UL, AVR64},
++ {"attiny9", AVR1K, 32UL, 0UL},
++ {"attiny10", AVR1K, 32UL, 0UL},
++ {"attiny11", AVR1K, 0UL, AVR64},
++ {"attiny12", AVR1K, 0UL, AVR64},
++ {"attiny13", AVR1K, AVR64, AVR64},
++ {"attiny13a", AVR1K, AVR64, AVR64},
++ {"attiny15", AVR1K, 0UL, AVR64},
++
++ {"attiny4", AVR512, 32UL, 0UL},
++ {"attiny5", AVR512, 32UL, 0UL},
+};
+
+static char *avrmcu = NULL;
@@ -205,7 +296,7 @@ AVR specific only
static char *target = NULL;
/* Forward declarations. */
-@@ -78,7 +240,8 @@ usage (FILE *stream, int status)
+@@ -79,7 +337,8 @@ usage (FILE *stream, int status)
fprintf (stream, _(" Displays the sizes of sections inside binary files\n"));
fprintf (stream, _(" If no input file(s) are specified, a.out is assumed\n"));
fprintf (stream, _(" The options are:\n\
@@ -215,7 +306,7 @@ AVR specific only
-o|-d|-x --radix={8|10|16} Display numbers in octal, decimal or hex\n\
-t --totals Display the total sizes (Berkeley only)\n\
--common Display total size for *COM* syms\n\
-@@ -87,11 +250,7 @@ usage (FILE *stream, int status)
+@@ -88,11 +337,7 @@ usage (FILE *stream, int status)
-h --help Display this information\n\
-v --version Display the program's version\n\
\n"),
@@ -228,7 +319,7 @@ AVR specific only
);
list_supported_targets (program_name, stream);
if (REPORT_BUGS_TO[0] && status == 0)
-@@ -102,6 +261,7 @@ usage (FILE *stream, int status)
+@@ -103,6 +359,7 @@ usage (FILE *stream, int status)
#define OPTION_FORMAT (200)
#define OPTION_RADIX (OPTION_FORMAT + 1)
#define OPTION_TARGET (OPTION_RADIX + 1)
@@ -236,7 +327,7 @@ AVR specific only
static struct option long_options[] =
{
-@@ -109,6 +269,7 @@ static struct option long_options[] =
+@@ -110,6 +368,7 @@ static struct option long_options[] =
{"format", required_argument, 0, OPTION_FORMAT},
{"radix", required_argument, 0, OPTION_RADIX},
{"target", required_argument, 0, OPTION_TARGET},
@@ -244,7 +335,7 @@ AVR specific only
{"totals", no_argument, &show_totals, 1},
{"version", no_argument, &show_version, 1},
{"help", no_argument, &show_help, 1},
-@@ -140,7 +301,7 @@ main (int argc, char **argv)
+@@ -141,7 +399,7 @@ main (int argc, char **argv)
bfd_init ();
set_default_bfd_target ();
@@ -253,7 +344,7 @@ AVR specific only
(int *) 0)) != EOF)
switch (c)
{
-@@ -149,11 +310,15 @@ main (int argc, char **argv)
+@@ -150,11 +409,15 @@ main (int argc, char **argv)
{
case 'B':
case 'b':
@@ -271,7 +362,7 @@ AVR specific only
break;
default:
non_fatal (_("invalid argument to --format: %s"), optarg);
-@@ -161,6 +326,10 @@ main (int argc, char **argv)
+@@ -162,6 +424,10 @@ main (int argc, char **argv)
}
break;
@@ -282,7 +373,7 @@ AVR specific only
case OPTION_TARGET:
target = optarg;
break;
-@@ -189,11 +358,14 @@ main (int argc, char **argv)
+@@ -190,11 +457,14 @@ main (int argc, char **argv)
break;
case 'A':
@@ -299,7 +390,7 @@ AVR specific only
case 'v':
case 'V':
show_version = 1;
-@@ -239,7 +411,7 @@ main (int argc, char **argv)
+@@ -240,7 +509,7 @@ main (int argc, char **argv)
for (; optind < argc;)
display_file (argv[optind++]);
@@ -308,7 +399,7 @@ AVR specific only
{
bfd_size_type total = total_textsize + total_datasize + total_bsssize;
-@@ -600,13 +772,117 @@ print_sysv_format (bfd *file)
+@@ -599,13 +869,117 @@ print_sysv_format (bfd *file)
printf ("\n\n");
}
@@ -341,12 +432,12 @@ AVR specific only
+ int rammax = 0;
+ int eeprommax = 0;
+ asection *section;
-+ bfd_size_type data_size = 0;
-+ bfd_size_type text_size = 0;
-+ bfd_size_type bss_size = 0;
-+ bfd_size_type bootloader_size = 0;
-+ bfd_size_type noinit_size = 0;
-+ bfd_size_type eeprom_size = 0;
++ bfd_size_type my_datasize = 0;
++ bfd_size_type my_textsize = 0;
++ bfd_size_type my_bsssize = 0;
++ bfd_size_type bootloadersize = 0;
++ bfd_size_type noinitsize = 0;
++ bfd_size_type eepromsize = 0;
+
+ avr_device_t *avrdevice = avr_find_device();
+ if (avrdevice != NULL)
@@ -358,21 +449,21 @@ AVR specific only
+ }
+
+ if ((section = bfd_get_section_by_name (file, ".data")) != NULL)
-+ data_size = bfd_section_size (file, section);
++ my_datasize = bfd_section_size (file, section);
+ if ((section = bfd_get_section_by_name (file, ".text")) != NULL)
-+ text_size = bfd_section_size (file, section);
++ my_textsize = bfd_section_size (file, section);
+ if ((section = bfd_get_section_by_name (file, ".bss")) != NULL)
-+ bss_size = bfd_section_size (file, section);
++ my_bsssize = bfd_section_size (file, section);
+ if ((section = bfd_get_section_by_name (file, ".bootloader")) != NULL)
-+ bootloader_size = bfd_section_size (file, section);
++ bootloadersize = bfd_section_size (file, section);
+ if ((section = bfd_get_section_by_name (file, ".noinit")) != NULL)
-+ noinit_size = bfd_section_size (file, section);
++ noinitsize = bfd_section_size (file, section);
+ if ((section = bfd_get_section_by_name (file, ".eeprom")) != NULL)
-+ eeprom_size = bfd_section_size (file, section);
++ eepromsize = bfd_section_size (file, section);
+
-+ bfd_size_type text = text_size + data_size + bootloader_size;
-+ bfd_size_type data = data_size + bss_size + noinit_size;
-+ bfd_size_type eeprom = eeprom_size;
++ bfd_size_type text = my_textsize + my_datasize + bootloadersize;
++ bfd_size_type data = my_datasize + my_bsssize + noinitsize;
++ bfd_size_type eeprom = eepromsize;
+
+ printf ("AVR Memory Usage\n"
+ "----------------\n"
diff --git a/development/avr-gcc/avr-gcc.SlackBuild b/development/avr-gcc/avr-gcc.SlackBuild
index a91986fe8c..ba8b2d314f 100644
--- a/development/avr-gcc/avr-gcc.SlackBuild
+++ b/development/avr-gcc/avr-gcc.SlackBuild
@@ -8,13 +8,14 @@
# This file is placed in the public domain.
PRGNAM=avr-gcc
-VERSION=${VERSION:-4.9.2}
+VERSION=${VERSION:-8.2.0}
+ISLVERSION=${ISLVERSION:-0.19}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -25,8 +26,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -42,21 +43,25 @@ fi
set -e
rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf gcc-$VERSION avr-gcc-build-$VERSION
-tar xvf $CWD/gcc-$VERSION.tar.bz2 || exit 1
-mkdir avr-gcc-build-$VERSION
-cd avr-gcc-build-$VERSION || exit 1
-chown -R root:root .
+mkdir -p $TMP/$PRGNAM $PKG $OUTPUT
+cd $TMP/$PRGNAM
+rm -rf $TMP/$PRGNAM/*
+tar xvf $CWD/gcc-$VERSION.tar.xz
+tar xvf $CWD/isl-$ISLVERSION.tar.bz2
find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+cd gcc-$VERSION
+ln -s ../isl-$ISLVERSION isl
+
+mkdir ../avr-gcc-build-$VERSION
+cd ../avr-gcc-build-$VERSION
+
+export CFLAGS_FOR_TARGET="$SLKCFLAGS"
+export CXXFLAGS_FOR_TARGET="$SLKCFLAGS"
-CFLAGS_FOR_BUILD="$SLKCFLAGS" \
-CXXFLAGS_FOR_BUILD="$SLKCFLAGS" \
../gcc-$VERSION/configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
@@ -71,11 +76,12 @@ CXXFLAGS_FOR_BUILD="$SLKCFLAGS" \
--disable-linker-build-id \
--disable-nls \
--disable-werror \
- --enable-__cxa_atexit \
+ --disable-__cxa_atexit \
--enable-checking=release \
--enable-clocale=gnu \
--enable-cloog-backend=isl \
--enable-gnu-unique-object \
+ --enable-gnu-indirect-function \
--enable-gold \
--enable-languages=c,c++ \
--enable-ld=default \
@@ -90,22 +96,24 @@ CXXFLAGS_FOR_BUILD="$SLKCFLAGS" \
--with-plugin-ld=ld.gold \
--with-system-zlib \
--with-dwarf2 \
+ --with-isl \
--program-prefix="avr-" \
--program-suffix="" \
--build=$ARCH-slackware-linux
make || exit 1
-make install DESTDIR=$PKG || exit 1
+make -j1 install DESTDIR=$PKG || exit 1
# Remove useless stuff
rm -rf $PKG/usr/lib${LIBDIRSUFFIX}/libiberty.a
+rm -rf $PKG/usr/lib${LIBDIRSUFFIX}/libcc1.*
rm -rf $PKG/usr/info
rm -rf $PKG/usr/include
rm -rf $PKG/usr/share
rm -rf $PKG/usr/man/man7
rm -rf $PKG/usr/libexec/gcc/avr/$VERSION/install-tools
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
find $PKG/usr/man -type f -exec gzip -9 {} \;
diff --git a/development/avr-gcc/avr-gcc.info b/development/avr-gcc/avr-gcc.info
index 6bd3a9b64d..a57c77698b 100644
--- a/development/avr-gcc/avr-gcc.info
+++ b/development/avr-gcc/avr-gcc.info
@@ -1,8 +1,10 @@
PRGNAM="avr-gcc"
-VERSION="4.9.2"
+VERSION="8.2.0"
HOMEPAGE="http://www.gnu.org/software/gcc/"
-DOWNLOAD="ftp://ftp.gnu.org/pub/gnu/gcc/gcc-4.9.2/gcc-4.9.2.tar.bz2"
-MD5SUM="4df8ee253b7f3863ad0b86359cd39c43"
+DOWNLOAD="ftp://ftp.gnu.org/pub/gnu/gcc/gcc-8.2.0/gcc-8.2.0.tar.xz \
+ http://isl.gforge.inria.fr/isl-0.19.tar.bz2"
+MD5SUM="4ab282f414676496483b3e1793d07862 \
+ 7850d46a96e5ea31e34913190895e154"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="avr-binutils"
diff --git a/development/docutils/README b/development/docutils/README
deleted file mode 100644
index 1160a389f0..0000000000
--- a/development/docutils/README
+++ /dev/null
@@ -1,6 +0,0 @@
-Docutils (Python Documentation Utilities)
-
-Docutils is a modular system for processing documentation into useful
-formats, such as HTML, XML, and LaTeX. For input Docutils supports
-reStructuredText, an easy-to-read, what-you-see-is-what-you-get plaintext
-markup syntax.
diff --git a/development/docutils/docutils.SlackBuild b/development/docutils/docutils.SlackBuild
deleted file mode 100644
index ffbf286185..0000000000
--- a/development/docutils/docutils.SlackBuild
+++ /dev/null
@@ -1,71 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for docutils
-
-# Copyright 2006-2018 Robby Workman Tuscaloosa, AL, 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.
-
-PRGNAM=docutils
-VERSION=${VERSION:-0.14}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
-
-python setup.py install --root=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | \
- grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a *.txt PKG-INFO $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/development/docutils/docutils.info b/development/docutils/docutils.info
deleted file mode 100644
index 04448db78e..0000000000
--- a/development/docutils/docutils.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="docutils"
-VERSION="0.14"
-HOMEPAGE="http://docutils.sourceforge.net"
-DOWNLOAD="http://downloads.sourceforge.net/docutils/docutils-0.14.tar.gz"
-MD5SUM="c53768d63db3873b7d452833553469de"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Robby Workman"
-EMAIL="rworkman@slackbuilds.org"
diff --git a/development/docutils/slack-desc b/development/docutils/slack-desc
deleted file mode 100644
index 06dc8a4d0d..0000000000
--- a/development/docutils/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-docutils: docutils (Python Document Utilities module)
-docutils:
-docutils: Docutils is an open-source text processing system for processing
-docutils: plaintext documentation into useful formats, such as HTML or LaTeX.
-docutils: It includes reStructuredText, the easy to read, easy to use,
-docutils: what-you-see-is-what-you-get plaintext markup language.
-docutils:
-docutils: Homepage: http://docutils.sourceforge.net/
-docutils:
-docutils:
-docutils:
diff --git a/development/freetds/freetds.SlackBuild b/development/freetds/freetds.SlackBuild
index 826125272e..64317e53d1 100644
--- a/development/freetds/freetds.SlackBuild
+++ b/development/freetds/freetds.SlackBuild
@@ -23,7 +23,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=freetds
-VERSION=${VERSION:-1.00.9}
+VERSION=${VERSION:-1.00.99}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
diff --git a/development/freetds/freetds.info b/development/freetds/freetds.info
index 530fdb3b51..81e2313fd5 100644
--- a/development/freetds/freetds.info
+++ b/development/freetds/freetds.info
@@ -1,8 +1,8 @@
PRGNAM="freetds"
-VERSION="1.00.9"
+VERSION="1.00.99"
HOMEPAGE="http://www.freetds.org/"
-DOWNLOAD="ftp://ftp.freetds.org/pub/freetds/stable/freetds-1.00.9.tar.gz"
-MD5SUM="9f3518c9763f195eca119e4ee504be8d"
+DOWNLOAD="ftp://ftp.freetds.org/pub/freetds/stable/freetds-1.00.99.tar.gz"
+MD5SUM="32777effeb8e45daa5890ef5ad636230"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/development/gcc5/README b/development/gcc5/README
new file mode 100644
index 0000000000..043d62efcf
--- /dev/null
+++ b/development/gcc5/README
@@ -0,0 +1,46 @@
+This gcc5 package can be installed alongside Slackware's gcc-7 packages.
+These version 7 compilers can sometimes be quite a bit more strict about
+what they accept as valid code. As a consequence, you will regularly run
+into compilation issues with software. Not just the software made with
+the scripts on slackbuilds.org, but also some of the software in
+the Slackware core distribution requires patches in order to get them
+to compile.
+
+Still having the gcc version 5 compilers can sometimes be a lifesaver.
+Particulars of the gcc5 package:
+- The gcc5 binaries were given a suffix '-5' to make them stand apart
+ from Slackware's default compilers.
+- The gcc5 package only contains the C, C++ and Java language compilers.
+- One all-encompassing package is built by the SlackBuild script.
+- Profile scripts are added to /etc/profile.d/. You can 'source'
+ the profile script to prefer the gcc-5 compilers over gcc-7.
+- On 64bit Slackware, the gcc5.SlackBuild will detect an existing gcc
+ multilib compiler and will then build a multilib capable gcc5.
+ If you run pure 64bit Slackware, then a pure 64bit gcc5 package is built.
+
+How to use these gcc5 compilers instead of Slackware's default C and C++?
+Simple:
+In your console or terminal, you 'source' the provided profile script,
+like this (a c-shell compatible script is available as well):
+
+ source /etc/profile.d/gcc5.sh
+
+The command 'source' is equivalent to the dot command ' . '.
+The profile script will (re-)define the common variables that are used
+by make and other programs to determine which binary to run as the compiler:
+
+export CC=gcc-5
+export CPP=cpp-5
+export CXX=g++-5
+export AR=gcc-ar-5
+export NM=gcc-nm-5
+export RANLIB=gcc-ranlib-5
+
+Nothing else needs to be done after sourcing the profile script.
+All you do next is run your compile job as usual in that same console.
+Your program will be compiled with the binaries provided by the gcc5 package.
+
+** WARNING:
+** The temporary build location used by the script (defaulting here to /tmp/SBo)
+** should *NOT* be a directory path a non-root user could create later...
+
diff --git a/development/gcc5/c89.sh b/development/gcc5/c89.sh
new file mode 100644
index 0000000000..424b1e1669
--- /dev/null
+++ b/development/gcc5/c89.sh
@@ -0,0 +1,11 @@
+#!/bin/sh
+fl="-std=c89"
+CC=${CC:-"gcc"}
+for opt; do
+ case "$opt" in
+ -ansi|-std=c89|-std=iso9899:1990) fl="";;
+ -std=*) echo "`basename $0` called with non ANSI/ISO C option $opt" >&2
+ exit 1;;
+ esac
+done
+exec $CC $fl ${1+"$@"}
diff --git a/development/gcc5/c99.sh b/development/gcc5/c99.sh
new file mode 100644
index 0000000000..c33636937c
--- /dev/null
+++ b/development/gcc5/c99.sh
@@ -0,0 +1,11 @@
+#!/bin/sh
+fl="-std=c99"
+CC=${CC:-"gcc"}
+for opt; do
+ case "$opt" in
+ -std=c99|-std=iso9899:1999) fl="";;
+ -std=*) echo "`basename $0` called with non ISO C99 option $opt" >&2
+ exit 1;;
+ esac
+done
+exec $CC $fl ${1+"$@"}
diff --git a/development/gcc5/ecj.sh b/development/gcc5/ecj.sh
new file mode 100644
index 0000000000..1d8b797931
--- /dev/null
+++ b/development/gcc5/ecj.sh
@@ -0,0 +1,5 @@
+#!/bin/sh
+
+CLASSPATH=@JAVADIR@/ecj.jar${CLASSPATH:+:}$CLASSPATH \
+ java org.eclipse.jdt.internal.compiler.batch.Main "$@"
+
diff --git a/development/gcc5/fastjar-patches/1000-fastjar-0.97-segfault.patch b/development/gcc5/fastjar-patches/1000-fastjar-0.97-segfault.patch
new file mode 100644
index 0000000000..ab6262407a
--- /dev/null
+++ b/development/gcc5/fastjar-patches/1000-fastjar-0.97-segfault.patch
@@ -0,0 +1,29 @@
+2009-01-14 Jakub Jelinek <jakub@redhat.com>
+
+ * jartool.c (make_manifest): Initialize current_time before
+ calling unix2dostime on it.
+
+--- fastjar-0.97/jartool.c.jj 2008-10-15 18:35:37.000000000 +0200
++++ fastjar-0.97/jartool.c 2009-01-14 15:40:50.000000000 +0100
+@@ -820,6 +820,10 @@ int make_manifest(int jfd, const char *m
+ int mod_time; /* file modification time */
+ struct zipentry *ze;
+
++ current_time = time(NULL);
++ if(current_time == (time_t)-1)
++ exit_on_error("time");
++
+ mod_time = unix2dostime(&current_time);
+
+ /* If we are creating a new manifest, create a META-INF directory entry */
+@@ -828,10 +832,6 @@ int make_manifest(int jfd, const char *m
+
+ memset((file_header + 12), '\0', 16); /*clear mod time, crc, size fields*/
+
+- current_time = time(NULL);
+- if(current_time == (time_t)-1)
+- exit_on_error("time");
+-
+ PACK_UB2(file_header, LOC_EXTRA, 0);
+ PACK_UB2(file_header, LOC_COMP, 0);
+ PACK_UB2(file_header, LOC_FNLEN, nlen);
diff --git a/development/gcc5/fastjar-patches/1001-fastjar-0.97-len1.patch b/development/gcc5/fastjar-patches/1001-fastjar-0.97-len1.patch
new file mode 100644
index 0000000000..722351d334
--- /dev/null
+++ b/development/gcc5/fastjar-patches/1001-fastjar-0.97-len1.patch
@@ -0,0 +1,16 @@
+2009-12-21 Chris Ball <cjb@laptop.org>
+
+ * jartool.c (add_file_to_jar): Test write return value against -1
+ instead of 1.
+
+--- fastjar-0.97/jartool.c.jj 2008-10-15 12:35:37.000000000 -0400
++++ fastjar-0.97/jartool.c 2009-12-22 06:48:09.309530000 -0500
+@@ -1257,7 +1257,7 @@ int add_file_to_jar(int jfd, int ffd, co
+ exit_on_error("write");
+
+ /* write the file name to the zip file */
+- if (1 == write(jfd, fname, file_name_length))
++ if (-1 == write(jfd, fname, file_name_length))
+ exit_on_error("write");
+
+ if(verbose){
diff --git a/development/gcc5/fastjar-patches/1002-fastjar-0.97-filename0.patch b/development/gcc5/fastjar-patches/1002-fastjar-0.97-filename0.patch
new file mode 100644
index 0000000000..34a02a74f3
--- /dev/null
+++ b/development/gcc5/fastjar-patches/1002-fastjar-0.97-filename0.patch
@@ -0,0 +1,14 @@
+2010-03-01 Richard Guenther <rguenther@suse.de>
+
+ * jartool.c (read_entries): Properly zero-terminate filename.
+
+--- fastjar-0.97/jartool.c 6 Sep 2009 22:16:00 -0000 1.59
++++ fastjar-0.97/jartool.c 1 Mar 2010 15:38:43 -0000 1.60
+@@ -790,6 +790,7 @@ int read_entries (int fd)
+ progname, jarfile);
+ return 1;
+ }
++ ze->filename[len] = '\0';
+ len = UNPACK_UB4(header, CEN_EFLEN);
+ len += UNPACK_UB4(header, CEN_COMLEN);
+ if (lseek (fd, len, SEEK_CUR) == -1)
diff --git a/development/gcc5/fastjar-patches/1003-fastjar-CVE-2010-0831.patch b/development/gcc5/fastjar-patches/1003-fastjar-CVE-2010-0831.patch
new file mode 100644
index 0000000000..2c6e23c76c
--- /dev/null
+++ b/development/gcc5/fastjar-patches/1003-fastjar-CVE-2010-0831.patch
@@ -0,0 +1,102 @@
+2010-06-10 Jakub Jelinek <jakub@redhat.com>
+ Dan Rosenberg <dan.j.rosenberg@gmail.com>
+
+ * jartool.c (extract_jar): Fix up checks for traversal to parent
+ directories, disallow absolute paths, make the code slightly more
+ efficient.
+
+--- fastjar-0.97/jartool.c.jj 2009-09-07 00:10:47.000000000 +0200
++++ fastjar-0.97/jartool.c 2010-06-08 20:00:29.000000000 +0200
+@@ -1730,7 +1730,17 @@ int extract_jar(int fd, const char **fil
+ struct stat sbuf;
+ int depth = 0;
+
+- tmp_buff = malloc(sizeof(char) * strlen((const char *)filename));
++ if(*filename == '/'){
++ fprintf(stderr, "Absolute path names are not allowed.\n");
++ exit(EXIT_FAILURE);
++ }
++
++ tmp_buff = malloc(strlen((const char *)filename));
++
++ if(tmp_buff == NULL) {
++ fprintf(stderr, "Out of memory.\n");
++ exit(EXIT_FAILURE);
++ }
+
+ for(;;){
+ const ub1 *idx = (const unsigned char *)strchr((const char *)start, '/');
+@@ -1738,25 +1748,28 @@ int extract_jar(int fd, const char **fil
+ if(idx == NULL)
+ break;
+ else if(idx == start){
++ tmp_buff[idx - filename] = '/';
+ start++;
+ continue;
+ }
+- start = idx + 1;
+
+- strncpy(tmp_buff, (const char *)filename, (idx - filename));
+- tmp_buff[(idx - filename)] = '\0';
++ memcpy(tmp_buff + (start - filename), (const char *)start, (idx - start));
++ tmp_buff[idx - filename] = '\0';
+
+ #ifdef DEBUG
+ printf("checking the existance of %s\n", tmp_buff);
+ #endif
+- if(strcmp(tmp_buff, "..") == 0){
++ if(idx - start == 2 && memcmp(start, "..", 2) == 0){
+ --depth;
+ if (depth < 0){
+ fprintf(stderr, "Traversal to parent directories during unpacking!\n");
+ exit(EXIT_FAILURE);
+ }
+- } else if (strcmp(tmp_buff, ".") != 0)
++ } else if (idx - start != 1 || *start != '.')
+ ++depth;
++
++ start = idx + 1;
++
+ if(stat(tmp_buff, &sbuf) < 0){
+ if(errno != ENOENT)
+ exit_on_error("stat");
+@@ -1765,6 +1778,7 @@ int extract_jar(int fd, const char **fil
+ #ifdef DEBUG
+ printf("Directory exists\n");
+ #endif
++ tmp_buff[idx - filename] = '/';
+ continue;
+ }else {
+ fprintf(stderr, "Hmmm.. %s exists but isn't a directory!\n",
+@@ -1781,10 +1795,11 @@ int extract_jar(int fd, const char **fil
+ if(verbose && handle)
+ printf("%10s: %s/\n", "created", tmp_buff);
+
++ tmp_buff[idx - filename] = '/';
+ }
+
+ /* only a directory */
+- if(strlen((const char *)start) == 0)
++ if(*start == '\0')
+ dir = TRUE;
+
+ #ifdef DEBUG
+@@ -1792,7 +1807,7 @@ int extract_jar(int fd, const char **fil
+ #endif
+
+ /* If the entry was just a directory, don't write to file, etc */
+- if(strlen((const char *)start) == 0)
++ if(*start == '\0')
+ f_fd = -1;
+
+ free(tmp_buff);
+@@ -1876,7 +1891,8 @@ int extract_jar(int fd, const char **fil
+ exit(EXIT_FAILURE);
+ }
+
+- close(f_fd);
++ if (f_fd != -1)
++ close(f_fd);
+
+ if(verbose && dir == FALSE && handle)
+ printf("%10s: %s\n",
diff --git a/development/gcc5/fastjar-patches/1004-fastjar-man.patch b/development/gcc5/fastjar-patches/1004-fastjar-man.patch
new file mode 100644
index 0000000000..34bf704dbb
--- /dev/null
+++ b/development/gcc5/fastjar-patches/1004-fastjar-man.patch
@@ -0,0 +1,27 @@
+2010-03-24 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ * Makefile.am (POD2MAN): Provide --date from ChangeLog.
+ * Makefile.in: Regenerate.
+
+--- fastjar-0.97/Makefile.am.jj 2008-10-16 04:24:55.000000000 -0400
++++ fastjar-0.97/Makefile.am 2010-06-21 09:29:41.021398000 -0400
+@@ -39,7 +39,7 @@ EXTRA_DIST = \
+ texi2pod.pl
+
+ TEXI2POD = perl $(srcdir)/texi2pod.pl
+-POD2MAN = pod2man --center="GNU" --release=@VERSION@
++POD2MAN = pod2man --center="GNU" --release=@VERSION@ --date=$(shell sed -n '1s/ .*//p' <$(srcdir)/ChangeLog)
+
+ .pod.1:
+ -($(POD2MAN) --section=1 $< > $(@).T$$$$ && \
+--- fastjar-0.97/Makefile.in.jj 2008-10-16 04:15:16.000000000 -0400
++++ fastjar-0.97/Makefile.in 2010-06-21 09:30:15.882810000 -0400
+@@ -515,7 +515,7 @@ EXTRA_DIST = \
+ texi2pod.pl
+
+ TEXI2POD = perl $(srcdir)/texi2pod.pl
+-POD2MAN = pod2man --center="GNU" --release=@VERSION@
++POD2MAN = pod2man --center="GNU" --release=@VERSION@ --date=$(shell sed -n '1s/ .*//p' <$(srcdir)/ChangeLog)
+
+ #SPLINT_FLAGS=-I . -I $(srcdir)/lib -I $(srcdir) -DHAVE_CONFIG_H +posixlib +weak
+ SPLINT_FLAGS = -I . -I $(srcdir)/lib -I $(srcdir) -DHAVE_CONFIG_H -DPRIx32= -warnposix +weak
diff --git a/development/gcc5/gcc5.SlackBuild b/development/gcc5/gcc5.SlackBuild
new file mode 100644
index 0000000000..7054b3184f
--- /dev/null
+++ b/development/gcc5/gcc5.SlackBuild
@@ -0,0 +1,565 @@
+#!/bin/sh
+# GCC package build script (written by volkerdi@slackware.com)
+#
+# Copyright 2003, 2004 Slackware Linux, Inc., Concord, California, USA
+# Copyright 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018 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.
+#
+
+# Modified 2011 by Eric Hameleers <alien at slackware.com> for OpenJDK.
+# Modified 2017, 2018 by Eric Hameleers <alien at slackware.com> for gcc5.
+
+# Some notes, Fri May 16 12:31:32 PDT 2003:
+#
+# Why i486 and not i386? Because the shared C++ libraries in gcc-3.2.x will
+# require 486 opcodes even when a 386 target is used (so we already weren't
+# compatible with the i386 for Slackware 9.0, didn't notice, and nobody
+# complained :-). gcc-3.3 fixes this issue and allows you to build a 386
+# compiler, but the fix is done in a way that produces binaries that are not
+# compatible with gcc-3.2.x compiled binaries. To retain compatibility with
+# Slackware 9.0, we'll have to use i486 (or better) as the compiler target
+# for gcc-3.3.
+#
+# It's time to say goodbye to i386 support in Slackware. I've surveyed 386
+# usage online, and the most common thing I see people say when someone asks
+# about running Linux on a 386 is to "run Slackware", but then they also
+# usually go on to say "be sure to get an OLD version, like 4.0, before glibc,
+# because it'll be more efficient." Now, if that's the general advice, then
+# I see no reason to continue 386 support in the latest Slackware (and indeed
+# it's no longer easily possible).
+
+# Some more notes, Mon Aug 3 19:49:51 UTC 2015:
+#
+# Changing to -march=i586 for 32-bit x86 as several things (Mesa being one of
+# them) no longer work if constrained to -march=i486. We're not going to use
+# -march=i686 since the only additional opcode is CMOV, which is actually less
+# efficient on modern CPUs running in 32-bit mode than the alternate i586
+# instructions. No need to throw i586 CPUs under the bus (yet).
+
+PRGNAM=gcc5
+VERSION=${VERSION:-5.5.0}
+MAJVER=$(echo ${VERSION} |cut -d. -f1)
+BUILD=${BUILD:-1}
+TAG=${TAG:-SBo}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+CWD=$(pwd)
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i386" ]; then
+ SLKCFLAGS="-O2 -march=i386 -mcpu=i686"
+ SLKLDFLAGS=""
+ LIBDIRSUFFIX=""
+ LIB_ARCH=i386
+elif [ "$ARCH" = "i486" ]; then
+ SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+ SLKLDFLAGS=""
+ LIBDIRSUFFIX=""
+ LIB_ARCH=i386
+elif [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ SLKLDFLAGS=""
+ LIBDIRSUFFIX=""
+ LIB_ARCH=i386
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ SLKLDFLAGS=""
+ LIBDIRSUFFIX=""
+ LIB_ARCH=i386
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ SLKLDFLAGS=""
+ LIBDIRSUFFIX=""
+ LIB_ARCH=s390
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ SLKLDFLAGS="-L/usr/lib64"
+ LIBDIRSUFFIX="64"
+ LIB_ARCH=amd64
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ SLKLDFLAGS=""
+ LIBDIRSUFFIX=""
+ LIB_ARCH=armv7hl
+else
+ SLKCFLAGS="-O2"
+ SLKLDFLAGS=""
+ LIBDIRSUFFIX=""
+ LIB_ARCH=$ARCH
+fi
+
+# What do we want to build
+LANGS=${LANGS:-'c,c++,java'}
+
+echo "Building these compilers: $LANGS"
+
+case "$ARCH" in
+ arm*) TARGET=$ARCH-slackware-linux-gnueabi ;;
+ *) TARGET=$ARCH-slackware-linux ;;
+esac
+
+if [ "$ARCH" = "x86_64" ]; then
+ if [ -f /usr/lib/libc.a ]; then
+ # If we find a 32bit C library on 64bit Slackware, assume multilib:
+ GCC_ARCHOPTS="--enable-multilib"
+ MULTILIB="YES"
+ else
+ GCC_ARCHOPTS="--disable-multilib"
+ MULTILIB="NO"
+ fi
+else
+ GCC_ARCHOPTS="--with-arch=$ARCH"
+ MULTILIB="NO"
+fi
+
+# Clear the build locations:
+rm -fr $TMP/fastjar-* $TMP/gcc-$VERSION $TMP/gcc.build.lnx $TMP/gcc.build.log $TMP/package-$PRGNAM
+
+mkdir -p $PKG/usr/doc/gcc-$VERSION
+
+# Insert package description:
+mkdir -p $PKG/install
+if [ ${MULTILIB} = "YES" ]; then
+ SLDESC=" The compilers support multilib."
+else
+ SLDESC=""
+fi
+cat $CWD/slack-desc.gcc5 | sed -e "s/@MULTILIB@/${SLDESC}/" \
+ > $PKG/install/slack-desc
+
+# Unpack the gcc sources:
+cd $TMP
+tar xvf $CWD/gcc-$VERSION.tar.?z || exit 1
+
+# Patches based inside the gcc directory go here:
+#( cd gcc-$VERSION/gcc
+# #cat $CWD/patches/gcc.66782.diff | patch -p0 --verbose || exit 1
+#) || exit 1
+
+# Copy ecj.jar into the TLD of the source. Needed for java compiler.
+# This can be retrieved from ftp://sourceware.org/pub/java
+cp $CWD/ecj-4.9.jar gcc-$VERSION/ecj.jar
+
+# Use an antlr runtime to compile javadoc.
+# The runtime can be obtained from:
+#https://oss.sonatype.org/content/repositories/releases/org/antlr/antlr-runtime/
+ANTLJAR=$(echo $CWD/antlr-*.jar | tail -1)
+
+# install docs
+( cd gcc-$VERSION
+ # Smite the fixincludes:
+ cat $CWD/patches/gcc-no_fixincludes.diff | patch -p1 --verbose --backup --suffix=.orig || exit 1
+
+ # Add retpoline support:
+ cat $CWD/patches/0001-i386-Move-struct-ix86_frame-to-machine_function.diff | patch -p2 --verbose || exit 1
+ cat $CWD/patches/0002-i386-Use-reference-of-struct-ix86_frame-to-avoid-cop.diff | patch -p2 --verbose || exit 1
+ cat $CWD/patches/0003-i386-More-use-reference-of-struct-ix86_frame-to-avoi.diff | patch -p2 --verbose || exit 1
+ cat $CWD/patches/0004-i386-Don-t-use-reference-of-struct-ix86_frame.diff | patch -p2 --verbose || exit 1
+ cat $CWD/patches/0005-x86-Add-mindirect-branch-doc.diff | patch -p2 --verbose || exit 1
+ cat $CWD/patches/0005-x86-Add-mindirect-branch.diff | patch -p2 --verbose || exit 1
+ cat $CWD/patches/0006-x86-Add-mfunction-return-doc.diff | patch -p2 --verbose || exit 1
+ cat $CWD/patches/0006-x86-Add-mfunction-return.diff | patch -p2 --verbose || exit 1
+ cat $CWD/patches/0007-x86-Add-mindirect-branch-register-doc.diff | patch -p2 --verbose || exit 1
+ cat $CWD/patches/0007-x86-Add-mindirect-branch-register.diff | patch -p2 --verbose || exit 1
+ cat $CWD/patches/0008-x86-Add-V-register-operand-modifier-doc.diff | patch -p2 --verbose || exit 1
+ cat $CWD/patches/0008-x86-Add-V-register-operand-modifier.diff | patch -p2 --verbose || exit 1
+ cat $CWD/patches/0009-x86-Disallow-mindirect-branch-mfunction-return-with-.diff | patch -p2 --verbose || exit 1
+ cat $CWD/patches/0009-x86-Disallow-mindirect-branch-mfunction-return-with-doc.diff | patch -p2 --verbose || exit 1
+
+ # Fix perms/owners
+ chown -R root:root .
+ find . -perm 777 -exec chmod 755 {} \;
+ find . -perm 775 -exec chmod 755 {} \;
+ find . -perm 754 -exec chmod 755 {} \;
+ find . -perm 664 -exec chmod 644 {} \;
+ mkdir -p $PKG/usr/doc/gcc-$VERSION
+ cp -a \
+ COPYING* ChangeLog* FAQ INSTALL \
+ LAST_UPDATED MAINTAINERS NEWS \
+ README* *.html \
+ $PKG/usr/doc/gcc-$VERSION
+
+ # We will keep part of these, but they are really big...
+ if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/gcc-$VERSION)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+ fi
+ if [ -r NEWS ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/gcc-$VERSION)
+ cat NEWS | head -n 1000 > $DOCSDIR/NEWS
+ touch -r NEWS $DOCSDIR/NEWS
+ fi
+
+ mkdir -p $PKG/usr/doc/gcc-${VERSION}/gcc
+ ( cd gcc
+ cp -a \
+ ABOUT* COPYING* DATESTAMP DEV-PHASE LANG* ONEWS README* SERVICE \
+ $PKG/usr/doc/gcc-$VERSION/gcc
+
+ mkdir -p $PKG/usr/doc/gcc-${VERSION}/gcc/java
+ ( cd java
+ cp -a \
+ ChangeLog.tree-ssa \
+ $PKG/usr/doc/gcc-${VERSION}/gcc/java
+ if [ -r ChangeLog ]; then
+ cat ChangeLog | head -n 1000 > $PKG/usr/doc/gcc-${VERSION}/gcc/java/ChangeLog
+ touch -r ChangeLog $PKG/usr/doc/gcc-${VERSION}/gcc/java/ChangeLog
+ fi
+ )
+
+ ) || exit 1
+
+ mkdir -p $PKG/usr/doc/gcc-${VERSION}/libffi
+ ( cd libffi
+ cp -a \
+ ChangeLog.libgcj ChangeLog.v1 \
+ LICENSE* README* \
+ $PKG/usr/doc/gcc-${VERSION}/libffi
+ if [ -r ChangeLog ]; then
+ cat ChangeLog | head -n 1000 > $PKG/usr/doc/gcc-${VERSION}/libffi/ChangeLog
+ touch -r ChangeLog $PKG/usr/doc/gcc-${VERSION}/libffi/ChangeLog
+ fi
+ )
+
+ mkdir -p $PKG/usr/doc/gcc-${VERSION}/libjava
+ ( cd libjava
+ cp -a \
+ COPYING* HACKING LIBGCJ_LICENSE \
+ NEWS README* THANKS \
+ $PKG/usr/doc/gcc-${VERSION}/libjava
+ if [ -r ChangeLog ]; then
+ cat ChangeLog | head -n 1000 > $PKG/usr/doc/gcc-${VERSION}/libjava/ChangeLog
+ touch -r ChangeLog $PKG/usr/doc/gcc-${VERSION}/libjava/ChangeLog
+ fi
+ )
+
+ if [ -d libmudflap ]; then
+ mkdir -p $PKG/usr/doc/gcc-${VERSION}/libmudflap
+ ( cd libmudflap
+ if [ -r ChangeLog ]; then
+ cat ChangeLog | head -n 1000 > $PKG/usr/doc/gcc-${VERSION}/libmudflap/ChangeLog
+ touch -r ChangeLog $PKG/usr/doc/gcc-${VERSION}/libmudflap/ChangeLog
+ fi
+ )
+ fi
+
+ mkdir -p $PKG/usr/doc/gcc-${VERSION}/libgomp
+ ( cd libgomp
+ if [ -r ChangeLog ]; then
+ cat ChangeLog | head -n 1000 > $PKG/usr/doc/gcc-${VERSION}/libgomp/ChangeLog
+ touch -r ChangeLog $PKG/usr/doc/gcc-${VERSION}/libgomp/ChangeLog
+ fi
+ )
+
+ mkdir -p $PKG/usr/doc/gcc-${VERSION}/libstdc++-v3
+ ( cd libstdc++-v3
+ cp -a \
+ README* \
+ doc/html/faq.html \
+ $PKG/usr/doc/gcc-${VERSION}/libstdc++-v3
+ if [ -r ChangeLog ]; then
+ cat ChangeLog | head -n 1000 > $PKG/usr/doc/gcc-${VERSION}/libstdc++-v3/ChangeLog
+ touch -r ChangeLog $PKG/usr/doc/gcc-${VERSION}/libstdc++-v3/ChangeLog
+ fi
+ )
+)
+
+# Add fastjar to the gcc5 package:
+( cd $TMP
+ FASTJARVER=$(echo $CWD/fastjar-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)
+ echo
+ echo "Building fastjar-$FASTJARVER first"
+ echo
+ rm -rf fastjar-$FASTJARVER
+ tar xvf $CWD/fastjar-$FASTJARVER.tar.?z* || exit 1
+ cd fastjar-$FASTJARVER || 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 {} \;
+ for patch in $CWD/fastjar-patches/* ; do
+ cat $patch | patch -p1 --verbose || exit 1
+ done
+ LDFLAGS="$SLKLDFLAGS" \
+ CFLAGS="$SLKCFLAGS" \
+ CXXFLAGS="$SLKCFLAGS" \
+ ./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib$LIBDIRSUFFIX \
+ --mandir=/usr/man \
+ --infodir=/usr/info \
+ --build=$TARGET
+ make || exit 1
+ make install DESTDIR=$PKG || exit 1
+ mkdir -p $PKG/usr/doc/fastjar-$FASTJARVER
+ cp -a \
+ AUTHORS CHANGES COPYING* INSTALL NEWS README* TODO \
+ $PKG/usr/doc/fastjar-$FASTJARVER
+ # 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/fastjar-$FASTJARVER)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+ fi
+ find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+ # Compress and if needed symlink the man pages:
+ if [ -d $PKG/usr/man ]; then
+ ( cd $PKG/usr/man
+ for manpagedir in $(find . -type d -name "man*") ; do
+ ( cd $manpagedir
+ for eachpage in $( find . -type l -maxdepth 1) ; do
+ ln -s $( readlink $eachpage ).gz $eachpage.gz
+ rm $eachpage
+ done
+ gzip -9 *.?
+ )
+ done
+ )
+ fi
+ # Compress info files, if any:
+ if [ -d $PKG/usr/info ]; then
+ ( cd $PKG/usr/info
+ rm -f dir
+ gzip -9 *
+ )
+ fi
+ echo
+) || exit 1
+
+# build gcc
+( mkdir gcc.build.lnx;
+ cd gcc.build.lnx;
+
+ # I think it's incorrect to include this option (as it'll end up set
+ # to i586 on x86 platforms), and we want to tune the binary structure
+ # for i686, as that's where almost all of the optimization speedups
+ # are to be found.
+ # Correct me if my take on this is wrong.
+ # --with-cpu=$ARCH
+
+ # NOTE: For Slackware 15.0, look into removing --with-default-libstdcxx-abi=gcc4-compatible,
+ # which will then require rebuilding all C++ libraries. That is, if there's any benefit.
+
+ LDFLAGS="$SLKLDFLAGS" \
+ CFLAGS="$SLKCFLAGS" \
+ CXXFLAGS="$SLKCFLAGS" \
+ ../gcc-$VERSION/configure \
+ --prefix=/usr \
+ --libdir=/usr/lib$LIBDIRSUFFIX \
+ --mandir=/usr/man \
+ --infodir=/usr/info \
+ --enable-shared \
+ --enable-bootstrap \
+ --enable-languages=${LANGS} \
+ --enable-threads=posix \
+ --enable-checking=release \
+ --enable-objc-gc \
+ --with-system-zlib \
+ --with-python-dir=/lib$LIBDIRSUFFIX/python2.7/site-packages \
+ --enable-libstdcxx-dual-abi \
+ --with-default-libstdcxx-abi=gcc4-compatible \
+ --disable-libunwind-exceptions \
+ --enable-__cxa_atexit \
+ --enable-libssp \
+ --enable-lto \
+ --disable-install-libiberty \
+ --with-gnu-ld \
+ --verbose \
+ --enable-java-home \
+ --with-java-home=/usr/lib$LIBDIRSUFFIX/jvm/jre \
+ --with-jvm-root-dir=/usr/lib$LIBDIRSUFFIX/jvm \
+ --with-jvm-jar-dir=/usr/lib$LIBDIRSUFFIX/jvm/jvm-exports \
+ --with-arch-directory=$LIB_ARCH \
+ --with-antlr-jar=$ANTLJAR \
+ --program-suffix=-${MAJVER} \
+ --enable-version-specific-runtime-libs \
+ $GCC_ARCHOPTS \
+ --target=${TARGET} \
+ --build=${TARGET} \
+ --host=${TARGET} || exit 1
+ #--enable-java-awt=gtk \
+ #--disable-gtktest \
+
+ # Start the build:
+
+ # Include all debugging info (for now):
+ make bootstrap
+ make info
+ make install DESTDIR=$PKG
+
+# KLUDGE ALERT
+# These *gdb.py files are causing ldconfig to complain, so they are going
+# to be REMOVED for now... at some point, they might be moved somewhere
+# else, in which case things should Just Work(tm). Keep an eye on it.
+rm -f $PKG/usr/lib*/*gdb.py
+
+# Be sure the "specs" file is installed.
+if [ ! -r $PKG/usr/lib${LIBDIRSUFFIX}/gcc/${TARGET}/${VERSION}/specs ]; then
+ cat stage1-gcc/specs > $PKG/usr/lib${LIBDIRSUFFIX}/gcc/${TARGET}/${VERSION}/specs
+fi
+
+if [ ${MULTILIB} = "NO" ]; then
+ # Make our 64bit gcc look for 32bit gcc binaries in ./32 subdirectory:
+ (only needed if gcc was compiled with disable-multilib)
+ if [ "$ARCH" = "x86_64" ]; then
+ sed -i 's#;.\(:../lib !m64 m32;\)$#;32\1#' \
+ $PKG/usr/lib${LIBDIRSUFFIX}/gcc/${TARGET}/${VERSION}/specs
+ fi
+fi
+
+make -i install-info DESTDIR=$PKG
+
+# Move potentially conflicting stuff to version specific subdirectory:
+if [ -d $PKG/usr/lib${LIBDIRSUFFIX} ]; then
+ mv $PKG/usr/lib${LIBDIRSUFFIX}/lib* $PKG/usr/lib${LIBDIRSUFFIX}/gcc/${TARGET}/${VERSION}/
+fi
+if [ -d $PKG/usr/lib${LIBDIRSUFFIX}/gcc/${TARGET}/lib${LIBDIRSUFFIX}/ ]; then
+ mv $PKG/usr/lib${LIBDIRSUFFIX}/gcc/${TARGET}/lib${LIBDIRSUFFIX}/lib* $PKG/usr/lib${LIBDIRSUFFIX}/gcc/${TARGET}/${VERSION}/
+fi
+chmod 755 $PKG/usr/lib${LIBDIRSUFFIX}/gcc/${TARGET}/${VERSION}/libgcc_s.so.1
+if [ ${MULTILIB} = "YES" ]; then
+ if [ -d $PKG/usr/lib ]; then
+ mv $PKG/usr/lib/lib* $PKG/usr/lib/gcc/${TARGET}/${VERSION}/
+ fi
+ if [ -d $PKG/usr/lib/gcc/${TARGET}/lib/ ]; then
+ mv $PKG/usr/lib/gcc/${TARGET}/lib/lib* $PKG/usr/lib/gcc/${TARGET}/${VERSION}/
+ fi
+ chmod 755 $PKG/usr/lib/gcc/${TARGET}/${VERSION}/libgcc_s.so.1
+fi
+
+# The (huge) static GNU java libraries are not packaged. In nearly all
+# cases one or more dependencies will not be available as static anyway.
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/libgcj.a
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/libgcj-tools.a
+rm -f $PKG/usr/lib/libgcj.a
+rm -f $PKG/usr/lib/libgcj-tools.a
+
+# Fix stuff up:
+( cd $PKG/usr/info
+ rm dir
+ for eachinfo in *.info ; do
+ mv $eachinfo $(basename $eachinfo .info)-${MAJVER}.info
+ done
+ gzip -9 *
+)
+
+( cd $PKG/usr/bin
+ ln -sf g++-${MAJVER} c++-${MAJVER}
+ ln -sf gcc-${MAJVER} cc-${MAJVER}
+ # Improved versions of the Slackware c?9 scripts,
+ # it is safe to overwrite the originals:
+ cat $CWD/c89.sh > c89
+ cat $CWD/c99.sh > c99
+ chmod 755 c89 c99
+)
+
+( cd $PKG/usr/man
+ rm -r man7 # Part of the system gcc package
+ gzip -9 */*
+ cd man1
+ ln -sf g++-${MAJVER}.1.gz c++-${MAJVER}.1.gz
+ ln -sf gcc-${MAJVER}.1.gz cc-${MAJVER}.1.gz
+)
+
+# keep a log
+) 2>&1 | tee $TMP/gcc.build.log
+
+# Add profile scripts (non-executable by default) to make it easier
+# to set the environment for compiling with gcc5:
+mkdir -p $PKG/etc/profile.d
+cat $CWD/profile.d/gcc5.sh > $PKG/etc/profile.d/gcc5.sh
+cat $CWD/profile.d/gcc5.csh > $PKG/etc/profile.d/gcc5.csh
+chmod 644 $PKG/etc/profile.d/*
+
+# The ecj wrapper script:
+cat $CWD/ecj.sh | sed -e "s,@JAVADIR@,/usr/share/java," > $PKG/usr/bin/ecj
+chmod 755 $PKG/usr/bin/ecj
+# Some compatibility links.
+for JAVAPROG in gcj gcjh gcj-dbtool gjar gjarsigner gjavah ; do
+ ln -s ${JAVAPROG}-${MAJVER} $PKG/usr/bin/${JAVAPROG}
+done
+( cd $PKG
+ for JAVALIB in usr/lib${LIBDIRSUFFIX}/gcc/${TARGET}/${VERSION}/libgcj* ; do
+ ln -s /${JAVALIB} $PKG/usr/lib${LIBDIRSUFFIX}/
+ done
+)
+# And add the missing javac symlink:
+ln -s ../../../bin/ecj $PKG/usr/lib$LIBDIRSUFFIX/jvm/bin/javac
+# Don't package libffi stuff anymore. GCC will link the internal version
+# statically, and we'll need a newer one elsewhere.
+find . -name "ffi*.h" | xargs rm -f
+find . -name "libffi*" | xargs rm -f
+rm -f usr/man/man3/ffi*
+rm -f usr/info/libffi*
+# Install a proper pkgconfig file for libgcj:
+rm $PKG/usr/lib${LIBDIRSUFFIX}/gcc/${TARGET}/${VERSION}/pkgconfig/libgcj*pc
+rm $PKG/usr/lib${LIBDIRSUFFIX}/gcc/${TARGET}/${VERSION}/32/pkgconfig/libgcj*pc
+mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig
+cat $CWD/libgcj-5.pc \
+ | sed -e "s,@LIBDIRSUFFIX@,${LIBDIRSUFFIX}," \
+ | sed -e "s,@TARGET@,${TARGET}," \
+ | sed -e "s,@VERSION@,${VERSION}," \
+ > $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig/libgcj-5.pc
+
+# Filter all .la files (thanks much to Mark Post for the sed script):
+( cd $PKG
+ for file in $(find . -type f -name "*.la") ; do
+ cat $file | sed -e 's%-L'${TMP}'[[:graph:]]* % %g' > $TMP/tmp-la-file
+ cat $TMP/tmp-la-file > $file
+ done
+ rm $TMP/tmp-la-file
+)
+
+## Strip bloated binaries and libraries:
+( cd $PKG
+ find . -name "lib*so*" -exec strip --strip-unneeded "{}" \;
+ find . -name "lib*a" -exec strip -g "{}" \;
+ strip --strip-unneeded usr/bin/* 2> /dev/null
+ find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+ find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+)
+
+# Remove localizations overlapping with Slackware's gcc
+rm -rf $PKG/usr/share/locale
+
+( cd $PKG
+ if [ ${MULTILIB} = "YES" ]; then
+ /sbin/makepkg -l y -c n $OUTPUT/${PRGNAM}-${VERSION}_multilib-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+ else
+ /sbin/makepkg -l y -c n $OUTPUT/${PRGNAM}-${VERSION}-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+ fi
+)
diff --git a/development/gcc5/gcc5.info b/development/gcc5/gcc5.info
new file mode 100644
index 0000000000..cb7d761a98
--- /dev/null
+++ b/development/gcc5/gcc5.info
@@ -0,0 +1,17 @@
+PRGNAM="gcc5"
+VERSION="5.5.0"
+HOMEPAGE="https://gcc.gnu.org/"
+DOWNLOAD="https://ftp.gnu.org/gnu/gcc/gcc-5.5.0/gcc-5.5.0.tar.xz \
+ http://www.antlr3.org/download/antlr-runtime-3.4.jar \
+ https://sourceware.org/pub/java/ecj-4.9.jar \
+ https://download.savannah.gnu.org/releases/fastjar/fastjar-0.97.tar.gz"
+MD5SUM="0f70424213b4a1113c04ba66ddda0c1f \
+ 0e0318be407e51fdf7ba6777eabfdf73 \
+ 7339f199ba11c941890031fd9981d7be \
+ 2659f09c2e43ef8b7d4406321753f1b2"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Eric Hameleers"
+EMAIL="alien@slackware.com"
+
diff --git a/development/gcc5/libgcj-5.pc b/development/gcc5/libgcj-5.pc
new file mode 100644
index 0000000000..e2eb293209
--- /dev/null
+++ b/development/gcc5/libgcj-5.pc
@@ -0,0 +1,10 @@
+prefix=/usr
+exec_prefix=${prefix}
+libdir=/usr/lib@LIBDIRSUFFIX@/gcc/@TARGET@/@VERSION@
+includedir=$(libdir)/include/
+
+Name: libgcj
+Description: libgcj
+Version: @VERSION@
+Libs: -L${libdir} -lgcj
+Cflags: -I${includedir}
diff --git a/development/gcc5/patches/0001-i386-Move-struct-ix86_frame-to-machine_function.diff b/development/gcc5/patches/0001-i386-Move-struct-ix86_frame-to-machine_function.diff
new file mode 100644
index 0000000000..413d75697f
--- /dev/null
+++ b/development/gcc5/patches/0001-i386-Move-struct-ix86_frame-to-machine_function.diff
@@ -0,0 +1,239 @@
+From 11a3b9034935080b9996caf07fca6353309006f1 Mon Sep 17 00:00:00 2001
+From: hjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>
+Date: Mon, 15 Jan 2018 11:27:24 +0000
+Subject: [PATCH 1/9] i386: Move struct ix86_frame to machine_function
+
+Make ix86_frame available to i386 code generation. This is needed to
+backport the patch set of -mindirect-branch= to mitigate variant #2 of
+the speculative execution vulnerabilities on x86 processors identified
+by CVE-2017-5715, aka Spectre.
+
+ Backport from mainline
+ * config/i386/i386.c (ix86_frame): Moved to ...
+ * config/i386/i386.h (ix86_frame): Here.
+ (machine_function): Add frame.
+ * config/i386/i386.c (ix86_compute_frame_layout): Repace the
+ frame argument with &cfun->machine->frame.
+ (ix86_can_use_return_insn_p): Don't pass &frame to
+ ix86_compute_frame_layout. Copy frame from cfun->machine->frame.
+ (ix86_can_eliminate): Likewise.
+ (ix86_expand_prologue): Likewise.
+ (ix86_expand_epilogue): Likewise.
+ (ix86_expand_split_stack_prologue): Likewise.
+
+
+git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-7-branch@256691 138bc75d-0d04-0410-961f-82ee72b054a4
+---
+ src/gcc/config/i386/i386.c | 68 ++++++++-------------------------------------
+ src/gcc/config/i386/i386.h | 53 ++++++++++++++++++++++++++++++++++-
+ 2 files changed, 65 insertions(+), 56 deletions(-)
+
+Index: b/src/gcc/config/i386/i386.c
+===================================================================
+--- a/src/gcc/config/i386/i386.c
++++ b/src/gcc/config/i386/i386.c
+@@ -2306,53 +2306,6 @@ struct GTY(()) stack_local_entry {
+ struct stack_local_entry *next;
+ };
+
+-/* Structure describing stack frame layout.
+- Stack grows downward:
+-
+- [arguments]
+- <- ARG_POINTER
+- saved pc
+-
+- saved static chain if ix86_static_chain_on_stack
+-
+- saved frame pointer if frame_pointer_needed
+- <- HARD_FRAME_POINTER
+- [saved regs]
+- <- regs_save_offset
+- [padding0]
+-
+- [saved SSE regs]
+- <- sse_regs_save_offset
+- [padding1] |
+- | <- FRAME_POINTER
+- [va_arg registers] |
+- |
+- [frame] |
+- |
+- [padding2] | = to_allocate
+- <- STACK_POINTER
+- */
+-struct ix86_frame
+-{
+- int nsseregs;
+- int nregs;
+- int va_arg_size;
+- int red_zone_size;
+- int outgoing_arguments_size;
+-
+- /* The offsets relative to ARG_POINTER. */
+- HOST_WIDE_INT frame_pointer_offset;
+- HOST_WIDE_INT hard_frame_pointer_offset;
+- HOST_WIDE_INT stack_pointer_offset;
+- HOST_WIDE_INT hfp_save_offset;
+- HOST_WIDE_INT reg_save_offset;
+- HOST_WIDE_INT sse_reg_save_offset;
+-
+- /* When save_regs_using_mov is set, emit prologue using
+- move instead of push instructions. */
+- bool save_regs_using_mov;
+-};
+-
+ /* Which cpu are we scheduling for. */
+ enum attr_cpu ix86_schedule;
+
+@@ -2443,7 +2396,7 @@ static unsigned int ix86_function_arg_bo
+ const_tree);
+ static rtx ix86_static_chain (const_tree, bool);
+ static int ix86_function_regparm (const_tree, const_tree);
+-static void ix86_compute_frame_layout (struct ix86_frame *);
++static void ix86_compute_frame_layout (void);
+ static bool ix86_expand_vector_init_one_nonzero (bool, machine_mode,
+ rtx, rtx, int);
+ static void ix86_add_new_builtins (HOST_WIDE_INT);
+@@ -9664,7 +9617,8 @@ ix86_can_use_return_insn_p (void)
+ if (crtl->args.pops_args && crtl->args.size >= 32768)
+ return 0;
+
+- ix86_compute_frame_layout (&frame);
++ ix86_compute_frame_layout ();
++ frame = cfun->machine->frame;
+ return (frame.stack_pointer_offset == UNITS_PER_WORD
+ && (frame.nregs + frame.nsseregs) == 0);
+ }
+@@ -10073,8 +10027,8 @@ ix86_can_eliminate (const int from, cons
+ HOST_WIDE_INT
+ ix86_initial_elimination_offset (int from, int to)
+ {
+- struct ix86_frame frame;
+- ix86_compute_frame_layout (&frame);
++ ix86_compute_frame_layout ();
++ struct ix86_frame frame = cfun->machine->frame;
+
+ if (from == ARG_POINTER_REGNUM && to == HARD_FRAME_POINTER_REGNUM)
+ return frame.hard_frame_pointer_offset;
+@@ -10113,8 +10067,9 @@ ix86_builtin_setjmp_frame_value (void)
+ /* Fill structure ix86_frame about frame of currently computed function. */
+
+ static void
+-ix86_compute_frame_layout (struct ix86_frame *frame)
++ix86_compute_frame_layout (void)
+ {
++ struct ix86_frame *frame = &cfun->machine->frame;
+ unsigned HOST_WIDE_INT stack_alignment_needed;
+ HOST_WIDE_INT offset;
+ unsigned HOST_WIDE_INT preferred_alignment;
+@@ -11417,7 +11372,8 @@ ix86_expand_prologue (void)
+ m->fs.sp_offset = INCOMING_FRAME_SP_OFFSET;
+ m->fs.sp_valid = true;
+
+- ix86_compute_frame_layout (&frame);
++ ix86_compute_frame_layout ();
++ frame = m->frame;
+
+ if (!TARGET_64BIT && ix86_function_ms_hook_prologue (current_function_decl))
+ {
+@@ -12083,7 +12039,8 @@ ix86_expand_epilogue (int style)
+ bool using_drap;
+
+ ix86_finalize_stack_realign_flags ();
+- ix86_compute_frame_layout (&frame);
++ ix86_compute_frame_layout ();
++ frame = m->frame;
+
+ m->fs.sp_valid = (!frame_pointer_needed
+ || (crtl->sp_is_unchanging
+@@ -12546,7 +12503,8 @@ ix86_expand_split_stack_prologue (void)
+ gcc_assert (flag_split_stack && reload_completed);
+
+ ix86_finalize_stack_realign_flags ();
+- ix86_compute_frame_layout (&frame);
++ ix86_compute_frame_layout ();
++ frame = cfun->machine->frame;
+ allocate = frame.stack_pointer_offset - INCOMING_FRAME_SP_OFFSET;
+
+ /* This is the label we will branch to if we have enough stack
+Index: b/src/gcc/config/i386/i386.h
+===================================================================
+--- a/src/gcc/config/i386/i386.h
++++ b/src/gcc/config/i386/i386.h
+@@ -2409,9 +2409,56 @@ enum avx_u128_state
+
+ #define FASTCALL_PREFIX '@'
+
++#ifndef USED_FOR_TARGET
++/* Structure describing stack frame layout.
++ Stack grows downward:
++
++ [arguments]
++ <- ARG_POINTER
++ saved pc
++
++ saved static chain if ix86_static_chain_on_stack
++
++ saved frame pointer if frame_pointer_needed
++ <- HARD_FRAME_POINTER
++ [saved regs]
++ <- regs_save_offset
++ [padding0]
++
++ [saved SSE regs]
++ <- sse_regs_save_offset
++ [padding1] |
++ | <- FRAME_POINTER
++ [va_arg registers] |
++ |
++ [frame] |
++ |
++ [padding2] | = to_allocate
++ <- STACK_POINTER
++ */
++struct GTY(()) ix86_frame
++{
++ int nsseregs;
++ int nregs;
++ int va_arg_size;
++ int red_zone_size;
++ int outgoing_arguments_size;
++
++ /* The offsets relative to ARG_POINTER. */
++ HOST_WIDE_INT frame_pointer_offset;
++ HOST_WIDE_INT hard_frame_pointer_offset;
++ HOST_WIDE_INT stack_pointer_offset;
++ HOST_WIDE_INT hfp_save_offset;
++ HOST_WIDE_INT reg_save_offset;
++ HOST_WIDE_INT sse_reg_save_offset;
++
++ /* When save_regs_using_mov is set, emit prologue using
++ move instead of push instructions. */
++ bool save_regs_using_mov;
++};
++
+ /* Machine specific frame tracking during prologue/epilogue generation. */
+
+-#ifndef USED_FOR_TARGET
+ struct GTY(()) machine_frame_state
+ {
+ /* This pair tracks the currently active CFA as reg+offset. When reg
+@@ -2457,6 +2504,9 @@ struct GTY(()) machine_function {
+ int varargs_fpr_size;
+ int optimize_mode_switching[MAX_386_ENTITIES];
+
++ /* Cached initial frame layout for the current function. */
++ struct ix86_frame frame;
++
+ /* Number of saved registers USE_FAST_PROLOGUE_EPILOGUE
+ has been computed for. */
+ int use_fast_prologue_epilogue_nregs;
+@@ -2524,6 +2574,7 @@ struct GTY(()) machine_function {
+ #define ix86_current_function_calls_tls_descriptor \
+ (ix86_tls_descriptor_calls_expanded_in_cfun && df_regs_ever_live_p (SP_REG))
+ #define ix86_static_chain_on_stack (cfun->machine->static_chain_on_stack)
++#define ix86_red_zone_size (cfun->machine->frame.red_zone_size)
+
+ /* Control behavior of x86_file_start. */
+ #define X86_FILE_START_VERSION_DIRECTIVE false
diff --git a/development/gcc5/patches/0002-i386-Use-reference-of-struct-ix86_frame-to-avoid-cop.diff b/development/gcc5/patches/0002-i386-Use-reference-of-struct-ix86_frame-to-avoid-cop.diff
new file mode 100644
index 0000000000..7b928df765
--- /dev/null
+++ b/development/gcc5/patches/0002-i386-Use-reference-of-struct-ix86_frame-to-avoid-cop.diff
@@ -0,0 +1,72 @@
+From 18202ba32cb8de22fc43a5839235a751d0f5c4d9 Mon Sep 17 00:00:00 2001
+From: hjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>
+Date: Mon, 15 Jan 2018 11:28:44 +0000
+Subject: [PATCH 2/9] i386: Use reference of struct ix86_frame to avoid copy
+
+When there is no need to make a copy of ix86_frame, we can use reference
+of struct ix86_frame to avoid copy.
+
+ Backport from mainline
+ * config/i386/i386.c (ix86_can_use_return_insn_p): Use reference
+ of struct ix86_frame.
+ (ix86_initial_elimination_offset): Likewise.
+ (ix86_expand_split_stack_prologue): Likewise.
+
+
+git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-7-branch@256692 138bc75d-0d04-0410-961f-82ee72b054a4
+---
+ gcc/config/i386/i386.c | 9 +++------
+ gcc/testsuite/ChangeLog | 8 ++++++++
+ 2 files changed, 11 insertions(+), 6 deletions(-)
+
+diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
+index 8133372..397ef7c 100644
+--- a/src/gcc/config/i386/i386.c
++++ b/src/gcc/config/i386/i386.c
+@@ -11843,8 +11843,6 @@ symbolic_reference_mentioned_p (rtx op)
+ bool
+ ix86_can_use_return_insn_p (void)
+ {
+- struct ix86_frame frame;
+-
+ if (! reload_completed || frame_pointer_needed)
+ return 0;
+
+@@ -11857,7 +11855,7 @@ ix86_can_use_return_insn_p (void)
+ return 0;
+
+ ix86_compute_frame_layout ();
+- frame = cfun->machine->frame;
++ struct ix86_frame &frame = cfun->machine->frame;
+ return (frame.stack_pointer_offset == UNITS_PER_WORD
+ && (frame.nregs + frame.nsseregs) == 0);
+ }
+@@ -12344,7 +12342,7 @@ HOST_WIDE_INT
+ ix86_initial_elimination_offset (int from, int to)
+ {
+ ix86_compute_frame_layout ();
+- struct ix86_frame frame = cfun->machine->frame;
++ struct ix86_frame &frame = cfun->machine->frame;
+
+ if (from == ARG_POINTER_REGNUM && to == HARD_FRAME_POINTER_REGNUM)
+ return frame.hard_frame_pointer_offset;
+@@ -14860,7 +14858,6 @@ static GTY(()) rtx split_stack_fn_large;
+ void
+ ix86_expand_split_stack_prologue (void)
+ {
+- struct ix86_frame frame;
+ HOST_WIDE_INT allocate;
+ unsigned HOST_WIDE_INT args_size;
+ rtx_code_label *label;
+@@ -14873,7 +14870,7 @@ ix86_expand_split_stack_prologue (void)
+
+ ix86_finalize_stack_realign_flags ();
+ ix86_compute_frame_layout ();
+- frame = cfun->machine->frame;
++ struct ix86_frame &frame = cfun->machine->frame;
+ allocate = frame.stack_pointer_offset - INCOMING_FRAME_SP_OFFSET;
+
+ /* This is the label we will branch to if we have enough stack
+--
+2.7.4
+
diff --git a/development/gcc5/patches/0003-i386-More-use-reference-of-struct-ix86_frame-to-avoi.diff b/development/gcc5/patches/0003-i386-More-use-reference-of-struct-ix86_frame-to-avoi.diff
new file mode 100644
index 0000000000..f6f30d1d22
--- /dev/null
+++ b/development/gcc5/patches/0003-i386-More-use-reference-of-struct-ix86_frame-to-avoi.diff
@@ -0,0 +1,59 @@
+From 839ca2d69157ef03c8df0ab912dacdb991738694 Mon Sep 17 00:00:00 2001
+From: hjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>
+Date: Mon, 15 Jan 2018 11:33:42 +0000
+Subject: [PATCH 3/9] i386: More use reference of struct ix86_frame to avoid copy
+
+When there is no need to make a copy of ix86_frame, we can use reference
+of struct ix86_frame to avoid copy.
+
+ Backport from mainline
+ * config/i386/i386.c (ix86_expand_prologue): Use reference of
+ struct ix86_frame.
+ (ix86_expand_epilogue): Likewise.
+
+
+git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-7-branch@256695 138bc75d-0d04-0410-961f-82ee72b054a4
+---
+ gcc/ChangeLog | 7 +++++++
+ gcc/config/i386/i386.c | 6 ++----
+ 2 files changed, 9 insertions(+), 4 deletions(-)
+
+diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
+index 397ef7c..986e6d7 100644
+--- a/src/gcc/config/i386/i386.c
++++ b/src/gcc/config/i386/i386.c
+@@ -13667,7 +13667,6 @@ ix86_expand_prologue (void)
+ {
+ struct machine_function *m = cfun->machine;
+ rtx insn, t;
+- struct ix86_frame frame;
+ HOST_WIDE_INT allocate;
+ bool int_registers_saved;
+ bool sse_registers_saved;
+@@ -13691,7 +13690,7 @@ ix86_expand_prologue (void)
+ m->fs.sp_valid = true;
+
+ ix86_compute_frame_layout ();
+- frame = m->frame;
++ struct ix86_frame &frame = cfun->machine->frame;
+
+ if (!TARGET_64BIT && ix86_function_ms_hook_prologue (current_function_decl))
+ {
+@@ -14354,13 +14353,12 @@ ix86_expand_epilogue (int style)
+ {
+ struct machine_function *m = cfun->machine;
+ struct machine_frame_state frame_state_save = m->fs;
+- struct ix86_frame frame;
+ bool restore_regs_via_mov;
+ bool using_drap;
+
+ ix86_finalize_stack_realign_flags ();
+ ix86_compute_frame_layout ();
+- frame = m->frame;
++ struct ix86_frame &frame = cfun->machine->frame;
+
+ m->fs.sp_valid = (!frame_pointer_needed
+ || (crtl->sp_is_unchanging
+--
+2.7.4
+
diff --git a/development/gcc5/patches/0004-i386-Don-t-use-reference-of-struct-ix86_frame.diff b/development/gcc5/patches/0004-i386-Don-t-use-reference-of-struct-ix86_frame.diff
new file mode 100644
index 0000000000..7678444cd7
--- /dev/null
+++ b/development/gcc5/patches/0004-i386-Don-t-use-reference-of-struct-ix86_frame.diff
@@ -0,0 +1,63 @@
+From c25b81ba01fa9ac0c1baa3aabd64190c47928f03 Mon Sep 17 00:00:00 2001
+From: hjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>
+Date: Tue, 16 Jan 2018 12:49:29 +0000
+Subject: [PATCH 4/9] i386: Don't use reference of struct ix86_frame
+
+Use reference of struct ix86_frame in ix86_expand_prologue and
+ix86_expand_epilogue caused:
+
+raised STORAGE_ERROR : stack overflow or erroneous memory access
+make[5]: *** [/export/gnu/import/git/sources/gcc/gcc/ada/Make-generated.in:45: ada/sinfo.h] Error 1
+
+on trunk when bootstrapping GCC with ada on x86-64.
+
+ * config/i386/i386.c (ix86_expand_prologue): Don't use reference
+ of struct ix86_frame.
+ (ix86_expand_epilogue): Likewise.
+
+
+git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-7-branch@256742 138bc75d-0d04-0410-961f-82ee72b054a4
+---
+ gcc/ChangeLog | 10 ++++++++++
+ gcc/config/i386/i386.c | 6 ++++--
+ 2 files changed, 14 insertions(+), 2 deletions(-)
+
+diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
+index e758387..ba2abc5 100644
+--- a/src/gcc/config/i386/i386.c
++++ b/src/gcc/config/i386/i386.c
+@@ -14061,6 +14061,7 @@ ix86_expand_prologue (void)
+ {
+ struct machine_function *m = cfun->machine;
+ rtx insn, t;
++ struct ix86_frame frame;
+ HOST_WIDE_INT allocate;
+ bool int_registers_saved;
+ bool sse_registers_saved;
+@@ -14084,7 +14085,7 @@ ix86_expand_prologue (void)
+ m->fs.sp_valid = true;
+
+ ix86_compute_frame_layout ();
+- struct ix86_frame &frame = cfun->machine->frame;
++ frame = m->frame;
+
+ if (!TARGET_64BIT && ix86_function_ms_hook_prologue (current_function_decl))
+ {
+@@ -14747,12 +14748,13 @@ ix86_expand_epilogue (int style)
+ {
+ struct machine_function *m = cfun->machine;
+ struct machine_frame_state frame_state_save = m->fs;
++ struct ix86_frame frame;
+ bool restore_regs_via_mov;
+ bool using_drap;
+
+ ix86_finalize_stack_realign_flags ();
+ ix86_compute_frame_layout ();
+- struct ix86_frame &frame = cfun->machine->frame;
++ frame = m->frame;
+
+ m->fs.sp_valid = (!frame_pointer_needed
+ || (crtl->sp_is_unchanging
+--
+2.7.4
+
diff --git a/development/gcc5/patches/0005-x86-Add-mindirect-branch-doc.diff b/development/gcc5/patches/0005-x86-Add-mindirect-branch-doc.diff
new file mode 100644
index 0000000000..bcaf572b1e
--- /dev/null
+++ b/development/gcc5/patches/0005-x86-Add-mindirect-branch-doc.diff
@@ -0,0 +1,279 @@
+From c6b72be421ded17e0c156070ba6e90aa6c335ed6 Mon Sep 17 00:00:00 2001
+From: hjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>
+Date: Tue, 16 Jan 2018 10:59:42 +0000
+Subject: [PATCH 5/9] x86: Add -mindirect-branch= (documentation)
+
+Add -mindirect-branch= option to convert indirect call and jump to call
+and return thunks. The default is 'keep', which keeps indirect call and
+jump unmodified. 'thunk' converts indirect call and jump to call and
+return thunk. 'thunk-inline' converts indirect call and jump to inlined
+call and return thunk. 'thunk-extern' converts indirect call and jump to
+external call and return thunk provided in a separate object file. You
+can control this behavior for a specific function by using the function
+attribute indirect_branch.
+
+2 kinds of thunks are geneated. Memory thunk where the function address
+is at the top of the stack:
+
+__x86_indirect_thunk:
+ call L2
+L1:
+ pause
+ lfence
+ jmp L1
+L2:
+ lea 8(%rsp), %rsp|lea 4(%esp), %esp
+ ret
+
+Indirect jmp via memory, "jmp mem", is converted to
+
+ push memory
+ jmp __x86_indirect_thunk
+
+Indirect call via memory, "call mem", is converted to
+
+ jmp L2
+L1:
+ push [mem]
+ jmp __x86_indirect_thunk
+L2:
+ call L1
+
+Register thunk where the function address is in a register, reg:
+
+__x86_indirect_thunk_reg:
+ call L2
+L1:
+ pause
+ lfence
+ jmp L1
+L2:
+ movq %reg, (%rsp)|movl %reg, (%esp)
+ ret
+
+where reg is one of (r|e)ax, (r|e)dx, (r|e)cx, (r|e)bx, (r|e)si, (r|e)di,
+(r|e)bp, r8, r9, r10, r11, r12, r13, r14 and r15.
+
+Indirect jmp via register, "jmp reg", is converted to
+
+ jmp __x86_indirect_thunk_reg
+
+Indirect call via register, "call reg", is converted to
+
+ call __x86_indirect_thunk_reg
+
+gcc/
+
+ Backport from mainline
+ * config/i386/i386-opts.h (indirect_branch): New.
+ * config/i386/i386-protos.h (ix86_output_indirect_jmp): Likewise.
+ * config/i386/i386.c (ix86_using_red_zone): Disallow red-zone
+ with local indirect jump when converting indirect call and jump.
+ (ix86_set_indirect_branch_type): New.
+ (ix86_set_current_function): Call ix86_set_indirect_branch_type.
+ (indirectlabelno): New.
+ (indirect_thunk_needed): Likewise.
+ (indirect_thunk_bnd_needed): Likewise.
+ (indirect_thunks_used): Likewise.
+ (indirect_thunks_bnd_used): Likewise.
+ (INDIRECT_LABEL): Likewise.
+ (indirect_thunk_name): Likewise.
+ (output_indirect_thunk): Likewise.
+ (output_indirect_thunk_function): Likewise.
+ (ix86_output_indirect_branch_via_reg): Likewise.
+ (ix86_output_indirect_branch_via_push): Likewise.
+ (ix86_output_indirect_branch): Likewise.
+ (ix86_output_indirect_jmp): Likewise.
+ (ix86_code_end): Call output_indirect_thunk_function if needed.
+ (ix86_output_call_insn): Call ix86_output_indirect_branch if
+ needed.
+ (ix86_handle_fndecl_attribute): Handle indirect_branch.
+ (ix86_attribute_table): Add indirect_branch.
+ * config/i386/i386.h (machine_function): Add indirect_branch_type
+ and has_local_indirect_jump.
+ * config/i386/i386.md (indirect_jump): Set has_local_indirect_jump
+ to true.
+ (tablejump): Likewise.
+ (*indirect_jump): Use ix86_output_indirect_jmp.
+ (*tablejump_1): Likewise.
+ (simple_return_indirect_internal): Likewise.
+ * config/i386/i386.opt (mindirect-branch=): New option.
+ (indirect_branch): New.
+ (keep): Likewise.
+ (thunk): Likewise.
+ (thunk-inline): Likewise.
+ (thunk-extern): Likewise.
+ * doc/extend.texi: Document indirect_branch function attribute.
+ * doc/invoke.texi: Document -mindirect-branch= option.
+
+gcc/testsuite/
+
+ Backport from mainline
+ * gcc.target/i386/indirect-thunk-1.c: New test.
+ * gcc.target/i386/indirect-thunk-2.c: Likewise.
+ * gcc.target/i386/indirect-thunk-3.c: Likewise.
+ * gcc.target/i386/indirect-thunk-4.c: Likewise.
+ * gcc.target/i386/indirect-thunk-5.c: Likewise.
+ * gcc.target/i386/indirect-thunk-6.c: Likewise.
+ * gcc.target/i386/indirect-thunk-7.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-1.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-2.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-3.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-4.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-5.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-6.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-7.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-8.c: Likewise.
+ * gcc.target/i386/indirect-thunk-bnd-1.c: Likewise.
+ * gcc.target/i386/indirect-thunk-bnd-2.c: Likewise.
+ * gcc.target/i386/indirect-thunk-bnd-3.c: Likewise.
+ * gcc.target/i386/indirect-thunk-bnd-4.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-1.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-2.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-3.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-4.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-5.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-6.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-7.c: Likewise.
+ * gcc.target/i386/indirect-thunk-inline-1.c: Likewise.
+ * gcc.target/i386/indirect-thunk-inline-2.c: Likewise.
+ * gcc.target/i386/indirect-thunk-inline-3.c: Likewise.
+ * gcc.target/i386/indirect-thunk-inline-4.c: Likewise.
+ * gcc.target/i386/indirect-thunk-inline-5.c: Likewise.
+ * gcc.target/i386/indirect-thunk-inline-6.c: Likewise.
+ * gcc.target/i386/indirect-thunk-inline-7.c: Likewise.
+
+
+git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-7-branch@256732 138bc75d-0d04-0410-961f-82ee72b054a4
+
+[UBUNTU NOTES: Updated for gcc-5.4 to include defines for
+ FIRST_INT_REG, LAST_INT_REG, and LEGACY_INT_REGNO_P as defined in
+ https://gcc.gnu.org/viewcvs/gcc?view=revision&revision=222269.
+ Dropped indirect-thunk-5.c, indirect-thunk-6.c,
+ indirect-thunk-bnd-3.c, indirect-thunk-bnd-4.c,
+ indirect-thunk-extern-5.c, indirect-thunk-extern-6.c,
+ indirect-thunk-inline-5.c, and indirect-thunk-inline-6.c tests due
+ to gcc 5.4 and earlier not supporting the -fno-plt option.
+ --sbeattie, tyhicks]
+---
+ src/gcc/config/i386/i386-opts.h | 13
+ src/gcc/config/i386/i386-protos.h | 1
+ src/gcc/config/i386/i386.c | 621 +++++++++++-
+ src/gcc/config/i386/i386.h | 12
+ src/gcc/config/i386/i386.md | 26
+ src/gcc/config/i386/i386.opt | 20
+ src/gcc/doc/extend.texi | 10
+ src/gcc/doc/invoke.texi | 14
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-1.c | 20
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-2.c | 20
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-3.c | 21
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-4.c | 21
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-7.c | 44
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-1.c | 23
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-2.c | 21
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-3.c | 23
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-4.c | 22
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-5.c | 22
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-6.c | 21
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-7.c | 44
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-8.c | 42
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-1.c | 20
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-2.c | 21
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-1.c | 19
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-2.c | 19
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-3.c | 20
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-4.c | 20
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-7.c | 43
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-1.c | 20
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-2.c | 20
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-3.c | 21
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-4.c | 21
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-7.c | 44
+ 33 files changed, 1334 insertions(+), 15 deletions(-)
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-1.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-2.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-3.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-4.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-5.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-6.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-7.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-attr-1.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-attr-2.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-attr-3.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-attr-4.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-attr-5.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-attr-6.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-attr-7.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-attr-8.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-1.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-2.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-3.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-4.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-extern-1.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-extern-2.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-extern-3.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-extern-4.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-extern-5.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-extern-6.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-extern-7.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-inline-1.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-inline-2.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-inline-3.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-inline-4.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-inline-5.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-inline-6.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-inline-7.c
+
+Index: b/src/gcc/doc/extend.texi
+===================================================================
+--- a/src/gcc/doc/extend.texi
++++ b/src/gcc/doc/extend.texi
+@@ -4119,6 +4119,16 @@ Specify which floating-point unit to use
+ @code{target("fpmath=sse,387")} option must be specified as
+ @code{target("fpmath=sse+387")} because the comma would separate
+ different options.
++
++@item indirect_branch("@var{choice}")
++@cindex @code{indirect_branch} function attribute, x86
++On x86 targets, the @code{indirect_branch} attribute causes the compiler
++to convert indirect call and jump with @var{choice}. @samp{keep}
++keeps indirect call and jump unmodified. @samp{thunk} converts indirect
++call and jump to call and return thunk. @samp{thunk-inline} converts
++indirect call and jump to inlined call and return thunk.
++@samp{thunk-extern} converts indirect call and jump to external call
++and return thunk provided in a separate object file.
+ @end table
+
+ On the PowerPC, the following options are allowed:
+Index: b/src/gcc/doc/invoke.texi
+===================================================================
+--- a/src/gcc/doc/invoke.texi
++++ b/src/gcc/doc/invoke.texi
+@@ -1090,7 +1090,8 @@ See RS/6000 and PowerPC Options.
+ -m32 -m64 -mx32 -m16 -mlarge-data-threshold=@var{num} @gol
+ -msse2avx -mfentry -mrecord-mcount -mnop-mcount -m8bit-idiv @gol
+ -mavx256-split-unaligned-load -mavx256-split-unaligned-store @gol
+--malign-data=@var{type} -mstack-protector-guard=@var{guard}}
++-malign-data=@var{type} -mstack-protector-guard=@var{guard} @gol
++-mindirect-branch=@var{choice}}
+
+ @emph{x86 Windows Options}
+ @gccoptlist{-mconsole -mcygwin -mno-cygwin -mdll @gol
+@@ -24017,6 +24018,17 @@ The default value of this option is enab
+ of the option is @option{-fno-sync-libcalls}. This option is used in
+ the implementation of the @file{libatomic} runtime library.
+
++@item -mindirect-branch=@var{choice}
++@opindex -mindirect-branch
++Convert indirect call and jump with @var{choice}. The default is
++@samp{keep}, which keeps indirect call and jump unmodified.
++@samp{thunk} converts indirect call and jump to call and return thunk.
++@samp{thunk-inline} converts indirect call and jump to inlined call
++and return thunk. @samp{thunk-extern} converts indirect call and jump
++to external call and return thunk provided in a separate object file.
++You can control this behavior for a specific function by using the
++function attribute @code{indirect_branch}. @xref{Function Attributes}.
++
+ @end table
+
+ @c man end
diff --git a/development/gcc5/patches/0005-x86-Add-mindirect-branch.diff b/development/gcc5/patches/0005-x86-Add-mindirect-branch.diff
new file mode 100644
index 0000000000..db9690ccc1
--- /dev/null
+++ b/development/gcc5/patches/0005-x86-Add-mindirect-branch.diff
@@ -0,0 +1,1870 @@
+From c6b72be421ded17e0c156070ba6e90aa6c335ed6 Mon Sep 17 00:00:00 2001
+From: hjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>
+Date: Tue, 16 Jan 2018 10:59:42 +0000
+Subject: [PATCH 5/9] x86: Add -mindirect-branch=
+
+Add -mindirect-branch= option to convert indirect call and jump to call
+and return thunks. The default is 'keep', which keeps indirect call and
+jump unmodified. 'thunk' converts indirect call and jump to call and
+return thunk. 'thunk-inline' converts indirect call and jump to inlined
+call and return thunk. 'thunk-extern' converts indirect call and jump to
+external call and return thunk provided in a separate object file. You
+can control this behavior for a specific function by using the function
+attribute indirect_branch.
+
+2 kinds of thunks are geneated. Memory thunk where the function address
+is at the top of the stack:
+
+__x86_indirect_thunk:
+ call L2
+L1:
+ pause
+ lfence
+ jmp L1
+L2:
+ lea 8(%rsp), %rsp|lea 4(%esp), %esp
+ ret
+
+Indirect jmp via memory, "jmp mem", is converted to
+
+ push memory
+ jmp __x86_indirect_thunk
+
+Indirect call via memory, "call mem", is converted to
+
+ jmp L2
+L1:
+ push [mem]
+ jmp __x86_indirect_thunk
+L2:
+ call L1
+
+Register thunk where the function address is in a register, reg:
+
+__x86_indirect_thunk_reg:
+ call L2
+L1:
+ pause
+ lfence
+ jmp L1
+L2:
+ movq %reg, (%rsp)|movl %reg, (%esp)
+ ret
+
+where reg is one of (r|e)ax, (r|e)dx, (r|e)cx, (r|e)bx, (r|e)si, (r|e)di,
+(r|e)bp, r8, r9, r10, r11, r12, r13, r14 and r15.
+
+Indirect jmp via register, "jmp reg", is converted to
+
+ jmp __x86_indirect_thunk_reg
+
+Indirect call via register, "call reg", is converted to
+
+ call __x86_indirect_thunk_reg
+
+gcc/
+
+ Backport from mainline
+ * config/i386/i386-opts.h (indirect_branch): New.
+ * config/i386/i386-protos.h (ix86_output_indirect_jmp): Likewise.
+ * config/i386/i386.c (ix86_using_red_zone): Disallow red-zone
+ with local indirect jump when converting indirect call and jump.
+ (ix86_set_indirect_branch_type): New.
+ (ix86_set_current_function): Call ix86_set_indirect_branch_type.
+ (indirectlabelno): New.
+ (indirect_thunk_needed): Likewise.
+ (indirect_thunk_bnd_needed): Likewise.
+ (indirect_thunks_used): Likewise.
+ (indirect_thunks_bnd_used): Likewise.
+ (INDIRECT_LABEL): Likewise.
+ (indirect_thunk_name): Likewise.
+ (output_indirect_thunk): Likewise.
+ (output_indirect_thunk_function): Likewise.
+ (ix86_output_indirect_branch_via_reg): Likewise.
+ (ix86_output_indirect_branch_via_push): Likewise.
+ (ix86_output_indirect_branch): Likewise.
+ (ix86_output_indirect_jmp): Likewise.
+ (ix86_code_end): Call output_indirect_thunk_function if needed.
+ (ix86_output_call_insn): Call ix86_output_indirect_branch if
+ needed.
+ (ix86_handle_fndecl_attribute): Handle indirect_branch.
+ (ix86_attribute_table): Add indirect_branch.
+ * config/i386/i386.h (machine_function): Add indirect_branch_type
+ and has_local_indirect_jump.
+ * config/i386/i386.md (indirect_jump): Set has_local_indirect_jump
+ to true.
+ (tablejump): Likewise.
+ (*indirect_jump): Use ix86_output_indirect_jmp.
+ (*tablejump_1): Likewise.
+ (simple_return_indirect_internal): Likewise.
+ * config/i386/i386.opt (mindirect-branch=): New option.
+ (indirect_branch): New.
+ (keep): Likewise.
+ (thunk): Likewise.
+ (thunk-inline): Likewise.
+ (thunk-extern): Likewise.
+ * doc/extend.texi: Document indirect_branch function attribute.
+ * doc/invoke.texi: Document -mindirect-branch= option.
+
+gcc/testsuite/
+
+ Backport from mainline
+ * gcc.target/i386/indirect-thunk-1.c: New test.
+ * gcc.target/i386/indirect-thunk-2.c: Likewise.
+ * gcc.target/i386/indirect-thunk-3.c: Likewise.
+ * gcc.target/i386/indirect-thunk-4.c: Likewise.
+ * gcc.target/i386/indirect-thunk-5.c: Likewise.
+ * gcc.target/i386/indirect-thunk-6.c: Likewise.
+ * gcc.target/i386/indirect-thunk-7.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-1.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-2.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-3.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-4.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-5.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-6.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-7.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-8.c: Likewise.
+ * gcc.target/i386/indirect-thunk-bnd-1.c: Likewise.
+ * gcc.target/i386/indirect-thunk-bnd-2.c: Likewise.
+ * gcc.target/i386/indirect-thunk-bnd-3.c: Likewise.
+ * gcc.target/i386/indirect-thunk-bnd-4.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-1.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-2.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-3.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-4.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-5.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-6.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-7.c: Likewise.
+ * gcc.target/i386/indirect-thunk-inline-1.c: Likewise.
+ * gcc.target/i386/indirect-thunk-inline-2.c: Likewise.
+ * gcc.target/i386/indirect-thunk-inline-3.c: Likewise.
+ * gcc.target/i386/indirect-thunk-inline-4.c: Likewise.
+ * gcc.target/i386/indirect-thunk-inline-5.c: Likewise.
+ * gcc.target/i386/indirect-thunk-inline-6.c: Likewise.
+ * gcc.target/i386/indirect-thunk-inline-7.c: Likewise.
+
+
+git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-7-branch@256732 138bc75d-0d04-0410-961f-82ee72b054a4
+
+[UBUNTU NOTES: Updated for gcc-5.4 to include defines for
+ FIRST_INT_REG, LAST_INT_REG, and LEGACY_INT_REGNO_P as defined in
+ https://gcc.gnu.org/viewcvs/gcc?view=revision&revision=222269.
+ Dropped indirect-thunk-5.c, indirect-thunk-6.c,
+ indirect-thunk-bnd-3.c, indirect-thunk-bnd-4.c,
+ indirect-thunk-extern-5.c, indirect-thunk-extern-6.c,
+ indirect-thunk-inline-5.c, and indirect-thunk-inline-6.c tests due
+ to gcc 5.4 and earlier not supporting the -fno-plt option.
+ --sbeattie, tyhicks]
+---
+ src/gcc/config/i386/i386-opts.h | 13
+ src/gcc/config/i386/i386-protos.h | 1
+ src/gcc/config/i386/i386.c | 621 +++++++++++-
+ src/gcc/config/i386/i386.h | 12
+ src/gcc/config/i386/i386.md | 26
+ src/gcc/config/i386/i386.opt | 20
+ src/gcc/doc/extend.texi | 10
+ src/gcc/doc/invoke.texi | 14
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-1.c | 20
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-2.c | 20
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-3.c | 21
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-4.c | 21
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-7.c | 44
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-1.c | 23
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-2.c | 21
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-3.c | 23
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-4.c | 22
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-5.c | 22
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-6.c | 21
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-7.c | 44
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-8.c | 42
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-1.c | 20
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-2.c | 21
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-1.c | 19
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-2.c | 19
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-3.c | 20
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-4.c | 20
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-7.c | 43
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-1.c | 20
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-2.c | 20
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-3.c | 21
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-4.c | 21
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-7.c | 44
+ 33 files changed, 1334 insertions(+), 15 deletions(-)
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-1.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-2.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-3.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-4.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-5.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-6.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-7.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-attr-1.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-attr-2.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-attr-3.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-attr-4.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-attr-5.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-attr-6.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-attr-7.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-attr-8.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-1.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-2.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-3.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-4.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-extern-1.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-extern-2.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-extern-3.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-extern-4.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-extern-5.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-extern-6.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-extern-7.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-inline-1.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-inline-2.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-inline-3.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-inline-4.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-inline-5.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-inline-6.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-inline-7.c
+
+Index: b/src/gcc/config/i386/i386-opts.h
+===================================================================
+--- a/src/gcc/config/i386/i386-opts.h
++++ b/src/gcc/config/i386/i386-opts.h
+@@ -99,4 +99,17 @@ enum stack_protector_guard {
+ SSP_GLOBAL /* global canary */
+ };
+
++/* This is used to mitigate variant #2 of the speculative execution
++ vulnerabilities on x86 processors identified by CVE-2017-5715, aka
++ Spectre. They convert indirect branches and function returns to
++ call and return thunks to avoid speculative execution via indirect
++ call, jmp and ret. */
++enum indirect_branch {
++ indirect_branch_unset = 0,
++ indirect_branch_keep,
++ indirect_branch_thunk,
++ indirect_branch_thunk_inline,
++ indirect_branch_thunk_extern
++};
++
+ #endif
+Index: b/src/gcc/config/i386/i386-protos.h
+===================================================================
+--- a/src/gcc/config/i386/i386-protos.h
++++ b/src/gcc/config/i386/i386-protos.h
+@@ -306,6 +306,7 @@ extern enum attr_cpu ix86_schedule;
+ #endif
+
+ extern const char * ix86_output_call_insn (rtx_insn *insn, rtx call_op);
++extern const char * ix86_output_indirect_jmp (rtx call_op, bool ret_p);
+
+ #ifdef RTX_CODE
+ /* Target data for multipass lookahead scheduling.
+Index: b/src/gcc/config/i386/i386.c
+===================================================================
+--- a/src/gcc/config/i386/i386.c
++++ b/src/gcc/config/i386/i386.c
+@@ -2554,12 +2554,23 @@ make_pass_insert_vzeroupper (gcc::contex
+ return new pass_insert_vzeroupper (ctxt);
+ }
+
+-/* Return true if a red-zone is in use. */
++/* Return true if a red-zone is in use. We can't use red-zone when
++ there are local indirect jumps, like "indirect_jump" or "tablejump",
++ which jumps to another place in the function, since "call" in the
++ indirect thunk pushes the return address onto stack, destroying
++ red-zone.
++
++ TODO: If we can reserve the first 2 WORDs, for PUSH and, another
++ for CALL, in red-zone, we can allow local indirect jumps with
++ indirect thunk. */
+
+ static inline bool
+ ix86_using_red_zone (void)
+ {
+- return TARGET_RED_ZONE && !TARGET_64BIT_MS_ABI;
++ return (TARGET_RED_ZONE
++ && !TARGET_64BIT_MS_ABI
++ && (!cfun->machine->has_local_indirect_jump
++ || cfun->machine->indirect_branch_type == indirect_branch_keep));
+ }
+
+ /* Return a string that documents the current -m options. The caller is
+@@ -5126,6 +5137,37 @@ ix86_reset_previous_fndecl (void)
+ ix86_previous_fndecl = NULL_TREE;
+ }
+
++/* Set the indirect_branch_type field from the function FNDECL. */
++
++static void
++ix86_set_indirect_branch_type (tree fndecl)
++{
++ if (cfun->machine->indirect_branch_type == indirect_branch_unset)
++ {
++ tree attr = lookup_attribute ("indirect_branch",
++ DECL_ATTRIBUTES (fndecl));
++ if (attr != NULL)
++ {
++ tree args = TREE_VALUE (attr);
++ if (args == NULL)
++ gcc_unreachable ();
++ tree cst = TREE_VALUE (args);
++ if (strcmp (TREE_STRING_POINTER (cst), "keep") == 0)
++ cfun->machine->indirect_branch_type = indirect_branch_keep;
++ else if (strcmp (TREE_STRING_POINTER (cst), "thunk") == 0)
++ cfun->machine->indirect_branch_type = indirect_branch_thunk;
++ else if (strcmp (TREE_STRING_POINTER (cst), "thunk-inline") == 0)
++ cfun->machine->indirect_branch_type = indirect_branch_thunk_inline;
++ else if (strcmp (TREE_STRING_POINTER (cst), "thunk-extern") == 0)
++ cfun->machine->indirect_branch_type = indirect_branch_thunk_extern;
++ else
++ gcc_unreachable ();
++ }
++ else
++ cfun->machine->indirect_branch_type = ix86_indirect_branch;
++ }
++}
++
+ /* Establish appropriate back-end context for processing the function
+ FNDECL. The argument might be NULL to indicate processing at top
+ level, outside of any function scope. */
+@@ -5136,7 +5178,11 @@ ix86_set_current_function (tree fndecl)
+ several times in the course of compiling a function, and we don't want to
+ slow things down too much or call target_reinit when it isn't safe. */
+ if (fndecl == ix86_previous_fndecl)
+- return;
++ {
++ if (fndecl != NULL_TREE)
++ ix86_set_indirect_branch_type (fndecl);
++ return;
++ }
+
+ tree old_tree;
+ if (ix86_previous_fndecl == NULL_TREE)
+@@ -5153,6 +5199,8 @@ ix86_set_current_function (tree fndecl)
+ return;
+ }
+
++ ix86_set_indirect_branch_type (fndecl);
++
+ tree new_tree = DECL_FUNCTION_SPECIFIC_TARGET (fndecl);
+ if (new_tree == NULL_TREE)
+ new_tree = target_option_default_node;
+@@ -9681,6 +9729,220 @@ ix86_setup_frame_addresses (void)
+ # endif
+ #endif
+
++/* Label count for call and return thunks. It is used to make unique
++ labels in call and return thunks. */
++static int indirectlabelno;
++
++/* True if call and return thunk functions are needed. */
++static bool indirect_thunk_needed = false;
++/* True if call and return thunk functions with the BND prefix are
++ needed. */
++static bool indirect_thunk_bnd_needed = false;
++
++/* Bit masks of integer registers, which contain branch target, used
++ by call and return thunks functions. */
++static int indirect_thunks_used;
++/* Bit masks of integer registers, which contain branch target, used
++ by call and return thunks functions with the BND prefix. */
++static int indirect_thunks_bnd_used;
++
++#ifndef INDIRECT_LABEL
++# define INDIRECT_LABEL "LIND"
++#endif
++
++/* Fills in the label name that should be used for the indirect thunk. */
++
++static void
++indirect_thunk_name (char name[32], int regno, bool need_bnd_p)
++{
++ if (USE_HIDDEN_LINKONCE)
++ {
++ const char *bnd = need_bnd_p ? "_bnd" : "";
++ if (regno >= 0)
++ {
++ const char *reg_prefix;
++ if (LEGACY_INT_REGNO_P (regno))
++ reg_prefix = TARGET_64BIT ? "r" : "e";
++ else
++ reg_prefix = "";
++ sprintf (name, "__x86_indirect_thunk%s_%s%s",
++ bnd, reg_prefix, reg_names[regno]);
++ }
++ else
++ sprintf (name, "__x86_indirect_thunk%s", bnd);
++ }
++ else
++ {
++ if (regno >= 0)
++ {
++ if (need_bnd_p)
++ ASM_GENERATE_INTERNAL_LABEL (name, "LITBR", regno);
++ else
++ ASM_GENERATE_INTERNAL_LABEL (name, "LITR", regno);
++ }
++ else
++ {
++ if (need_bnd_p)
++ ASM_GENERATE_INTERNAL_LABEL (name, "LITB", 0);
++ else
++ ASM_GENERATE_INTERNAL_LABEL (name, "LIT", 0);
++ }
++ }
++}
++
++/* Output a call and return thunk for indirect branch. If BND_P is
++ true, the BND prefix is needed. If REGNO != -1, the function
++ address is in REGNO and the call and return thunk looks like:
++
++ call L2
++ L1:
++ pause
++ jmp L1
++ L2:
++ mov %REG, (%sp)
++ ret
++
++ Otherwise, the function address is on the top of stack and the
++ call and return thunk looks like:
++
++ call L2
++ L1:
++ pause
++ jmp L1
++ L2:
++ lea WORD_SIZE(%sp), %sp
++ ret
++ */
++
++static void
++output_indirect_thunk (bool need_bnd_p, int regno)
++{
++ char indirectlabel1[32];
++ char indirectlabel2[32];
++
++ ASM_GENERATE_INTERNAL_LABEL (indirectlabel1, INDIRECT_LABEL,
++ indirectlabelno++);
++ ASM_GENERATE_INTERNAL_LABEL (indirectlabel2, INDIRECT_LABEL,
++ indirectlabelno++);
++
++ /* Call */
++ if (need_bnd_p)
++ fputs ("\tbnd call\t", asm_out_file);
++ else
++ fputs ("\tcall\t", asm_out_file);
++ assemble_name_raw (asm_out_file, indirectlabel2);
++ fputc ('\n', asm_out_file);
++
++ ASM_OUTPUT_INTERNAL_LABEL (asm_out_file, indirectlabel1);
++
++ /* Pause + lfence. */
++ fprintf (asm_out_file, "\tpause\n\tlfence\n");
++
++ /* Jump. */
++ fputs ("\tjmp\t", asm_out_file);
++ assemble_name_raw (asm_out_file, indirectlabel1);
++ fputc ('\n', asm_out_file);
++
++ ASM_OUTPUT_INTERNAL_LABEL (asm_out_file, indirectlabel2);
++
++ if (regno >= 0)
++ {
++ /* MOV. */
++ rtx xops[2];
++ xops[0] = gen_rtx_MEM (word_mode, stack_pointer_rtx);
++ xops[1] = gen_rtx_REG (word_mode, regno);
++ output_asm_insn ("mov\t{%1, %0|%0, %1}", xops);
++ }
++ else
++ {
++ /* LEA. */
++ rtx xops[2];
++ xops[0] = stack_pointer_rtx;
++ xops[1] = plus_constant (Pmode, stack_pointer_rtx, UNITS_PER_WORD);
++ output_asm_insn ("lea\t{%E1, %0|%0, %E1}", xops);
++ }
++
++ if (need_bnd_p)
++ fputs ("\tbnd ret\n", asm_out_file);
++ else
++ fputs ("\tret\n", asm_out_file);
++}
++
++/* Output a funtion with a call and return thunk for indirect branch.
++ If BND_P is true, the BND prefix is needed. If REGNO != -1, the
++ function address is in REGNO. Otherwise, the function address is
++ on the top of stack. */
++
++static void
++output_indirect_thunk_function (bool need_bnd_p, int regno)
++{
++ char name[32];
++ tree decl;
++
++ /* Create __x86_indirect_thunk/__x86_indirect_thunk_bnd. */
++ indirect_thunk_name (name, regno, need_bnd_p);
++ decl = build_decl (BUILTINS_LOCATION, FUNCTION_DECL,
++ get_identifier (name),
++ build_function_type_list (void_type_node, NULL_TREE));
++ DECL_RESULT (decl) = build_decl (BUILTINS_LOCATION, RESULT_DECL,
++ NULL_TREE, void_type_node);
++ TREE_PUBLIC (decl) = 1;
++ TREE_STATIC (decl) = 1;
++ DECL_IGNORED_P (decl) = 1;
++
++#if TARGET_MACHO
++ if (TARGET_MACHO)
++ {
++ switch_to_section (darwin_sections[picbase_thunk_section]);
++ fputs ("\t.weak_definition\t", asm_out_file);
++ assemble_name (asm_out_file, name);
++ fputs ("\n\t.private_extern\t", asm_out_file);
++ assemble_name (asm_out_file, name);
++ putc ('\n', asm_out_file);
++ ASM_OUTPUT_LABEL (asm_out_file, name);
++ DECL_WEAK (decl) = 1;
++ }
++ else
++#endif
++ if (USE_HIDDEN_LINKONCE)
++ {
++ cgraph_node::create (decl)->set_comdat_group (DECL_ASSEMBLER_NAME (decl));
++
++ targetm.asm_out.unique_section (decl, 0);
++ switch_to_section (get_named_section (decl, NULL, 0));
++
++ targetm.asm_out.globalize_label (asm_out_file, name);
++ fputs ("\t.hidden\t", asm_out_file);
++ assemble_name (asm_out_file, name);
++ putc ('\n', asm_out_file);
++ ASM_DECLARE_FUNCTION_NAME (asm_out_file, name, decl);
++ }
++ else
++ {
++ switch_to_section (text_section);
++ ASM_OUTPUT_LABEL (asm_out_file, name);
++ }
++
++ DECL_INITIAL (decl) = make_node (BLOCK);
++ current_function_decl = decl;
++ allocate_struct_function (decl, false);
++ init_function_start (decl);
++ /* We're about to hide the function body from callees of final_* by
++ emitting it directly; tell them we're a thunk, if they care. */
++ cfun->is_thunk = true;
++ first_function_block_is_cold = false;
++ /* Make sure unwind info is emitted for the thunk if needed. */
++ final_start_function (emit_barrier (), asm_out_file, 1);
++
++ output_indirect_thunk (need_bnd_p, regno);
++
++ final_end_function ();
++ init_insn_lengths ();
++ free_after_compilation (cfun);
++ set_cfun (NULL);
++ current_function_decl = NULL;
++}
++
+ static int pic_labels_used;
+
+ /* Fills in the label name that should be used for a pc thunk for
+@@ -9707,11 +9969,32 @@ ix86_code_end (void)
+ rtx xops[2];
+ int regno;
+
++ if (indirect_thunk_needed)
++ output_indirect_thunk_function (false, -1);
++ if (indirect_thunk_bnd_needed)
++ output_indirect_thunk_function (true, -1);
++
++ for (regno = FIRST_REX_INT_REG; regno <= LAST_REX_INT_REG; regno++)
++ {
++ int i = regno - FIRST_REX_INT_REG + LAST_INT_REG + 1;
++ if ((indirect_thunks_used & (1 << i)))
++ output_indirect_thunk_function (false, regno);
++
++ if ((indirect_thunks_bnd_used & (1 << i)))
++ output_indirect_thunk_function (true, regno);
++ }
++
+ for (regno = AX_REG; regno <= SP_REG; regno++)
+ {
+ char name[32];
+ tree decl;
+
++ if ((indirect_thunks_used & (1 << regno)))
++ output_indirect_thunk_function (false, regno);
++
++ if ((indirect_thunks_bnd_used & (1 << regno)))
++ output_indirect_thunk_function (true, regno);
++
+ if (!(pic_labels_used & (1 << regno)))
+ continue;
+
+@@ -25805,12 +26088,292 @@ ix86_expand_call (rtx retval, rtx fnaddr
+ return call;
+ }
+
++/* Output indirect branch via a call and return thunk. CALL_OP is a
++ register which contains the branch target. XASM is the assembly
++ template for CALL_OP. Branch is a tail call if SIBCALL_P is true.
++ A normal call is converted to:
++
++ call __x86_indirect_thunk_reg
++
++ and a tail call is converted to:
++
++ jmp __x86_indirect_thunk_reg
++ */
++
++static void
++ix86_output_indirect_branch_via_reg (rtx call_op, bool sibcall_p)
++{
++ char thunk_name_buf[32];
++ char *thunk_name;
++ bool need_bnd_p = ix86_bnd_prefixed_insn_p (current_output_insn);
++ int regno = REGNO (call_op);
++
++ if (cfun->machine->indirect_branch_type
++ != indirect_branch_thunk_inline)
++ {
++ if (cfun->machine->indirect_branch_type == indirect_branch_thunk)
++ {
++ int i = regno;
++ if (i >= FIRST_REX_INT_REG)
++ i -= (FIRST_REX_INT_REG - LAST_INT_REG - 1);
++ if (need_bnd_p)
++ indirect_thunks_bnd_used |= 1 << i;
++ else
++ indirect_thunks_used |= 1 << i;
++ }
++ indirect_thunk_name (thunk_name_buf, regno, need_bnd_p);
++ thunk_name = thunk_name_buf;
++ }
++ else
++ thunk_name = NULL;
++
++ if (sibcall_p)
++ {
++ if (thunk_name != NULL)
++ {
++ if (need_bnd_p)
++ fprintf (asm_out_file, "\tbnd jmp\t%s\n", thunk_name);
++ else
++ fprintf (asm_out_file, "\tjmp\t%s\n", thunk_name);
++ }
++ else
++ output_indirect_thunk (need_bnd_p, regno);
++ }
++ else
++ {
++ if (thunk_name != NULL)
++ {
++ if (need_bnd_p)
++ fprintf (asm_out_file, "\tbnd call\t%s\n", thunk_name);
++ else
++ fprintf (asm_out_file, "\tcall\t%s\n", thunk_name);
++ return;
++ }
++
++ char indirectlabel1[32];
++ char indirectlabel2[32];
++
++ ASM_GENERATE_INTERNAL_LABEL (indirectlabel1,
++ INDIRECT_LABEL,
++ indirectlabelno++);
++ ASM_GENERATE_INTERNAL_LABEL (indirectlabel2,
++ INDIRECT_LABEL,
++ indirectlabelno++);
++
++ /* Jump. */
++ if (need_bnd_p)
++ fputs ("\tbnd jmp\t", asm_out_file);
++ else
++ fputs ("\tjmp\t", asm_out_file);
++ assemble_name_raw (asm_out_file, indirectlabel2);
++ fputc ('\n', asm_out_file);
++
++ ASM_OUTPUT_INTERNAL_LABEL (asm_out_file, indirectlabel1);
++
++ if (thunk_name != NULL)
++ {
++ if (need_bnd_p)
++ fprintf (asm_out_file, "\tbnd jmp\t%s\n", thunk_name);
++ else
++ fprintf (asm_out_file, "\tjmp\t%s\n", thunk_name);
++ }
++ else
++ output_indirect_thunk (need_bnd_p, regno);
++
++ ASM_OUTPUT_INTERNAL_LABEL (asm_out_file, indirectlabel2);
++
++ /* Call. */
++ if (need_bnd_p)
++ fputs ("\tbnd call\t", asm_out_file);
++ else
++ fputs ("\tcall\t", asm_out_file);
++ assemble_name_raw (asm_out_file, indirectlabel1);
++ fputc ('\n', asm_out_file);
++ }
++}
++
++/* Output indirect branch via a call and return thunk. CALL_OP is
++ the branch target. XASM is the assembly template for CALL_OP.
++ Branch is a tail call if SIBCALL_P is true. A normal call is
++ converted to:
++
++ jmp L2
++ L1:
++ push CALL_OP
++ jmp __x86_indirect_thunk
++ L2:
++ call L1
++
++ and a tail call is converted to:
++
++ push CALL_OP
++ jmp __x86_indirect_thunk
++ */
++
++static void
++ix86_output_indirect_branch_via_push (rtx call_op, const char *xasm,
++ bool sibcall_p)
++{
++ char thunk_name_buf[32];
++ char *thunk_name;
++ char push_buf[64];
++ bool need_bnd_p = ix86_bnd_prefixed_insn_p (current_output_insn);
++ int regno = -1;
++
++ if (cfun->machine->indirect_branch_type
++ != indirect_branch_thunk_inline)
++ {
++ if (cfun->machine->indirect_branch_type == indirect_branch_thunk)
++ {
++ if (need_bnd_p)
++ indirect_thunk_bnd_needed = true;
++ else
++ indirect_thunk_needed = true;
++ }
++ indirect_thunk_name (thunk_name_buf, regno, need_bnd_p);
++ thunk_name = thunk_name_buf;
++ }
++ else
++ thunk_name = NULL;
++
++ snprintf (push_buf, sizeof (push_buf), "push{%c}\t%s",
++ TARGET_64BIT ? 'q' : 'l', xasm);
++
++ if (sibcall_p)
++ {
++ output_asm_insn (push_buf, &call_op);
++ if (thunk_name != NULL)
++ {
++ if (need_bnd_p)
++ fprintf (asm_out_file, "\tbnd jmp\t%s\n", thunk_name);
++ else
++ fprintf (asm_out_file, "\tjmp\t%s\n", thunk_name);
++ }
++ else
++ output_indirect_thunk (need_bnd_p, regno);
++ }
++ else
++ {
++ char indirectlabel1[32];
++ char indirectlabel2[32];
++
++ ASM_GENERATE_INTERNAL_LABEL (indirectlabel1,
++ INDIRECT_LABEL,
++ indirectlabelno++);
++ ASM_GENERATE_INTERNAL_LABEL (indirectlabel2,
++ INDIRECT_LABEL,
++ indirectlabelno++);
++
++ /* Jump. */
++ if (need_bnd_p)
++ fputs ("\tbnd jmp\t", asm_out_file);
++ else
++ fputs ("\tjmp\t", asm_out_file);
++ assemble_name_raw (asm_out_file, indirectlabel2);
++ fputc ('\n', asm_out_file);
++
++ ASM_OUTPUT_INTERNAL_LABEL (asm_out_file, indirectlabel1);
++
++ /* An external function may be called via GOT, instead of PLT. */
++ if (MEM_P (call_op))
++ {
++ struct ix86_address parts;
++ rtx addr = XEXP (call_op, 0);
++ if (ix86_decompose_address (addr, &parts)
++ && parts.base == stack_pointer_rtx)
++ {
++ /* Since call will adjust stack by -UNITS_PER_WORD,
++ we must convert "disp(stack, index, scale)" to
++ "disp+UNITS_PER_WORD(stack, index, scale)". */
++ if (parts.index)
++ {
++ addr = gen_rtx_MULT (Pmode, parts.index,
++ GEN_INT (parts.scale));
++ addr = gen_rtx_PLUS (Pmode, stack_pointer_rtx,
++ addr);
++ }
++ else
++ addr = stack_pointer_rtx;
++
++ rtx disp;
++ if (parts.disp != NULL_RTX)
++ disp = plus_constant (Pmode, parts.disp,
++ UNITS_PER_WORD);
++ else
++ disp = GEN_INT (UNITS_PER_WORD);
++
++ addr = gen_rtx_PLUS (Pmode, addr, disp);
++ call_op = gen_rtx_MEM (GET_MODE (call_op), addr);
++ }
++ }
++
++ output_asm_insn (push_buf, &call_op);
++
++ if (thunk_name != NULL)
++ {
++ if (need_bnd_p)
++ fprintf (asm_out_file, "\tbnd jmp\t%s\n", thunk_name);
++ else
++ fprintf (asm_out_file, "\tjmp\t%s\n", thunk_name);
++ }
++ else
++ output_indirect_thunk (need_bnd_p, regno);
++
++ ASM_OUTPUT_INTERNAL_LABEL (asm_out_file, indirectlabel2);
++
++ /* Call. */
++ if (need_bnd_p)
++ fputs ("\tbnd call\t", asm_out_file);
++ else
++ fputs ("\tcall\t", asm_out_file);
++ assemble_name_raw (asm_out_file, indirectlabel1);
++ fputc ('\n', asm_out_file);
++ }
++}
++
++/* Output indirect branch via a call and return thunk. CALL_OP is
++ the branch target. XASM is the assembly template for CALL_OP.
++ Branch is a tail call if SIBCALL_P is true. */
++
++static void
++ix86_output_indirect_branch (rtx call_op, const char *xasm,
++ bool sibcall_p)
++{
++ if (REG_P (call_op))
++ ix86_output_indirect_branch_via_reg (call_op, sibcall_p);
++ else
++ ix86_output_indirect_branch_via_push (call_op, xasm, sibcall_p);
++}
++/* Output indirect jump. CALL_OP is the jump target. Jump is a
++ function return if RET_P is true. */
++
++const char *
++ix86_output_indirect_jmp (rtx call_op, bool ret_p)
++{
++ if (cfun->machine->indirect_branch_type != indirect_branch_keep)
++ {
++ /* We can't have red-zone if this isn't a function return since
++ "call" in the indirect thunk pushes the return address onto
++ stack, destroying red-zone. */
++ if (!ret_p && ix86_red_zone_size != 0)
++ gcc_unreachable ();
++
++ ix86_output_indirect_branch (call_op, "%0", true);
++ return "";
++ }
++ else
++ return "%!jmp\t%A0";
++}
++
+ /* Output the assembly for a call instruction. */
+
+ const char *
+ ix86_output_call_insn (rtx_insn *insn, rtx call_op)
+ {
+ bool direct_p = constant_call_address_operand (call_op, VOIDmode);
++ bool output_indirect_p
++ = (!TARGET_SEH
++ && cfun->machine->indirect_branch_type != indirect_branch_keep);
+ bool seh_nop_p = false;
+ const char *xasm;
+
+@@ -25823,9 +26386,17 @@ ix86_output_call_insn (rtx_insn *insn, r
+ else if (TARGET_SEH)
+ xasm = "%!rex.W jmp %A0";
+ else
+- xasm = "%!jmp\t%A0";
++ {
++ if (output_indirect_p)
++ xasm = "%0";
++ else
++ xasm = "%!jmp\t%A0";
++ }
+
+- output_asm_insn (xasm, &call_op);
++ if (output_indirect_p && !direct_p)
++ ix86_output_indirect_branch (call_op, xasm, true);
++ else
++ output_asm_insn (xasm, &call_op);
+ return "";
+ }
+
+@@ -25862,9 +26433,17 @@ ix86_output_call_insn (rtx_insn *insn, r
+ if (direct_p)
+ xasm = "%!call\t%P0";
+ else
+- xasm = "%!call\t%A0";
++ {
++ if (output_indirect_p)
++ xasm = "%0";
++ else
++ xasm = "%!call\t%A0";
++ }
+
+- output_asm_insn (xasm, &call_op);
++ if (output_indirect_p && !direct_p)
++ ix86_output_indirect_branch (call_op, xasm, false);
++ else
++ output_asm_insn (xasm, &call_op);
+
+ if (seh_nop_p)
+ return "nop";
+@@ -43014,7 +43593,7 @@ ix86_handle_struct_attribute (tree *node
+ }
+
+ static tree
+-ix86_handle_fndecl_attribute (tree *node, tree name, tree, int,
++ix86_handle_fndecl_attribute (tree *node, tree name, tree args, int,
+ bool *no_add_attrs)
+ {
+ if (TREE_CODE (*node) != FUNCTION_DECL)
+@@ -43023,6 +43602,29 @@ ix86_handle_fndecl_attribute (tree *node
+ name);
+ *no_add_attrs = true;
+ }
++
++ if (is_attribute_p ("indirect_branch", name))
++ {
++ tree cst = TREE_VALUE (args);
++ if (TREE_CODE (cst) != STRING_CST)
++ {
++ warning (OPT_Wattributes,
++ "%qE attribute requires a string constant argument",
++ name);
++ *no_add_attrs = true;
++ }
++ else if (strcmp (TREE_STRING_POINTER (cst), "keep") != 0
++ && strcmp (TREE_STRING_POINTER (cst), "thunk") != 0
++ && strcmp (TREE_STRING_POINTER (cst), "thunk-inline") != 0
++ && strcmp (TREE_STRING_POINTER (cst), "thunk-extern") != 0)
++ {
++ warning (OPT_Wattributes,
++ "argument to %qE attribute is not "
++ "(keep|thunk|thunk-inline|thunk-extern)", name);
++ *no_add_attrs = true;
++ }
++ }
++
+ return NULL_TREE;
+ }
+
+@@ -46915,6 +47517,9 @@ static const struct attribute_spec ix86_
+ false },
+ { "callee_pop_aggregate_return", 1, 1, false, true, true,
+ ix86_handle_callee_pop_aggregate_return, true },
++ { "indirect_branch", 1, 1, true, false, false,
++ ix86_handle_fndecl_attribute, false },
++
+ /* End element. */
+ { NULL, 0, 0, false, false, false, NULL, false }
+ };
+Index: b/src/gcc/config/i386/i386.h
+===================================================================
+--- a/src/gcc/config/i386/i386.h
++++ b/src/gcc/config/i386/i386.h
+@@ -1229,6 +1229,9 @@ extern const char *host_detect_local_cpu
+ /* Base register for access to local variables of the function. */
+ #define FRAME_POINTER_REGNUM 20
+
++#define FIRST_INT_REG AX_REG
++#define LAST_INT_REG SP_REG
++
+ /* First floating point reg */
+ #define FIRST_FLOAT_REG 8
+
+@@ -1465,6 +1468,8 @@ enum reg_class
+ registers. */
+ #define TARGET_SMALL_REGISTER_CLASSES_FOR_MODE_P hook_bool_mode_true
+
++#define LEGACY_INT_REGNO_P(N) (IN_RANGE ((N), FIRST_INT_REG, LAST_INT_REG))
++
+ #define QI_REG_P(X) (REG_P (X) && QI_REGNO_P (REGNO (X)))
+ #define QI_REGNO_P(N) IN_RANGE ((N), AX_REG, BX_REG)
+
+@@ -2550,6 +2555,13 @@ struct GTY(()) machine_function {
+ /* If true, it is safe to not save/restore DRAP register. */
+ BOOL_BITFIELD no_drap_save_restore : 1;
+
++ /* How to generate indirec branch. */
++ ENUM_BITFIELD(indirect_branch) indirect_branch_type : 3;
++
++ /* If true, the current function has local indirect jumps, like
++ "indirect_jump" or "tablejump". */
++ BOOL_BITFIELD has_local_indirect_jump : 1;
++
+ /* During prologue/epilogue generation, the current frame state.
+ Otherwise, the frame state at the end of the prologue. */
+ struct machine_frame_state fs;
+Index: b/src/gcc/config/i386/i386.md
+===================================================================
+--- a/src/gcc/config/i386/i386.md
++++ b/src/gcc/config/i386/i386.md
+@@ -11556,13 +11556,18 @@
+ {
+ if (TARGET_X32)
+ operands[0] = convert_memory_address (word_mode, operands[0]);
++ cfun->machine->has_local_indirect_jump = true;
+ })
+
+ (define_insn "*indirect_jump"
+ [(set (pc) (match_operand:W 0 "indirect_branch_operand" "rBw"))]
+ ""
+- "%!jmp\t%A0"
+- [(set_attr "type" "ibr")
++ "* return ix86_output_indirect_jmp (operands[0], false);"
++ [(set (attr "type")
++ (if_then_else (match_test "(cfun->machine->indirect_branch_type
++ != indirect_branch_keep)")
++ (const_string "multi")
++ (const_string "ibr")))
+ (set_attr "length_immediate" "0")])
+
+ (define_expand "tablejump"
+@@ -11604,14 +11609,19 @@
+
+ if (TARGET_X32)
+ operands[0] = convert_memory_address (word_mode, operands[0]);
++ cfun->machine->has_local_indirect_jump = true;
+ })
+
+ (define_insn "*tablejump_1"
+ [(set (pc) (match_operand:W 0 "indirect_branch_operand" "rBw"))
+ (use (label_ref (match_operand 1)))]
+ ""
+- "%!jmp\t%A0"
+- [(set_attr "type" "ibr")
++ "* return ix86_output_indirect_jmp (operands[0], false);"
++ [(set (attr "type")
++ (if_then_else (match_test "(cfun->machine->indirect_branch_type
++ != indirect_branch_keep)")
++ (const_string "multi")
++ (const_string "ibr")))
+ (set_attr "length_immediate" "0")])
+
+ ;; Convert setcc + movzbl to xor + setcc if operands don't overlap.
+@@ -12198,8 +12208,12 @@
+ [(simple_return)
+ (use (match_operand:SI 0 "register_operand" "r"))]
+ "reload_completed"
+- "%!jmp\t%A0"
+- [(set_attr "type" "ibr")
++ "* return ix86_output_indirect_jmp (operands[0], true);"
++ [(set (attr "type")
++ (if_then_else (match_test "(cfun->machine->indirect_branch_type
++ != indirect_branch_keep)")
++ (const_string "multi")
++ (const_string "ibr")))
+ (set_attr "length_immediate" "0")])
+
+ (define_insn "nop"
+Index: b/src/gcc/config/i386/i386.opt
+===================================================================
+--- a/src/gcc/config/i386/i386.opt
++++ b/src/gcc/config/i386/i386.opt
+@@ -876,3 +876,23 @@ Enum(stack_protector_guard) String(tls)
+
+ EnumValue
+ Enum(stack_protector_guard) String(global) Value(SSP_GLOBAL)
++
++mindirect-branch=
++Target Report RejectNegative Joined Enum(indirect_branch) Var(ix86_indirect_branch) Init(indirect_branch_keep)
++Convert indirect call and jump to call and return thunks.
++
++Enum
++Name(indirect_branch) Type(enum indirect_branch)
++Known indirect branch choices (for use with the -mindirect-branch= option):
++
++EnumValue
++Enum(indirect_branch) String(keep) Value(indirect_branch_keep)
++
++EnumValue
++Enum(indirect_branch) String(thunk) Value(indirect_branch_thunk)
++
++EnumValue
++Enum(indirect_branch) String(thunk-inline) Value(indirect_branch_thunk_inline)
++
++EnumValue
++Enum(indirect_branch) String(thunk-extern) Value(indirect_branch_thunk_extern)
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-1.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-1.c
+@@ -0,0 +1,20 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -mindirect-branch=thunk -fno-pic" } */
++
++typedef void (*dispatch_t)(long offset);
++
++dispatch_t dispatch;
++
++void
++male_indirect_jump (long offset)
++{
++ dispatch(offset);
++}
++
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk_(r|e)ax" { target x32 } } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler "call\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler {\tpause} } } */
++/* { dg-final { scan-assembler {\tlfence} } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-2.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-2.c
+@@ -0,0 +1,20 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -mindirect-branch=thunk -fno-pic" } */
++
++typedef void (*dispatch_t)(long offset);
++
++dispatch_t dispatch[256];
++
++void
++male_indirect_jump (long offset)
++{
++ dispatch[offset](offset);
++}
++
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk_(r|e)ax" { target x32 } } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler "call\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler {\tpause} } } */
++/* { dg-final { scan-assembler {\tlfence} } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-3.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-3.c
+@@ -0,0 +1,21 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -mindirect-branch=thunk -fno-pic" } */
++
++typedef void (*dispatch_t)(long offset);
++
++dispatch_t dispatch;
++
++int
++male_indirect_jump (long offset)
++{
++ dispatch(offset);
++ return 0;
++}
++
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "call\[ \t\]*__x86_indirect_thunk_(r|e)ax" { target x32 } } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler "call\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler {\tpause} } } */
++/* { dg-final { scan-assembler {\tlfence} } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-4.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-4.c
+@@ -0,0 +1,21 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -mindirect-branch=thunk -fno-pic" } */
++
++typedef void (*dispatch_t)(long offset);
++
++dispatch_t dispatch[256];
++
++int
++male_indirect_jump (long offset)
++{
++ dispatch[offset](offset);
++ return 0;
++}
++
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "call\[ \t\]*__x86_indirect_thunk_(r|e)ax" { target x32 } } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler "call\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler {\tpause} } } */
++/* { dg-final { scan-assembler {\tlfence} } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-7.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-7.c
+@@ -0,0 +1,44 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -mindirect-branch=thunk -fno-pic" } */
++
++void func0 (void);
++void func1 (void);
++void func2 (void);
++void func3 (void);
++void func4 (void);
++void func4 (void);
++void func5 (void);
++
++void
++bar (int i)
++{
++ switch (i)
++ {
++ default:
++ func0 ();
++ break;
++ case 1:
++ func1 ();
++ break;
++ case 2:
++ func2 ();
++ break;
++ case 3:
++ func3 ();
++ break;
++ case 4:
++ func4 ();
++ break;
++ case 5:
++ func5 ();
++ break;
++ }
++}
++
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*\.L\[0-9\]+\\(,%" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk_(r|e)ax" { target x32 } } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler "call\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler {\tpause} } } */
++/* { dg-final { scan-assembler {\tlfence} } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-1.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-1.c
+@@ -0,0 +1,23 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -fno-pic" } */
++
++typedef void (*dispatch_t)(long offset);
++
++dispatch_t dispatch;
++
++extern void male_indirect_jump (long)
++ __attribute__ ((indirect_branch("thunk")));
++
++void
++male_indirect_jump (long offset)
++{
++ dispatch(offset);
++}
++
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk_(r|e)ax" { target x32 } } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler "call\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler {\tpause} } } */
++/* { dg-final { scan-assembler {\tlfence} } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-2.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-2.c
+@@ -0,0 +1,21 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -fno-pic" } */
++
++typedef void (*dispatch_t)(long offset);
++
++dispatch_t dispatch[256];
++
++__attribute__ ((indirect_branch("thunk")))
++void
++male_indirect_jump (long offset)
++{
++ dispatch[offset](offset);
++}
++
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk_(r|e)ax" { target x32 } } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler "call\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler {\tpause} } } */
++/* { dg-final { scan-assembler {\tlfence} } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-3.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-3.c
+@@ -0,0 +1,23 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -fno-pic" } */
++
++typedef void (*dispatch_t)(long offset);
++
++dispatch_t dispatch;
++extern int male_indirect_jump (long)
++ __attribute__ ((indirect_branch("thunk-inline")));
++
++int
++male_indirect_jump (long offset)
++{
++ dispatch(offset);
++ return 0;
++}
++
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler-times "jmp\[ \t\]*\.LIND" 2 } } */
++/* { dg-final { scan-assembler-times "call\[ \t\]*\.LIND" 2 } } */
++/* { dg-final { scan-assembler {\tpause} } } */
++/* { dg-final { scan-assembler {\tlfence} } } */
++/* { dg-final { scan-assembler-not "__x86_indirect_thunk" } } */
++/* { dg-final { scan-assembler-not "pushq\[ \t\]%rax" { target x32 } } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-4.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-4.c
+@@ -0,0 +1,22 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -fno-pic" } */
++
++typedef void (*dispatch_t)(long offset);
++
++dispatch_t dispatch[256];
++
++__attribute__ ((indirect_branch("thunk-inline")))
++int
++male_indirect_jump (long offset)
++{
++ dispatch[offset](offset);
++ return 0;
++}
++
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler-times "jmp\[ \t\]*\.LIND" 2 } } */
++/* { dg-final { scan-assembler-times "call\[ \t\]*\.LIND" 2 } } */
++/* { dg-final { scan-assembler {\tpause} } } */
++/* { dg-final { scan-assembler {\tlfence} } } */
++/* { dg-final { scan-assembler-not "__x86_indirect_thunk" } } */
++/* { dg-final { scan-assembler-not "pushq\[ \t\]%rax" { target x32 } } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-5.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-5.c
+@@ -0,0 +1,22 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -fno-pic" } */
++
++typedef void (*dispatch_t)(long offset);
++
++dispatch_t dispatch;
++extern int male_indirect_jump (long)
++ __attribute__ ((indirect_branch("thunk-extern")));
++
++int
++male_indirect_jump (long offset)
++{
++ dispatch(offset);
++ return 0;
++}
++
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler-times "jmp\[ \t\]*\.LIND" 1 { target { ! x32 } } } } */
++/* { dg-final { scan-assembler-times "call\[ \t\]*\.LIND" 1 { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "call\[ \t\]*__x86_indirect_thunk_(r|e)ax" { target x32 } } } */
++/* { dg-final { scan-assembler-not {\t(lfence|pause)} } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-6.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-6.c
+@@ -0,0 +1,21 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -fno-pic" } */
++
++typedef void (*dispatch_t)(long offset);
++
++dispatch_t dispatch[256];
++
++__attribute__ ((indirect_branch("thunk-extern")))
++int
++male_indirect_jump (long offset)
++{
++ dispatch[offset](offset);
++ return 0;
++}
++
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler-times "jmp\[ \t\]*\.LIND" 1 { target { ! x32 } } } } */
++/* { dg-final { scan-assembler-times "call\[ \t\]*\.LIND" 1 { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "call\[ \t\]*__x86_indirect_thunk_(r|e)ax" { target x32 } } } */
++/* { dg-final { scan-assembler-not {\t(lfence|pause)} } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-7.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-7.c
+@@ -0,0 +1,44 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -fno-pic" } */
++
++void func0 (void);
++void func1 (void);
++void func2 (void);
++void func3 (void);
++void func4 (void);
++void func4 (void);
++void func5 (void);
++
++__attribute__ ((indirect_branch("thunk-extern")))
++void
++bar (int i)
++{
++ switch (i)
++ {
++ default:
++ func0 ();
++ break;
++ case 1:
++ func1 ();
++ break;
++ case 2:
++ func2 ();
++ break;
++ case 3:
++ func3 ();
++ break;
++ case 4:
++ func4 ();
++ break;
++ case 5:
++ func5 ();
++ break;
++ }
++}
++
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*\.L\[0-9\]+\\(,%" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk_(r|e)ax" { target x32 } } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk" } } */
++/* { dg-final { scan-assembler-not {\t(lfence|pause)} } } */
++/* { dg-final { scan-assembler-not "jmp\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler-not "call\[ \t\]*\.LIND" } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-8.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-8.c
+@@ -0,0 +1,42 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -mindirect-branch=thunk -fno-pic" } */
++
++void func0 (void);
++void func1 (void);
++void func2 (void);
++void func3 (void);
++void func4 (void);
++void func4 (void);
++void func5 (void);
++
++__attribute__ ((indirect_branch("keep")))
++void
++bar (int i)
++{
++ switch (i)
++ {
++ default:
++ func0 ();
++ break;
++ case 1:
++ func1 ();
++ break;
++ case 2:
++ func2 ();
++ break;
++ case 3:
++ func3 ();
++ break;
++ case 4:
++ func4 ();
++ break;
++ case 5:
++ func5 ();
++ break;
++ }
++}
++
++/* { dg-final { scan-assembler-not "__x86_indirect_thunk" } } */
++/* { dg-final { scan-assembler-not {\t(lfence|pause)} } } */
++/* { dg-final { scan-assembler-not "jmp\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler-not "call\[ \t\]*\.LIND" } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-1.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-1.c
+@@ -0,0 +1,20 @@
++/* { dg-do compile { target { ! x32 } } } */
++/* { dg-options "-O2 -mindirect-branch=thunk -fcheck-pointer-bounds -mmpx -fno-pic" } */
++
++void (*dispatch) (char *);
++char buf[10];
++
++void
++foo (void)
++{
++ dispatch (buf);
++}
++
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "pushq\[ \t\]%rax" { target x32 } } } */
++/* { dg-final { scan-assembler "bnd jmp\[ \t\]*__x86_indirect_thunk_bnd" } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler "bnd call\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler "bnd ret" } } */
++/* { dg-final { scan-assembler {\tpause} } } */
++/* { dg-final { scan-assembler {\tlfence} } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-2.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-2.c
+@@ -0,0 +1,21 @@
++/* { dg-do compile { target { ! x32 } } } */
++/* { dg-options "-O2 -mindirect-branch=thunk -fcheck-pointer-bounds -mmpx -fno-pic" } */
++
++void (*dispatch) (char *);
++char buf[10];
++
++int
++foo (void)
++{
++ dispatch (buf);
++ return 0;
++}
++
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "pushq\[ \t\]%rax" { target x32 } } } */
++/* { dg-final { scan-assembler "bnd jmp\[ \t\]*__x86_indirect_thunk_bnd" } } */
++/* { dg-final { scan-assembler "bnd jmp\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler "bnd call\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler "bnd ret" } } */
++/* { dg-final { scan-assembler {\tpause} } } */
++/* { dg-final { scan-assembler {\tlfence} } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-1.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-1.c
+@@ -0,0 +1,19 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -mindirect-branch=thunk-extern -fno-pic" } */
++
++typedef void (*dispatch_t)(long offset);
++
++dispatch_t dispatch;
++
++void
++male_indirect_jump (long offset)
++{
++ dispatch(offset);
++}
++
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk_(r|e)ax" { target x32 } } } */
++/* { dg-final { scan-assembler-not {\t(lfence|pause)} } } */
++/* { dg-final { scan-assembler-not "jmp\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler-not "call\[ \t\]*\.LIND" } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-2.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-2.c
+@@ -0,0 +1,19 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -mindirect-branch=thunk-extern -fno-pic" } */
++
++typedef void (*dispatch_t)(long offset);
++
++dispatch_t dispatch[256];
++
++void
++male_indirect_jump (long offset)
++{
++ dispatch[offset](offset);
++}
++
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk_(r|e)ax" { target x32 } } } */
++/* { dg-final { scan-assembler-not {\t(lfence|pause)} } } */
++/* { dg-final { scan-assembler-not "jmp\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler-not "call\[ \t\]*\.LIND" } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-3.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-3.c
+@@ -0,0 +1,20 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -mindirect-branch=thunk-extern -fno-pic" } */
++
++typedef void (*dispatch_t)(long offset);
++
++dispatch_t dispatch;
++
++int
++male_indirect_jump (long offset)
++{
++ dispatch(offset);
++ return 0;
++}
++
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler-times "jmp\[ \t\]*\.LIND" 1 { target { ! x32 } } } } */
++/* { dg-final { scan-assembler-times "call\[ \t\]*\.LIND" 1 { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "call\[ \t\]*__x86_indirect_thunk_(r|e)ax" { target x32 } } } */
++/* { dg-final { scan-assembler-not {\t(lfence|pause)} } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-4.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-4.c
+@@ -0,0 +1,20 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -mindirect-branch=thunk-extern -fno-pic" } */
++
++typedef void (*dispatch_t)(long offset);
++
++dispatch_t dispatch[256];
++
++int
++male_indirect_jump (long offset)
++{
++ dispatch[offset](offset);
++ return 0;
++}
++
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler-times "jmp\[ \t\]*\.LIND" 1 { target { ! x32 } } } } */
++/* { dg-final { scan-assembler-times "call\[ \t\]*\.LIND" 1 { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "call\[ \t\]*__x86_indirect_thunk_(r|e)ax" { target x32 } } } */
++/* { dg-final { scan-assembler-not {\t(lfence|pause)} } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-7.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-7.c
+@@ -0,0 +1,43 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -mindirect-branch=thunk-extern -fno-pic" } */
++
++void func0 (void);
++void func1 (void);
++void func2 (void);
++void func3 (void);
++void func4 (void);
++void func4 (void);
++void func5 (void);
++
++void
++bar (int i)
++{
++ switch (i)
++ {
++ default:
++ func0 ();
++ break;
++ case 1:
++ func1 ();
++ break;
++ case 2:
++ func2 ();
++ break;
++ case 3:
++ func3 ();
++ break;
++ case 4:
++ func4 ();
++ break;
++ case 5:
++ func5 ();
++ break;
++ }
++}
++
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*\.L\[0-9\]+\\(,%" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk_(r|e)ax" { target x32 } } } */
++/* { dg-final { scan-assembler-not {\t(lfence|pause)} } } */
++/* { dg-final { scan-assembler-not "jmp\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler-not "call\[ \t\]*\.LIND" } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-1.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-1.c
+@@ -0,0 +1,20 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -mindirect-branch=thunk-inline -fno-pic" } */
++
++typedef void (*dispatch_t)(long offset);
++
++dispatch_t dispatch;
++
++void
++male_indirect_jump (long offset)
++{
++ dispatch(offset);
++}
++
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler "call\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler {\tpause} } } */
++/* { dg-final { scan-assembler {\tlfence} } } */
++/* { dg-final { scan-assembler-not "__x86_indirect_thunk" } } */
++/* { dg-final { scan-assembler-not "pushq\[ \t\]%rax" { target x32 } } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-2.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-2.c
+@@ -0,0 +1,20 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -mindirect-branch=thunk-inline -fno-pic" } */
++
++typedef void (*dispatch_t)(long offset);
++
++dispatch_t dispatch[256];
++
++void
++male_indirect_jump (long offset)
++{
++ dispatch[offset](offset);
++}
++
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler "call\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler {\tpause} } } */
++/* { dg-final { scan-assembler {\tlfence} } } */
++/* { dg-final { scan-assembler-not "__x86_indirect_thunk" } } */
++/* { dg-final { scan-assembler-not "pushq\[ \t\]%rax" { target x32 } } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-3.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-3.c
+@@ -0,0 +1,21 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -mindirect-branch=thunk-inline -fno-pic" } */
++
++typedef void (*dispatch_t)(long offset);
++
++dispatch_t dispatch;
++
++int
++male_indirect_jump (long offset)
++{
++ dispatch(offset);
++ return 0;
++}
++
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler-times "jmp\[ \t\]*\.LIND" 2 } } */
++/* { dg-final { scan-assembler-times "call\[ \t\]*\.LIND" 2 } } */
++/* { dg-final { scan-assembler-times {\tpause} 1 } } */
++/* { dg-final { scan-assembler-times {\tlfence} 1 } } */
++/* { dg-final { scan-assembler-not "__x86_indirect_thunk" } } */
++/* { dg-final { scan-assembler-not "pushq\[ \t\]%rax" { target x32 } } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-4.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-4.c
+@@ -0,0 +1,21 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -mindirect-branch=thunk-inline -fno-pic" } */
++
++typedef void (*dispatch_t)(long offset);
++
++dispatch_t dispatch[256];
++
++int
++male_indirect_jump (long offset)
++{
++ dispatch[offset](offset);
++ return 0;
++}
++
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler-times "jmp\[ \t\]*\.LIND" 2 } } */
++/* { dg-final { scan-assembler-times "call\[ \t\]*\.LIND" 2 } } */
++/* { dg-final { scan-assembler-times {\tpause} 1 } } */
++/* { dg-final { scan-assembler-times {\tlfence} 1 } } */
++/* { dg-final { scan-assembler-not "__x86_indirect_thunk" } } */
++/* { dg-final { scan-assembler-not "pushq\[ \t\]%rax" { target x32 } } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-7.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-7.c
+@@ -0,0 +1,44 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -mindirect-branch=thunk-inline -fno-pic" } */
++
++void func0 (void);
++void func1 (void);
++void func2 (void);
++void func3 (void);
++void func4 (void);
++void func4 (void);
++void func5 (void);
++
++void
++bar (int i)
++{
++ switch (i)
++ {
++ default:
++ func0 ();
++ break;
++ case 1:
++ func1 ();
++ break;
++ case 2:
++ func2 ();
++ break;
++ case 3:
++ func3 ();
++ break;
++ case 4:
++ func4 ();
++ break;
++ case 5:
++ func5 ();
++ break;
++ }
++}
++
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*\.L\[0-9\]+\\(,%" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler-not "pushq\[ \t\]%rax" { target x32 } } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler "call\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler {\tpause} } } */
++/* { dg-final { scan-assembler {\tlfence} } } */
++/* { dg-final { scan-assembler-not "__x86_indirect_thunk" } } */
diff --git a/development/gcc5/patches/0006-x86-Add-mfunction-return-doc.diff b/development/gcc5/patches/0006-x86-Add-mfunction-return-doc.diff
new file mode 100644
index 0000000000..b40d524892
--- /dev/null
+++ b/development/gcc5/patches/0006-x86-Add-mfunction-return-doc.diff
@@ -0,0 +1,300 @@
+From 357311dd400f7f72d2132f2f94161ece39bf08c6 Mon Sep 17 00:00:00 2001
+From: hjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>
+Date: Tue, 16 Jan 2018 11:10:44 +0000
+Subject: [PATCH 6/9] x86: Add -mfunction-return=
+
+Add -mfunction-return= option to convert function return to call and
+return thunks. The default is 'keep', which keeps function return
+unmodified. 'thunk' converts function return to call and return thunk.
+'thunk-inline' converts function return to inlined call and return thunk.
+'thunk-extern' converts function return to external call and return
+thunk provided in a separate object file. You can control this behavior
+for a specific function by using the function attribute function_return.
+
+Function return thunk is the same as memory thunk for -mindirect-branch=
+where the return address is at the top of the stack:
+
+__x86_return_thunk:
+ call L2
+L1:
+ pause
+ lfence
+ jmp L1
+L2:
+ lea 8(%rsp), %rsp|lea 4(%esp), %esp
+ ret
+
+and function return becomes
+
+ jmp __x86_return_thunk
+
+-mindirect-branch= tests are updated with -mfunction-return=keep to
+avoid false test failures when -mfunction-return=thunk is added to
+RUNTESTFLAGS for "make check".
+
+gcc/
+
+ Backport from mainline
+ 2018-01-14 H.J. Lu <hongjiu.lu@intel.com>
+
+ * config/i386/i386-protos.h (ix86_output_function_return): New.
+ * config/i386/i386.c (ix86_set_indirect_branch_type): Also
+ set function_return_type.
+ (indirect_thunk_name): Add ret_p to indicate thunk for function
+ return.
+ (output_indirect_thunk_function): Pass false to
+ indirect_thunk_name.
+ (ix86_output_indirect_branch_via_reg): Likewise.
+ (ix86_output_indirect_branch_via_push): Likewise.
+ (output_indirect_thunk_function): Create alias for function
+ return thunk if regno < 0.
+ (ix86_output_function_return): New function.
+ (ix86_handle_fndecl_attribute): Handle function_return.
+ (ix86_attribute_table): Add function_return.
+ * config/i386/i386.h (machine_function): Add
+ function_return_type.
+ * config/i386/i386.md (simple_return_internal): Use
+ ix86_output_function_return.
+ (simple_return_internal_long): Likewise.
+ * config/i386/i386.opt (mfunction-return=): New option.
+ (indirect_branch): Mention -mfunction-return=.
+ * doc/extend.texi: Document function_return function attribute.
+ * doc/invoke.texi: Document -mfunction-return= option.
+
+gcc/testsuite/
+
+ Backport from mainline
+ 2018-01-14 H.J. Lu <hongjiu.lu@intel.com>
+
+ * gcc.target/i386/indirect-thunk-1.c (dg-options): Add
+ -mfunction-return=keep.
+ * gcc.target/i386/indirect-thunk-2.c: Likewise.
+ * gcc.target/i386/indirect-thunk-3.c: Likewise.
+ * gcc.target/i386/indirect-thunk-4.c: Likewise.
+ * gcc.target/i386/indirect-thunk-5.c: Likewise.
+ * gcc.target/i386/indirect-thunk-6.c: Likewise.
+ * gcc.target/i386/indirect-thunk-7.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-1.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-2.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-3.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-4.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-5.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-6.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-7.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-8.c: Likewise.
+ * gcc.target/i386/indirect-thunk-bnd-1.c: Likewise.
+ * gcc.target/i386/indirect-thunk-bnd-2.c: Likewise.
+ * gcc.target/i386/indirect-thunk-bnd-3.c: Likewise.
+ * gcc.target/i386/indirect-thunk-bnd-4.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-1.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-2.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-3.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-4.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-5.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-6.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-7.c: Likewise.
+ * gcc.target/i386/indirect-thunk-inline-1.c: Likewise.
+ * gcc.target/i386/indirect-thunk-inline-2.c: Likewise.
+ * gcc.target/i386/indirect-thunk-inline-3.c: Likewise.
+ * gcc.target/i386/indirect-thunk-inline-4.c: Likewise.
+ * gcc.target/i386/indirect-thunk-inline-5.c: Likewise.
+ * gcc.target/i386/indirect-thunk-inline-6.c: Likewise.
+ * gcc.target/i386/indirect-thunk-inline-7.c: Likewise.
+ * gcc.target/i386/ret-thunk-1.c: New test.
+ * gcc.target/i386/ret-thunk-10.c: Likewise.
+ * gcc.target/i386/ret-thunk-11.c: Likewise.
+ * gcc.target/i386/ret-thunk-12.c: Likewise.
+ * gcc.target/i386/ret-thunk-13.c: Likewise.
+ * gcc.target/i386/ret-thunk-14.c: Likewise.
+ * gcc.target/i386/ret-thunk-15.c: Likewise.
+ * gcc.target/i386/ret-thunk-16.c: Likewise.
+ * gcc.target/i386/ret-thunk-2.c: Likewise.
+ * gcc.target/i386/ret-thunk-3.c: Likewise.
+ * gcc.target/i386/ret-thunk-4.c: Likewise.
+ * gcc.target/i386/ret-thunk-5.c: Likewise.
+ * gcc.target/i386/ret-thunk-6.c: Likewise.
+ * gcc.target/i386/ret-thunk-7.c: Likewise.
+ * gcc.target/i386/ret-thunk-8.c: Likewise.
+ * gcc.target/i386/ret-thunk-9.c: Likewise.
+
+i386: Don't use ASM_OUTPUT_DEF for TARGET_MACHO
+
+ASM_OUTPUT_DEF isn't defined for TARGET_MACHO. Use ASM_OUTPUT_LABEL to
+generate the __x86_return_thunk label, instead of the set directive.
+Update testcase to remove the __x86_return_thunk label check. Since
+-fno-pic is ignored on Darwin, update testcases to sscan or "push"
+only on Linux.
+
+gcc/
+
+ Backport from mainline
+ 2018-01-15 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR target/83839
+ * config/i386/i386.c (output_indirect_thunk_function): Use
+ ASM_OUTPUT_LABEL, instead of ASM_OUTPUT_DEF, for TARGET_MACHO
+ for __x86.return_thunk.
+
+gcc/testsuite/
+
+ Backport from mainline
+ 2018-01-15 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR target/83839
+ * gcc.target/i386/indirect-thunk-1.c: Scan for "push" only on
+ Linux.
+ * gcc.target/i386/indirect-thunk-2.c: Likewise.
+ * gcc.target/i386/indirect-thunk-3.c: Likewise.
+ * gcc.target/i386/indirect-thunk-4.c: Likewise.
+ * gcc.target/i386/indirect-thunk-7.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-1.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-2.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-5.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-6.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-7.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-1.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-2.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-3.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-4.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-7.c: Likewise.
+ * gcc.target/i386/indirect-thunk-register-1.c: Likewise.
+ * gcc.target/i386/indirect-thunk-register-3.c: Likewise.
+ * gcc.target/i386/indirect-thunk-register-4.c: Likewise.
+ * gcc.target/i386/ret-thunk-10.c: Likewise.
+ * gcc.target/i386/ret-thunk-11.c: Likewise.
+ * gcc.target/i386/ret-thunk-12.c: Likewise.
+ * gcc.target/i386/ret-thunk-13.c: Likewise.
+ * gcc.target/i386/ret-thunk-14.c: Likewise.
+ * gcc.target/i386/ret-thunk-15.c: Likewise.
+ * gcc.target/i386/ret-thunk-9.c: Don't check the
+ __x86_return_thunk label.
+ Scan for "push" only for Linux.
+
+
+git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-7-branch@256734 138bc75d-0d04-0410-961f-82ee72b054a4
+
+[Ubuntu note: Dropped indirect-thunk-5.c, indirect-thunk-6.c,
+ indirect-thunk-bnd-3.c, indirect-thunk-bnd-4.c,
+ indirect-thunk-extern-5.c, indirect-thunk-extern-6.c,
+ indirect-thunk-inline-5.c, and indirect-thunk-inline-6.c tests due
+ to gcc 5.4 and earlier not supporting the -fno-plt option.
+ --sbeattie,]
+
+---
+ src/gcc/config/i386/i386-protos.h | 1
+ src/gcc/config/i386/i386.c | 152 +++++++++++-
+ src/gcc/config/i386/i386.h | 3
+ src/gcc/config/i386/i386.md | 9
+ src/gcc/config/i386/i386.opt | 6
+ src/gcc/doc/extend.texi | 9
+ src/gcc/doc/invoke.texi | 13 -
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-1.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-2.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-3.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-4.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-7.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-1.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-2.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-3.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-4.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-5.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-6.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-7.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-8.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-1.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-2.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-1.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-2.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-3.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-4.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-7.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-1.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-2.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-3.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-4.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-7.c | 4
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-1.c | 13 +
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-10.c | 23 +
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-11.c | 23 +
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-12.c | 22 +
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-13.c | 22 +
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-14.c | 22 +
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-15.c | 22 +
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-16.c | 18 +
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-2.c | 13 +
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-3.c | 12
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-4.c | 12
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-5.c | 15 +
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-6.c | 14 +
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-7.c | 13 +
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-8.c | 14 +
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-9.c | 24 +
+ 48 files changed, 507 insertions(+), 66 deletions(-)
+ create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-1.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-10.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-11.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-12.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-13.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-14.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-15.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-16.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-2.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-3.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-4.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-5.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-6.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-7.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-8.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-9.c
+
+Index: b/src/gcc/doc/extend.texi
+===================================================================
+--- a/src/gcc/doc/extend.texi
++++ b/src/gcc/doc/extend.texi
+@@ -4129,6 +4129,15 @@ call and jump to call and return thunk.
+ indirect call and jump to inlined call and return thunk.
+ @samp{thunk-extern} converts indirect call and jump to external call
+ and return thunk provided in a separate object file.
++
++@item function_return("@var{choice}")
++@cindex @code{function_return} function attribute, x86
++On x86 targets, the @code{function_return} attribute causes the compiler
++to convert function return with @var{choice}. @samp{keep} keeps function
++return unmodified. @samp{thunk} converts function return to call and
++return thunk. @samp{thunk-inline} converts function return to inlined
++call and return thunk. @samp{thunk-extern} converts function return to
++external call and return thunk provided in a separate object file.
+ @end table
+
+ On the PowerPC, the following options are allowed:
+Index: b/src/gcc/doc/invoke.texi
+===================================================================
+--- a/src/gcc/doc/invoke.texi
++++ b/src/gcc/doc/invoke.texi
+@@ -1091,7 +1091,7 @@ See RS/6000 and PowerPC Options.
+ -msse2avx -mfentry -mrecord-mcount -mnop-mcount -m8bit-idiv @gol
+ -mavx256-split-unaligned-load -mavx256-split-unaligned-store @gol
+ -malign-data=@var{type} -mstack-protector-guard=@var{guard} @gol
+--mindirect-branch=@var{choice}}
++-mindirect-branch=@var{choice} -mfunction-return=@var{choice}}
+
+ @emph{x86 Windows Options}
+ @gccoptlist{-mconsole -mcygwin -mno-cygwin -mdll @gol
+@@ -24029,6 +24029,17 @@ to external call and return thunk provid
+ You can control this behavior for a specific function by using the
+ function attribute @code{indirect_branch}. @xref{Function Attributes}.
+
++@item -mfunction-return=@var{choice}
++@opindex -mfunction-return
++Convert function return with @var{choice}. The default is @samp{keep},
++which keeps function return unmodified. @samp{thunk} converts function
++return to call and return thunk. @samp{thunk-inline} converts function
++return to inlined call and return thunk. @samp{thunk-extern} converts
++function return to external call and return thunk provided in a separate
++object file. You can control this behavior for a specific function by
++using the function attribute @code{function_return}.
++@xref{Function Attributes}.
++
+ @end table
+
+ @c man end
diff --git a/development/gcc5/patches/0006-x86-Add-mfunction-return.diff b/development/gcc5/patches/0006-x86-Add-mfunction-return.diff
new file mode 100644
index 0000000000..1883cc6a51
--- /dev/null
+++ b/development/gcc5/patches/0006-x86-Add-mfunction-return.diff
@@ -0,0 +1,1409 @@
+From 357311dd400f7f72d2132f2f94161ece39bf08c6 Mon Sep 17 00:00:00 2001
+From: hjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>
+Date: Tue, 16 Jan 2018 11:10:44 +0000
+Subject: [PATCH 6/9] x86: Add -mfunction-return=
+
+Add -mfunction-return= option to convert function return to call and
+return thunks. The default is 'keep', which keeps function return
+unmodified. 'thunk' converts function return to call and return thunk.
+'thunk-inline' converts function return to inlined call and return thunk.
+'thunk-extern' converts function return to external call and return
+thunk provided in a separate object file. You can control this behavior
+for a specific function by using the function attribute function_return.
+
+Function return thunk is the same as memory thunk for -mindirect-branch=
+where the return address is at the top of the stack:
+
+__x86_return_thunk:
+ call L2
+L1:
+ pause
+ lfence
+ jmp L1
+L2:
+ lea 8(%rsp), %rsp|lea 4(%esp), %esp
+ ret
+
+and function return becomes
+
+ jmp __x86_return_thunk
+
+-mindirect-branch= tests are updated with -mfunction-return=keep to
+avoid false test failures when -mfunction-return=thunk is added to
+RUNTESTFLAGS for "make check".
+
+gcc/
+
+ Backport from mainline
+ 2018-01-14 H.J. Lu <hongjiu.lu@intel.com>
+
+ * config/i386/i386-protos.h (ix86_output_function_return): New.
+ * config/i386/i386.c (ix86_set_indirect_branch_type): Also
+ set function_return_type.
+ (indirect_thunk_name): Add ret_p to indicate thunk for function
+ return.
+ (output_indirect_thunk_function): Pass false to
+ indirect_thunk_name.
+ (ix86_output_indirect_branch_via_reg): Likewise.
+ (ix86_output_indirect_branch_via_push): Likewise.
+ (output_indirect_thunk_function): Create alias for function
+ return thunk if regno < 0.
+ (ix86_output_function_return): New function.
+ (ix86_handle_fndecl_attribute): Handle function_return.
+ (ix86_attribute_table): Add function_return.
+ * config/i386/i386.h (machine_function): Add
+ function_return_type.
+ * config/i386/i386.md (simple_return_internal): Use
+ ix86_output_function_return.
+ (simple_return_internal_long): Likewise.
+ * config/i386/i386.opt (mfunction-return=): New option.
+ (indirect_branch): Mention -mfunction-return=.
+ * doc/extend.texi: Document function_return function attribute.
+ * doc/invoke.texi: Document -mfunction-return= option.
+
+gcc/testsuite/
+
+ Backport from mainline
+ 2018-01-14 H.J. Lu <hongjiu.lu@intel.com>
+
+ * gcc.target/i386/indirect-thunk-1.c (dg-options): Add
+ -mfunction-return=keep.
+ * gcc.target/i386/indirect-thunk-2.c: Likewise.
+ * gcc.target/i386/indirect-thunk-3.c: Likewise.
+ * gcc.target/i386/indirect-thunk-4.c: Likewise.
+ * gcc.target/i386/indirect-thunk-5.c: Likewise.
+ * gcc.target/i386/indirect-thunk-6.c: Likewise.
+ * gcc.target/i386/indirect-thunk-7.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-1.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-2.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-3.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-4.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-5.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-6.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-7.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-8.c: Likewise.
+ * gcc.target/i386/indirect-thunk-bnd-1.c: Likewise.
+ * gcc.target/i386/indirect-thunk-bnd-2.c: Likewise.
+ * gcc.target/i386/indirect-thunk-bnd-3.c: Likewise.
+ * gcc.target/i386/indirect-thunk-bnd-4.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-1.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-2.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-3.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-4.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-5.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-6.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-7.c: Likewise.
+ * gcc.target/i386/indirect-thunk-inline-1.c: Likewise.
+ * gcc.target/i386/indirect-thunk-inline-2.c: Likewise.
+ * gcc.target/i386/indirect-thunk-inline-3.c: Likewise.
+ * gcc.target/i386/indirect-thunk-inline-4.c: Likewise.
+ * gcc.target/i386/indirect-thunk-inline-5.c: Likewise.
+ * gcc.target/i386/indirect-thunk-inline-6.c: Likewise.
+ * gcc.target/i386/indirect-thunk-inline-7.c: Likewise.
+ * gcc.target/i386/ret-thunk-1.c: New test.
+ * gcc.target/i386/ret-thunk-10.c: Likewise.
+ * gcc.target/i386/ret-thunk-11.c: Likewise.
+ * gcc.target/i386/ret-thunk-12.c: Likewise.
+ * gcc.target/i386/ret-thunk-13.c: Likewise.
+ * gcc.target/i386/ret-thunk-14.c: Likewise.
+ * gcc.target/i386/ret-thunk-15.c: Likewise.
+ * gcc.target/i386/ret-thunk-16.c: Likewise.
+ * gcc.target/i386/ret-thunk-2.c: Likewise.
+ * gcc.target/i386/ret-thunk-3.c: Likewise.
+ * gcc.target/i386/ret-thunk-4.c: Likewise.
+ * gcc.target/i386/ret-thunk-5.c: Likewise.
+ * gcc.target/i386/ret-thunk-6.c: Likewise.
+ * gcc.target/i386/ret-thunk-7.c: Likewise.
+ * gcc.target/i386/ret-thunk-8.c: Likewise.
+ * gcc.target/i386/ret-thunk-9.c: Likewise.
+
+i386: Don't use ASM_OUTPUT_DEF for TARGET_MACHO
+
+ASM_OUTPUT_DEF isn't defined for TARGET_MACHO. Use ASM_OUTPUT_LABEL to
+generate the __x86_return_thunk label, instead of the set directive.
+Update testcase to remove the __x86_return_thunk label check. Since
+-fno-pic is ignored on Darwin, update testcases to sscan or "push"
+only on Linux.
+
+gcc/
+
+ Backport from mainline
+ 2018-01-15 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR target/83839
+ * config/i386/i386.c (output_indirect_thunk_function): Use
+ ASM_OUTPUT_LABEL, instead of ASM_OUTPUT_DEF, for TARGET_MACHO
+ for __x86.return_thunk.
+
+gcc/testsuite/
+
+ Backport from mainline
+ 2018-01-15 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR target/83839
+ * gcc.target/i386/indirect-thunk-1.c: Scan for "push" only on
+ Linux.
+ * gcc.target/i386/indirect-thunk-2.c: Likewise.
+ * gcc.target/i386/indirect-thunk-3.c: Likewise.
+ * gcc.target/i386/indirect-thunk-4.c: Likewise.
+ * gcc.target/i386/indirect-thunk-7.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-1.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-2.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-5.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-6.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-7.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-1.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-2.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-3.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-4.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-7.c: Likewise.
+ * gcc.target/i386/indirect-thunk-register-1.c: Likewise.
+ * gcc.target/i386/indirect-thunk-register-3.c: Likewise.
+ * gcc.target/i386/indirect-thunk-register-4.c: Likewise.
+ * gcc.target/i386/ret-thunk-10.c: Likewise.
+ * gcc.target/i386/ret-thunk-11.c: Likewise.
+ * gcc.target/i386/ret-thunk-12.c: Likewise.
+ * gcc.target/i386/ret-thunk-13.c: Likewise.
+ * gcc.target/i386/ret-thunk-14.c: Likewise.
+ * gcc.target/i386/ret-thunk-15.c: Likewise.
+ * gcc.target/i386/ret-thunk-9.c: Don't check the
+ __x86_return_thunk label.
+ Scan for "push" only for Linux.
+
+
+git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-7-branch@256734 138bc75d-0d04-0410-961f-82ee72b054a4
+
+[Ubuntu note: Dropped indirect-thunk-5.c, indirect-thunk-6.c,
+ indirect-thunk-bnd-3.c, indirect-thunk-bnd-4.c,
+ indirect-thunk-extern-5.c, indirect-thunk-extern-6.c,
+ indirect-thunk-inline-5.c, and indirect-thunk-inline-6.c tests due
+ to gcc 5.4 and earlier not supporting the -fno-plt option.
+ --sbeattie,]
+
+---
+ src/gcc/config/i386/i386-protos.h | 1
+ src/gcc/config/i386/i386.c | 152 +++++++++++-
+ src/gcc/config/i386/i386.h | 3
+ src/gcc/config/i386/i386.md | 9
+ src/gcc/config/i386/i386.opt | 6
+ src/gcc/doc/extend.texi | 9
+ src/gcc/doc/invoke.texi | 13 -
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-1.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-2.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-3.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-4.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-7.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-1.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-2.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-3.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-4.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-5.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-6.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-7.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-8.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-1.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-2.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-1.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-2.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-3.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-4.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-7.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-1.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-2.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-3.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-4.c | 4
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-7.c | 4
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-1.c | 13 +
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-10.c | 23 +
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-11.c | 23 +
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-12.c | 22 +
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-13.c | 22 +
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-14.c | 22 +
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-15.c | 22 +
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-16.c | 18 +
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-2.c | 13 +
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-3.c | 12
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-4.c | 12
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-5.c | 15 +
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-6.c | 14 +
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-7.c | 13 +
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-8.c | 14 +
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-9.c | 24 +
+ 48 files changed, 507 insertions(+), 66 deletions(-)
+ create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-1.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-10.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-11.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-12.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-13.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-14.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-15.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-16.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-2.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-3.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-4.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-5.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-6.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-7.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-8.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-9.c
+
+Index: b/src/gcc/config/i386/i386-protos.h
+===================================================================
+--- a/src/gcc/config/i386/i386-protos.h
++++ b/src/gcc/config/i386/i386-protos.h
+@@ -307,6 +307,7 @@ extern enum attr_cpu ix86_schedule;
+
+ extern const char * ix86_output_call_insn (rtx_insn *insn, rtx call_op);
+ extern const char * ix86_output_indirect_jmp (rtx call_op, bool ret_p);
++extern const char * ix86_output_function_return (bool long_p);
+
+ #ifdef RTX_CODE
+ /* Target data for multipass lookahead scheduling.
+Index: b/src/gcc/config/i386/i386.c
+===================================================================
+--- a/src/gcc/config/i386/i386.c
++++ b/src/gcc/config/i386/i386.c
+@@ -5166,6 +5166,31 @@ ix86_set_indirect_branch_type (tree fnde
+ else
+ cfun->machine->indirect_branch_type = ix86_indirect_branch;
+ }
++
++ if (cfun->machine->function_return_type == indirect_branch_unset)
++ {
++ tree attr = lookup_attribute ("function_return",
++ DECL_ATTRIBUTES (fndecl));
++ if (attr != NULL)
++ {
++ tree args = TREE_VALUE (attr);
++ if (args == NULL)
++ gcc_unreachable ();
++ tree cst = TREE_VALUE (args);
++ if (strcmp (TREE_STRING_POINTER (cst), "keep") == 0)
++ cfun->machine->function_return_type = indirect_branch_keep;
++ else if (strcmp (TREE_STRING_POINTER (cst), "thunk") == 0)
++ cfun->machine->function_return_type = indirect_branch_thunk;
++ else if (strcmp (TREE_STRING_POINTER (cst), "thunk-inline") == 0)
++ cfun->machine->function_return_type = indirect_branch_thunk_inline;
++ else if (strcmp (TREE_STRING_POINTER (cst), "thunk-extern") == 0)
++ cfun->machine->function_return_type = indirect_branch_thunk_extern;
++ else
++ gcc_unreachable ();
++ }
++ else
++ cfun->machine->function_return_type = ix86_function_return;
++ }
+ }
+
+ /* Establish appropriate back-end context for processing the function
+@@ -9753,8 +9778,12 @@ static int indirect_thunks_bnd_used;
+ /* Fills in the label name that should be used for the indirect thunk. */
+
+ static void
+-indirect_thunk_name (char name[32], int regno, bool need_bnd_p)
++indirect_thunk_name (char name[32], int regno, bool need_bnd_p,
++ bool ret_p)
+ {
++ if (regno >= 0 && ret_p)
++ gcc_unreachable ();
++
+ if (USE_HIDDEN_LINKONCE)
+ {
+ const char *bnd = need_bnd_p ? "_bnd" : "";
+@@ -9769,7 +9798,10 @@ indirect_thunk_name (char name[32], int
+ bnd, reg_prefix, reg_names[regno]);
+ }
+ else
+- sprintf (name, "__x86_indirect_thunk%s", bnd);
++ {
++ const char *ret = ret_p ? "return" : "indirect";
++ sprintf (name, "__x86_%s_thunk%s", ret, bnd);
++ }
+ }
+ else
+ {
+@@ -9782,10 +9814,20 @@ indirect_thunk_name (char name[32], int
+ }
+ else
+ {
+- if (need_bnd_p)
+- ASM_GENERATE_INTERNAL_LABEL (name, "LITB", 0);
++ if (ret_p)
++ {
++ if (need_bnd_p)
++ ASM_GENERATE_INTERNAL_LABEL (name, "LRTB", 0);
++ else
++ ASM_GENERATE_INTERNAL_LABEL (name, "LRT", 0);
++ }
+ else
+- ASM_GENERATE_INTERNAL_LABEL (name, "LIT", 0);
++ {
++ if (need_bnd_p)
++ ASM_GENERATE_INTERNAL_LABEL (name, "LITB", 0);
++ else
++ ASM_GENERATE_INTERNAL_LABEL (name, "LIT", 0);
++ }
+ }
+ }
+ }
+@@ -9880,7 +9922,7 @@ output_indirect_thunk_function (bool nee
+ tree decl;
+
+ /* Create __x86_indirect_thunk/__x86_indirect_thunk_bnd. */
+- indirect_thunk_name (name, regno, need_bnd_p);
++ indirect_thunk_name (name, regno, need_bnd_p, false);
+ decl = build_decl (BUILTINS_LOCATION, FUNCTION_DECL,
+ get_identifier (name),
+ build_function_type_list (void_type_node, NULL_TREE));
+@@ -9923,6 +9965,36 @@ output_indirect_thunk_function (bool nee
+ ASM_OUTPUT_LABEL (asm_out_file, name);
+ }
+
++ if (regno < 0)
++ {
++ /* Create alias for __x86.return_thunk/__x86.return_thunk_bnd. */
++ char alias[32];
++
++ indirect_thunk_name (alias, regno, need_bnd_p, true);
++#if TARGET_MACHO
++ if (TARGET_MACHO)
++ {
++ fputs ("\t.weak_definition\t", asm_out_file);
++ assemble_name (asm_out_file, alias);
++ fputs ("\n\t.private_extern\t", asm_out_file);
++ assemble_name (asm_out_file, alias);
++ putc ('\n', asm_out_file);
++ ASM_OUTPUT_LABEL (asm_out_file, alias);
++ }
++#else
++ ASM_OUTPUT_DEF (asm_out_file, alias, name);
++ if (USE_HIDDEN_LINKONCE)
++ {
++ fputs ("\t.globl\t", asm_out_file);
++ assemble_name (asm_out_file, alias);
++ putc ('\n', asm_out_file);
++ fputs ("\t.hidden\t", asm_out_file);
++ assemble_name (asm_out_file, alias);
++ putc ('\n', asm_out_file);
++ }
++#endif
++ }
++
+ DECL_INITIAL (decl) = make_node (BLOCK);
+ current_function_decl = decl;
+ allocate_struct_function (decl, false);
+@@ -26121,7 +26193,7 @@ ix86_output_indirect_branch_via_reg (rtx
+ else
+ indirect_thunks_used |= 1 << i;
+ }
+- indirect_thunk_name (thunk_name_buf, regno, need_bnd_p);
++ indirect_thunk_name (thunk_name_buf, regno, need_bnd_p, false);
+ thunk_name = thunk_name_buf;
+ }
+ else
+@@ -26230,7 +26302,7 @@ ix86_output_indirect_branch_via_push (rt
+ else
+ indirect_thunk_needed = true;
+ }
+- indirect_thunk_name (thunk_name_buf, regno, need_bnd_p);
++ indirect_thunk_name (thunk_name_buf, regno, need_bnd_p, false);
+ thunk_name = thunk_name_buf;
+ }
+ else
+@@ -26365,6 +26437,46 @@ ix86_output_indirect_jmp (rtx call_op, b
+ return "%!jmp\t%A0";
+ }
+
++/* Output function return. CALL_OP is the jump target. Add a REP
++ prefix to RET if LONG_P is true and function return is kept. */
++
++const char *
++ix86_output_function_return (bool long_p)
++{
++ if (cfun->machine->function_return_type != indirect_branch_keep)
++ {
++ char thunk_name[32];
++ bool need_bnd_p = ix86_bnd_prefixed_insn_p (current_output_insn);
++
++ if (cfun->machine->function_return_type
++ != indirect_branch_thunk_inline)
++ {
++ bool need_thunk = (cfun->machine->function_return_type
++ == indirect_branch_thunk);
++ indirect_thunk_name (thunk_name, -1, need_bnd_p, true);
++ if (need_bnd_p)
++ {
++ indirect_thunk_bnd_needed |= need_thunk;
++ fprintf (asm_out_file, "\tbnd jmp\t%s\n", thunk_name);
++ }
++ else
++ {
++ indirect_thunk_needed |= need_thunk;
++ fprintf (asm_out_file, "\tjmp\t%s\n", thunk_name);
++ }
++ }
++ else
++ output_indirect_thunk (need_bnd_p, -1);
++
++ return "";
++ }
++
++ if (!long_p || ix86_bnd_prefixed_insn_p (current_output_insn))
++ return "%!ret";
++
++ return "rep%; ret";
++}
++
+ /* Output the assembly for a call instruction. */
+
+ const char *
+@@ -43625,6 +43737,28 @@ ix86_handle_fndecl_attribute (tree *node
+ }
+ }
+
++ if (is_attribute_p ("function_return", name))
++ {
++ tree cst = TREE_VALUE (args);
++ if (TREE_CODE (cst) != STRING_CST)
++ {
++ warning (OPT_Wattributes,
++ "%qE attribute requires a string constant argument",
++ name);
++ *no_add_attrs = true;
++ }
++ else if (strcmp (TREE_STRING_POINTER (cst), "keep") != 0
++ && strcmp (TREE_STRING_POINTER (cst), "thunk") != 0
++ && strcmp (TREE_STRING_POINTER (cst), "thunk-inline") != 0
++ && strcmp (TREE_STRING_POINTER (cst), "thunk-extern") != 0)
++ {
++ warning (OPT_Wattributes,
++ "argument to %qE attribute is not "
++ "(keep|thunk|thunk-inline|thunk-extern)", name);
++ *no_add_attrs = true;
++ }
++ }
++
+ return NULL_TREE;
+ }
+
+@@ -47519,6 +47653,8 @@ static const struct attribute_spec ix86_
+ ix86_handle_callee_pop_aggregate_return, true },
+ { "indirect_branch", 1, 1, true, false, false,
+ ix86_handle_fndecl_attribute, false },
++ { "function_return", 1, 1, true, false, false,
++ ix86_handle_fndecl_attribute, false },
+
+ /* End element. */
+ { NULL, 0, 0, false, false, false, NULL, false }
+Index: b/src/gcc/config/i386/i386.h
+===================================================================
+--- a/src/gcc/config/i386/i386.h
++++ b/src/gcc/config/i386/i386.h
+@@ -2562,6 +2562,9 @@ struct GTY(()) machine_function {
+ "indirect_jump" or "tablejump". */
+ BOOL_BITFIELD has_local_indirect_jump : 1;
+
++ /* How to generate function return. */
++ ENUM_BITFIELD(indirect_branch) function_return_type : 3;
++
+ /* During prologue/epilogue generation, the current frame state.
+ Otherwise, the frame state at the end of the prologue. */
+ struct machine_frame_state fs;
+Index: b/src/gcc/config/i386/i386.md
+===================================================================
+--- a/src/gcc/config/i386/i386.md
++++ b/src/gcc/config/i386/i386.md
+@@ -12169,7 +12169,7 @@
+ (define_insn "simple_return_internal"
+ [(simple_return)]
+ "reload_completed"
+- "%!ret"
++ "* return ix86_output_function_return (false);"
+ [(set_attr "length_nobnd" "1")
+ (set_attr "atom_unit" "jeu")
+ (set_attr "length_immediate" "0")
+@@ -12182,12 +12182,7 @@
+ [(simple_return)
+ (unspec [(const_int 0)] UNSPEC_REP)]
+ "reload_completed"
+-{
+- if (ix86_bnd_prefixed_insn_p (insn))
+- return "%!ret";
+-
+- return "rep%; ret";
+-}
++ "* return ix86_output_function_return (true);"
+ [(set_attr "length" "2")
+ (set_attr "atom_unit" "jeu")
+ (set_attr "length_immediate" "0")
+Index: b/src/gcc/config/i386/i386.opt
+===================================================================
+--- a/src/gcc/config/i386/i386.opt
++++ b/src/gcc/config/i386/i386.opt
+@@ -881,9 +881,13 @@ mindirect-branch=
+ Target Report RejectNegative Joined Enum(indirect_branch) Var(ix86_indirect_branch) Init(indirect_branch_keep)
+ Convert indirect call and jump to call and return thunks.
+
++mfunction-return=
++Target Report RejectNegative Joined Enum(indirect_branch) Var(ix86_function_return) Init(indirect_branch_keep)
++Convert function return to call and return thunk.
++
+ Enum
+ Name(indirect_branch) Type(enum indirect_branch)
+-Known indirect branch choices (for use with the -mindirect-branch= option):
++Known indirect branch choices (for use with the -mindirect-branch=/-mfunction-return= options):
+
+ EnumValue
+ Enum(indirect_branch) String(keep) Value(indirect_branch_keep)
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-1.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-1.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-1.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mindirect-branch=thunk -fno-pic" } */
++/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=thunk -fno-pic" } */
+
+ typedef void (*dispatch_t)(long offset);
+
+@@ -11,7 +11,7 @@ male_indirect_jump (long offset)
+ dispatch(offset);
+ }
+
+-/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { { ! x32 } && *-*-linux* } } } } */
+ /* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk" { target { ! x32 } } } } */
+ /* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk_(r|e)ax" { target x32 } } } */
+ /* { dg-final { scan-assembler "jmp\[ \t\]*\.LIND" } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-2.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-2.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-2.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mindirect-branch=thunk -fno-pic" } */
++/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=thunk -fno-pic" } */
+
+ typedef void (*dispatch_t)(long offset);
+
+@@ -11,7 +11,7 @@ male_indirect_jump (long offset)
+ dispatch[offset](offset);
+ }
+
+-/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { { ! x32 } && *-*-linux* } } } } */
+ /* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk" { target { ! x32 } } } } */
+ /* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk_(r|e)ax" { target x32 } } } */
+ /* { dg-final { scan-assembler "jmp\[ \t\]*\.LIND" } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-3.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-3.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-3.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mindirect-branch=thunk -fno-pic" } */
++/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=thunk -fno-pic" } */
+
+ typedef void (*dispatch_t)(long offset);
+
+@@ -12,7 +12,7 @@ male_indirect_jump (long offset)
+ return 0;
+ }
+
+-/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { { ! x32 } && *-*-linux* } } } } */
+ /* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk" { target { ! x32 } } } } */
+ /* { dg-final { scan-assembler "call\[ \t\]*__x86_indirect_thunk_(r|e)ax" { target x32 } } } */
+ /* { dg-final { scan-assembler "jmp\[ \t\]*\.LIND" } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-4.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-4.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-4.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mindirect-branch=thunk -fno-pic" } */
++/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=thunk -fno-pic" } */
+
+ typedef void (*dispatch_t)(long offset);
+
+@@ -12,7 +12,7 @@ male_indirect_jump (long offset)
+ return 0;
+ }
+
+-/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { { ! x32 } && *-*-linux* } } } } */
+ /* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk" { target { ! x32 } } } } */
+ /* { dg-final { scan-assembler "call\[ \t\]*__x86_indirect_thunk_(r|e)ax" { target x32 } } } */
+ /* { dg-final { scan-assembler "jmp\[ \t\]*\.LIND" } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-7.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-7.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-7.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mindirect-branch=thunk -fno-pic" } */
++/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=thunk -fno-pic" } */
+
+ void func0 (void);
+ void func1 (void);
+@@ -35,7 +35,7 @@ bar (int i)
+ }
+ }
+
+-/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*\.L\[0-9\]+\\(,%" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*\.L\[0-9\]+\\(,%" { target { { ! x32 } && *-*-linux* } } } } */
+ /* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk" { target { ! x32 } } } } */
+ /* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk_(r|e)ax" { target x32 } } } */
+ /* { dg-final { scan-assembler "jmp\[ \t\]*\.LIND" } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-1.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-1.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-1.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -fno-pic" } */
++/* { dg-options "-O2 -mfunction-return=keep -fno-pic" } */
+
+ typedef void (*dispatch_t)(long offset);
+
+@@ -14,7 +14,7 @@ male_indirect_jump (long offset)
+ dispatch(offset);
+ }
+
+-/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { { ! x32 } && *-*-linux* } } } } */
+ /* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk" { target { ! x32 } } } } */
+ /* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk_(r|e)ax" { target x32 } } } */
+ /* { dg-final { scan-assembler "jmp\[ \t\]*\.LIND" } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-2.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-2.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-2.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -fno-pic" } */
++/* { dg-options "-O2 -mfunction-return=keep -fno-pic" } */
+
+ typedef void (*dispatch_t)(long offset);
+
+@@ -12,7 +12,7 @@ male_indirect_jump (long offset)
+ dispatch[offset](offset);
+ }
+
+-/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { { ! x32 } && *-*-linux* } } } } */
+ /* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk" { target { ! x32 } } } } */
+ /* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk_(r|e)ax" { target x32 } } } */
+ /* { dg-final { scan-assembler "jmp\[ \t\]*\.LIND" } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-3.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-3.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-3.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -fno-pic" } */
++/* { dg-options "-O2 -mfunction-return=keep -fno-pic" } */
+
+ typedef void (*dispatch_t)(long offset);
+
+@@ -14,7 +14,7 @@ male_indirect_jump (long offset)
+ return 0;
+ }
+
+-/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { { ! x32 } && *-*-linux* } } } } */
+ /* { dg-final { scan-assembler-times "jmp\[ \t\]*\.LIND" 2 } } */
+ /* { dg-final { scan-assembler-times "call\[ \t\]*\.LIND" 2 } } */
+ /* { dg-final { scan-assembler {\tpause} } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-4.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-4.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-4.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -fno-pic" } */
++/* { dg-options "-O2 -mfunction-return=keep -fno-pic" } */
+
+ typedef void (*dispatch_t)(long offset);
+
+@@ -13,7 +13,7 @@ male_indirect_jump (long offset)
+ return 0;
+ }
+
+-/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { { ! x32 } && *-*-linux* } } } } */
+ /* { dg-final { scan-assembler-times "jmp\[ \t\]*\.LIND" 2 } } */
+ /* { dg-final { scan-assembler-times "call\[ \t\]*\.LIND" 2 } } */
+ /* { dg-final { scan-assembler {\tpause} } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-5.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-5.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-5.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -fno-pic" } */
++/* { dg-options "-O2 -mfunction-return=keep -fno-pic" } */
+
+ typedef void (*dispatch_t)(long offset);
+
+@@ -14,7 +14,7 @@ male_indirect_jump (long offset)
+ return 0;
+ }
+
+-/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { { ! x32 } && *-*-linux* } } } } */
+ /* { dg-final { scan-assembler-times "jmp\[ \t\]*\.LIND" 1 { target { ! x32 } } } } */
+ /* { dg-final { scan-assembler-times "call\[ \t\]*\.LIND" 1 { target { ! x32 } } } } */
+ /* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk" { target { ! x32 } } } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-6.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-6.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-6.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -fno-pic" } */
++/* { dg-options "-O2 -mfunction-return=keep -fno-pic" } */
+
+ typedef void (*dispatch_t)(long offset);
+
+@@ -13,7 +13,7 @@ male_indirect_jump (long offset)
+ return 0;
+ }
+
+-/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { { ! x32 } && *-*-linux* } } } } */
+ /* { dg-final { scan-assembler-times "jmp\[ \t\]*\.LIND" 1 { target { ! x32 } } } } */
+ /* { dg-final { scan-assembler-times "call\[ \t\]*\.LIND" 1 { target { ! x32 } } } } */
+ /* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk" { target { ! x32 } } } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-7.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-7.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-7.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -fno-pic" } */
++/* { dg-options "-O2 -mfunction-return=keep -fno-pic" } */
+
+ void func0 (void);
+ void func1 (void);
+@@ -36,7 +36,7 @@ bar (int i)
+ }
+ }
+
+-/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*\.L\[0-9\]+\\(,%" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*\.L\[0-9\]+\\(,%" { target { { ! x32 } && *-*-linux* } } } } */
+ /* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk_(r|e)ax" { target x32 } } } */
+ /* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk" } } */
+ /* { dg-final { scan-assembler-not {\t(lfence|pause)} } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-8.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-8.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-8.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mindirect-branch=thunk -fno-pic" } */
++/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=thunk -fno-pic" } */
+
+ void func0 (void);
+ void func1 (void);
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-1.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-1.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-1.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile { target { ! x32 } } } */
+-/* { dg-options "-O2 -mindirect-branch=thunk -fcheck-pointer-bounds -mmpx -fno-pic" } */
++/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=thunk -fcheck-pointer-bounds -mmpx -fno-pic" } */
+
+ void (*dispatch) (char *);
+ char buf[10];
+@@ -10,7 +10,7 @@ foo (void)
+ dispatch (buf);
+ }
+
+-/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { { ! x32 } && *-*-linux* } } } } */
+ /* { dg-final { scan-assembler "pushq\[ \t\]%rax" { target x32 } } } */
+ /* { dg-final { scan-assembler "bnd jmp\[ \t\]*__x86_indirect_thunk_bnd" } } */
+ /* { dg-final { scan-assembler "jmp\[ \t\]*\.LIND" } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-2.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-2.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-2.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile { target { ! x32 } } } */
+-/* { dg-options "-O2 -mindirect-branch=thunk -fcheck-pointer-bounds -mmpx -fno-pic" } */
++/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=thunk -fcheck-pointer-bounds -mmpx -fno-pic" } */
+
+ void (*dispatch) (char *);
+ char buf[10];
+@@ -11,7 +11,7 @@ foo (void)
+ return 0;
+ }
+
+-/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { { ! x32 } && *-*-linux* } } } } */
+ /* { dg-final { scan-assembler "pushq\[ \t\]%rax" { target x32 } } } */
+ /* { dg-final { scan-assembler "bnd jmp\[ \t\]*__x86_indirect_thunk_bnd" } } */
+ /* { dg-final { scan-assembler "bnd jmp\[ \t\]*\.LIND" } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-1.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-1.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-1.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mindirect-branch=thunk-extern -fno-pic" } */
++/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=thunk-extern -fno-pic" } */
+
+ typedef void (*dispatch_t)(long offset);
+
+@@ -11,7 +11,7 @@ male_indirect_jump (long offset)
+ dispatch(offset);
+ }
+
+-/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { { ! x32 } && *-*-linux* } } } } */
+ /* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk" { target { ! x32 } } } } */
+ /* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk_(r|e)ax" { target x32 } } } */
+ /* { dg-final { scan-assembler-not {\t(lfence|pause)} } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-2.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-2.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-2.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mindirect-branch=thunk-extern -fno-pic" } */
++/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=thunk-extern -fno-pic" } */
+
+ typedef void (*dispatch_t)(long offset);
+
+@@ -11,7 +11,7 @@ male_indirect_jump (long offset)
+ dispatch[offset](offset);
+ }
+
+-/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { { ! x32 } && *-*-linux* } } } } */
+ /* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk" { target { ! x32 } } } } */
+ /* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk_(r|e)ax" { target x32 } } } */
+ /* { dg-final { scan-assembler-not {\t(lfence|pause)} } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-3.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-3.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-3.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mindirect-branch=thunk-extern -fno-pic" } */
++/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=thunk-extern -fno-pic" } */
+
+ typedef void (*dispatch_t)(long offset);
+
+@@ -12,7 +12,7 @@ male_indirect_jump (long offset)
+ return 0;
+ }
+
+-/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { { ! x32 } && *-*-linux* } } } } */
+ /* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk" { target { ! x32 } } } } */
+ /* { dg-final { scan-assembler-times "jmp\[ \t\]*\.LIND" 1 { target { ! x32 } } } } */
+ /* { dg-final { scan-assembler-times "call\[ \t\]*\.LIND" 1 { target { ! x32 } } } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-4.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-4.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-4.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mindirect-branch=thunk-extern -fno-pic" } */
++/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=thunk-extern -fno-pic" } */
+
+ typedef void (*dispatch_t)(long offset);
+
+@@ -12,7 +12,7 @@ male_indirect_jump (long offset)
+ return 0;
+ }
+
+-/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { { ! x32 } && *-*-linux* } } } } */
+ /* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk" { target { ! x32 } } } } */
+ /* { dg-final { scan-assembler-times "jmp\[ \t\]*\.LIND" 1 { target { ! x32 } } } } */
+ /* { dg-final { scan-assembler-times "call\[ \t\]*\.LIND" 1 { target { ! x32 } } } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-7.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-7.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-7.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mindirect-branch=thunk-extern -fno-pic" } */
++/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=thunk-extern -fno-pic" } */
+
+ void func0 (void);
+ void func1 (void);
+@@ -35,7 +35,7 @@ bar (int i)
+ }
+ }
+
+-/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*\.L\[0-9\]+\\(,%" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*\.L\[0-9\]+\\(,%" { target { { ! x32 } && *-*-linux* } } } } */
+ /* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk" { target { ! x32 } } } } */
+ /* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk_(r|e)ax" { target x32 } } } */
+ /* { dg-final { scan-assembler-not {\t(lfence|pause)} } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-1.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-1.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-1.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mindirect-branch=thunk-inline -fno-pic" } */
++/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=thunk-inline -fno-pic" } */
+
+ typedef void (*dispatch_t)(long offset);
+
+@@ -11,7 +11,7 @@ male_indirect_jump (long offset)
+ dispatch(offset);
+ }
+
+-/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { { ! x32 } && *-*-linux* } } } } */
+ /* { dg-final { scan-assembler "jmp\[ \t\]*\.LIND" } } */
+ /* { dg-final { scan-assembler "call\[ \t\]*\.LIND" } } */
+ /* { dg-final { scan-assembler {\tpause} } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-2.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-2.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-2.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mindirect-branch=thunk-inline -fno-pic" } */
++/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=thunk-inline -fno-pic" } */
+
+ typedef void (*dispatch_t)(long offset);
+
+@@ -11,7 +11,7 @@ male_indirect_jump (long offset)
+ dispatch[offset](offset);
+ }
+
+-/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { { ! x32 } && *-*-linux* } } } } */
+ /* { dg-final { scan-assembler "jmp\[ \t\]*\.LIND" } } */
+ /* { dg-final { scan-assembler "call\[ \t\]*\.LIND" } } */
+ /* { dg-final { scan-assembler {\tpause} } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-3.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-3.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-3.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mindirect-branch=thunk-inline -fno-pic" } */
++/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=thunk-inline -fno-pic" } */
+
+ typedef void (*dispatch_t)(long offset);
+
+@@ -12,7 +12,7 @@ male_indirect_jump (long offset)
+ return 0;
+ }
+
+-/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { { ! x32 } && *-*-linux* } } } } */
+ /* { dg-final { scan-assembler-times "jmp\[ \t\]*\.LIND" 2 } } */
+ /* { dg-final { scan-assembler-times "call\[ \t\]*\.LIND" 2 } } */
+ /* { dg-final { scan-assembler-times {\tpause} 1 } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-4.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-4.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-4.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mindirect-branch=thunk-inline -fno-pic" } */
++/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=thunk-inline -fno-pic" } */
+
+ typedef void (*dispatch_t)(long offset);
+
+@@ -12,7 +12,7 @@ male_indirect_jump (long offset)
+ return 0;
+ }
+
+-/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?dispatch" { target { { ! x32 } && *-*-linux* } } } } */
+ /* { dg-final { scan-assembler-times "jmp\[ \t\]*\.LIND" 2 } } */
+ /* { dg-final { scan-assembler-times "call\[ \t\]*\.LIND" 2 } } */
+ /* { dg-final { scan-assembler-times {\tpause} 1 } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-7.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-7.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-7.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mindirect-branch=thunk-inline -fno-pic" } */
++/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=thunk-inline -fno-pic" } */
+
+ void func0 (void);
+ void func1 (void);
+@@ -35,7 +35,7 @@ bar (int i)
+ }
+ }
+
+-/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*\.L\[0-9\]+\\(,%" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*\.L\[0-9\]+\\(,%" { target { { ! x32 } && *-*-linux* } } } } */
+ /* { dg-final { scan-assembler-not "pushq\[ \t\]%rax" { target x32 } } } */
+ /* { dg-final { scan-assembler "jmp\[ \t\]*\.LIND" } } */
+ /* { dg-final { scan-assembler "call\[ \t\]*\.LIND" } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/ret-thunk-1.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/ret-thunk-1.c
+@@ -0,0 +1,13 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -mfunction-return=thunk" } */
++
++void
++foo (void)
++{
++}
++
++/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_return_thunk" } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler "call\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler {\tpause} } } */
++/* { dg-final { scan-assembler {\tlfence} } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/ret-thunk-10.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/ret-thunk-10.c
+@@ -0,0 +1,23 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -mfunction-return=thunk-inline -mindirect-branch=thunk -fno-pic" } */
++
++extern void (*bar) (void);
++
++int
++foo (void)
++{
++ bar ();
++ return 0;
++}
++
++/* { dg-final { scan-assembler "jmp\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler "call\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler-not "jmp\[ \t\]*__x86_return_thunk" } } */
++/* { dg-final { scan-assembler-times {\tpause} 2 } } */
++/* { dg-final { scan-assembler-times {\tlfence} 2 } } */
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?bar" { target { { ! x32 } && *-*-linux* } } } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "__x86_indirect_thunk:" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "call\[ \t\]*__x86_indirect_thunk_(r|e)ax" { target { x32 } } } } */
++/* { dg-final { scan-assembler "__x86_indirect_thunk_(r|e)ax:" { target { x32 } } } } */
++/* { dg-final { scan-assembler-not "pushq\[ \t\]%rax" { target x32 } } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/ret-thunk-11.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/ret-thunk-11.c
+@@ -0,0 +1,23 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -mfunction-return=thunk-extern -mindirect-branch=thunk -fno-pic" } */
++
++extern void (*bar) (void);
++
++int
++foo (void)
++{
++ bar ();
++ return 0;
++}
++
++/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_return_thunk" } } */
++/* { dg-final { scan-assembler-times {\tpause} 1 } } */
++/* { dg-final { scan-assembler-times {\tlfence} 1 } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler "call\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?bar" { target { { ! x32 } && *-*-linux* } } } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "__x86_indirect_thunk:" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "call\[ \t\]*__x86_indirect_thunk_(r|e)ax" { target { x32 } } } } */
++/* { dg-final { scan-assembler "__x86_indirect_thunk_(r|e)ax:" { target { x32 } } } } */
++/* { dg-final { scan-assembler-not "pushq\[ \t\]%rax" { target x32 } } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/ret-thunk-12.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/ret-thunk-12.c
+@@ -0,0 +1,22 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=thunk -fno-pic" } */
++
++extern void (*bar) (void);
++
++int
++foo (void)
++{
++ bar ();
++ return 0;
++}
++
++/* { dg-final { scan-assembler-not "jmp\[ \t\]*__x86_return_thunk" } } */
++/* { dg-final { scan-assembler-times {\tpause} 1 } } */
++/* { dg-final { scan-assembler-times {\tlfence} 1 } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler "call\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "__x86_indirect_thunk:" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "call\[ \t\]*__x86_indirect_thunk_(r|e)ax" { target { x32 } } } } */
++/* { dg-final { scan-assembler "__x86_indirect_thunk_(r|e)ax:" { target { x32 } } } } */
++/* { dg-final { scan-assembler-not "pushq\[ \t\]%rax" { target x32 } } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/ret-thunk-13.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/ret-thunk-13.c
+@@ -0,0 +1,22 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=thunk-inline -fno-pic" } */
++
++extern void (*bar) (void);
++extern int foo (void) __attribute__ ((function_return("thunk")));
++
++int
++foo (void)
++{
++ bar ();
++ return 0;
++}
++
++/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_return_thunk" } } */
++/* { dg-final { scan-assembler-times {\tpause} 2 } } */
++/* { dg-final { scan-assembler-times {\tlfence} 2 } } */
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?bar" { target { { ! x32 } && *-*-linux* } } } } */
++/* { dg-final { scan-assembler-times "jmp\[ \t\]*\.LIND" 3 } } */
++/* { dg-final { scan-assembler-times "call\[ \t\]*\.LIND" 3 } } */
++/* { dg-final { scan-assembler-not "jmp\[ \t\]*__x86_indirect_thunk" } } */
++/* { dg-final { scan-assembler-not "call\[ \t\]*__x86_indirect_thunk_(r|e)ax" { target { x32 } } } } */
++/* { dg-final { scan-assembler-not "pushq\[ \t\]%rax" { target x32 } } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/ret-thunk-14.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/ret-thunk-14.c
+@@ -0,0 +1,22 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=thunk-extern -fno-pic" } */
++
++extern void (*bar) (void);
++
++__attribute__ ((function_return("thunk-inline")))
++int
++foo (void)
++{
++ bar ();
++ return 0;
++}
++
++/* { dg-final { scan-assembler-times {\tpause} 1 } } */
++/* { dg-final { scan-assembler-times {\tlfence} 1 } } */
++/* { dg-final { scan-assembler-not "jmp\[ \t\]*__x86_return_thunk" } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler "call\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?bar" { target { { ! x32 } && *-*-linux* } } } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "call\[ \t\]*__x86_indirect_thunk_(r|e)ax" { target { x32 } } } } */
++/* { dg-final { scan-assembler-not "pushq\[ \t\]%rax" { target x32 } } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/ret-thunk-15.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/ret-thunk-15.c
+@@ -0,0 +1,22 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=keep -fno-pic" } */
++
++extern void (*bar) (void);
++
++__attribute__ ((function_return("thunk-extern"), indirect_branch("thunk")))
++int
++foo (void)
++{
++ bar ();
++ return 0;
++}
++
++/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_return_thunk" } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler "call\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler-times {\tpause} 1 } } */
++/* { dg-final { scan-assembler-times {\tlfence} 1 } } */
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?bar" { target { { ! x32 } && *-*-linux* } } } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "call\[ \t\]*__x86_indirect_thunk_(r|e)ax" { target x32 } } } */
++/* { dg-final { scan-assembler-not "pushq\[ \t\]%rax" { target x32 } } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/ret-thunk-16.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/ret-thunk-16.c
+@@ -0,0 +1,18 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -mfunction-return=thunk-inline -mindirect-branch=thunk-extern -fno-pic" } */
++
++extern void (*bar) (void);
++
++__attribute__ ((function_return("keep"), indirect_branch("keep")))
++int
++foo (void)
++{
++ bar ();
++ return 0;
++}
++
++/* { dg-final { scan-assembler-not "__x86_indirect_thunk" } } */
++/* { dg-final { scan-assembler-not "__x86_return_thunk" } } */
++/* { dg-final { scan-assembler-not {\t(lfence|pause)} } } */
++/* { dg-final { scan-assembler-not "jmp\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler-not "call\[ \t\]*\.LIND" } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/ret-thunk-2.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/ret-thunk-2.c
+@@ -0,0 +1,13 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -mfunction-return=thunk-inline" } */
++
++void
++foo (void)
++{
++}
++
++/* { dg-final { scan-assembler "jmp\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler "call\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler {\tpause} } } */
++/* { dg-final { scan-assembler {\tlfence} } } */
++/* { dg-final { scan-assembler-not "jmp\[ \t\]*__x86_return_thunk" } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/ret-thunk-3.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/ret-thunk-3.c
+@@ -0,0 +1,12 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -mfunction-return=thunk-extern" } */
++
++void
++foo (void)
++{
++}
++
++/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_return_thunk" } } */
++/* { dg-final { scan-assembler-not {\t(lfence|pause)} } } */
++/* { dg-final { scan-assembler-not "jmp\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler-not "call\[ \t\]*\.LIND" } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/ret-thunk-4.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/ret-thunk-4.c
+@@ -0,0 +1,12 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -mfunction-return=keep" } */
++
++void
++foo (void)
++{
++}
++
++/* { dg-final { scan-assembler-not "jmp\[ \t\]*__x86_return_thunk" } } */
++/* { dg-final { scan-assembler-not {\t(lfence|pause)} } } */
++/* { dg-final { scan-assembler-not "jmp\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler-not "call\[ \t\]*\.LIND" } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/ret-thunk-5.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/ret-thunk-5.c
+@@ -0,0 +1,15 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -mfunction-return=keep" } */
++
++extern void foo (void) __attribute__ ((function_return("thunk")));
++
++void
++foo (void)
++{
++}
++
++/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_return_thunk" } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler "call\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler {\tpause} } } */
++/* { dg-final { scan-assembler {\tlfence} } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/ret-thunk-6.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/ret-thunk-6.c
+@@ -0,0 +1,14 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -mfunction-return=keep" } */
++
++__attribute__ ((function_return("thunk-inline")))
++void
++foo (void)
++{
++}
++
++/* { dg-final { scan-assembler "jmp\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler "call\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler {\tpause} } } */
++/* { dg-final { scan-assembler {\tlfence} } } */
++/* { dg-final { scan-assembler-not "jmp\[ \t\]*__x86_return_thunk" } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/ret-thunk-7.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/ret-thunk-7.c
+@@ -0,0 +1,13 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -mfunction-return=keep" } */
++
++__attribute__ ((function_return("thunk-extern")))
++void
++foo (void)
++{
++}
++
++/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_return_thunk" } } */
++/* { dg-final { scan-assembler-not {\t(lfence|pause)} } } */
++/* { dg-final { scan-assembler-not "jmp\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler-not "call\[ \t\]*\.LIND" } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/ret-thunk-8.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/ret-thunk-8.c
+@@ -0,0 +1,14 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -mfunction-return=thunk-inline" } */
++
++extern void foo (void) __attribute__ ((function_return("keep")));
++
++void
++foo (void)
++{
++}
++
++/* { dg-final { scan-assembler-not "jmp\[ \t\]*__x86_return_thunk" } } */
++/* { dg-final { scan-assembler-not {\t(lfence|pause)} } } */
++/* { dg-final { scan-assembler-not "jmp\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler-not "call\[ \t\]*\.LIND" } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/ret-thunk-9.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/ret-thunk-9.c
+@@ -0,0 +1,24 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -mfunction-return=thunk -mindirect-branch=thunk -fno-pic" } */
++
++extern void (*bar) (void);
++
++int
++foo (void)
++{
++ bar ();
++ return 0;
++}
++
++/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_return_thunk" } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler "call\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler "__x86_indirect_thunk:" } } */
++/* { dg-final { scan-assembler-times {\tpause} 1 { target { ! x32 } } } } */
++/* { dg-final { scan-assembler-times {\tlfence} 1 { target { ! x32 } } } } */
++/* { dg-final { scan-assembler "push(?:l|q)\[ \t\]*_?bar" { target { { ! x32 } && *-*-linux* } } } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk" { target { ! x32 } } } } */
++/* { dg-final { scan-assembler-times {\tpause} 2 { target { x32 } } } } */
++/* { dg-final { scan-assembler-times {\tlfence} 2 { target { x32 } } } } */
++/* { dg-final { scan-assembler "call\[ \t\]*__x86_indirect_thunk_(r|e)ax" { target { x32 } } } } */
++/* { dg-final { scan-assembler-not "pushq\[ \t\]%rax" { target x32 } } } */
diff --git a/development/gcc5/patches/0007-x86-Add-mindirect-branch-register-doc.diff b/development/gcc5/patches/0007-x86-Add-mindirect-branch-register-doc.diff
new file mode 100644
index 0000000000..9780bfc918
--- /dev/null
+++ b/development/gcc5/patches/0007-x86-Add-mindirect-branch-register-doc.diff
@@ -0,0 +1,231 @@
+From 86118fbdbafe6af54b2da467e1073c49e1742116 Mon Sep 17 00:00:00 2001
+From: hjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>
+Date: Tue, 16 Jan 2018 11:17:49 +0000
+Subject: [PATCH 7/9] x86: Add -mindirect-branch-register (documentation)
+
+Add -mindirect-branch-register to force indirect branch via register.
+This is implemented by disabling patterns of indirect branch via memory,
+similar to TARGET_X32.
+
+-mindirect-branch= and -mfunction-return= tests are updated with
+-mno-indirect-branch-register to avoid false test failures when
+-mindirect-branch-register is added to RUNTESTFLAGS for "make check".
+
+gcc/
+
+ Backport from mainline
+ 2018-01-14 H.J. Lu <hongjiu.lu@intel.com>
+
+ * config/i386/constraints.md (Bs): Disallow memory operand for
+ -mindirect-branch-register.
+ (Bw): Likewise.
+ * config/i386/predicates.md (indirect_branch_operand): Likewise.
+ (GOT_memory_operand): Likewise.
+ (call_insn_operand): Likewise.
+ (sibcall_insn_operand): Likewise.
+ (GOT32_symbol_operand): Likewise.
+ * config/i386/i386.md (indirect_jump): Call convert_memory_address
+ for -mindirect-branch-register.
+ (tablejump): Likewise.
+ (*sibcall_memory): Likewise.
+ (*sibcall_value_memory): Likewise.
+ Disallow peepholes of indirect call and jump via memory for
+ -mindirect-branch-register.
+ (*call_pop): Replace m with Bw.
+ (*call_value_pop): Likewise.
+ (*sibcall_pop_memory): Replace m with Bs.
+ * config/i386/i386.opt (mindirect-branch-register): New option.
+ * doc/invoke.texi: Document -mindirect-branch-register option.
+
+gcc/testsuite/
+
+ Backport from mainline
+ 2018-01-14 H.J. Lu <hongjiu.lu@intel.com>
+
+ * gcc.target/i386/indirect-thunk-1.c (dg-options): Add
+ -mno-indirect-branch-register.
+ * gcc.target/i386/indirect-thunk-2.c: Likewise.
+ * gcc.target/i386/indirect-thunk-3.c: Likewise.
+ * gcc.target/i386/indirect-thunk-4.c: Likewise.
+ * gcc.target/i386/indirect-thunk-5.c: Likewise.
+ * gcc.target/i386/indirect-thunk-6.c: Likewise.
+ * gcc.target/i386/indirect-thunk-7.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-1.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-2.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-3.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-4.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-5.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-6.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-7.c: Likewise.
+ * gcc.target/i386/indirect-thunk-bnd-1.c: Likewise.
+ * gcc.target/i386/indirect-thunk-bnd-2.c: Likewise.
+ * gcc.target/i386/indirect-thunk-bnd-3.c: Likewise.
+ * gcc.target/i386/indirect-thunk-bnd-4.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-1.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-2.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-3.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-4.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-5.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-6.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-7.c: Likewise.
+ * gcc.target/i386/indirect-thunk-inline-1.c: Likewise.
+ * gcc.target/i386/indirect-thunk-inline-2.c: Likewise.
+ * gcc.target/i386/indirect-thunk-inline-3.c: Likewise.
+ * gcc.target/i386/indirect-thunk-inline-4.c: Likewise.
+ * gcc.target/i386/indirect-thunk-inline-5.c: Likewise.
+ * gcc.target/i386/indirect-thunk-inline-6.c: Likewise.
+ * gcc.target/i386/indirect-thunk-inline-7.c: Likewise.
+ * gcc.target/i386/ret-thunk-10.c: Likewise.
+ * gcc.target/i386/ret-thunk-11.c: Likewise.
+ * gcc.target/i386/ret-thunk-12.c: Likewise.
+ * gcc.target/i386/ret-thunk-13.c: Likewise.
+ * gcc.target/i386/ret-thunk-14.c: Likewise.
+ * gcc.target/i386/ret-thunk-15.c: Likewise.
+ * gcc.target/i386/ret-thunk-9.c: Likewise.
+ * gcc.target/i386/indirect-thunk-register-1.c: New test.
+ * gcc.target/i386/indirect-thunk-register-2.c: Likewise.
+ * gcc.target/i386/indirect-thunk-register-3.c: Likewise.
+
+i386: Rename to ix86_indirect_branch_register
+
+Rename the variable for -mindirect-branch-register to
+ix86_indirect_branch_register to match the command-line option name.
+
+ Backport from mainline
+ 2018-01-15 H.J. Lu <hongjiu.lu@intel.com>
+
+ * config/i386/constraints.md (Bs): Replace
+ ix86_indirect_branch_thunk_register with
+ ix86_indirect_branch_register.
+ (Bw): Likewise.
+ * config/i386/i386.md (indirect_jump): Likewise.
+ (tablejump): Likewise.
+ (*sibcall_memory): Likewise.
+ (*sibcall_value_memory): Likewise.
+ Peepholes of indirect call and jump via memory: Likewise.
+ * config/i386/i386.opt: Likewise.
+ * config/i386/predicates.md (indirect_branch_operand): Likewise.
+ (GOT_memory_operand): Likewise.
+ (call_insn_operand): Likewise.
+ (sibcall_insn_operand): Likewise.
+ (GOT32_symbol_operand): Likewise.
+
+x86: Rewrite ix86_indirect_branch_register logic
+
+Rewrite ix86_indirect_branch_register logic with
+
+(and (not (match_test "ix86_indirect_branch_register"))
+ (original condition before r256662))
+
+ Backport from mainline
+ 2018-01-15 H.J. Lu <hongjiu.lu@intel.com>
+
+ * config/i386/predicates.md (constant_call_address_operand):
+ Rewrite ix86_indirect_branch_register logic.
+ (sibcall_insn_operand): Likewise.
+
+Don't check ix86_indirect_branch_register for GOT operand
+
+Since GOT_memory_operand and GOT32_symbol_operand are simple pattern
+matches, don't check ix86_indirect_branch_register here. If needed,
+-mindirect-branch= will convert indirect branch via GOT slot to a call
+and return thunk.
+
+ Backport from mainline
+ 2018-01-15 H.J. Lu <hongjiu.lu@intel.com>
+
+ * config/i386/constraints.md (Bs): Update
+ ix86_indirect_branch_register check. Don't check
+ ix86_indirect_branch_register with GOT_memory_operand.
+ (Bw): Likewise.
+ * config/i386/predicates.md (GOT_memory_operand): Don't check
+ ix86_indirect_branch_register here.
+ (GOT32_symbol_operand): Likewise.
+
+i386: Rewrite indirect_branch_operand logic
+
+ Backport from mainline
+ 2018-01-15 H.J. Lu <hongjiu.lu@intel.com>
+
+ * config/i386/predicates.md (indirect_branch_operand): Rewrite
+ ix86_indirect_branch_register logic.
+
+
+git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-7-branch@256735 138bc75d-0d04-0410-961f-82ee72b054a4
+
+[Ubuntu note: Dropped indirect-thunk-5.c, indirect-thunk-6.c,
+ indirect-thunk-bnd-3.c, indirect-thunk-bnd-4.c,
+ indirect-thunk-extern-5.c, indirect-thunk-extern-6.c,
+ indirect-thunk-inline-5.c, and indirect-thunk-inline-6.c tests due
+ to gcc 5.4 and earlier not supporting the -fno-plt option.
+ --sbeattie,]
+---
+ src/gcc/config/i386/constraints.md | 6 +
+ src/gcc/config/i386/i386.md | 34 ++++++----
+ src/gcc/config/i386/i386.opt | 4 +
+ src/gcc/config/i386/predicates.md | 9 +-
+ src/gcc/doc/invoke.texi | 7 +-
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-1.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-2.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-3.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-4.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-7.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-1.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-2.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-3.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-4.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-5.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-6.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-7.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-1.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-2.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-1.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-2.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-3.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-4.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-7.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-1.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-2.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-3.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-4.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-7.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-register-1.c | 22 ++++++
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-register-2.c | 20 +++++
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-register-3.c | 19 +++++
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-10.c | 2
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-11.c | 2
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-12.c | 2
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-13.c | 2
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-14.c | 2
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-15.c | 2
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-9.c | 2
+ 39 files changed, 134 insertions(+), 49 deletions(-)
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-register-1.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-register-2.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-register-3.c
+
+Index: b/src/gcc/doc/invoke.texi
+===================================================================
+--- a/src/gcc/doc/invoke.texi
++++ b/src/gcc/doc/invoke.texi
+@@ -1091,7 +1091,8 @@ See RS/6000 and PowerPC Options.
+ -msse2avx -mfentry -mrecord-mcount -mnop-mcount -m8bit-idiv @gol
+ -mavx256-split-unaligned-load -mavx256-split-unaligned-store @gol
+ -malign-data=@var{type} -mstack-protector-guard=@var{guard} @gol
+--mindirect-branch=@var{choice} -mfunction-return=@var{choice}}
++-mindirect-branch=@var{choice} -mfunction-return=@var{choice} @gol
++-mindirect-branch-register}
+
+ @emph{x86 Windows Options}
+ @gccoptlist{-mconsole -mcygwin -mno-cygwin -mdll @gol
+@@ -24040,6 +24041,10 @@ object file. You can control this behav
+ using the function attribute @code{function_return}.
+ @xref{Function Attributes}.
+
++@item -mindirect-branch-register
++@opindex -mindirect-branch-register
++Force indirect call and jump via register.
++
+ @end table
+
+ @c man end
diff --git a/development/gcc5/patches/0007-x86-Add-mindirect-branch-register.diff b/development/gcc5/patches/0007-x86-Add-mindirect-branch-register.diff
new file mode 100644
index 0000000000..211368991f
--- /dev/null
+++ b/development/gcc5/patches/0007-x86-Add-mindirect-branch-register.diff
@@ -0,0 +1,812 @@
+From 86118fbdbafe6af54b2da467e1073c49e1742116 Mon Sep 17 00:00:00 2001
+From: hjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>
+Date: Tue, 16 Jan 2018 11:17:49 +0000
+Subject: [PATCH 7/9] x86: Add -mindirect-branch-register
+
+Add -mindirect-branch-register to force indirect branch via register.
+This is implemented by disabling patterns of indirect branch via memory,
+similar to TARGET_X32.
+
+-mindirect-branch= and -mfunction-return= tests are updated with
+-mno-indirect-branch-register to avoid false test failures when
+-mindirect-branch-register is added to RUNTESTFLAGS for "make check".
+
+gcc/
+
+ Backport from mainline
+ 2018-01-14 H.J. Lu <hongjiu.lu@intel.com>
+
+ * config/i386/constraints.md (Bs): Disallow memory operand for
+ -mindirect-branch-register.
+ (Bw): Likewise.
+ * config/i386/predicates.md (indirect_branch_operand): Likewise.
+ (GOT_memory_operand): Likewise.
+ (call_insn_operand): Likewise.
+ (sibcall_insn_operand): Likewise.
+ (GOT32_symbol_operand): Likewise.
+ * config/i386/i386.md (indirect_jump): Call convert_memory_address
+ for -mindirect-branch-register.
+ (tablejump): Likewise.
+ (*sibcall_memory): Likewise.
+ (*sibcall_value_memory): Likewise.
+ Disallow peepholes of indirect call and jump via memory for
+ -mindirect-branch-register.
+ (*call_pop): Replace m with Bw.
+ (*call_value_pop): Likewise.
+ (*sibcall_pop_memory): Replace m with Bs.
+ * config/i386/i386.opt (mindirect-branch-register): New option.
+ * doc/invoke.texi: Document -mindirect-branch-register option.
+
+gcc/testsuite/
+
+ Backport from mainline
+ 2018-01-14 H.J. Lu <hongjiu.lu@intel.com>
+
+ * gcc.target/i386/indirect-thunk-1.c (dg-options): Add
+ -mno-indirect-branch-register.
+ * gcc.target/i386/indirect-thunk-2.c: Likewise.
+ * gcc.target/i386/indirect-thunk-3.c: Likewise.
+ * gcc.target/i386/indirect-thunk-4.c: Likewise.
+ * gcc.target/i386/indirect-thunk-5.c: Likewise.
+ * gcc.target/i386/indirect-thunk-6.c: Likewise.
+ * gcc.target/i386/indirect-thunk-7.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-1.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-2.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-3.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-4.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-5.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-6.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-7.c: Likewise.
+ * gcc.target/i386/indirect-thunk-bnd-1.c: Likewise.
+ * gcc.target/i386/indirect-thunk-bnd-2.c: Likewise.
+ * gcc.target/i386/indirect-thunk-bnd-3.c: Likewise.
+ * gcc.target/i386/indirect-thunk-bnd-4.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-1.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-2.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-3.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-4.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-5.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-6.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-7.c: Likewise.
+ * gcc.target/i386/indirect-thunk-inline-1.c: Likewise.
+ * gcc.target/i386/indirect-thunk-inline-2.c: Likewise.
+ * gcc.target/i386/indirect-thunk-inline-3.c: Likewise.
+ * gcc.target/i386/indirect-thunk-inline-4.c: Likewise.
+ * gcc.target/i386/indirect-thunk-inline-5.c: Likewise.
+ * gcc.target/i386/indirect-thunk-inline-6.c: Likewise.
+ * gcc.target/i386/indirect-thunk-inline-7.c: Likewise.
+ * gcc.target/i386/ret-thunk-10.c: Likewise.
+ * gcc.target/i386/ret-thunk-11.c: Likewise.
+ * gcc.target/i386/ret-thunk-12.c: Likewise.
+ * gcc.target/i386/ret-thunk-13.c: Likewise.
+ * gcc.target/i386/ret-thunk-14.c: Likewise.
+ * gcc.target/i386/ret-thunk-15.c: Likewise.
+ * gcc.target/i386/ret-thunk-9.c: Likewise.
+ * gcc.target/i386/indirect-thunk-register-1.c: New test.
+ * gcc.target/i386/indirect-thunk-register-2.c: Likewise.
+ * gcc.target/i386/indirect-thunk-register-3.c: Likewise.
+
+i386: Rename to ix86_indirect_branch_register
+
+Rename the variable for -mindirect-branch-register to
+ix86_indirect_branch_register to match the command-line option name.
+
+ Backport from mainline
+ 2018-01-15 H.J. Lu <hongjiu.lu@intel.com>
+
+ * config/i386/constraints.md (Bs): Replace
+ ix86_indirect_branch_thunk_register with
+ ix86_indirect_branch_register.
+ (Bw): Likewise.
+ * config/i386/i386.md (indirect_jump): Likewise.
+ (tablejump): Likewise.
+ (*sibcall_memory): Likewise.
+ (*sibcall_value_memory): Likewise.
+ Peepholes of indirect call and jump via memory: Likewise.
+ * config/i386/i386.opt: Likewise.
+ * config/i386/predicates.md (indirect_branch_operand): Likewise.
+ (GOT_memory_operand): Likewise.
+ (call_insn_operand): Likewise.
+ (sibcall_insn_operand): Likewise.
+ (GOT32_symbol_operand): Likewise.
+
+x86: Rewrite ix86_indirect_branch_register logic
+
+Rewrite ix86_indirect_branch_register logic with
+
+(and (not (match_test "ix86_indirect_branch_register"))
+ (original condition before r256662))
+
+ Backport from mainline
+ 2018-01-15 H.J. Lu <hongjiu.lu@intel.com>
+
+ * config/i386/predicates.md (constant_call_address_operand):
+ Rewrite ix86_indirect_branch_register logic.
+ (sibcall_insn_operand): Likewise.
+
+Don't check ix86_indirect_branch_register for GOT operand
+
+Since GOT_memory_operand and GOT32_symbol_operand are simple pattern
+matches, don't check ix86_indirect_branch_register here. If needed,
+-mindirect-branch= will convert indirect branch via GOT slot to a call
+and return thunk.
+
+ Backport from mainline
+ 2018-01-15 H.J. Lu <hongjiu.lu@intel.com>
+
+ * config/i386/constraints.md (Bs): Update
+ ix86_indirect_branch_register check. Don't check
+ ix86_indirect_branch_register with GOT_memory_operand.
+ (Bw): Likewise.
+ * config/i386/predicates.md (GOT_memory_operand): Don't check
+ ix86_indirect_branch_register here.
+ (GOT32_symbol_operand): Likewise.
+
+i386: Rewrite indirect_branch_operand logic
+
+ Backport from mainline
+ 2018-01-15 H.J. Lu <hongjiu.lu@intel.com>
+
+ * config/i386/predicates.md (indirect_branch_operand): Rewrite
+ ix86_indirect_branch_register logic.
+
+
+git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-7-branch@256735 138bc75d-0d04-0410-961f-82ee72b054a4
+
+[Ubuntu note: Dropped indirect-thunk-5.c, indirect-thunk-6.c,
+ indirect-thunk-bnd-3.c, indirect-thunk-bnd-4.c,
+ indirect-thunk-extern-5.c, indirect-thunk-extern-6.c,
+ indirect-thunk-inline-5.c, and indirect-thunk-inline-6.c tests due
+ to gcc 5.4 and earlier not supporting the -fno-plt option.
+ --sbeattie,]
+---
+ src/gcc/config/i386/constraints.md | 6 +
+ src/gcc/config/i386/i386.md | 34 ++++++----
+ src/gcc/config/i386/i386.opt | 4 +
+ src/gcc/config/i386/predicates.md | 9 +-
+ src/gcc/doc/invoke.texi | 7 +-
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-1.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-2.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-3.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-4.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-7.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-1.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-2.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-3.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-4.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-5.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-6.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-7.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-1.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-2.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-1.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-2.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-3.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-4.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-7.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-1.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-2.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-3.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-4.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-7.c | 2
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-register-1.c | 22 ++++++
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-register-2.c | 20 +++++
+ src/gcc/testsuite/gcc.target/i386/indirect-thunk-register-3.c | 19 +++++
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-10.c | 2
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-11.c | 2
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-12.c | 2
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-13.c | 2
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-14.c | 2
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-15.c | 2
+ src/gcc/testsuite/gcc.target/i386/ret-thunk-9.c | 2
+ 39 files changed, 134 insertions(+), 49 deletions(-)
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-register-1.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-register-2.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-register-3.c
+
+Index: b/src/gcc/config/i386/constraints.md
+===================================================================
+--- a/src/gcc/config/i386/constraints.md
++++ b/src/gcc/config/i386/constraints.md
+@@ -157,12 +157,14 @@
+
+ (define_constraint "Bs"
+ "@internal Sibcall memory operand."
+- (and (not (match_test "TARGET_X32"))
++ (and (not (match_test "ix86_indirect_branch_register"))
++ (not (match_test "TARGET_X32"))
+ (match_operand 0 "sibcall_memory_operand")))
+
+ (define_constraint "Bw"
+ "@internal Call memory operand."
+- (and (not (match_test "TARGET_X32"))
++ (and (not (match_test "ix86_indirect_branch_register"))
++ (not (match_test "TARGET_X32"))
+ (match_operand 0 "memory_operand")))
+
+ (define_constraint "Bz"
+Index: b/src/gcc/config/i386/i386.md
+===================================================================
+--- a/src/gcc/config/i386/i386.md
++++ b/src/gcc/config/i386/i386.md
+@@ -11554,7 +11554,7 @@
+ [(set (pc) (match_operand 0 "indirect_branch_operand"))]
+ ""
+ {
+- if (TARGET_X32)
++ if (TARGET_X32 || ix86_indirect_branch_register)
+ operands[0] = convert_memory_address (word_mode, operands[0]);
+ cfun->machine->has_local_indirect_jump = true;
+ })
+@@ -11607,7 +11607,7 @@
+ OPTAB_DIRECT);
+ }
+
+- if (TARGET_X32)
++ if (TARGET_X32 || ix86_indirect_branch_register)
+ operands[0] = convert_memory_address (word_mode, operands[0]);
+ cfun->machine->has_local_indirect_jump = true;
+ })
+@@ -11764,7 +11764,7 @@
+ [(call (mem:QI (match_operand:W 0 "memory_operand" "m"))
+ (match_operand 1))
+ (unspec [(const_int 0)] UNSPEC_PEEPSIB)]
+- "!TARGET_X32"
++ "!TARGET_X32 && !ix86_indirect_branch_register"
+ "* return ix86_output_call_insn (insn, operands[0]);"
+ [(set_attr "type" "call")])
+
+@@ -11773,7 +11773,9 @@
+ (match_operand:W 1 "memory_operand"))
+ (call (mem:QI (match_dup 0))
+ (match_operand 3))]
+- "!TARGET_X32 && SIBLING_CALL_P (peep2_next_insn (1))
++ "!TARGET_X32
++ && !ix86_indirect_branch_register
++ && SIBLING_CALL_P (peep2_next_insn (1))
+ && peep2_reg_dead_p (2, operands[0])"
+ [(parallel [(call (mem:QI (match_dup 1))
+ (match_dup 3))
+@@ -11785,7 +11787,9 @@
+ (unspec_volatile [(const_int 0)] UNSPECV_BLOCKAGE)
+ (call (mem:QI (match_dup 0))
+ (match_operand 3))]
+- "!TARGET_X32 && SIBLING_CALL_P (peep2_next_insn (2))
++ "!TARGET_X32
++ && !ix86_indirect_branch_register
++ && SIBLING_CALL_P (peep2_next_insn (2))
+ && peep2_reg_dead_p (3, operands[0])"
+ [(unspec_volatile [(const_int 0)] UNSPECV_BLOCKAGE)
+ (parallel [(call (mem:QI (match_dup 1))
+@@ -11806,7 +11810,7 @@
+ })
+
+ (define_insn "*call_pop"
+- [(call (mem:QI (match_operand:SI 0 "call_insn_operand" "lmBz"))
++ [(call (mem:QI (match_operand:SI 0 "call_insn_operand" "lBwBz"))
+ (match_operand 1))
+ (set (reg:SI SP_REG)
+ (plus:SI (reg:SI SP_REG)
+@@ -11826,7 +11830,7 @@
+ [(set_attr "type" "call")])
+
+ (define_insn "*sibcall_pop_memory"
+- [(call (mem:QI (match_operand:SI 0 "memory_operand" "m"))
++ [(call (mem:QI (match_operand:SI 0 "memory_operand" "Bs"))
+ (match_operand 1))
+ (set (reg:SI SP_REG)
+ (plus:SI (reg:SI SP_REG)
+@@ -11878,7 +11882,9 @@
+ [(set (match_operand:W 0 "register_operand")
+ (match_operand:W 1 "memory_operand"))
+ (set (pc) (match_dup 0))]
+- "!TARGET_X32 && peep2_reg_dead_p (2, operands[0])"
++ "!TARGET_X32
++ && !ix86_indirect_branch_register
++ && peep2_reg_dead_p (2, operands[0])"
+ [(set (pc) (match_dup 1))])
+
+ ;; Call subroutine, returning value in operand 0
+@@ -11928,7 +11934,7 @@
+ (call (mem:QI (match_operand:W 1 "memory_operand" "m"))
+ (match_operand 2)))
+ (unspec [(const_int 0)] UNSPEC_PEEPSIB)]
+- "!TARGET_X32"
++ "!TARGET_X32 && !ix86_indirect_branch_register"
+ "* return ix86_output_call_insn (insn, operands[1]);"
+ [(set_attr "type" "callv")])
+
+@@ -11938,7 +11944,9 @@
+ (set (match_operand 2)
+ (call (mem:QI (match_dup 0))
+ (match_operand 3)))]
+- "!TARGET_X32 && SIBLING_CALL_P (peep2_next_insn (1))
++ "!TARGET_X32
++ && !ix86_indirect_branch_register
++ && SIBLING_CALL_P (peep2_next_insn (1))
+ && peep2_reg_dead_p (2, operands[0])"
+ [(parallel [(set (match_dup 2)
+ (call (mem:QI (match_dup 1))
+@@ -11952,7 +11960,9 @@
+ (set (match_operand 2)
+ (call (mem:QI (match_dup 0))
+ (match_operand 3)))]
+- "!TARGET_X32 && SIBLING_CALL_P (peep2_next_insn (2))
++ "!TARGET_X32
++ && !ix86_indirect_branch_register
++ && SIBLING_CALL_P (peep2_next_insn (2))
+ && peep2_reg_dead_p (3, operands[0])"
+ [(unspec_volatile [(const_int 0)] UNSPECV_BLOCKAGE)
+ (parallel [(set (match_dup 2)
+@@ -11976,7 +11986,7 @@
+
+ (define_insn "*call_value_pop"
+ [(set (match_operand 0)
+- (call (mem:QI (match_operand:SI 1 "call_insn_operand" "lmBz"))
++ (call (mem:QI (match_operand:SI 1 "call_insn_operand" "lBwBz"))
+ (match_operand 2)))
+ (set (reg:SI SP_REG)
+ (plus:SI (reg:SI SP_REG)
+Index: b/src/gcc/config/i386/i386.opt
+===================================================================
+--- a/src/gcc/config/i386/i386.opt
++++ b/src/gcc/config/i386/i386.opt
+@@ -900,3 +900,7 @@ Enum(indirect_branch) String(thunk-inlin
+
+ EnumValue
+ Enum(indirect_branch) String(thunk-extern) Value(indirect_branch_thunk_extern)
++
++mindirect-branch-register
++Target Report Var(ix86_indirect_branch_register) Init(0)
++Force indirect call and jump via register.
+Index: b/src/gcc/config/i386/predicates.md
+===================================================================
+--- a/src/gcc/config/i386/predicates.md
++++ b/src/gcc/config/i386/predicates.md
+@@ -607,7 +607,8 @@
+ ;; Test for a valid operand for indirect branch.
+ (define_predicate "indirect_branch_operand"
+ (ior (match_operand 0 "register_operand")
+- (and (not (match_test "TARGET_X32"))
++ (and (not (match_test "ix86_indirect_branch_register"))
++ (not (match_test "TARGET_X32"))
+ (match_operand 0 "memory_operand"))))
+
+ ;; Test for a valid operand for a call instruction.
+@@ -616,7 +617,8 @@
+ (ior (match_test "constant_call_address_operand
+ (op, mode == VOIDmode ? mode : Pmode)")
+ (match_operand 0 "call_register_no_elim_operand")
+- (and (not (match_test "TARGET_X32"))
++ (and (not (match_test "ix86_indirect_branch_register"))
++ (not (match_test "TARGET_X32"))
+ (match_operand 0 "memory_operand"))))
+
+ ;; Similarly, but for tail calls, in which we cannot allow memory references.
+@@ -624,7 +626,8 @@
+ (ior (match_test "constant_call_address_operand
+ (op, mode == VOIDmode ? mode : Pmode)")
+ (match_operand 0 "register_no_elim_operand")
+- (and (not (match_test "TARGET_X32"))
++ (and (not (match_test "ix86_indirect_branch_register"))
++ (not (match_test "TARGET_X32"))
+ (match_operand 0 "sibcall_memory_operand"))))
+
+ ;; Match exactly zero.
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-1.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-1.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-1.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=thunk -fno-pic" } */
++/* { dg-options "-O2 -mno-indirect-branch-register -mfunction-return=keep -mindirect-branch=thunk -fno-pic" } */
+
+ typedef void (*dispatch_t)(long offset);
+
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-2.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-2.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-2.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=thunk -fno-pic" } */
++/* { dg-options "-O2 -mno-indirect-branch-register -mfunction-return=keep -mindirect-branch=thunk -fno-pic" } */
+
+ typedef void (*dispatch_t)(long offset);
+
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-3.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-3.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-3.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=thunk -fno-pic" } */
++/* { dg-options "-O2 -mno-indirect-branch-register -mno-indirect-branch-register -mno-indirect-branch-register -mfunction-return=keep -mindirect-branch=thunk -fno-pic" } */
+
+ typedef void (*dispatch_t)(long offset);
+
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-4.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-4.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-4.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=thunk -fno-pic" } */
++/* { dg-options "-O2 -mno-indirect-branch-register -mno-indirect-branch-register -mno-indirect-branch-register -mfunction-return=keep -mindirect-branch=thunk -fno-pic" } */
+
+ typedef void (*dispatch_t)(long offset);
+
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-7.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-7.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-7.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=thunk -fno-pic" } */
++/* { dg-options "-O2 -mno-indirect-branch-register -mfunction-return=keep -mindirect-branch=thunk -fno-pic" } */
+
+ void func0 (void);
+ void func1 (void);
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-1.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-1.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-1.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mfunction-return=keep -fno-pic" } */
++/* { dg-options "-O2 -mno-indirect-branch-register -mfunction-return=keep -fno-pic" } */
+
+ typedef void (*dispatch_t)(long offset);
+
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-2.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-2.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-2.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mfunction-return=keep -fno-pic" } */
++/* { dg-options "-O2 -mno-indirect-branch-register -mfunction-return=keep -fno-pic" } */
+
+ typedef void (*dispatch_t)(long offset);
+
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-3.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-3.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-3.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mfunction-return=keep -fno-pic" } */
++/* { dg-options "-O2 -mno-indirect-branch-register -mfunction-return=keep -fno-pic" } */
+
+ typedef void (*dispatch_t)(long offset);
+
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-4.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-4.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-4.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mfunction-return=keep -fno-pic" } */
++/* { dg-options "-O2 -mno-indirect-branch-register -mfunction-return=keep -fno-pic" } */
+
+ typedef void (*dispatch_t)(long offset);
+
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-5.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-5.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-5.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mfunction-return=keep -fno-pic" } */
++/* { dg-options "-O2 -mno-indirect-branch-register -mfunction-return=keep -fno-pic" } */
+
+ typedef void (*dispatch_t)(long offset);
+
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-6.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-6.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-6.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mfunction-return=keep -fno-pic" } */
++/* { dg-options "-O2 -mno-indirect-branch-register -mfunction-return=keep -fno-pic" } */
+
+ typedef void (*dispatch_t)(long offset);
+
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-7.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-7.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-7.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mfunction-return=keep -fno-pic" } */
++/* { dg-options "-O2 -mno-indirect-branch-register -mfunction-return=keep -fno-pic" } */
+
+ void func0 (void);
+ void func1 (void);
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-1.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-1.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-1.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile { target { ! x32 } } } */
+-/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=thunk -fcheck-pointer-bounds -mmpx -fno-pic" } */
++/* { dg-options "-O2 -mno-indirect-branch-register -mfunction-return=keep -mindirect-branch=thunk -fcheck-pointer-bounds -mmpx -fno-pic" } */
+
+ void (*dispatch) (char *);
+ char buf[10];
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-2.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-2.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-2.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile { target { ! x32 } } } */
+-/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=thunk -fcheck-pointer-bounds -mmpx -fno-pic" } */
++/* { dg-options "-O2 -mno-indirect-branch-register -mfunction-return=keep -mindirect-branch=thunk -fcheck-pointer-bounds -mmpx -fno-pic" } */
+
+ void (*dispatch) (char *);
+ char buf[10];
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-1.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-1.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-1.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=thunk-extern -fno-pic" } */
++/* { dg-options "-O2 -mno-indirect-branch-register -mfunction-return=keep -mindirect-branch=thunk-extern -fno-pic" } */
+
+ typedef void (*dispatch_t)(long offset);
+
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-2.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-2.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-2.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=thunk-extern -fno-pic" } */
++/* { dg-options "-O2 -mno-indirect-branch-register -mfunction-return=keep -mindirect-branch=thunk-extern -fno-pic" } */
+
+ typedef void (*dispatch_t)(long offset);
+
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-3.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-3.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-3.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=thunk-extern -fno-pic" } */
++/* { dg-options "-O2 -mno-indirect-branch-register -mfunction-return=keep -mindirect-branch=thunk-extern -fno-pic" } */
+
+ typedef void (*dispatch_t)(long offset);
+
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-4.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-4.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-4.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=thunk-extern -fno-pic" } */
++/* { dg-options "-O2 -mno-indirect-branch-register -mfunction-return=keep -mindirect-branch=thunk-extern -fno-pic" } */
+
+ typedef void (*dispatch_t)(long offset);
+
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-7.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-7.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-7.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=thunk-extern -fno-pic" } */
++/* { dg-options "-O2 -mno-indirect-branch-register -mfunction-return=keep -mindirect-branch=thunk-extern -fno-pic" } */
+
+ void func0 (void);
+ void func1 (void);
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-1.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-1.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-1.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=thunk-inline -fno-pic" } */
++/* { dg-options "-O2 -mno-indirect-branch-register -mfunction-return=keep -mindirect-branch=thunk-inline -fno-pic" } */
+
+ typedef void (*dispatch_t)(long offset);
+
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-2.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-2.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-2.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=thunk-inline -fno-pic" } */
++/* { dg-options "-O2 -mno-indirect-branch-register -mfunction-return=keep -mindirect-branch=thunk-inline -fno-pic" } */
+
+ typedef void (*dispatch_t)(long offset);
+
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-3.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-3.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-3.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=thunk-inline -fno-pic" } */
++/* { dg-options "-O2 -mno-indirect-branch-register -mfunction-return=keep -mindirect-branch=thunk-inline -fno-pic" } */
+
+ typedef void (*dispatch_t)(long offset);
+
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-4.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-4.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-4.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=thunk-inline -fno-pic" } */
++/* { dg-options "-O2 -mno-indirect-branch-register -mfunction-return=keep -mindirect-branch=thunk-inline -fno-pic" } */
+
+ typedef void (*dispatch_t)(long offset);
+
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-7.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-7.c
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-inline-7.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=thunk-inline -fno-pic" } */
++/* { dg-options "-O2 -mno-indirect-branch-register -mfunction-return=keep -mindirect-branch=thunk-inline -fno-pic" } */
+
+ void func0 (void);
+ void func1 (void);
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-register-1.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-register-1.c
+@@ -0,0 +1,22 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -mindirect-branch=thunk -mindirect-branch-register -fno-pic" } */
++
++typedef void (*dispatch_t)(long offset);
++
++dispatch_t dispatch;
++
++void
++male_indirect_jump (long offset)
++{
++ dispatch(offset);
++}
++
++/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk_(r|e)ax" } } */
++/* { dg-final { scan-assembler "jmp\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler "call\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler "mov\[ \t\](%eax|%rax), \\((%esp|%rsp)\\)" } } */
++/* { dg-final { scan-assembler {\tpause} } } */
++/* { dg-final { scan-assembler-not "push(?:l|q)\[ \t\]*_?dispatch" } } */
++/* { dg-final { scan-assembler-not "pushq\[ \t\]%rax" } } */
++/* { dg-final { scan-assembler-not "__x86_indirect_thunk\n" } } */
++/* { dg-final { scan-assembler-not "__x86_indirect_thunk_bnd\n" } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-register-2.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-register-2.c
+@@ -0,0 +1,20 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -mindirect-branch=thunk-inline -mindirect-branch-register -fno-pic" } */
++
++typedef void (*dispatch_t)(long offset);
++
++dispatch_t dispatch;
++
++void
++male_indirect_jump (long offset)
++{
++ dispatch(offset);
++}
++
++/* { dg-final { scan-assembler "jmp\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler "call\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler "mov\[ \t\](%eax|%rax), \\((%esp|%rsp)\\)" } } */
++/* { dg-final { scan-assembler {\tpause} } } */
++/* { dg-final { scan-assembler-not "push(?:l|q)\[ \t\]*_?dispatch" } } */
++/* { dg-final { scan-assembler-not "pushq\[ \t\]%rax" } } */
++/* { dg-final { scan-assembler-not "__x86_indirect_thunk" } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-register-3.c
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-register-3.c
+@@ -0,0 +1,19 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -mindirect-branch=thunk-extern -mindirect-branch-register -fno-pic" } */
++
++typedef void (*dispatch_t)(long offset);
++
++dispatch_t dispatch;
++
++void
++male_indirect_jump (long offset)
++{
++ dispatch(offset);
++}
++
++/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk_(r|e)ax" } } */
++/* { dg-final { scan-assembler-not "push(?:l|q)\[ \t\]*_?dispatch" } } */
++/* { dg-final { scan-assembler-not "pushq\[ \t\]%rax" } } */
++/* { dg-final { scan-assembler-not {\t(pause|pause|nop)} } } */
++/* { dg-final { scan-assembler-not "jmp\[ \t\]*\.LIND" } } */
++/* { dg-final { scan-assembler-not "call\[ \t\]*\.LIND" } } */
+Index: b/src/gcc/testsuite/gcc.target/i386/ret-thunk-10.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/ret-thunk-10.c
++++ b/src/gcc/testsuite/gcc.target/i386/ret-thunk-10.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mfunction-return=thunk-inline -mindirect-branch=thunk -fno-pic" } */
++/* { dg-options "-O2 -mno-indirect-branch-register -mno-indirect-branch-register -mfunction-return=thunk-inline -mindirect-branch=thunk -fno-pic" } */
+
+ extern void (*bar) (void);
+
+Index: b/src/gcc/testsuite/gcc.target/i386/ret-thunk-11.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/ret-thunk-11.c
++++ b/src/gcc/testsuite/gcc.target/i386/ret-thunk-11.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mfunction-return=thunk-extern -mindirect-branch=thunk -fno-pic" } */
++/* { dg-options "-O2 -mno-indirect-branch-register -mno-indirect-branch-register -mno-indirect-branch-register -mno-indirect-branch-register -mfunction-return=thunk-extern -mindirect-branch=thunk -fno-pic" } */
+
+ extern void (*bar) (void);
+
+Index: b/src/gcc/testsuite/gcc.target/i386/ret-thunk-12.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/ret-thunk-12.c
++++ b/src/gcc/testsuite/gcc.target/i386/ret-thunk-12.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=thunk -fno-pic" } */
++/* { dg-options "-O2 -mno-indirect-branch-register -mno-indirect-branch-register -mno-indirect-branch-register -mno-indirect-branch-register -mfunction-return=keep -mindirect-branch=thunk -fno-pic" } */
+
+ extern void (*bar) (void);
+
+Index: b/src/gcc/testsuite/gcc.target/i386/ret-thunk-13.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/ret-thunk-13.c
++++ b/src/gcc/testsuite/gcc.target/i386/ret-thunk-13.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=thunk-inline -fno-pic" } */
++/* { dg-options "-O2 -mno-indirect-branch-register -mfunction-return=keep -mindirect-branch=thunk-inline -fno-pic" } */
+
+ extern void (*bar) (void);
+ extern int foo (void) __attribute__ ((function_return("thunk")));
+Index: b/src/gcc/testsuite/gcc.target/i386/ret-thunk-14.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/ret-thunk-14.c
++++ b/src/gcc/testsuite/gcc.target/i386/ret-thunk-14.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=thunk-extern -fno-pic" } */
++/* { dg-options "-O2 -mno-indirect-branch-register -mfunction-return=keep -mindirect-branch=thunk-extern -fno-pic" } */
+
+ extern void (*bar) (void);
+
+Index: b/src/gcc/testsuite/gcc.target/i386/ret-thunk-15.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/ret-thunk-15.c
++++ b/src/gcc/testsuite/gcc.target/i386/ret-thunk-15.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=keep -fno-pic" } */
++/* { dg-options "-O2 -mno-indirect-branch-register -mno-indirect-branch-register -mno-indirect-branch-register -mno-indirect-branch-register -mfunction-return=keep -mindirect-branch=keep -fno-pic" } */
+
+ extern void (*bar) (void);
+
+Index: b/src/gcc/testsuite/gcc.target/i386/ret-thunk-9.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/ret-thunk-9.c
++++ b/src/gcc/testsuite/gcc.target/i386/ret-thunk-9.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mfunction-return=thunk -mindirect-branch=thunk -fno-pic" } */
++/* { dg-options "-O2 -mno-indirect-branch-register -mno-indirect-branch-register -mfunction-return=thunk -mindirect-branch=thunk -fno-pic" } */
+
+ extern void (*bar) (void);
+
diff --git a/development/gcc5/patches/0008-x86-Add-V-register-operand-modifier-doc.diff b/development/gcc5/patches/0008-x86-Add-V-register-operand-modifier-doc.diff
new file mode 100644
index 0000000000..b3bd93a218
--- /dev/null
+++ b/development/gcc5/patches/0008-x86-Add-V-register-operand-modifier-doc.diff
@@ -0,0 +1,65 @@
+From 8a47615dd04a02fdae9691f5ad73fd5a5530c156 Mon Sep 17 00:00:00 2001
+From: hjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>
+Date: Tue, 16 Jan 2018 11:19:51 +0000
+Subject: [PATCH 8/9] x86: Add 'V' register operand modifier (documentation)
+
+Add 'V', a special modifier which prints the name of the full integer
+register without '%'. For
+
+extern void (*func_p) (void);
+
+void
+foo (void)
+{
+ asm ("call __x86_indirect_thunk_%V0" : : "a" (func_p));
+}
+
+it generates:
+
+foo:
+ movq func_p(%rip), %rax
+ call __x86_indirect_thunk_rax
+ ret
+
+gcc/
+
+ Backport from mainline
+ 2018-01-14 H.J. Lu <hongjiu.lu@intel.com>
+
+ * config/i386/i386.c (print_reg): Print the name of the full
+ integer register without '%'.
+ (ix86_print_operand): Handle 'V'.
+ * doc/extend.texi: Document 'V' modifier.
+
+gcc/testsuite/
+
+ Backport from mainline
+ 2018-01-14 H.J. Lu <hongjiu.lu@intel.com>
+
+ * gcc.target/i386/indirect-thunk-register-4.c: New test.
+
+
+git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-7-branch@256736 138bc75d-0d04-0410-961f-82ee72b054a4
+---
+ gcc/ChangeLog | 10 ++++++++++
+ gcc/config/i386/i386.c | 13 ++++++++++++-
+ gcc/doc/extend.texi | 3 +++
+ gcc/testsuite/ChangeLog | 7 +++++++
+ gcc/testsuite/gcc.target/i386/indirect-thunk-register-4.c | 13 +++++++++++++
+ 5 files changed, 45 insertions(+), 1 deletion(-)
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-register-4.c
+
+diff --git a/gcc/doc/extend.texi b/gcc/doc/extend.texi
+index 46e0a36..9db9e0e 100644
+--- a/src/gcc/doc/extend.texi
++++ b/src/gcc/doc/extend.texi
+@@ -8778,6 +8778,9 @@ The table below shows the list of supported modifiers and their effects.
+ @tab @code{2}
+ @end multitable
+
++@code{V} is a special modifier which prints the name of the full integer
++register without @code{%}.
++
+ @anchor{x86floatingpointasmoperands}
+ @subsubsection x86 Floating-Point @code{asm} Operands
+
diff --git a/development/gcc5/patches/0008-x86-Add-V-register-operand-modifier.diff b/development/gcc5/patches/0008-x86-Add-V-register-operand-modifier.diff
new file mode 100644
index 0000000000..fb1ccd9883
--- /dev/null
+++ b/development/gcc5/patches/0008-x86-Add-V-register-operand-modifier.diff
@@ -0,0 +1,125 @@
+From 8a47615dd04a02fdae9691f5ad73fd5a5530c156 Mon Sep 17 00:00:00 2001
+From: hjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>
+Date: Tue, 16 Jan 2018 11:19:51 +0000
+Subject: [PATCH 8/9] x86: Add 'V' register operand modifier
+
+Add 'V', a special modifier which prints the name of the full integer
+register without '%'. For
+
+extern void (*func_p) (void);
+
+void
+foo (void)
+{
+ asm ("call __x86_indirect_thunk_%V0" : : "a" (func_p));
+}
+
+it generates:
+
+foo:
+ movq func_p(%rip), %rax
+ call __x86_indirect_thunk_rax
+ ret
+
+gcc/
+
+ Backport from mainline
+ 2018-01-14 H.J. Lu <hongjiu.lu@intel.com>
+
+ * config/i386/i386.c (print_reg): Print the name of the full
+ integer register without '%'.
+ (ix86_print_operand): Handle 'V'.
+ * doc/extend.texi: Document 'V' modifier.
+
+gcc/testsuite/
+
+ Backport from mainline
+ 2018-01-14 H.J. Lu <hongjiu.lu@intel.com>
+
+ * gcc.target/i386/indirect-thunk-register-4.c: New test.
+
+
+git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-7-branch@256736 138bc75d-0d04-0410-961f-82ee72b054a4
+---
+ gcc/ChangeLog | 10 ++++++++++
+ gcc/config/i386/i386.c | 13 ++++++++++++-
+ gcc/doc/extend.texi | 3 +++
+ gcc/testsuite/ChangeLog | 7 +++++++
+ gcc/testsuite/gcc.target/i386/indirect-thunk-register-4.c | 13 +++++++++++++
+ 5 files changed, 45 insertions(+), 1 deletion(-)
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-register-4.c
+
+diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
+index 8fb8902..1bbdd0c 100644
+--- a/src/gcc/config/i386/i386.c
++++ b/src/gcc/config/i386/i386.c
+@@ -17941,6 +17941,7 @@ put_condition_code (enum rtx_code code, machine_mode mode, bool reverse,
+ If CODE is 'h', pretend the reg is the 'high' byte register.
+ If CODE is 'y', print "st(0)" instead of "st", if the reg is stack op.
+ If CODE is 'd', duplicate the operand for AVX instruction.
++ If CODE is 'V', print naked full integer register name without %.
+ */
+
+ void
+@@ -17951,7 +17952,7 @@ print_reg (rtx x, int code, FILE *file)
+ unsigned int regno;
+ bool duplicated = code == 'd' && TARGET_AVX;
+
+- if (ASSEMBLER_DIALECT == ASM_ATT)
++ if (ASSEMBLER_DIALECT == ASM_ATT && code != 'V')
+ putc ('%', file);
+
+ if (x == pc_rtx)
+@@ -17999,6 +18000,14 @@ print_reg (rtx x, int code, FILE *file)
+ else
+ code = GET_MODE_SIZE (GET_MODE (x));
+
++ if (code == 'V')
++ {
++ if (GENERAL_REGNO_P (regno))
++ code = GET_MODE_SIZE (word_mode);
++ else
++ error ("'V' modifier on non-integer register");
++ }
++
+ /* Irritatingly, AMD extended registers use different naming convention
+ from the normal registers: "r%d[bwd]" */
+ if (REX_INT_REGNO_P (regno))
+@@ -18118,6 +18127,7 @@ print_reg (rtx x, int code, FILE *file)
+ & -- print some in-use local-dynamic symbol name.
+ H -- print a memory address offset by 8; used for sse high-parts
+ Y -- print condition for XOP pcom* instruction.
++ V -- print naked full integer register name without %.
+ + -- print a branch hint as 'cs' or 'ds' prefix
+ ; -- print a semicolon (after prefixes due to bug in older gas).
+ ~ -- print "i" if TARGET_AVX2, "f" otherwise.
+@@ -18342,6 +18352,7 @@ ix86_print_operand (FILE *file, rtx x, int code)
+ case 'X':
+ case 'P':
+ case 'p':
++ case 'V':
+ break;
+
+ case 's':
+diff --git a/gcc/testsuite/gcc.target/i386/indirect-thunk-register-4.c b/gcc/testsuite/gcc.target/i386/indirect-thunk-register-4.c
+new file mode 100644
+index 0000000..f0cd9b7
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-register-4.c
+@@ -0,0 +1,13 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -mindirect-branch=keep -fno-pic" } */
++
++extern void (*func_p) (void);
++
++void
++foo (void)
++{
++ asm("call __x86_indirect_thunk_%V0" : : "a" (func_p));
++}
++
++/* { dg-final { scan-assembler "call\[ \t\]*__x86_indirect_thunk_eax" { target ia32 } } } */
++/* { dg-final { scan-assembler "call\[ \t\]*__x86_indirect_thunk_rax" { target { ! ia32 } } } } */
+--
+2.7.4
+
diff --git a/development/gcc5/patches/0009-x86-Disallow-mindirect-branch-mfunction-return-with-.diff b/development/gcc5/patches/0009-x86-Disallow-mindirect-branch-mfunction-return-with-.diff
new file mode 100644
index 0000000000..fdaab625ab
--- /dev/null
+++ b/development/gcc5/patches/0009-x86-Disallow-mindirect-branch-mfunction-return-with-.diff
@@ -0,0 +1,275 @@
+From 5d1c53c6fd593de2360c1a2ae44ebf5fa3c5263b Mon Sep 17 00:00:00 2001
+From: hjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>
+Date: Tue, 16 Jan 2018 11:22:01 +0000
+Subject: [PATCH 9/9] x86: Disallow -mindirect-branch=/-mfunction-return= with
+ -mcmodel=large
+
+Since the thunk function may not be reachable in large code model,
+-mcmodel=large is incompatible with -mindirect-branch=thunk,
+-mindirect-branch=thunk-extern, -mfunction-return=thunk and
+-mfunction-return=thunk-extern. Issue an error when they are used with
+-mcmodel=large.
+
+gcc/
+
+ Backport from mainline
+ 2018-01-14 H.J. Lu <hongjiu.lu@intel.com>
+
+ * config/i386/i386.c (ix86_set_indirect_branch_type): Disallow
+ -mcmodel=large with -mindirect-branch=thunk,
+ -mindirect-branch=thunk-extern, -mfunction-return=thunk and
+ -mfunction-return=thunk-extern.
+ * doc/invoke.texi: Document -mcmodel=large is incompatible with
+ -mindirect-branch=thunk, -mindirect-branch=thunk-extern,
+ -mfunction-return=thunk and -mfunction-return=thunk-extern.
+
+gcc/testsuite/
+
+ Backport from mainline
+ 2018-01-14 H.J. Lu <hongjiu.lu@intel.com>
+
+ * gcc.target/i386/indirect-thunk-10.c: New test.
+ * gcc.target/i386/indirect-thunk-8.c: Likewise.
+ * gcc.target/i386/indirect-thunk-9.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-10.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-11.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-9.c: Likewise.
+ * gcc.target/i386/ret-thunk-17.c: Likewise.
+ * gcc.target/i386/ret-thunk-18.c: Likewise.
+ * gcc.target/i386/ret-thunk-19.c: Likewise.
+ * gcc.target/i386/ret-thunk-20.c: Likewise.
+ * gcc.target/i386/ret-thunk-21.c: Likewise.
+
+
+git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-7-branch@256737 138bc75d-0d04-0410-961f-82ee72b054a4
+---
+ gcc/ChangeLog | 13 +++++++++++
+ gcc/config/i386/i386.c | 26 ++++++++++++++++++++++
+ gcc/doc/invoke.texi | 11 +++++++++
+ gcc/testsuite/ChangeLog | 17 ++++++++++++++
+ gcc/testsuite/gcc.target/i386/indirect-thunk-10.c | 7 ++++++
+ gcc/testsuite/gcc.target/i386/indirect-thunk-8.c | 7 ++++++
+ gcc/testsuite/gcc.target/i386/indirect-thunk-9.c | 7 ++++++
+ .../gcc.target/i386/indirect-thunk-attr-10.c | 9 ++++++++
+ .../gcc.target/i386/indirect-thunk-attr-11.c | 9 ++++++++
+ .../gcc.target/i386/indirect-thunk-attr-9.c | 9 ++++++++
+ gcc/testsuite/gcc.target/i386/ret-thunk-17.c | 7 ++++++
+ gcc/testsuite/gcc.target/i386/ret-thunk-18.c | 8 +++++++
+ gcc/testsuite/gcc.target/i386/ret-thunk-19.c | 8 +++++++
+ gcc/testsuite/gcc.target/i386/ret-thunk-20.c | 9 ++++++++
+ gcc/testsuite/gcc.target/i386/ret-thunk-21.c | 9 ++++++++
+ 15 files changed, 156 insertions(+)
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-10.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-8.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-9.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-attr-10.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-attr-11.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-attr-9.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-17.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-18.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-19.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-20.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-21.c
+
+diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
+index 1bbdd0c..e758387 100644
+--- a/src/gcc/config/i386/i386.c
++++ b/src/gcc/config/i386/i386.c
+@@ -7187,6 +7187,19 @@ ix86_set_indirect_branch_type (tree fndecl)
+ }
+ else
+ cfun->machine->indirect_branch_type = ix86_indirect_branch;
++
++ /* -mcmodel=large is not compatible with -mindirect-branch=thunk
++ nor -mindirect-branch=thunk-extern. */
++ if ((ix86_cmodel == CM_LARGE || ix86_cmodel == CM_LARGE_PIC)
++ && ((cfun->machine->indirect_branch_type
++ == indirect_branch_thunk_extern)
++ || (cfun->machine->indirect_branch_type
++ == indirect_branch_thunk)))
++ error ("%<-mindirect-branch=%s%> and %<-mcmodel=large%> are not "
++ "compatible",
++ ((cfun->machine->indirect_branch_type
++ == indirect_branch_thunk_extern)
++ ? "thunk-extern" : "thunk"));
+ }
+
+ if (cfun->machine->function_return_type == indirect_branch_unset)
+@@ -7212,6 +7225,19 @@ ix86_set_indirect_branch_type (tree fndecl)
+ }
+ else
+ cfun->machine->function_return_type = ix86_function_return;
++
++ /* -mcmodel=large is not compatible with -mfunction-return=thunk
++ nor -mfunction-return=thunk-extern. */
++ if ((ix86_cmodel == CM_LARGE || ix86_cmodel == CM_LARGE_PIC)
++ && ((cfun->machine->function_return_type
++ == indirect_branch_thunk_extern)
++ || (cfun->machine->function_return_type
++ == indirect_branch_thunk)))
++ error ("%<-mfunction-return=%s%> and %<-mcmodel=large%> are not "
++ "compatible",
++ ((cfun->machine->function_return_type
++ == indirect_branch_thunk_extern)
++ ? "thunk-extern" : "thunk"));
+ }
+ }
+
+diff --git a/gcc/testsuite/gcc.target/i386/indirect-thunk-10.c b/gcc/testsuite/gcc.target/i386/indirect-thunk-10.c
+new file mode 100644
+index 0000000..a0674bd
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-10.c
+@@ -0,0 +1,7 @@
++/* { dg-do compile { target { lp64 } } } */
++/* { dg-options "-O2 -mindirect-branch=thunk-inline -mfunction-return=keep -mcmodel=large" } */
++
++void
++bar (void)
++{
++}
+diff --git a/gcc/testsuite/gcc.target/i386/indirect-thunk-8.c b/gcc/testsuite/gcc.target/i386/indirect-thunk-8.c
+new file mode 100644
+index 0000000..7a80a89
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-8.c
+@@ -0,0 +1,7 @@
++/* { dg-do compile { target { lp64 } } } */
++/* { dg-options "-O2 -mindirect-branch=thunk -mfunction-return=keep -mcmodel=large" } */
++
++void
++bar (void)
++{ /* { dg-error "'-mindirect-branch=thunk' and '-mcmodel=large' are not compatible" } */
++}
+diff --git a/gcc/testsuite/gcc.target/i386/indirect-thunk-9.c b/gcc/testsuite/gcc.target/i386/indirect-thunk-9.c
+new file mode 100644
+index 0000000..d4d45c5
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-9.c
+@@ -0,0 +1,7 @@
++/* { dg-do compile { target { lp64 } } } */
++/* { dg-options "-O2 -mindirect-branch=thunk-extern -mfunction-return=keep -mcmodel=large" } */
++
++void
++bar (void)
++{ /* { dg-error "'-mindirect-branch=thunk-extern' and '-mcmodel=large' are not compatible" } */
++}
+diff --git a/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-10.c b/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-10.c
+new file mode 100644
+index 0000000..3a2aead
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-10.c
+@@ -0,0 +1,9 @@
++/* { dg-do compile { target { lp64 } } } */
++/* { dg-options "-O2 -mindirect-branch=keep -mfunction-return=keep -mcmodel=large" } */
++/* { dg-additional-options "-fPIC" { target fpic } } */
++
++__attribute__ ((indirect_branch("thunk-extern")))
++void
++bar (void)
++{ /* { dg-error "'-mindirect-branch=thunk-extern' and '-mcmodel=large' are not compatible" } */
++}
+diff --git a/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-11.c b/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-11.c
+new file mode 100644
+index 0000000..8e52f03
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-11.c
+@@ -0,0 +1,9 @@
++/* { dg-do compile { target { lp64 } } } */
++/* { dg-options "-O2 -mindirect-branch=keep -mfunction-return=keep -mcmodel=large" } */
++/* { dg-additional-options "-fPIC" { target fpic } } */
++
++__attribute__ ((indirect_branch("thunk-inline")))
++void
++bar (void)
++{
++}
+diff --git a/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-9.c b/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-9.c
+new file mode 100644
+index 0000000..bdaa4f6
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-9.c
+@@ -0,0 +1,9 @@
++/* { dg-do compile { target { lp64 } } } */
++/* { dg-options "-O2 -mindirect-branch=keep -mfunction-return=keep -mcmodel=large" } */
++/* { dg-additional-options "-fPIC" { target fpic } } */
++
++__attribute__ ((indirect_branch("thunk")))
++void
++bar (void)
++{ /* { dg-error "'-mindirect-branch=thunk' and '-mcmodel=large' are not compatible" } */
++}
+diff --git a/gcc/testsuite/gcc.target/i386/ret-thunk-17.c b/gcc/testsuite/gcc.target/i386/ret-thunk-17.c
+new file mode 100644
+index 0000000..0605e2c
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/ret-thunk-17.c
+@@ -0,0 +1,7 @@
++/* { dg-do compile { target { lp64 } } } */
++/* { dg-options "-O2 -mfunction-return=thunk -mindirect-branch=keep -mcmodel=large" } */
++
++void
++bar (void)
++{ /* { dg-error "'-mfunction-return=thunk' and '-mcmodel=large' are not compatible" } */
++}
+diff --git a/gcc/testsuite/gcc.target/i386/ret-thunk-18.c b/gcc/testsuite/gcc.target/i386/ret-thunk-18.c
+new file mode 100644
+index 0000000..307019d
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/ret-thunk-18.c
+@@ -0,0 +1,8 @@
++/* { dg-do compile { target { lp64 } } } */
++/* { dg-options "-O2 -mfunction-return=thunk-extern -mindirect-branch=keep -mcmodel=large" } */
++/* { dg-additional-options "-fPIC" { target fpic } } */
++
++void
++bar (void)
++{ /* { dg-error "'-mfunction-return=thunk-extern' and '-mcmodel=large' are not compatible" } */
++}
+diff --git a/gcc/testsuite/gcc.target/i386/ret-thunk-19.c b/gcc/testsuite/gcc.target/i386/ret-thunk-19.c
+new file mode 100644
+index 0000000..772617f
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/ret-thunk-19.c
+@@ -0,0 +1,8 @@
++/* { dg-do compile { target { lp64 } } } */
++/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=keep -mcmodel=large" } */
++
++__attribute__ ((function_return("thunk")))
++void
++bar (void)
++{ /* { dg-error "'-mfunction-return=thunk' and '-mcmodel=large' are not compatible" } */
++}
+diff --git a/gcc/testsuite/gcc.target/i386/ret-thunk-20.c b/gcc/testsuite/gcc.target/i386/ret-thunk-20.c
+new file mode 100644
+index 0000000..1e9f9bd
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/ret-thunk-20.c
+@@ -0,0 +1,9 @@
++/* { dg-do compile { target { lp64 } } } */
++/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=keep -mcmodel=large" } */
++/* { dg-additional-options "-fPIC" { target fpic } } */
++
++__attribute__ ((function_return("thunk-extern")))
++void
++bar (void)
++{ /* { dg-error "'-mfunction-return=thunk-extern' and '-mcmodel=large' are not compatible" } */
++}
+diff --git a/gcc/testsuite/gcc.target/i386/ret-thunk-21.c b/gcc/testsuite/gcc.target/i386/ret-thunk-21.c
+new file mode 100644
+index 0000000..eea07f7
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.target/i386/ret-thunk-21.c
+@@ -0,0 +1,9 @@
++/* { dg-do compile { target { lp64 } } } */
++/* { dg-options "-O2 -mfunction-return=keep -mindirect-branch=keep -mcmodel=large" } */
++/* { dg-additional-options "-fPIC" { target fpic } } */
++
++__attribute__ ((function_return("thunk-inline")))
++void
++bar (void)
++{
++}
+--
+2.7.4
+
diff --git a/development/gcc5/patches/0009-x86-Disallow-mindirect-branch-mfunction-return-with-doc.diff b/development/gcc5/patches/0009-x86-Disallow-mindirect-branch-mfunction-return-with-doc.diff
new file mode 100644
index 0000000000..c107900552
--- /dev/null
+++ b/development/gcc5/patches/0009-x86-Disallow-mindirect-branch-mfunction-return-with-doc.diff
@@ -0,0 +1,102 @@
+From 5d1c53c6fd593de2360c1a2ae44ebf5fa3c5263b Mon Sep 17 00:00:00 2001
+From: hjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>
+Date: Tue, 16 Jan 2018 11:22:01 +0000
+Subject: [PATCH 9/9] x86: Disallow -mindirect-branch=/-mfunction-return= with
+ -mcmodel=large
+
+Since the thunk function may not be reachable in large code model,
+-mcmodel=large is incompatible with -mindirect-branch=thunk,
+-mindirect-branch=thunk-extern, -mfunction-return=thunk and
+-mfunction-return=thunk-extern. Issue an error when they are used with
+-mcmodel=large.
+
+gcc/
+
+ Backport from mainline
+ 2018-01-14 H.J. Lu <hongjiu.lu@intel.com>
+
+ * config/i386/i386.c (ix86_set_indirect_branch_type): Disallow
+ -mcmodel=large with -mindirect-branch=thunk,
+ -mindirect-branch=thunk-extern, -mfunction-return=thunk and
+ -mfunction-return=thunk-extern.
+ * doc/invoke.texi: Document -mcmodel=large is incompatible with
+ -mindirect-branch=thunk, -mindirect-branch=thunk-extern,
+ -mfunction-return=thunk and -mfunction-return=thunk-extern.
+
+gcc/testsuite/
+
+ Backport from mainline
+ 2018-01-14 H.J. Lu <hongjiu.lu@intel.com>
+
+ * gcc.target/i386/indirect-thunk-10.c: New test.
+ * gcc.target/i386/indirect-thunk-8.c: Likewise.
+ * gcc.target/i386/indirect-thunk-9.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-10.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-11.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-9.c: Likewise.
+ * gcc.target/i386/ret-thunk-17.c: Likewise.
+ * gcc.target/i386/ret-thunk-18.c: Likewise.
+ * gcc.target/i386/ret-thunk-19.c: Likewise.
+ * gcc.target/i386/ret-thunk-20.c: Likewise.
+ * gcc.target/i386/ret-thunk-21.c: Likewise.
+
+
+git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-7-branch@256737 138bc75d-0d04-0410-961f-82ee72b054a4
+---
+ gcc/ChangeLog | 13 +++++++++++
+ gcc/config/i386/i386.c | 26 ++++++++++++++++++++++
+ gcc/doc/invoke.texi | 11 +++++++++
+ gcc/testsuite/ChangeLog | 17 ++++++++++++++
+ gcc/testsuite/gcc.target/i386/indirect-thunk-10.c | 7 ++++++
+ gcc/testsuite/gcc.target/i386/indirect-thunk-8.c | 7 ++++++
+ gcc/testsuite/gcc.target/i386/indirect-thunk-9.c | 7 ++++++
+ .../gcc.target/i386/indirect-thunk-attr-10.c | 9 ++++++++
+ .../gcc.target/i386/indirect-thunk-attr-11.c | 9 ++++++++
+ .../gcc.target/i386/indirect-thunk-attr-9.c | 9 ++++++++
+ gcc/testsuite/gcc.target/i386/ret-thunk-17.c | 7 ++++++
+ gcc/testsuite/gcc.target/i386/ret-thunk-18.c | 8 +++++++
+ gcc/testsuite/gcc.target/i386/ret-thunk-19.c | 8 +++++++
+ gcc/testsuite/gcc.target/i386/ret-thunk-20.c | 9 ++++++++
+ gcc/testsuite/gcc.target/i386/ret-thunk-21.c | 9 ++++++++
+ 15 files changed, 156 insertions(+)
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-10.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-8.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-9.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-attr-10.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-attr-11.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-attr-9.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-17.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-18.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-19.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-20.c
+ create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-21.c
+
+diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
+index 1e572b1..6f3c344 100644
+--- a/src/gcc/doc/invoke.texi
++++ b/src/gcc/doc/invoke.texi
+@@ -25699,6 +25699,11 @@ to external call and return thunk provided in a separate object file.
+ You can control this behavior for a specific function by using the
+ function attribute @code{indirect_branch}. @xref{Function Attributes}.
+
++Note that @option{-mcmodel=large} is incompatible with
++@option{-mindirect-branch=thunk} nor
++@option{-mindirect-branch=thunk-extern} since the thunk function may
++not be reachable in large code model.
++
+ @item -mfunction-return=@var{choice}
+ @opindex -mfunction-return
+ Convert function return with @var{choice}. The default is @samp{keep},
+@@ -25710,6 +25715,12 @@ object file. You can control this behavior for a specific function by
+ using the function attribute @code{function_return}.
+ @xref{Function Attributes}.
+
++Note that @option{-mcmodel=large} is incompatible with
++@option{-mfunction-return=thunk} nor
++@option{-mfunction-return=thunk-extern} since the thunk function may
++not be reachable in large code model.
++
++
+ @item -mindirect-branch-register
+ @opindex -mindirect-branch-register
+ Force indirect call and jump via register.
diff --git a/development/gcc5/patches/gcc-no_fixincludes.diff b/development/gcc5/patches/gcc-no_fixincludes.diff
new file mode 100644
index 0000000000..52b661613d
--- /dev/null
+++ b/development/gcc5/patches/gcc-no_fixincludes.diff
@@ -0,0 +1,27 @@
+--- ./gcc/Makefile.in.orig 2010-04-02 02:49:06.000000000 -0500
++++ ./gcc/Makefile.in 2010-08-01 16:55:30.088318841 -0500
+@@ -3864,9 +3864,9 @@
+ chmod a+r $${fix_dir}/limits.h; \
+ done
+ # Install the README
+- rm -f include-fixed/README
+- cp $(srcdir)/../fixincludes/README-fixinc include-fixed/README
+- chmod a+r include-fixed/README
++# rm -f include-fixed/README
++# cp $(srcdir)/../fixincludes/README-fixinc include-fixed/README
++# chmod a+r include-fixed/README
+ $(STAMP) $@
+
+ .PHONY: install-gcc-tooldir
+@@ -3947,10 +3947,7 @@
+ (TARGET_MACHINE='$(target)'; srcdir=`cd $(srcdir); ${PWD_COMMAND}`; \
+ SHELL='$(SHELL)'; MACRO_LIST=`${PWD_COMMAND}`/macro_list ; \
+ gcc_dir=`${PWD_COMMAND}` ; \
+- export TARGET_MACHINE srcdir SHELL MACRO_LIST && \
+- cd $(build_objdir)/fixincludes && \
+- $(SHELL) ./fixinc.sh "$${gcc_dir}/$${fix_dir}" \
+- $(SYSTEM_HEADER_DIR) $(OTHER_FIXINCLUDES_DIRS) ); \
++ export TARGET_MACHINE srcdir SHELL MACRO_LIST ); \
+ rm -f $${fix_dir}/syslimits.h; \
+ if [ -f $${fix_dir}/limits.h ]; then \
+ mv $${fix_dir}/limits.h $${fix_dir}/syslimits.h; \
diff --git a/development/gcc5/patches/gcc.66782.diff b/development/gcc5/patches/gcc.66782.diff
new file mode 100644
index 0000000000..0743f8853b
--- /dev/null
+++ b/development/gcc5/patches/gcc.66782.diff
@@ -0,0 +1,124 @@
+Index: config/i386/i386.md
+===================================================================
+--- config/i386/i386.md (revision 225539)
++++ config/i386/i386.md (working copy)
+@@ -108,6 +108,7 @@
+ UNSPEC_LD_MPIC ; load_macho_picbase
+ UNSPEC_TRUNC_NOOP
+ UNSPEC_DIV_ALREADY_SPLIT
++ UNSPEC_MS_TO_SYSV_CALL
+ UNSPEC_PAUSE
+ UNSPEC_LEA_ADDR
+ UNSPEC_XBEGIN_ABORT
+@@ -11584,6 +11585,15 @@
+ "* return ix86_output_call_insn (insn, operands[0]);"
+ [(set_attr "type" "call")])
+
++(define_insn "*call_rex64_ms_sysv"
++ [(match_parallel 2 "call_rex64_ms_sysv_operation"
++ [(call (mem:QI (match_operand:DI 0 "call_insn_operand" "rBwBz"))
++ (match_operand 1))
++ (unspec [(const_int 0)] UNSPEC_MS_TO_SYSV_CALL)])]
++ "TARGET_64BIT && !SIBLING_CALL_P (insn)"
++ "* return ix86_output_call_insn (insn, operands[0]);"
++ [(set_attr "type" "call")])
++
+ (define_insn "*sibcall"
+ [(call (mem:QI (match_operand:W 0 "sibcall_insn_operand" "UBsBz"))
+ (match_operand 1))]
+@@ -11808,6 +11818,16 @@
+ (match_dup 3)))
+ (unspec [(const_int 0)] UNSPEC_PEEPSIB)])])
+
++(define_insn "*call_value_rex64_ms_sysv"
++ [(match_parallel 3 "call_rex64_ms_sysv_operation"
++ [(set (match_operand 0)
++ (call (mem:QI (match_operand:DI 1 "call_insn_operand" "rBwBz"))
++ (match_operand 2)))
++ (unspec [(const_int 0)] UNSPEC_MS_TO_SYSV_CALL)])]
++ "TARGET_64BIT && !SIBLING_CALL_P (insn)"
++ "* return ix86_output_call_insn (insn, operands[1]);"
++ [(set_attr "type" "callv")])
++
+ (define_expand "call_value_pop"
+ [(parallel [(set (match_operand 0)
+ (call (match_operand:QI 1)
+Index: config/i386/predicates.md
+===================================================================
+--- config/i386/predicates.md (revision 225533)
++++ config/i386/predicates.md (working copy)
+@@ -616,6 +616,36 @@
+ && XINT (XEXP (op, 0), 1) == UNSPEC_GOTPCREL);
+ })
+
++;; Return true if OP is a call from MS ABI to SYSV ABI function.
++(define_predicate "call_rex64_ms_sysv_operation"
++ (match_code "parallel")
++{
++ unsigned creg_size = ARRAY_SIZE (x86_64_ms_sysv_extra_clobbered_registers);
++ unsigned i;
++
++ if ((unsigned) XVECLEN (op, 0) != creg_size + 2)
++ return false;
++
++ for (i = 0; i < creg_size; i++)
++ {
++ rtx elt = XVECEXP (op, 0, i+2);
++ enum machine_mode mode;
++ unsigned regno;
++
++ if (GET_CODE (elt) != CLOBBER
++ || GET_CODE (SET_DEST (elt)) != REG)
++ return false;
++
++ regno = x86_64_ms_sysv_extra_clobbered_registers[i];
++ mode = SSE_REGNO_P (regno) ? TImode : DImode;
++
++ if (GET_MODE (SET_DEST (elt)) != mode
++ || REGNO (SET_DEST (elt)) != regno)
++ return false;
++ }
++ return true;
++})
++
+ ;; Match exactly zero.
+ (define_predicate "const0_operand"
+ (match_code "const_int,const_wide_int,const_double,const_vector")
+Index: config/i386/i386.c
+===================================================================
+--- config/i386/i386.c (revision 225533)
++++ config/i386/i386.c (working copy)
+@@ -25639,7 +25639,9 @@
+ rtx callarg2,
+ rtx pop, bool sibcall)
+ {
+- rtx vec[3];
++ unsigned int const cregs_size
++ = ARRAY_SIZE (x86_64_ms_sysv_extra_clobbered_registers);
++ rtx vec[3 + cregs_size];
+ rtx use = NULL, call;
+ unsigned int vec_len = 0;
+
+@@ -25742,16 +25744,18 @@
+ if (TARGET_64BIT_MS_ABI
+ && (!callarg2 || INTVAL (callarg2) != -2))
+ {
+- int const cregs_size
+- = ARRAY_SIZE (x86_64_ms_sysv_extra_clobbered_registers);
+- int i;
++ unsigned i;
+
++ vec[vec_len++] = gen_rtx_UNSPEC (VOIDmode, gen_rtvec (1, const0_rtx),
++ UNSPEC_MS_TO_SYSV_CALL);
++
+ for (i = 0; i < cregs_size; i++)
+ {
+ int regno = x86_64_ms_sysv_extra_clobbered_registers[i];
+ machine_mode mode = SSE_REGNO_P (regno) ? TImode : DImode;
+
+- clobber_reg (&use, gen_rtx_REG (mode, regno));
++ vec[vec_len++]
++ = gen_rtx_CLOBBER (VOIDmode, gen_rtx_REG (mode, regno));
+ }
+ }
+
diff --git a/development/gcc5/patches/gcc.69140.diff b/development/gcc5/patches/gcc.69140.diff
new file mode 100644
index 0000000000..ace60ebdd0
--- /dev/null
+++ b/development/gcc5/patches/gcc.69140.diff
@@ -0,0 +1,13 @@
+--- ./gcc/config/i386/i386.c.orig 2015-11-18 09:45:26.000000000 -0600
++++ ./gcc/config/i386/i386.c 2016-02-05 13:50:07.202981920 -0600
+@@ -9677,6 +9677,10 @@
+ if (TARGET_64BIT_MS_ABI && get_frame_size () > SEH_MAX_FRAME_SIZE)
+ return true;
+
++ /* SSE saves require frame-pointer when stack is misaligned. */
++ if (TARGET_64BIT_MS_ABI && ix86_incoming_stack_boundary < 128)
++ return true;
++
+ /* In ix86_option_override_internal, TARGET_OMIT_LEAF_FRAME_POINTER
+ turns off the frame pointer by default. Turn it back on now if
+ we've not got a leaf function. */
diff --git a/development/gcc5/profile.d/gcc5.csh b/development/gcc5/profile.d/gcc5.csh
new file mode 100644
index 0000000000..25f9dc1342
--- /dev/null
+++ b/development/gcc5/profile.d/gcc5.csh
@@ -0,0 +1,7 @@
+setenv CC gcc-5
+setenv CPP cpp-5
+setenv CXX g++-5
+setenv AR gcc-ar-5
+setenv NM gcc-nm-5
+setenv RANLIB gcc-ranlib-5
+
diff --git a/development/gcc5/profile.d/gcc5.sh b/development/gcc5/profile.d/gcc5.sh
new file mode 100644
index 0000000000..7143b5d0e9
--- /dev/null
+++ b/development/gcc5/profile.d/gcc5.sh
@@ -0,0 +1,7 @@
+export CC=gcc-5
+export CPP=cpp-5
+export CXX=g++-5
+export AR=gcc-ar-5
+export NM=gcc-nm-5
+export RANLIB=gcc-ranlib-5
+
diff --git a/development/gcc5/slack-desc.gcc5 b/development/gcc5/slack-desc.gcc5
new file mode 100644
index 0000000000..d9d965846b
--- /dev/null
+++ b/development/gcc5/slack-desc.gcc5
@@ -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------------------------------------------------------|
+gcc5: gcc5 (Co-installable GCC-5 package with C, C++ and Java support)
+gcc5:
+gcc5: GCC is the GNU Compiler Collection.
+gcc5:
+gcc5: This package contains those parts of the compiler collection needed to
+gcc5: compile C and C++ code and programs written in the Java programming
+gcc5: language.@MULTILIB@
+gcc5:
+gcc5: This gcc5 package must be co-installed with Slackware's gcc7 compiler.
+gcc5:
+gcc5:
diff --git a/development/geany/geany.info b/development/geany/geany.info
index ec46e04d62..09c4851438 100644
--- a/development/geany/geany.info
+++ b/development/geany/geany.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://github.com/geany/geany/archive/1.34.1/geany-1.34.1.tar.gz"
MD5SUM="d36ad44844c8721f2ef9b5398260de3b"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES=""
+REQUIRES="vte2"
MAINTAINER="Ryan S. Northrup"
EMAIL="northrup@yellowapple.us"
diff --git a/development/gedit/gedit.SlackBuild b/development/gedit/gedit.SlackBuild
index 9ed2ab95c6..264611aaa0 100644
--- a/development/gedit/gedit.SlackBuild
+++ b/development/gedit/gedit.SlackBuild
@@ -70,6 +70,7 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+export LDFLAGS="-lgmodule-2.0 -lICE"
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
diff --git a/development/glade/glade.SlackBuild b/development/glade/glade.SlackBuild
index 1741b2a9cb..1dea1c25da 100644
--- a/development/glade/glade.SlackBuild
+++ b/development/glade/glade.SlackBuild
@@ -23,13 +23,13 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=glade
-VERSION=${VERSION:-3.18.3}
+VERSION=${VERSION:-3.20.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -41,8 +41,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
diff --git a/development/glade/glade.info b/development/glade/glade.info
index fff72106e7..306621d3ab 100644
--- a/development/glade/glade.info
+++ b/development/glade/glade.info
@@ -1,8 +1,8 @@
PRGNAM="glade"
-VERSION="3.18.3"
+VERSION="3.20.1"
HOMEPAGE="https://glade.gnome.org"
-DOWNLOAD="https://ftp.gnome.org/pub/GNOME/sources/glade/3.18/glade-3.18.3.tar.xz"
-MD5SUM="6852d6286683728e0ea40ca9b5d2416f"
+DOWNLOAD="https://ftp.gnome.org/pub/GNOME/sources/glade/3.20/glade-3.20.1.tar.xz"
+MD5SUM="60f01ccc4e9a4e5de5a5402d10495dc4"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/development/gnats/gnats.SlackBuild b/development/gnats/gnats.SlackBuild
index da9575aaa1..18ca2b30d7 100644
--- a/development/gnats/gnats.SlackBuild
+++ b/development/gnats/gnats.SlackBuild
@@ -69,7 +69,7 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-CFLAGS="$SLKCFLAGS" \
+CFLAGS="$SLKCFLAGS -Wno-error=pointer-compare -Wno-error=implicit-fallthrough=" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
diff --git a/development/gpsim/gpsim.SlackBuild b/development/gpsim/gpsim.SlackBuild
index 787ddc0e29..25822ab265 100644
--- a/development/gpsim/gpsim.SlackBuild
+++ b/development/gpsim/gpsim.SlackBuild
@@ -70,7 +70,7 @@ find -L . \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS -fpermissive" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
diff --git a/development/gsoap/gsoap-libtool.patch b/development/gsoap/gsoap-libtool.patch
index 87a9fcefdf..d87defacb8 100644
--- a/development/gsoap/gsoap-libtool.patch
+++ b/development/gsoap/gsoap-libtool.patch
@@ -1,6 +1,6 @@
diff -ur gsoap-2.8.orig/configure.ac gsoap-2.8/configure.ac
---- gsoap-2.8.orig/configure.ac 2015-11-10 18:52:20.000000000 +0100
-+++ gsoap-2.8/configure.ac 2015-11-22 09:28:38.711054796 +0100
+--- gsoap-2.8.orig/configure.ac 2017-10-26 14:01:08.000000000 +0200
++++ gsoap-2.8/configure.ac 2017-12-03 15:29:52.878661826 +0100
@@ -16,8 +16,7 @@
AM_PROG_LEX
AC_PROG_YACC
@@ -11,7 +11,7 @@ diff -ur gsoap-2.8.orig/configure.ac gsoap-2.8/configure.ac
AC_PROG_LN_S
AC_PROG_AWK
AC_PROG_INSTALL
-@@ -236,16 +235,16 @@
+@@ -259,15 +258,15 @@
WSDL2H_EXTRA_LIBS="${WSDL2H_EXTRA_LIBS} -lgnutls -lgcrypt -lgpg-error -lz"
SAMPLE_INCLUDES=
SAMPLE_SSL_LIBS="-lgnutls -lgcrypt -lgpg-error -lz"
@@ -20,76 +20,75 @@ diff -ur gsoap-2.8.orig/configure.ac gsoap-2.8/configure.ac
else
AC_MSG_RESULT(no)
WSDL2H_EXTRA_FLAGS="-DWITH_OPENSSL -DWITH_GZIP"
- # an ugly hack to get httpda and smdevp plugins to conditionally
# compile with wsdl2h when OPENSSL is available
-- WSDL2H_EXTRA_LIBS="${WSDL2H_EXTRA_LIBS} ../plugin/httpda.c ../plugin/smdevp.c ../plugin/threads.c -lssl -lcrypto -lz"
-+ WSDL2H_EXTRA_LIBS="${WSDL2H_EXTRA_LIBS} ../plugin/httpda.c ../plugin/smdevp.c ../plugin/threads.c -lcrypto"
+- WSDL2H_EXTRA_LIBS="${WSDL2H_EXTRA_LIBS} -lssl -lcrypto -lz"
++ WSDL2H_EXTRA_LIBS="${WSDL2H_EXTRA_LIBS} -lcrypto"
SAMPLE_INCLUDES=
SAMPLE_SSL_LIBS="-lssl -lcrypto -lz"
- WSDL2H_SOAP_CPP_LIB="libgsoapssl++.a"
+ WSDL2H_SOAP_CPP_LIB="libgsoapssl++.la"
fi
- if test -n "$OPENSSL"; then
- WSDL2H_EXTRA_FLAGS="-I${OPENSSL}/include ${WSDL2H_EXTRA_FLAGS}"
-@@ -258,7 +257,7 @@
+ if test -n "$ZLIB"; then
+ WSDL2H_EXTRA_FLAGS="-I${ZLIB}/include ${WSDL2H_EXTRA_FLAGS}"
+@@ -286,7 +285,7 @@
WSDL2H_EXTRA_FLAGS=
SAMPLE_SSL_LIBS=
SAMPLE_INCLUDES=
- WSDL2H_SOAP_CPP_LIB="libgsoap++.a"
+ WSDL2H_SOAP_CPP_LIB="libgsoap++.la"
fi
- AC_SUBST(WSDL2H_EXTRA_FLAGS)
- AC_SUBST(WSDL2H_EXTRA_LIBS)
+ AM_CONDITIONAL(WITH_OPENSSL, test "x$with_openssl" = "xyes" -a "x$with_gnutls" != "xyes")
+ AC_SUBST(WITH_OPENSSL)
diff -ur gsoap-2.8.orig/gsoap/Makefile.am gsoap-2.8/gsoap/Makefile.am
---- gsoap-2.8.orig/gsoap/Makefile.am 2015-11-10 18:52:22.000000000 +0100
-+++ gsoap-2.8/gsoap/Makefile.am 2015-11-22 09:24:43.198046409 +0100
+--- gsoap-2.8.orig/gsoap/Makefile.am 2017-10-26 14:01:08.000000000 +0200
++++ gsoap-2.8/gsoap/Makefile.am 2017-12-03 15:34:29.556641119 +0100
@@ -34,20 +34,30 @@
dom_cpp.cpp: dom.cpp
- $(LN_S) -f $(srcdir)/dom.cpp dom_cpp.cpp
+ $(LN_S) -f $(top_srcdir)/gsoap/dom.cpp dom_cpp.cpp
-lib_LIBRARIES = libgsoap.a libgsoap++.a libgsoapck.a libgsoapck++.a libgsoapssl.a libgsoapssl++.a
+lib_LTLIBRARIES = libgsoap.la libgsoap++.la libgsoapck.la libgsoapck++.la libgsoapssl.la libgsoapssl++.la
-libgsoap_a_SOURCES = stdsoap2.c dom.c
--libgsoap_a_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform)
+-libgsoap_a_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_NO_C_LOCALE) $(SOAPCPP2_IPV6) -D$(platform)
-libgsoap___a_SOURCES = stdsoap2_cpp.cpp dom_cpp.cpp
--libgsoap___a_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform)
+-libgsoap___a_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_NO_C_LOCALE) $(SOAPCPP2_IPV6) -D$(platform)
-libgsoapck_a_SOURCES = stdsoap2_ck.c dom.c
--libgsoapck_a_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform) -DWITH_COOKIES
+-libgsoapck_a_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_NO_C_LOCALE) $(SOAPCPP2_IPV6) -D$(platform) -DWITH_COOKIES
-libgsoapck___a_SOURCES = stdsoap2_ck_cpp.cpp dom_cpp.cpp
--libgsoapck___a_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform) -DWITH_COOKIES
+-libgsoapck___a_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_NO_C_LOCALE) $(SOAPCPP2_IPV6) -D$(platform) -DWITH_COOKIES
-libgsoapssl_a_SOURCES = stdsoap2_ssl.c dom.c
--libgsoapssl_a_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform) $(WSDL2H_EXTRA_FLAGS) -DWITH_DOM -DWITH_COOKIES
+-libgsoapssl_a_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_NO_C_LOCALE) $(SOAPCPP2_IPV6) -D$(platform) $(WSDL2H_EXTRA_FLAGS) -DWITH_DOM -DWITH_COOKIES
-libgsoapssl___a_SOURCES = stdsoap2_ssl_cpp.cpp dom_cpp.cpp
--libgsoapssl___a_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform) $(WSDL2H_EXTRA_FLAGS) -DWITH_DOM -DWITH_COOKIES
+-libgsoapssl___a_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_NO_C_LOCALE) $(SOAPCPP2_IPV6) -D$(platform) $(WSDL2H_EXTRA_FLAGS) -DWITH_DOM -DWITH_COOKIES
+SOVERSION = 0
+
+libgsoap_la_SOURCES = stdsoap2.c dom.c
-+libgsoap_la_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform)
++libgsoap_la_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_NO_C_LOCALE) $(SOAPCPP2_IPV6) -D$(platform)
+libgsoap_la_LDFLAGS = -version-info $(SOVERSION)
+libgsoap___la_SOURCES = stdsoap2_cpp.cpp dom_cpp.cpp
-+libgsoap___la_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform)
++libgsoap___la_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_NO_C_LOCALE) $(SOAPCPP2_IPV6) -D$(platform)
+libgsoap___la_LDFLAGS = -version-info $(SOVERSION)
+libgsoapck_la_SOURCES = stdsoap2_ck.c dom.c
-+libgsoapck_la_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform) -DWITH_COOKIES
++libgsoapck_la_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_NO_C_LOCALE) $(SOAPCPP2_IPV6) -D$(platform) -DWITH_COOKIES
+libgsoapck_la_LDFLAGS = -version-info $(SOVERSION)
+libgsoapck___la_SOURCES = stdsoap2_ck_cpp.cpp dom_cpp.cpp
-+libgsoapck___la_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform) -DWITH_COOKIES
++libgsoapck___la_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_NO_C_LOCALE) $(SOAPCPP2_IPV6) -D$(platform) -DWITH_COOKIES
+libgsoapck___la_LDFLAGS = -version-info $(SOVERSION)
+libgsoapssl_la_SOURCES = stdsoap2_ssl.c dom.c
-+libgsoapssl_la_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform) $(WSDL2H_EXTRA_FLAGS) -DWITH_DOM -DWITH_COOKIES
++libgsoapssl_la_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_NO_C_LOCALE) $(SOAPCPP2_IPV6) -D$(platform) $(WSDL2H_EXTRA_FLAGS) -DWITH_DOM -DWITH_COOKIES
+libgsoapssl_la_LDFLAGS = -version-info $(SOVERSION)
+libgsoapssl_la_LIBADD = -lssl -lcrypto -lz
+libgsoapssl___la_SOURCES = stdsoap2_ssl_cpp.cpp dom_cpp.cpp
-+libgsoapssl___la_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform) $(WSDL2H_EXTRA_FLAGS) -DWITH_DOM -DWITH_COOKIES
++libgsoapssl___la_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_NO_C_LOCALE) $(SOAPCPP2_IPV6) -D$(platform) $(WSDL2H_EXTRA_FLAGS) -DWITH_DOM -DWITH_COOKIES
+libgsoapssl___la_LDFLAGS = -version-info $(SOVERSION)
+libgsoapssl___la_LIBADD = -lssl -lcrypto -lz
- BUILT_SOURCES = stdsoap2_cpp.cpp dom_cpp.cpp $(lib_LIBRARIES)
+ BUILT_SOURCES = stdsoap2_cpp.cpp dom_cpp.cpp stdsoap2_ck.c stdsoap2_ck_cpp.cpp stdsoap2_ssl.c stdsoap2_ssl_cpp.cpp
diff -ur gsoap-2.8.orig/gsoap/samples/Makefile.defines gsoap-2.8/gsoap/samples/Makefile.defines
---- gsoap-2.8.orig/gsoap/samples/Makefile.defines 2015-11-10 18:52:26.000000000 +0100
-+++ gsoap-2.8/gsoap/samples/Makefile.defines 2015-11-22 09:22:54.369042534 +0100
+--- gsoap-2.8.orig/gsoap/samples/Makefile.defines 2017-10-26 14:01:10.000000000 +0200
++++ gsoap-2.8/gsoap/samples/Makefile.defines 2017-12-03 15:35:07.477638281 +0100
@@ -13,13 +13,13 @@
SOAP_C_CORE=soapC.c
SOAP_C_CLIENT=soapClient.c $(SOAP_C_CORE)
@@ -111,11 +110,11 @@ diff -ur gsoap-2.8.orig/gsoap/samples/Makefile.defines gsoap-2.8/gsoap/samples/M
+SOAP_CPP_LIB_CK=$(top_builddir)/gsoap/libgsoapck++.la
+SOAP_CPP_LIB_SSL=$(top_builddir)/gsoap/libgsoapssl++.la
diff -ur gsoap-2.8.orig/gsoap/samples/autotest/Makefile.am gsoap-2.8/gsoap/samples/autotest/Makefile.am
---- gsoap-2.8.orig/gsoap/samples/autotest/Makefile.am 2015-11-10 18:52:26.000000000 +0100
-+++ gsoap-2.8/gsoap/samples/autotest/Makefile.am 2015-11-22 09:22:54.368042534 +0100
+--- gsoap-2.8.orig/gsoap/samples/autotest/Makefile.am 2017-10-26 14:01:10.000000000 +0200
++++ gsoap-2.8/gsoap/samples/autotest/Makefile.am 2017-12-03 15:35:30.202636580 +0100
@@ -14,7 +14,7 @@
- WSDLINPUT=$(srcdir)/examples.wsdl
- SOAPHEADER=$(srcdir)/examples.h
+ WSDLINPUT=$(top_srcdir)/gsoap/samples/autotest/examples.wsdl
+ SOAPHEADER=$(top_srcdir)/gsoap/samples/autotest/examples.h
SOAP_CPP_SRC=soapC.cpp soapServer.cpp
-SOAP_CPP_LIB=$(top_builddir)/gsoap/libgsoap++.a
+SOAP_CPP_LIB=$(top_builddir)/gsoap/libgsoap++.la
@@ -123,11 +122,11 @@ diff -ur gsoap-2.8.orig/gsoap/samples/autotest/Makefile.am gsoap-2.8/gsoap/sampl
$(SOAP_CPP_SRC) : $(WSDLINPUT)
$(WSDL) $(WSDL_FLAGS) $(WSDLINPUT)
diff -ur gsoap-2.8.orig/gsoap/samples/databinding/Makefile.am gsoap-2.8/gsoap/samples/databinding/Makefile.am
---- gsoap-2.8.orig/gsoap/samples/databinding/Makefile.am 2015-11-10 18:52:26.000000000 +0100
-+++ gsoap-2.8/gsoap/samples/databinding/Makefile.am 2015-11-22 09:22:54.368042534 +0100
+--- gsoap-2.8.orig/gsoap/samples/databinding/Makefile.am 2017-10-26 14:01:10.000000000 +0200
++++ gsoap-2.8/gsoap/samples/databinding/Makefile.am 2017-12-03 15:35:50.071635093 +0100
@@ -14,7 +14,7 @@
- WSDLINPUT=$(srcdir)/address.xsd
- SOAPHEADER=$(srcdir)/address.h
+ WSDLINPUT=$(top_srcdir)/gsoap/samples/databinding/address.xsd
+ SOAPHEADER=$(top_srcdir)/gsoap/samples/databinding/address.h
SOAP_CPP_SRC=addressC.cpp
-SOAP_CPP_LIB=$(top_builddir)/gsoap/libgsoap++.a
+SOAP_CPP_LIB=$(top_builddir)/gsoap/libgsoap++.la
diff --git a/development/gsoap/gsoap.SlackBuild b/development/gsoap/gsoap.SlackBuild
index a92cd16d6a..58e9a2532b 100644
--- a/development/gsoap/gsoap.SlackBuild
+++ b/development/gsoap/gsoap.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for gsoap
-# Copyright 2009-2017 Heinz Wiesinger, Amsterdam, The Netherlands
+# Copyright 2009-2018 Heinz Wiesinger, Amsterdam, The Netherlands
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,7 +23,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=gsoap
-VERSION=${VERSION:-2.8.46}
+VERSION=${VERSION:-2.8.59}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
diff --git a/development/gsoap/gsoap.info b/development/gsoap/gsoap.info
index 1f3e52d4cd..8e3c8ca5d4 100644
--- a/development/gsoap/gsoap.info
+++ b/development/gsoap/gsoap.info
@@ -1,8 +1,8 @@
PRGNAM="gsoap"
-VERSION="2.8.46"
+VERSION="2.8.59"
HOMEPAGE="http://gsoap2.sourceforge.net/"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/gsoap_2.8.46.zip"
-MD5SUM="e7ff6c940730371dcb90079ca56a8551"
+DOWNLOAD="http://downloads.sourceforge.net/gsoap2/gsoap_2.8.59.zip"
+MD5SUM="af00304f7c9345ce83b32d45e7e601b1"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/development/hte/hte.SlackBuild b/development/hte/hte.SlackBuild
index 97058415df..519c03db13 100644
--- a/development/hte/hte.SlackBuild
+++ b/development/hte/hte.SlackBuild
@@ -24,13 +24,13 @@
SRCNAM=ht
PRGNAM=hte
-VERSION=${VERSION:-2.0.18}
+VERSION=${VERSION:-2.1.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -41,8 +41,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -61,14 +61,20 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $SRCNAM-$VERSION
-tar xvf $CWD/$SRCNAM-$VERSION.tar.*z?
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z*
cd $SRCNAM-$VERSION
chown -R root:root .
find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -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 {} \;
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+# Thanks gentoo!
+patch -p1 < $CWD/hteditor-2.1.0-gcc-7.patch
+
+# Respect our CFLAGS
+sed -i "s|-O3 -fomit-frame-pointer -Wall -fsigned-char|$SLKCFLAGS|" configure
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
diff --git a/development/hte/hte.info b/development/hte/hte.info
index e12fb4f8eb..1a2a2cd461 100644
--- a/development/hte/hte.info
+++ b/development/hte/hte.info
@@ -1,8 +1,8 @@
PRGNAM="hte"
-VERSION="2.0.18"
+VERSION="2.1.0"
HOMEPAGE="http://hte.sourceforge.net/"
-DOWNLOAD="http://downloads.sourceforge.net/hte/ht-2.0.18.tar.bz2"
-MD5SUM="9cd5c52bb3fbae5c631875cd0de3318c"
+DOWNLOAD="https://downloads.sf.net/hte/ht-2.1.0.tar.bz2"
+MD5SUM="09b2a4461d75e9cd03af1cd67fadc1ec"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/development/hte/hteditor-2.1.0-gcc-7.patch b/development/hte/hteditor-2.1.0-gcc-7.patch
new file mode 100644
index 0000000000..ebcc3c0aa4
--- /dev/null
+++ b/development/hte/hteditor-2.1.0-gcc-7.patch
@@ -0,0 +1,32 @@
+https://bugs.gentoo.org/show_bug.cgi?id=620732
+
+Fixes build failure on gcc-7:
+
+ htapp.cc: In function 'uint isqr(uint)':
+ htapp.cc:3026:18: error: call of overloaded 'abs(uint)' is ambiguous
+ while (abs(a - b) > 1) {
+ ^
+
+Picked upstream patch that fixes it:
+
+commit 3b62f2f7e49e024ec9d3c5ffc8ff9cd87a107af6
+Author: Sebastian Biallas <sb@biallas.net>
+Date: Sun Nov 13 15:25:26 2016 +0100
+
+ use unsigned variables
+
+diff --git a/htapp.cc b/htapp.cc
+index 53d8725..03236e2 100644
+--- a/htapp.cc
++++ b/htapp.cc
+@@ -3021,8 +3021,8 @@ void do_modal_resize()
+
+ static uint isqr(uint u)
+ {
+- uint a = 2;
+- uint b = u/a;
++ int a = 2;
++ int b = u/a;
+ while (abs(a - b) > 1) {
+ a = (a+b)/2;
+ b = u/a;
diff --git a/development/icecream/README b/development/icecream/README
deleted file mode 100644
index 50daacb2d4..0000000000
--- a/development/icecream/README
+++ /dev/null
@@ -1,12 +0,0 @@
-Icecream is a distributed compile system. It allows parallel compiling by
-distributing the compile jobs to several nodes of a compile network running the
-icecc daemon. The icecc scheduler routes the jobs and provides status and
-statistics information to the icecc monitor. Each compile node can accept one
-or more compile jobs depending on the number of processors and the settings of
-the daemon. Link jobs and other jobs which cannot be distributed are executed
-locally on the node where the compilation is started.
-Note that upon installation of the resulting package, all your software
-will be compiled by icecream by default.
-
-For information on how to use icecream in combination with ccache see
-https://github.com/icecc/icecream#how-to-combine-icecream-with-ccache
diff --git a/development/icecream/doinst.sh b/development/icecream/doinst.sh
deleted file mode 100644
index 9685b60dea..0000000000
--- a/development/icecream/doinst.sh
+++ /dev/null
@@ -1,30 +0,0 @@
-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...
-}
-
-# Keep same perms on rc.iceccd.new:
-if [ -e etc/rc.d/rc.iceccd ]; then
- cp -a etc/rc.d/rc.iceccd etc/rc.d/rc.iceccd.new.incoming
- cat etc/rc.d/rc.iceccd.new > etc/rc.d/rc.iceccd.new.incoming
- mv etc/rc.d/rc.iceccd.new.incoming etc/rc.d/rc.iceccd.new
-fi
-
-# Keep same perms on rc.icecc-scheduler.new:
-if [ -e etc/rc.d/rc.icecc-scheduler ]; then
- cp -a etc/rc.d/rc.icecc-scheduler etc/rc.d/rc.icecc-scheduler.new.incoming
- cat etc/rc.d/rc.icecc-scheduler.new > etc/rc.d/rc.icecc-scheduler.new.incoming
- mv etc/rc.d/rc.icecc-scheduler.new.incoming etc/rc.d/rc.icecc-scheduler.new
-fi
-
-config etc/rc.d/rc.iceccd.new
-config etc/rc.d/rc.icecream.conf.new
-config etc/rc.d/rc.icecc-scheduler.new
-
diff --git a/development/icecream/icecream.SlackBuild b/development/icecream/icecream.SlackBuild
deleted file mode 100644
index 4afe8dabd3..0000000000
--- a/development/icecream/icecream.SlackBuild
+++ /dev/null
@@ -1,133 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for icecream
-
-# Copyright 2009-2018 Heinz Wiesinger, Amsterdam, The Netherlands
-# 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.
-
-PRGNAM=icecream
-VERSION=${VERSION:-1.1}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i486 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if ! grep ^icecream: /etc/group 2>&1 > /dev/null; then
- echo " Must have a icecream group to run this script."
- echo " # groupadd -g 283 icecream"
- echo " Or something similar."
- exit 1
-elif ! grep ^icecream: /etc/passwd 2>&1 > /dev/null; then
- echo " Must have a icecream user to run this script."
- echo " # useradd -u 283 -g icecream -d /var/cache/icecream icecream"
- echo " Or something similar."
- exit 1
-fi
-
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-./autogen.sh
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib$LIBDIRSUFFIX \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --enable-clang-rewrite-includes \
- --enable-clang-wrappers \
- --enable-shared \
- --disable-static \
- --build=$ARCH-slackware-linux
-
-make
-make install-strip DESTDIR=$PKG
-
-mkdir -p $PKG/etc/profile.d/
-cp $CWD/profile.d/* $PKG/etc/profile.d/
-chmod 0755 $PKG/etc/profile.d/*
-
-# Install init script
-mkdir -p $PKG/etc/rc.d
-install -m 0755 $CWD/rc.iceccd $PKG/etc/rc.d/rc.iceccd.new
-install -m 0755 $CWD/rc.icecc-scheduler $PKG/etc/rc.d/rc.icecc-scheduler.new
-install -m 0644 $CWD/rc.icecream.conf $PKG/etc/rc.d/rc.icecream.conf.new
-
-for i in $ARCH-slackware-linux-c++ $ARCH-slackware-linux-g++ \
- $ARCH-slackware-linux-gcc $ARCH-slackware-linux-clang \
- $ARCH-slackware-linux-clang++; do
- ln -s /usr/bin/icecc $PKG/usr/libexec/icecc/bin/$i
-done
-
-mkdir -p $PKG/var/{cache,log}/icecream
-chown icecream:icecream $PKG/var/{cache,log}/icecream
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a COPYING NEWS README TODO $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-cat $CWD/doinst.sh > $PKG/install/doinst.sh
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/development/icecream/icecream.info b/development/icecream/icecream.info
deleted file mode 100644
index 430743d46a..0000000000
--- a/development/icecream/icecream.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="icecream"
-VERSION="1.1"
-HOMEPAGE="https://github.com/icecc/icecream"
-DOWNLOAD="https://github.com/icecc/icecream/archive/1.1/icecream-1.1.tar.gz"
-MD5SUM="bd33e21fa25ccedeb5c94be9c6f034e1"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Heinz Wiesinger"
-EMAIL="pprkut@liwjatan.at"
diff --git a/development/icecream/profile.d/icecream.csh b/development/icecream/profile.d/icecream.csh
deleted file mode 100644
index 386d9242a8..0000000000
--- a/development/icecream/profile.d/icecream.csh
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/bin/csh
-setenv PATH /usr/libexec/icecc/bin:${PATH}
diff --git a/development/icecream/profile.d/icecream.sh b/development/icecream/profile.d/icecream.sh
deleted file mode 100644
index c0c3d179ee..0000000000
--- a/development/icecream/profile.d/icecream.sh
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/bin/sh
-export PATH=/usr/libexec/icecc/bin:$PATH
diff --git a/development/icecream/rc.icecc-scheduler b/development/icecream/rc.icecc-scheduler
deleted file mode 100644
index 633661bebe..0000000000
--- a/development/icecream/rc.icecc-scheduler
+++ /dev/null
@@ -1,50 +0,0 @@
-#!/bin/sh
-# Start/stop/restart scheduler.
-# $Id: rc.scheduler,v 1.0 2009/04/18
-# Author: Heinz Wiesinger <pprkut@liwjatan.at>
-# ---------------------------------------------------------------------------
-
-PID=$(/sbin/pidof -o %PPID icecc-scheduler)
-
-# Get the configuration information from /etc/rc.d/rc.icecream.conf:
-. /etc/rc.d/rc.icecream.conf
-
-# Start scheduler:
-scheduler_start() {
- if [ -n "$PID" ]; then
- echo "Distributed compiler scheduler already running"
- exit
- fi
- if [ -x /usr/sbin/icecc-scheduler ]; then
- echo "Starting distributed compiler scheduler: /usr/sbin/icecc-scheduler "
- /usr/sbin/icecc-scheduler -n $NETWORK -d -u icecream \
- -l /var/log/icecream/icecc-scheduler.log
- fi
-}
-
-# Stop scheduler:
-scheduler_stop() {
- echo "Stopping distributed compiler scheduler"
- killall icecc-scheduler 1> /dev/null 2> /dev/null
-}
-
-# Restart scheduler:
-scheduler_restart() {
- scheduler_stop
- sleep 1
- scheduler_start
-}
-
-case "$1" in
-'start')
- scheduler_start
- ;;
-'stop')
- scheduler_stop
- ;;
-'restart')
- scheduler_restart
- ;;
-*)
- echo "usage $0 start|stop|restart"
-esac
diff --git a/development/icecream/rc.iceccd b/development/icecream/rc.iceccd
deleted file mode 100644
index 776de18a15..0000000000
--- a/development/icecream/rc.iceccd
+++ /dev/null
@@ -1,50 +0,0 @@
-#!/bin/sh
-# Start/stop/restart iceccd.
-# $Id: rc.iceccd,v 1.0 2009/04/18
-# Author: Heinz Wiesinger <pprkut@liwjatan.at>
-# ---------------------------------------------------------------------------
-
-PID=$(/sbin/pidof -o %PPID iceccd)
-
-# Get the configuration information from /etc/rc.d/rc.icecream.conf:
-. /etc/rc.d/rc.icecream.conf
-
-# Start iceccd:
-iceccd_start() {
- if [ -n "$PID" ]; then
- echo "Distributed compiler daemon already running"
- exit
- fi
- if [ -x /usr/sbin/iceccd ]; then
- echo "Starting distributed compiler daemon: /usr/sbin/iceccd "
- /usr/sbin/iceccd -n $NETWORK -d -u icecream \
- -l /var/log/icecream/iceccd.log
- fi
-}
-
-# Stop iceccd:
-iceccd_stop() {
- echo "Stopping distributed compiler daemon"
- killall iceccd 1> /dev/null 2> /dev/null
-}
-
-# Restart iceccd:
-iceccd_restart() {
- iceccd_stop
- sleep 1
- iceccd_start
-}
-
-case "$1" in
-'start')
- iceccd_start
- ;;
-'stop')
- iceccd_stop
- ;;
-'restart')
- iceccd_restart
- ;;
-*)
- echo "usage $0 start|stop|restart"
-esac
diff --git a/development/icecream/rc.icecream.conf b/development/icecream/rc.icecream.conf
deleted file mode 100644
index f422fde174..0000000000
--- a/development/icecream/rc.icecream.conf
+++ /dev/null
@@ -1,8 +0,0 @@
-# /etc/rc.d/rc.icecream.conf
-#
-# This file contains the configuration settings for both iceccd and scheduler
-
-# Defines the network name used to determine which nodes can be used for
-# the compile processes. That way you can have several icecream clusters
-# in the same network
-NETWORK=$(hostname -d)
diff --git a/development/icecream/slack-desc b/development/icecream/slack-desc
deleted file mode 100644
index a435b5c2cd..0000000000
--- a/development/icecream/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-icecream: icecream (network-distributed compilation)
-icecream:
-icecream: Icecream is a distributed compile system. It allows parallel
-icecream: compiling by distributing the compile jobs to several nodes of a
-icecream: compile network running the statistics information to the icecc
-icecream: monitor. Each compile node can accept one or more compile jobs
-icecream: depending on the number of processors and the settings of icecc
-icecream: daemon. The icecc scheduler routes the jobs and provides status
-icecream: and the daemon. Link jobs and other jobs which cannot be
-icecream: distributed are executed locally on the node where the compilation
-icecream: is started.
diff --git a/development/jdk/profile.d/jdk.csh b/development/jdk/profile.d/jdk.csh
index 3a1ec7be8b..24580311a3 100644
--- a/development/jdk/profile.d/jdk.csh
+++ b/development/jdk/profile.d/jdk.csh
@@ -1,4 +1,3 @@
#!/bin/csh
setenv JAVA_HOME /usr/lib/java
-setenv MANPATH ${MANPATH}:${JAVA_HOME}/man
setenv PATH ${PATH}:${JAVA_HOME}/bin:${JAVA_HOME}/jre/bin
diff --git a/development/jdk/profile.d/jdk.sh b/development/jdk/profile.d/jdk.sh
index ed0bc73d4d..66815e299f 100644
--- a/development/jdk/profile.d/jdk.sh
+++ b/development/jdk/profile.d/jdk.sh
@@ -1,4 +1,3 @@
#!/bin/sh
export JAVA_HOME=/usr/lib/java
-export MANPATH="${MANPATH}:${JAVA_HOME}/man"
export PATH="${PATH}:${JAVA_HOME}/bin:${JAVA_HOME}/jre/bin"
diff --git a/development/kicad/boost-1.61.patch b/development/kicad/boost-1.61.patch
deleted file mode 100644
index 3ca8711b9f..0000000000
--- a/development/kicad/boost-1.61.patch
+++ /dev/null
@@ -1,347 +0,0 @@
---- a/common/tool/tool_manager.cpp
-+++ b/common/tool/tool_manager.cpp
-@@ -532,11 +532,11 @@
- if( st->cofunc )
- st->Push();
-
-+ st->cofunc = new COROUTINE<int, const TOOL_EVENT&>( tr.second );
-+
- // as the state changes, the transition table has to be set up again
- st->transitions.clear();
-
-- st->cofunc = new COROUTINE<int, const TOOL_EVENT&>( tr.second );
--
- // got match? Run the handler.
- st->cofunc->Call( aEvent );
-
---- a/include/tool/coroutine.h
-+++ b/include/tool/coroutine.h
-@@ -27,10 +28,15 @@
-
- #include <cstdlib>
-
--#include <boost/context/fcontext.hpp>
- #include <boost/version.hpp>
-+#include <type_traits>
-
--#include "delegate.h"
-+#if BOOST_VERSION <= 106000
-+#include <boost/context/fcontext.hpp>
-+#else
-+#include <boost/context/execution_context.hpp>
-+#include <boost/context/protected_fixedsize_stack.hpp>
-+#endif
-
- /**
- * Class COROUNTINE.
-@@ -53,13 +59,12 @@
- * See coroutine_example.cpp for sample code.
- */
-
--template <class ReturnType, class ArgType>
-+template <typename ReturnType, typename ArgType>
- class COROUTINE
- {
- public:
- COROUTINE() :
-- m_saved( NULL ), m_self( NULL ), m_stack( NULL ), m_stackSize( c_defaultStackSize ),
-- m_running( false )
-+ COROUTINE( nullptr )
- {
- }
-
-@@ -69,8 +74,7 @@
- */
- template <class T>
- COROUTINE( T* object, ReturnType(T::* ptr)( ArgType ) ) :
-- m_func( object, ptr ), m_self( NULL ), m_saved( NULL ), m_stack( NULL ),
-- m_stackSize( c_defaultStackSize ), m_running( false )
-+ COROUTINE( std::bind( ptr, object, std::placeholders::_1 ) )
- {
- }
-
-@@ -78,9 +82,15 @@
- * Constructor
- * Creates a coroutine from a delegate object
- */
-- COROUTINE( DELEGATE<ReturnType, ArgType> aEntry ) :
-- m_func( aEntry ), m_saved( NULL ), m_self( NULL ), m_stack( NULL ),
-- m_stackSize( c_defaultStackSize ), m_running( false )
-+ COROUTINE( std::function<ReturnType(ArgType)> aEntry ) :
-+ m_func( std::move( aEntry ) ),
-+ m_running( false ),
-+#if BOOST_VERSION <= 106000
-+ m_stack( nullptr ),
-+ m_stackSize( c_defaultStackSize ),
-+#endif
-+ m_caller( nullptr ),
-+ m_callee( nullptr )
- {
- // Avoid not initialized members, and make static analysers quiet
- m_args = 0;
-@@ -89,18 +99,26 @@
-
- ~COROUTINE()
- {
-- if( m_saved )
-- delete m_saved;
--
- #if BOOST_VERSION >= 105600
-- if( m_self )
-- delete m_self;
-+ delete m_callee;
- #endif
-
-+#if BOOST_VERSION <= 106000
-+ delete m_caller;
-+
- if( m_stack )
- free( m_stack );
-+#endif
- }
-
-+private:
-+#if BOOST_VERSION <= 106000
-+ using context_type = boost::context::fcontext_t;
-+#else
-+ using context_type = boost::context::execution_context<COROUTINE*>;
-+#endif
-+
-+public:
- /**
- * Function Yield()
- *
-@@ -110,7 +128,12 @@
- */
- void Yield()
- {
-- jump( m_self, m_saved, 0 );
-+#if BOOST_VERSION <= 106000
-+ jump( m_callee, m_caller, false );
-+#else
-+ auto result = (*m_caller)( this );
-+ *m_caller = std::move( std::get<0>( result ) );
-+#endif
- }
-
- /**
-@@ -122,7 +145,11 @@
- void Yield( ReturnType& aRetVal )
- {
- m_retVal = aRetVal;
-- jump( m_self, m_saved, 0 );
-+#if BOOST_VERSION <= 106000
-+ jump( m_callee, m_caller, false );
-+#else
-+ m_caller( this );
-+#endif
- }
-
- /**
-@@ -130,9 +157,9 @@
- *
- * Defines the entry point for the coroutine, if not set in the constructor.
- */
-- void SetEntry( DELEGATE<ReturnType, ArgType> aEntry )
-+ void SetEntry( std::function<ReturnType(ArgType)> aEntry )
- {
-- m_func = aEntry;
-+ m_func = std::move( aEntry );
- }
-
- /* Function Call()
-@@ -143,6 +170,10 @@
- */
- bool Call( ArgType aArgs )
- {
-+ assert( m_callee == NULL );
-+ assert( m_caller == NULL );
-+
-+#if BOOST_VERSION <= 106000
- // fixme: Clean up stack stuff. Add a guard
- m_stack = malloc( c_defaultStackSize );
-
-@@ -151,22 +182,32 @@
-
- // correct the stack size
- m_stackSize -= ( (size_t) m_stack + m_stackSize - (size_t) sp );
--
-- assert( m_self == NULL );
-- assert( m_saved == NULL );
-+#endif
-
- m_args = &aArgs;
--#if BOOST_VERSION >= 105600
-- m_self = new boost::context::fcontext_t();
-- *m_self = boost::context::make_fcontext( sp, m_stackSize, callerStub );
-+
-+#if BOOST_VERSION < 105600
-+ m_callee = boost::context::make_fcontext( sp, m_stackSize, callerStub );
-+#elif BOOST_VERSION <= 106000
-+ m_callee = new context_type( boost::context::make_fcontext( sp, m_stackSize, callerStub ) );
- #else
-- m_self = boost::context::make_fcontext( sp, m_stackSize, callerStub );
-+ m_callee = new context_type( std::allocator_arg_t(),
-+ boost::context::protected_fixedsize_stack( c_defaultStackSize ), &COROUTINE::callerStub );
-+#endif
-+
-+#if BOOST_VERSION <= 106000
-+ m_caller = new context_type();
- #endif
-- m_saved = new boost::context::fcontext_t();
-
- m_running = true;
-+
- // off we go!
-- jump( m_saved, m_self, reinterpret_cast<intptr_t>( this ) );
-+#if BOOST_VERSION <= 106000
-+ jump( m_caller, m_callee, reinterpret_cast<intptr_t>( this ) );
-+#else
-+ auto result = (*m_callee)( this );
-+ *m_callee = std::move( std::get<0>( result ) );
-+#endif
- return m_running;
- }
-
-@@ -179,7 +220,12 @@
- */
- bool Resume()
- {
-- jump( m_saved, m_self, 0 );
-+#if BOOST_VERSION <= 106000
-+ jump( m_caller, m_callee, false );
-+#else
-+ auto result = (*m_callee)( this );
-+ *m_callee = std::move( std::get<0>( result ) );
-+#endif
-
- return m_running;
- }
-@@ -208,61 +254,66 @@
- static const int c_defaultStackSize = 2000000; // fixme: make configurable
-
- /* real entry point of the coroutine */
-+#if BOOST_VERSION <= 106000
- static void callerStub( intptr_t aData )
-+#else
-+ static context_type callerStub( context_type caller, COROUTINE* cor )
-+#endif
- {
- // get pointer to self
-+#if BOOST_VERSION <= 106000
- COROUTINE<ReturnType, ArgType>* cor = reinterpret_cast<COROUTINE<ReturnType, ArgType>*>( aData );
-+#else
-+ cor->m_caller = &caller;
-+#endif
-
- // call the coroutine method
-- cor->m_retVal = cor->m_func( *cor->m_args );
-+ cor->m_retVal = cor->m_func( *( cor->m_args ) );
- cor->m_running = false;
-
- // go back to wherever we came from.
-- jump( cor->m_self, cor->m_saved, 0 ); // reinterpret_cast<intptr_t>( this ));
-+#if BOOST_VERSION <= 106000
-+ jump( cor->m_callee, cor->m_caller, 0 );
-+#else
-+ return caller;
-+#endif
- }
-
- ///> Wrapper for jump_fcontext to assure compatibility between different boost versions
-- static inline intptr_t jump(boost::context::fcontext_t* aOld, boost::context::fcontext_t* aNew,
-+#if BOOST_VERSION <= 106000
-+ static inline intptr_t jump( context_type* aOld, context_type* aNew,
- intptr_t aP, bool aPreserveFPU = true )
- {
--#if BOOST_VERSION >= 105600
-- return boost::context::jump_fcontext( aOld, *aNew, aP, aPreserveFPU );
--#else
-+#if BOOST_VERSION < 105600
- return boost::context::jump_fcontext( aOld, aNew, aP, aPreserveFPU );
-+#else
-+ return boost::context::jump_fcontext( aOld, *aNew, aP, aPreserveFPU );
- #endif
- }
-+#endif
-
-- template <typename T>
-- struct strip_ref
-- {
-- typedef T result;
-- };
-+ std::function<ReturnType(ArgType)> m_func;
-
-- template <typename T>
-- struct strip_ref<T&>
-- {
-- typedef T result;
-- };
-+ bool m_running;
-
-- DELEGATE<ReturnType, ArgType> m_func;
-+#if BOOST_VERSION <= 106000
-+ ///< coroutine stack
-+ void* m_stack;
-+
-+ size_t m_stackSize;
-+#endif
-
- ///< pointer to coroutine entry arguments. Stripped of references
- ///< to avoid compiler errors.
-- typename strip_ref<ArgType>::result* m_args;
-+ typename std::remove_reference<ArgType>::type* m_args;
-+
- ReturnType m_retVal;
-
- ///< saved caller context
-- boost::context::fcontext_t* m_saved;
-+ context_type* m_caller;
-
- ///< saved coroutine context
-- boost::context::fcontext_t* m_self;
--
-- ///< coroutine stack
-- void* m_stack;
--
-- size_t m_stackSize;
--
-- bool m_running;
-+ context_type* m_callee;
- };
-
- #endif
---- a/include/tool/tool_base.h
-+++ b/include/tool/tool_base.h
-@@ -31,7 +32,7 @@
- #include <tool/tool_event.h>
- #include <tool/tool_settings.h>
-
--#include <tool/delegate.h>
-+#include <functional>
-
- class EDA_ITEM;
- class TOOL_MANAGER;
-@@ -53,7 +54,9 @@
-
- /// Unique identifier for tools
- typedef int TOOL_ID;
--typedef DELEGATE<int, const TOOL_EVENT&> TOOL_STATE_FUNC;
-+
-+using TOOL_STATE_FUNC = std::function<int(const TOOL_EVENT&)>;
-+
-
- /**
- * Class TOOL_BASE
---- a/include/tool/tool_interactive.h
-+++ b/include/tool/tool_interactive.h
-@@ -113,7 +114,7 @@
- void TOOL_INTERACTIVE::Go( int (T::* aStateFunc)( const TOOL_EVENT& ),
- const TOOL_EVENT_LIST& aConditions )
- {
-- TOOL_STATE_FUNC sptr( static_cast<T*>( this ), aStateFunc );
-+ TOOL_STATE_FUNC sptr = std::bind( aStateFunc, static_cast<T*>( this ), std::placeholders::_1 );
-
- goInternal( sptr, aConditions );
- }
-
diff --git a/development/kicad/kicad.SlackBuild b/development/kicad/kicad.SlackBuild
index 32489410a8..10ab5ac34e 100644
--- a/development/kicad/kicad.SlackBuild
+++ b/development/kicad/kicad.SlackBuild
@@ -26,7 +26,7 @@
# Revision date: 2017/Nov/12
PRGNAM=kicad
-VERSION=${VERSION:-4.0.7}
+VERSION=${VERSION:-5.0.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -72,11 +72,6 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-# KiCad 4.0.5 cannot be compiled with boost 1.61 and higher since the latter requires C++11.
-# If you insist to use boost 1.61 and higher, you can apply this patch manually and compile
-# with a C++11 capable compiler and its appropriate compiler switches.
-patch -p1 --verbose < $CWD/boost-1.61.patch
-
mkdir -p build
cd build
cmake \
@@ -90,6 +85,7 @@ cd build
-DKICAD_SCRIPTING=ON \
-DKICAD_SCRIPTING_MODULES=ON \
-DKICAD_SCRIPTING_WXPYTHON=ON \
+ -DKICAD_USE_OCE=OFF \
-DCMAKE_BUILD_TYPE=Release ..
make VERBOSE=1
make install DESTDIR=$PKG
diff --git a/development/kicad/kicad.info b/development/kicad/kicad.info
index c29d6186e5..3ee41b821a 100644
--- a/development/kicad/kicad.info
+++ b/development/kicad/kicad.info
@@ -1,10 +1,10 @@
PRGNAM="kicad"
-VERSION="4.0.7"
+VERSION="5.0.1"
HOMEPAGE="http://kicad-pcb.org"
-DOWNLOAD="https://launchpad.net/kicad/4.0/4.0.7/+download/kicad-4.0.7.tar.xz"
-MD5SUM="af3ee2e40c25f1c01b92cd27c1a1b180"
+DOWNLOAD="https://launchpad.net/kicad/5.0/5.0.1/+download/kicad-5.0.1.tar.xz"
+MD5SUM="b76a87ec9a14d502326de9102c75fb05"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="wxPython3"
+REQUIRES="glm ngspice wxPython3"
MAINTAINER="Fernando Lopez Jr."
EMAIL="fernando.lopezjr@gmail.com"
diff --git a/development/latrace/fix-scanner-config-for-flex-2.6.x.patch b/development/latrace/fix-scanner-config-for-flex-2.6.x.patch
new file mode 100644
index 0000000000..301f4c5a96
--- /dev/null
+++ b/development/latrace/fix-scanner-config-for-flex-2.6.x.patch
@@ -0,0 +1,23 @@
+--- src/config-flex.l.orig 2011-07-25 07:18:18.000000000 -0400
++++ src/config-flex.l 2017-07-02 13:52:20.048382500 -0400
+@@ -106,19 +106,17 @@ OPTIONS { BEGIN(options); return OPTI
+ <options>"\n" { NEW_LINE(); }
+ <options>. { ; }
+
+ %%
+
+-#ifndef yywrap
+-int yywrap()
++int lt_config_wrap()
+ {
+ return 1;
+ /* XXX not to get the compiler 'not used' warning */
+ yyunput(0, NULL);
+ input();
+ }
+-#endif
+
+ void lt_config_error(const char *m)
+ {
+ printf("conf file [%s] line %d: %s\n",
+ lt_inc_stack(lt_config_sinc)->file,
diff --git a/development/latrace/latrace.SlackBuild b/development/latrace/latrace.SlackBuild
index 899601c4e5..bf2208d214 100644
--- a/development/latrace/latrace.SlackBuild
+++ b/development/latrace/latrace.SlackBuild
@@ -54,6 +54,9 @@ find -L . \
-type d -exec chmod 0755 {} \; -o \
-type f -exec chmod u+rw,go+r-w,a-s {} \;
+# Thanks archlinux!
+patch -p0 < $CWD/fix-scanner-config-for-flex-2.6.x.patch
+
autoconf
CFLAGS="$SLKCFLAGS" \
diff --git a/development/lmdb/README b/development/lmdb/README
deleted file mode 100644
index 9e2c8df0ff..0000000000
--- a/development/lmdb/README
+++ /dev/null
@@ -1,2 +0,0 @@
-LMDB is an ultra-fast, ultra-compact key-value embedded data store
-developed by Symas for the OpenLDAP Project.
diff --git a/development/lmdb/lmdb.SlackBuild b/development/lmdb/lmdb.SlackBuild
deleted file mode 100644
index b7c2e3e2fb..0000000000
--- a/development/lmdb/lmdb.SlackBuild
+++ /dev/null
@@ -1,95 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for LMDB
-
-# Copyright 2015 Jack Hunt, United Kingdom
-# 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.
-
-PRGNAM=lmdb
-VERSION=${VERSION:-0.9.14}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-tar xvzf $CWD/$PRGNAM-$VERSION.tar.gz
-cd liblmdb
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-#Manually create dest dir's as there is no configure script.
-mkdir $PKG/usr
-mkdir $PKG/usr/man
-mkdir $PKG/usr/lib
-mkdir $PKG/usr/include
-
-sed -i '/^prefix/d' Makefile
-make prefix=/usr DESTDIR=$PKG
-make install prefix=/usr DESTDIR=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a CHANGES LICENSE $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/development/lmdb/lmdb.info b/development/lmdb/lmdb.info
deleted file mode 100644
index f27e78bd6e..0000000000
--- a/development/lmdb/lmdb.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="lmdb"
-VERSION="0.9.14"
-HOMEPAGE="http://symas.com/mdb/"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/lmdb-0.9.14.tar.gz"
-MD5SUM="5808c3822595960f8e965754f84ee99e"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Jack Hunt"
-EMAIL="jackmileshunt[at]gmail.com"
diff --git a/development/lmdb/slack-desc b/development/lmdb/slack-desc
deleted file mode 100644
index 22a92101a3..0000000000
--- a/development/lmdb/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-lmdb: lmdb (embedded data store)
-lmdb:
-lmdb: LMDB is an ultra-fast, ultra-compact key-value embedded data store
-lmdb: developed by Symas for the OpenLDAP Project.
-lmdb:
-lmdb: Online documentation available at:
-lmdb: http://symas.com/mdb/
-lmdb:
-lmdb:
-lmdb:
-lmdb:
diff --git a/development/meson/README b/development/meson/README
deleted file mode 100644
index 6ead00c876..0000000000
--- a/development/meson/README
+++ /dev/null
@@ -1,9 +0,0 @@
-meson (The Meson Build System)
-
-Meson is an open source build system meant to be both extremely fast,
-and, even more importantly, as user friendly as possible.
-
-The main design point of Meson is that every moment a developer spends
-writing or debugging build definitions is a second wasted. So is every
-second spent waiting for the build system to actually start compiling
-code.
diff --git a/development/meson/meson.SlackBuild b/development/meson/meson.SlackBuild
deleted file mode 100644
index 99d390e071..0000000000
--- a/development/meson/meson.SlackBuild
+++ /dev/null
@@ -1,91 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for meson
-
-# Copyright 2017-2018 Jeremy Hansen <jebrhansen+SBo -at- gmail.com>
-# 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.
-
-PRGNAM=meson
-VERSION=${VERSION:-0.49.0}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-python3 setup.py install --root=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mv $PKG/usr/share/man $PKG/usr/
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a \
- COPYING README.md PKG-INFO \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/development/meson/meson.info b/development/meson/meson.info
deleted file mode 100644
index 4aee5fc56a..0000000000
--- a/development/meson/meson.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="meson"
-VERSION="0.49.0"
-HOMEPAGE="http://mesonbuild.com"
-DOWNLOAD="https://github.com/mesonbuild/meson/releases/download/0.49.0/meson-0.49.0.tar.gz"
-MD5SUM="3c35b91e8040901034809576d54007c6"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="python3 ninja"
-MAINTAINER="Jeremy Hansen"
-EMAIL="jebrhansen+SBo@gmail.com"
diff --git a/development/meson/slack-desc b/development/meson/slack-desc
deleted file mode 100644
index e3e1d45d83..0000000000
--- a/development/meson/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-meson: meson (The Meson Build System)
-meson:
-meson: Meson is an open source build system meant to be both extremely fast,
-meson: and, even more importantly, as user friendly as possible.
-meson:
-meson: The main design point of Meson is that every moment a developer spends
-meson: writing or debugging build definitions is a second wasted. So is every
-meson: second spent waiting for the build system to actually start compiling
-meson: code.
-meson:
-meson: HOMEPAGE: http://mesonbuild.com
diff --git a/development/mozjs/README b/development/mozjs/README
deleted file mode 100644
index bd78678034..0000000000
--- a/development/mozjs/README
+++ /dev/null
@@ -1,3 +0,0 @@
-SpiderMonkey is Mozilla's JavaScript engine written in C and C++. It
-is used in various Mozilla products, including Firefox, and is
-available under the MPL2.
diff --git a/development/mozjs/mozjs.SlackBuild b/development/mozjs/mozjs.SlackBuild
deleted file mode 100644
index 2a9a440991..0000000000
--- a/development/mozjs/mozjs.SlackBuild
+++ /dev/null
@@ -1,143 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for mozjs
-# Copyright 2018 David Woodfall <dave@dawoodfall.net>
-# 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.
-
-PRGNAM=mozjs
-VERSION=${VERSION:-45.0.2}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-patch -p1 --verbose <$CWD/patches/moz38-dont-hardcode-libc-soname.patch
-
-cd js/src
-
-# Going with the gentoo ebuild options. They completely disable all
-# optimisation so we'll see how that works out.
-# --enable-optimize="-O2" \
-# They have also enabled thread safety.
-
-MOZ_MAKE_FLAGS="$SLKCFLAGS" \
-MOZ_OPTIMIZE_FLAGS="" \
-MOZ_DEBUG_FLAGS="" \
-HOST_OPTIMIZE_FLAGS="" \
-MODULE_OPTIMIZE_FLAGS="" \
-MOZ_PGO_OPTIMIZE_FLAGS="" \
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --enable-jemalloc \
- --enable-threadsafe \
- --with-system-nspr \
- --enable-system-ffi \
- --enable-readline \
- --disable-optimize \
- --with-intl-api \
- --build=$ARCH-slackware-linux
-
-make
-make install DESTDIR=$PKG
-
-# Get rid of any static libs
-find $PKG -iname '*.a' -o -iname '*.ajs' -delete
-
-# We don't want to clobber the stock js185 so we'll rename 'js' to 'mozjs' etc.
-(
- cd $PKG/usr/bin
- for bin in *
- do
- mv -v $bin moz$bin
- done
-)
-
-# Thanks to Arch
-# Resolve symlinks so they donʼt point to $srcdir
-for l in $(find "$PKG/usr/include/" -type l); do
- cp --remove-destination $(readlink $l) $l
-done
-
-# Fix to get elinks to build against it. Disabled for now.
-#sed -i "s%<cmath>%<cmath.h>%" $PKG/usr/include/mozjs-45/mozilla/MathAlgorithms.h
-#sed -i "s%<limits>%<limits.h>%" $PKG/usr/include/mozjs-45/js/Value.h
-#sed -i "/#include <new>/d" $PKG/usr/include/mozjs-45/js/Utility.h
-#sed -i "/#include <new>/d" $PKG/usr/include/mozjs-45/mozilla/Vector.h
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-cd ../..
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a \
- INSTALL LICENSE README \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/development/mozjs/mozjs.info b/development/mozjs/mozjs.info
deleted file mode 100644
index 5e487beb0e..0000000000
--- a/development/mozjs/mozjs.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="mozjs"
-VERSION="45.0.2"
-HOMEPAGE="https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey"
-DOWNLOAD="https://ftp.mozilla.org/pub/spidermonkey/releases/45.0.2/mozjs-45.0.2.tar.bz2"
-MD5SUM="2ca34f998d8b5ea79d8616dd26b5fbab"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="David Woodfall"
-EMAIL="dave@dawoodfall.net"
diff --git a/development/mozjs/patches/moz38-dont-hardcode-libc-soname.patch b/development/mozjs/patches/moz38-dont-hardcode-libc-soname.patch
deleted file mode 100644
index 708c749697..0000000000
--- a/development/mozjs/patches/moz38-dont-hardcode-libc-soname.patch
+++ /dev/null
@@ -1,15 +0,0 @@
---- a/testing/mozbase/mozinfo/mozinfo/mozinfo.py 2018-01-12 12:21:16.764318254 -0500
-+++ b/testing/mozbase/mozinfo/mozinfo/mozinfo.py 2018-01-12 12:22:23.392069398 -0500
-@@ -93,10 +93,11 @@
-
- if info['os'] == 'linux':
- import ctypes
-+ import ctypes.util
- import errno
- PR_SET_SECCOMP = 22
- SECCOMP_MODE_FILTER = 2
-- ctypes.CDLL("libc.so.6", use_errno=True).prctl(PR_SET_SECCOMP, SECCOMP_MODE_FILTER, 0)
-+ ctypes.CDLL(ctypes.util.find_library('c'), use_errno=True).prctl(PR_SET_SECCOMP, SECCOMP_MODE_FILTER, 0)
- info['has_sandbox'] = ctypes.get_errno() == errno.EFAULT
- else:
- info['has_sandbox'] = True
diff --git a/development/mozjs/slack-desc b/development/mozjs/slack-desc
deleted file mode 100644
index 0f9f7248d2..0000000000
--- a/development/mozjs/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# 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------------------------------------------------------|
-mozjs: mozjs (Mozilla's JavaScript engine)
-mozjs:
-mozjs: SpiderMonkey is Mozilla's JavaScript engine written in C and C++. It
-mozjs: is used in various Mozilla products, including Firefox, and is
-mozjs: available under the MPL2.
-mozjs:
-mozjs:
-mozjs:
-mozjs:
-mozjs:
-mozjs:
diff --git a/development/mysql-pinba/mysql-pinba.SlackBuild b/development/mysql-pinba/mysql-pinba.SlackBuild
index cdf19f5036..e6f3bf0ebd 100644
--- a/development/mysql-pinba/mysql-pinba.SlackBuild
+++ b/development/mysql-pinba/mysql-pinba.SlackBuild
@@ -95,7 +95,7 @@ sed -i "s|sql/structs.h|structs.h|" src/ha_pinba.cc
sed -i "s|sql/handler.h|handler.h|" src/ha_pinba.cc
CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS -fpermissive" \
LIBS="$malloc_lib" \
./configure \
--prefix=/usr \
diff --git a/development/mysql-workbench/mysql-workbench.SlackBuild b/development/mysql-workbench/mysql-workbench.SlackBuild
index b2344f4ef3..b0d607b78f 100644
--- a/development/mysql-workbench/mysql-workbench.SlackBuild
+++ b/development/mysql-workbench/mysql-workbench.SlackBuild
@@ -74,6 +74,11 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# From Archlinux: GCC 7.x complains about an unsupported flag; it also
+# introduced some new warnings, remove '-Werror' for the build to complete
+sed -i 's|-Wno-deprecated-register||' ext/scintilla/gtk/CMakeLists.txt
+sed -i '/^set/s|-Werror -Wall|-Wall|' CMakeLists.txt
+
# Patch from Ponce
patch -p1 < $CWD/config_and_ifconfig_paths.patch
diff --git a/development/ninja/README b/development/ninja/README
deleted file mode 100644
index 4881393f6e..0000000000
--- a/development/ninja/README
+++ /dev/null
@@ -1,4 +0,0 @@
-Ninja is a small build system with a focus on speed. It differs from other
-build systems in two major respects: it is designed to have its input files
-generated by a higher-level build system, and it is designed to run builds as
-fast as possible.
diff --git a/development/ninja/ninja.SlackBuild b/development/ninja/ninja.SlackBuild
deleted file mode 100644
index 88e5d32ab2..0000000000
--- a/development/ninja/ninja.SlackBuild
+++ /dev/null
@@ -1,95 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for ninja
-
-# Copyright 2015 Markus Rinne Finland
-# 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.
-
-PRGNAM=ninja
-VERSION=${VERSION:-1.9.0}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-CXXFLAGS="$SLKCFLAGS" \
-CFLAGS="$SLKCFLAGS" \
- python configure.py --bootstrap
-
-install -D -m0755 ninja $PKG/usr/bin/ninja
-install -D -m0644 misc/bash-completion $PKG/usr/share/bash-completion/completions/ninja
-install -D -m0644 misc/zsh-completion $PKG/usr/share/zsh/site-functions/_ninja
-install -D -m0644 misc/ninja.vim $PKG/usr/share/vim/vimfiles/syntax/ninja.vim
-install -D -m0644 misc/ninja-mode.el $PKG/usr/share/emacs/site-lisp/ninja-mode.el
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a \
- COPYING* HACKING* README* RELEASING \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/development/ninja/ninja.info b/development/ninja/ninja.info
deleted file mode 100644
index 7931d0a752..0000000000
--- a/development/ninja/ninja.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="ninja"
-VERSION="1.9.0"
-HOMEPAGE="https://ninja-build.org/"
-DOWNLOAD="https://github.com/ninja-build/ninja/archive/v1.9.0/ninja-1.9.0.tar.gz"
-MD5SUM="f340be768a76724b83e6daab69009902"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Markus Rinne"
-EMAIL="markus.ka.rinne@gmail.com"
diff --git a/development/ninja/slack-desc b/development/ninja/slack-desc
deleted file mode 100644
index 35a65f0947..0000000000
--- a/development/ninja/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-ninja: ninja (build system with a focus on speed)
-ninja:
-ninja: Ninja is a small build system with a focus on speed. It differs from
-ninja: other build systems in two major respects: it is designed to have its
-ninja: input files generated by a higher-level build system, and it is
-ninja: designed to run builds as fast as possible.
-ninja:
-ninja:
-ninja:
-ninja:
-ninja:
diff --git a/development/odb/odb.SlackBuild b/development/odb/odb.SlackBuild
index ae2edf5919..a51dea0e5e 100644
--- a/development/odb/odb.SlackBuild
+++ b/development/odb/odb.SlackBuild
@@ -69,6 +69,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# Thanks archlinux!
+patch -p1 < $CWD/odb_gcc6.patch
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
diff --git a/development/odb/odb_gcc6.patch b/development/odb/odb_gcc6.patch
new file mode 100644
index 0000000000..6f7c9005c4
--- /dev/null
+++ b/development/odb/odb_gcc6.patch
@@ -0,0 +1,355 @@
+From 511dcf67322ad87fb32f97d1cf7725c129e83898 Mon Sep 17 00:00:00 2001
+From: Boris Kolpackov <boris@codesynthesis.com>
+Date: Fri, 5 Feb 2016 16:01:42 +0200
+Subject: [PATCH] Initial work to make ODB compatible with GCC 6
+
+---
+ odb/cxx-lexer.cxx | 4 ++++
+ odb/gcc-fwd.hxx | 23 ++++++++++++++++++++++-
+ odb/gcc.hxx | 10 ++++++++++
+ odb/include.cxx | 31 +++++++++++++++++++++----------
+ odb/parser.cxx | 8 ++++----
+ odb/plugin.cxx | 29 +++++++++++++++++++++++++++--
+ odb/semantics/elements.cxx | 4 ++--
+ 7 files changed, 90 insertions(+), 19 deletions(-)
+
+diff --git a/odb/cxx-lexer.cxx b/odb/cxx-lexer.cxx
+index 7029c7e..64df296 100644
+--- a/odb/cxx-lexer.cxx
++++ b/odb/cxx-lexer.cxx
+@@ -135,8 +135,12 @@ cpp_error_callback (
+ #if BUILDING_GCC_MAJOR > 4 || BUILDING_GCC_MAJOR == 4 && BUILDING_GCC_MINOR > 5
+ int /*reason*/, // Added in GCC 4.6.0.
+ #endif
++#if BUILDING_GCC_MAJOR <= 5
+ location_t,
+ unsigned int,
++#else
++ rich_location*,
++#endif
+ char const* msg,
+ va_list *ap)
+ {
+diff --git a/odb/gcc-fwd.hxx b/odb/gcc-fwd.hxx
+index a120f05..618b106 100644
+--- a/odb/gcc-fwd.hxx
++++ b/odb/gcc-fwd.hxx
+@@ -7,6 +7,24 @@
+
+ #include <bversion.h>
+
++#if BUILDING_GCC_MAJOR >= 6
++
++// If we include <system.h> here, it pulls in all kinds of GCC trouble that
++// "poisons" standard C/C++ declarations; see safe-ctype.h. So instead we
++// are going to "exclude" safe-ctype.h. To compensate, however, we will
++// include it first thing in gcc.hxx.
++//
++# include <config.h>
++# define SAFE_CTYPE_H
++# include <system.h>
++# undef SAFE_CTYPE_H
++# include <coretypes.h>
++
++typedef unsigned int source_location; // <line-map.h>
++typedef source_location location_t; // <input.h>
++
++#else // GCC < 6
++
+ #if BUILDING_GCC_MAJOR > 4 || BUILDING_GCC_MAJOR == 4 && BUILDING_GCC_MINOR > 8
+ # include <limits.h> // CHAR_BIT
+ # include <config.h>
+@@ -33,6 +51,9 @@ extern "C"
+
+ typedef unsigned int source_location; // <line-map.h>
+ typedef source_location location_t; // <input.h>
+-}
++
++} // extern "C"
++
++#endif
+
+ #endif // ODB_GCC_FWD_HXX
+diff --git a/odb/gcc.hxx b/odb/gcc.hxx
+index c953047..858d685 100644
+--- a/odb/gcc.hxx
++++ b/odb/gcc.hxx
+@@ -7,6 +7,10 @@
+
+ #include <odb/gcc-fwd.hxx>
+
++#if BUILDING_GCC_MAJOR >= 6
++# include <safe-ctype.h> // See gcc-fwd.hxx.
++#endif
++
+ // GCC header includes to get the plugin and parse tree declarations.
+ // The order is important and doesn't follow any kind of logic.
+ //
+@@ -145,4 +149,10 @@ gcc_tree_code_name (gcc_tree_code_type tc) {return tree_code_name[tc];}
+ #define DECL_CHAIN(x) TREE_CHAIN(x)
+ #endif
+
++// In GCC 6, ANON_AGGRNAME_P became anon_aggrname_p().
++//
++#if BUILDING_GCC_MAJOR < 6
++# define anon_aggrname_p(X) ANON_AGGRNAME_P(X)
++#endif
++
+ #endif // ODB_GCC_HXX
+diff --git a/odb/include.cxx b/odb/include.cxx
+index 9c03f99..32d50a6 100644
+--- a/odb/include.cxx
++++ b/odb/include.cxx
+@@ -30,9 +30,18 @@ namespace
+ path path_;
+ };
+
++#if BUILDING_GCC_MAJOR >= 6
++ typedef line_map_ordinary line_map_type;
++#else
++ typedef line_map line_map_type;
++# ifndef linemap_check_ordinary
++# define linemap_check_ordinary(X) (X)
++# endif
++#endif
++
+ struct includes
+ {
+- typedef std::map<line_map const*, include_directive> map_type;
++ typedef std::map<line_map_type const*, include_directive> map_type;
+ bool trailing; // Included at the beginning or at the end of the main file.
+ map_type map;
+ };
+@@ -146,7 +155,9 @@ namespace
+ //
+ if (l > BUILTINS_LOCATION)
+ {
+- line_map const* lm (linemap_lookup (line_table, l));
++ line_map_type const* lm (
++ linemap_check_ordinary (
++ linemap_lookup (line_table, l)));
+
+ if (lm != 0 && !MAIN_FILE_P (lm))
+ {
+@@ -539,20 +550,20 @@ namespace
+ //
+ #if BUILDING_GCC_MAJOR == 4 && BUILDING_GCC_MINOR <= 6
+ size_t used (line_table->used);
+- line_map const* maps (line_table->maps);
++ line_map_type const* maps (line_table->maps);
+ #else
+ size_t used (line_table->info_ordinary.used);
+- line_map const* maps (line_table->info_ordinary.maps);
++ line_map_type const* maps (line_table->info_ordinary.maps);
+ #endif
+
+ for (size_t i (0); i < used; ++i)
+ {
+- line_map const* m (maps + i);
++ line_map_type const* m (maps + i);
+
+ if (MAIN_FILE_P (m) || m->reason != LC_ENTER)
+ continue;
+
+- line_map const* ifm (INCLUDED_FROM (line_table, m));
++ line_map_type const* ifm (INCLUDED_FROM (line_table, m));
+
+ #if BUILDING_GCC_MAJOR == 4 && BUILDING_GCC_MINOR <= 6
+ path f (m->to_file);
+@@ -582,7 +593,7 @@ namespace
+ for (includes::iterator j (i->second.begin ());
+ j != i->second.end (); ++j)
+ {
+- line_map const* lm (j->first);
++ line_map_type const* lm (j->first);
+ cerr << '\t' << lm->to_file << ":" << LAST_SOURCE_LINE (lm) << endl;
+ }
+ */
+@@ -591,13 +602,13 @@ namespace
+ // it is preferred over all others. Use the first one if there are
+ // several.
+ //
+- line_map const* main_lm (0);
++ line_map_type const* main_lm (0);
+ include_directive* main_inc (0);
+
+ for (includes::map_type::iterator j (i->second.map.begin ());
+ j != i->second.map.end (); ++j)
+ {
+- line_map const* lm (j->first);
++ line_map_type const* lm (j->first);
+
+ if (MAIN_FILE_P (lm))
+ {
+@@ -638,7 +649,7 @@ namespace
+ for (includes::map_type::iterator j (i->second.map.begin ());
+ j != i->second.map.end (); ++j)
+ {
+- line_map const* lm (j->first);
++ line_map_type const* lm (j->first);
+
+ #if BUILDING_GCC_MAJOR == 4 && BUILDING_GCC_MINOR <= 6
+ string f (lm->to_file);
+diff --git a/odb/parser.cxx b/odb/parser.cxx
+index 275da33..842611f 100644
+--- a/odb/parser.cxx
++++ b/odb/parser.cxx
+@@ -1070,14 +1070,14 @@ emit_type_decl (tree decl)
+ // says that in typedef struct {} S; S becomes struct's
+ // name.
+ //
+- if (ANON_AGGRNAME_P (decl_name))
++ if (anon_aggrname_p (decl_name))
+ {
+ tree d (TYPE_NAME (t));
+
+ if (d != NULL_TREE &&
+ !DECL_ARTIFICIAL (d) &&
+ DECL_NAME (d) != NULL_TREE &&
+- !ANON_AGGRNAME_P (DECL_NAME (d)))
++ !anon_aggrname_p (DECL_NAME (d)))
+ {
+ decl = d;
+ decl_name = DECL_NAME (decl);
+@@ -1694,7 +1694,7 @@ create_type (tree t,
+ ts << "start anon/stub " << gcc_tree_code_name(tc) << " at "
+ << file << ":" << line << endl;
+
+- if (d == NULL_TREE || ANON_AGGRNAME_P (DECL_NAME (d)))
++ if (d == NULL_TREE || anon_aggrname_p (DECL_NAME (d)))
+ {
+ if (tc == RECORD_TYPE)
+ r = &emit_class<class_> (t, file, line, clmn);
+@@ -1791,7 +1791,7 @@ create_type (tree t,
+ ts << "start anon/stub " << gcc_tree_code_name(tc) << " at "
+ << file << ":" << line << endl;
+
+- if (d == NULL_TREE || ANON_AGGRNAME_P (DECL_NAME (d)))
++ if (d == NULL_TREE || anon_aggrname_p (DECL_NAME (d)))
+ {
+ r = &emit_enum (t, access, file, line, clmn);
+ }
+diff --git a/odb/plugin.cxx b/odb/plugin.cxx
+index fbbfe46..bc98f3e 100644
+--- a/odb/plugin.cxx
++++ b/odb/plugin.cxx
+@@ -45,14 +45,28 @@ path file_; // File being compiled.
+ paths inputs_; // List of input files in at-once mode or just file_.
+
+ bool (*cpp_error_prev) (
+- cpp_reader*, int, int, location_t, unsigned int, const char*, va_list*);
++ cpp_reader*,
++ int,
++ int,
++#if BUILDING_GCC_MAJOR >= 6
++ rich_location*,
++#else
++ location_t,
++ unsigned int,
++#endif
++ const char*,
++ va_list*);
+
+ static bool
+ cpp_error_filter (cpp_reader* r,
+ int level,
+ int reason,
++#if BUILDING_GCC_MAJOR >= 6
++ rich_location* l,
++#else
+ location_t l,
+ unsigned int column_override,
++#endif
+ const char* msg,
+ va_list* ap)
+ {
+@@ -66,7 +80,18 @@ cpp_error_filter (cpp_reader* r,
+ if (strstr (msg, "#pragma once") != 0)
+ return true;
+
+- return cpp_error_prev (r, level, reason, l, column_override, msg, ap);
++ return cpp_error_prev (
++ r,
++ level,
++ reason,
++#if BUILDING_GCC_MAJOR >= 6
++ l,
++#else
++ l,
++ column_override,
++#endif
++ msg,
++ ap);
+ }
+
+ // A prefix of the _cpp_file struct. This struct is not part of the
+diff --git a/odb/semantics/elements.cxx b/odb/semantics/elements.cxx
+index 43fb379..ae9e906 100644
+--- a/odb/semantics/elements.cxx
++++ b/odb/semantics/elements.cxx
+@@ -76,7 +76,7 @@ namespace semantics
+ if (tree decl = TYPE_NAME (n))
+ name = DECL_NAME (decl);
+
+- return name != 0 && ANON_AGGRNAME_P (name);
++ return name != 0 && anon_aggrname_p (name);
+ }
+
+ return true;
+@@ -125,7 +125,7 @@ namespace semantics
+ if (tree decl = TYPE_NAME (type))
+ {
+ name = DECL_NAME (decl);
+- if (name != 0 && ANON_AGGRNAME_P (name))
++ if (name != 0 && anon_aggrname_p (name))
+ return true;
+
+ tree s (CP_DECL_CONTEXT (decl));
+--
+1.7.10.4
+
+m 61d13eb53ade9f30a64892a901401bda5e42c335 Mon Sep 17 00:00:00 2001
+From: Boris Kolpackov <boris@codesynthesis.com>
+Date: Mon, 8 Feb 2016 18:39:21 +0200
+Subject: [PATCH] Make compilable with GCC 6 in C++14 mode
+
+---
+ odb/gcc.hxx | 9 ++++++---
+ odb/parser.cxx | 2 ++
+ 2 files changed, 8 insertions(+), 3 deletions(-)
+
+diff --git a/odb/gcc.hxx b/odb/gcc.hxx
+index 858d685..a22357d 100644
+--- a/odb/gcc.hxx
++++ b/odb/gcc.hxx
+@@ -7,9 +7,12 @@
+
+ #include <odb/gcc-fwd.hxx>
+
+-#if BUILDING_GCC_MAJOR >= 6
+-# include <safe-ctype.h> // See gcc-fwd.hxx.
+-#endif
++// Actually, let's keep it out. With it included we can compile in C++98
++// but not in C++14 (GCC 6 default).
++//
++// #if BUILDING_GCC_MAJOR >= 6
++// # include <safe-ctype.h> // See gcc-fwd.hxx.
++// #endif
+
+ // GCC header includes to get the plugin and parse tree declarations.
+ // The order is important and doesn't follow any kind of logic.
+diff --git a/odb/parser.cxx b/odb/parser.cxx
+index 842611f..6dfff6f 100644
+--- a/odb/parser.cxx
++++ b/odb/parser.cxx
+@@ -1857,6 +1857,8 @@ create_type (tree t,
+ // the array type. In other words, we view it as "constant array"
+ // rather than "array of constant elements".
+ //
++ using semantics::array; // vs std::array.
++
+ tree bt (TREE_TYPE (t));
+ tree bt_mv (TYPE_MAIN_VARIANT (bt));
+ type& bt_node (emit_type (bt_mv, access::public_, file, line, clmn));
+--
+1.7.10.4
diff --git a/development/opencl-headers/README b/development/opencl-headers/README
deleted file mode 100644
index 4e432b6b4d..0000000000
--- a/development/opencl-headers/README
+++ /dev/null
@@ -1,3 +0,0 @@
-opencl-headers (headers file for OpenCL)
-
-This is a repackaging of the header files from khronos.org.
diff --git a/development/opencl-headers/opencl-headers.SlackBuild b/development/opencl-headers/opencl-headers.SlackBuild
deleted file mode 100644
index 930d45982e..0000000000
--- a/development/opencl-headers/opencl-headers.SlackBuild
+++ /dev/null
@@ -1,57 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for opencl-headers
-# simply a repack of the original headers from khronos.org
-# tarballed by me for easy maintenance.
-# Copyright Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy, 2012
-# 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.
-
-PRGNAM=opencl-headers
-VERSION=${VERSION:-1.1}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-ARCH=noarch
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG/usr/include/CL $OUTPUT
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz -C $PKG/usr/include/CL/
-chown -R root.root $PKG/usr/include/CL/*
-find $PKG/usr/include/CL \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/development/opencl-headers/opencl-headers.info b/development/opencl-headers/opencl-headers.info
deleted file mode 100644
index 067b5f9261..0000000000
--- a/development/opencl-headers/opencl-headers.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="opencl-headers"
-VERSION="1.1"
-HOMEPAGE="https://www.khronos.org/opencl/"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/opencl-headers-1.1.tar.xz"
-MD5SUM="3b9b4c49b3ddf37e275c5c22f94aa80a"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Matteo Bernardini"
-EMAIL="ponce@slackbuilds.org"
diff --git a/development/opencl-headers/slack-desc b/development/opencl-headers/slack-desc
deleted file mode 100644
index 456cf19c4f..0000000000
--- a/development/opencl-headers/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-opencl-headers: opencl-headers (headers file for OpenCL)
-opencl-headers:
-opencl-headers: This is a repackaging of the header files from khronos.org.
-opencl-headers:
-opencl-headers: homepage: https://www.khronos.org/opencl/
-opencl-headers:
-opencl-headers:
-opencl-headers:
-opencl-headers:
-opencl-headers:
-opencl-headers:
diff --git a/development/openocd/openocd.SlackBuild b/development/openocd/openocd.SlackBuild
index c75a62622a..e34954da41 100644
--- a/development/openocd/openocd.SlackBuild
+++ b/development/openocd/openocd.SlackBuild
@@ -5,13 +5,13 @@
# Written by thorsten johannvorderbrueggen <thorsten.johannvorderbrueggen@t-online.de>
PRGNAM=openocd
-VERSION=${VERSION:-0.8.0}
+VERSION=${VERSION:-0.10.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -22,8 +22,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -51,7 +51,7 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-CFLAGS="$SLKCFLAGS" \
+CFLAGS="$SLKCFLAGS -Wno-error=implicit-fallthrough= -Wno-error=format-truncation= -Wno-error=format-overflow=" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
diff --git a/development/openocd/openocd.info b/development/openocd/openocd.info
index 95d6cade91..a1d7add762 100644
--- a/development/openocd/openocd.info
+++ b/development/openocd/openocd.info
@@ -1,8 +1,8 @@
PRGNAM="openocd"
-VERSION="0.8.0"
+VERSION="0.10.0"
HOMEPAGE="http://openocd.sourceforge.net/"
-DOWNLOAD="http://sourceforge.net/projects/openocd/files/openocd/0.8.0/openocd-0.8.0.tar.gz"
-MD5SUM="271086c0efe0c454db7ddb0f55ace218"
+DOWNLOAD="http://downloads.sourceforge.net/openocd/openocd-0.10.0.tar.gz"
+MD5SUM="8971d16aee5c2642b33ee55fc6c86239"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/development/perf/perf.SlackBuild b/development/perf/perf.SlackBuild
index 0b6dc03e8b..3bf459e2d9 100644
--- a/development/perf/perf.SlackBuild
+++ b/development/perf/perf.SlackBuild
@@ -23,7 +23,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=perf
-VERSION=${VERSION:-4.4.172}
+VERSION=${VERSION:-4.19.19}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
diff --git a/development/perf/perf.info b/development/perf/perf.info
index 6fb9a5ba5c..4f7148e74b 100644
--- a/development/perf/perf.info
+++ b/development/perf/perf.info
@@ -1,5 +1,5 @@
PRGNAM="perf"
-VERSION="4.4.172"
+VERSION="4.19.19"
HOMEPAGE="https://perf.wiki.kernel.org/index.php/Main_Page"
DOWNLOAD="http://www.pastemobile.org/static/perf.dummy"
MD5SUM="9cba6c70fb57a22a155073d54748b614"
diff --git a/development/php-apcu/php-apcu.SlackBuild b/development/php-apcu/php-apcu.SlackBuild
index 62019f9258..1549356960 100644
--- a/development/php-apcu/php-apcu.SlackBuild
+++ b/development/php-apcu/php-apcu.SlackBuild
@@ -26,7 +26,7 @@
PRGNAM=php-apcu
SRCNAM=apcu
-VERSION=${VERSION:-4.0.11}
+VERSION=${VERSION:-5.1.10}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
diff --git a/development/php-apcu/php-apcu.info b/development/php-apcu/php-apcu.info
index a2c510b6cc..167bd4faab 100644
--- a/development/php-apcu/php-apcu.info
+++ b/development/php-apcu/php-apcu.info
@@ -1,8 +1,8 @@
PRGNAM="php-apcu"
-VERSION="4.0.11"
+VERSION="5.1.10"
HOMEPAGE="http://pecl.php.net/package/APCu/"
-DOWNLOAD="https://pecl.php.net/get/apcu-4.0.11.tgz"
-MD5SUM="13c0c0dd676e5a7905d54fa985d0ee62"
+DOWNLOAD="https://pecl.php.net/get/apcu-5.1.10.tgz"
+MD5SUM="a16259bb080b632d11d8ada09dd5ab56"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/development/poedit/poedit.SlackBuild b/development/poedit/poedit.SlackBuild
index 2319aba3bb..36f2fae14e 100644
--- a/development/poedit/poedit.SlackBuild
+++ b/development/poedit/poedit.SlackBuild
@@ -24,7 +24,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=poedit
-VERSION=${VERSION:-1.8.12}
+VERSION=${VERSION:-2.0.6}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -70,8 +70,6 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-patch --verbose -p1 < $CWD/setvalue.diff
-
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -80,7 +78,7 @@ CXXFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--build=$ARCH-slackware-linux \
-make
+make CPPFLAGS+=' -DUCHAR_TYPE=uint16_t'
make install-strip DESTDIR=$PKG
find $PKG/usr/man -type f -exec gzip -9 {} \;
diff --git a/development/poedit/poedit.info b/development/poedit/poedit.info
index b8391a4535..58048d5895 100644
--- a/development/poedit/poedit.info
+++ b/development/poedit/poedit.info
@@ -1,8 +1,8 @@
PRGNAM="poedit"
-VERSION="1.8.12"
+VERSION="2.0.6"
HOMEPAGE="https://www.poedit.net"
-DOWNLOAD="https://github.com/vslavik/poedit/releases/download/v1.8.12-oss/poedit-1.8.12.tar.gz"
-MD5SUM="7c16257fc8757fe658295b0e3a677670"
+DOWNLOAD="https://github.com/vslavik/poedit/releases/download/v2.0.6-oss/poedit-2.0.6.tar.gz"
+MD5SUM="1134fef2997884291083875506a922ed"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="wxGTK3 LucenePlusPlus gtkspell3"
diff --git a/development/poedit/setvalue.diff b/development/poedit/setvalue.diff
deleted file mode 100644
index 1c66943cea..0000000000
--- a/development/poedit/setvalue.diff
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/src/fileviewer.cpp 2013-11-10 17:38:50.161359501 +0400
-+++ b/src/fileviewer.cpp 2013-11-10 17:37:59.958987117 +0400
-@@ -286,7 +286,7 @@
- linenum = 0;
-
- m_text->SetReadOnly(false);
-- m_text->SetValue(data);
-+ m_text->SetText(data);
- m_text->SetReadOnly(true);
-
- m_text->MarkerDeleteAll(1);
diff --git a/development/qbs/qbs.SlackBuild b/development/qbs/qbs.SlackBuild
index 422f2a3ff1..6100451070 100644
--- a/development/qbs/qbs.SlackBuild
+++ b/development/qbs/qbs.SlackBuild
@@ -24,7 +24,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=qbs
-VERSION=${VERSION:-1.11.1}
+VERSION=${VERSION:-1.12.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
diff --git a/development/qbs/qbs.info b/development/qbs/qbs.info
index 98b81a7b34..036afbe9ee 100644
--- a/development/qbs/qbs.info
+++ b/development/qbs/qbs.info
@@ -1,8 +1,8 @@
PRGNAM="qbs"
-VERSION="1.11.1"
+VERSION="1.12.2"
HOMEPAGE="https://wiki.qt.io/Qbs"
-DOWNLOAD="https://download.qt.io/official_releases/qbs/1.11.1/qbs-src-1.11.1.tar.gz"
-MD5SUM="05c9993f4190fe8298cda3d4e803f37e"
+DOWNLOAD="https://download.qt.io/official_releases/qbs/1.12.2/qbs-src-1.12.2.tar.gz"
+MD5SUM="7b2f838a10b14e15badc3bb452e32d7b"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="qt5"
diff --git a/development/qt-creator/qt-creator.SlackBuild b/development/qt-creator/qt-creator.SlackBuild
index f7def375d8..95f9018969 100644
--- a/development/qt-creator/qt-creator.SlackBuild
+++ b/development/qt-creator/qt-creator.SlackBuild
@@ -27,7 +27,7 @@
# VERSION=4.2.0_rc1 or VERSION=4.2.0_beta1 (note the underscore).
PRGNAM=qt-creator
-VERSION=${VERSION:-4.6.2}
+VERSION=${VERSION:-4.8.0}
SRCVER=$(echo $VERSION | tr _ -)
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
diff --git a/development/qt-creator/qt-creator.info b/development/qt-creator/qt-creator.info
index abae80d2a7..bc29c3e72f 100644
--- a/development/qt-creator/qt-creator.info
+++ b/development/qt-creator/qt-creator.info
@@ -1,8 +1,8 @@
PRGNAM="qt-creator"
-VERSION="4.6.2"
+VERSION="4.8.0"
HOMEPAGE="https://wiki.qt.io/Qt_Creator"
-DOWNLOAD="https://download.qt.io/official_releases/qtcreator/4.6/4.6.2/qt-creator-opensource-src-4.6.2.tar.gz"
-MD5SUM="d1feebef18525a769c1745528e736466"
+DOWNLOAD="https://download.qt.io/official_releases/qtcreator/4.8/4.8.0/qt-creator-opensource-src-4.8.0.tar.gz"
+MD5SUM="9e75b07f068d8577ca7160a827bcecae"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="qbs"
diff --git a/development/re2c/README b/development/re2c/README
deleted file mode 100644
index 227f25951c..0000000000
--- a/development/re2c/README
+++ /dev/null
@@ -1,6 +0,0 @@
-re2c is a tool for writing very fast and very flexible scanners. Unlike
-any other such tool, re2c focuses on generating high efficient code for
-regular expression matching. As a result this allows a much broader
-range of use than any traditional lexer offers. And last but not least
-re2c generates warning free code that is equal to hand-written code in
-terms of size, speed and quality.
diff --git a/development/re2c/re2c.SlackBuild b/development/re2c/re2c.SlackBuild
deleted file mode 100644
index 74c6bc6ada..0000000000
--- a/development/re2c/re2c.SlackBuild
+++ /dev/null
@@ -1,110 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for re2c
-
-# Copyright 2008-2015 LukenShiro, Italy
-# 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.
-
-PRGNAM=re2c
-VERSION=${VERSION:-0.16}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i486 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-# .html file needs to be manually installed
-DOCFILES="README CHANGELOG doc/loplas.ps"
-
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-# --htmldir= is ignored
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --mandir=/usr/man \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --docdir=/usr/doc/$PRGNAM-$VERSION
-
-make
-# in order to regenerate scanner.cc file
-rm -f scanner.cc
-
-make install-strip DESTDIR=$PKG
-
-# compress man pages
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find . -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-
-# remove windows-only files
-rm -rf lessons/001_upn_calculator/windows/
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a $DOCFILES $PKG/usr/doc/$PRGNAM-$VERSION
-
-# copy other doc files
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/examples
-cp -R examples/* /$PKG/usr/doc/$PRGNAM-$VERSION/examples/
-
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/development/re2c/re2c.info b/development/re2c/re2c.info
deleted file mode 100644
index 7a2cabcbfe..0000000000
--- a/development/re2c/re2c.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="re2c"
-VERSION="0.16"
-HOMEPAGE="http://re2c.org/"
-DOWNLOAD="https://github.com/skvadrik/re2c/releases/download/0.16/re2c-0.16.tar.gz"
-MD5SUM="3bf508fabd52ed7334647d0ccb956e8d"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="LukenShiro"
-EMAIL="lukenshiro@ngi.it"
diff --git a/development/re2c/slack-desc b/development/re2c/slack-desc
deleted file mode 100644
index 3c90f77767..0000000000
--- a/development/re2c/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-re2c: re2c (regular expressions to C/C++ conversion tool)
-re2c:
-re2c: It is a tool for writing very fast and very flexible scanners. Unlike
-re2c: any other such tool, re2c focuses on generating high efficient code
-re2c: for regular expression matching. As a result this allows a much
-re2c: broader range of use than any traditional lexer offers. And last but
-re2c: not least re2c generates warning free code that is equal to
-re2c: hand-written code in terms of size, speed and quality
-re2c:
-re2c: Homepage: http://re2c.org
-re2c:
diff --git a/development/sbcl/glibc-2.26.patch b/development/sbcl/glibc-2.26.patch
new file mode 100644
index 0000000000..3df2b03958
--- /dev/null
+++ b/development/sbcl/glibc-2.26.patch
@@ -0,0 +1,13 @@
+--- a/src/runtime/x86-64-linux-os.h.ORIG 2017-08-31 11:40:51.000000000 +0200
++++ b/src/runtime/x86-64-linux-os.h 2017-08-31 18:56:10.447100144 +0200
+@@ -1,7 +1,9 @@
+ #ifndef _X86_64_LINUX_OS_H
+ #define _X86_64_LINUX_OS_H
+
+-typedef struct ucontext os_context_t;
++#include <sys/ucontext.h>
++
++typedef struct ucontext_t os_context_t;
+ typedef long os_context_register_t;
+
+ static inline os_context_t *arch_os_get_context(void **void_context)
diff --git a/development/sbcl/sbcl.SlackBuild b/development/sbcl/sbcl.SlackBuild
index 465f80eff0..ba2598db1c 100644
--- a/development/sbcl/sbcl.SlackBuild
+++ b/development/sbcl/sbcl.SlackBuild
@@ -71,6 +71,8 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+patch -p1 < $CWD/glibc-2.26.patch
+
sh make.sh clisp --prefix=/usr --fancy
SBCL_HOME="" \
diff --git a/development/srcML/srcML.info b/development/srcML/srcML.info
index f40334db79..bb1d58b9a7 100644
--- a/development/srcML/srcML.info
+++ b/development/srcML/srcML.info
@@ -2,9 +2,9 @@ PRGNAM="srcML"
VERSION="0.9.5"
HOMEPAGE="https://www.srcml.org/"
DOWNLOAD="http://131.123.42.38/lmcrs/beta/srcML-src.tar.gz \
- http://sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.bz2"
+ http://downloads.sourceforge.net/boost/boost_1_63_0.tar.bz2"
MD5SUM="e5c4223f7556b57984b20d70606f50ab \
- 6aa9a5c6a4ca1016edd0ed1178e3cb87"
+ 1c837ecd990bb022d07e7aab32b09847"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="antlr2"
diff --git a/development/swfmill/swfmill.SlackBuild b/development/swfmill/swfmill.SlackBuild
index 5881f08825..910f31fa33 100644
--- a/development/swfmill/swfmill.SlackBuild
+++ b/development/swfmill/swfmill.SlackBuild
@@ -54,7 +54,7 @@ find -L . \
export CFLAGS=""
-export CXXFLAGS="$SLKCFLAGS"
+export CXXFLAGS="$SLKCFLAGS -Wno-error=narrowing"
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
diff --git a/development/tora/README b/development/tora/README
index e1c08a248a..b109aec98a 100644
--- a/development/tora/README
+++ b/development/tora/README
@@ -5,3 +5,5 @@ through Qt's ODBC support.
For Oracle DBMS support, run the script like this,
ORACLE_HOME=/path/to/oracle/home ./tora.Slackbuild
+
+postgresql is an autodetected dependency.
diff --git a/development/tora/tora.SlackBuild b/development/tora/tora.SlackBuild
index 9245687cbb..e0150dab62 100644
--- a/development/tora/tora.SlackBuild
+++ b/development/tora/tora.SlackBuild
@@ -23,7 +23,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=tora
-VERSION=${VERSION:-2.1.3}
+VERSION=${VERSION:-20170725_d9fddb8}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -60,11 +60,8 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
+tar xvf $CWD/$PRGNAM-$VERSION.tar.?z
cd $PRGNAM-$VERSION
-
-patch -Np1 -i "${CWD}/include_unistd.patch"
-
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -79,12 +76,13 @@ cd build
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_INSTALL_PREFIX=/usr \
-DLIB_SUFFIX=${LIBDIRSUFFIX} \
- -DWANT_INTERNAL_QSCINTILLA=0 \
+ -DWANT_INTERNAL_QSCINTILLA=1 \
+ -DWANT_INTERNAL_LOKI=1 \
-DCMAKE_BUILD_TYPE=Release ..
make
make install DESTDIR=$PKG
-
+cd ..
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
@@ -94,7 +92,7 @@ mkdir -p $PKG/usr/share/icons/hicolor/{32x32,16x16}/apps
mkdir -p $PKG/usr/share/applications
( cd $TMP/$PRGNAM-$VERSION
- cp -a AUTHORS BUGS ChangeLog COPYING* README* TODO NEWS $PKG/usr/doc/$PRGNAM-$VERSION
+ cp -a AUTHORS ChangeLog COPYING* README* TODO NEWS $PKG/usr/doc/$PRGNAM-$VERSION
cp -a src/help/*.html $PKG/usr/doc/$PRGNAM-$VERSION/help
cp -a src/help/images/*.png $PKG/usr/doc/$PRGNAM-$VERSION/help/images
cp -a src/icons/tora.xpm $PKG/usr/share/icons/hicolor/32x32/apps
diff --git a/development/tora/tora.info b/development/tora/tora.info
index a03ef294b4..c90540fffe 100644
--- a/development/tora/tora.info
+++ b/development/tora/tora.info
@@ -1,10 +1,10 @@
PRGNAM="tora"
-VERSION="2.1.3"
+VERSION="3.2"
HOMEPAGE="http://torasql.com"
-DOWNLOAD="http://sourceforge.net/projects/tora/files/tora/2.1.3/tora-2.1.3.tar.bz2"
-MD5SUM="b3a4b5c827c300e75eea53874634e8a2"
+DOWNLOAD="http://ponce.cc/slackware/sources/repo/tora-20170725_d9fddb8.tar.xz"
+MD5SUM="0ebe7f9420b719d3062cf6598c9b8fc6"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES=""
+REQUIRES="qt5"
MAINTAINER="Giuseppe Di Terlizzi"
EMAIL="giuseppe.diterlizzi@gmail.com"
diff --git a/development/vala/README b/development/vala/README
deleted file mode 100644
index 8c6d4c8a21..0000000000
--- a/development/vala/README
+++ /dev/null
@@ -1,4 +0,0 @@
-Vala is a new programming language that aims to bring modern programming
-language features to GNOME developers without imposing any additional
-runtime requirements and without using a different ABI compared to
-applications and libraries written in C.
diff --git a/development/vala/patch_support-gtk318.diff b/development/vala/patch_support-gtk318.diff
deleted file mode 100644
index cace5971c7..0000000000
--- a/development/vala/patch_support-gtk318.diff
+++ /dev/null
@@ -1,50 +0,0 @@
---- vala-0.34.2/vapi/gtk+-3.0.vapi.orig 2016-09-27 22:44:37.000000000 +1000
-+++ vala-0.34.2/vapi/gtk+-3.0.vapi 2016-11-14 16:24:16.635334244 +1000
-@@ -840,6 +840,7 @@
- [CCode (has_construct_function = false, type = "GtkWidget*")]
- public Button.with_mnemonic (string label);
- public bool always_show_image { get; set construct; }
-+ public bool focus_on_click { get; set; }
- public Gtk.Widget image { get; set; }
- public Gtk.PositionType image_position { get; set; }
- public string label { get; set construct; }
-@@ -1573,6 +1574,7 @@
- public Gtk.CellArea cell_area { owned get; construct; }
- public int column_span_column { get; set; }
- public int entry_text_column { get; set; }
-+ public bool focus_on_click { get; set; }
- public bool has_entry { get; construct; }
- [NoAccessorMethod]
- public bool has_frame { get; set; }
-@@ -2080,6 +2082,7 @@
- [CCode (has_construct_function = false, type = "GtkWidget*")]
- public FileChooserButton.with_dialog (Gtk.Dialog dialog);
- public Gtk.FileChooser dialog { construct; }
-+ public bool focus_on_click { get; set; }
- public string title { get; set; }
- public int width_chars { get; set; }
- public virtual signal void file_set ();
-@@ -6692,7 +6695,6 @@
- public unowned Gdk.Display get_display ();
- public bool get_double_buffered ();
- public int get_events ();
-- public bool get_focus_on_click ();
- public unowned Pango.FontMap? get_font_map ();
- public unowned Cairo.FontOptions? get_font_options ();
- public unowned Gdk.FrameClock? get_frame_clock ();
-@@ -6859,7 +6861,6 @@
- public void set_direction (Gtk.TextDirection dir);
- public void set_double_buffered (bool double_buffered);
- public void set_events (int events);
-- public void set_focus_on_click (bool focus_on_click);
- public void set_font_map (Pango.FontMap? font_map);
- public void set_font_options (Cairo.FontOptions? options);
- public void set_halign (Gtk.Align align);
-@@ -6927,7 +6928,6 @@
- public Gdk.EventMask events { get; set; }
- [NoAccessorMethod]
- public bool expand { get; set; }
-- public bool focus_on_click { get; set; }
- public Gtk.Align halign { get; set; }
- [NoAccessorMethod]
- public bool has_default { get; set; }
diff --git a/development/vala/slack-desc b/development/vala/slack-desc
deleted file mode 100644
index 77e7b20230..0000000000
--- a/development/vala/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-vala: vala (Compiler for the GObject type system)
-vala:
-vala: Vala is a new programming language that aims to bring modern
-vala: programming language features to GNOME developers without imposing
-vala: any additional runtime requirements and without using a different
-vala: ABI compared to applications and libraries written in C.
-vala:
-vala:
-vala:
-vala:
-vala:
diff --git a/development/vala/vala.SlackBuild b/development/vala/vala.SlackBuild
deleted file mode 100644
index b1a58fde29..0000000000
--- a/development/vala/vala.SlackBuild
+++ /dev/null
@@ -1,100 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for Vala
-
-# Copyright 2009-2016 Erik W. Hanson, Minneapolis, MN, USA
-# Copyright 2016 Willy Sudiarto Raharjo <willysr@slackbuilds.org>
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=vala
-VERSION=${VERSION:-0.34.9}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -eu
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-# Patch to support older GTK+3
-patch -p1 < $CWD/patch_support-gtk318.diff
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --mandir=/usr/man/ \
- --disable-static \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --build=$ARCH-slackware-linux
-
-make
-make install-strip DESTDIR=$PKG
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $(find $PKG/usr/man -type l) ; do ln -s $(readlink $i).gz $i.gz ; rm $i ; done
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS COPYING ChangeLog INSTALL MAINTAINERS NEWS README THANKS \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/development/vala/vala.info b/development/vala/vala.info
deleted file mode 100644
index a3db035038..0000000000
--- a/development/vala/vala.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="vala"
-VERSION="0.34.9"
-HOMEPAGE="https://wiki.gnome.org/Projects/Vala"
-DOWNLOAD="https://download.gnome.org/sources/vala/0.34/vala-0.34.9.tar.xz"
-MD5SUM="f8bb81971065d7208447ad2437883a0d"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Willy Sudiarto Raharjo"
-EMAIL="willysr@slackbuilds.org"
diff --git a/games/0ad-data/0ad-data.SlackBuild b/games/0ad-data/0ad-data.SlackBuild
index 4d84bd6605..259cdbd2db 100644
--- a/games/0ad-data/0ad-data.SlackBuild
+++ b/games/0ad-data/0ad-data.SlackBuild
@@ -25,7 +25,7 @@
PRGNAM=0ad-data
DATANAM=0ad
-VERSION=${VERSION:-0.0.21}
+VERSION=${VERSION:-0.0.23}
RELEASE=${RELEASE:-alpha}
ARCH=noarch
BUILD=${BUILD:-1}
diff --git a/games/0ad-data/0ad-data.info b/games/0ad-data/0ad-data.info
index 375d4d178f..cdb378d06a 100644
--- a/games/0ad-data/0ad-data.info
+++ b/games/0ad-data/0ad-data.info
@@ -1,8 +1,8 @@
PRGNAM="0ad-data"
-VERSION="0.0.21"
+VERSION="0.0.23"
HOMEPAGE="https://play0ad.com/"
-DOWNLOAD="http://releases.wildfiregames.com/0ad-0.0.21-alpha-unix-data.tar.xz"
-MD5SUM="d42b04e1f65d45b5a4bbf8fcea6076f8"
+DOWNLOAD="http://releases.wildfiregames.com/0ad-0.0.23-alpha-unix-data.tar.xz"
+MD5SUM="84dbb0e2fc24e7a972ea6f374fdf308d"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/games/0ad/0ad.SlackBuild b/games/0ad/0ad.SlackBuild
index 524b16e406..18b7983b5d 100644
--- a/games/0ad/0ad.SlackBuild
+++ b/games/0ad/0ad.SlackBuild
@@ -24,7 +24,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=0ad
-VERSION=${VERSION:-0.0.21}
+VERSION=${VERSION:-0.0.23}
RELEASE=${RELEASE:-alpha}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -71,26 +71,32 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+unset CPPFLAGS
+
export CFLAGS="$SLKCFLAGS"
-export CXXFLAGS="$SLKCFLAGS -fpermissive"
-# and yes, it's really necessary to set CPPFLAGS like this :(
-export CPPFLAGS="$SLKCFLAGS -fpermissive"
+export CXXFLAGS="$SLKCFLAGS -DU_USING_ICU_NAMESPACE=1"
export LDFLAGS="-L/usr/lib${LIBDIRSUFFIX}"
+export SDL2_CONFIG="/usr/bin/sdl2-config"
-# Fix boost names
-sed -i 's/-mt//g' build/premake/extern_libs4.lua
+# Fix boost names, include paths and remove isystem
+sed -i 's|-mt||g' build/premake/extern_libs5.lua
+sed -i 's|/usr/local/include|/usr/include|' build/premake/{extern_libs5.lua,premake5.lua}
+sed -i 's|-isystem |-I|' build/premake/premake5/{src/tools/gcc.lua,tests/tools/test_gcc.lua}
# build/workspaces/update-workspaces.sh
# have a root check, let's disable it.
patch -p1 < $CWD/disable-root-check.patch
build/workspaces/update-workspaces.sh \
+ --without-pch \
--bindir=/usr/games \
--datadir=/usr/share/games/0ad \
--libdir=/usr/lib${LIBDIRSUFFIX}/0ad \
--${ATLAS:-disable}-atlas
-make CONFIG=Release -C build/workspaces/gcc
+sed -i 's|-isystem |-I|g' build/workspaces/gcc/*.make
+
+verbose=1 make CONFIG=Release -C build/workspaces/gcc
mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/0ad
cp binaries/system/*.so* $PKG/usr/lib${LIBDIRSUFFIX}/0ad
diff --git a/games/0ad/0ad.info b/games/0ad/0ad.info
index 97bc6ce2ac..6acd4190da 100644
--- a/games/0ad/0ad.info
+++ b/games/0ad/0ad.info
@@ -1,10 +1,10 @@
PRGNAM="0ad"
-VERSION="0.0.21"
+VERSION="0.0.23"
HOMEPAGE="https://play0ad.com/"
-DOWNLOAD="http://releases.wildfiregames.com/0ad-0.0.21-alpha-unix-build.tar.xz"
-MD5SUM="095eade8c9b3deaf25d0d7fa423ff860"
+DOWNLOAD="http://releases.wildfiregames.com/0ad-0.0.23-alpha-unix-build.tar.xz"
+MD5SUM="062efa3857b9ad08243487968adafb7b"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="0ad-data OpenAL enet gloox miniupnpc SDL2"
+REQUIRES="0ad-data OpenAL enet gloox libsodium miniupnpc SDL2"
MAINTAINER="Reedych"
EMAIL="reedych@ya.ru"
diff --git a/games/alienarena/alienarena-7.66-no-qglBlitFramebufferEXT.patch b/games/alienarena/alienarena-7.66-no-qglBlitFramebufferEXT.patch
new file mode 100644
index 0000000000..1f07e24f46
--- /dev/null
+++ b/games/alienarena/alienarena-7.66-no-qglBlitFramebufferEXT.patch
@@ -0,0 +1,22 @@
+diff -up alienarena-7.66/source/ref_gl/r_shadowmaps.c.no-qglBlitFramebufferEXT alienarena-7.66/source/ref_gl/r_shadowmaps.c
+--- alienarena-7.66/source/ref_gl/r_shadowmaps.c.no-qglBlitFramebufferEXT 2013-11-05 14:46:37.611487279 -0500
++++ alienarena-7.66/source/ref_gl/r_shadowmaps.c 2013-11-05 15:00:47.510933729 -0500
+@@ -95,12 +95,12 @@ void R_CheckFBOExtensions (void)
+
+ //must check for ability to blit(Many old ATI drivers do not support)
+ //TODO: redundant with previous check?
+- if(gl_state.hasFBOblit) {
+- if(!qglBlitFramebufferEXT) {
+- Com_Printf("glBlitFramebufferEXT not found...\n");
+- gl_state.hasFBOblit = false;
+- }
+- }
++ // if(gl_state.hasFBOblit) {
++ // if(!qglBlitFramebufferEXT) {
++ // Com_Printf("glBlitFramebufferEXT not found...\n");
++ // gl_state.hasFBOblit = false;
++ // }
++ //}
+ }
+
+
diff --git a/games/alienarena/alienarena.SlackBuild b/games/alienarena/alienarena.SlackBuild
index 3241f2f1c9..1d3d42b012 100644
--- a/games/alienarena/alienarena.SlackBuild
+++ b/games/alienarena/alienarena.SlackBuild
@@ -29,7 +29,7 @@ TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -40,8 +40,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -59,15 +59,19 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar -xvf $CWD/$PRGNAM-$VERSION-linux20130827.tar.gz
-cd $PRGNAM-$VERSION
+rm -rf $PRGNAM-$VERSION-svn4307
+tar -xvf $CWD/$PRGNAM-$VERSION-svn4307.tar.xz
+cd $PRGNAM-$VERSION-svn4307
chown -R root:root .
find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+patch -p1 < $CWD/alienarena-7.66-no-qglBlitFramebufferEXT.patch
+
+rm -rf source/unix/ode
sed -i -e "s|crx|$PRGNAM|g" -e "s|\.codred|\.${PRGNAM}|g" Tools/LinuxScripts/*
@@ -83,7 +87,7 @@ CXXFLAGS="$SLKCFLAGS" \
--with-zlib \
--enable-ansi-color \
--with-system-libode \
- --with-xf86dga \
+ --without-xf86dga \
--with-icondir=/usr/share/pixmaps \
--docdir=/usr/doc/$PRGNAM-$VERSION \
--build=$ARCH-slackware-linux
@@ -91,13 +95,13 @@ CXXFLAGS="$SLKCFLAGS" \
make
make install DESTDIR=$PKG
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
mkdir -p $PKG/usr/share/applications
install -m 0644 $CWD/$PRGNAM.desktop $PKG/usr/share/applications
-cp -a COPYING Tools/* $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a Tools/* $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
find $PKG/usr/doc -type f -exec chmod 0644 '{}' \;
diff --git a/games/alienarena/alienarena.info b/games/alienarena/alienarena.info
index a1fff59833..30878e5abc 100644
--- a/games/alienarena/alienarena.info
+++ b/games/alienarena/alienarena.info
@@ -1,8 +1,8 @@
PRGNAM="alienarena"
VERSION="7.66"
HOMEPAGE="http://icculus.org/alienarena/rpa/"
-DOWNLOAD="http://red.planetarena.org/files/alienarena-7.66-linux20130827.tar.gz"
-MD5SUM="50928622f614ccd9938943de5fd37c1a"
+DOWNLOAD="http://ponce.cc/slackware/sources/repo/alienarena-7.66-svn4307.tar.xz"
+MD5SUM="bdaa12739a196df9fc1abc18a9ccfbbe"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="OpenAL ode"
diff --git a/games/alienarena/checkout_code.sh b/games/alienarena/checkout_code.sh
new file mode 100644
index 0000000000..d78a5c0e1a
--- /dev/null
+++ b/games/alienarena/checkout_code.sh
@@ -0,0 +1,6 @@
+svn co svn://svn.icculus.org/alienarena/trunk
+cd trunk
+svn update -r 4307
+cd ..
+mv trunk alienarena-7.66-svn4307
+tar --exclude-vcs -cJf alienarena-7.66-svn4307.tar.xz alienarena-7.66-svn4307
diff --git a/games/assaultcube/assaultcube-gcc6.patch b/games/assaultcube/assaultcube-gcc6.patch
new file mode 100644
index 0000000000..521372ee9d
--- /dev/null
+++ b/games/assaultcube/assaultcube-gcc6.patch
@@ -0,0 +1,301 @@
+From 752950989b4e286459ca9aee3d61a868d7b20fa4 Mon Sep 17 00:00:00 2001
+From: ac-stef <ac_stef@users.sf.net>
+Date: Sat, 27 Feb 2016 21:28:23 +0100
+Subject: [PATCH] fix some errors and warnings for GCC 6
+
+* do not use std::abs() because math.h includes one, that converts ints
+ to double. Use own iabs(), which directly uses labs() instead.
+* don't use the word "gamma" as name for variables
+* don't use a homebrew round() function
+---
+ source/src/bot/bot_waypoint.cpp | 12 ++++++------
+ source/src/command.cpp | 2 +-
+ source/src/command.h | 1 +
+ source/src/crypto.cpp | 2 +-
+ source/src/editing.cpp | 6 +++---
+ source/src/entity.h | 2 +-
+ source/src/main.cpp | 8 ++++----
+ source/src/platform.h | 9 +--------
+ source/src/protos.h | 3 ++-
+ source/src/rendercubes.cpp | 8 ++++----
+ source/src/rendertext.cpp | 4 ++--
+ source/src/tools.h | 3 +--
+ source/src/world.cpp | 6 +++---
+ source/src/worldocull.cpp | 2 +-
+ source/src/worldrender.cpp | 4 ++--
+ 15 files changed, 33 insertions(+), 39 deletions(-)
+
+diff --git a/source/src/bot/bot_waypoint.cpp b/source/src/bot/bot_waypoint.cpp
+index 520c686..7b265ef 100644
+--- a/source/src/bot/bot_waypoint.cpp
++++ b/source/src/bot/bot_waypoint.cpp
+@@ -1221,7 +1221,7 @@ void CWaypointClass::CalcCost(node_s *pNode)
+ flCost += (1.0f-flFraction)*0.5f;
+ }
+
+- if ((abs(a) > 4) || (abs(b) > 4)) continue;
++ if ((iabs(a) > 4) || (iabs(b) > 4)) continue;
+
+ vec from = to;
+ to.z -= (JUMP_HEIGHT - 1.0f);
+@@ -1249,7 +1249,7 @@ void CWaypointClass::CalcCost(node_s *pNode)
+ flCost += (1.0f-flFraction)*0.5f;
+ }
+
+- if ((abs(a) > 4) || (abs(b) > 4)) continue;
++ if ((iabs(a) > 4) || (iabs(b) > 4)) continue;
+
+ vec from = to;
+ to.z -= (JUMP_HEIGHT - 1.0f);
+@@ -1671,12 +1671,12 @@ node_s *CWaypointClass::GetNearestTriggerFloodWP(vec v_origin, float flRange)
+ void CWaypointClass::GetNodeIndexes(const vec &v_origin, short *i, short *j)
+ {
+ // Function code by cheesy and PMB
+- //*i = abs((int)((int)(v_origin.x + (2*ssize)) / SECTOR_SIZE));
+- //*j = abs((int)((int)(v_origin.y + (2*ssize)) / SECTOR_SIZE));
++ //*i = iabs((int)((int)(v_origin.x + (2*ssize)) / SECTOR_SIZE));
++ //*j = iabs((int)((int)(v_origin.y + (2*ssize)) / SECTOR_SIZE));
+ //*i = (int)((v_origin.x) / ssize * MAX_MAP_GRIDS);
+ //*j = (int)((v_origin.y) / ssize * MAX_MAP_GRIDS);
+- *i = abs((int)((v_origin.x) / MAX_MAP_GRIDS));
+- *j = abs((int)((v_origin.y) / MAX_MAP_GRIDS));
++ *i = iabs((int)((v_origin.x) / MAX_MAP_GRIDS));
++ *j = iabs((int)((v_origin.y) / MAX_MAP_GRIDS));
+
+ if (*i > MAX_MAP_GRIDS - 1)
+ *i = MAX_MAP_GRIDS - 1;
+diff --git a/source/src/command.cpp b/source/src/command.cpp
+index 668f3bf..2a5c90d 100644
+--- a/source/src/command.cpp
++++ b/source/src/command.cpp
+@@ -499,7 +499,7 @@ char *executeret(const char *p) // all evaluation hap
+ if(lc<=seer_t1.length())
+ {
+ int dt = seer_t1[seer_index] - seer_t1[lc];
+- if(abs(dt)<2)
++ if(iabs(dt)<2)
+ {
+ conoutf("SCRIPT EXECUTION warning [%d:%s]", &p, p);
+ seer_t2.add(seer_t1[seer_index]);
+diff --git a/source/src/command.h b/source/src/command.h
+index a3ca68a..2a3de0c 100644
+--- a/source/src/command.h
++++ b/source/src/command.h
+@@ -86,6 +86,7 @@ enum { IEXC_CORE = 0, IEXC_CFG, IEXC_PROMPT, IEXC_MAPCFG, IEXC_MDLCFG, IEXC_NUM
+ #define VARNP(name, global, min, cur, max) int global = variable(#name, min, cur, max, &global, NULL, true)
+ #define VARF(name, min, cur, max, body) extern int name; void var_##name() { body; } int name = variable(#name, min, cur, max, &name, var_##name, false)
+ #define VARFP(name, min, cur, max, body) extern int name; void var_##name() { body; } int name = variable(#name, min, cur, max, &name, var_##name, true)
++#define VARNFP(name, global, min, cur, max, body) extern int global; void var_##name() { body; } int global = variable(#name, min, cur, max, &global, var_##name, true)
+
+ #define FVARP(name, min, cur, max) float name = fvariable(#name, min, cur, max, &name, NULL, true)
+ #define FVAR(name, min, cur, max) float name = fvariable(#name, min, cur, max, &name, NULL, false)
+diff --git a/source/src/crypto.cpp b/source/src/crypto.cpp
+index 44041be..0684750 100644
+--- a/source/src/crypto.cpp
++++ b/source/src/crypto.cpp
+@@ -778,7 +778,7 @@ static const char *hashchunktoa(tiger::chunk h) // portable solution instead o
+ const char *genpwdhash(const char *name, const char *pwd, int salt)
+ {
+ static string temp;
+- formatstring(temp)("%s %d %s %s %d", pwd, salt, name, pwd, abs(PROTOCOL_VERSION));
++ formatstring(temp)("%s %d %s %s %d", pwd, salt, name, pwd, iabs(PROTOCOL_VERSION));
+ tiger::hashval hash;
+ tiger::hash((uchar *)temp, (int)strlen(temp), hash);
+ formatstring(temp)("%s %s %s", hashchunktoa(hash.chunks[0]), hashchunktoa(hash.chunks[1]), hashchunktoa(hash.chunks[2]));
+diff --git a/source/src/editing.cpp b/source/src/editing.cpp
+index 8d5e1ff..745aa98 100644
+--- a/source/src/editing.cpp
++++ b/source/src/editing.cpp
+@@ -137,11 +137,11 @@ void checkselections()
+ void makesel(bool isnew)
+ {
+ block &cursel = sels.last(); //RR 10/12/12 - FIXEME, error checking should happen with "isnew", not here checking if it really is new.
+- if(isnew || sels.length() == 0) addselection(min(lastx, cx), min(lasty, cy), abs(lastx-cx)+1, abs(lasty-cy)+1, max(lasth, ch));
++ if(isnew || sels.length() == 0) addselection(min(lastx, cx), min(lasty, cy), iabs(lastx-cx)+1, iabs(lasty-cy)+1, max(lasth, ch));
+ else
+ {
+ cursel.x = min(lastx, cx); cursel.y = min(lasty, cy);
+- cursel.xs = abs(lastx-cx)+1; cursel.ys = abs(lasty-cy)+1;
++ cursel.xs = iabs(lastx-cx)+1; cursel.ys = iabs(lasty-cy)+1;
+ cursel.h = max(lasth, ch);
+ correctsel(cursel);
+ }
+@@ -849,7 +849,7 @@ void movemap(int xo, int yo, int zo) // move whole map
+ }
+ if(xo || yo)
+ {
+- block b = { max(-xo, 0), max(-yo, 0), ssize - abs(xo), ssize - abs(yo) }, *cp = blockcopy(b);
++ block b = { max(-xo, 0), max(-yo, 0), ssize - iabs(xo), ssize - iabs(yo) }, *cp = blockcopy(b);
+ cp->x = max(xo, 0);
+ cp->y = max(yo, 0);
+ blockpaste(*cp);
+diff --git a/source/src/entity.h b/source/src/entity.h
+index e2ad32d..84ac385 100644
+--- a/source/src/entity.h
++++ b/source/src/entity.h
+@@ -538,7 +538,7 @@ class playerent : public dynent, public playerstate
+ {
+ const int maxskin[2] = { 4, 6 };
+ t = team_base(t < 0 ? team : t);
+- nextskin[t] = abs(s) % maxskin[t];
++ nextskin[t] = iabs(s) % maxskin[t];
+ }
+ };
+
+diff --git a/source/src/main.cpp b/source/src/main.cpp
+index 0d57c0c..c51cd74 100644
+--- a/source/src/main.cpp
++++ b/source/src/main.cpp
+@@ -519,11 +519,11 @@ void setresdata(char *s, enet_uint32 c)
+ COMMANDF(screenres, "ii", (int *w, int *h) { screenres(*w, *h); });
+
+ static int curgamma = 100;
+-VARFP(gamma, 30, 100, 300,
++VARNFP(gamma, vgamma, 30, 100, 300,
+ {
+- if(gamma == curgamma) return;
+- curgamma = gamma;
+- float f = gamma/100.0f;
++ if(vgamma == curgamma) return;
++ curgamma = vgamma;
++ float f = vgamma/100.0f;
+ if(SDL_SetGamma(f,f,f)==-1) conoutf("Could not set gamma: %s", SDL_GetError());
+ });
+
+diff --git a/source/src/platform.h b/source/src/platform.h
+index aece7e2..fd2eef1 100644
+--- a/source/src/platform.h
++++ b/source/src/platform.h
+@@ -2,14 +2,6 @@
+ #ifdef _FORTIFY_SOURCE
+ #undef _FORTIFY_SOURCE
+ #endif
+-
+- #define gamma __gamma
+-#endif
+-
+-#include <math.h>
+-
+-#ifdef __GNUC__
+- #undef gamma
+ #endif
+
+ #include <string.h>
+@@ -19,6 +11,7 @@
+ #include <ctype.h>
+ #include <time.h>
+ #include <limits.h>
++#include <math.h>
+ #ifdef __GNUC__
+ #include <new>
+ #include <signal.h>
+diff --git a/source/src/protos.h b/source/src/protos.h
+index 1c07fad..97b0ee0 100644
+--- a/source/src/protos.h
++++ b/source/src/protos.h
+@@ -1053,7 +1053,8 @@ struct servercommandline
+ {
+ demo_interm = true;
+ }
+- else if(ai > 0) maxdemos = ai; break;
++ else if(ai > 0) maxdemos = ai;
++ break;
+ }
+ case 'W': demopath = a; break;
+ case 'r': maprot = a; break;
+diff --git a/source/src/rendercubes.cpp b/source/src/rendercubes.cpp
+index 1940da8..2be7fb0 100644
+--- a/source/src/rendercubes.cpp
++++ b/source/src/rendercubes.cpp
+@@ -216,9 +216,9 @@ void render_flat(int wtex, int x, int y, int size, int h, sqr *l1, sqr *l4, sqr
+ else // continue strip
+ {
+ int lighterr = lighterror*2;
+- if((abs(ol1r-l3->r)<lighterr && abs(ol2r-l4->r)<lighterr // skip vertices if light values are close enough
+- && abs(ol1g-l3->g)<lighterr && abs(ol2g-l4->g)<lighterr
+- && abs(ol1b-l3->b)<lighterr && abs(ol2b-l4->b)<lighterr) || !wtex)
++ if((iabs(ol1r-l3->r)<lighterr && iabs(ol2r-l4->r)<lighterr // skip vertices if light values are close enough
++ && iabs(ol1g-l3->g)<lighterr && iabs(ol2g-l4->g)<lighterr
++ && iabs(ol1b-l3->b)<lighterr && iabs(ol2b-l4->b)<lighterr) || !wtex)
+ {
+ verts.setsize(verts.length()-2);
+ nquads--;
+@@ -375,7 +375,7 @@ void render_square(int wtex, float floor1, float floor2, float ceil1, float ceil
+ {
+ int lighterr = lighterror*2;
+ if((!hf && !ohf)
+- && ((abs(ol1r-l2->r)<lighterr && abs(ol1g-l2->g)<lighterr && abs(ol1b-l2->b)<lighterr) || !wtex)) // skip vertices if light values are close enough
++ && ((iabs(ol1r-l2->r)<lighterr && iabs(ol1g-l2->g)<lighterr && iabs(ol1b-l2->b)<lighterr) || !wtex)) // skip vertices if light values are close enough
+ {
+ verts.setsize(verts.length()-2);
+ nquads--;
+diff --git a/source/src/rendertext.cpp b/source/src/rendertext.cpp
+index 0ed23af..b55da4f 100644
+--- a/source/src/rendertext.cpp
++++ b/source/src/rendertext.cpp
+@@ -330,7 +330,7 @@ static void text_color(char c, char *stack, int size, int &sp, bvec color, int a
+ if(c=='r') c = stack[(sp > 0) ? --sp : sp]; // restore color
+ else if(c == 'b') { if(allowblinkingtext && !ignoreblinkingbit) stack[sp] *= -1; } // blinking text - only if allowed
+ else stack[sp] = c;
+- switch(abs(stack[sp]))
++ switch(iabs(stack[sp]))
+ {
+ case '0': color = bvec( 2, 255, 128 ); break; // green: player talk
+ case '1': color = bvec( 96, 160, 255 ); break; // blue: team chat
+@@ -380,7 +380,7 @@ static void text_color(char c, char *stack, int size, int &sp, bvec color, int a
+ //default: color = bvec( 255, 255, 255 ); break;
+ }
+ int b = (int) (sinf(lastmillis / 200.0f) * 115.0f);
+- b = stack[sp] > 0 ? 100 : min(abs(b), 100);
++ b = stack[sp] > 0 ? 100 : min(iabs(b), 100);
+ glColor4ub(color.x, color.y, color.z, (a * b) / 100);
+ }
+ }
+diff --git a/source/src/tools.h b/source/src/tools.h
+index 0aeacff..9eb5a38 100644
+--- a/source/src/tools.h
++++ b/source/src/tools.h
+@@ -54,8 +54,7 @@ static inline T min(T a, T b)
+ {
+ return a < b ? a : b;
+ }
+-
+-static inline float round(float x) { return floor(x + 0.5f); }
++inline int iabs(int n) { return labs(n); }
+
+ #define clamp(a,b,c) (max(b, min(a, c)))
+ #define rnd(x) ((int)(randomMT()&0xFFFFFF)%(x))
+diff --git a/source/src/world.cpp b/source/src/world.cpp
+index 6a1c7bb..99a70eb 100644
+--- a/source/src/world.cpp
++++ b/source/src/world.cpp
+@@ -79,9 +79,9 @@ void remip(const block &b, int level)
+ || o[i]->ceil!=o[3]->ceil
+ || o[i]->ftex!=o[3]->ftex
+ || o[i]->ctex!=o[3]->ctex
+- || abs(o[i+1]->r-o[0]->r)>lighterr // perfect mip even if light is not exactly equal
+- || abs(o[i+1]->g-o[0]->g)>lighterr
+- || abs(o[i+1]->b-o[0]->b)>lighterr
++ || iabs(o[i+1]->r-o[0]->r)>lighterr // perfect mip even if light is not exactly equal
++ || iabs(o[i+1]->g-o[0]->g)>lighterr
++ || iabs(o[i+1]->b-o[0]->b)>lighterr
+ || o[i]->utex!=o[3]->utex
+ || o[i]->wtex!=o[3]->wtex) goto c;
+ }
+diff --git a/source/src/worldrender.cpp b/source/src/worldrender.cpp
+index 8fd3104..45aa606 100644
+--- a/source/src/worldrender.cpp
++++ b/source/src/worldrender.cpp
+@@ -297,10 +297,10 @@ void distlod(int &low, int &high, int angle, float widef)
+ void render_world(float vx, float vy, float vh, float changelod, int yaw, int pitch, float fov, float fovy, int w, int h)
+ {
+ loopi(LARGEST_FACTOR) stats[i] = 0;
+- min_lod = minimap || (player1->isspectating() && player1->spectatemode == SM_OVERVIEW) ? MAX_LOD : MIN_LOD+abs(pitch)/12;
++ min_lod = minimap || (player1->isspectating() && player1->spectatemode == SM_OVERVIEW) ? MAX_LOD : MIN_LOD+iabs(pitch)/12;
+ yaw = 360-yaw;
+ float widef = fov/75.0f;
+- int cdist = abs(yaw%90-45);
++ int cdist = iabs(yaw%90-45);
+ if(cdist<7) // hack to avoid popup at high fovs at 45 yaw
+ {
+ min_lod = max(min_lod, (int)(MIN_LOD+(10-cdist)/1.0f*widef)); // less if lod worked better
diff --git a/games/assaultcube/assaultcube.SlackBuild b/games/assaultcube/assaultcube.SlackBuild
index 0f5f023de6..21563e48f1 100644
--- a/games/assaultcube/assaultcube.SlackBuild
+++ b/games/assaultcube/assaultcube.SlackBuild
@@ -67,6 +67,8 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+patch -p1 < $CWD/assaultcube-gcc6.patch
+
# Use custom SLKCFLAGS, remove end-of-line encoding and remove precompiled binaries.
patch -p1 < $CWD/Makefile.patch
sed -i 's/\r//g' changelog.txt
diff --git a/games/berusky2/berusky2.SlackBuild b/games/berusky2/berusky2.SlackBuild
index c6021d1496..eee4fade35 100644
--- a/games/berusky2/berusky2.SlackBuild
+++ b/games/berusky2/berusky2.SlackBuild
@@ -23,7 +23,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=berusky2
-VERSION=${VERSION:-0.10}
+VERSION=${VERSION:-20170630_974e2e5}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -60,7 +60,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+tar xvf $CWD/$PRGNAM-$VERSION.tar.?z*
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
@@ -69,6 +69,8 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+autoreconf -fi
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
diff --git a/games/berusky2/berusky2.info b/games/berusky2/berusky2.info
index 58aeeb1346..7db48900d1 100644
--- a/games/berusky2/berusky2.info
+++ b/games/berusky2/berusky2.info
@@ -1,8 +1,8 @@
PRGNAM="berusky2"
-VERSION="0.10"
+VERSION="20170630_974e2e5"
HOMEPAGE="http://anakreon.cz/?q=node/2"
-DOWNLOAD="http://downloads.sourceforge.net/project/berusky2/berusky2-0.10/berusky2-0.10.tar.gz"
-MD5SUM="3c2d5217f7a61a6fbc13d689b88ec4e4"
+DOWNLOAD="http://ponce.cc/slackware/sources/repo/berusky2-20170630_974e2e5.tar.xz"
+MD5SUM="f4a1306eeff8a38591898cafa6d1934d"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="freealut berusky2-data"
diff --git a/games/blobwars/blobwars.SlackBuild b/games/blobwars/blobwars.SlackBuild
index 1808f6e6e5..14df961364 100644
--- a/games/blobwars/blobwars.SlackBuild
+++ b/games/blobwars/blobwars.SlackBuild
@@ -63,7 +63,7 @@ sed -i "s_blobwars/man_blobwars-$VERSION/man_" data/titleWidgets
#doc dir fixed for slackware and help display bug.
#note. the trailing / on the first make command is intentional.
-make USEPAK=1 CFLAGS="$SLKCFLAGS" DOCDIR="/usr/doc/$PRGNAM-$VERSION/"
+make USEPAK=1 CFLAGS="$SLKCFLAGS -Wno-error=format-truncation=" DOCDIR="/usr/doc/$PRGNAM-$VERSION/"
make install USEPAK=1 DESTDIR=$PKG DOCDIR="/usr/doc/$PRGNAM-$VERSION"
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
diff --git a/games/bloodfrontier/bloodfrontier.SlackBuild b/games/bloodfrontier/bloodfrontier.SlackBuild
index 0f85e8fca2..2470383f75 100644
--- a/games/bloodfrontier/bloodfrontier.SlackBuild
+++ b/games/bloodfrontier/bloodfrontier.SlackBuild
@@ -64,7 +64,7 @@ sed -i "s|X11R6/lib|lib${LIBDIRSUFFIX} -lX11|" src/Makefile
make -C src \
CFLAGS="$SLKCFLAGS" \
- CXXFLAGS="$SLKCFLAGS" \
+ CXXFLAGS="$SLKCFLAGS -Wno-narrowing" \
LDFLAGS="$SLKLDFLAGS"
mkdir -p $PKG/usr/bin $PKG/usr/lib${LIBDIRSUFFIX}/bloodfrontier/bin
diff --git a/games/brainparty/brainparty.SlackBuild b/games/brainparty/brainparty.SlackBuild
index 71770366d2..8536a94331 100644
--- a/games/brainparty/brainparty.SlackBuild
+++ b/games/brainparty/brainparty.SlackBuild
@@ -51,6 +51,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+# Thanks debian
+patch -p1 < $CWD/patches/gcc-6.patch
+
# Save directory patch. Data directory patch. Use custom SLKCFLAGS.
patch -p1 < $CWD/patches/brainparty-0.5-savegame.patch
patch -p1 < $CWD/patches/brainparty-0.5-data-directory.patch
diff --git a/games/brainparty/patches/gcc-6.patch b/games/brainparty/patches/gcc-6.patch
new file mode 100644
index 0000000000..67dfadd540
--- /dev/null
+++ b/games/brainparty/patches/gcc-6.patch
@@ -0,0 +1,47 @@
+Description: Fix FTBFS on GCC 6 by removing use of hash_set class
+Author: James Cowgill <jcowgill@debian.org>
+Bug-Debian: https://bugs.debian.org/811885
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- a/WordList.h
++++ b/WordList.h
+@@ -18,24 +18,11 @@
+ #ifndef __WORDLIST_H__
+ #define __WORDLIST_H__
+
++#include <string>
+ #include <vector>
+-#include <ext/hash_set>
++#include <unordered_set>
+
+-using namespace std;
+-using namespace __gnu_cxx;
+-
+-namespace __gnu_cxx
+-{
+- template<> struct hash< std::string >
+- {
+- size_t operator()( const std::string& x ) const
+- {
+- return hash< const char* >()( x.c_str() );
+- }
+- };
+-}
+-
+-typedef hash_set<string, hash<string> > string_hash_set;
++typedef std::unordered_set<std::string> string_hash_set;
+
+ class WordList {
+ private:
+--- a/Makefile
++++ b/Makefile
+@@ -17,6 +17,9 @@ else
+ OSXCOMPAT =
+ endif
+
++# enable c++11
++CXXFLAGS += -std=c++11
++
+ # object files have corresponding source files
+ CXX = g++
+
diff --git a/games/chroma/chroma.SlackBuild b/games/chroma/chroma.SlackBuild
index f46788b147..420528367e 100644
--- a/games/chroma/chroma.SlackBuild
+++ b/games/chroma/chroma.SlackBuild
@@ -11,7 +11,7 @@ TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -22,8 +22,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -46,10 +46,13 @@ tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+# Removed some inline declarations (incompatible with newer versions of gcc)
+patch -p1 < $CWD/gcc.patch
CFLAGS="$SLKCFLAGS" \
./configure \
@@ -61,7 +64,7 @@ CFLAGS="$SLKCFLAGS" \
make
make install DESTDIR=$PKG
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
mkdir -p $PKG/usr/share/{applications,pixmaps}
diff --git a/games/chroma/gcc.patch b/games/chroma/gcc.patch
new file mode 100644
index 0000000000..22ef1b2ea7
--- /dev/null
+++ b/games/chroma/gcc.patch
@@ -0,0 +1,30 @@
+diff -Naur chroma-1.15.orig/sdlshadowdisplay.c chroma-1.15/sdlshadowdisplay.c
+--- chroma-1.15.orig/sdlshadowdisplay.c 2013-04-20 08:07:00.000000000 +0200
++++ chroma-1.15/sdlshadowdisplay.c 2017-08-02 12:07:56.327010753 +0200
+@@ -88,7 +88,7 @@
+ void displayshadowed_level(struct level* plevel);
+ void displayshadowed_movers(struct level* plevel, int redraw);
+
+-inline void displayshadowed_piece(struct level* plevel, int p, int x, int y, int d)
++void displayshadowed_piece(struct level* plevel, int p, int x, int y, int d)
+ {
+ SDL_Surface *pimage;
+
+@@ -255,7 +255,7 @@
+ }
+ }
+
+-inline void displayshadowed_pieceshadow(struct level* plevel, int p, int x, int y, int d)
++void displayshadowed_pieceshadow(struct level* plevel, int p, int x, int y, int d)
+ {
+ SDL_Surface *pimage;
+
+@@ -310,7 +310,7 @@
+ SDL_BlitSurface(pimage, &srect, screen_surface, &drect);
+ }
+
+-inline void displayshadowed_piecebase(struct level* plevel, int x, int y)
++void displayshadowed_piecebase(struct level* plevel, int x, int y)
+ {
+ int p;
+ SDL_Surface *pimage;
diff --git a/games/desmume/desmume.SlackBuild b/games/desmume/desmume.SlackBuild
index 4e5fec368b..c410fec43c 100644
--- a/games/desmume/desmume.SlackBuild
+++ b/games/desmume/desmume.SlackBuild
@@ -23,13 +23,13 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=desmume
-VERSION=${VERSION:-0.9.11}
+VERSION=${VERSION:-20190129_3e73a55}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -40,8 +40,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -60,7 +60,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+tar xvf $CWD/$PRGNAM-$VERSION.tar.?z
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
@@ -69,16 +69,10 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-# Fix end-of-line encoding.
-for i in AUTHORS; do
- cp -a $i ${i}.new
- sed -i 's/\r//' ${i}.new
- touch -r $i ${i}.new
- mv ${i}.new $i
-done
+# https://github.com/TASVideos/desmume
-# Fix missing header.
-patch -p1 < $CWD/osmesa-header-fix.patch
+cd $PRGNAM/src/frontend/posix
+./autogen.sh
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
@@ -88,7 +82,6 @@ CXXFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--enable-osmesa \
--enable-hud \
- --enable-gdb-stub \
--enable-wifi \
--enable-openal \
--enable-glade \
@@ -99,6 +92,8 @@ CXXFLAGS="$SLKCFLAGS" \
make
make install DESTDIR=$PKG
+cd ../../..
+
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
@@ -106,7 +101,7 @@ find $PKG/usr/man -type f -exec gzip -9 {} \;
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
- AUTHORS ChangeLog COPYING INSTALL README README.LIN ds*.txt \
+ AUTHORS ChangeLog COPYING README README.LIN doc/ds*.txt \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
diff --git a/games/desmume/desmume.info b/games/desmume/desmume.info
index b06dd8381e..3cbebdfbd0 100644
--- a/games/desmume/desmume.info
+++ b/games/desmume/desmume.info
@@ -1,8 +1,8 @@
PRGNAM="desmume"
-VERSION="0.9.11"
+VERSION="20190129_3e73a55"
HOMEPAGE="http://desmume.org/"
-DOWNLOAD="http://downloads.sourceforge.net/desmume/desmume-0.9.11.tar.gz"
-MD5SUM="269b5d4ddc5715720469a9d0efc53044"
+DOWNLOAD="http://ponce.cc/slackware/sources/repo/desmume-20190129_3e73a55.tar.xz"
+MD5SUM="d198b000834ed0e13a73051caa91ec7c"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="OpenAL agg gtkglext soundtouch zziplib"
diff --git a/games/desmume/osmesa-header-fix.patch b/games/desmume/osmesa-header-fix.patch
deleted file mode 100644
index 7ba5bd070f..0000000000
--- a/games/desmume/osmesa-header-fix.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-diff -Naur desmume-0.9.11.orig/src/gtk/osmesa_3Demu.cpp desmume-0.9.11/src/gtk/osmesa_3Demu.cpp
---- desmume-0.9.11.orig/src/gtk/osmesa_3Demu.cpp 2015-02-14 15:05:26.000000000 +0000
-+++ desmume-0.9.11/src/gtk/osmesa_3Demu.cpp 2015-05-09 02:00:11.279367208 +0000
-@@ -20,6 +20,7 @@
-
- #ifdef HAVE_LIBOSMESA
- #include <stdlib.h>
-+#include <stdio.h>
- #include <GL/osmesa.h>
- #include "../OGLRender.h"
- #include "osmesa_3Demu.h"
diff --git a/games/dolphin-emu/dolphin-emu.SlackBuild b/games/dolphin-emu/dolphin-emu.SlackBuild
index a254bf93aa..8d72963747 100644
--- a/games/dolphin-emu/dolphin-emu.SlackBuild
+++ b/games/dolphin-emu/dolphin-emu.SlackBuild
@@ -23,8 +23,8 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=dolphin-emu
-VERSION=${VERSION:-5.0}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-20181020_9c9d598}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
diff --git a/games/dolphin-emu/dolphin-emu.info b/games/dolphin-emu/dolphin-emu.info
index 657b8e5cf0..43c7412c5e 100644
--- a/games/dolphin-emu/dolphin-emu.info
+++ b/games/dolphin-emu/dolphin-emu.info
@@ -1,10 +1,10 @@
PRGNAM="dolphin-emu"
-VERSION="5.0"
+VERSION="20181020_9c9d598"
HOMEPAGE="https://dolphin-emu.org/"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://github.com/dolphin-emu/dolphin/archive/5.0/dolphin-5.0.tar.gz"
-MD5SUM_x86_64="ed94272956adbec690808f6e4d8ff065"
+DOWNLOAD_x86_64="http://ponce.cc/slackware/sources/repo/dolphin-20181020_9c9d598.tar.xz"
+MD5SUM_x86_64="1d8b06556e7622fd404049fbb90849db"
REQUIRES=""
MAINTAINER="Larry Hajali"
EMAIL="larryhaja[at]gmail[dot]com"
diff --git a/games/etlegacy-from-source/README b/games/etlegacy-from-source/README
new file mode 100644
index 0000000000..4d6185212f
--- /dev/null
+++ b/games/etlegacy-from-source/README
@@ -0,0 +1,25 @@
+Wolfenstein Enemy Territory: Legacy is a project that aims to create
+a fully compatible client and server for the popular online FPS game
+Wolfenstein: Enemy Territory.
+
+It's based on its source code released under the GPLv3 license.
+
+The main goal of this project is to fix bugs, remove old dependencies
+and make it playable on all major operating systems while still
+remaining compatible with the ET 2.60b version and as many of its mods
+as possible.
+
+This script builds the server with omni-bot support (x86 32bit only).
+(http://www.omni-bot.com/)
+
+To play you *need* also the data files from the original game
+(etlegacy-data).
+
+* WARNING *
+
+To have a client/server compatible with the existing ones (to play
+on the existing online servers), build it on/for a 32bit platform.
+
+This version of the game is built from source: the resulting package
+conflicts with the etlegacy SlackBuild you can find on SBo so install
+only one of the two.
diff --git a/office/juffed/doinst.sh b/games/etlegacy-from-source/doinst.sh
index 5fb28930db..5fb28930db 100644
--- a/office/juffed/doinst.sh
+++ b/games/etlegacy-from-source/doinst.sh
diff --git a/games/etlegacy-from-source/etlegacy-from-source.SlackBuild b/games/etlegacy-from-source/etlegacy-from-source.SlackBuild
new file mode 100644
index 0000000000..ef7b9625c1
--- /dev/null
+++ b/games/etlegacy-from-source/etlegacy-from-source.SlackBuild
@@ -0,0 +1,186 @@
+#!/bin/sh
+
+# Slackware build script for etlegacy-from-source
+# Copyright 2013-2016 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
+# 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.
+
+PRGNAM=etlegacy-from-source
+SRCNAM=etlegacy
+VERSION=${VERSION:-20170622_ae5f9ef}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i*86) ARCH=i686 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+CWD=$(pwd)
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+w_omnibot=1
+if [ "$ARCH" = "i386" ]; then
+ SLKCFLAGS="-O2 -march=i386 -mtune=i686"
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=core2"
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ w_omnibot=0
+else
+ SLKCFLAGS="-O2"
+ w_omnibot=0
+fi
+
+set -e # Exit on most errors
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z*
+cd $SRCNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+# Fix location of the omnibot.zip, man install path
+# and leave the relative path to binaries off
+sed -i "s|share/man|man|" CMakeLists.txt
+sed -i "s|^\.\/etl|etl|" misc/etl_bot.sh misc/etlded_bot.sh
+
+mkdir -p build/legacy
+cd build
+ ln -s $CWD/omnibot-linux-latest.tar.gz legacy/
+ ln -s $CWD/wolfadmin.tar.gz legacy/
+ # We have to use bundled lua and sdl
+ cmake \
+ -DCMAKE_C_FLAGS_RELEASE:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS_RELEASE:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX="/usr" \
+ -DINSTALL_DEFAULT_BINDIR="bin" \
+ -DINSTALL_DEFAULT_MODDIR="share/$SRCNAM" \
+ -DINSTALL_DEFAULT_BASEDIR="/usr/share/$SRCNAM" \
+ -DBUILD_CLIENT=1 \
+ -DBUILD_SERVER=1 \
+ -DBUILD_MOD=1 \
+ -DBUILD_MOD_PK3=1 \
+ -DBUILD_PAK3_PK3=1 \
+ -DFEATURE_CURL=1 \
+ -DFEATURE_OGG_VORBIS=1 \
+ -DFEATURE_THEORA=1 \
+ -DFEATURE_OPENAL=1 \
+ -DFEATURE_FREETYPE=1 \
+ -DFEATURE_TRACKER=0 \
+ -DFEATURE_GETTEXT=1 \
+ -DFEATURE_JANSSON=0 \
+ -DFEATURE_DBMS=1 \
+ -DFEATURE_LUA=1 \
+ -DFEATURE_MULTIVIEW=1 \
+ -DFEATURE_EDV=1 \
+ -DFEATURE_ANTICHEAT=1 \
+ -DFEATURE_RATING=1 \
+ -DFEATURE_AUTOUPDATE=0 \
+ -DFEATURE_LUASQL=1 \
+ -DFEATURE_OMNIBOT=$w_omnibot \
+ -DINSTALL_EXTRA=1 \
+ -DINSTALL_OMNIBOT=$w_omnibot \
+ -DINSTALL_GEOIP=1 \
+ -DINSTALL_WOLFADMIN=1 \
+ -DCROSS_COMPILE32=0 \
+ -DFEATURE_OGG_VORBIS=1 \
+ -DFEATURE_FREETYPE=1 \
+ -DFEATURE_AUTOUPDATE=0 \
+ -DFEATURE_IPV6=0 \
+ -DFEATURE_GETTEXT=1 \
+ -DFEATURE_RENDERER2=1 \
+ -DFEATURE_RENDERER_GLES=0 \
+ -DRENDERER_DYNAMIC=1 \
+ -DBUNDLED_LIBS=1 \
+ -DBUNDLED_SDL=1 \
+ -DBUNDLED_LUA=1 \
+ -DBUNDLED_OGG_VORBIS=1 \
+ -DBUNDLED_THEORA=1 \
+ -DBUNDLED_SQLITE3=1 \
+ -DBUNDLED_JANSSON=0 \
+ -DBUNDLED_ZLIB=1 \
+ -DBUNDLED_MINIZIP=1 \
+ -DBUNDLED_CURL=1 \
+ -DBUNDLED_OPENAL=1 \
+ -DBUNDLED_JPEG=1 \
+ -DBUNDLED_GLEW=0 \
+ -DBUNDLED_FREETYPE=1 \
+ -DCMAKE_BUILD_TYPE=Release ..
+
+ # JIC, sanitize the just-uncompressed stuff
+ chown -R root:root legacy
+ find -L legacy \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ make
+ make install DESTDIR=$PKG
+cd ..
+
+# Move man pages in the proper place
+mv $PKG/usr/share/man $PKG/usr/man
+
+# Install a script to open urls, and move two scripts to launch the client and
+# the dedicated server with omnibot support in the binaries folder
+install -m 0755 $CWD/files/openurl.sh $PKG/usr/bin/openurl.sh
+mv $PKG/usr/share/$SRCNAM/etl*.sh $PKG/usr/bin/
+chmod 755 $PKG/usr/bin/etl*.sh
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+
+# Install an icon, a desktop file and man pages
+install -m 0644 -D $CWD/files/$SRCNAM.svg \
+ $PKG/usr/share/pixmaps/$SRCNAM.svg
+install -m 0644 -D $CWD/files/$SRCNAM.desktop \
+ $PKG/usr/share/applications/$SRCNAM.desktop
+mkdir -p $PKG/usr/man/man6
+gzip -9 -c docs/linux/man/man6/etl.6 > $PKG/usr/man/man6/etl.6.gz
+gzip -9 -c docs/linux/man/man6/etlded.6 > $PKG/usr/man/man6/etlded.6.gz
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+mv \
+ $PKG/usr/share/$SRCNAM/*.txt \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cp README* $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/etlegacy-from-source/etlegacy-from-source.info b/games/etlegacy-from-source/etlegacy-from-source.info
new file mode 100644
index 0000000000..34a4acd1e3
--- /dev/null
+++ b/games/etlegacy-from-source/etlegacy-from-source.info
@@ -0,0 +1,16 @@
+PRGNAM="etlegacy"
+VERSION="20170622_ae5f9ef"
+HOMEPAGE="http://www.etlegacy.com"
+DOWNLOAD="http://ponce.cc/slackware/sources/repo/etlegacy-20170622_ae5f9ef.tar.xz \
+ http://ponce.cc/slackware/sources/repo/omnibot-linux-latest.tar.gz \
+ http://ponce.cc/slackware/sources/repo/wolfadmin.tar.gz \
+ http://ponce.cc/slackware/sources/repo/GeoIP.dat.gz"
+MD5SUM="3932c07ac68fac86d2d15679029028a3 \
+ 714a5c98406e455377e6cea1fdfdd16b \
+ a322a5b8bf478643785362f35143847c \
+ 5ac81d5de50c557be104e4c43f851c36"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="%README% etlegacy-data zenity"
+MAINTAINER="Matteo Bernardini"
+EMAIL="ponce@slackbuilds.org"
diff --git a/games/etlegacy-from-source/files/etlegacy.desktop b/games/etlegacy-from-source/files/etlegacy.desktop
new file mode 100644
index 0000000000..2618c0c13e
--- /dev/null
+++ b/games/etlegacy-from-source/files/etlegacy.desktop
@@ -0,0 +1,9 @@
+[Desktop Entry]
+Name=ETLegacy
+Comment=ET: Legacy (Collaborative online FPS)
+Exec=etl
+Icon=etl
+Terminal=false
+Type=Application
+Categories=Game;
+StartupNotify=false
diff --git a/games/etlegacy-from-source/files/etlegacy.svg b/games/etlegacy-from-source/files/etlegacy.svg
new file mode 100644
index 0000000000..51754d1889
--- /dev/null
+++ b/games/etlegacy-from-source/files/etlegacy.svg
@@ -0,0 +1,100 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ version="1.1"
+ width="273.6875"
+ height="173.40625"
+ viewBox="0 0 218.95 138.72526"
+ id="svg2">
+ <metadata
+ id="metadata16">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs14">
+ <linearGradient
+ id="linearGradient5430">
+ <stop
+ id="stop5432"
+ style="stop-color:#df3323;stop-opacity:1"
+ offset="0" />
+ <stop
+ id="stop5434"
+ style="stop-color:#3d0000;stop-opacity:1"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ x1="134.5764"
+ y1="2.2628517"
+ x2="134.5764"
+ y2="150.06567"
+ id="linearGradient5438"
+ xlink:href="#linearGradient5430"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.80000151,0,0,0.80000151,1.4747917,2.0250038)"
+ spreadMethod="pad" />
+ </defs>
+ <path
+ d="m 141.47506,0 -2.025,0.025 -2.20001,0.025 -0.025,0 -0.05,0 c -0.56094,0.029611 -1.70494,0.1655976 -3.625,0.4000007 -1.92006,0.2344032 -4.43694,0.566477 -7.10002,1.0000019 -2.76457,0.4500476 -5.64229,1.0096873 -8.15001,1.6750032 -2.39466,0.6353177 -4.73741,1.1624015 -6.65002,3.0750058 -1.11785,1.1178567 -1.76614,2.3933294 -2.175,3.6250069 C 109.06614,8.5933348 108.41785,7.3178683 107.3,6.2000117 105.38739,4.2874074 103.04464,3.7603236 100.64998,3.1250059 98.142257,2.45969 95.264537,1.9000503 92.499964,1.4500027 89.859095,1.0200941 87.367626,0.683809 85.474951,0.4500008 83.582275,0.2161926 82.445337,0.0816673 81.924944,0.0500001 c -0.002,2.358e-4 -0.0219,2.018e-4 -0.025,0 -0.05436,-0.00354 -0.104368,0.00167 -0.15,0 -0.09126,-0.00334 -0.182568,0.00226 -0.300001,0 -0.234863,-0.00451 -0.536171,-0.022255 -0.825001,-0.025 -0.577661,-0.00549 -1.150002,0 -1.150002,0 l -2.000004,0 0,2.0000038 0,13.0000251 -72.650138,0 -4.82500917679,0 0,8.000015 L 3.3997953,26.45005 42.39987,65.450124 l 0.600001,0.575001 0.825001,0 35.650068,0 0,58.850115 0,4.85001 3.425006,-3.45001 13.575026,-13.62503 0,21.22504 0,4.85001 3.425005,-3.45 14.575033,-14.62503 0,4.22501 0,4.82501 3.42501,-3.40001 21.00004,-21.00004 0.575,-0.60001 0,-0.825 0,-37.850065 35.65006,0 0.825,0 0.6,-0.575001 39.00008,-39.000074 3.4,-3.425006 0,-8.000015 -4.82501,0 -72.65013,0 0,-13.0000251 z m -59.875116,4.0500076 0.075,0 c 0.01691,0.00103 1.091842,0.132738 1.725003,0.2000004 z m 55.700106,0 0.075,0 0.1,0 0,0.2250004 -2,0 c 0.72505,-0.076119 1.78584,-0.2215776 1.825,-0.2250004 z M 83.824948,4.3000081 c 0.505641,0.055705 0.521361,0.044253 1.175002,0.1250002 1.655203,0.2044728 3.853399,0.5170549 6.125012,0.8750017 C 88.120084,4.8294493 85.543799,4.4927178 83.824948,4.3000081 z m 50.925102,0.05 c -1.61252,0.1827352 -3.91957,0.4916419 -6.57501,0.9000017 2.14817,-0.332921 4.26472,-0.6314689 5.85001,-0.8250016 0.40573,-0.049532 0.36769,-0.034762 0.725,-0.075 z m -34.950073,2.675005 c 1.462323,0.389813 2.501633,0.7939944 3.350013,1.2250023 -0.15979,-0.072953 -0.27743,-0.1411677 -0.475,-0.2250004 -0.73852,-0.313363 -1.74502,-0.6878195 -2.875013,-1.0000019 z m 19.350043,0 c -1.12999,0.3121818 -2.13649,0.686639 -2.87501,1.0000019 -0.19757,0.083833 -0.31521,0.1520469 -0.475,0.2250004 0.84838,-0.4310079 1.88769,-0.8351893 3.35001,-1.2250023 z m -33.675069,1.550003 c 1.673843,0.2029118 3.290574,0.3746285 5.750011,0.7750014 2.615437,0.4257684 5.275002,0.9244885 7.350015,1.4750025 0.97355,0.25829 1.877973,0.600456 2.525003,0.875002 0.2086,0.08851 0.35117,0.155736 0.50001,0.225 0.0575,0.137843 0.13205,0.275764 0.2,0.475002 0.0976,0.286085 0.1654,0.634726 0.25,0.975001 -0.97037,0.241444 -2.243943,0.668929 -3.400013,1.825004 -1.3422,1.342202 -1.77999,2.924928 -1.975005,3.900007 -0.207144,1.03545 -0.201016,1.881533 -0.2,1.925004 2.4e-5,0.0011 0,0.05 0,0.05 l 0,16.950032 -65.325124,0 -3.000005,-3.000006 27.325051,0 0.825002,0 0.600001,-0.575001 4.000008,-4.000007 3.400006,-3.425007 -4.825009,0 -39.325074,0 -4.000008,-4.000007 58.47511,0 -5.57501,5.57501 -3.400007,3.425007 4.82501,0 13.000024,0 2.000004,0 0,-2.000004 z m 48.000099,0 0,21.4500409 0,2.000004 2,0 13.00002,0 4.82501,0 -3.4,-3.425007 -5.57501,-5.57501 58.47511,0 -4.00001,4.000007 -39.32508,0 -4.825,0 3.4,3.425007 4.00001,4.000007 0.6,0.575001 0.825,0 27.32505,0 -3,3.000006 -65.32513,0 0,-16.950032 c 0,0 -2e-5,-0.04888 0,-0.05 0.001,-0.04347 0.007,-0.889474 -0.2,-1.925004 -0.19501,-0.975067 -0.63279,-2.557801 -1.975,-3.900007 -1.15607,-1.156066 -2.42964,-1.583559 -3.40001,-1.825004 0.0846,-0.340275 0.15244,-0.688916 0.25,-0.975001 0.0679,-0.199238 0.14251,-0.337159 0.20001,-0.475002 0.14882,-0.06926 0.2914,-0.136491 0.5,-0.225 0.64703,-0.274545 1.55145,-0.616712 2.525,-0.875002 2.07501,-0.550514 4.73458,-1.0492341 7.35001,-1.4750025 2.45944,-0.4003729 4.07617,-0.5720896 5.75002,-0.7750014 z M 105.44999,10.75002 c 0.36286,0.911786 0.61428,1.899778 0.775,3.025006 0.11508,0.806639 0.13951,1.402629 0.2,1.950004 l 0.025,1.300002 -1.975,0 1.725,-0.025 0.1,-1.875003 c 0,0 0.031,-0.608393 -0.075,-1.350003 -0.13725,-0.96083 -0.38475,-1.897196 -0.65,-2.675005 -0.0439,-0.128608 -0.0802,-0.229896 -0.125,-0.350001 z m 8.05002,0 c -0.0448,0.120105 -0.0811,0.221393 -0.125,0.350001 -0.26525,0.777809 -0.51275,1.714175 -0.65,2.675005 0.16075,-1.125247 0.41213,-2.113214 0.775,-3.025006 z m -0.875,4.125008 -0.1,1.575003 0,-0.725001 c 0.0264,-0.239123 0.0753,-0.570767 0.1,-0.850002 z m -0.125,2.125004 1.975,0.025 -1,0 -0.975,0 z m -8.17502,0.025 c -0.041,0.0024 -0.4443,0.04387 -0.975,0.150001 -0.36337,0.07267 -0.66015,0.160047 -0.9,0.25 -0.0624,0.02341 -0.11939,0.02704 -0.175,0.05 0.33272,-0.161248 0.70162,-0.275325 1.075,-0.35 0.48654,-0.09731 0.975,-0.100001 0.975,-0.100001 z m 10.27502,0 c 0.17915,0.0019 0.4303,-0.01394 1,0.100001 0.37338,0.07468 0.74228,0.188751 1.075,0.35 -0.0556,-0.02295 -0.11256,-0.02659 -0.175,-0.05 -0.23984,-0.08995 -0.53662,-0.177325 -0.9,-0.25 -0.54393,-0.108764 -0.97882,-0.148809 -1,-0.150001 z m -13.67503,1.800004 c -0.0229,0.0556 -0.0266,0.112574 -0.05,0.175 -0.0899,0.239816 -0.17732,0.536711 -0.25,0.900002 -0.10298,0.515223 -0.12122,0.888151 -0.125,0.950002 2.7e-4,-0.09844 -0.0292,-0.429085 0.075,-0.950002 0.0747,-0.373381 0.18875,-0.742282 0.35,-1.075002 z m 17.10004,0 c 0.16124,0.332717 0.27532,0.701615 0.35,1.075002 0.1042,0.520844 0.0747,0.851573 0.075,0.950002 -0.004,-0.06189 -0.0219,-0.434562 -0.125,-0.950002 -0.0727,-0.36332 -0.16004,-0.660121 -0.25,-0.900002 -0.0234,-0.06244 -0.027,-0.119368 -0.05,-0.175 z m -13.55003,10.200019 c 0.0155,-0.0012 0.1,0 0.1,0 l 1.9,0 1.97501,0 0.025,0 2,0 0.025,0 2.97501,0 0.9,0 c 0,0 0.0845,-0.0012 0.1,0 l 0,0.1 0,8.900017 -10.00002,0 0,-8.900017 z m -23.000047,-7.150014 0,6.150012 -6.150011,0 5.57501,-5.57501 z m 56.000107,0 0.575,0.575002 5.57501,5.57501 -6.15001,0 z m -98.325187,24.150046 57.325109,0 0,38.000072 0,4.825009 3.425005,-3.400007 4.000013,-4.000007 0.575,-0.600001 0,-0.825002 0,-34.000064 10.00002,0 0,38.000072 0,4.825009 3.42501,-3.400007 4,-4.000007 0.575,-0.600001 0,-0.825002 0,-34.000064 57.32511,0 -4,4.000008 -42.32508,0 -2.00001,0 0,2.000003 0,41.325078 -9.00002,9.000014 0,-12.32502 0,-4.825009 -3.425,3.400006 -4.00001,4.000008 -0.575,0.600001 0,0.825002 0,7.325012 -10.00002,10.00002 0,-21.17504 0,-4.825009 -3.42501,3.400007 -13.575025,13.600022 0,-50.325092 0,-2.000003 -2.000004,0 -42.32508,0 z"
+ id="path3892"
+ style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:5;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" />
+ <path
+ d="m 80.899942,3.4500065 0,13.5750255 c 0.0057,0.747658 -0.677344,1.430652 -1.425003,1.425003 l -74.4251406,0 36.1500686,36.150068 40.275076,0 c 0.747658,-0.0057 1.430651,0.677345 1.425003,1.425003 l 0,57.425104 14.575031,-14.625023 c 0.39153,-0.399953 1.03245,-0.531513 1.54988,-0.318145 0.51742,0.213376 0.87931,0.758473 0.87512,1.318146 l 0,22.625042 15.575033,-15.62503 c 0.39153,-0.39995 1.03246,-0.53151 1.54988,-0.31814 0.51743,0.21337 0.87932,0.75847 0.87512,1.31814 l 0,5.62501 18.15004,-18.15003 0,-39.275074 c -0.006,-0.747658 0.67734,-1.430652 1.425,-1.425003 l 40.27508,0 36.15007,-36.150068 -74.42514,0 c -0.74766,0.0057 -1.43066,-0.677345 -1.42501,-1.425003 l 0,-13.5500255 -0.75,0 0,-0.025 c -0.12117,0.00807 -1.49587,0.1472265 -3.35,0.3750007 -1.88147,0.2311324 -4.34424,0.5758045 -6.95002,1.0000019 -2.69691,0.4390327 -5.46733,0.9811276 -7.80001,1.600003 -2.41264,0.6400874 -3.98999,1.0649805 -5.12501,2.2000042 -1.33333,1.3333278 -1.65391,3.1773877 -1.92501,5.0750097 -0.12252,0.857658 -0.14082,1.502959 -0.2,2.025004 l -0.025,1.875003 1.55001,0 1,0 c 0.0252,0.0076 0.0502,0.01597 0.075,0.025 0,0 0.40683,0.02138 0.925,0.125 0.31902,0.0638 0.5829,0.143578 0.8,0.225001 0.10855,0.04071 0.21314,0.08552 0.3,0.125 0.0434,0.01974 0.0715,0.02167 0.125,0.05 0.0535,0.02833 0.0276,-0.07243 0.375,0.275001 0.34819,0.347604 0.24662,0.321414 0.275,0.375 0.0284,0.05358 0.0302,0.08154 0.05,0.125001 0.0395,0.08692 0.0843,0.191437 0.125,0.3 0.0814,0.217128 0.16121,0.481024 0.225,0.800002 0.10364,0.518223 0.125,0.925002 0.125,0.925002 0.009,0.02476 0.0174,0.04978 0.025,0.075 l 0,19.000036 c 0.006,0.747644 -0.67732,1.430629 -1.42496,1.425002 l -14.00002,0 c -0.74766,0.0057 -1.43065,-0.677344 -1.42501,-1.425002 l 0,-19.000036 c 0.008,-0.02522 0.016,-0.05024 0.025,-0.075 0,0 0.0214,-0.406945 0.125,-0.925002 0.0638,-0.318958 0.1436,-0.582921 0.225,-0.800002 0.0407,-0.10854 0.0855,-0.213147 0.125,-0.3 0.0198,-0.04342 0.0217,-0.0715 0.05,-0.125001 0.0283,-0.0535 -0.0723,-0.02764 0.275,-0.375 0.34793,-0.348311 0.32148,-0.246652 0.37501,-0.275001 0.0535,-0.02835 0.0816,-0.03026 0.125,-0.05 0.0869,-0.03949 0.19144,-0.08429 0.3,-0.125 0.21711,-0.08142 0.48099,-0.161197 0.8,-0.225001 0.51824,-0.103637 0.925,-0.125 0.925,-0.125 0.0247,-0.009 0.0498,-0.01737 0.075,-0.025 l 2,0 0.55,0 -0.025,-1.875003 c -0.0591,-0.521651 -0.0776,-1.167032 -0.2,-2.025004 -0.271,-1.897581 -0.59162,-3.7416741 -1.92496,-5.0750097 C 103.73996,7.4899926 102.16262,7.0650995 99.749977,6.4250121 97.417297,5.8061367 94.64688,5.2640418 91.949963,4.8250091 89.364134,4.4040604 86.933122,4.0566076 85.07495,3.8250072 83.216778,3.5934068 81.821792,3.4558999 81.724944,3.4500065 c -0.01664,2.946e-4 -0.03336,2.946e-4 -0.05,0 -5.04e-4,-3.11e-5 -0.05432,-0.00264 -0.05,0 -0.0108,-3.603e-4 -0.03648,3.705e-4 -0.05,0 -0.05408,-0.00148 -0.114734,0.00133 -0.2,0 -0.130649,-0.00204 -0.307376,0.00137 -0.475001,0 z"
+ id="path3885"
+ style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:url(#linearGradient5438);fill-opacity:1;stroke:none;stroke-width:4.00000763;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" />
+ <path
+ d="m 79.474939,2.0250038 0,15.0000282 -77.850147,0 39.000074,39.000074 40.850077,0 0,60.850114 17.000034,-17.050032 c 0,8.683352 0,17.366702 0,26.050052 l 18.000033,-18.05004 0,9.05002 21.00004,-21.000039 0,-39.850075 40.85008,0 39.00007,-39.000074 -77.85014,0 0,-15.0000282 -2.19342,0.030005 c -0.56842,0.030005 -5.24819,0.5139758 -10.50661,1.3699977 -2.72494,0.4435953 -5.54482,0.9868914 -7.95001,1.6250031 -2.40519,0.6381117 -4.29291,1.1178968 -5.75001,2.5750049 -1.70711,1.7071081 -2.05238,3.9666185 -2.32501,5.8750105 -0.14279,0.999532 -0.19036,1.874272 -0.23268,2.199639 l -0.0423,3.325372 3.00001,0 1,0 c 0,0 0.30115,0.01525 0.725,0.1 0.42385,0.08477 0.84641,0.271405 0.875,0.300001 0.0286,0.02859 0.21523,0.451146 0.3,0.875001 0.0848,0.423855 0.1,0.725002 0.1,0.725002 l 0,19.000036 -14.00002,0 0,-19.000036 c 0,0 0.0153,-0.301147 0.1,-0.725002 0.0848,-0.423855 0.2714,-0.846406 0.3,-0.875001 0.0286,-0.02859 0.45115,-0.21523 0.875,-0.300001 0.4239,-0.08477 0.725,-0.1 0.725,-0.1 l 2,0 2.00001,0 -0.0424,-3.325372 c -0.0423,-0.325367 -0.0901,-1.200107 -0.23264,-2.199639 -0.27262,-1.908392 -0.61788,-4.1679025 -2.32499,-5.8750106 -1.4571,-1.4571081 -3.34482,-1.9368932 -5.75001,-2.5750049 C 97.719787,4.4118978 94.899905,3.8686017 92.174963,3.4250064 86.958546,2.5758217 82.355913,2.0923049 81.802928,2.0586543 81.714408,2.034763 79.474939,2.0250038 79.474939,2.0250038 z m 4.000008,4.250008 c 1.883196,0.2104537 4.619937,0.537548 8.075015,1.1000021 2.650061,0.4314048 5.361455,0.9443646 7.550015,1.5250029 2.188563,0.5806383 3.932123,1.4821112 3.975013,1.5250032 0.29289,0.292891 0.94763,2.033399 1.175,3.625006 0.0742,0.519018 0.05,0.975002 0.05,0.975002 0,0 -0.64839,0.0097 -1.34996,0.150001 -0.82616,0.165229 -1.90361,0.478597 -2.87501,1.450002 -0.971403,0.971405 -1.284773,2.048861 -1.450003,2.875006 -0.16527,0.826145 -0.15004,1.525003 -0.15004,1.525003 l 0,19.000036 -68.17513,0 -7.000014,-7.000014 32.175061,0 4.000008,-4.000007 -40.175076,0 -8.000015,-8.000015 68.175128,0 -9.000017,9.000017 13.000025,0 z m 52.000103,0 0,23.7500452 13.00002,0 -9.00001,-9.000017 68.17512,0 -8.00001,8.000015 -40.17508,0 4.00001,4.000007 32.17506,0 -7.00001,7.000014 -68.17513,0 0,-19.000036 c 0,0 0.0153,-0.698858 -0.15,-1.525003 -0.16523,-0.826145 -0.47859,-1.903601 -1.45,-2.875006 -0.97141,-0.971405 -2.04886,-1.284773 -2.87501,-1.450002 -0.74271,-0.148543 -1.25461,-0.148713 -1.375,-0.150001 0.034,-0.432859 8e-4,-0.455984 0.075,-0.975002 0.22737,-1.591607 0.88211,-3.332115 1.175,-3.625006 0.0429,-0.0429 1.78645,-0.9443649 3.97501,-1.5250032 2.18855,-0.5806383 4.89995,-1.0935981 7.55001,-1.5250029 3.45508,-0.5624541 6.19182,-0.8895484 8.07502,-1.1000021 z M 34.299854,44.025083 l 64.175123,0 0,40.000076 4.000013,-4.000008 0,-36.000068 14.00002,0 0,40.000076 4.00001,-4.000008 0,-36.000068 64.17512,0 -8.00001,8.000015 -43.17509,0 0,42.17508 -13.00002,13.000022 0,-17.17503 -4.00001,4.000007 0,8.175013 -14.00002,14.00003 0,-26.02505 -17.000039,17.02503 0,-55.175102 -43.175082,0 z"
+ id="stroke_curved_top_left"
+ style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" />
+ <g
+ transform="translate(1.4749954,152.42528)"
+ id="g3771">
+ <path
+ d="m 103,15 c 0,0 -2,0 -3,1 -1,1 -1,3 -1,3 M 80,2 c 0,0 20,2 23,5 2,2 2,8 2,8"
+ id="path3773"
+ style="fill:none;stroke:#000000;stroke-width:4.00000763;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none" />
+ <path
+ d="m 113,15 c 0,0 2,0 3,1 1,1 1,3 1,3 M 136,2 c 0,0 -20,2 -23,5 -2,2 -2,8 -2,8"
+ id="path3775"
+ style="fill:none;stroke:#000000;stroke-width:4.00000763;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none" />
+ <path
+ d="m 99,19 c 0,0 0,58 0,58 M 82,93 c 0,0 0,-41 0,-41 0,0 -42,0 -42,0 0,0 -35,-35 -35,-35 0,0 75,0 75,0 m 25,-2 c 0,0 -2,0 -2,0 M 80,2 c 0,0 0,24 0,24 m -27,3 c 0,0 -36,0 -36,0 m 91,11 c 0,0 -80,0 -80,0"
+ id="path3777"
+ style="fill:none;stroke:#000000;stroke-width:4.00000763;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none" />
+ <path
+ d="m 117,19 c 0,0 0,58 0,58 m 17,16 c 0,0 0,-41 0,-41 0,0 42,0 42,0 0,0 35,-35 35,-35 0,0 -75,0 -75,0 m -25,-2 c 0,0 2,0 2,0 M 136,2 c 0,0 0,24 0,24 m 27,3 c 0,0 36,0 36,0 m -91,11 c 0,0 80,0 80,0"
+ id="path3779"
+ style="fill:none;stroke:#000000;stroke-width:4.00000763;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none" />
+ <path
+ d="m 134,89 c 0,0 0,4 0,4 0,0 -17,17 -17,17 0,0 0,-9 0,-9 0,0 -18,18 -18,18 0,0 0,-26 0,-26 0,0 -17,17 -17,17 0,0 0,-17 0,-17 m 35,0 c 0,0 0,8 0,8"
+ id="path3781"
+ style="fill:none;stroke:#000000;stroke-width:4.00000763;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none" />
+ <path
+ d="m 138,2 c 0,0 0,-2 0,-2 0,0 -2,0 -2,0 0,0 0,2 0,2 0,0 2,0 2,0 z m -4,24 c 0,0 0,2 0,2 0,0 13,0 13,0 0,0 -9,-9 -9,-9 0,0 -4,0 -4,0 0,0 0,7 0,7 z m 30,5 c 0,0 -2,0 -2,0 0,0 -4,-4 -4,-4 0,0 6,0 6,0 0,0 0,4 0,4 z M 112,17 c 0,0 -3,0 -3,0 0,0 0,-3 0,-3 0,0 3,0 3,0 0,0 0,3 0,3 z"
+ id="path3783"
+ style="fill:#000000;fill-opacity:1;stroke:none" />
+ <path
+ d="m 78,2 c 0,0 0,-2 0,-2 0,0 2,0 2,0 0,0 0,2 0,2 0,0 -2,0 -2,0 z m 4,24 c 0,0 0,2 0,2 0,0 -13,0 -13,0 0,0 9,-9 9,-9 0,0 4,0 4,0 0,0 0,7 0,7 z m -30,5 c 0,0 2,0 2,0 0,0 4,-4 4,-4 0,0 -6,0 -6,0 0,0 0,4 0,4 z m 52,-14 c 0,0 3,0 3,0 0,0 0,-3 0,-3 0,0 -3,0 -3,0 0,0 0,3 0,3 z"
+ id="path3785"
+ style="fill:#000000;fill-opacity:1;stroke:none" />
+ <path
+ d="m 97,82 c 0,0 4,-4 4,-4 0,0 0,-1 0,-1 0,0 -4,0 -4,0 0,0 0,5 0,5 z m 18,0 c 0,0 4,-4 4,-4 0,0 0,-1 0,-1 0,0 -4,0 -4,0 0,0 0,5 0,5 z m 0,11 c 0,0 4,0 4,0 0,0 0,-5 0,-5 0,0 -4,4 -4,4 0,0 0,1 0,1 z"
+ id="path3787"
+ style="fill:#000000;fill-opacity:1;stroke:none" />
+ </g>
+</svg>
diff --git a/games/etlegacy-from-source/files/get_tarball_from_git.sh b/games/etlegacy-from-source/files/get_tarball_from_git.sh
new file mode 100644
index 0000000000..42aaa1626d
--- /dev/null
+++ b/games/etlegacy-from-source/files/get_tarball_from_git.sh
@@ -0,0 +1,31 @@
+rm -fR /tmp/tmp-etlegacy
+mkdir -p /tmp/tmp-etlegacy
+cd /tmp/tmp-etlegacy
+git clone git://github.com/etlegacy/etlegacy.git
+cd etlegacy
+git submodule init
+git submodule update
+cd libs
+git archive master > ../../libs.tar
+cd ..
+cd scripts
+git archive master > ../../scripts.tar
+cd ..
+COMMIT=$( git log -1 | head -1 | cut -c 8-14 )
+COMMDATE=$( git log -1 --date=short | grep ^Date | awk '{print $2}' | sed 's/-//g' )
+rm -f /tmp/etlegacy-${COMMDATE}_${COMMIT}.tar.xz
+git archive master > ../src.tar
+cd ..
+mkdir etlegacy-${COMMDATE}_${COMMIT}
+cd etlegacy-${COMMDATE}_${COMMIT}
+tar xf ../src.tar
+cd libs
+tar xf ../../libs.tar
+cd ..
+cd scripts
+tar xf ../../scripts.tar
+cd ..
+cd ..
+rm -f src.tar libs.tar scripts.tar
+tar Jcf /tmp/etlegacy-${COMMDATE}_${COMMIT}.tar.xz etlegacy-${COMMDATE}_${COMMIT}
+echo "/tmp/etlegacy-${COMMDATE}_${COMMIT}.tar.xz done."
diff --git a/games/etlegacy-from-source/files/openurl.sh b/games/etlegacy-from-source/files/openurl.sh
new file mode 100644
index 0000000000..274f12d08d
--- /dev/null
+++ b/games/etlegacy-from-source/files/openurl.sh
@@ -0,0 +1,15 @@
+#!/bin/sh
+# use this script to customize the way the engine should open URLs
+
+for test_browser in firefox seamonkey opera
+do
+ browser=`which $test_browser`
+ if [ "x$browser" != "x" ]
+ then
+ $browser -remote "openURL($1,new-window)" || $browser "$1"
+ exit
+ fi
+done
+# xterm -e lynx "$1"
+
+exit 0
diff --git a/games/etlegacy-from-source/slack-desc b/games/etlegacy-from-source/slack-desc
new file mode 100644
index 0000000000..e6866b09b8
--- /dev/null
+++ b/games/etlegacy-from-source/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+etlegacy-from-source: etlegacy-from-source (collaborative FPS)
+etlegacy-from-source:
+etlegacy-from-source: Wolfenstein Enemy Territory : Legacy is a project that aims to create
+etlegacy-from-source: a fully compatible client and server for the popular online FPS game
+etlegacy-from-source: Wolfenstein: Enemy Territory.
+etlegacy-from-source: It's based on its source code released under the GPLv3 license.
+etlegacy-from-source: The main goal of this project is to fix bugs, remove old dependencies
+etlegacy-from-source: and make it playable on all major operating systems while still
+etlegacy-from-source: remaining compatible with the ET 2.60b version and as many of its mods
+etlegacy-from-source: as possible. This version is built from source.
+etlegacy-from-source: homepage: http://www.etlegacy.com/
diff --git a/games/f1spirit/03_gcc6.patch b/games/f1spirit/03_gcc6.patch
new file mode 100644
index 0000000000..fbae3bd832
--- /dev/null
+++ b/games/f1spirit/03_gcc6.patch
@@ -0,0 +1,12 @@
+diff -Naur f1spirit-0.rc9.1615.orig/sources/auxiliar.cpp f1spirit-0.rc9.1615/sources/auxiliar.cpp
+--- f1spirit-0.rc9.1615.orig/sources/auxiliar.cpp 2009-02-06 10:54:49.000000000 +0100
++++ f1spirit-0.rc9.1615/sources/auxiliar.cpp 2017-06-23 11:57:14.145689872 +0200
+@@ -93,7 +93,7 @@
+
+ if (tmp == 0 ||
+ mask == 0)
+- return false;
++ return 0;
+
+ res = SDL_DisplayFormatAlpha(tmp);
+
diff --git a/games/f1spirit/f1spirit.SlackBuild b/games/f1spirit/f1spirit.SlackBuild
index 8109ea68a7..4b9206d624 100644
--- a/games/f1spirit/f1spirit.SlackBuild
+++ b/games/f1spirit/f1spirit.SlackBuild
@@ -53,6 +53,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# Fix for the newer gccs
+patch -p1 < $CWD/03_gcc6.patch
+
make install PREFIX=$PKG/usr
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
diff --git a/games/frogatto/frogatto.SlackBuild b/games/frogatto/frogatto.SlackBuild
index c292542f79..ab84386732 100644
--- a/games/frogatto/frogatto.SlackBuild
+++ b/games/frogatto/frogatto.SlackBuild
@@ -69,13 +69,13 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-# Fix linking with boost libs
-sed -i 's,-mt,,g' Makefile
+# Fix linking with boost libs and remove -Werror
+sed -i -e 's,-mt,,g' -e 's, -Werror,,' Makefile
make \
OPTIMIZE=no \
USE_CCACHE=no \
- CXX=g++ \
+ CXX=clang++ \
CXXFLAGS="$SLKCFLAGS" \
LDFLAGS="-L/usr/lib${LIBDIRSUFFIX}"
diff --git a/games/gargoyle/gargoyle.SlackBuild b/games/gargoyle/gargoyle.SlackBuild
index bfa8194bcd..ea191f0d13 100644
--- a/games/gargoyle/gargoyle.SlackBuild
+++ b/games/gargoyle/gargoyle.SlackBuild
@@ -59,7 +59,7 @@ jam -s DESTDIR=$PKG \
-s _BINDIR=/usr/libexec/gargoyle \
-s _APPDIR=/usr/libexec/gargoyle \
-s _LIBDIR=/usr/lib$LIBDIRSUFFIX/gargoyle \
- -s CCFLAGS="$SLKCFLAGS -fgnu89-inline" \
+ -s CCFLAGS="$SLKCFLAGS -fgnu89-inline -fpermissive" \
-dx \
install
diff --git a/games/glob2/c++14.patch b/games/glob2/c++14.patch
new file mode 100644
index 0000000000..6465f659af
--- /dev/null
+++ b/games/glob2/c++14.patch
@@ -0,0 +1,46 @@
+# HG changeset patch
+# User Jonathan Wakely <jwakely@redhat.com>
+# Date 1485875296 0
+# Node ID c9dc715624318e4fea4abb24e04f0ebdd9cd8d2a
+# Parent c4da01699846179d8bf21e8dae2b973158ec0775
+Fix last argument to ChooseMapScreen constructor
+
+Since C++14 'false' is not a valid null pointer constant, so cannot be passed
+to functions expecting pointer arguments.
+
+diff --git a/src/EditorMainMenu.cpp b/src/EditorMainMenu.cpp
+--- a/src/EditorMainMenu.cpp
++++ b/src/EditorMainMenu.cpp
+@@ -90,7 +90,7 @@
+ }
+ else if (par1==LOADMAP)
+ {
+- ChooseMapScreen chooseMapScreen("maps", "map", false, "games", "game", false);
++ ChooseMapScreen chooseMapScreen("maps", "map", false, "games", "game", NULL);
+ int rc=chooseMapScreen.execute(globalContainer->gfx, 40);
+ if (rc==ChooseMapScreen::OK)
+ {
+diff --git a/src/LANMenuScreen.cpp b/src/LANMenuScreen.cpp
+--- a/src/LANMenuScreen.cpp
++++ b/src/LANMenuScreen.cpp
+@@ -62,7 +62,7 @@
+ }
+ else if(par1 == HOST)
+ {
+- ChooseMapScreen cms("maps", "map", false, "games", "game", false);
++ ChooseMapScreen cms("maps", "map", false, "games", "game", NULL);
+ int rc = cms.execute(globalContainer->gfx, 40);
+ if(rc == ChooseMapScreen::OK)
+ {
+diff --git a/src/YOGClientLobbyScreen.cpp b/src/YOGClientLobbyScreen.cpp
+--- a/src/YOGClientLobbyScreen.cpp
++++ b/src/YOGClientLobbyScreen.cpp
+@@ -326,7 +326,7 @@
+
+ void YOGClientLobbyScreen::hostGame()
+ {
+- ChooseMapScreen cms("maps", "map", false, "games", "game", false);
++ ChooseMapScreen cms("maps", "map", false, "games", "game", NULL);
+ int rc = cms.execute(globalContainer->gfx, 40);
+ if(rc == ChooseMapScreen::OK)
+ {
diff --git a/games/glob2/glob2.SlackBuild b/games/glob2/glob2.SlackBuild
index 6bb719cd26..435af508ff 100644
--- a/games/glob2/glob2.SlackBuild
+++ b/games/glob2/glob2.SlackBuild
@@ -71,6 +71,9 @@ find -L . \
patch -p1 < $CWD/fixes.patch
+# From upstream
+patch -p1 < $CWD/c++14.patch
+
mkdir -p $PKG/usr/bin \
$PKG/usr/share/games/$PRGNAM
diff --git a/games/gnubg/gnubg.SlackBuild b/games/gnubg/gnubg.SlackBuild
index 2e987b8125..6ba3010227 100644
--- a/games/gnubg/gnubg.SlackBuild
+++ b/games/gnubg/gnubg.SlackBuild
@@ -69,8 +69,6 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-./autogen.sh
-
LDFLAGS="-L/usr/lib${LIBDIRSUFFIX}" \
CFLAGS="$SLKCFLAGS" \
./configure \
diff --git a/games/goonies/gcc6.patch b/games/goonies/gcc6.patch
new file mode 100644
index 0000000000..f586243cf1
--- /dev/null
+++ b/games/goonies/gcc6.patch
@@ -0,0 +1,12 @@
+diff -Naur goonies-1.4.1528.orig/src/auxiliar.cpp goonies-1.4.1528/src/auxiliar.cpp
+--- goonies-1.4.1528.orig/src/auxiliar.cpp 2009-03-12 09:43:32.000000000 +0100
++++ goonies-1.4.1528/src/auxiliar.cpp 2017-06-23 10:24:12.765749591 +0200
+@@ -94,7 +94,7 @@
+
+ if (tmp == 0 ||
+ mask == 0)
+- return false;
++ return 0;
+
+ res = SDL_DisplayFormatAlpha(tmp);
+
diff --git a/games/goonies/goonies.SlackBuild b/games/goonies/goonies.SlackBuild
index 760f39ef37..236b445e1c 100644
--- a/games/goonies/goonies.SlackBuild
+++ b/games/goonies/goonies.SlackBuild
@@ -70,6 +70,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# Fix for the newer compilers
+patch -p1 < $CWD/gcc6.patch
+
# fix linker and installation paths
patch -p1 < $CWD/makefile.patch
diff --git a/games/higan-libretro/higan-libretro.SlackBuild b/games/higan-libretro/higan-libretro.SlackBuild
index 38b0128ded..525ad5a332 100644
--- a/games/higan-libretro/higan-libretro.SlackBuild
+++ b/games/higan-libretro/higan-libretro.SlackBuild
@@ -74,10 +74,6 @@ find -L . \
[ "${DEBUG:=optimize}" != optimize ] && DEBUG=debug
-# Use the gcc OpenMP implementation since clang in Slackware-14.2 does
-# not include OpenMP.
-zcat $CWD/openmp.patch.gz | patch -p1
-
# clang++ avoids crashes when loading content for the second time
make -C higan \
binary=library \
diff --git a/games/higan-libretro/openmp.patch.gz b/games/higan-libretro/openmp.patch.gz
deleted file mode 100644
index 8b988733e2..0000000000
--- a/games/higan-libretro/openmp.patch.gz
+++ /dev/null
Binary files differ
diff --git a/games/micropolis/micropolis.SlackBuild b/games/micropolis/micropolis.SlackBuild
index 2f74efd4ae..b9617b5e6c 100644
--- a/games/micropolis/micropolis.SlackBuild
+++ b/games/micropolis/micropolis.SlackBuild
@@ -78,7 +78,7 @@ find . -iname \*makefile\* -o -iname \*.mk \
# comment out the next line to disable the airplane crash disaster
sed -i -e 's/-DNO_AIRCRASH//' src/sim/makefile
-make -j1 PREFIX=/usr DOCDIR=/usr/doc/$PRGNAM-$VERSION SLKCFLAGS="$SLKCFLAGS"
+make -j1 PREFIX=/usr DOCDIR=/usr/doc/$PRGNAM-$VERSION SLKCFLAGS="$SLKCFLAGS -DTCL_IEEE_FP_MATH"
make -j1 install PREFIX=/usr DOCDIR=/usr/doc/$PRGNAM-$VERSION DESTDIR=$PKG
# Make .desktop file pass desktop-file-validate
diff --git a/games/nlarn/nlarn.SlackBuild b/games/nlarn/nlarn.SlackBuild
index d182511647..fef6664c4e 100644
--- a/games/nlarn/nlarn.SlackBuild
+++ b/games/nlarn/nlarn.SlackBuild
@@ -69,6 +69,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# set our CFLAGS, disable -Werror and use ncurses6-config
+sed -i -e "s|-Werror ||" -e "s|-O2|$SLKCFLAGS|" -e "s|ncurses5|ncurses6|" Makefile
+
make
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
diff --git a/games/noteye/noteye.SlackBuild b/games/noteye/noteye.SlackBuild
index 828e65f220..4ae54029b8 100644
--- a/games/noteye/noteye.SlackBuild
+++ b/games/noteye/noteye.SlackBuild
@@ -74,6 +74,9 @@ sed -i 's,-llua5.1,-llua,g' src/Makefile
# store the writable high score file in /var, not /usr/share.
sed -i 's,"hydrascores.sav","/var/games/hydrascores.sav",' hydra/hydra.cpp
+# use clang++ as the code won't build with gcc >= 5.x
+sed -i 's|g++ |clang++ |' src/Makefile
+
make -C src CFLAGS="$SLKCFLAGS"
# The 'make install' target is bad and wrong. Don't use.
diff --git a/games/openlierox/http_curl.patch b/games/openlierox/http_curl.patch
deleted file mode 100644
index c74fcd3d22..0000000000
--- a/games/openlierox/http_curl.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- openlierox-0.58_rc3/include/HTTP.original.h 2014-04-19 19:58:09.213990582 +0300
-+++ openlierox-0.58_rc3/include/HTTP.h 2014-04-21 13:45:11.485876525 +0300
-@@ -21,7 +21,6 @@
-
- #include <string>
- #include <curl/curl.h>
--#include <curl/types.h>
- #include <curl/easy.h>
-
- #include "Networking.h"
---- openlierox-0.58_rc3/src/common/HTTP.original.cpp 2014-04-19 20:48:13.255434896 +0300
-+++ openlierox-0.58_rc3/src/common/HTTP.cpp 2014-04-21 13:48:08.493663623 +0300
-@@ -25,7 +25,6 @@
- #include <stdlib.h>
- #endif
- #include <curl/curl.h>
--#include <curl/types.h>
- #include <curl/easy.h>
-
- #include "LieroX.h"
diff --git a/games/openlierox/openlierox.SlackBuild b/games/openlierox/openlierox.SlackBuild
index 352f4ce332..3a407c408d 100644
--- a/games/openlierox/openlierox.SlackBuild
+++ b/games/openlierox/openlierox.SlackBuild
@@ -23,8 +23,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=openlierox
-VERSION=${VERSION:-0.58_rc3}
-SRCVER=$(echo $VERSION | tr _ .)
+VERSION=${VERSION:-20170313_3825306}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -61,7 +60,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz || tar xvf $CWD/$VERSION.tar.gz
+tar xvf $CWD/$PRGNAM-$VERSION.tar.?z
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
@@ -70,9 +69,6 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-# curl/types.h removed because not supported from new CURL versions
-patch -p1 < $CWD/http_curl.patch
-
mkdir -p build
cd build
cmake . \
diff --git a/games/openlierox/openlierox.info b/games/openlierox/openlierox.info
index 44f5cb5814..f3115748bd 100644
--- a/games/openlierox/openlierox.info
+++ b/games/openlierox/openlierox.info
@@ -1,10 +1,10 @@
PRGNAM="openlierox"
-VERSION="0.58_rc3"
+VERSION="20170313_3825306"
HOMEPAGE="http://www.openlierox.net/"
-DOWNLOAD="https://github.com/albertz/openlierox/archive/0.58_rc3.tar.gz"
-MD5SUM="4ce050ca069b1ebe2fb720b3a1c2c760"
+DOWNLOAD="http://ponce.cc/slackware/sources/repo/openlierox-20170313_3825306.tar.xz"
+MD5SUM="7540eab45506561ccae1e75cf42a8fdd"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="HawkNL"
+REQUIRES="HawkNL freealut"
MAINTAINER="Dimitris Zlatanidis"
EMAIL="d.zlatanidis@gmail.com"
diff --git a/games/openttd/openttd.SlackBuild b/games/openttd/openttd.SlackBuild
index 2430a7d97a..c8955ce4b9 100644
--- a/games/openttd/openttd.SlackBuild
+++ b/games/openttd/openttd.SlackBuild
@@ -88,7 +88,7 @@ find -L . \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS -DU_USING_ICU_NAMESPACE=1" \
./configure \
--prefix-dir=/usr \
--binary-dir=/games \
diff --git a/games/pcsxr/pcsxr.SlackBuild b/games/pcsxr/pcsxr.SlackBuild
index 49eba27447..af5d3b9f33 100644
--- a/games/pcsxr/pcsxr.SlackBuild
+++ b/games/pcsxr/pcsxr.SlackBuild
@@ -69,6 +69,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# Thanks fedora
+patch -p1 < $CWD/zlib129fix.patch
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
LDFLAGS="$SLKLDFLAGS" \
diff --git a/games/pcsxr/zlib129fix.patch b/games/pcsxr/zlib129fix.patch
new file mode 100644
index 0000000000..632e1ceffe
--- /dev/null
+++ b/games/pcsxr/zlib129fix.patch
@@ -0,0 +1,34 @@
+diff --git a/pcsxr/configure.ac b/pcsxr/configure.ac
+index 300bb18..128b4f9 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -113,6 +113,9 @@ if test "x$have_xtest" = xno; then
+ AC_MSG_ERROR([unable to find xtest headers])
+ fi
+
++AC_CHECK_LIB(z, uncompress2,
++[ AC_DEFINE([HAVE_UNCOMPRESS2], [1], [Define if libz supports uncompress2]) ])
++
+ AM_CONDITIONAL(USE_LIBCDIO, false)
+
+ AC_ARG_ENABLE(libcdio, [ --enable-libcdio use GNU libcdio for CD-ROM support (default=no)],
+diff --git a/pcsxr/libpcsxcore/cdriso.c b/pcsxr/libpcsxcore/cdriso.c
+index 04e866d..fb7f28a 100644
+--- a/libpcsxcore/cdriso.c
++++ b/libpcsxcore/cdriso.c
+@@ -1219,6 +1219,7 @@ static int cdread_sub_mixed(FILE *f, unsigned int base, void *dest, int sector)
+ return ret;
+ }
+
++#ifndef HAVE_UNCOMPRESS2
+ static int uncompress2(void *out, unsigned long *out_size, void *in, unsigned long in_size)
+ {
+ static z_stream z;
+@@ -1249,6 +1250,7 @@ static int uncompress2(void *out, unsigned long *out_size, void *in, unsigned lo
+ *out_size -= z.avail_out;
+ return ret == 1 ? 0 : ret;
+ }
++#endif
+
+ static int cdread_compressed(FILE *f, unsigned int base, void *dest, int sector)
+ {
diff --git a/games/pingus/missing-header.patch b/games/pingus/missing-header.patch
new file mode 100644
index 0000000000..cc1dcdbb85
--- /dev/null
+++ b/games/pingus/missing-header.patch
@@ -0,0 +1,22 @@
+From df6e2f445d3e2925a94d22faeb17be9444513e92 Mon Sep 17 00:00:00 2001
+From: Jonathan Wakely <jwakely@redhat.com>
+Date: Mon, 30 Jan 2017 15:41:53 +0000
+Subject: [PATCH] Add missing header for std::function and std::bind
+
+---
+ src/pingus/screens/demo_session.cpp | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/pingus/screens/demo_session.cpp b/src/pingus/screens/demo_session.cpp
+index e3ec49a2c..f887e50f0 100644
+--- a/src/pingus/screens/demo_session.cpp
++++ b/src/pingus/screens/demo_session.cpp
+@@ -18,6 +18,7 @@
+
+ #include <algorithm>
+ #include <iostream>
++#include <functional>
+
+ #include "engine/gui/gui_manager.hpp"
+ #include "engine/gui/surface_button.hpp"
+
diff --git a/games/pingus/pingus.SlackBuild b/games/pingus/pingus.SlackBuild
index e7abf19ddf..a548e5c2a2 100644
--- a/games/pingus/pingus.SlackBuild
+++ b/games/pingus/pingus.SlackBuild
@@ -69,6 +69,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# Thanks archlinux
+patch -p1 < $CWD/missing-header.patch
+
mkdir -p build
scons \
diff --git a/games/pokerth/pokerth-1.1.1-boost-1.65-ambiguous-advance.patch b/games/pokerth/pokerth-1.1.1-boost-1.65-ambiguous-advance.patch
new file mode 100644
index 0000000000..2e8c9c50c5
--- /dev/null
+++ b/games/pokerth/pokerth-1.1.1-boost-1.65-ambiguous-advance.patch
@@ -0,0 +1,14 @@
+Boost 1.65 made 'advance()' ambiguous.
+Bug: https://bugs.gentoo.org/show_bug.cgi?id=629966
+
+--- a/src/gui/qt/gametable/gametableimpl.cpp
++++ b/src/gui/qt/gametable/gametableimpl.cpp
+@@ -3859,7 +3859,7 @@
+ int playerCount = static_cast<int>(seatList->size());
+ if (id < playerCount) {
+ PlayerListIterator pos = seatList->begin();
+- advance(pos, id);
++ std::advance(pos, id);
+ myStartWindow->getSession()->startVoteKickPlayer((*pos)->getMyUniqueID());
+ }
+ }
diff --git a/games/pokerth/pokerth-1.1.2-boost-1.66-remove-deprecated.patch b/games/pokerth/pokerth-1.1.2-boost-1.66-remove-deprecated.patch
new file mode 100644
index 0000000000..d265eb1db9
--- /dev/null
+++ b/games/pokerth/pokerth-1.1.2-boost-1.66-remove-deprecated.patch
@@ -0,0 +1,26 @@
+diff -Naur pokerth-1.1.2-rc.orig/src/net/common/clientthread.cpp pokerth-1.1.2-rc/src/net/common/clientthread.cpp
+--- pokerth-1.1.2-rc.orig/src/net/common/clientthread.cpp 2017-08-16 14:24:03.000000000 +0200
++++ pokerth-1.1.2-rc/src/net/common/clientthread.cpp 2017-12-23 21:48:58.660592917 +0100
+@@ -993,8 +993,7 @@
+ newSock.reset(new boost::asio::ip::tcp::socket(*m_ioService, tcp::v6()));
+ else
+ newSock.reset(new boost::asio::ip::tcp::socket(*m_ioService, tcp::v4()));
+- boost::asio::socket_base::non_blocking_io command(true);
+- newSock->io_control(command);
++ newSock->non_blocking(true);
+ newSock->set_option(tcp::no_delay(true));
+ newSock->set_option(boost::asio::socket_base::keep_alive(true));
+
+diff -Naur pokerth-1.1.2-rc.orig/src/net/serveraccepthelper.h pokerth-1.1.2-rc/src/net/serveraccepthelper.h
+--- pokerth-1.1.2-rc.orig/src/net/serveraccepthelper.h 2017-08-16 14:24:03.000000000 +0200
++++ pokerth-1.1.2-rc/src/net/serveraccepthelper.h 2017-12-23 22:05:51.075613870 +0100
+@@ -122,8 +122,7 @@
+ const boost::system::error_code &error)
+ {
+ if (!error) {
+- boost::asio::socket_base::non_blocking_io command(true);
+- acceptedSocket->io_control(command);
++ acceptedSocket->non_blocking(true);
+ acceptedSocket->set_option(typename P::no_delay(true));
+ acceptedSocket->set_option(boost::asio::socket_base::keep_alive(true));
+ boost::shared_ptr<SessionData> sessionData(new SessionData(acceptedSocket, m_lobbyThread->GetNextSessionId(), m_lobbyThread->GetSessionDataCallback(), *m_ioService));
diff --git a/games/pokerth/pokerth.SlackBuild b/games/pokerth/pokerth.SlackBuild
index 5412cb9fbe..d2dfdc6278 100644
--- a/games/pokerth/pokerth.SlackBuild
+++ b/games/pokerth/pokerth.SlackBuild
@@ -26,14 +26,13 @@
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=pokerth
-SRCNAM=PokerTH
-VERSION=${VERSION:-1.1.1}
+VERSION=${VERSION:-1.1.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -44,8 +43,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -61,11 +60,11 @@ fi
set -e
rm -rf $PKG
-rm -rf $TMP/$SRCNAM-$VERSION-src
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-tar xvf $CWD/$SRCNAM-$VERSION-src.tar.bz2
-cd $SRCNAM-$VERSION-src
+rm -rf $PRGNAM-$VERSION-rc
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION-rc
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -73,18 +72,20 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-# The headers to which this file points have moved in the newer libircclient...
-# Thanks ponce.
-sed -i "s|libircclient/||" src/net/common/ircthread.cpp
+patch -p1 < $CWD/pokerth-1.1.1-boost-1.65-ambiguous-advance.patch
+patch -p1 < $CWD/pokerth-1.1.2-boost-1.66-remove-deprecated.patch
-qmake pokerth.pro
+qmake -spec linux-g++ pokerth.pro
+make
+mkdir -p $PKG/usr/bin
+install -s -D -m 0755 bin/pokerth_server $PKG/usr/bin
+install -s -D -m 0755 chatcleaner $PKG/usr/bin
+make clean
-make #CFLAGS="$SLKCFLAGS" CXXFLAGS="$SLKCFLAGS"
+qmake CONFIG+="client" -spec linux-g++ pokerth.pro
+make
make install DESTDIR=$PKG INSTALL_ROOT=$PKG
-mkdir -p $PKG/usr/bin
-install -s -D -m 0755 $TMP/$SRCNAM-$VERSION-src/bin/pokerth_server $PKG/usr/bin
-
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a COPYING INSTALL TODO ChangeLog \
$PKG/usr/doc/$PRGNAM-$VERSION
diff --git a/games/pokerth/pokerth.info b/games/pokerth/pokerth.info
index 24588c1909..e3a18f5b1a 100644
--- a/games/pokerth/pokerth.info
+++ b/games/pokerth/pokerth.info
@@ -1,8 +1,8 @@
PRGNAM="pokerth"
-VERSION="1.1.1"
+VERSION="1.1.2"
HOMEPAGE="https://www.pokerth.net"
-DOWNLOAD="https://downloads.sourceforge.net/pokerth/PokerTH-1.1.1-src.tar.bz2"
-MD5SUM="a7f76f95782099f966e5f2b6809f502a"
+DOWNLOAD="https://downloads.sourceforge.net/pokerth/pokerth-1.1.2.tar.gz"
+MD5SUM="8fd7d7fc7ece17315e58aa3240dd4586"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="libgsasl libircclient tinyxml protobuf"
diff --git a/games/quakespasm/README b/games/quakespasm/README
new file mode 100644
index 0000000000..0761ca3e56
--- /dev/null
+++ b/games/quakespasm/README
@@ -0,0 +1 @@
+This is an engine for iD software's Quake.
diff --git a/games/quakespasm/doinst.sh b/games/quakespasm/doinst.sh
new file mode 100644
index 0000000000..5fb28930db
--- /dev/null
+++ b/games/quakespasm/doinst.sh
@@ -0,0 +1,3 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
diff --git a/desktop/thunar-dropbox/thunar-dropbox.SlackBuild b/games/quakespasm/quakespasm.SlackBuild
index 0f9be96ad8..eceb66be24 100644
--- a/desktop/thunar-dropbox/thunar-dropbox.SlackBuild
+++ b/games/quakespasm/quakespasm.SlackBuild
@@ -1,8 +1,8 @@
#!/bin/sh
-# Slackware build script for Thunar Dropbox
+# Slackware build script for quakespasm
-# Copyright 2010 Murat D. Kadirov <banderols@gmail.com>
+# Copyright 2018 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,15 +22,14 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=thunar-dropbox
-VERSION=${VERSION:-0.2.1}
+PRGNAM=quakespasm
+VERSION=${VERSION:-0.93.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i686 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -41,10 +40,7 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
+if [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
@@ -55,29 +51,36 @@ else
LIBDIRSUFFIX=""
fi
+DOCS="LICENSE.txt Quakespasm*"
+
set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
+tar xvf $CWD/$PRGNAM-$VERSION.tgz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-./waf configure --prefix=/usr --libdir=/usr/lib${LIBDIRSUFFIX}
-./waf build
-./waf install --destdir=$PKG
+cd Quake
+make DO_USERDIRS=1 USE_SDL2=1
+cd ..
+# manual installation
+install -D -m0755 Quake/$PRGNAM $PKG/usr/games/$PRGNAM
+install -D -m0644 Misc/QuakeSpasm_512.png $PKG/usr/share/pixmaps/$PRGNAM.png
+install -D -m0644 $CWD/$PRGNAM.desktop $PKG/usr/share/applications/$PRGNAM.desktop
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/games/quakespasm/quakespasm.desktop b/games/quakespasm/quakespasm.desktop
new file mode 100644
index 0000000000..b143371c46
--- /dev/null
+++ b/games/quakespasm/quakespasm.desktop
@@ -0,0 +1,9 @@
+[Desktop Entry]
+Name=Quakespasm
+GenericName=Quakespasm port of ID Software's Quake
+Exec=quakespasm
+Terminal=false
+Type=Application
+Categories=Game;
+Icon=quakespasm
+StartupNotify=false
diff --git a/games/quakespasm/quakespasm.info b/games/quakespasm/quakespasm.info
new file mode 100644
index 0000000000..79c67d69d0
--- /dev/null
+++ b/games/quakespasm/quakespasm.info
@@ -0,0 +1,10 @@
+PRGNAM="quakespasm"
+VERSION="0.93.1"
+HOMEPAGE="https://quakespasm.sourceforge.net"
+DOWNLOAD="https://downloads.sourceforge.net/quakespasm/quakespasm-0.93.1.tgz"
+MD5SUM="cfb60350081c5526d2bb3320280c1f8c"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="SDL2"
+MAINTAINER="Matteo Bernardini"
+EMAIL="ponce@slackbuilds.org"
diff --git a/system/f2fs_tools/slack-desc b/games/quakespasm/slack-desc
index cb5332d95f..5b7ef8a8db 100644
--- a/system/f2fs_tools/slack-desc
+++ b/games/quakespasm/slack-desc
@@ -6,14 +6,14 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-f2fs_tools: f2fs_tools (Userland tools for the f2fs filesystem)
-f2fs_tools:
-f2fs_tools: Project URL:
-f2fs_tools: https://git.kernel.org/cgit/linux/kernel/git/jaegeuk/f2fs-tools.git
-f2fs_tools:
-f2fs_tools:
-f2fs_tools:
-f2fs_tools:
-f2fs_tools:
-f2fs_tools:
-f2fs_tools:
+quakespasm: quakespasm (quake engine)
+quakespasm:
+quakespasm: This is an engine for iD software's Quake.
+quakespasm:
+quakespasm: homepage: https://quakespasm.sourceforge.net
+quakespasm:
+quakespasm:
+quakespasm:
+quakespasm:
+quakespasm:
+quakespasm:
diff --git a/games/rlvm/gcc.patch b/games/rlvm/gcc.patch
new file mode 100644
index 0000000000..fc4bedfb69
--- /dev/null
+++ b/games/rlvm/gcc.patch
@@ -0,0 +1,24 @@
+From 668863d2222b962ee8e7d9829e972ef05c990302 Mon Sep 17 00:00:00 2001
+From: Elliot Glaysher <glaysher@umich.edu>
+Date: Sun, 22 May 2016 10:29:27 -0700
+Subject: [PATCH] Theoretical compile fix for gcc 4 series.
+
+Adds <iostream> to GraphicsObject.
+
+Closes #76.
+---
+ src/systems/base/graphics_object.cc | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/systems/base/graphics_object.cc b/src/systems/base/graphics_object.cc
+index 9490b3b0..af22177d 100644
+--- a/src/systems/base/graphics_object.cc
++++ b/src/systems/base/graphics_object.cc
+@@ -36,6 +36,7 @@
+ #include <boost/serialization/shared_ptr.hpp>
+
+ #include <algorithm>
++#include <iostream>
+ #include <numeric>
+ #include <sstream>
+ #include <string>
diff --git a/games/rlvm/rlvm.SlackBuild b/games/rlvm/rlvm.SlackBuild
index cce10004ed..b4561a4ddd 100644
--- a/games/rlvm/rlvm.SlackBuild
+++ b/games/rlvm/rlvm.SlackBuild
@@ -59,6 +59,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# From upstream
+patch -p1 < $CWD/gcc.patch
+
scons --release
mkdir -p ${PKG}/usr/games ${PKG}/usr/bin
diff --git a/games/roadfighter/gcc.patch b/games/roadfighter/gcc.patch
new file mode 100644
index 0000000000..c7e3e3895a
--- /dev/null
+++ b/games/roadfighter/gcc.patch
@@ -0,0 +1,11 @@
+--- src/auxiliar.cpp 2016-06-07 16:18:19.672015830 +0200
++++ src/auxiliar.cpp 2016-06-07 16:18:41.678235683 +0200
+@@ -84,7 +84,7 @@
+ mask=IMG_Load(name);
+
+ if (tmp==0 ||
+- mask==0) return false;
++ mask==0) return 0;
+
+ res=SDL_DisplayFormatAlpha(tmp);
+
diff --git a/games/roadfighter/roadfighter.SlackBuild b/games/roadfighter/roadfighter.SlackBuild
index eee917a62b..95ea975803 100644
--- a/games/roadfighter/roadfighter.SlackBuild
+++ b/games/roadfighter/roadfighter.SlackBuild
@@ -73,6 +73,9 @@ find -L . \
# fix installation path
patch -p1 < $CWD/makefile.patch
+# fix building with the newer gcc
+patch -p0 < $CWD/gcc.patch
+
make
make install PREFIX=$PKG
diff --git a/games/speed-dreams/speed-dreams-params-conversion.patch b/games/speed-dreams/speed-dreams-params-conversion.patch
new file mode 100644
index 0000000000..16bd19d2f7
--- /dev/null
+++ b/games/speed-dreams/speed-dreams-params-conversion.patch
@@ -0,0 +1,22 @@
+--- src/libs/tgf/params.cpp.orig 2017-02-14 10:32:38.701066427 +0100
++++ src/libs/tgf/params.cpp 2017-02-14 10:33:19.425879383 +0100
+@@ -3809,7 +3809,7 @@
+ if( lastSlash != NULL && key )
+ {
+ *key = lastSlash + 1;
+- lastSlash = '\0';
++ lastSlash = NULL;
+ }
+ else if( key )
+ {
+--- src/libs/tgfclient/openalmusicplayer.cpp.orig 2017-02-14 13:14:10.870735828 +0100
++++ src/libs/tgfclient/openalmusicplayer.cpp 2017-02-14 13:15:11.592684153 +0100
+@@ -171,7 +171,7 @@
+ {
+ char pcm[BUFFERSIZE];
+ int size = 0;
+- const char* error = '\0';
++ const char* error = NULL;
+
+ if (!_stream->read(pcm, BUFFERSIZE, &size, error)) {
+ GfLogError("OpenALMusicPlayer: Stream read error: %s\n", error);
diff --git a/games/speed-dreams/speed-dreams.SlackBuild b/games/speed-dreams/speed-dreams.SlackBuild
index 3887ecbb24..8cb03ba098 100644
--- a/games/speed-dreams/speed-dreams.SlackBuild
+++ b/games/speed-dreams/speed-dreams.SlackBuild
@@ -58,6 +58,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# Thanks fedora
+patch -p0 < $CWD/speed-dreams-params-conversion.patch
+
mkdir build
cd build
diff --git a/games/supertux/README b/games/supertux/README
index ca35bccc4c..da66a7726f 100644
--- a/games/supertux/README
+++ b/games/supertux/README
@@ -3,3 +3,5 @@ similar to the original SuperMario games.
If you get slow performance, disable the use of OpenGL in the
"Options" menu after SuperTux is started.
+
+libraqm is an optional dependency.
diff --git a/games/supertux/supertux.SlackBuild b/games/supertux/supertux.SlackBuild
index 72e00c5c77..97de41b229 100644
--- a/games/supertux/supertux.SlackBuild
+++ b/games/supertux/supertux.SlackBuild
@@ -23,13 +23,13 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=supertux
-VERSION=${VERSION:-0.4.0}
+VERSION=${VERSION:-20181120_776a61d}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -40,8 +40,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -60,7 +60,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
+tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
@@ -78,7 +78,8 @@ cd build
-DINSTALL_SUBDIR_BIN=bin \
-DINSTALL_SUBDIR_SHARE=share/$PRGNAM \
-DINSTALL_SUBDIR_DOC=doc/$PRGNAM-$VERSION \
- -DLIB_SUBDIR=lib${LIBDIRSUFFIX} \
+ -DLIB_SUFFIX=lib${LIBDIRSUFFIX} \
+ -DENABLE_BOOST_STATIC_LIBS=OFF \
-DCMAKE_BUILD_TYPE=Release ..
make
make install DESTDIR=$PKG
diff --git a/games/supertux/supertux.info b/games/supertux/supertux.info
index 299d644b04..33c52d93c7 100644
--- a/games/supertux/supertux.info
+++ b/games/supertux/supertux.info
@@ -1,8 +1,8 @@
PRGNAM="supertux"
-VERSION="0.4.0"
+VERSION="20181120_776a61d"
HOMEPAGE="https://github.com/SuperTux/supertux"
-DOWNLOAD="https://github.com/SuperTux/supertux/releases/download/v0.4.0/supertux-0.4.0.tar.bz2"
-MD5SUM="8acc3aa1077f0da95c99fdd5f4925088"
+DOWNLOAD="http://ponce.cc/slackware/sources/repo/supertux-20181120_776a61d.tar.xz"
+MD5SUM="f1621a1caf5513084a80261f4ebe66fd"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="SDL2_image OpenAL physfs"
diff --git a/games/supertuxkart/mesa-18.3.patch b/games/supertuxkart/mesa-18.3.patch
new file mode 100644
index 0000000000..b144177255
--- /dev/null
+++ b/games/supertuxkart/mesa-18.3.patch
@@ -0,0 +1,23 @@
+From 3a3953f38c3555e87f3608d0291dbfccf34e9775 Mon Sep 17 00:00:00 2001
+From: Deve <deveee@gmail.com>
+Date: Wed, 21 Nov 2018 21:07:55 +0100
+Subject: [PATCH] Fix for system glew
+
+---
+ src/graphics/gl_headers.hpp | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/src/graphics/gl_headers.hpp b/src/graphics/gl_headers.hpp
+index fc9867cb59..290805cafe 100644
+--- a/src/graphics/gl_headers.hpp
++++ b/src/graphics/gl_headers.hpp
+@@ -25,6 +25,9 @@
+ extern "C" {
+ #if !defined(USE_GLES2)
+ # include <GL/glew.h>
++// This is a workaround for mesa drivers that now use __gl_glext_h_ instead of
++// __glext_h_ in header file which is not defined in current glew version
++# define __gl_glext_h_
+ #endif
+ }
+ #include <cinttypes>
diff --git a/games/supertuxkart/supertuxkart.SlackBuild b/games/supertuxkart/supertuxkart.SlackBuild
index 049a41e9ba..a244f6ceb4 100644
--- a/games/supertuxkart/supertuxkart.SlackBuild
+++ b/games/supertuxkart/supertuxkart.SlackBuild
@@ -80,6 +80,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# From upstream
+patch -p1 < $CWD/mesa-18.3.patch
+
mkdir -p build
cd build
cmake \
diff --git a/games/torcs/torcs.SlackBuild b/games/torcs/torcs.SlackBuild
index 76ee0f1fae..479625aa7b 100644
--- a/games/torcs/torcs.SlackBuild
+++ b/games/torcs/torcs.SlackBuild
@@ -58,7 +58,7 @@ find -L . \
patch -p1 < $CWD/gcc7.diff
CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS -fpermissive" \
./configure \
--prefix=/usr \
--libdir=/usr/lib$LIBDIRSUFFIX \
diff --git a/games/trackballs/trackballs.SlackBuild b/games/trackballs/trackballs.SlackBuild
index 810a670593..db385f6a63 100644
--- a/games/trackballs/trackballs.SlackBuild
+++ b/games/trackballs/trackballs.SlackBuild
@@ -9,8 +9,8 @@
# 20170621 bkw: fix build on -current
PRGNAM=trackballs
-VERSION=${VERSION:-1.1.4}
-BUILD=${BUILD:-3}
+VERSION=${VERSION:-1.2.4}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
@@ -53,37 +53,32 @@ tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
-
-# Apply two patches from redhat: one to fix building and running with guile-2.0.x,
-# another to fix "Esc" behaviour. Also abs.diff, which fixes the build for
-# gcc 7 from -current.
-for i in $CWD/patches/* ; do patch -p1 < $i ; done
-
-# Make icons honor DESTDIR (thanks to Johannes for this fix)
-sed -i 's/ $(iconsdir)/ $(DESTDIR)$(iconsdir)/g' share/icons/Makefile.in
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --build=$ARCH-slackware-linux
-
-make
-make install-strip DESTDIR=$PKG
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+mkdir -p build
+cd build
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DLIB_SUFFIX=${LIBDIRSUFFIX} \
+ -DMAN_INSTALL_DIR=/usr/man \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make
+ make install DESTDIR=$PKG
+cd ..
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
gzip $PKG/usr/man/man6/$PRGNAM.6
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/html
-cp -a README AUTHORS COPYING ChangeLog FAQ TODO $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a docs/*.html $PKG/usr/doc/$PRGNAM-$VERSION/html
+cp -a ABOUT-NLS.md AUTHORS.md COPYING FAQ.md NEWS.md README.md TODO.md $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a docs/* $PKG/usr/doc/$PRGNAM-$VERSION/html
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/usr/share/applications
diff --git a/games/trackballs/trackballs.info b/games/trackballs/trackballs.info
index c51e5bd3ef..5d365d9074 100644
--- a/games/trackballs/trackballs.info
+++ b/games/trackballs/trackballs.info
@@ -1,8 +1,8 @@
PRGNAM="trackballs"
-VERSION="1.1.4"
-HOMEPAGE="http://trackballs.sourceforge.net"
-DOWNLOAD="http://downloads.sourceforge.net/trackballs/trackballs-1.1.4.tar.gz"
-MD5SUM="84e2e8bb68842a636da91673751279a0"
+VERSION="1.2.4"
+HOMEPAGE="https://trackballs.github.io"
+DOWNLOAD="https://github.com/trackballs/trackballs/archive/v1.2.4/trackballs-1.2.4.tar.gz"
+MD5SUM="e95cb7aa9d344daa4e136dcd67b31b5f"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/games/warmux/patches/return-null.patch b/games/warmux/patches/return-null.patch
new file mode 100644
index 0000000000..851dfcbd16
--- /dev/null
+++ b/games/warmux/patches/return-null.patch
@@ -0,0 +1,11 @@
+--- src/interface/weapon_menu.cpp.orig 2016-05-09 15:22:36.895266463 +0200
++++ src/interface/weapon_menu.cpp 2016-05-09 15:21:38.518476191 +0200
+@@ -391,7 +391,7 @@
+ Weapon * WeaponsMenu::UpdateCurrentOverflyItem(const Polygon * poly)
+ {
+ if (!show)
+- return false;
++ return NULL;
+ const std::vector<PolygonItem *>& items = poly->GetItem();
+ WeaponMenuItem * tmp;
+ Interface::GetInstance()->SetCurrentOverflyWeapon(NULL);
diff --git a/games/warmux/warmux.SlackBuild b/games/warmux/warmux.SlackBuild
index 20cd3cd3a5..1c6d7ff6c7 100644
--- a/games/warmux/warmux.SlackBuild
+++ b/games/warmux/warmux.SlackBuild
@@ -80,6 +80,9 @@ patch -p1 < $CWD/patches/include-zlib.patch
sed -i "s|SDLNet_Read32(buffer)|SDLNet_Read32(const_cast<char*>(buffer))|" \
lib/warmux/action/action.cpp
+# Fix for gcc-6.x
+patch -p0 < $CWD/patches/return-null.patch
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -90,7 +93,7 @@ CXXFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--program-prefix="" \
--program-suffix="" \
- --enable-fribidi \
+ --disable-fribidi \
--enable-servers \
--build=$ARCH-slackware-linux
diff --git a/games/widelands/widelands-gcc47.patch b/games/widelands/widelands-gcc47.patch
deleted file mode 100644
index 9ea19c3571..0000000000
--- a/games/widelands/widelands-gcc47.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-=== modified file 'src/main.cc'
---- src/main.cc 2012-02-15 21:25:34 +0000
-+++ src/main.cc 2012-05-02 07:43:01 +0000
-@@ -28,6 +28,7 @@
- #include <iostream>
- #include <stdexcept>
- #include <typeinfo>
-+#include <unistd.h>
-
- #include <SDL_main.h>
-
-
diff --git a/games/widelands/widelands.SlackBuild b/games/widelands/widelands.SlackBuild
index 793f7a1215..8482c99d6d 100644
--- a/games/widelands/widelands.SlackBuild
+++ b/games/widelands/widelands.SlackBuild
@@ -23,7 +23,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=widelands
-VERSION=${VERSION:-build19}
+VERSION=${VERSION:-20170618}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -59,9 +59,9 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$VERSION-src
-tar xvf $CWD/$PRGNAM-$VERSION-src.tar.bz2
-cd $PRGNAM-$VERSION-src
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
+cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -69,9 +69,6 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-# Fix compiling with gcc 4.7
-patch -p0 -i $CWD/widelands-gcc47.patch
-
mkdir -p build1
cd build1
cmake \
@@ -98,7 +95,6 @@ find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | gr
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
mv $PKG/usr/{VERSION,ChangeLog,CREDITS,COPYING} $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a WL_RELEASE $PKG/usr/doc/$PRGNAM-$VERSION/
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/games/widelands/widelands.info b/games/widelands/widelands.info
index a98f31a43a..2d69dba9b4 100644
--- a/games/widelands/widelands.info
+++ b/games/widelands/widelands.info
@@ -1,8 +1,8 @@
PRGNAM="widelands"
-VERSION="build19"
+VERSION="20170618"
HOMEPAGE="http://www.widelands.org"
-DOWNLOAD="https://launchpad.net/widelands/build19/build19/+download/widelands-build19-src.tar.bz2"
-MD5SUM="0ef7ccf021b8001056739f755500366d"
+DOWNLOAD="http://ponce.cc/slackware/sources/repo/widelands-20170618.tar.bz2"
+MD5SUM="a293822f26386c16a66d4801716e0740"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="SDL2_image SDL2_mixer SDL2_net SDL2_ttf lua"
diff --git a/games/xmoto/xmoto.SlackBuild b/games/xmoto/xmoto.SlackBuild
index 539df636d7..7dc9f71b37 100644
--- a/games/xmoto/xmoto.SlackBuild
+++ b/games/xmoto/xmoto.SlackBuild
@@ -52,7 +52,7 @@ find -L . \
patch -p1 < $CWD/gcc-4.7.patch
CFLAGS="$SLKCFLAGS -DdDOUBLE" \
-CXXFLAGS="$SLKCFLAGS -DdDOUBLE" \
+CXXFLAGS="$SLKCFLAGS -DdDOUBLE -fpermissive" \
LDFLAGS="-ldl" \
./configure \
--prefix=/usr \
diff --git a/games/xu4/gcc7.patch b/games/xu4/gcc7.patch
new file mode 100644
index 0000000000..29f2cceee4
--- /dev/null
+++ b/games/xu4/gcc7.patch
@@ -0,0 +1,90 @@
+--- xu4-20130612_svn/src/image_sdl.cpp.orig 2017-07-07 05:16:49.443617174 +0700
++++ xu4-20130612_svn/src/image_sdl.cpp 2017-07-07 05:25:40.763657058 +0700
+@@ -349,7 +349,7 @@
+ unsigned int y_finish = std::min(int(bottom), oy + span + 1);
+ for (y = y_start; y < y_finish; ++y) {
+
+- int divisor = 1 + span * 2 - abs(ox - x) - abs(oy - y);
++ int divisor = 1 + span * 2 - std::abs((long int) (ox - x)) - std::abs((long int) (oy - y));
+
+ unsigned int r, g, b, a;
+ getPixel(x, y, r, g, b, a);
+--- xu4-20130612_svn/src/map.cpp.orig 2017-07-07 05:26:04.108658810 +0700
++++ xu4-20130612_svn/src/map.cpp 2017-07-07 05:28:17.857668850 +0700
+@@ -123,14 +123,14 @@
+ if (map && map->border_behavior == Map::BORDER_WRAP) {
+ MapCoords me = *this;
+
+- if (abs(me.x - c.x) > abs(me.x + map->width - c.x))
++ if (std::abs((long int) (me.x - c.x)) > std::abs((long int) (me.x + map->width - c.x)))
+ me.x += map->width;
+- else if (abs(me.x - c.x) > abs(me.x - map->width - c.x))
++ else if (std::abs((long int) (me.x - c.x)) > std::abs((long int) (me.x - map->width - c.x)))
+ me.x -= map->width;
+
+- if (abs(me.y - c.y) > abs(me.y + map->width - c.y))
++ if (std::abs((long int) (me.y - c.y)) > std::abs((long int) (me.y + map->width - c.y)))
+ me.y += map->height;
+- else if (abs(me.y - c.y) > abs(me.y - map->width - c.y))
++ else if (std::abs((long int) (me.y - c.y)) > std::abs((long int) (me.y - map->width - c.y)))
+ me.y -= map->height;
+
+ dx = me.x - c.x;
+--- xu4-20130612_svn/src/person.cpp.orig 2017-07-07 05:28:34.604670107 +0700
++++ xu4-20130612_svn/src/person.cpp 2017-07-07 05:29:29.432674223 +0700
+@@ -221,7 +221,7 @@
+ eventHandler->pushController(&getPlayerCtrl);
+ int player = getPlayerCtrl.waitFor();
+ if (player != -1) {
+- string player_str = to_string(player+1);
++ string player_str = to_string((long int) player+1);
+ script->setVar(script->getInputName(), player_str);
+ }
+ else script->unsetVar(script->getInputName());
+--- xu4-20130612_svn/src/script.cpp.orig 2017-07-07 05:29:46.242675485 +0700
++++ xu4-20130612_svn/src/script.cpp 2017-07-07 05:31:00.015681023 +0700
+@@ -44,7 +44,7 @@
+
+ Script::Variable::Variable(const int &v) : set(true) {
+ i_val = v;
+- s_val = to_string(v);
++ s_val = to_string((long int) v);
+ }
+
+ int& Script::Variable::getInt() { return i_val; }
+@@ -503,7 +503,7 @@
+ }
+ // Get the current iterator for our loop
+ else if (item == "iterator")
+- prop = to_string(this->iterator);
++ prop = to_string((long int) this->iterator);
+ else if ((pos = item.find("show_inventory:")) < item.length()) {
+ pos = item.find(":");
+ string itemScript = item.substr(pos+1);
+@@ -611,7 +611,7 @@
+ if (content.empty())
+ errorWarning("Error: empty math() function");
+
+- prop = to_string(mathValue(content));
++ prop = to_string((long int) mathValue(content));
+ }
+
+ /**
+@@ -643,7 +643,7 @@
+
+ /* generate a random number */
+ else if (funcName == "random")
+- prop = to_string(xu4_random((int)strtol(content.c_str(), NULL, 10)));
++ prop = to_string((long int) xu4_random((int)strtol(content.c_str(), NULL, 10)));
+
+ /* replaced with "true" if content is empty, or "false" if not */
+ else if (funcName == "isempty") {
+@@ -1391,7 +1391,7 @@
+ string children_results;
+
+ mathParseChildren(current, &children_results);
+- *result = to_string(mathValue(children_results));
++ *result = to_string((long int) mathValue(children_results));
+ }
+ }
+ }
diff --git a/games/xu4/xu4.SlackBuild b/games/xu4/xu4.SlackBuild
index d4439ca2cc..08a91827bf 100644
--- a/games/xu4/xu4.SlackBuild
+++ b/games/xu4/xu4.SlackBuild
@@ -73,6 +73,9 @@ sed -i -e '/border\.png/s,^,//,' src/imagemgr.cpp
# validate the game's XML files. So:
sed -i '/#define *DEFAULT_VALIDATE_XML/s,1,0,' src/settings.h
+# Patch for GCC 7
+patch -p1 < $CWD/gcc7.patch
+
# The -DNPERF stops u4 from creating a debug/ in the current dir.
make -C src DEBUGCXXFLAGS="-DNPERF $SLKCFLAGS" prefix=/usr libdir=$PKGLIBDIR
make -C src install prefix=$PKG/usr libdir=$PKGLIBDIR
diff --git a/games/xye/xye.SlackBuild b/games/xye/xye.SlackBuild
index 8487aecd40..fbe4eba763 100644
--- a/games/xye/xye.SlackBuild
+++ b/games/xye/xye.SlackBuild
@@ -72,7 +72,7 @@ find -L . \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS -Wno-error=narrowing" \
./configure \
--prefix=/usr \
--bindir=/usr/bin \
diff --git a/gis/gdal/gdal.SlackBuild b/gis/gdal/gdal.SlackBuild
index 2973ebf43c..1f5440d970 100644
--- a/gis/gdal/gdal.SlackBuild
+++ b/gis/gdal/gdal.SlackBuild
@@ -112,6 +112,8 @@ else
WITHLIST+=" --with-jpeg=/usr/lib${LIBDIRSUFFIX}"
fi
+# The CPPFLAGS are for the newer mariadb (thanks pprkut!)
+CPPFLAGS="-I/usr/include/mysql/server" \
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
diff --git a/gis/grass/gcc7.patch b/gis/grass/gcc7.patch
new file mode 100644
index 0000000000..afcea67c7c
--- /dev/null
+++ b/gis/grass/gcc7.patch
@@ -0,0 +1,90 @@
+Index: /grass/branches/releasebranch_7_2/lib/python/ctypes/ctypesgencore/parser/lextab.py
+===================================================================
+--- /grass/branches/releasebranch_7_2/lib/python/ctypes/ctypesgencore/parser/lextab.py (revision 71218)
++++ /grass/branches/releasebranch_7_2/lib/python/ctypes/ctypesgencore/parser/lextab.py (revision 71219)
+@@ -1,59 +1,8 @@
+ # lextab.py. This file automatically created by PLY (version 2.2). Don't edit!
+-_lextokens = {
+- 'RIGHT_OP': None,
+- 'RIGHT_ASSIGN': None,
+- 'DEC_OP': None,
+- 'PP_MACRO_PARAM': None,
+- 'DIV_ASSIGN': None,
+- 'PP_DEFINE': None,
+- 'PP_END_DEFINE': None,
+- 'PP_DEFINE_MACRO_NAME': None,
+- 'HEADER_NAME': None,
+- 'NEWLINE': None,
+- 'CHARACTER_CONSTANT': None,
+- 'PP_STRINGIFY': None,
+- 'AND_ASSIGN': None,
+- 'PTR_OP': None,
+- 'ELLIPSIS': None,
+- 'IDENTIFIER': None,
+- 'ADD_ASSIGN': None,
+- 'PERIOD': None,
+- 'AND_OP': None,
+- 'OTHER': None,
+- 'LPAREN': None,
+- 'LEFT_OP': None,
+- 'LE_OP': None,
+- 'OR_OP': None,
+- 'SUB_ASSIGN': None,
+- 'MOD_ASSIGN': None,
+- 'STRING_LITERAL': None,
+- 'PP_IDENTIFIER_PASTE': None,
+- 'PP_NUMBER': None,
+- 'PP_DEFINE_NAME': None,
+- 'XOR_ASSIGN': None,
+- 'OR_ASSIGN': None,
+- 'GE_OP': None,
+- 'MUL_ASSIGN': None,
+- 'LEFT_ASSIGN': None,
+- 'INC_OP': None,
+- 'NE_OP': None,
+- 'EQ_OP': None}
+-_lexreflags = 0
+-_lexliterals = ''
++_lextokens = {'RIGHT_OP': None, 'RIGHT_ASSIGN': None, 'DEC_OP': None, 'PP_MACRO_PARAM': None, 'DIV_ASSIGN': None, 'PP_DEFINE': None, 'PP_END_DEFINE': None, 'PP_DEFINE_MACRO_NAME': None, 'HEADER_NAME': None, 'NEWLINE': None, 'CHARACTER_CONSTANT': None, 'PP_STRINGIFY': None, 'AND_ASSIGN': None, 'PTR_OP': None, 'ELLIPSIS': None, 'IDENTIFIER': None, 'ADD_ASSIGN': None, 'PERIOD': None, 'AND_OP': None, 'OTHER': None, 'LPAREN': None, 'LEFT_OP': None, 'LE_OP': None, 'OR_OP': None, 'SUB_ASSIGN': None, 'MOD_ASSIGN': None, 'STRING_LITERAL': None, 'PP_IDENTIFIER_PASTE': None, 'PP_NUMBER': None, 'PP_DEFINE_NAME': None, 'XOR_ASSIGN': None, 'OR_ASSIGN': None, 'GE_OP': None, 'MUL_ASSIGN': None, 'LEFT_ASSIGN': None, 'INC_OP': None, 'NE_OP': None, 'EQ_OP': None}
++_lexreflags = 0
++_lexliterals = ''
+ _lexstateinfo = {'INITIAL': 'inclusive', 'DEFINE': 'exclusive'}
+-_lexstatere = {
+- 'INITIAL': [
+- ('(?P<t_ANY_directive>\\#\\s+(\\d+)\\s+"([^"]+)"[ \\d]*\\n)|(?P<t_ANY_punctuator>(\\.\\.\\.|\\|\\||\\+\\+|\\*=|\\^=|<<=|>>=|\\|=|\\+=|>=|>>|<<|<=|<:|%=|:>|<%|!=|\\)|\\+|\\*|\\.|\\?|==|&=|&&|\\[|\\^|--|/=|%>|-=|->|\\||!|%|&|-|,|/|;|:|=|>|]|<|{|}|~))', [
+- None, ('t_ANY_directive', 'ANY_directive'), None, None, ('t_ANY_punctuator', 'ANY_punctuator')]), ('(?P<t_INITIAL_identifier>[a-zA-Z_]([a-zA-Z_]|[0-9])*)', [
+- None, ('t_INITIAL_identifier', 'INITIAL_identifier')]), ('(?P<t_ANY_float>(?P<p1>[0-9]+)?(?P<dp>[.]?)(?P<p2>(?(p1)[0-9]*|[0-9]+))(?P<exp>(?:[Ee][+-]?[0-9]+)?)(?P<suf>[FflL]?)(?!\\w))', [
+- None, ('t_ANY_float', 'ANY_float'), None, None, None, None, None]), ('(?P<t_ANY_int>(?P<p1>(?:0x[a-fA-F0-9]+)|(?:[0-9]+))(?P<suf>[uUlL]*))', [
+- None, ('t_ANY_int', 'ANY_int'), None, None]), ('(?P<t_ANY_character_constant>L?\'(\\\\.|[^\\\\\'])+\')|(?P<t_ANY_string_literal>L?"(\\\\.|[^\\\\"])*")|(?P<t_ANY_lparen>\\()|(?P<t_INITIAL_newline>\\n)|(?P<t_INITIAL_pp_define>\\#define)', [
+- None, ('t_ANY_character_constant', 'ANY_character_constant'), None, ('t_ANY_string_literal', 'ANY_string_literal'), None, ('t_ANY_lparen', 'ANY_lparen'), ('t_INITIAL_newline', 'INITIAL_newline'), ('t_INITIAL_pp_define', 'INITIAL_pp_define')])], 'DEFINE': [
+- ('(?P<t_ANY_directive>\\#\\s+(\\d+)\\s+"([^"]+)"[ \\d]*\\n)|(?P<t_ANY_punctuator>(\\.\\.\\.|\\|\\||\\+\\+|\\*=|\\^=|<<=|>>=|\\|=|\\+=|>=|>>|<<|<=|<:|%=|:>|<%|!=|\\)|\\+|\\*|\\.|\\?|==|&=|&&|\\[|\\^|--|/=|%>|-=|->|\\||!|%|&|-|,|/|;|:|=|>|]|<|{|}|~))', [
+- None, ('t_ANY_directive', 'ANY_directive'), None, None, ('t_ANY_punctuator', 'ANY_punctuator')]), ('(?P<t_DEFINE_identifier>[a-zA-Z_]([a-zA-Z_]|[0-9])*)', [
+- None, ('t_DEFINE_identifier', 'DEFINE_identifier')]), ('(?P<t_ANY_float>(?P<p1>[0-9]+)?(?P<dp>[.]?)(?P<p2>(?(p1)[0-9]*|[0-9]+))(?P<exp>(?:[Ee][+-]?[0-9]+)?)(?P<suf>[FflL]?)(?!\\w))', [
+- None, ('t_ANY_float', 'ANY_float'), None, None, None, None, None]), ('(?P<t_ANY_int>(?P<p1>(?:0x[a-fA-F0-9]+)|(?:[0-9]+))(?P<suf>[uUlL]*))', [
+- None, ('t_ANY_int', 'ANY_int'), None, None]), ('(?P<t_ANY_character_constant>L?\'(\\\\.|[^\\\\\'])+\')|(?P<t_ANY_string_literal>L?"(\\\\.|[^\\\\"])*")|(?P<t_ANY_lparen>\\()|(?P<t_DEFINE_newline>\\n)|(?P<t_DEFINE_pp_param_op>(\\#\\#)|(\\#))', [
+- None, ('t_ANY_character_constant', 'ANY_character_constant'), None, ('t_ANY_string_literal', 'ANY_string_literal'), None, ('t_ANY_lparen', 'ANY_lparen'), ('t_DEFINE_newline', 'DEFINE_newline'), ('t_DEFINE_pp_param_op', 'DEFINE_pp_param_op')])]}
++_lexstatere = {'INITIAL': [('(?P<t_ANY_directive>\\#\\s+(\\d+)\\s+"([^"]+)"[ \\d]*\\n)|(?P<t_ANY_punctuator>(\\.\\.\\.|\\|\\||\\+\\+|>>=|\\|=|\\^=|<<=|\\*=|\\+=|>=|>>|%=|:>|%>|!=|\\*|\\.|==|\\^|--|-=|->|\\||<<|<=|<:|<%|\\)|\\+|\\?|&=|&&|\\[|/=|&|,|:|<|>|~|!|%|-|/|;|=|]|{|}))', [None, ('t_ANY_directive', 'ANY_directive'), None, None, ('t_ANY_punctuator', 'ANY_punctuator')]), ('(?P<t_INITIAL_identifier>[a-zA-Z_]([a-zA-Z_]|[0-9])*)', [None, ('t_INITIAL_identifier', 'INITIAL_identifier')]), ('(?P<t_ANY_float>(?P<p1>[0-9]+)?(?P<dp>[.]?)(?P<p2>(?(p1)[0-9]*|[0-9]+))(?P<exp>(?:[Ee][+-]?[0-9]+)?)(?P<suf>([FfLl]|d[dfl]|D[DFL]|[fFdD][0-9]+x?)?)(?!\\w))', [None, ('t_ANY_float', 'ANY_float'), None, None, None, None, None]), ('(?P<t_ANY_int>(?P<p1>(?:0x[a-fA-F0-9]+)|(?:[0-9]+))(?P<suf>[uUlL]*))', [None, ('t_ANY_int', 'ANY_int'), None, None]), ('(?P<t_ANY_character_constant>L?\'(\\\\.|[^\\\\\'])+\')|(?P<t_ANY_string_literal>L?"(\\\\.|[^\\\\"])*")|(?P<t_ANY_lparen>\\()|(?P<t_INITIAL_newline>\\n)|(?P<t_INITIAL_pp_define>\\#define)', [None, ('t_ANY_character_constant', 'ANY_character_constant'), None, ('t_ANY_string_literal', 'ANY_string_literal'), None, ('t_ANY_lparen', 'ANY_lparen'), ('t_INITIAL_newline', 'INITIAL_newline'), ('t_INITIAL_pp_define', 'INITIAL_pp_define')])], 'DEFINE': [('(?P<t_ANY_directive>\\#\\s+(\\d+)\\s+"([^"]+)"[ \\d]*\\n)|(?P<t_ANY_punctuator>(\\.\\.\\.|\\|\\||\\+\\+|>>=|\\|=|\\^=|<<=|\\*=|\\+=|>=|>>|%=|:>|%>|!=|\\*|\\.|==|\\^|--|-=|->|\\||<<|<=|<:|<%|\\)|\\+|\\?|&=|&&|\\[|/=|&|,|:|<|>|~|!|%|-|/|;|=|]|{|}))', [None, ('t_ANY_directive', 'ANY_directive'), None, None, ('t_ANY_punctuator', 'ANY_punctuator')]), ('(?P<t_DEFINE_identifier>[a-zA-Z_]([a-zA-Z_]|[0-9])*)', [None, ('t_DEFINE_identifier', 'DEFINE_identifier')]), ('(?P<t_ANY_float>(?P<p1>[0-9]+)?(?P<dp>[.]?)(?P<p2>(?(p1)[0-9]*|[0-9]+))(?P<exp>(?:[Ee][+-]?[0-9]+)?)(?P<suf>([FfLl]|d[dfl]|D[DFL]|[fFdD][0-9]+x?)?)(?!\\w))', [None, ('t_ANY_float', 'ANY_float'), None, None, None, None, None]), ('(?P<t_ANY_int>(?P<p1>(?:0x[a-fA-F0-9]+)|(?:[0-9]+))(?P<suf>[uUlL]*))', [None, ('t_ANY_int', 'ANY_int'), None, None]), ('(?P<t_ANY_character_constant>L?\'(\\\\.|[^\\\\\'])+\')|(?P<t_ANY_string_literal>L?"(\\\\.|[^\\\\"])*")|(?P<t_ANY_lparen>\\()|(?P<t_DEFINE_newline>\\n)|(?P<t_DEFINE_pp_param_op>(\\#\\#)|(\\#))', [None, ('t_ANY_character_constant', 'ANY_character_constant'), None, ('t_ANY_string_literal', 'ANY_string_literal'), None, ('t_ANY_lparen', 'ANY_lparen'), ('t_DEFINE_newline', 'DEFINE_newline'), ('t_DEFINE_pp_param_op', 'DEFINE_pp_param_op')])]}
+ _lexstateignore = {'INITIAL': ' \t\x0b\x0c\r', 'DEFINE': ' \t\x0b\x0c\r'}
+ _lexstateerrorf = {'INITIAL': 't_INITIAL_error', 'DEFINE': 't_DEFINE_error'}
+Index: /grass/branches/releasebranch_7_2/lib/python/ctypes/ctypesgencore/parser/pplexer.py
+===================================================================
+--- /grass/branches/releasebranch_7_2/lib/python/ctypes/ctypesgencore/parser/pplexer.py (revision 71218)
++++ /grass/branches/releasebranch_7_2/lib/python/ctypes/ctypesgencore/parser/pplexer.py (revision 71219)
+@@ -53,5 +53,5 @@
+ 'H': '[a-fA-F0-9]',
+ 'E': '[Ee][+-]?\s*{D}+',
+- 'FS': '[FflL]',
++ 'FS': '([FfLl]|d[dfl]|D[DFL]|[fFdD][0-9]+x?)',
+ 'IS': '[uUlL]*',
+ }
+@@ -227,8 +227,8 @@
+ suf = m.group("suf")
+
+- if dp or exp or (suf and suf in ("Ff")):
++ if dp or exp or (suf and suf not in ("Ll")):
+ s = m.group(0)
+ if suf:
+- s = s[:-1]
++ s = s[:-len(suf)]
+ # Attach a prefix so the parser can figure out if should become an
+ # integer, float, or long
diff --git a/gis/grass/grass.SlackBuild b/gis/grass/grass.SlackBuild
index 8f1b6cc3ef..1b93e6deb8 100644
--- a/gis/grass/grass.SlackBuild
+++ b/gis/grass/grass.SlackBuild
@@ -119,6 +119,8 @@ done
# geos now always enabled: it's an indirect hard dep (via gdal), and makes grass nicer :-)
+patch -p4 < $CWD/gcc7.patch
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS -fpermissive" \
LDFLAGS="-ldl -lncurses" \
diff --git a/graphics/Blender/0001-Added-extra-const-to-satisfy-the-strict-clang-versio.patch b/graphics/Blender/0001-Added-extra-const-to-satisfy-the-strict-clang-versio.patch
new file mode 100644
index 0000000000..b0e6f765d2
--- /dev/null
+++ b/graphics/Blender/0001-Added-extra-const-to-satisfy-the-strict-clang-versio.patch
@@ -0,0 +1,25 @@
+From ee30a4381f8989ed9f39b4baae9f74e45c9dcdc9 Mon Sep 17 00:00:00 2001
+From: Stefan Werner <stewreo@gmail.com>
+Date: Wed, 20 Sep 2017 21:47:37 +0200
+Subject: [PATCH] Added extra "const" to satisfy the strict clang version in
+ Xcode 9
+
+---
+ intern/itasc/kdl/tree.hpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/intern/itasc/kdl/tree.hpp b/intern/itasc/kdl/tree.hpp
+index c8a253fc901..bd35f82d185 100644
+--- a/intern/itasc/kdl/tree.hpp
++++ b/intern/itasc/kdl/tree.hpp
+@@ -34,7 +34,7 @@ namespace KDL
+ //Forward declaration
+ class TreeElement;
+ // Eigen allocator is needed for alignment of Eigen data types
+- typedef std::map<std::string,TreeElement, std::less<std::string>, Eigen::aligned_allocator<std::pair<std::string, TreeElement> > > SegmentMap;
++ typedef std::map<std::string,TreeElement, std::less<std::string>, Eigen::aligned_allocator<std::pair<const std::string, TreeElement> > > SegmentMap;
+
+ class TreeElement
+ {
+--
+2.13.7
diff --git a/graphics/Blender/0001-Cycles-Fix-bad-register-cast-in-sseb.patch b/graphics/Blender/0001-Cycles-Fix-bad-register-cast-in-sseb.patch
new file mode 100644
index 0000000000..a4abe36c49
--- /dev/null
+++ b/graphics/Blender/0001-Cycles-Fix-bad-register-cast-in-sseb.patch
@@ -0,0 +1,25 @@
+From be587d76efff6610f3b6d65cf42f1ee31ec3bdee Mon Sep 17 00:00:00 2001
+From: Sergey Sharybin <sergey.vfx@gmail.com>
+Date: Wed, 28 Mar 2018 10:34:31 +0200
+Subject: [PATCH] Cycles: Fix bad register cast in sseb
+
+This is currently unused code, but causes gcc-8 to fail.
+---
+ intern/cycles/util/util_sseb.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/intern/cycles/util/util_sseb.h b/intern/cycles/util/util_sseb.h
+index 93c22aafdcd..977976c3fc0 100644
+--- a/intern/cycles/util/util_sseb.h
++++ b/intern/cycles/util/util_sseb.h
+@@ -119,7 +119,7 @@ __forceinline const sseb unpacklo( const sseb& a, const sseb& b ) { return _mm_u
+ __forceinline const sseb unpackhi( const sseb& a, const sseb& b ) { return _mm_unpackhi_ps(a, b); }
+
+ template<size_t i0, size_t i1, size_t i2, size_t i3> __forceinline const sseb shuffle( const sseb& a ) {
+- return _mm_shuffle_epi32(a, _MM_SHUFFLE(i3, i2, i1, i0));
++ return _mm_castsi128_ps(_mm_shuffle_epi32(a, _MM_SHUFFLE(i3, i2, i1, i0)));
+ }
+
+ template<> __forceinline const sseb shuffle<0, 1, 0, 1>( const sseb& a ) {
+--
+2.13.7
diff --git a/graphics/Blender/Blender.SlackBuild b/graphics/Blender/Blender.SlackBuild
index 9e545177ad..d067b1a81a 100644
--- a/graphics/Blender/Blender.SlackBuild
+++ b/graphics/Blender/Blender.SlackBuild
@@ -75,6 +75,10 @@ find -L . \
patch -p0 < $CWD/buildinfo-$VERSION.diff
patch -p1 < $CWD/use-libopenmj2-for-openjpeg.diff
+# A couple of patches for the new compiler - thanks opensuse fellas!
+patch -p1 < $CWD/0001-Added-extra-const-to-satisfy-the-strict-clang-versio.patch
+patch -p1 < $CWD/0001-Cycles-Fix-bad-register-cast-in-sseb.patch
+
mkdir -p build
cd build
cmake ../ \
diff --git a/graphics/fontforge/fontforge.SlackBuild b/graphics/fontforge/fontforge.SlackBuild
index c098553cd2..e0dd1557eb 100644
--- a/graphics/fontforge/fontforge.SlackBuild
+++ b/graphics/fontforge/fontforge.SlackBuild
@@ -30,7 +30,7 @@ BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
ENABLE_BCINT=${ENABLE_BCINT:-yes}
-FREETYPE=${FREETYPE:-"2.6.3"}
+FREETYPE=${FREETYPE:-"2.8"}
GNULIB=${GNULIB:-"20140202"}
UTHASH=${UTHASH:-"1.9.9"}
diff --git a/graphics/fontforge/fontforge.info b/graphics/fontforge/fontforge.info
index 1001cdeb72..b56e159af3 100644
--- a/graphics/fontforge/fontforge.info
+++ b/graphics/fontforge/fontforge.info
@@ -3,12 +3,12 @@ VERSION="20170731"
HOMEPAGE="http://fontforge.sourceforge.net/"
DOWNLOAD="https://github.com/fontforge/fontforge/archive/20170731/fontforge-20170731.tar.gz \
http://fontforge.sf.net/cidmaps.tgz \
- http://mirrors.slackware.com/slackware/slackware-14.2/source/l/freetype/freetype-2.6.3.tar.xz \
+ http://ponce.cc/slackware/sources/repo/freetype-2.8.tar.xz \
http://http.debian.net/debian/pool/main/g/gnulib/gnulib_20140202+stable.orig.tar.gz \
https://github.com/troydhanson/uthash/archive/v1.9.9/uthash-1.9.9.tar.gz"
MD5SUM="bb900084aa890eca7cc216e740091b0b \
063691163e592515b31514515bb3ce8c \
- c806890db47d8ad8887253a926377e33 \
+ 37546d6d07d8a9ed2ef5f0b1ecee6228 \
5fc03f07046c2349449db963602b9522 \
c3ce9197c818dcb7ca85b59912f310a4"
DOWNLOAD_x86_64=""
diff --git a/graphics/goocanvas/goocanvas.SlackBuild b/graphics/goocanvas/goocanvas.SlackBuild
index 1987660272..d20f708333 100644
--- a/graphics/goocanvas/goocanvas.SlackBuild
+++ b/graphics/goocanvas/goocanvas.SlackBuild
@@ -68,6 +68,7 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+export LDFLAGS="-ldl -lm"
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
diff --git a/graphics/graphite2/README b/graphics/graphite2/README
deleted file mode 100644
index 8084db6fb0..0000000000
--- a/graphics/graphite2/README
+++ /dev/null
@@ -1,8 +0,0 @@
-Graphite is a system that can be used to create "smart fonts" capable
-of displaying writing systems with various complex behaviors. A smart
-font contains not only letter shapes but also additional instructions
-indicating how to combine and position the letters in complex ways.
-
-Graphite was primarily developed to provide the flexibility needed for
-minority languages which often need to be written according to slightly
-different rules than well-known languages that use the same script.
diff --git a/graphics/graphite2/graphite2.SlackBuild b/graphics/graphite2/graphite2.SlackBuild
deleted file mode 100644
index ed4a1ef360..0000000000
--- a/graphics/graphite2/graphite2.SlackBuild
+++ /dev/null
@@ -1,96 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for graphite2
-
-# Copyright 2015-2018 Hunter Sezen California, USA
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=graphite2
-VERSION=${VERSION:-1.3.13}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -eu
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tgz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-mkdir -p build
-cd build
- cmake \
- -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DLIB_SUFFIX=${LIBDIRSUFFIX} \
- -DCMAKE_BUILD_TYPE=Release \
- -Wno-dev ..
- make
- make install DESTDIR=$PKG
-cd ..
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" |
- grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a COPYING ChangeLog LICENSE README.md Todo.txt $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/graphics/graphite2/graphite2.info b/graphics/graphite2/graphite2.info
deleted file mode 100644
index ad548f6c1b..0000000000
--- a/graphics/graphite2/graphite2.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="graphite2"
-VERSION="1.3.13"
-HOMEPAGE="http://graphite.sil.org/"
-DOWNLOAD="https://github.com/silnrsi/graphite/releases/download/1.3.13/graphite2-1.3.13.tgz"
-MD5SUM="29616d4f9651706036ca25c111508272"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Hunter Sezen"
-EMAIL="orbea@fredslev.dk"
diff --git a/graphics/graphite2/slack-desc b/graphics/graphite2/slack-desc
deleted file mode 100644
index fb3e6e8418..0000000000
--- a/graphics/graphite2/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-graphite2: graphite2 (rendering engine for graphite fonts)
-graphite2:
-graphite2: Graphite is a system that can be used to create "smart fonts" capable
-graphite2: of displaying writing systems with various complex behaviors. A smart
-graphite2: font contains not only letter shapes but also additional instructions
-graphite2: indicating how to combine and position the letters in complex ways.
-graphite2:
-graphite2: Homepage: http://graphite.sil.org/
-graphite2:
-graphite2:
-graphite2:
diff --git a/graphics/graphviz/graphviz.SlackBuild b/graphics/graphviz/graphviz.SlackBuild
index 5593f2ecf0..7909f5b0ad 100644
--- a/graphics/graphviz/graphviz.SlackBuild
+++ b/graphics/graphviz/graphviz.SlackBuild
@@ -89,6 +89,7 @@ LDFLAGS="-L/usr/lib${LIBDIRSUFFIX}" \
--mandir=/usr/man \
--disable-static \
--enable-ocaml=no \
+ --enable-php=no \
--build=$ARCH-slackware-linux
make
diff --git a/graphics/k3d/README b/graphics/k3d/README
index b156272092..73741ac528 100644
--- a/graphics/k3d/README
+++ b/graphics/k3d/README
@@ -7,7 +7,6 @@ patches, curves and animation.
Optional dependencies:
-graphviz
gtksourceview
libgnome
OpenCASCADE
diff --git a/graphics/k3d/gcc7.patch b/graphics/k3d/gcc7.patch
new file mode 100644
index 0000000000..887eeb8bd3
--- /dev/null
+++ b/graphics/k3d/gcc7.patch
@@ -0,0 +1,23 @@
+From d9786540a205bec0b381f339497d7c2cce00376b Mon Sep 17 00:00:00 2001
+From: Jonathan Wakely <jwakely@redhat.com>
+Date: Wed, 1 Feb 2017 02:07:28 +0000
+Subject: [PATCH] Add required header for ostream operations
+
+This file uses std::ostream::operator<<(double) without including
+<ostream> and so fails to compile using GCC 7.
+---
+ k3dsdk/measurement.h | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/k3dsdk/measurement.h b/k3dsdk/measurement.h
+index 9edf7aef..67df5aa0 100644
+--- a/k3dsdk/measurement.h
++++ b/k3dsdk/measurement.h
+@@ -27,6 +27,7 @@
+
+ #include <cassert>
+ #include <iosfwd>
++#include <ostream>
+ #include <map>
+ #include <string>
+ #include <typeinfo>
diff --git a/graphics/k3d/k3d.SlackBuild b/graphics/k3d/k3d.SlackBuild
index 7b6cea7db5..1dc959a907 100644
--- a/graphics/k3d/k3d.SlackBuild
+++ b/graphics/k3d/k3d.SlackBuild
@@ -73,6 +73,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# From upstream
+patch -p1 < $CWD/gcc7.patch
+
# Fix man install directory.
sed -i "s|share/man|man|" share/man/CMakeLists.txt
diff --git a/graphics/k3d/k3d.info b/graphics/k3d/k3d.info
index 598878a4fa..9fe29db7ef 100644
--- a/graphics/k3d/k3d.info
+++ b/graphics/k3d/k3d.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://github.com/K-3D/k3d/archive/k3d-0.8.0.6/k3d-k3d-0.8.0.6.tar.gz
MD5SUM="129e051a1e724c14139808c25cd170f0"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="gtkglext ftgl"
+REQUIRES="graphviz gtkglext ftgl"
MAINTAINER="David Spencer"
EMAIL="baildon.research@googlemail.com"
diff --git a/graphics/kuickshow/kuickshow.SlackBuild b/graphics/kuickshow/kuickshow.SlackBuild
index 6a82e2deba..e11058c674 100644
--- a/graphics/kuickshow/kuickshow.SlackBuild
+++ b/graphics/kuickshow/kuickshow.SlackBuild
@@ -71,6 +71,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+export CC=clang
+export CXX=clang++
+
mkdir -p build
cd build
cmake \
@@ -86,6 +89,11 @@ cd ..
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+mkdir -p $PKG/usr/doc
+mv $PKG/usr/share/doc $PKG/usr/doc/$PRGNAM-$VERSION
+cp AUTHORS BUGS COPYING ChangeLog README TODO $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
diff --git a/graphics/mypaint/mypaint.SlackBuild b/graphics/mypaint/mypaint.SlackBuild
index 089622dfa1..12fb75d6bb 100644
--- a/graphics/mypaint/mypaint.SlackBuild
+++ b/graphics/mypaint/mypaint.SlackBuild
@@ -12,13 +12,13 @@
# without any warranty.
PRGNAM=mypaint
-VERSION=${VERSION:-1.2.0}
+VERSION=${VERSION:-1.2.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -29,8 +29,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
diff --git a/graphics/mypaint/mypaint.info b/graphics/mypaint/mypaint.info
index a17cd09e13..588da4bfbd 100644
--- a/graphics/mypaint/mypaint.info
+++ b/graphics/mypaint/mypaint.info
@@ -1,10 +1,10 @@
PRGNAM="mypaint"
-VERSION="1.2.0"
+VERSION="1.2.1"
HOMEPAGE="http://mypaint.org/"
-DOWNLOAD="https://github.com/mypaint/mypaint/releases/download/v1.2.0/mypaint-1.2.0.tar.xz"
-MD5SUM="c7c2cfac8e1eec5549e58567ec68daac"
+DOWNLOAD="https://github.com/mypaint/mypaint/releases/download/v1.2.1/mypaint-1.2.1.tar.xz"
+MD5SUM="ac08c3135929f5641488fbbb9746fe41"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="numpy"
+REQUIRES="json-c numpy"
MAINTAINER="Klaatu"
EMAIL="klaatu@member.fsf.org"
diff --git a/graphics/opencollada/opencollada.SlackBuild b/graphics/opencollada/opencollada.SlackBuild
index 798cd196e5..f62bf8607d 100644
--- a/graphics/opencollada/opencollada.SlackBuild
+++ b/graphics/opencollada/opencollada.SlackBuild
@@ -70,6 +70,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# https://github.com/KhronosGroup/OpenCOLLADA/issues/570
+patch -p1 < $CWD/pcre.patch
+
mkdir -p build
cd build
cmake ../ \
diff --git a/graphics/opencollada/pcre.patch b/graphics/opencollada/pcre.patch
new file mode 100644
index 0000000000..fe8c01a5b0
--- /dev/null
+++ b/graphics/opencollada/pcre.patch
@@ -0,0 +1,13 @@
+diff -Naur OpenCOLLADA-1.6.62.orig/COLLADABaseUtils/include/COLLADABUPcreCompiledPattern.h OpenCOLLADA-1.6.62/COLLADABaseUtils/include/COLLADABUPcreCompiledPattern.h
+--- OpenCOLLADA-1.6.62.orig/COLLADABaseUtils/include/COLLADABUPcreCompiledPattern.h 2018-01-13 01:23:52.000000000 +0100
++++ OpenCOLLADA-1.6.62/COLLADABaseUtils/include/COLLADABUPcreCompiledPattern.h 2018-07-08 08:40:38.764948000 +0200
+@@ -13,8 +13,7 @@
+
+ #include "COLLADABUPrerequisites.h"
+
+-struct real_pcre;
+-typedef struct real_pcre pcre;
++#include "pcre.h"
+
+
+ namespace COLLADABU
diff --git a/graphics/opencolorio/opencolorio.SlackBuild b/graphics/opencolorio/opencolorio.SlackBuild
index caffe8c1e4..9cccacf6b3 100644
--- a/graphics/opencolorio/opencolorio.SlackBuild
+++ b/graphics/opencolorio/opencolorio.SlackBuild
@@ -82,7 +82,7 @@ for v in $PYTHON_VERSIONS ; do
cd build
cmake \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS -Wno-error=deprecated-declarations -Wno-error=cast-function-type" \
-DCMAKE_INSTALL_PREFIX=/usr \
-DLIB_SUFFIX=${LIBDIRSUFFIX} \
-DPYTHON=python$v \
diff --git a/graphics/openimageio/openimageio.SlackBuild b/graphics/openimageio/openimageio.SlackBuild
index f96cd057de..31d3f9833f 100644
--- a/graphics/openimageio/openimageio.SlackBuild
+++ b/graphics/openimageio/openimageio.SlackBuild
@@ -77,14 +77,17 @@ find -L . \
# Remove bundled pugixml
#rm -f src/include/OpenImageIO/pugi*
-# save this for GCC 7.0
-#sed -i "s|std=c++11|std=c++11 -Wno-error=maybe-uninitialized -Wno-error=format-truncation -Wno-error=noexcept-type -faligned-new|" CMakeLists.txt
+# newer compilers are stricter
+ADD_FLAGS="-Wno-error=maybe-uninitialized -Wno-error=format-truncation -Wno-error=noexcept-type -faligned-new -Wno-error=stringop-truncation -Wno-error=sizeof-pointer-memaccess -Wno-error=class-memaccess"
+
+# needed for the newer boost
+sed -i "s|python-py|python|" src/python/CMakeLists.txt
mkdir -p build
cd build
cmake ../ \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS -std=c++11" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS -std=c++11 $ADD_FLAGS" \
-DOPENJPEG_INCLUDE_DIR="/usr/include/openmj2-2.1" \
-DOPENJPEG_OPENJPEG_LIBRARIES="openmj2" \
-DCMAKE_BUILD_TYPE=Release \
diff --git a/graphics/photoprint/photoprint.SlackBuild b/graphics/photoprint/photoprint.SlackBuild
index 22b0eb2085..f90aed312a 100644
--- a/graphics/photoprint/photoprint.SlackBuild
+++ b/graphics/photoprint/photoprint.SlackBuild
@@ -63,8 +63,6 @@ rm -rf $PRGNAM-$SRCVERSION
tar xvf $CWD/$PRGNAM-$SRCVERSION.tar.gz
cd $PRGNAM-$SRCVERSION
-find . -name "*.cpp" | xargs sed -i 's%glib/.*.h%glib.h%g'
-
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -72,6 +70,24 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+# sed magic thanks to archlinux
+sed -i 's|^#include <glib/[^>]*>|#include <glib.h>|' \
+ gp_cppsupport/gprintersettings.cpp \
+ gp_cppsupport/gprinter.cpp \
+ pixbufthumbnail/egg-pixbuf-thumbnail.c
+# netpbm-typedef collides with std::tuple
+for __file in imagesource/*.{h,cpp}; do
+ sed -i \
+ -e 's|^\(using namespace std;\)|// \1|' \
+ -e 's|<<[[:blank:]]*\(endl[[:blank:];]*\)|<< std::\1|g' \
+ -e 's|^[^#]\([[:blank:]]\)*\([io]*fstream[[:blank:]]\)|\1std::\2|g' \
+ -e 's#\([[:blank:]|&~^,()=+-]\)\(ios::\)#\1std::\2#g' \
+ $__file
+done
+sed -i '116s|false|NULL|' effects/ppeffect.cpp
+# limit use of 'g_type_init()' to GLIB<2.35 (deprecated use)
+sed -i 's/^\([[:blank:]]*g_type_init();[[:blank:]]*\)$/#if !GLIB_CHECK_VERSION(2,35,0)\n\1\n#endif/' photoprint.cpp
+
LDFLAGS="-lX11" \
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
diff --git a/graphics/potrace/potrace.SlackBuild b/graphics/potrace/potrace.SlackBuild
index d4aadb4bb3..b86224a5a6 100644
--- a/graphics/potrace/potrace.SlackBuild
+++ b/graphics/potrace/potrace.SlackBuild
@@ -90,7 +90,6 @@ chmod -R u+w,go-w,a+rX-st .
CFLAGS="$SLKCFLAGS" \
make
-make check
make install-strip DESTDIR=$PKG
find $PKG/usr/lib${LIBDIRSUFFIX} -name '*.la' -delete
diff --git a/graphics/povray/povray.SlackBuild b/graphics/povray/povray.SlackBuild
index b6372da8c2..4f35a86f34 100644
--- a/graphics/povray/povray.SlackBuild
+++ b/graphics/povray/povray.SlackBuild
@@ -26,8 +26,8 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=povray
-VERSION=${VERSION:-3.7.0.0}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-3.7.0.3}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
DOCDIR=${DOCDIR:-/usr/doc}
MANDIR=${MANDIR:-/usr/man}
@@ -70,11 +70,7 @@ set -e
rm -rf $TMP/$PRGNAM-$VERSION $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-if [ -f $CWD/v$VERSION.tar.?z* ]; then
- tar xvf $CWD/v$VERSION.tar.?z*
-else
- tar xvf $CWD/$PRGNAM-$VERSION.tar.?z*
-fi
+tar xvf $CWD/$PRGNAM-$VERSION.tar.?z*
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
diff --git a/graphics/povray/povray.info b/graphics/povray/povray.info
index 5f8c0b00f8..412a665356 100644
--- a/graphics/povray/povray.info
+++ b/graphics/povray/povray.info
@@ -1,8 +1,8 @@
PRGNAM="povray"
-VERSION="3.7.0.0"
+VERSION="3.7.0.3"
HOMEPAGE="http://www.povray.org/"
-DOWNLOAD="https://github.com/POV-Ray/povray/archive/v3.7.0.0.tar.gz"
-MD5SUM="c6866a3d71e38754f24b11da6c996b8e"
+DOWNLOAD="https://github.com/POV-Ray/povray/archive/v3.7.0.3/povray-3.7.0.3.tar.gz"
+MD5SUM="1f00b96b71db59e2ea80a8b86e62648f"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/graphics/rawstudio/rawstudio.SlackBuild b/graphics/rawstudio/rawstudio.SlackBuild
index 30ec653dcb..7a928498aa 100644
--- a/graphics/rawstudio/rawstudio.SlackBuild
+++ b/graphics/rawstudio/rawstudio.SlackBuild
@@ -89,7 +89,7 @@ patch -p1 < $CWD/patches/lensfun03.patch
patch -p1 < $CWD/patches/libpng15.patch
CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS -Wno-error=narrowing" \
./configure \
--prefix=/usr \
--sysconfdir=/etc \
diff --git a/graphics/simple-scan/simple-scan.SlackBuild b/graphics/simple-scan/simple-scan.SlackBuild
index f781cab523..5fd5429ca8 100644
--- a/graphics/simple-scan/simple-scan.SlackBuild
+++ b/graphics/simple-scan/simple-scan.SlackBuild
@@ -26,7 +26,7 @@
# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM="simple-scan"
-VERSION=${VERSION:-3.25.1}
+VERSION=${VERSION:-3.30.1.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
diff --git a/graphics/simple-scan/simple-scan.info b/graphics/simple-scan/simple-scan.info
index 5c6d85d344..9f33f5941c 100644
--- a/graphics/simple-scan/simple-scan.info
+++ b/graphics/simple-scan/simple-scan.info
@@ -1,8 +1,8 @@
PRGNAM="simple-scan"
-VERSION="3.25.1"
-HOMEPAGE="https://launchpad.net/simple-scan"
-DOWNLOAD="https://launchpad.net/simple-scan/3.25/3.25.1/+download/simple-scan-3.25.1.tar.xz"
-MD5SUM="6bff2b9bdfb529e21582f4a65c3f2d27"
+VERSION="3.30.1.1"
+HOMEPAGE="https://gitlab.gnome.org/GNOME/simple-scan"
+DOWNLOAD="https://gitlab.gnome.org/GNOME/simple-scan/-/archive/3.30.1.1/simple-scan-3.30.1.1.tar.bz2"
+MD5SUM="0f4da95ee93ee2eb5421af16100190c9"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="colord packagekit meson libgusb vala"
diff --git a/graphics/simple-scan/slack-desc b/graphics/simple-scan/slack-desc
index d201d02f6e..3fb33b54f3 100644
--- a/graphics/simple-scan/slack-desc
+++ b/graphics/simple-scan/slack-desc
@@ -11,8 +11,8 @@ simple-scan:
simple-scan: simple-scan is a simple scanning utility without the overwhelming
simple-scan: options of xsane.
simple-scan:
+simple-scan: Homepage: https://gitlab.gnome.org/GNOME/simple-scan
simple-scan:
-simple-scan: Homepage: https://launchpad.net/simple-scan
simple-scan:
simple-scan:
simple-scan:
diff --git a/graphics/vulkansdk/README b/graphics/vulkansdk/README
deleted file mode 100644
index 14e1886dc4..0000000000
--- a/graphics/vulkansdk/README
+++ /dev/null
@@ -1,15 +0,0 @@
-The Vulkan SDK provides the development and runtime components
-required to build, run and debug Vulkan applications. This SDK is
-based on the Vulkan API header. The SDK also includes certain Vulkan
-extensions for window system integration and debug extensions.
-
-The Vulkan API is a low overhead, explicit, cross-platform graphics
-API that provides applications with direct control over the GPU,
-maximizing performance.
-
-The SDK does not include a Vulkan driver. Please contact your
-CPU hardware vendor for a Vulkan Installable Client Driver (ICD).
-This SDK will allow you to build Vulkan applications but you will
-need a Vulkan driver (ICD) to execute them.
-
-The SDK is only supported on x86_64 systems.
diff --git a/graphics/vulkansdk/slack-desc b/graphics/vulkansdk/slack-desc
deleted file mode 100644
index 1e060c8b6c..0000000000
--- a/graphics/vulkansdk/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-vulkansdk: vulkansdk (Vulkan SDK)
-vulkansdk:
-vulkansdk: The Vulkan SDK provides the development and runtime components
-vulkansdk: required to build, run and debug Vulkan applications. This SDK is
-vulkansdk: based on the Vulkan API header. Th SDK also includes certain Vulkan
-vulkansdk: extensions for window system integration and debug extensions.
-vulkansdk:
-vulkansdk: The Vulkan API is a low overhead, explicit, cross-platform graphics
-vulkansdk: API that provides applications with direct control over the GPU,
-vulkansdk: maximizing performance.
-vulkansdk:
diff --git a/graphics/vulkansdk/vulkansdk.SlackBuild b/graphics/vulkansdk/vulkansdk.SlackBuild
deleted file mode 100644
index f2b7433dec..0000000000
--- a/graphics/vulkansdk/vulkansdk.SlackBuild
+++ /dev/null
@@ -1,84 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for vulkansdk
-
-# Copyright 2017 Dugan Chen Canada
-# 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.
-
-PRGNAM=vulkansdk
-VERSION=${VERSION:-1.1.70.0}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "x86_64" ]; then
- LIBDIRSUFFIX="64"
-else
- echo "$ARCH is not supported." >&2
- exit 1
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf VulkanSDK $PRGNAM-linux-$ARCH-$VERSION.run
-cp $CWD/$PRGNAM-linux-$ARCH-$VERSION.run .
-chmod +x $PRGNAM-linux-$ARCH-$VERSION.run
-./$PRGNAM-linux-$ARCH-$VERSION.run
-cd VulkanSDK
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-mkdir -p $PKG/usr/lib$LIBDIRSUFFIX
-cp -r $VERSION/$ARCH/lib/* $PKG/usr/lib$LIBDIRSUFFIX
-mkdir -p $PKG/{usr/bin,etc,usr/include}
-cp -r $VERSION/$ARCH/bin/* $PKG/usr/bin
-cp -r $VERSION/$ARCH/etc/* $PKG/etc
-cp -r $VERSION/$ARCH/include/* $PKG/usr/include
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a \
- $VERSION/{*.html,doc/,samples/,examples} \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/graphics/vulkansdk/vulkansdk.info b/graphics/vulkansdk/vulkansdk.info
deleted file mode 100644
index 69239c238f..0000000000
--- a/graphics/vulkansdk/vulkansdk.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="vulkansdk"
-VERSION="1.1.70.0"
-HOMEPAGE="https://www.lunarg.com/vulkan-sdk/"
-DOWNLOAD="UNSUPPORTED"
-MD5SUM=""
-DOWNLOAD_x86_64="https://vulkan.lunarg.com/sdk/download/1.1.70.0/linux/vulkansdk-linux-x86_64-1.1.70.0.run"
-MD5SUM_x86_64="98c6614ecd0979466bde74b88aa1e420"
-REQUIRES=""
-MAINTAINER="Dugan Chen"
-EMAIL="thedoogster [at] gmail [dot] com"
diff --git a/graphics/yafaray-blender/yafaray-blender.SlackBuild b/graphics/yafaray-blender/yafaray-blender.SlackBuild
index c2a0c49b98..f72c5b24fe 100644
--- a/graphics/yafaray-blender/yafaray-blender.SlackBuild
+++ b/graphics/yafaray-blender/yafaray-blender.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/sh
-# Slackware build script for yafaray
+# Slackware build script for yafaray-blender
# Copyright (c) 2009 Alan Alberghini <414N@slacky.it>
# All rights reserved.
@@ -29,7 +29,7 @@
# 1 - Initial release.
PRGNAM=yafaray-blender
-VERSION=${VERSION:-0.1.1}
+VERSION=${VERSION:-3.2.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -40,28 +40,26 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-BLENDER_PLUGIN_DIR="/opt/blender/script"
+BLENDER_PLUGIN_DIR="/opt/blender/scripts/addons"
set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM
-unzip "$CWD/YafaRay-blender.${VERSION}.zip"
-cd $PRGNAM
+rm -rf Blender-Exporter-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd Blender-Exporter-$VERSION
chown -R root:root .
find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-mkdir -p ${PKG}/usr/share/yafaray/blender ${PKG}/${BLENDER_PLUGIN_DIR}
-cp -t ${PKG}/usr/share/yafaray/blender *.py
-
-# This link is needed to install the plugin system-wide
-ln -sf /usr/share/yafaray/blender/yafaray_ui.py ${PKG}/${BLENDER_PLUGIN_DIR}
+cd ..
+mkdir -p ${PKG}${BLENDER_PLUGIN_DIR}
+mv Blender-Exporter-$VERSION ${PKG}${BLENDER_PLUGIN_DIR}/yafaray_v3
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
diff --git a/graphics/yafaray-blender/yafaray-blender.info b/graphics/yafaray-blender/yafaray-blender.info
index 026dcdf5f8..9756fb5c1a 100644
--- a/graphics/yafaray-blender/yafaray-blender.info
+++ b/graphics/yafaray-blender/yafaray-blender.info
@@ -1,8 +1,8 @@
PRGNAM="yafaray-blender"
-VERSION="0.1.1"
+VERSION="3.2.0"
HOMEPAGE="http://www.yafaray.org"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/YafaRay-blender.0.1.1.zip"
-MD5SUM="d7e7f86b9e90e7f960707ebaea1843ab"
+DOWNLOAD="https://github.com/YafaRay/Blender-Exporter/archive/v3.2.0/yafaray-blender-3.2.0.tar.gz"
+MD5SUM="1660eb796fb204f07691dd0571f4bceb"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="yafaray blender"
diff --git a/graphics/yafaray/README b/graphics/yafaray/README
index 0634be71c9..29763c62d7 100644
--- a/graphics/yafaray/README
+++ b/graphics/yafaray/README
@@ -2,10 +2,6 @@ YafaRay is a free open-source raytracing engine. Raytracing is a rendering
technique for generating realistic images by tracing the path of light
through a 3D scene.
-This package is built by default with QT4 support (needed if you intend to use
-the blender plugin too). If you don't want it, launch the script as follows:
-# USEQT=no ./yafaray.SlackBuild (assuming you're root)
+python3 is an optional dependency, to enable python bindings.
-You can also build Python bindings, provided you have swig and Python
-installed. Simply run
-# BUILDPYTHON=yes ./yafaray.SlackBuild (always assuming you're root)
+To disable building the Qt gui pass the script the variable QTGUI=OFF
diff --git a/graphics/yafaray/yafaray.SlackBuild b/graphics/yafaray/yafaray.SlackBuild
index c5c40c292b..9b2ee9e9dd 100644
--- a/graphics/yafaray/yafaray.SlackBuild
+++ b/graphics/yafaray/yafaray.SlackBuild
@@ -29,14 +29,16 @@
# 1.0 - Initial release.
# 1.1 - Removed a bashism (==) to become ash-compatible.
+# Modified by the SlackBuilds.org project
+
PRGNAM=yafaray
-VERSION=${VERSION:-0.1.1}
+VERSION=${VERSION:-3.2.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -47,14 +49,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-DOCS="LICENSE CODING INSTALL"
-# Set to yes to build the qt4 gui (needs qt4)
-USEQT=${USEQT:-yes}
-# Set to yes to build python bindings too (needs swig)
-BUILDPYTHON=${BUILDPYTHON:-no}
-
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -72,61 +68,37 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM
-unzip "$CWD/YafaRay.${VERSION}.zip"
-cd $PRGNAM
+rm -rf Core-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd Core-$VERSION
chown -R root:root .
find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
-
-if [ ${USEQT} = yes ]; then
- QTTARGET="YF_QTDIR=/usr WITH_YF_QT=true"
-else
- QTTARGET=""
-fi
-
-# The build system is kinda 'naive': it hardcodes the PREFIX and other
-# directories specified at configure-time into the final libs, so we can't
-# specify PREFIX=${PKG}/usr, YF_LIBOUT=${PKG}/usr/lib.. because, when the
-# package will be installed, the program will try to find its libraries in a
-# /tmp path, and not in /usr/lib/yafaray as it should.
-# An easy workaround is to exploit the included debian package creator to
-# install all the files in a temporary location without having to specify a
-# "fake" PREFIX location. However, this seems to be glitchy too, as specifying
-# a different YF_PACKPATH doesn't seem to work fine, so we have to manually
-# copy the files from the temporary debian build path to $PKG in the end.
-
-if [ ${BUILDPYTHON} = no ]; then
- scons debian $QTTARGET PREFIX=/usr \
- YF_LIBOUT=/usr/lib${LIBDIRSUFFIX} \
- YF_PLUGINPATH=/usr/lib${LIBDIRSUFFIX}/yafaray \
- REL_CCFLAGS="${SLKCFLAGS}" || echo "Don't worry about the dpkg error"
-else
- scons swig debian $QTTARGET PREFIX=/usr \
- YF_LIBOUT=/usr/lib${LIBDIRSUFFIX} \
- YF_PLUGINPATH=/usr/lib${LIBDIRSUFFIX}/yafaray \
- REL_CCFLAGS="${SLKCFLAGS}" || echo "Don't worry about the dpkg error"
- # Install also python bindings (manually T_T)
- mkdir -p ${PKG}/usr/lib${LIBDIRSUFFIX}/python2.6/site-packages
- mv bindings/python/* ${PKG}/usr/lib${LIBDIRSUFFIX}/python2.6/site-packages/
-fi
-
-# Copy "debian" package root to our package root.
-# mv may complain if the python bindings have already been
-# moved to their new home, hence we use cp + rm.
-cp -r debian/${PRGNAM}/* ${PKG}
-rm -rf debian/${PRGNAM}
-
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+mkdir -p build
+cd build
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DYAF_LIB_DIR=lib$LIBDIRSUFFIX \
+ -DWITH_QT=${QTGUI:-ON} \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make
+ make install DESTDIR=$PKG
+cd ..
+
+# We install these manually
+rm -fR $PKG/usr/share/doc
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a \
- $DOCS \
- $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a AUTHORS CHANGELOG CODING LICENSES README $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/graphics/yafaray/yafaray.info b/graphics/yafaray/yafaray.info
index a65706fcc5..c6af52edc6 100644
--- a/graphics/yafaray/yafaray.info
+++ b/graphics/yafaray/yafaray.info
@@ -1,10 +1,10 @@
PRGNAM="yafaray"
-VERSION="0.1.1"
+VERSION="3.2.0"
HOMEPAGE="http://www.yafaray.org"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/YafaRay.0.1.1.zip"
-MD5SUM="d1722dec25299f6f3fcc1d7c661a4e90"
+DOWNLOAD="https://github.com/YafaRay/Core/archive/v3.2.0/yafaray-3.2.0.tar.gz"
+MD5SUM="191e81b3d8c942302b97c142049365df"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES=""
+REQUIRES="opencv"
MAINTAINER="Alan Alberghini"
EMAIL="414N@slacky.it"
diff --git a/ham/fldigi/fldigi.SlackBuild b/ham/fldigi/fldigi.SlackBuild
index b45d7c3250..b0aafdefae 100644
--- a/ham/fldigi/fldigi.SlackBuild
+++ b/ham/fldigi/fldigi.SlackBuild
@@ -68,7 +68,7 @@ find -L . \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS -fpermissive" \
./configure \
--prefix=/usr \
--sysconfdir=/etc \
diff --git a/ham/soundmodem/soundmodem.SlackBuild b/ham/soundmodem/soundmodem.SlackBuild
index 4f724fcbb9..17a2e7fdfc 100644
--- a/ham/soundmodem/soundmodem.SlackBuild
+++ b/ham/soundmodem/soundmodem.SlackBuild
@@ -64,7 +64,7 @@ find -L . \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
CFLAGS="$SLKCFLAGS -fgnu89-inline" \
-CXXFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS -fpermissive" \
./configure \
--prefix=/usr \
--sysconfdir=/etc \
diff --git a/ham/svxlink/gcc6.patch b/ham/svxlink/gcc6.patch
new file mode 100644
index 0000000000..3d01b118ae
--- /dev/null
+++ b/ham/svxlink/gcc6.patch
@@ -0,0 +1,23 @@
+From 611cc5cc134f710f94fc8987375259bd8af34604 Mon Sep 17 00:00:00 2001
+From: Tobias Blomberg <git@sm0svx.shacknet.nu>
+Date: Mon, 19 Jun 2017 22:04:20 +0200
+Subject: [PATCH] Fix compilation problem in Async::AudioDeviceAlsa
+
+- On newer compilers the compilation would fail on ambiguous call to abs
+---
+ src/async/audio/AsyncAudioDeviceAlsa.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/async/audio/AsyncAudioDeviceAlsa.cpp b/src/async/audio/AsyncAudioDeviceAlsa.cpp
+index 17d255e8..15d760d5 100644
+--- a/src/async/audio/AsyncAudioDeviceAlsa.cpp
++++ b/src/async/audio/AsyncAudioDeviceAlsa.cpp
+@@ -548,7 +548,7 @@ bool AudioDeviceAlsa::initParams(snd_pcm_t *pcm_handle)
+ return false;
+ }
+
+- if (::abs(real_rate - sample_rate) > 100)
++ if (::abs(static_cast<int>(real_rate) - sample_rate) > 100)
+ {
+ cerr << "*** ERROR: The sample rate could not be set to "
+ << sample_rate << "Hz for ALSA device \"" << dev_name << "\". "
diff --git a/ham/svxlink/svxlink.SlackBuild b/ham/svxlink/svxlink.SlackBuild
index 8d043635c1..28982e9a31 100644
--- a/ham/svxlink/svxlink.SlackBuild
+++ b/ham/svxlink/svxlink.SlackBuild
@@ -107,12 +107,15 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# From upstream
+patch -p2 < $CWD/gcc6.patch
+
mkdir -p build
cd build
cmake \
$BUILD_QTEL \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS -fpermissive" \
-DCMAKE_INSTALL_PREFIX=/usr \
-DSYSCONF_INSTALL_DIR=/etc \
-DLOCAL_STATE_DIR=/var \
diff --git a/libraries/Atlas-C++/Atlas-C++.SlackBuild b/libraries/Atlas-C++/Atlas-C++.SlackBuild
index ebd6a108a4..0d55715acd 100644
--- a/libraries/Atlas-C++/Atlas-C++.SlackBuild
+++ b/libraries/Atlas-C++/Atlas-C++.SlackBuild
@@ -70,7 +70,7 @@ find -L . \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS -Wno-error=deprecated" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
diff --git a/libraries/CEGUI0.7/CEGUI0.7.SlackBuild b/libraries/CEGUI0.7/CEGUI0.7.SlackBuild
index 30917134f4..18d54dd14a 100644
--- a/libraries/CEGUI0.7/CEGUI0.7.SlackBuild
+++ b/libraries/CEGUI0.7/CEGUI0.7.SlackBuild
@@ -72,7 +72,7 @@ find -L . \
patch -p1 < $CWD/CEGUI.patch
CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS -fpermissive" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
diff --git a/libraries/FreeImage/FreeImage.SlackBuild b/libraries/FreeImage/FreeImage.SlackBuild
index 9787e0772a..d5e41f6c16 100644
--- a/libraries/FreeImage/FreeImage.SlackBuild
+++ b/libraries/FreeImage/FreeImage.SlackBuild
@@ -57,8 +57,11 @@ find -L . \
# Thanks to Christoph Willing
patch -p0 < $CWD/010_avoid-raw-literal.diff
+# Needed for glibc >= 2.27
+sed -i "s#powf64#dc_&#g" Source/LibRawLite/internal/dcraw_common.cpp || exit 1
+
CFLAGS="$SLKCFLAGS -fexceptions -fvisibility=hidden -DNO_LCMS" \
-CXXFLAGS="$SLKCFLAGS -fexceptions -fvisibility=hidden -Wno-ctor-dtor-privacy" \
+CXXFLAGS="$SLKCFLAGS -fexceptions -fvisibility=hidden -Wno-ctor-dtor-privacy -Wno-narrowing" \
make INSTALLDIR=$PKG/usr/lib${LIBDIRSUFFIX} DESTDIR=$PKG
make install INSTALLDIR=$PKG/usr/lib${LIBDIRSUFFIX} DESTDIR=$PKG
diff --git a/libraries/OpenAL/OpenAL.SlackBuild b/libraries/OpenAL/OpenAL.SlackBuild
index 7dccf74faf..829b3bf204 100644
--- a/libraries/OpenAL/OpenAL.SlackBuild
+++ b/libraries/OpenAL/OpenAL.SlackBuild
@@ -30,7 +30,7 @@ TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -41,8 +41,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -76,7 +76,7 @@ cmake \
-DCMAKE_VERBOSE_MAKEFILE:BOOL="on" \
-DCMAKE_BUILD_TYPE=Release \
-DALSOFT_EXAMPLES=OFF \
- -DLIB_SUFFIX=${LIBDIRSUFFIX}
+ -DLIB_SUFFIX=${LIBDIRSUFFIX} .
make
make install/strip DESTDIR=$PKG
diff --git a/libraries/PyQt5/PyQt5.SlackBuild b/libraries/PyQt5/PyQt5.SlackBuild
index 4d8e348aea..42672d2a0d 100644
--- a/libraries/PyQt5/PyQt5.SlackBuild
+++ b/libraries/PyQt5/PyQt5.SlackBuild
@@ -94,8 +94,8 @@ export CXXFLAGS="$SLKCFLAGS"
python configure.py \
--confirm-license \
--verbose \
- --sip=/usr/bin/python2-sip \
- --sip-incdir="/usr/include/python$PYTHONVER/python2-sip" \
+ --sip=/usr/bin/sip \
+ --sip-incdir=/usr/include/python${PYTHONVER} \
-q /usr/bin/qmake-qt5
make
diff --git a/libraries/PyQt5/PyQt5.info b/libraries/PyQt5/PyQt5.info
index 2ae0c1f377..a25896b60b 100644
--- a/libraries/PyQt5/PyQt5.info
+++ b/libraries/PyQt5/PyQt5.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://sourceforge.net/projects/pyqt/files/PyQt5/PyQt-5.9.2/PyQt5_gpl
MD5SUM="33d6d2ab8183da17ac18b8132a4b278e"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="qt5-webkit python2-sip enum34"
+REQUIRES="qt5-webkit enum34"
MAINTAINER="David Woodfall"
EMAIL="dave@dawoodfall.net"
diff --git a/libraries/SDL2/README b/libraries/SDL2/README
deleted file mode 100644
index 8e26524439..0000000000
--- a/libraries/SDL2/README
+++ /dev/null
@@ -1,7 +0,0 @@
-Simple DirectMedia Layer is a cross-platform development library designed to
-provide low-level access to audio, keyboard, mouse, joystick, and graphics
-hardware via OpenGL.
-
-SDL is written in C and works natively with C++.
-
-This is safe to install alongside Slackware's SDL libraries.
diff --git a/libraries/SDL2/SDL2.SlackBuild b/libraries/SDL2/SDL2.SlackBuild
deleted file mode 100644
index dec9caf2d2..0000000000
--- a/libraries/SDL2/SDL2.SlackBuild
+++ /dev/null
@@ -1,93 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for SDL2
-
-# Copyright 2013 Dugan Chen Canada
-# 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.
-
-PRGNAM=SDL2
-VERSION=${VERSION:-2.0.8}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-mkdir -p build
-cd build
- cmake \
- -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DLIB_SUFFIX=${LIBDIRSUFFIX} \
- -DCMAKE_BUILD_TYPE=Release ..
- make
- make install DESTDIR=$PKG
-cd ..
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a *.txt docs/*.md $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/libraries/SDL2/SDL2.info b/libraries/SDL2/SDL2.info
deleted file mode 100644
index bbb7cc90c3..0000000000
--- a/libraries/SDL2/SDL2.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="SDL2"
-VERSION="2.0.8"
-HOMEPAGE="https://libsdl.org"
-DOWNLOAD="https://www.libsdl.org/release/SDL2-2.0.8.tar.gz"
-MD5SUM="3800d705cef742c6a634f202c37f263f"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Dugan Chen"
-EMAIL="thedoogster [at] gmail [dot] com"
diff --git a/libraries/SDL2/slack-desc b/libraries/SDL2/slack-desc
deleted file mode 100644
index fa23090367..0000000000
--- a/libraries/SDL2/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-SDL2: SDL2 (Simple DirectMedia Layer Version 2)
-SDL2:
-SDL2: Simple DirectMedia Layer is a cross-platform development library
-SDL2: designed to provide low-level access to audio, keyboard, mouse,
-SDL2: joystick, and graphics hardware ia via OpenGL.
-SDL2:
-SDL2: SDL is written in C and works natively with C++.
-SDL2:
-SDL2: https://libsdl.org
-SDL2:
-SDL2:
diff --git a/libraries/SDL2_image/README b/libraries/SDL2_image/README
deleted file mode 100644
index efd18ed49e..0000000000
--- a/libraries/SDL2_image/README
+++ /dev/null
@@ -1,4 +0,0 @@
-SDL2_image is a simple library to load images of various formats as
-SDL surfaces. It is safe to install alongside Slackware's SDL libraries.
-
-libwebp is an optional dependency.
diff --git a/libraries/SDL2_image/SDL2_image.SlackBuild b/libraries/SDL2_image/SDL2_image.SlackBuild
deleted file mode 100644
index 882b6e018b..0000000000
--- a/libraries/SDL2_image/SDL2_image.SlackBuild
+++ /dev/null
@@ -1,99 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for SDL2_image
-
-# Copyright 2013 Dugan Chen Canada
-# 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.
-
-PRGNAM=SDL2_image
-VERSION=${VERSION:-2.0.3}
-BUILD=${BUILD:-2}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --enable-static=no \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --build=$ARCH-slackware-linux \
- --enable-jpg-shared=no
-
-make
-make install DESTDIR=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a *.txt $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/libraries/SDL2_image/SDL2_image.info b/libraries/SDL2_image/SDL2_image.info
deleted file mode 100644
index b3de3808ba..0000000000
--- a/libraries/SDL2_image/SDL2_image.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="SDL2_image"
-VERSION="2.0.3"
-HOMEPAGE="https://www.libsdl.org/projects/SDL_image/"
-DOWNLOAD="https://www.libsdl.org/projects/SDL_image/release/SDL2_image-2.0.3.tar.gz"
-MD5SUM="c6baf6dfa80fa8a66853661a36a6034e"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="SDL2"
-MAINTAINER="Dugan Chen"
-EMAIL="thedoogster [at] gmail [dot] com"
diff --git a/libraries/SDL2_image/slack-desc b/libraries/SDL2_image/slack-desc
deleted file mode 100644
index c92a593f27..0000000000
--- a/libraries/SDL2_image/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-SDL2_image: SDL2_image (image loading library)
-SDL2_image:
-SDL2_image: SDL2_image is a simple image loading library. It loads images of
-SDL2_image: various formats as SDL surfaces and textures.
-SDL2_image:
-SDL2_image: https://www.libsdl.org/projects/SDL_image/
-SDL2_image:
-SDL2_image:
-SDL2_image:
-SDL2_image:
-SDL2_image:
diff --git a/libraries/SDL2_mixer/README b/libraries/SDL2_mixer/README
deleted file mode 100644
index 5d39240c67..0000000000
--- a/libraries/SDL2_mixer/README
+++ /dev/null
@@ -1,11 +0,0 @@
-SDL2_mixer is a sample multi-channel audio mixer library. It supports
-any number of simultaneously playing channels of 16-bit stereo audio,
-plus a single channel of music.
-
-It is safe to install alongside Slackware's SDL libraries.
-
-Optional dependencies are:
-
-* libmodplug (for MOD support)
-* fluidsynth (for MIDI support via SDL_SOUNDFONTS)
-* smpeg2 (for MP3 support, not available on SBo)
diff --git a/libraries/SDL2_mixer/SDL2_mixer.SlackBuild b/libraries/SDL2_mixer/SDL2_mixer.SlackBuild
deleted file mode 100644
index 378d64a604..0000000000
--- a/libraries/SDL2_mixer/SDL2_mixer.SlackBuild
+++ /dev/null
@@ -1,99 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for SDL2_mixer
-
-# Copyright 2013-2015 Dugan Chen Canada
-# 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.
-
-PRGNAM=SDL2_mixer
-VERSION=${VERSION:-2.0.2}
-BUILD=${BUILD:-2}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --enable-static=no \
- --build=$ARCH-slackware-linux
-
-make
-make install DESTDIR=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/examples
-cp -a *.txt $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a playmus.c playwave.c $PKG/usr/doc/$PRGNAM-$VERSION/examples
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/libraries/SDL2_mixer/SDL2_mixer.info b/libraries/SDL2_mixer/SDL2_mixer.info
deleted file mode 100644
index 0ce8957d96..0000000000
--- a/libraries/SDL2_mixer/SDL2_mixer.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="SDL2_mixer"
-VERSION="2.0.2"
-HOMEPAGE="https://www.libsdl.org/projects/SDL_mixer/"
-DOWNLOAD="https://www.libsdl.org/projects/SDL_mixer/release/SDL2_mixer-2.0.2.tar.gz"
-MD5SUM="aaa0551393993c14a13f72b339c0ed6c"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="SDL2"
-MAINTAINER="Dugan Chen"
-EMAIL="thedoogster [at] gmail [dot] com"
diff --git a/libraries/SDL2_mixer/slack-desc b/libraries/SDL2_mixer/slack-desc
deleted file mode 100644
index bf7934c6ee..0000000000
--- a/libraries/SDL2_mixer/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-SDL2_mixer: SDL2_mixer (sample multi-channel audio mixer library)
-SDL2_mixer:
-SDL2_mixer: SDL_mixer is a sample multi-channel audio mixer library. It supports
-SDL2_mixer: any number of simultaneously playing channels of 16-bit stereo audio,
-SDL2_mixer: plus a single channel of music.
-SDL2_mixer:
-SDL2_mixer: https://www.libsdl.org/projects/SDL_mixer/
-SDL2_mixer:
-SDL2_mixer:
-SDL2_mixer:
-SDL2_mixer:
diff --git a/libraries/SDL2_net/README b/libraries/SDL2_net/README
deleted file mode 100644
index 3f3e632887..0000000000
--- a/libraries/SDL2_net/README
+++ /dev/null
@@ -1,3 +0,0 @@
-This SDL2 extension is a small cross platform networking library.
-
-It is safe to install alongside Slackware's SDL libraries.
diff --git a/libraries/SDL2_net/SDL2_net.SlackBuild b/libraries/SDL2_net/SDL2_net.SlackBuild
deleted file mode 100644
index ac25dc3fe3..0000000000
--- a/libraries/SDL2_net/SDL2_net.SlackBuild
+++ /dev/null
@@ -1,100 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for SDL2_net
-
-# Copyright 2013 Dugan Chen Canada
-# 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.
-
-PRGNAM=SDL2_net
-VERSION=${VERSION:-2.0.1}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i486 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --enable-static=no \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --build=$ARCH-slackware-linux \
- --disable-gui
-
-make
-make install DESTDIR=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/demo
-cp -a *.txt $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a chat.cpp chat.h chatd.c $PKG/usr/doc/$PRGNAM-$VERSION/demo
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/libraries/SDL2_net/SDL2_net.info b/libraries/SDL2_net/SDL2_net.info
deleted file mode 100644
index d607b71b3f..0000000000
--- a/libraries/SDL2_net/SDL2_net.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="SDL2_net"
-VERSION="2.0.1"
-HOMEPAGE="https://www.libsdl.org/projects/SDL_net/"
-DOWNLOAD="https://www.libsdl.org/projects/SDL_net/release/SDL2_net-2.0.1.tar.gz"
-MD5SUM="5c1d9d1cfa63301b141cb5c0de2ea7c4"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="SDL2"
-MAINTAINER="Dugan Chen"
-EMAIL="thedoogster [at] gmail [dot] com"
diff --git a/libraries/SDL2_net/slack-desc b/libraries/SDL2_net/slack-desc
deleted file mode 100644
index 3f45345ca4..0000000000
--- a/libraries/SDL2_net/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-SDL2_net: SDL2_net (cross platform networking library)
-SDL2_net:
-SDL2_net: This is a small cross platform networking library.
-SDL2_net:
-SDL2_net:
-SDL2_net:
-SDL2_net:
-SDL2_net:
-SDL2_net:
-SDL2_net:
-SDL2_net:
diff --git a/libraries/SDL2_ttf/README b/libraries/SDL2_ttf/README
deleted file mode 100644
index ac5e99801e..0000000000
--- a/libraries/SDL2_ttf/README
+++ /dev/null
@@ -1,4 +0,0 @@
-This is a sample library which allows you to use TrueType fonts
-in your SDL2 applications.
-
-It is safe to install alongside Slackware's SDL packages.
diff --git a/libraries/SDL2_ttf/SDL2_ttf.SlackBuild b/libraries/SDL2_ttf/SDL2_ttf.SlackBuild
deleted file mode 100644
index fb3177ba19..0000000000
--- a/libraries/SDL2_ttf/SDL2_ttf.SlackBuild
+++ /dev/null
@@ -1,99 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for SDL2_ttf
-
-# Copyright 2013 Dugan Chen Canada
-# 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.
-
-PRGNAM=SDL2_ttf
-VERSION=${VERSION:-2.0.14}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i486 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --enable-static=no \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --build=$ARCH-slackware-linux
-
-make
-make install DESTDIR=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/examples
-cp -a *.txt $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a showfont.c $PKG/usr/doc/$PRGNAM-$VERSION/examples
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/libraries/SDL2_ttf/SDL2_ttf.info b/libraries/SDL2_ttf/SDL2_ttf.info
deleted file mode 100644
index e81eed0c1d..0000000000
--- a/libraries/SDL2_ttf/SDL2_ttf.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="SDL2_ttf"
-VERSION="2.0.14"
-HOMEPAGE="https://www.libsdl.org/projects/SDL_ttf/"
-DOWNLOAD="https://www.libsdl.org/projects/SDL_ttf/release/SDL2_ttf-2.0.14.tar.gz"
-MD5SUM="e53c05e1e7f1382c316afd6c763388b1"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="SDL2"
-MAINTAINER="Dugan Chen"
-EMAIL="thedoogster [at] gmail [dot] com"
diff --git a/libraries/SDL2_ttf/slack-desc b/libraries/SDL2_ttf/slack-desc
deleted file mode 100644
index dbd7fee216..0000000000
--- a/libraries/SDL2_ttf/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-SDL2_ttf: SDL2_ttf (SDL2 truetype font library)
-SDL2_ttf:
-SDL2_ttf: This is a sample library which allows you to use
-SDL2_ttf: TrueType fonts in your SDL applications.
-SDL2_ttf:
-SDL2_ttf:
-SDL2_ttf:
-SDL2_ttf:
-SDL2_ttf:
-SDL2_ttf:
-SDL2_ttf:
diff --git a/libraries/SDL_sound/SDL_sound.SlackBuild b/libraries/SDL_sound/SDL_sound.SlackBuild
index 3098531f6a..4d69722942 100644
--- a/libraries/SDL_sound/SDL_sound.SlackBuild
+++ b/libraries/SDL_sound/SDL_sound.SlackBuild
@@ -75,6 +75,7 @@ CXXFLAGS="$SLKCFLAGS" \
--prefix=/usr \
--sysconfdir=/etc \
--disable-static \
+ --disable-physfs \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--build=$ARCH-slackware-linux
diff --git a/libraries/SFGUI/SFGUI.SlackBuild b/libraries/SFGUI/SFGUI.SlackBuild
index 4d1707634a..834f3d0f3c 100644
--- a/libraries/SFGUI/SFGUI.SlackBuild
+++ b/libraries/SFGUI/SFGUI.SlackBuild
@@ -10,13 +10,13 @@
# without any warranty.
PRGNAM=SFGUI
-VERSION=${VERSION:-0.3.0}
+VERSION=${VERSION:-0.4.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -27,8 +27,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -47,7 +47,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-unzip $CWD/$PRGNAM-$VERSION.zip || unzip $CWD/$VERSION.zip
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
@@ -62,13 +62,9 @@ cd build
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_INSTALL_PREFIX=/usr \
+ -DLIB_SUFFIX="$LIBDIRSUFFIX" \
-DCMAKE_BUILD_TYPE=Release ..
-# -DLIB_SUFFIX is ignored. Patch CMakeLists as needed.
- sed -i \
- -e "s:\\\${CMAKE_INSTALL_PREFIX}/lib:&${LIBDIRSUFFIX}:" \
- cmake_install.cmake
-
make
make install DESTDIR=$PKG
cd ..
@@ -79,7 +75,7 @@ find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | gr
find $PKG -name perllocal.pod -o -name ".packlist" -o -name "*.bs" | xargs rm -f || true
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a README CHANGELOG FONT.LICENSE LICENSE AUTHORS $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a README.md CHANGELOG.md FONT.LICENSE.md LICENSE.md AUTHORS.md $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/libraries/SFGUI/SFGUI.info b/libraries/SFGUI/SFGUI.info
index 189165e049..008223a196 100644
--- a/libraries/SFGUI/SFGUI.info
+++ b/libraries/SFGUI/SFGUI.info
@@ -1,8 +1,8 @@
PRGNAM="SFGUI"
-VERSION="0.3.0"
+VERSION="0.4.0"
HOMEPAGE="https://github.com/TankOs/SFGUI"
-DOWNLOAD="https://github.com/TankOs/SFGUI/archive/0.3.0.zip"
-MD5SUM="9e704175dca7c8632e9f72a321c21e25"
+DOWNLOAD="https://github.com/TankOs/SFGUI/archive/0.4.0/SFGUI-0.4.0.tar.gz"
+MD5SUM="16d4784fbdba30583a6c4fd38c27b323"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="SFML"
diff --git a/libraries/agg/agg.SlackBuild b/libraries/agg/agg.SlackBuild
index 02a9477479..619b80b00f 100644
--- a/libraries/agg/agg.SlackBuild
+++ b/libraries/agg/agg.SlackBuild
@@ -71,6 +71,7 @@ CXXFLAGS="$SLKCFLAGS" \
--sysconfdir=/etc \
--localstatedir=/var \
--mandir=/usr/man \
+ --disable-examples \
--disable-static \
--build=$ARCH-slackware-linux
diff --git a/libraries/agg/patches/0016-bad-const.patch b/libraries/agg/patches/0016-bad-const.patch
new file mode 100644
index 0000000000..045e77ba13
--- /dev/null
+++ b/libraries/agg/patches/0016-bad-const.patch
@@ -0,0 +1,12 @@
+diff -u -r agg-2.5/include/agg_renderer_outline_aa.h agg-2.5-const/include/agg_renderer_outline_aa.h
+--- agg-2.5/include/agg_renderer_outline_aa.h 2006-10-09 06:07:08.000000000 +0200
++++ agg-2.5-const/include/agg_renderer_outline_aa.h 2018-06-16 23:09:16.500057814 +0200
+@@ -1375,7 +1375,7 @@
+ //---------------------------------------------------------------------
+ void profile(const line_profile_aa& prof) { m_profile = &prof; }
+ const line_profile_aa& profile() const { return *m_profile; }
+- line_profile_aa& profile() { return *m_profile; }
++ line_profile_aa& profile() { return *const_cast<line_profile_aa*>(m_profile); }
+
+ //---------------------------------------------------------------------
+ int subpixel_width() const { return m_profile->subpixel_width(); }
diff --git a/libraries/allegro/allegro.SlackBuild b/libraries/allegro/allegro.SlackBuild
index 295912fc85..a666e74968 100644
--- a/libraries/allegro/allegro.SlackBuild
+++ b/libraries/allegro/allegro.SlackBuild
@@ -25,7 +25,7 @@
PRGNAM=allegro
SRCNAM=allegro5
-VERSION=${VERSION:-5.2.4.0}
+VERSION=${VERSION:-20181208_a40d30e}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -64,7 +64,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $SRCNAM-$VERSION
-tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z
cd $SRCNAM-$VERSION
chown -R root:root .
find -L . \
diff --git a/libraries/allegro/allegro.info b/libraries/allegro/allegro.info
index 639472cb0b..4208371881 100644
--- a/libraries/allegro/allegro.info
+++ b/libraries/allegro/allegro.info
@@ -1,8 +1,8 @@
PRGNAM="allegro"
-VERSION="5.2.4.0"
+VERSION="20181208_a40d30e"
HOMEPAGE="https://www.allegro.cc/"
-DOWNLOAD="https://github.com/liballeg/allegro5/archive/5.2.4.0/allegro5-5.2.4.0.tar.gz"
-MD5SUM="45353bd5e518db537bd127705d922421"
+DOWNLOAD="http://ponce.cc/slackware/sources/repo/allegro5-20181208_a40d30e.tar.xz"
+MD5SUM="3795b48dd4e91f13b9481eabe78d1628"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/avr-libc/avr-libc.SlackBuild b/libraries/avr-libc/avr-libc.SlackBuild
index 3c1455ba09..c2866302f1 100644
--- a/libraries/avr-libc/avr-libc.SlackBuild
+++ b/libraries/avr-libc/avr-libc.SlackBuild
@@ -13,13 +13,13 @@
# incorrect use of this script.
PRGNAM=avr-libc
-VERSION=${VERSION:-1.8.1}
-BUILD=${BUILD:-3}
+VERSION=${VERSION:-2.0.0}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -36,8 +36,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -65,6 +65,8 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+./bootstrap
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -82,8 +84,7 @@ CXXFLAGS="$SLKCFLAGS" \
make all
make install DOC_INST_DIR=$PKG/usr/doc/$PRGNAM-$VERSION DESTDIR=$PKG
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+# Don't strip the libraries to avoid damaging them
# Create the directory for program documentation.
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
diff --git a/libraries/avr-libc/avr-libc.info b/libraries/avr-libc/avr-libc.info
index b8e89f4dda..b2f5078b3d 100644
--- a/libraries/avr-libc/avr-libc.info
+++ b/libraries/avr-libc/avr-libc.info
@@ -1,8 +1,8 @@
PRGNAM="avr-libc"
-VERSION="1.8.1"
+VERSION="2.0.0"
HOMEPAGE="http://avr-libc.nongnu.org/"
-DOWNLOAD="http://download.savannah.gnu.org/releases/avr-libc/avr-libc-1.8.1.tar.bz2"
-MD5SUM="0caccead59eaaa61ac3f060ca3a803ef"
+DOWNLOAD="http://download.savannah.gnu.org/releases/avr-libc/avr-libc-2.0.0.tar.bz2"
+MD5SUM="2360981cd5d94e1d7a70dfc6983bdf15"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="avr-gcc"
diff --git a/libraries/bamf/bamf.SlackBuild b/libraries/bamf/bamf.SlackBuild
index 4ee3a85b1c..6982535729 100644
--- a/libraries/bamf/bamf.SlackBuild
+++ b/libraries/bamf/bamf.SlackBuild
@@ -69,7 +69,7 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-CFLAGS="$SLKCFLAGS" \
+CFLAGS="$SLKCFLAGS -Wno-error=deprecated-declarations" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
diff --git a/libraries/beignet/beignet.SlackBuild b/libraries/beignet/beignet.SlackBuild
index ce61606dea..1d7a06dcdd 100644
--- a/libraries/beignet/beignet.SlackBuild
+++ b/libraries/beignet/beignet.SlackBuild
@@ -24,7 +24,7 @@
# -----------------------------------------------------------------------------
PRGNAM=beignet
-VERSION=${VERSION:-1.3.1}
+VERSION=${VERSION:-1.3.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
DOCS="README.md docs NEWS.mdwn COPYING"
@@ -75,6 +75,8 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+patch -p1 < $CWD/llvm6.patch
+
mkdir -p build
cd build
cmake \
diff --git a/libraries/beignet/beignet.info b/libraries/beignet/beignet.info
index dae99c57d9..fff7aa7b6d 100644
--- a/libraries/beignet/beignet.info
+++ b/libraries/beignet/beignet.info
@@ -1,8 +1,8 @@
PRGNAM="beignet"
-VERSION="1.3.1"
+VERSION="1.3.2"
HOMEPAGE="https://01.org/beignet"
-DOWNLOAD="https://01.org/sites/default/files/beignet-1.3.1-source.tar.gz"
-MD5SUM="850886a71a34672ca26a42046d0bb442"
+DOWNLOAD="https://01.org/sites/default/files/beignet-1.3.2-source.tar.gz"
+MD5SUM="a577ab18d67a891c8767b8ea62253543"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/beignet/llvm6.patch b/libraries/beignet/llvm6.patch
new file mode 100644
index 0000000000..f3634e2389
--- /dev/null
+++ b/libraries/beignet/llvm6.patch
@@ -0,0 +1,30 @@
+diff -uprb Beignet-1.3.2-Source.orig/backend/src/llvm/llvm_to_gen.cpp Beignet-1.3.2-Source/backend/src/llvm/llvm_to_gen.cpp
+--- Beignet-1.3.2-Source.orig/backend/src/llvm/llvm_to_gen.cpp 2017-10-24 09:04:48.000000000 +0300
++++ Beignet-1.3.2-Source/backend/src/llvm/llvm_to_gen.cpp 2018-03-16 16:08:54.669963824 +0200
+@@ -322,7 +322,11 @@ namespace gbe
+ DataLayout DL(&mod);
+
+ gbeDiagnosticContext dc;
++#if LLVM_VERSION_MAJOR >= 6
++ mod.getContext().setDiagnosticHandlerCallBack(&gbeDiagnosticHandler,&dc);
++#else
+ mod.getContext().setDiagnosticHandler(&gbeDiagnosticHandler,&dc);
++#endif
+
+ #if LLVM_VERSION_MAJOR * 10 + LLVM_VERSION_MINOR >= 37
+ mod.setDataLayout(DL);
+diff -uprb Beignet-1.3.2-Source.orig/backend/src/llvm/llvm_unroll.cpp Beignet-1.3.2-Source/backend/src/llvm/llvm_unroll.cpp
+--- Beignet-1.3.2-Source.orig/backend/src/llvm/llvm_unroll.cpp 2017-10-24 09:04:48.000000000 +0300
++++ Beignet-1.3.2-Source/backend/src/llvm/llvm_unroll.cpp 2018-03-16 16:09:47.736403557 +0200
+@@ -205,7 +205,9 @@ namespace gbe {
+ if (parentTripCount != 0 && currTripCount * parentTripCount > 32) {
+ //Don't change the unrollID if doesn't force unroll.
+ //setUnrollID(parentL, false);
+-#if LLVM_VERSION_MAJOR * 10 + LLVM_VERSION_MINOR >= 38
++#if LLVM_VERSION_MAJOR >= 6
++ loopInfo.erase(parentL);
++#elif LLVM_VERSION_MAJOR * 10 + LLVM_VERSION_MINOR >= 38
+ loopInfo.markAsRemoved(parentL);
+ #else
+ LPM.deleteLoopFromQueue(parentL);
+Only in Beignet-1.3.2-Source: build
diff --git a/libraries/ccrtp/ccrtp.SlackBuild b/libraries/ccrtp/ccrtp.SlackBuild
index 04fff8c2b7..9ea1685863 100644
--- a/libraries/ccrtp/ccrtp.SlackBuild
+++ b/libraries/ccrtp/ccrtp.SlackBuild
@@ -24,7 +24,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=ccrtp
-VERSION=${VERSION:-2.0.9}
+VERSION=${VERSION:-2.1.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
diff --git a/libraries/ccrtp/ccrtp.info b/libraries/ccrtp/ccrtp.info
index 38929c008d..0232990714 100644
--- a/libraries/ccrtp/ccrtp.info
+++ b/libraries/ccrtp/ccrtp.info
@@ -1,8 +1,8 @@
PRGNAM="ccrtp"
-VERSION="2.0.9"
+VERSION="2.1.2"
HOMEPAGE="http://www.gnu.org/software/ccrtp/"
-DOWNLOAD="ftp://ftp.gnu.org/pub/gnu/ccrtp/ccrtp-2.0.9.tar.gz"
-MD5SUM="f2e143c2558fbbe5715a1f04be2fb692"
+DOWNLOAD="ftp://ftp.gnu.org/pub/gnu/ccrtp/ccrtp-2.1.2.tar.gz"
+MD5SUM="e6792cbd8b705901c205a509bd7f812f"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="ucommon"
diff --git a/libraries/cuneiform/cuneiform-gcc.patch b/libraries/cuneiform/cuneiform-gcc.patch
new file mode 100644
index 0000000000..4b51da8e84
--- /dev/null
+++ b/libraries/cuneiform/cuneiform-gcc.patch
@@ -0,0 +1,98 @@
+diff -wbBur cuneiform-linux-1.1.0/cuneiform_src/Kern/include/utf8-tables.h cuneiform-linux-1.1.0.q/cuneiform_src/Kern/include/utf8-tables.h
+--- cuneiform-linux-1.1.0/cuneiform_src/Kern/include/utf8-tables.h 2011-04-19 16:49:57.000000000 +0400
++++ cuneiform-linux-1.1.0.q/cuneiform_src/Kern/include/utf8-tables.h 2017-07-05 16:35:34.338871445 +0300
+@@ -68,7 +68,7 @@
+ #endif
+
+
+-const char win1250_to_utf8[][4] = {
++const unsigned char win1250_to_utf8[][4] = {
+ {0, 0, 0, 0},
+ {1, 0, 0, 0},
+ {2, 0, 0, 0},
+@@ -328,7 +328,7 @@
+ };
+
+
+-const char win1251_to_utf8[][4] = {
++const unsigned char win1251_to_utf8[][4] = {
+ {0, 0, 0, 0},
+ {1, 0, 0, 0},
+ {2, 0, 0, 0},
+@@ -587,7 +587,7 @@
+ {209, 143, 0, 0},
+ };
+
+-const char win1252_to_utf8[][4] = {
++const unsigned char win1252_to_utf8[][4] = {
+ {0, 0, 0, 0},
+ {1, 0, 0, 0},
+ {2, 0, 0, 0},
+@@ -847,7 +847,7 @@
+ };
+
+
+-const char win1254_to_utf8[][4] = {
++const unsigned char win1254_to_utf8[][4] = {
+ {0, 0, 0, 0},
+ {1, 0, 0, 0},
+ {2, 0, 0, 0},
+@@ -1107,7 +1107,7 @@
+ };
+
+
+-const char win1257_to_utf8[][4] = {
++const unsigned char win1257_to_utf8[][4] = {
+ {0, 0, 0, 0},
+ {1, 0, 0, 0},
+ {2, 0, 0, 0},
+diff -wbBur cuneiform-linux-1.1.0/cuneiform_src/Kern/rfrmt/sources/main/stdafx.h
+cuneiform-linux-1.1.0.q/cuneiform_src/Kern/rfrmt/sources/main/stdafx.h
+--- cuneiform-linux-1.1.0/cuneiform_src/Kern/rfrmt/sources/main/stdafx.h 2011-04-19 16:49:57.000000000 +0400
++++ cuneiform-linux-1.1.0.q/cuneiform_src/Kern/rfrmt/sources/main/stdafx.h 2017-07-05 16:37:23.528866265 +0300
+@@ -74,6 +74,9 @@
+ //отключаем warning о Ñлишком длинных stl'ных именах
+ #pragma warning(disable:4786)
+
++#undef min
++#undef max
++
+ #include <vector>
+ typedef std::vector<uint16_t> vectorWord;
+
+diff -wbBur cuneiform-linux-1.1.0/cuneiform_src/Kern/rimage/sources/main/cricontrol.cpp
+cuneiform-linux-1.1.0.q/cuneiform_src/Kern/rimage/sources/main/cricontrol.cpp
+--- cuneiform-linux-1.1.0/cuneiform_src/Kern/rimage/sources/main/cricontrol.cpp 2011-04-19 16:49:57.000000000 +0400
++++ cuneiform-linux-1.1.0.q/cuneiform_src/Kern/rimage/sources/main/cricontrol.cpp 2017-07-05 16:33:02.962211959 +0300
+@@ -594,8 +594,8 @@
+ return FALSE;
+ }
+
+- wNewHeight = (mbMarginsFlag ? abs(mrMargins.rmBottomMarg - mrMargins.rmTopMarg) : mpSourceDIB->GetLinesNumber());
+- wNewWidth = (mbMarginsFlag ? abs(mrMargins.rmLeftMarg - mrMargins.rmRightMarg) : mpSourceDIB->GetLineWidth());
++ wNewHeight = (mbMarginsFlag ? std::abs((long int)(mrMargins.rmBottomMarg - mrMargins.rmTopMarg)) : mpSourceDIB->GetLinesNumber());
++ wNewWidth = (mbMarginsFlag ? std::abs((long int)(mrMargins.rmLeftMarg - mrMargins.rmRightMarg)) : mpSourceDIB->GetLineWidth());
+ mpSourceDIB->GetResolutionDPM( &wXResolution, &wYResolution);
+
+ if ( !mpDestinationDIB->CreateDIBBegin( wNewWidth, wNewHeight, BitCount) )
+diff -wbBur cuneiform-linux-1.1.0/cuneiform_src/Kern/rout/src/codetables.cpp cuneiform-linux-1.1.0.q/cuneiform_src/Kern/rout/src/codetables.cpp
+--- cuneiform-linux-1.1.0/cuneiform_src/Kern/rout/src/codetables.cpp 2011-04-19 16:49:57.000000000 +0400
++++ cuneiform-linux-1.1.0.q/cuneiform_src/Kern/rout/src/codetables.cpp 2017-07-05 16:36:05.178869982 +0300
+@@ -939,11 +939,11 @@
+
+ const char * getUTF8Str(const unsigned char in, const int codepage) {
+ switch(codepage) {
+- case 1250 : return win1250_to_utf8[in];
+- case 1251 : return win1251_to_utf8[in];
+- case 1252 : return win1252_to_utf8[in];
+- case 1254 : return win1254_to_utf8[in];
+- case 1257 : return win1257_to_utf8[in];
++ case 1250 : return (const char *)win1250_to_utf8[in];
++ case 1251 : return (const char *)win1251_to_utf8[in];
++ case 1252 : return (const char *)win1252_to_utf8[in];
++ case 1254 : return (const char *)win1254_to_utf8[in];
++ case 1257 : return (const char *)win1257_to_utf8[in];
+ default : return "?";
+ }
+ }
+
diff --git a/libraries/cuneiform/cuneiform.SlackBuild b/libraries/cuneiform/cuneiform.SlackBuild
index 10103d58f8..f2294c52f2 100644
--- a/libraries/cuneiform/cuneiform.SlackBuild
+++ b/libraries/cuneiform/cuneiform.SlackBuild
@@ -11,7 +11,7 @@ TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -22,8 +22,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -53,6 +53,9 @@ find -L . \
sed -i 's/\r//g' cuneiform_src/Addfiles/license.txt
+# Thanks to ARCH Linux
+patch -p1 < $CWD/cuneiform-gcc.patch
+
mkdir build
cd build
cmake \
@@ -70,8 +73,7 @@ find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a \
- issues.txt readme.txt original*.rtf cuneiform_src/Addfiles/license.txt \
+cp -a issues.txt readme.txt original*.rtf cuneiform_src/Addfiles/license.txt \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
diff --git a/libraries/efivar/README b/libraries/efivar/README
deleted file mode 100644
index 18459b204f..0000000000
--- a/libraries/efivar/README
+++ /dev/null
@@ -1 +0,0 @@
-efivar - Tools and libraries to manipulate EFI variables
diff --git a/libraries/efivar/efivar.SlackBuild b/libraries/efivar/efivar.SlackBuild
deleted file mode 100644
index 19ab3ecf46..0000000000
--- a/libraries/efivar/efivar.SlackBuild
+++ /dev/null
@@ -1,95 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for efivar
-
-# Copyright 2017-2019 Andrew Clemons, Wellington New Zealand
-# 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.
-
-PRGNAM=efivar
-VERSION=${VERSION:-37}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-SLKCFLAGS="$SLKCFLAGS -flto"
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-make -j1 libdir=/usr/lib$LIBDIRSUFFIX/ mandir=/usr/man/
-make -j1 install DESTDIR=$PKG/ libdir=/usr/lib$LIBDIRSUFFIX/ mandir=/usr/man/
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a \
- COPYING README.md TODO \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/libraries/efivar/efivar.info b/libraries/efivar/efivar.info
deleted file mode 100644
index 9858916849..0000000000
--- a/libraries/efivar/efivar.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="efivar"
-VERSION="37"
-HOMEPAGE="https://github.com/rhboot/efivar"
-DOWNLOAD="https://github.com/rhboot/efivar/archive/37/efivar-37.tar.gz"
-MD5SUM="c47be879853137b6493fe49dd9c70e1d"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Andrew Clemons"
-EMAIL="andrew.clemons@gmail.com"
diff --git a/libraries/efivar/slack-desc b/libraries/efivar/slack-desc
deleted file mode 100644
index f2eca450ba..0000000000
--- a/libraries/efivar/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-efivar: efivar (Tools and library to manipulate EFI variables.)
-efivar:
-efivar: Tools and libraries to manipulate EFI variables
-efivar:
-efivar: https://github.com/rhboot/efivar
-efivar:
-efivar:
-efivar:
-efivar:
-efivar:
-efivar:
diff --git a/libraries/efl/0d2b624f1e24240a1c4e651aa1cfe9a8dd10a573.patch b/libraries/efl/0d2b624f1e24240a1c4e651aa1cfe9a8dd10a573.patch
new file mode 100644
index 0000000000..e7cc95aa95
--- /dev/null
+++ b/libraries/efl/0d2b624f1e24240a1c4e651aa1cfe9a8dd10a573.patch
@@ -0,0 +1,31 @@
+From 0d2b624f1e24240a1c4e651aa1cfe9a8dd10a573 Mon Sep 17 00:00:00 2001
+From: "Carsten Haitzler (Rasterman)" <raster@rasterman.com>
+Date: Sat, 15 Dec 2018 16:19:01 +0000
+Subject: [PATCH] evas gl - make GLintptr etc. also ndefed for GL_VERSION_1_5
+ fix typedef
+
+It seems that GL_VERSION_1_5 define == these provided by gl already. At
+least reading the mesa headers I do, so this should fix T7502
+
+@fix
+---
+ src/lib/evas/Evas_GL.h | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/src/lib/evas/Evas_GL.h b/src/lib/evas/Evas_GL.h
+index b6b642400f..4f67b1695f 100644
+--- a/src/lib/evas/Evas_GL.h
++++ b/src/lib/evas/Evas_GL.h
+@@ -4272,9 +4272,11 @@ typedef signed int GLfixed; // Changed khronos_int32_t
+
+ #ifndef GL_ES_VERSION_2_0
+ /* GL types for handling large vertex buffer objects */
+-#include <stddef.h>
++# ifndef GL_VERSION_1_5
++# include <stddef.h>
+ typedef ptrdiff_t GLintptr; // Changed khronos_intptr_t
+ typedef ptrdiff_t GLsizeiptr; // Changed khronos_ssize_t
++# endif
+ #endif
+
+ /* Some definitions from GLES 3.0.
diff --git a/libraries/efl/efl.SlackBuild b/libraries/efl/efl.SlackBuild
index f9abd58c69..dd8bf14945 100644
--- a/libraries/efl/efl.SlackBuild
+++ b/libraries/efl/efl.SlackBuild
@@ -21,7 +21,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=efl
-VERSION=${VERSION:-1.20.7}
+VERSION=${VERSION:-1.21.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -69,6 +69,8 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+patch -p1 < $CWD/0d2b624f1e24240a1c4e651aa1cfe9a8dd10a573.patch
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
diff --git a/libraries/efl/efl.info b/libraries/efl/efl.info
index a4d998bc9b..3ec40ed2f4 100644
--- a/libraries/efl/efl.info
+++ b/libraries/efl/efl.info
@@ -1,8 +1,8 @@
PRGNAM="efl"
-VERSION="1.20.7"
+VERSION="1.21.1"
HOMEPAGE="https://www.enlightenment.org/"
-DOWNLOAD="http://download.enlightenment.org/rel/libs/efl/efl-1.20.7.tar.xz"
-MD5SUM="3f0294cdfc805b931b94223c37a1015b"
+DOWNLOAD="http://download.enlightenment.org/rel/libs/efl/efl-1.21.1.tar.xz"
+MD5SUM="275ae48d6fdd1ebd47c1f2d0426d5dfc"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="luajit bullet"
diff --git a/libraries/fuzzylite/fuzzylite.SlackBuild b/libraries/fuzzylite/fuzzylite.SlackBuild
index 70961c4d7c..d75feb8637 100644
--- a/libraries/fuzzylite/fuzzylite.SlackBuild
+++ b/libraries/fuzzylite/fuzzylite.SlackBuild
@@ -23,7 +23,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=fuzzylite
-VERSION=${VERSION:-5.1}
+VERSION=${VERSION:-6.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -60,7 +60,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz || tar xvf $CWD/v$VERSION.tar.gz
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
@@ -91,7 +91,7 @@ fi
rm $PKG/usr/lib${LIBDIRSUFFIX}/libfuzzylite-static.a
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHOR ChangeLog README.md LICENSE COPYING* $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a AUTHOR README.md LICENSE COPYING* $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/libraries/fuzzylite/fuzzylite.info b/libraries/fuzzylite/fuzzylite.info
index f81b2e5914..ee96c5ed57 100644
--- a/libraries/fuzzylite/fuzzylite.info
+++ b/libraries/fuzzylite/fuzzylite.info
@@ -1,8 +1,8 @@
PRGNAM="fuzzylite"
-VERSION="5.1"
+VERSION="6.0"
HOMEPAGE="https://www.fuzzylite.com"
-DOWNLOAD="https://github.com/fuzzylite/fuzzylite/archive/v5.1.tar.gz"
-MD5SUM="fcee03636fa417847d703e55cf11e34f"
+DOWNLOAD="https://github.com/fuzzylite/fuzzylite/archive/v6.0/fuzzylite-6.0.tar.gz"
+MD5SUM="34f3e1b27aa2abd9210b7d90f9d45785"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/gstreamer-editing-services/gstreamer-editing-services.SlackBuild b/libraries/gstreamer-editing-services/gstreamer-editing-services.SlackBuild
index 6ba6fb2d4d..e23a1b1b71 100644
--- a/libraries/gstreamer-editing-services/gstreamer-editing-services.SlackBuild
+++ b/libraries/gstreamer-editing-services/gstreamer-editing-services.SlackBuild
@@ -23,7 +23,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=gstreamer-editing-services
-VERSION=${VERSION:-1.6.2}
+VERSION=${VERSION:-1.14.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
diff --git a/libraries/gstreamer-editing-services/gstreamer-editing-services.info b/libraries/gstreamer-editing-services/gstreamer-editing-services.info
index e58125ace5..f11b134a9f 100644
--- a/libraries/gstreamer-editing-services/gstreamer-editing-services.info
+++ b/libraries/gstreamer-editing-services/gstreamer-editing-services.info
@@ -1,8 +1,8 @@
PRGNAM="gstreamer-editing-services"
-VERSION="1.6.2"
+VERSION="1.14.0"
HOMEPAGE="https://gstreamer.freedesktop.org/modules/gst-editing-services.html"
-DOWNLOAD="https://gstreamer.freedesktop.org/src/gstreamer-editing-services/gstreamer-editing-services-1.6.2.tar.xz"
-MD5SUM="76a1aa3f08af4c56b08d784aea46b712"
+DOWNLOAD="https://gstreamer.freedesktop.org/src/gstreamer-editing-services/gstreamer-editing-services-1.14.0.tar.xz"
+MD5SUM="6f49450e692f6a5e328e57be811d2d82"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/gstreamermm/fix_warnings.patch b/libraries/gstreamermm/fix_warnings.patch
new file mode 100644
index 0000000000..fccb480a11
--- /dev/null
+++ b/libraries/gstreamermm/fix_warnings.patch
@@ -0,0 +1,15 @@
+Author: Marcin Kolny <marcin.kolny@gmail.com>
+Description: Fix warnings
+Origin: https://git.gnome.org/browse/gstreamermm/commit/gstreamer/gstreamermm/check.cc?id=c5006faf05bc4b46767d30f42bcb6157836b7540
+Last-update: 2016-09-25
+--- a/gstreamer/gstreamermm/check.cc
++++ b/gstreamer/gstreamermm/check.cc
+@@ -54,7 +54,7 @@
+
+ element = ElementFactory::create_element (factory, factory);
+
+- ThrowIf (element, "Could not create a '" + factory + "' element");
++ ThrowIf (!!element, "Could not create a '" + factory + "' element");
+ CheckRefCount (element->gobj(), factory, 1);
+
+ return element;
diff --git a/libraries/gstreamermm/gstreamermm.SlackBuild b/libraries/gstreamermm/gstreamermm.SlackBuild
index 73ece14f12..d6c0925fd9 100644
--- a/libraries/gstreamermm/gstreamermm.SlackBuild
+++ b/libraries/gstreamermm/gstreamermm.SlackBuild
@@ -69,6 +69,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# Needed for gcc >= 7.x - Thanks to opensuse
+patch -p1 < $CWD/fix_warnings.patch
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS -std=c++11" \
./configure \
diff --git a/libraries/gtkglext/gtkglext.SlackBuild b/libraries/gtkglext/gtkglext.SlackBuild
index 4aa77fbbfe..b95332a485 100644
--- a/libraries/gtkglext/gtkglext.SlackBuild
+++ b/libraries/gtkglext/gtkglext.SlackBuild
@@ -72,6 +72,8 @@ find -L . \
# Don't disable deprecated stuff
patch -p1 < $CWD/gtkglext-no-deprecated-flags.patch
+# From fedora - conflicting definition
+patch -p1 < $CWD/0002-GCC-8-fixes.patch
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
@@ -79,7 +81,6 @@ CXXFLAGS="$SLKCFLAGS" \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--disable-static \
- --enable-gtk-doc \
--enable-debug=no \
--build=$ARCH-slackware-linux
diff --git a/libraries/hpx/gcc7.patch b/libraries/hpx/gcc7.patch
new file mode 100644
index 0000000000..ab8d5cb94a
--- /dev/null
+++ b/libraries/hpx/gcc7.patch
@@ -0,0 +1,23 @@
+From cc15d1c67144200f070e74d80b6d840df0a16ee3 Mon Sep 17 00:00:00 2001
+From: Thomas Heller <thomas.heller@cs.fau.de>
+Date: Thu, 4 May 2017 08:15:13 +0200
+Subject: [PATCH] Fixing uninitialized usage warning with gcc 7
+
+---
+ src/runtime/parcelset/parcel.cpp | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/src/runtime/parcelset/parcel.cpp b/src/runtime/parcelset/parcel.cpp
+index 0f86c4043a1..56714af4c7b 100644
+--- a/src/runtime/parcelset/parcel.cpp
++++ b/src/runtime/parcelset/parcel.cpp
+@@ -47,7 +47,8 @@ namespace hpx { namespace parcelset
+ creation_time_(util::high_resolution_timer::now()),
+ #endif
+ source_id_(naming::invalid_gid),
+- dest_(naming::invalid_gid)
++ dest_(naming::invalid_gid),
++ has_continuation_(false)
+ {}
+
+ parcel_data::parcel_data(naming::gid_type&& dest, naming::address&& addr,
diff --git a/libraries/hpx/hpx.SlackBuild b/libraries/hpx/hpx.SlackBuild
index 0dbdd285e9..5156a21773 100644
--- a/libraries/hpx/hpx.SlackBuild
+++ b/libraries/hpx/hpx.SlackBuild
@@ -69,11 +69,15 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# From upstream
+patch -p1 < $CWD/gcc7.patch
+
mkdir -p build
cd build
cmake \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DHPX_WITH_CXX11=On \
-DCMAKE_INSTALL_PREFIX=/usr \
-DLIB=lib${LIBDIRSUFFIX} \
-DCMAKE_BUILD_TYPE=Release \
diff --git a/libraries/http-parser/http-parser.SlackBuild b/libraries/http-parser/http-parser.SlackBuild
index 07fbfbc886..8480b8afbf 100644
--- a/libraries/http-parser/http-parser.SlackBuild
+++ b/libraries/http-parser/http-parser.SlackBuild
@@ -69,7 +69,7 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-CFLAGS="$SLKCFLAGS" \
+CFLAGS="$SLKCFLAGS -Wno-error=implicit-fallthrough=" \
make install \
PREFIX=$PKG/usr \
LIBDIR=$PKG/usr/lib${LIBDIRSUFFIX}
diff --git a/libraries/id3lib/README b/libraries/id3lib/README
deleted file mode 100644
index 1200e808a8..0000000000
--- a/libraries/id3lib/README
+++ /dev/null
@@ -1,13 +0,0 @@
-This package provides a software library for manipulating ID3v1 and
-ID3v2 tags. It provides a convenient interface for software
-developers to include standards-compliant ID3v1/2 tagging
-capabilities in their applications.
-Features include identification of valid tags, automatic size
-conversions, (re)synchronisation of tag frames, seamless tag
-(de)compression, and optional padding facilities.
-
-This has been patched with the latest UTF16bugfix patch so that
-it correctly writes UTF8 and 16 files.
-
-This SlackBuild is heavily based on alienBob's, but with added
-patch for correct UTF handling and some other minor changes.
diff --git a/libraries/id3lib/id3lib.SlackBuild b/libraries/id3lib/id3lib.SlackBuild
deleted file mode 100644
index d0b72264bf..0000000000
--- a/libraries/id3lib/id3lib.SlackBuild
+++ /dev/null
@@ -1,119 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for id3lib
-
-# Copyright 2006 Halim Issa <yallaone@gmail.com>
-#
-# 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.
-
-# Heavily based on original slackbuild by AlienBOB.
-# Modified by Robby Workman <rworkman@slackbuilds.org>
-
-PRGNAM=id3lib
-VERSION=${VERSION:-3.8.3}
-BUILD=${BUILD:-2}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i486 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- SLKLDFLAGS="-L/usr/lib64"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-patch -p1 < $CWD/patches/id3lib_3.8.3_UTF16_writing_bug.patch
-patch -p1 < $CWD/patches/id3lib-3.8.3-GCC43FIX-1.patch
-patch -p1 -d doc < $CWD/patches/id3lib_Doxyfile.patch
-
-# iomanip.h is obsolete; use the standard c++ header
-sed -i "s%iomanip.h%iomanip%g" configure
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --localstatedir=/var \
- --sysconfdir=/etc \
- --enable-static=no \
- --enable-debug=no \
- --build=$ARCH-slackware-linux
-
-make
-make docs 2>/dev/null || true
-make install DESTDIR=$PKG
-
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-# Strip down the doc and examples directories so we can copy w/impunity
-for i in doc/ examples/; do \
- find $i \
- \( -name 'Makefile*' -or -name '*.ps.gz' -or -name '*.pdf' -or -name '*.in' \
- \) -exec rm {} \; ; done
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a \
- AUTHORS COPYING ChangeLog HISTORY NEWS README THANKS TODO doc/* \
- $PKG/usr/doc/$PRGNAM-$VERSION
-find $PKG/usr/doc/$PRGNAM-$VERSION -type f -exec chmod 0644 {} \;
-# Remove the massive amount of API docs
-rm -rf $PKG/usr/doc/$PRGNAM-$VERSION/api
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-chmod -R o-w $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/libraries/id3lib/id3lib.info b/libraries/id3lib/id3lib.info
deleted file mode 100644
index 17d22bb8c7..0000000000
--- a/libraries/id3lib/id3lib.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="id3lib"
-VERSION="3.8.3"
-HOMEPAGE="http://id3lib.sourceforge.net/"
-DOWNLOAD="http://downloads.sourceforge.net/id3lib/id3lib-3.8.3.tar.gz"
-MD5SUM="19f27ddd2dda4b2d26a559a4f0f402a7"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Yalla-One"
-EMAIL="yallaone@gmail.com"
diff --git a/libraries/id3lib/patches/id3lib-3.8.3-GCC43FIX-1.patch b/libraries/id3lib/patches/id3lib-3.8.3-GCC43FIX-1.patch
deleted file mode 100644
index cae30e1870..0000000000
--- a/libraries/id3lib/patches/id3lib-3.8.3-GCC43FIX-1.patch
+++ /dev/null
@@ -1,90 +0,0 @@
-Submitted By: zippo zippo@oppiz.net
-Date: 2008-10-28
-Initial Package Version: 3.8.3
-Upstream Status: Unknown
-Origin: zippo@oppiz.net
-Description:Fixes things up for GCC-4.3.2
-
-diff -Naur id3lib-3.8.3/examples/demo_convert.cpp 32/id3lib-3.8.3/examples/demo_convert.cpp
---- id3lib-3.8.3/examples/demo_convert.cpp 2003-03-02 00:23:00.000000000 +0000
-+++ 32/id3lib-3.8.3/examples/demo_convert.cpp 2008-10-29 20:10:04.000000000 +0000
-@@ -84,7 +84,7 @@
- }
- }
-
--int main( unsigned int argc, char * const argv[])
-+int main(int argc, char * const argv[])
- {
- flags_t ulFlag = ID3TT_ALL;
- gengetopt_args_info args;
-diff -Naur id3lib-3.8.3/examples/demo_copy.cpp 32/id3lib-3.8.3/examples/demo_copy.cpp
---- id3lib-3.8.3/examples/demo_copy.cpp 2003-03-02 00:23:00.000000000 +0000
-+++ 32/id3lib-3.8.3/examples/demo_copy.cpp 2008-10-29 20:10:54.000000000 +0000
-@@ -81,7 +81,7 @@
- }
- }
-
--int main( unsigned int argc, char * const argv[])
-+int main(int argc, char * const argv[])
- {
- int ulFlag = ID3TT_ID3;
- ID3D_INIT_DOUT();
-diff -Naur id3lib-3.8.3/examples/demo_info.cpp 32/id3lib-3.8.3/examples/demo_info.cpp
---- id3lib-3.8.3/examples/demo_info.cpp 2003-03-02 00:23:00.000000000 +0000
-+++ 32/id3lib-3.8.3/examples/demo_info.cpp 2008-10-29 20:09:31.000000000 +0000
-@@ -309,7 +309,7 @@
-
- #define DEBUG
-
--int main( unsigned int argc, char * const argv[])
-+int main(int argc, char * const argv[])
- {
- ID3D_INIT_DOUT();
-
-diff -Naur id3lib-3.8.3/examples/demo_tag.cpp 32/id3lib-3.8.3/examples/demo_tag.cpp
---- id3lib-3.8.3/examples/demo_tag.cpp 2003-03-02 00:23:00.000000000 +0000
-+++ 32/id3lib-3.8.3/examples/demo_tag.cpp 2008-10-29 20:10:26.000000000 +0000
-@@ -46,7 +46,7 @@
- os << "v2";
- }
-
--int main( unsigned int argc, char * const argv[])
-+int main(int argc, char * const argv[])
- {
- int ulFlag = ID3TT_ID3;
- ID3D_INIT_DOUT();
-diff -Naur id3lib-3.8.3/include/id3/id3lib_strings.h 32/id3lib-3.8.3/include/id3/id3lib_strings.h
---- id3lib-3.8.3/include/id3/id3lib_strings.h 2003-03-02 00:23:00.000000000 +0000
-+++ 32/id3lib-3.8.3/include/id3/id3lib_strings.h 2008-10-29 20:03:28.000000000 +0000
-@@ -30,6 +30,7 @@
- #define _ID3LIB_STRINGS_H_
-
- #include <string>
-+#include "string.h"
-
- #if (defined(__GNUC__) && (__GNUC__ >= 3) || (defined(_MSC_VER) && _MSC_VER > 1000))
- namespace std
-diff -Naur id3lib-3.8.3/include/id3/writers.h 32/id3lib-3.8.3/include/id3/writers.h
---- id3lib-3.8.3/include/id3/writers.h 2003-03-02 00:23:00.000000000 +0000
-+++ 32/id3lib-3.8.3/include/id3/writers.h 2008-10-29 20:05:56.000000000 +0000
-@@ -30,7 +30,7 @@
-
- #include "id3/writer.h"
- #include "id3/id3lib_streams.h"
--//#include <string.h>
-+#include "string.h"
-
- class ID3_CPP_EXPORT ID3_OStreamWriter : public ID3_Writer
- {
-diff -Naur id3lib-3.8.3/src/field.cpp 32/id3lib-3.8.3/src/field.cpp
---- id3lib-3.8.3/src/field.cpp 2003-03-02 00:23:00.000000000 +0000
-+++ 32/id3lib-3.8.3/src/field.cpp 2008-10-29 20:02:19.000000000 +0000
-@@ -33,6 +33,8 @@
- #include "readers.h"
- #include <assert.h>
-
-+#include "string.h"
-+
- using namespace dami;
-
- // This is used for unimplemented frames so that their data is preserved when
diff --git a/libraries/id3lib/patches/id3lib_3.8.3_UTF16_writing_bug.patch b/libraries/id3lib/patches/id3lib_3.8.3_UTF16_writing_bug.patch
deleted file mode 100644
index b05d2cf298..0000000000
--- a/libraries/id3lib/patches/id3lib_3.8.3_UTF16_writing_bug.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-diff -ruN id3lib-3.8.3.orig/ChangeLog id3lib-3.8.3/ChangeLog
---- id3lib-3.8.3.orig/ChangeLog 2003-03-02 01:23:00.000000000 +0100
-+++ id3lib-3.8.3/ChangeLog 2006-02-22 00:33:59.946214472 +0100
-@@ -1,3 +1,8 @@
-+2006-02-17 Jerome Couderc
-+
-+ * Patch from Spoon to fix UTF-16 writing bug
-+ http://sourceforge.net/tracker/index.php?func=detail&aid=1016290&group_id=979&atid=300979
-+
- 2003-03-02 Sunday 17:38 Thijmen Klok <thijmen@id3lib.org>
-
- * THANKS (1.20): added more people
-diff -ruN id3lib-3.8.3.orig/src/io_helpers.cpp id3lib-3.8.3/src/io_helpers.cpp
---- id3lib-3.8.3.orig/src/io_helpers.cpp 2003-03-02 01:23:00.000000000 +0100
-+++ id3lib-3.8.3/src/io_helpers.cpp 2006-02-22 00:35:02.926639992 +0100
-@@ -363,11 +363,22 @@
- // Write the BOM: 0xFEFF
- unicode_t BOM = 0xFEFF;
- writer.writeChars((const unsigned char*) &BOM, 2);
-+ // Patch from Spoon : 2004-08-25 14:17
-+ // http://sourceforge.net/tracker/index.php?func=detail&aid=1016290&group_id=979&atid=300979
-+ // Wrong code
-+ //for (size_t i = 0; i < size; i += 2)
-+ //{
-+ // unicode_t ch = (data[i] << 8) | data[i+1];
-+ // writer.writeChars((const unsigned char*) &ch, 2);
-+ //}
-+ // Right code
-+ unsigned char *pdata = (unsigned char *) data.c_str();
- for (size_t i = 0; i < size; i += 2)
- {
-- unicode_t ch = (data[i] << 8) | data[i+1];
-+ unicode_t ch = (pdata[i] << 8) | pdata[i+1];
- writer.writeChars((const unsigned char*) &ch, 2);
- }
-+ // End patch
- }
- return writer.getCur() - beg;
- }
diff --git a/libraries/id3lib/patches/id3lib_Doxyfile.patch b/libraries/id3lib/patches/id3lib_Doxyfile.patch
deleted file mode 100644
index 76288cbb05..0000000000
--- a/libraries/id3lib/patches/id3lib_Doxyfile.patch
+++ /dev/null
@@ -1,22 +0,0 @@
---- a/Doxyfile.in 2005-01-05 14:27:05.000000000 +0100
-+++ b/Doxyfile.in 2005-01-05 14:30:19.000000000 +0100
-@@ -263,14 +263,17 @@
-
- INPUT = ../src \
- ../include/id3/field.h \
-- ../include/id3/frame.h \
- ../include/id3/globals.h \
-+ ../include/id3/helpers.h \
-+ ../include/id3/id3lib_frame.h \
-+ ../include/id3/id3lib_streams.h \
-+ ../include/id3/id3lib_strings.h \
- ../include/id3/misc_support.h \
- ../include/id3/reader.h \
- ../include/id3/readers.h \
- ../include/id3/sized_types.h \
- ../include/id3/tag.h \
-- ../include/id3/tag.h \
-+ ../include/id3/utils.h \
- ../include/id3/writer.h \
- ../include/id3/writers.h
-
diff --git a/libraries/id3lib/slack-desc b/libraries/id3lib/slack-desc
deleted file mode 100644
index ccfa45ce29..0000000000
--- a/libraries/id3lib/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-id3lib: id3lib (id3 tag manipulation library)
-id3lib:
-id3lib: This package provides a software library for manipulating ID3v1 and
-id3lib: ID3v2 tags. It provides a convenient interface for software
-id3lib: developers to include standards-compliant ID3v1/2 tagging
-id3lib: capabilities in their applications.
-id3lib:
-id3lib: Features include identification of valid tags, automatic size
-id3lib: conversions, (re)synchronisation of tag frames, seamless tag
-id3lib: (de)compression, and optional padding facilities.
-id3lib:
diff --git a/libraries/jansson/README b/libraries/jansson/README
deleted file mode 100644
index 658898eea1..0000000000
--- a/libraries/jansson/README
+++ /dev/null
@@ -1 +0,0 @@
-Jansson is a C library for encoding, decoding and manipulating JSON data.
diff --git a/libraries/jansson/jansson.SlackBuild b/libraries/jansson/jansson.SlackBuild
deleted file mode 100644
index 442ed044e0..0000000000
--- a/libraries/jansson/jansson.SlackBuild
+++ /dev/null
@@ -1,99 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for jansson
-
-# Copyright 2014-2018 Larry Hajali <larryhaja[at]gmail[dot]com>
-# 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.
-
-PRGNAM=jansson
-VERSION=${VERSION:-2.12}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --enable-static=no \
- --disable-silent-rules \
- --build=$ARCH-slackware-linux
-
-make
-make install DESTDIR=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a CHANGES LICENSE README.rst $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/libraries/jansson/jansson.info b/libraries/jansson/jansson.info
deleted file mode 100644
index edd491c9fd..0000000000
--- a/libraries/jansson/jansson.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="jansson"
-VERSION="2.12"
-HOMEPAGE="http://www.digip.org/jansson/"
-DOWNLOAD="http://www.digip.org/jansson/releases/jansson-2.12.tar.bz2"
-MD5SUM="317dbaf90a9f85ea0ec7b12d080d173d"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Larry Hajali"
-EMAIL="larryhaja[at]gmail[dot]com"
diff --git a/libraries/json-glib/README b/libraries/json-glib/README
deleted file mode 100644
index 84d3d2669b..0000000000
--- a/libraries/json-glib/README
+++ /dev/null
@@ -1,3 +0,0 @@
-JSON-GLib is a library providing serialization and deserialization
-support for the JavaScript Object Notation (JSON) format described
-by RFC 4627.
diff --git a/libraries/json-glib/json-glib.SlackBuild b/libraries/json-glib/json-glib.SlackBuild
deleted file mode 100644
index acf870593e..0000000000
--- a/libraries/json-glib/json-glib.SlackBuild
+++ /dev/null
@@ -1,97 +0,0 @@
-#!/bin/sh
-#
-# Slackware build script for JSON-Glib
-#
-# Copyright 2009-2017 Erik W. Hanson, Minneapolis, 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.
-
-PRGNAM=json-glib
-VERSION=${VERSION:-1.2.8}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i486 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -eu
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-CFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --sysconfdir=/etc \
- --localstatedir=/var/lib \
- --mandir=/usr/man \
- --disable-static \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --build=$ARCH-slackware-linux
-
-make
-make install-strip DESTDIR=$PKG
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a ABOUT-NLS COPYING ChangeLog NEWS $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-ln -s /usr/share/gtk-doc/html/json-glib $PKG/usr/doc/$PRGNAM-$VERSION/html
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/libraries/json-glib/json-glib.info b/libraries/json-glib/json-glib.info
deleted file mode 100644
index 50a013fe73..0000000000
--- a/libraries/json-glib/json-glib.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="json-glib"
-VERSION="1.2.8"
-HOMEPAGE="http://live.gnome.org/JsonGlib"
-DOWNLOAD="http://ftp.acc.umu.se/pub/GNOME/sources/json-glib/1.2/json-glib-1.2.8.tar.xz"
-MD5SUM="ff31e7d0594df44318e12facda3d086e"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Erik Hanson"
-EMAIL="erik@slackbuilds.org"
diff --git a/libraries/json-glib/slack-desc b/libraries/json-glib/slack-desc
deleted file mode 100644
index 3f96be22b3..0000000000
--- a/libraries/json-glib/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-json-glib: json-glib (a de/serialization library for the JS Object Notation)
-json-glib:
-json-glib: JSON-GLib is a library providing serialization and deserialization
-json-glib: support for the JavaScript Object Notation (JSON) format described
-json-glib: by RFC 4627.
-json-glib:
-json-glib: Homepage: http://live.gnome.org/JsonGlib
-json-glib:
-json-glib:
-json-glib:
-json-glib:
diff --git a/libraries/lame/CVE-2017-15018.patch.gz b/libraries/lame/CVE-2017-15018.patch.gz
deleted file mode 100644
index 30d768d4f0..0000000000
--- a/libraries/lame/CVE-2017-15018.patch.gz
+++ /dev/null
Binary files differ
diff --git a/libraries/lame/README b/libraries/lame/README
deleted file mode 100644
index b196d4079f..0000000000
--- a/libraries/lame/README
+++ /dev/null
@@ -1,3 +0,0 @@
-LAME is an educational tool to be used for learning about MP3 encoding.
-The goal of the LAME project is to use the open source model to improve
-the psycho acoustics, noise shaping, and speed of MP3.
diff --git a/libraries/lame/lame.SlackBuild b/libraries/lame/lame.SlackBuild
deleted file mode 100644
index 2b44132473..0000000000
--- a/libraries/lame/lame.SlackBuild
+++ /dev/null
@@ -1,113 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for lame
-
-# Copyright 2006 Martin Lefebvre <dadexter@gmail.com>
-# Copyright 2008,2010 Michiel van Wessem, Manchester, United Kingdom
-# 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.
-
-PRGNAM=lame
-VERSION=${VERSION:-3.99.5}
-BUILD=${BUILD:-2}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-# Fix for the newer gcc
-# http://www.linuxfromscratch.org/blfs/view/svn/multimedia/lame.html
-case $(uname -m) in
- i?86) sed -i -e '/xmmintrin\.h/d' configure ;;
-esac
-
-# Fix CVE-2017-15018
-zcat $CWD/CVE-2017-15018.patch.gz | patch -p1
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --htmldir=/usr/doc/$PRGNAM-$VERSION \
- --enable-nasm \
- --enable-static=no \
- --build=$ARCH-slackware-linux
-
-make pkgdocdir=/usr/doc/$PRGNAM-$VERSION
-make install pkgdocdir=/usr/doc/$PRGNAM-$VERSION DESTDIR=$PKG
-
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a API COPYING ChangeLog DEFINES HACKING INSTALL* LICENSE README* \
- STYLEGUIDE TODO USAGE $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/libraries/lame/lame.info b/libraries/lame/lame.info
deleted file mode 100644
index 88b34affad..0000000000
--- a/libraries/lame/lame.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="lame"
-VERSION="3.99.5"
-HOMEPAGE="http://lame.sourceforge.net/"
-DOWNLOAD="http://downloads.sourceforge.net/lame/lame-3.99.5.tar.gz"
-MD5SUM="84835b313d4a8b68f5349816d33e07ce"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Michiel van Wessem"
-EMAIL="michiel@slackbuilds.org"
diff --git a/libraries/lame/slack-desc b/libraries/lame/slack-desc
deleted file mode 100644
index c8c2c6d12e..0000000000
--- a/libraries/lame/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-lame: lame (LAME Ain't an Mp3 Encoder)
-lame:
-lame: LAME is an educational tool to be used for learning about MP3
-lame: encoding. The goal of the LAME project is to use the open source
-lame: model to improve the psycho acoustics, noise shaping, and speed of
-lame: MP3.
-lame:
-lame:
-lame:
-lame:
-lame:
diff --git a/libraries/libart-lgpl/README b/libraries/libart-lgpl/README
new file mode 100644
index 0000000000..1dfaf798f6
--- /dev/null
+++ b/libraries/libart-lgpl/README
@@ -0,0 +1,3 @@
+Libart is a library for high-performance 2D graphics. It was used by
+both KDE and GNOME. This is the LGPL'd component of the library.
+Raph Levien <raph@acm.org> is the author of libart.
diff --git a/audio/opusfile/opusfile.SlackBuild b/libraries/libart-lgpl/libart-lgpl.SlackBuild
index f771403ff1..27801d55a5 100644
--- a/audio/opusfile/opusfile.SlackBuild
+++ b/libraries/libart-lgpl/libart-lgpl.SlackBuild
@@ -1,8 +1,8 @@
#!/bin/sh
-# Slackware build script for opusfile
+# Slackware build script for libart-lgpl
-# Copyright 2013-2018 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
+# Copyright 2018 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,8 +22,8 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-PRGNAM=opusfile
-VERSION=${VERSION:-0.11}
+PRGNAM=libart-lgpl
+VERSION=${VERSION:-r14.0.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -54,7 +54,7 @@ else
LIBDIRSUFFIX=""
fi
-DOCS="AUTHORS COPYING README.md"
+DOCS="AUTHORS COPYING ChangeLog NEWS README"
set -e
@@ -69,7 +69,7 @@ find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
-o -perm 511 \) -exec chmod 755 {} \; -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
diff --git a/libraries/libart-lgpl/libart-lgpl.info b/libraries/libart-lgpl/libart-lgpl.info
new file mode 100644
index 0000000000..13a7454980
--- /dev/null
+++ b/libraries/libart-lgpl/libart-lgpl.info
@@ -0,0 +1,10 @@
+PRGNAM="libart-lgpl"
+VERSION="r14.0.4"
+HOMEPAGE="http://mirror.git.trinitydesktop.org/cgit/libart-lgpl/"
+DOWNLOAD="http://ponce.cc/slackware/sources/repo/libart-lgpl-r14.0.4.tar.xz"
+MD5SUM="12e8ee49a6c843fad3a4be9b3514104a"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Matteo Bernardini"
+EMAIL="ponce@slackbuilds.org"
diff --git a/desktop/seafile-gui/slack-desc b/libraries/libart-lgpl/slack-desc
index 4de44d8853..eb0120d1d0 100644
--- a/desktop/seafile-gui/slack-desc
+++ b/libraries/libart-lgpl/slack-desc
@@ -6,14 +6,15 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-seafile-gui: seafile-gui (Seafile Desktop Client)
-seafile-gui:
-seafile-gui: Graphical desktop client for the Seafile next-generation open
-seafile-gui: source cloud storage system with advanced support for file syncing,
-seafile-gui: privacy protection and teamwork.
-seafile-gui:
-seafile-gui: Homepage: http://seafile.com/
-seafile-gui:
-seafile-gui:
-seafile-gui:
-seafile-gui:
+libart-lgpl: libart_lgpl (graphics library)
+libart-lgpl:
+libart-lgpl: Libart is a library for high-performance 2D graphics. It was used by
+libart-lgpl: both KDE and GNOME. This is the LGPL'd component of the library.
+libart-lgpl: Raph Levien <raph@acm.org> is the author of libart.
+libart-lgpl:
+libart-lgpl: homepage: http://mirror.git.trinitydesktop.org/cgit/libart-lgpl/
+libart-lgpl:
+libart-lgpl:
+libart-lgpl:
+libart-lgpl:
+libart-lgpl:
diff --git a/libraries/libbluray/README b/libraries/libbluray/README
deleted file mode 100644
index aab8dd8f96..0000000000
--- a/libraries/libbluray/README
+++ /dev/null
@@ -1,15 +0,0 @@
-libbluray is an open-source library designed for Blu-Ray Discs playback for
-media players, like VLC or MPlayer. libbluray integrates navigation, playlist
-parsing, menus and BD-J. libbluray is DRM-circumvention free, and thus, safe to
-integrate in your software.
-
-Optional runtime dependencies: libaacs and libbdplus
-
-Optional build time dependency is graphviz, apache-ant and jdk. To build the
-extra bdjava capabilities, apache-ant and jdk are needed. Then run the
-slackbuild as:
-
- BDJAVA=yes sh libbluray.SlackBuild
-
-Most commercial Blu-Ray are protected by AACS or BD+ technologies and this
-library is not enough to playback those discs.
diff --git a/libraries/libbluray/libbluray.SlackBuild b/libraries/libbluray/libbluray.SlackBuild
deleted file mode 100644
index f0b5ad6834..0000000000
--- a/libraries/libbluray/libbluray.SlackBuild
+++ /dev/null
@@ -1,111 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for libbluray
-
-# Copyright 2011-2019 Larry Hajali <larryhaja[at]gmail[dot]com>
-# 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.
-
-PRGNAM=libbluray
-VERSION=${VERSION:-1.1.0}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-# Hack for compiling xine plugin bindings for libbluray.
-sed -i -e '/pkg-config libbluray/d' -e 's|0644|0755|' player_wrappers/xine/Makefile
-
-# If you want bdjava enabled then set BDAJVA=yes to the slackbuild.
-if [ "${BDJAVA:-no}" == 'yes' ]; then
- OPT_ARGS="--enable-bdjava-jar"
-else
- OPT_ARGS="--disable-bdjava-jar"
-fi
-
-CFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --disable-silent-rules \
- --enable-static=no \
- $OPT_ARGS \
- --build=$ARCH-slackware-linux
-
-make
-make install DESTDIR=$PKG
-
-# Install the xine bluray plugin
-CFLAGS="$SLKCFLAGS -I$PKG/usr/include" \
-LDFLAGS="-L$PKG/usr/lib$LIBDIRSUFFIX" \
-LIBS_BD="-lbluray" \
-make -C player_wrappers/xine DESTDIR=$PKG install
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a COPYING README.txt player_wrappers/xine/HOWTO $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/libraries/libbluray/libbluray.info b/libraries/libbluray/libbluray.info
deleted file mode 100644
index bde3dbcde3..0000000000
--- a/libraries/libbluray/libbluray.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="libbluray"
-VERSION="1.1.0"
-HOMEPAGE="http://www.videolan.org/developers/libbluray.html"
-DOWNLOAD="http://ftp.videolan.org/pub/videolan/libbluray/1.1.0/libbluray-1.1.0.tar.bz2"
-MD5SUM="ba1aa5803a55e89f813090ec6d238635"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Larry Hajali"
-EMAIL="larryhaja[at]gmail[dot]com"
diff --git a/libraries/libbluray/slack-desc b/libraries/libbluray/slack-desc
deleted file mode 100644
index 920e26f2a7..0000000000
--- a/libraries/libbluray/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-libbluray: libbluray (Blu-Ray Disc playback library)
-libbluray:
-libbluray: libbluray is an open-source library designed for Blu-Ray Discs
-libbluray: playback for media players, like VLC or MPlayer.
-libbluray:
-libbluray: Homepage: http://www.videolan.org/developers/libbluray.html
-libbluray:
-libbluray:
-libbluray:
-libbluray:
-libbluray:
diff --git a/libraries/libc++/README b/libraries/libc++/README
deleted file mode 100644
index 6573443a04..0000000000
--- a/libraries/libc++/README
+++ /dev/null
@@ -1,5 +0,0 @@
-libc++ is the LLVM C++ standard library, targeting C++11.
-This SlackBuild will produce a version of libc++ that uses the
-libc++abi ABI interface.
-
-Note that the experimental library is NOT built by this script.
diff --git a/libraries/libc++/libc++.SlackBuild b/libraries/libc++/libc++.SlackBuild
deleted file mode 100644
index ec6f66d40b..0000000000
--- a/libraries/libc++/libc++.SlackBuild
+++ /dev/null
@@ -1,130 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for libc++
-
-# Copyright 2017 Coastal Carolina University
-# 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.
-
-PRGNAM=libc++
-VERSION=${VERSION:-3.8.0}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-SOURCES=(
- llvm-${VERSION}.src.tar.xz
- libcxxabi-${VERSION}.src.tar.xz
- libcxx-${VERSION}.src.tar.xz
-)
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-
-cd $TMP
-rm -rf llvm-${VERSION}
-tar xvf $CWD/${SOURCES[0]}
-mv llvm-${VERSION}.src llvm-${VERSION}
-
-cd llvm-${VERSION}/projects
-tar xvf $CWD/${SOURCES[1]}
-tar xvf $CWD/${SOURCES[2]}
-mv libcxx-${VERSION}.src libcxx
-mv libcxxabi-${VERSION}.src libcxxabi
-cd ..
-
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-cd $TMP
-rm -rf build
-mkdir -p build
-
-cd build
-CC=clang CXX=clang++ cmake \
- -G "Unix Makefiles" \
- -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DLLVM_LIBDIR_SUFFIX=${LIBDIRSUFFIX} \
- -DLLVM_ENABLE_SPHINX=ON \
- -DLIBCXX_INCLUDE_DOCS=ON \
- ../llvm-${VERSION}
-
-# This break with unknown option: LLVM_BUILD_32_BITS
-#make cxx docs-libcxx-html
-make install-libcxx DESTDIR=${PKG}
-make install-libcxxabi DESTDIR=${PKG}
-
-cd ..
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp llvm-${VERSION}/projects/libcxx/CREDITS.TXT \
- $PKG/usr/doc/${PRGNAM}-${VERSION}/libcxx-CREDITS.TXT
-cp llvm-${VERSION}/projects/libcxx/LICENSE.TXT \
- $PKG/usr/doc/${PRGNAM}-${VERSION}/libcxx-LICENSE.TXT
-cp llvm-${VERSION}/projects/libcxxabi/CREDITS.TXT \
- $PKG/usr/doc/${PRGNAM}-${VERSION}/libcxxabi-CREDITS.TXT
-cp llvm-${VERSION}/projects/libcxx/LICENSE.TXT \
- $PKG/usr/doc/${PRGNAM}-${VERSION}/libcxxabi-LICENSE.TXT
-#cp -a build/projects/libcxx/docs/html $PKG/usr/doc/${PRGNAM}-${VERSION}
-
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/libraries/libc++/libc++.info b/libraries/libc++/libc++.info
deleted file mode 100644
index 7d803612bb..0000000000
--- a/libraries/libc++/libc++.info
+++ /dev/null
@@ -1,14 +0,0 @@
-PRGNAM="libc++"
-VERSION="3.8.0"
-HOMEPAGE="http://libcxx.llvm.org/"
-DOWNLOAD="http://releases.llvm.org/3.8.0/llvm-3.8.0.src.tar.xz \
- http://releases.llvm.org/3.8.0/libcxx-3.8.0.src.tar.xz \
- http://releases.llvm.org/3.8.0/libcxxabi-3.8.0.src.tar.xz"
-MD5SUM="07a7a74f3c6bd65de4702bf941b511a0 \
- d6e0bdbbee39f7907ad74fd56d03b88a \
- bbe6b4d72c7c5978550d370af529bcf7"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="libunwind Sphinx"
-MAINTAINER="Dr. Mike Murphy"
-EMAIL="mmurphy2@coastal.edu"
diff --git a/libraries/libc++/slack-desc b/libraries/libc++/slack-desc
deleted file mode 100644
index d59c7ba0fc..0000000000
--- a/libraries/libc++/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-libc++: libc++ (LLVM C++ standard library implementation)
-libc++:
-libc++: libc++ is a new implementation of the C++ standard library,
-libc++: targeting C++11.
-libc++:
-libc++:
-libc++:
-libc++:
-libc++:
-libc++: Project Website: http://libcxx.llvm.org/
-libc++:
diff --git a/libraries/libclaw/lib.patch b/libraries/libclaw/lib.patch
deleted file mode 100644
index 8ea8694e1a..0000000000
--- a/libraries/libclaw/lib.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- libclaw-1.7.4/CMakeLists.orig.txt 2015-05-14 17:54:05.443919651 +0300
-+++ libclaw-1.7.4/CMakeLists.txt 2015-05-14 17:54:22.925701098 +0300
-@@ -30,7 +30,7 @@
- set( CLAW_CODE_DIR claw/code/ )
- set( CLAW_INCLUDE_DIRECTORY "${CMAKE_INSTALL_PREFIX}/include/" )
- set( CLAW_INSTALLDIR_SOURCE include/claw/ )
--set( CLAW_INSTALLDIR_LIB lib/ )
-+set( CLAW_INSTALLDIR_LIB lib64/ )
- set( CLAW_INSTALLDIR_DOC share/doc/libclaw${CLAW_VERSION_MAJOR}/ )
- set( CLAW_TRANSLATIONS_INSTALL_DIR "share/locale" )
- set( CLAW_EXECUTABLE_DIR bin/ )
diff --git a/libraries/libclaw/libclaw.SlackBuild b/libraries/libclaw/libclaw.SlackBuild
index 1cee1fa691..7b426f6ace 100644
--- a/libraries/libclaw/libclaw.SlackBuild
+++ b/libraries/libclaw/libclaw.SlackBuild
@@ -69,9 +69,8 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-if [ "$ARCH" = "x86_64" ]; then
- patch -p1 < $CWD/lib.patch
-fi
+# Apply some patches from fedora
+for i in $CWD/patches/*.patch ; do patch -p1 < $i ; done
mkdir -p build
cd build
@@ -79,6 +78,7 @@ cd build
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_INSTALL_PREFIX=/usr \
+ -DLIB_SUFFIX=$LIBDIRSUFFIX \
-DCMAKE_BUILD_TYPE=Release ..
make
make install DESTDIR=$PKG
diff --git a/libraries/libclaw/patches/01_libclaw-1.7.4-libdir.patch b/libraries/libclaw/patches/01_libclaw-1.7.4-libdir.patch
new file mode 100644
index 0000000000..7e1172f22b
--- /dev/null
+++ b/libraries/libclaw/patches/01_libclaw-1.7.4-libdir.patch
@@ -0,0 +1,36 @@
+diff -up libclaw-1.7.4/claw-config.in.libdir libclaw-1.7.4/claw-config.in
+--- libclaw-1.7.4/claw-config.in.libdir 2013-07-03 13:34:38.000000000 -0600
++++ libclaw-1.7.4/claw-config.in 2016-12-29 16:58:52.140591117 -0700
+@@ -140,7 +140,7 @@ while test $# -gt 0; do
+ echo -I$CLAW_INCLUDE_DIRECTORY
+ ;;
+ --libs)
+- libdirs="-L${exec_prefix}/lib "
++ libdirs="-L${exec_prefix}/@CLAW_INSTALLDIR_LIB@ "
+
+ echo -n "$libdirs"
+ echo $(print_libraries)
+diff -up libclaw-1.7.4/CMakeLists.txt.libdir libclaw-1.7.4/CMakeLists.txt
+--- libclaw-1.7.4/CMakeLists.txt.libdir 2016-12-29 16:50:24.124507641 -0700
++++ libclaw-1.7.4/CMakeLists.txt 2016-12-29 16:50:24.137508590 -0700
+@@ -30,7 +30,7 @@ endif(SVN_ENTRIES)
+ set( CLAW_CODE_DIR claw/code/ )
+ set( CLAW_INCLUDE_DIRECTORY "${CMAKE_INSTALL_PREFIX}/include/" )
+ set( CLAW_INSTALLDIR_SOURCE include/claw/ )
+-set( CLAW_INSTALLDIR_LIB lib/ )
++set( CLAW_INSTALLDIR_LIB "lib${LIB_SUFFIX}/" )
+ set( CLAW_INSTALLDIR_DOC share/doc/libclaw${CLAW_VERSION_MAJOR}/ )
+ set( CLAW_TRANSLATIONS_INSTALL_DIR "share/locale" )
+ set( CLAW_EXECUTABLE_DIR bin/ )
+diff -up libclaw-1.7.4/cmake-module/CMakeLists.txt.libdir libclaw-1.7.4/cmake-module/CMakeLists.txt
+--- libclaw-1.7.4/cmake-module/CMakeLists.txt.libdir 2013-07-03 13:34:38.000000000 -0600
++++ libclaw-1.7.4/cmake-module/CMakeLists.txt 2016-12-29 16:50:24.148509393 -0700
+@@ -3,7 +3,7 @@ cmake_minimum_required(VERSION 2.6)
+ project(claw:cmake-modules)
+
+ if( NOT CLAW_CMAKE_MODULES_INSTALL_PATH )
+- set( CLAW_CMAKE_MODULES_INSTALL_PATH "share/cmake/libclaw" )
++ set( CLAW_CMAKE_MODULES_INSTALL_PATH "lib${LIB_SUFFIX}/cmake/libclaw" )
+ endif( NOT CLAW_CMAKE_MODULES_INSTALL_PATH )
+
+ set( CLAW_CMAKE_MODULES
diff --git a/libraries/libclaw/patches/02_libclaw-1.7.4-gcc62.patch b/libraries/libclaw/patches/02_libclaw-1.7.4-gcc62.patch
new file mode 100644
index 0000000000..e1da77043d
--- /dev/null
+++ b/libraries/libclaw/patches/02_libclaw-1.7.4-gcc62.patch
@@ -0,0 +1,89 @@
+From a13a75306bba55538ba7d5188ffc1a7eb34f173b Mon Sep 17 00:00:00 2001
+From: Lubomir Rintel <lkundrak@v3.sk>
+Date: Mon, 28 Nov 2016 10:21:33 +0100
+Subject: [PATCH 1/2] Deal with correct getline() type
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+ libclaw-1.7.4/claw/code/configuration_file.cpp:
+ In member function ‘bool claw::configuration_file::get_line(std::istream&,
+ const claw::configuration_file::syntax_description&, std::__cxx11::string&) const’:
+ libclaw-1.7.4/claw/code/configuration_file.cpp:444:39: error: cannot convert
+ ‘std::basic_istream<char>’ to ‘bool’ in initialization
+ bool result = text::getline(is, line);
+---
+ claw/code/configuration_file.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/claw/code/configuration_file.cpp b/claw/code/configuration_file.cpp
+index e7bb26a..3839cff 100644
+--- a/claw/code/configuration_file.cpp
++++ b/claw/code/configuration_file.cpp
+@@ -441,7 +441,7 @@ claw::configuration_file::file_end() const
+ bool claw::configuration_file::get_line
+ ( std::istream& is, const syntax_description& syntax, std::string& line ) const
+ {
+- bool result = text::getline(is, line);
++ bool result = text::getline(is, line).good();
+
+ if ( result )
+ {
+--
+2.9.3
+
+From cadc97d9626307d2f1fcf113099c9c4ca0f7cf6b Mon Sep 17 00:00:00 2001
+From: Lubomir Rintel <lkundrak@v3.sk>
+Date: Mon, 28 Nov 2016 10:09:33 +0100
+Subject: [PATCH 2/2] Do something random to make C++ happy
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+ In file included from /usr/include/boost/bind.hpp:22:0, libclaw-1.7.4/claw/code/tween/single_tweener.cpp:32:
+ /usr/include/boost/bind/bind.hpp: In instantiation of ‘void boost::_bi::list2<A1, A2>::operator()(boost::_bi::type<void>, F&, A&, int) [with F = void (*)(double&, double&); A = boost::_bi::rrlist1<double>; A1 = boost::reference_wrapper<double>; A2 = boost::arg<1>]’:
+ /usr/include/boost/bind/bind.hpp:1234:50: required from ‘boost::_bi::bind_t<R, F, L>::result_type boost::_bi::bind_t<R, F, L>::operator()(A1&&) [with A1 = double; R = void; F = void (*)(double&, double&); L = boost::_bi::list2<boost::reference_wrapper<double>, boost::arg<1> >; boost::_bi::bind_t<R, F, L>::result_type = void]’
+ /usr/include/boost/function/function_template.hpp:159:11: required from ‘static void boost::detail::function::void_function_obj_invoker1<FunctionObj, R, T0>::invoke(boost::detail::function::function_buffer&, T0) [with FunctionObj = boost::_bi::bind_t<void, void (*)(double&, double&), boost::_bi::list2<boost::reference_wrapper<double>, boost::arg<1> > >; R = void; T0 = double]’
+ /usr/include/boost/function/function_template.hpp:937:38: required from ‘void boost::function1<R, T1>::assign_to(Functor) [with Functor = boost::_bi::bind_t<void, void (*)(double&, double&), boost::_bi::list2<boost::reference_wrapper<double>, boost::arg<1> > >; R = void; T0 = double]’
+ /usr/include/boost/function/function_template.hpp:727:7: required from ‘boost::function1<R, T1>::function1(Functor, typename boost::enable_if_c<(! boost::is_integral<Functor>::value), int>::type) [with Functor = boost::_bi::bind_t<void, void (*)(double&, double&), boost::_bi::list2<boost::reference_wrapper<double>, boost::arg<1> > >; R = void; T0 = double; typename boost::enable_if_c<(! boost::is_integral<Functor>::value), int>::type = int]’
+ /usr/include/boost/function/function_template.hpp:1073:16: required from ‘boost::function<R(T0)>::function(Functor, typename boost::enable_if_c<(! boost::is_integral<Functor>::value), int>::type) [with Functor = boost::_bi::bind_t<void, void (*)(double&, double&), boost::_bi::list2<boost::reference_wrapper<double>, boost::arg<1> > >; R = void; T0 = double; typename boost::enable_if_c<(! boost::is_integral<Functor>::value), int>::type = int]’
+ /usr/include/boost/function/function_template.hpp:1126:5: required from ‘typename boost::enable_if_c<(! boost::is_integral<Functor>::value), boost::function<R(T0)>&>::type boost::function<R(T0)>::operator=(Functor) [with Functor = boost::_bi::bind_t<void, void (*)(double&, double&), boost::_bi::list2<boost::reference_wrapper<double>, boost::arg<1> > >; R = void; T0 = double; typename boost::enable_if_c<(! boost::is_integral<Functor>::value), boost::function<R(T0)>&>::type = boost::function<void(double)>&]’
+ libclaw-1.7.4/claw/code/tween/single_tweener.cpp:125:62: required from here
+ /usr/include/boost/bind/bind.hpp:319:35: error: invalid initialization of non-const reference of type ‘double&’ from an rvalue of type ‘double’
+ unwrapper<F>::unwrap(f, 0)(a[base_type::a1_], a[base_type::a2_]);
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CMakeFiles/claw_tween-static.dir/build.make:89: recipe for target 'CMakeFiles/claw_tween-static.dir/claw/code/tween/single_tweener.cpp.o' failed
+---
+ claw/code/tween/single_tweener.cpp | 2 +-
+ claw/tween/single_tweener.hpp | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/claw/code/tween/single_tweener.cpp b/claw/code/tween/single_tweener.cpp
+index 2a3c7fe..d173eec 100644
+--- a/claw/code/tween/single_tweener.cpp
++++ b/claw/code/tween/single_tweener.cpp
+@@ -241,7 +241,7 @@ double claw::tween::single_tweener::do_update( double dt )
+ const double result = dt - t;
+ m_date += t;
+
+- const double val( get_value() );
++ double val( get_value() );
+
+ m_callback(val);
+
+diff --git a/claw/tween/single_tweener.hpp b/claw/tween/single_tweener.hpp
+index 9f05671..f730cfa 100644
+--- a/claw/tween/single_tweener.hpp
++++ b/claw/tween/single_tweener.hpp
+@@ -51,7 +51,7 @@ namespace claw
+ public:
+ /** \brief The type of the function called when the single_tweener is
+ updated. */
+- typedef boost::function<void (double)> update_function;
++ typedef boost::function<void (double&)> update_function;
+
+ /** \brief The type of the function used to compute the new value. */
+ typedef boost::function<double (double)> easing_function;
+--
+2.9.3
+
diff --git a/libraries/libclaw/patches/03_libclaw-1.7.4-gcc7.patch b/libraries/libclaw/patches/03_libclaw-1.7.4-gcc7.patch
new file mode 100644
index 0000000000..dd89e3e256
--- /dev/null
+++ b/libraries/libclaw/patches/03_libclaw-1.7.4-gcc7.patch
@@ -0,0 +1,36 @@
+Patch taken from upstream and edited for use in Fedora:
+
+commit 6033275773313fe052f6e222321a8ec87587fbe6
+Author: Julien Jorge <julien.jorge@iscool-e.com>
+Date: Thu Apr 24 20:39:18 2014 +0200
+
+ Fix various errors pointed by clang on iOS.
+
+diff --git a/claw/impl/box_2d.tpp b/claw/impl/box_2d.tpp
+index e4b6936..71f3883 100644
+--- a/claw/impl/box_2d.tpp
++++ b/claw/impl/box_2d.tpp
+@@ -136,8 +136,8 @@ template<typename U>
+ claw::math::box_2d<U> claw::math::box_2d<T>::cast_value_type_to() const
+ {
+ return claw::math::box_2d<U>
+- ( first_point.cast_value_type_to<U>(),
+- second_point.cast_value_type_to<U>() );
++ ( first_point.template cast_value_type_to<U>(),
++ second_point.template cast_value_type_to<U>() );
+ } // box_2d::cast_value_type_to()
+
+ /*----------------------------------------------------------------------------*/
+diff --git a/claw/impl/rectangle.tpp b/claw/impl/rectangle.tpp
+index 9e6f14a..3c3c8f3 100644
+--- a/claw/impl/rectangle.tpp
++++ b/claw/impl/rectangle.tpp
+@@ -140,7 +140,7 @@ template<typename U>
+ claw::math::rectangle<U> claw::math::rectangle<T>::cast_value_type_to() const
+ {
+ return claw::math::rectangle<U>
+- ( position.cast_value_type_to<U>(), (U)width, (U)height );
++ ( position.template cast_value_type_to<U>(), (U)width, (U)height );
+ } // rectangle::cast_value_type_to()
+
+ /*----------------------------------------------------------------------------*/
diff --git a/libraries/libcuefile/libcuefile.SlackBuild b/libraries/libcuefile/libcuefile.SlackBuild
index 4111753fbb..499da0205c 100644
--- a/libraries/libcuefile/libcuefile.SlackBuild
+++ b/libraries/libcuefile/libcuefile.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/sh
-# Slackware build script for libreplaygain
+# Slackware build script for libcuefile
# Written by Å ime Ramov <s@ramov.com>
PRGNAM=libcuefile
@@ -10,7 +10,7 @@ TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -21,8 +21,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -45,10 +45,10 @@ tar xzvf $CWD/$PRGNAM\_$VERSION.tar.gz
cd $PRGNAM\_$VERSION
chown -R root:root .
find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
# adding missing include files to CMakeLists.txt
echo 'INSTALL(FILES ${libcuefile_SOURCE_DIR}/include/cuetools/cuefile.h ${libcuefile_SOURCE_DIR}/include/cuetools/cd.h ${libcuefile_SOURCE_DIR}/include/cuetools/cdtext.h DESTINATION include/cuetools)' >> src/CMakeLists.txt
@@ -59,12 +59,12 @@ cmake \
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DLIB_SUFFIX=${LIBDIRSUFFIX}
+ -DLIB_SUFFIX=${LIBDIRSUFFIX} .
make
make install DESTDIR=$PKG
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
diff --git a/libraries/libdbus-c++/gcc47.patch b/libraries/libdbus-c++/gcc47.patch
deleted file mode 100644
index 6a82773006..0000000000
--- a/libraries/libdbus-c++/gcc47.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- src/eventloop-integration.cpp.orig 2012-05-09 11:22:09.683290763 +0200
-+++ src/eventloop-integration.cpp 2012-05-09 11:22:44.313288912 +0200
-@@ -38,6 +38,7 @@
- #include <cassert>
- #include <sys/poll.h>
- #include <fcntl.h>
-+#include <unistd.h>
-
- using namespace DBus;
- using namespace std;
diff --git a/libraries/libdbus-c++/libdbus-c++.SlackBuild b/libraries/libdbus-c++/libdbus-c++.SlackBuild
index 3df02abcb3..77bbd394c2 100644
--- a/libraries/libdbus-c++/libdbus-c++.SlackBuild
+++ b/libraries/libdbus-c++/libdbus-c++.SlackBuild
@@ -23,13 +23,13 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=libdbus-c++
-VERSION=${VERSION:-0.9.0}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-20160924_e3455d2}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -40,8 +40,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -60,22 +60,20 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+tar xvf $CWD/$PRGNAM-$VERSION.tar.?z
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
-o -perm 511 \) -exec chmod 755 {} \; -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-# Fix compiling with newer gcc versions
-patch -p0 -i $CWD/gcc47.patch
+# Apply some patches (thanks opensuse!)
+for i in $CWD/patches/*.patch ; do patch -p0 < $i ; done
-# Fix https://sourceforge.net/p/dbus-cplusplus/bugs/5/
-patch -p1 -i $CWD/nested_variant_map.patch
+./bootstrap
-LDFLAGS="-lpthread" \
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
diff --git a/libraries/libdbus-c++/libdbus-c++.info b/libraries/libdbus-c++/libdbus-c++.info
index df6ec8de77..264ec943dc 100644
--- a/libraries/libdbus-c++/libdbus-c++.info
+++ b/libraries/libdbus-c++/libdbus-c++.info
@@ -1,8 +1,8 @@
PRGNAM="libdbus-c++"
-VERSION="0.9.0"
+VERSION="20160924_e3455d2"
HOMEPAGE="http://dbus-cplusplus.sourceforge.net/"
-DOWNLOAD="http://downloads.sourceforge.net/dbus-cplusplus/libdbus-c++-0.9.0.tar.gz"
-MD5SUM="e752116f523fa88ef041e63d3dee4de2"
+DOWNLOAD="http://ponce.cc/slackware/sources/repo/libdbus-c++-20160924_e3455d2.tar.xz"
+MD5SUM="f6aa26e23d73fa0f02d03e68932f8be7"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/libdbus-c++/nested_variant_map.patch b/libraries/libdbus-c++/nested_variant_map.patch
deleted file mode 100644
index 8b41ed3a3a..0000000000
--- a/libraries/libdbus-c++/nested_variant_map.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- libdbus-c++-0.9.0/src/message.cpp 2016-02-20 12:15:52.069704535 +0100
-+++ libdbus-c++-0.9.0-patch/src/message.cpp 2016-02-20 12:31:34.159854472 +0100
-@@ -347,6 +347,7 @@
- (
- (DBusMessageIter *) & (to._iter),
- from.type(),
-- from.type() == DBUS_TYPE_VARIANT ? NULL : sig,
-+ from.type() == DBUS_TYPE_DICT_ENTRY ||
-+ from.type() == DBUS_TYPE_STRUCT ? NULL : sig,
- (DBusMessageIter *) & (to_container._iter)
- );
diff --git a/libraries/libdbus-c++/patches/libdbus-c++-gcc7.patch b/libraries/libdbus-c++/patches/libdbus-c++-gcc7.patch
new file mode 100644
index 0000000000..42efd3ab8a
--- /dev/null
+++ b/libraries/libdbus-c++/patches/libdbus-c++-gcc7.patch
@@ -0,0 +1,11 @@
+Index: src/pipe.cpp
+===================================================================
+--- src/pipe.cpp.orig 2011-11-30 00:16:31.000000000 +0200
++++ src/pipe.cpp 2017-03-27 10:34:55.261175583 +0200
+@@ -83,5 +83,5 @@ ssize_t Pipe::read(void *buffer, unsigne
+ void Pipe::signal()
+ {
+ // TODO: ignoring return of read/write generates warning; maybe relevant for eventloop work...
+- ::write(_fd_write, '\0', 1);
++ ::write(_fd_write, 0, 1);
+ }
diff --git a/libraries/libdbus-c++/patches/libdbus-c++-glibmm-2.43.patch b/libraries/libdbus-c++/patches/libdbus-c++-glibmm-2.43.patch
new file mode 100644
index 0000000000..56bce80d17
--- /dev/null
+++ b/libraries/libdbus-c++/patches/libdbus-c++-glibmm-2.43.patch
@@ -0,0 +1,13 @@
+--- examples/glib/dbus-browser.h.orig 2016-09-24 11:03:56.000000000 +0200
++++ examples/glib/dbus-browser.h 2017-06-21 14:58:48.350046047 +0200
+@@ -1,9 +1,9 @@
+ #ifndef __DEMO_DBUS_BROWSER_H
+ #define __DEMO_DBUS_BROWSER_H
+
++#include <gtkmm.h>
+ #include <dbus-c++/dbus.h>
+ #include <dbus-c++/glib-integration.h>
+-#include <gtkmm.h>
+
+ #include "dbus-glue.h"
+
diff --git a/libraries/libdbus-c++/patches/libdbus-c++-nodocdatetime.patch b/libraries/libdbus-c++/patches/libdbus-c++-nodocdatetime.patch
new file mode 100644
index 0000000000..68684c8add
--- /dev/null
+++ b/libraries/libdbus-c++/patches/libdbus-c++-nodocdatetime.patch
@@ -0,0 +1,25 @@
+Index: doc/foot.html
+===================================================================
+--- doc/foot.html.orig 2016-09-24 11:03:56.000000000 +0200
++++ doc/foot.html 2017-04-10 15:51:55.951931300 +0200
+@@ -10,7 +10,6 @@
+ <table><tr>
+ <td></td>
+ <td class="copyright">Copyright &copy;$year DBus-C++ Project</td>
+- <td class="generated">Docs generated $datetime</td>
+ </tr></table>
+ </div>
+
+Index: doc/Doxyfile.in
+===================================================================
+--- doc/Doxyfile.in.orig 2016-09-24 11:03:56.000000000 +0200
++++ doc/Doxyfile.in 2017-04-10 15:54:18.748279756 +0200
+@@ -836,7 +836,7 @@ HTML_STYLESHEET = @srcdir@/dbus-c
+ # page will contain the date and time when the page was generated. Setting
+ # this to NO can help when comparing the output of multiple runs.
+
+-HTML_TIMESTAMP = YES
++HTML_TIMESTAMP = NO
+
+ # If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes,
+ # files or namespaces will be aligned in HTML using tables. If set to
diff --git a/libraries/libdbus-c++/patches/libdbus-c++-noreturn.patch b/libraries/libdbus-c++/patches/libdbus-c++-noreturn.patch
new file mode 100644
index 0000000000..b87abf331f
--- /dev/null
+++ b/libraries/libdbus-c++/patches/libdbus-c++-noreturn.patch
@@ -0,0 +1,21 @@
+Index: include/dbus-c++/util.h
+===================================================================
+--- include/dbus-c++/util.h.orig 2011-11-28 17:03:19.000000000 +0200
++++ include/dbus-c++/util.h 2012-03-11 13:21:18.851849466 +0200
+@@ -243,6 +243,7 @@ public:
+ // TODO: think about return type in this case
+ // this assert should help me to find the use case where it's needed...
+ //assert (false);
++ return _cb->call(param);
+ }
+
+ R call(P param) const
+@@ -255,6 +256,8 @@ public:
+ // TODO: think about return type in this case
+ // this assert should help me to find the use case where it's needed...
+ //assert (false);
++ return _cb->call(param);
++
+ }
+
+ bool empty() const
diff --git a/libraries/libdbus-c++/patches/libdbus-c++-pthread.patch b/libraries/libdbus-c++/patches/libdbus-c++-pthread.patch
new file mode 100644
index 0000000000..38b3878ac2
--- /dev/null
+++ b/libraries/libdbus-c++/patches/libdbus-c++-pthread.patch
@@ -0,0 +1,11 @@
+Index: dbus-c++-1.pc.in
+===================================================================
+--- dbus-c++-1.pc.in.orig 2011-11-28 22:52:01.000000000 +0200
++++ dbus-c++-1.pc.in 2012-03-11 15:49:36.452603560 +0200
+@@ -7,5 +7,5 @@ Name: @PACKAGE@
+ Description: Native C++ bindings for D-Bus
+ Requires: dbus-1
+ Version: @VERSION@
+-Libs: -L${libdir} -ldbus-c++-1
++Libs: -L${libdir} -ldbus-c++-1 -lpthread
+ Cflags: -I${includedir}/dbus-c++-1 -DDBUS_API_SUBJECT_TO_CHANGE
diff --git a/libraries/libdbus-c++/patches/libdbus-c++-sover.patch b/libraries/libdbus-c++/patches/libdbus-c++-sover.patch
new file mode 100644
index 0000000000..3517991846
--- /dev/null
+++ b/libraries/libdbus-c++/patches/libdbus-c++-sover.patch
@@ -0,0 +1,28 @@
+Index: src/Makefile.am
+===================================================================
+--- src/Makefile.am.orig 2016-09-24 11:03:56.000000000 +0200
++++ src/Makefile.am 2017-03-28 14:53:22.941031645 +0200
+@@ -28,6 +28,9 @@ libdbus_c___1_la_CXXFLAGS = \
+ -I$(top_srcdir)/include \
+ -Wno-unused-parameter
+
++libdbus_c___1_la_LDFLAGS= \
++ -version-info "$(SOVER)"
++
+ libdbus_c___1_la_LIBADD = \
+ $(dbus_LIBS)
+
+Index: src/integration/glib/Makefile.am
+===================================================================
+--- src/integration/glib/Makefile.am.orig 2016-09-24 11:03:56.000000000 +0200
++++ src/integration/glib/Makefile.am 2017-03-28 15:04:24.695822590 +0200
+@@ -16,6 +16,9 @@ libdbus_c___glib_1_la_LIBADD = \
+ $(dbus_LIBS) \
+ $(glib_LIBS)
+
++libdbus_c___glib_1_la_LDFLAGS= \
++ -version-info "$(SOVER)"
++
+ AM_CPPFLAGS = \
+ $(dbus_CFLAGS) \
+ $(glib_CFLAGS)
diff --git a/libraries/libedit/README b/libraries/libedit/README
deleted file mode 100644
index 026d498ff5..0000000000
--- a/libraries/libedit/README
+++ /dev/null
@@ -1,11 +0,0 @@
-This is an autotool- and libtoolized port of the NetBSD Editline
-library (libedit). This Berkeley-style licensed command line editor
-library provides generic line editing, history, and tokenization
-functions, similar to those found in GNU Readline.
-
-The slackbuild has a build time variable called LIBEDIT_WIDEC, which if set to
-`yes', turns on the wide character support of the built libedit library.
-Although the support is there, initial testing shows that it acts weird, and
-displays Unicode byte sequences instead of the real typed-in characters. You
-can experiment with it, but don't count on it until it is cleared up.
-The default build option was and is disabled widechar support.
diff --git a/libraries/libedit/libedit.SlackBuild b/libraries/libedit/libedit.SlackBuild
deleted file mode 100644
index 4bb83dda5b..0000000000
--- a/libraries/libedit/libedit.SlackBuild
+++ /dev/null
@@ -1,105 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for libedit
-
-# Copyright 2011 Mikko Värri, Finland
-# Copyright 2013-2019 LEVAI Daniel <leva@ecentrum.hu>
-# 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.
-
-PRGNAM=libedit
-VERSION=${VERSION:-20181209_3.1}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-SRC_VERSION=$(echo $VERSION | tr _ -)
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$SRC_VERSION
-tar xvf $CWD/$PRGNAM-$SRC_VERSION.tar.gz
-cd $PRGNAM-$SRC_VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
-
-if [ "${LIBEDIT_WIDEC}" = 'yes' ];then
- LIBEDIT_WIDEC='--enable-widec'
-else
- LIBEDIT_WIDEC='--disable-widec'
-fi
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --mandir=/usr/man \
- --disable-static \
- --build=$ARCH-slackware-linux \
- "${LIBEDIT_WIDEC}"
-
-make
-make install-strip DESTDIR=$PKG
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a COPYING ChangeLog INSTALL THANKS $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/libraries/libedit/libedit.info b/libraries/libedit/libedit.info
deleted file mode 100644
index 98a392294d..0000000000
--- a/libraries/libedit/libedit.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="libedit"
-VERSION="20181209_3.1"
-HOMEPAGE="http://www.thrysoee.dk/editline/"
-DOWNLOAD="http://thrysoee.dk/editline/libedit-20181209-3.1.tar.gz"
-MD5SUM="22e945a0476e388e6f78bfc8d6e1192c"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="LEVAI Daniel"
-EMAIL="leva@ecentrum.hu"
diff --git a/libraries/libedit/slack-desc b/libraries/libedit/slack-desc
deleted file mode 100644
index e500ae85a3..0000000000
--- a/libraries/libedit/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-libedit: libedit (Command line editor library)
-libedit:
-libedit: This is an autotool- and libtoolized port of the NetBSD Editline
-libedit: library (libedit). This Berkeley-style licensed command line editor
-libedit: library provides generic line editing, history, and tokenization
-libedit: functions, similar to those found in GNU Readline.
-libedit:
-libedit: Homepage: http://www.thrysoee.dk/editline/
-libedit:
-libedit:
-libedit:
diff --git a/libraries/libevhtp/libevhtp.SlackBuild b/libraries/libevhtp/libevhtp.SlackBuild
index 4b6993221c..0697ea8e9c 100644
--- a/libraries/libevhtp/libevhtp.SlackBuild
+++ b/libraries/libevhtp/libevhtp.SlackBuild
@@ -25,13 +25,13 @@
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=libevhtp
-VERSION=${VERSION:-1.2.10}
+VERSION=${VERSION:-1.2.16}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -42,8 +42,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -74,6 +74,8 @@ find -L . \
# fix wrong version number
sed -i "s/@PROJECT_VERSION@/${VERSION}/" evhtp.pc.in
+sed -i "s|/lib/pkgconfig|/lib$LIBDIRSUFFIX/pkgconfig|" CMakeLists.txt
+
mkdir -p build
cd build
cmake \
diff --git a/libraries/libevhtp/libevhtp.info b/libraries/libevhtp/libevhtp.info
index 64efb10f0f..cdd66ddc85 100644
--- a/libraries/libevhtp/libevhtp.info
+++ b/libraries/libevhtp/libevhtp.info
@@ -1,8 +1,8 @@
PRGNAM="libevhtp"
-VERSION="1.2.10"
+VERSION="1.2.16"
HOMEPAGE="https://github.com/criticalstack/libevhtp"
-DOWNLOAD="https://github.com/criticalstack/libevhtp/archive/1.2.10/libevhtp-1.2.10.tar.gz"
-MD5SUM="e7261c7e34654f78047431d169b88806"
+DOWNLOAD="https://github.com/criticalstack/libevhtp/archive/1.2.16/libevhtp-1.2.16.tar.gz"
+MD5SUM="6eebc21fe41201612ac814764bf7474a"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/libffado/libffado.SlackBuild b/libraries/libffado/libffado.SlackBuild
index f0bc67fb3b..ca8687e62b 100644
--- a/libraries/libffado/libffado.SlackBuild
+++ b/libraries/libffado/libffado.SlackBuild
@@ -23,13 +23,13 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=libffado
-VERSION=${VERSION:-2.2.1}
+VERSION=${VERSION:-2.4.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -40,8 +40,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
TARGET="i386"
elif [ "$ARCH" = "i686" ]; then
@@ -69,25 +69,18 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-# Use our CFLAGS
-sed -i "s/-O2 -DNDEBUG/$SLKCFLAGS -DNDEBUG/" SConstruct
-
-patch -p1 < $CWD/libffado-mixer.patch
-
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS -std=gnu++11 -Wno-deprecated-declarations" \
scons \
PREFIX=/usr \
LIBDIR=/usr/lib${LIBDIRSUFFIX} \
DIST_TARGET="$TARGET" \
- COMPILE_FLAGS="$CFLAGS -std=gnu++11" \
+ CUSTOM_ENV="True" \
DEBUG="False"
scons \
- --implicit-deps-unchanged \
- PREFIX=/usr \
- LIBDIR=/usr/lib${LIBDIRSUFFIX} \
- DIST_TARGET="$TARGET" \
- DEBUG="False" \
DESTDIR=$PKG \
+ WILL_DEAL_WITH_XDG_MYSELF="True" \
install
mkdir -p $PKG/usr/share/{applications,pixmaps}
diff --git a/libraries/libffado/libffado.info b/libraries/libffado/libffado.info
index 04eee7ed85..9abbad539d 100644
--- a/libraries/libffado/libffado.info
+++ b/libraries/libffado/libffado.info
@@ -1,10 +1,10 @@
PRGNAM="libffado"
-VERSION="2.2.1"
+VERSION="2.4.1"
HOMEPAGE="http://www.ffado.org/"
-DOWNLOAD="http://www.ffado.org/files/libffado-2.2.1.tgz"
-MD5SUM="e113d828835051f835fb4a329cb0cbd4"
+DOWNLOAD="http://www.ffado.org/files/libffado-2.4.1.tgz"
+MD5SUM="58d42bae946a9a98d0c8e4efa56f99f5"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="libconfig libiec61883 libxml++"
+REQUIRES="libconfig libdbus-c++ libiec61883 libxml++"
MAINTAINER="Heinz Wiesinger"
EMAIL="pprkut@liwjatan.at"
diff --git a/libraries/libgda/libgda.SlackBuild b/libraries/libgda/libgda.SlackBuild
index 57d2e2823e..ea38540a6e 100644
--- a/libraries/libgda/libgda.SlackBuild
+++ b/libraries/libgda/libgda.SlackBuild
@@ -69,8 +69,16 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# https://github.com/voidlinux/void-packages/commit/f16a2d557e84f5d7f5ece8b2022aab4fd17aa0ce
+for f in $(find . -type f -exec file "{}" \; | grep "C source" | cut -d ':' -f1); do
+ echo "${f}"
+ recode ISO-8859-1..UTF-8 "${f}"
+done
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
+LIBCRYPTO_CFLAGS="$CFLAGS -I/usr/include/openssl-1.0" \
+LIBCRYPTO_LIBS="-L/usr/lib${LIBDIRSUFFIX}/openssl-1.0" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
diff --git a/libraries/libgda/libgda.info b/libraries/libgda/libgda.info
index f8d6f787e3..f4297bd16a 100644
--- a/libraries/libgda/libgda.info
+++ b/libraries/libgda/libgda.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://ftp.gnome.org/pub/GNOME/sources/libgda/5.2/libgda-5.2.4.tar.xz
MD5SUM="d008c9e9af2e9cd35dfe550cfbfd99d6"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES=""
+REQUIRES="recode"
MAINTAINER="Willy Sudiarto Raharjo"
EMAIL="willysr@slackbuilds.org"
diff --git a/libraries/libgexiv2/README b/libraries/libgexiv2/README
deleted file mode 100644
index 40c7cae33c..0000000000
--- a/libraries/libgexiv2/README
+++ /dev/null
@@ -1,3 +0,0 @@
-gexiv2 is a GObject wrapper around the Exiv2 photo metadata library.
-It allows for GNOME applications to easily inspect and update
-EXIF, IPTC, and XMP metadata in photo files of various formats.
diff --git a/libraries/libgexiv2/libgexiv2.SlackBuild b/libraries/libgexiv2/libgexiv2.SlackBuild
deleted file mode 100644
index be7abf73da..0000000000
--- a/libraries/libgexiv2/libgexiv2.SlackBuild
+++ /dev/null
@@ -1,95 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for entangle
-
-# Copyright 2014 Soydaner Ulker Istanbul,Turkey
-# 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.
-
-PRGNAM=libgexiv2
-SRCNAM=gexiv2
-VERSION=${VERSION:-0.10.3}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i486 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $SRCNAM-$VERSION
-tar xvf $CWD/$SRCNAM-$VERSION.tar.xz
-cd $SRCNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --enable-introspection \
- --build=$ARCH-slackware-linux
-
-make
-make install DESTDIR=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS COPYING NEWS README THANKS $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/libraries/libgexiv2/libgexiv2.info b/libraries/libgexiv2/libgexiv2.info
deleted file mode 100644
index 6942a4f407..0000000000
--- a/libraries/libgexiv2/libgexiv2.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="libgexiv2"
-VERSION="0.10.3"
-HOMEPAGE="https://wiki.gnome.org/gexiv2"
-DOWNLOAD="http://ftp.gnome.org/pub/GNOME/sources/gexiv2/0.10/gexiv2-0.10.3.tar.xz"
-MD5SUM="f255100a009027d4eaa0f075bb79c655"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="vala"
-MAINTAINER="Soydaner Ulker"
-EMAIL="soydaner@kahverengi.com"
diff --git a/libraries/libgexiv2/slack-desc b/libraries/libgexiv2/slack-desc
deleted file mode 100644
index ae4dcb9130..0000000000
--- a/libraries/libgexiv2/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-libgexiv2: libgexiv2 (GObject wrapper around Exiv2 library)
-libgexiv2:
-libgexiv2: gexiv2 is a GObject wrapper around the Exiv2 photo metadata library.
-libgexiv2: It allows for GNOME applications to easily inspect and update EXIF,
-libgexiv2: IPTC, and XMP metadata in photo files of various formats.
-libgexiv2: Homepage: https://wiki.gnome.org/gexiv2
-libgexiv2:
-libgexiv2:
-libgexiv2:
-libgexiv2:
-libgexiv2:
diff --git a/libraries/libgksu/libgksu.SlackBuild b/libraries/libgksu/libgksu.SlackBuild
index 6bdbbe3bb9..994ea9b76f 100644
--- a/libraries/libgksu/libgksu.SlackBuild
+++ b/libraries/libgksu/libgksu.SlackBuild
@@ -99,6 +99,7 @@ CXXFLAGS="$SLKCFLAGS" \
--disable-schemas-install \
--enable-shared \
--disable-static \
+ --disable-gtk-doc \
--build=$ARCH-slackware-linux
make
diff --git a/libraries/libgnome/libgnome.SlackBuild b/libraries/libgnome/libgnome.SlackBuild
index 15083db758..a05779e965 100644
--- a/libraries/libgnome/libgnome.SlackBuild
+++ b/libraries/libgnome/libgnome.SlackBuild
@@ -69,6 +69,12 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+# https://github.com/voidlinux/void-packages/commit/f16a2d557e84f5d7f5ece8b2022aab4fd17aa0ce
+for f in $(find . -type f -exec file "{}" \; | grep "C source" | cut -d ':' -f1); do
+ echo "${f}"
+ recode ISO-8859-1..UTF-8 "${f}"
+done
+
# Fix for the newer glib
sed -i "/-DG_DISABLE_DEPRECATED/d" libgnome/Makefile.*
diff --git a/libraries/libgnome/libgnome.info b/libraries/libgnome/libgnome.info
index 5b173bffdb..1fe704d75d 100644
--- a/libraries/libgnome/libgnome.info
+++ b/libraries/libgnome/libgnome.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://ftp.gnome.org/pub/GNOME/sources/libgnome/2.32/libgnome-2.32.1.
MD5SUM="a4345e6087ae6195d65a4674ffdca559"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="gnome-vfs"
+REQUIRES="gnome-vfs recode"
MAINTAINER="Erik Hanson"
EMAIL="erik@slackbuilds.org"
diff --git a/libraries/libgnomecanvas/libgnomecanvas.info b/libraries/libgnomecanvas/libgnomecanvas.info
index 5d5066e396..4c42aff604 100644
--- a/libraries/libgnomecanvas/libgnomecanvas.info
+++ b/libraries/libgnomecanvas/libgnomecanvas.info
@@ -5,6 +5,6 @@ DOWNLOAD="http://ftp.gnome.org/pub/gnome/sources/libgnomecanvas/2.30/libgnomecan
MD5SUM="ffcbb719c671ff5cd86e59aeba8d0b92"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES=""
+REQUIRES="libart-lgpl"
MAINTAINER="Erik Hanson"
EMAIL="erik@slackbuilds.org"
diff --git a/libraries/libgnomeui/libgnomeui.SlackBuild b/libraries/libgnomeui/libgnomeui.SlackBuild
index d048a25b90..948f6d7fdc 100644
--- a/libraries/libgnomeui/libgnomeui.SlackBuild
+++ b/libraries/libgnomeui/libgnomeui.SlackBuild
@@ -69,6 +69,12 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+# https://github.com/voidlinux/void-packages/commit/f16a2d557e84f5d7f5ece8b2022aab4fd17aa0ce
+for f in $(find . -type f -exec file "{}" \; | grep "C source" | cut -d ':' -f1); do
+ echo "${f}"
+ recode ISO-8859-1..UTF-8 "${f}"
+done
+
CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
diff --git a/libraries/libidn2/README b/libraries/libidn2/README
deleted file mode 100644
index 972855606d..0000000000
--- a/libraries/libidn2/README
+++ /dev/null
@@ -1,5 +0,0 @@
-GNU Libidn is a fully documented implementation of the Stringprep,
-Punycode and IDNA 2003 specifications. Libidn's purpose is to encode
-and decode internationalized domain names.
-
-The libidn2 package does not clash with Slackware's libidn package.
diff --git a/libraries/libidn2/libidn2.SlackBuild b/libraries/libidn2/libidn2.SlackBuild
deleted file mode 100644
index 8ccfaa4583..0000000000
--- a/libraries/libidn2/libidn2.SlackBuild
+++ /dev/null
@@ -1,107 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for libidn2
-
-# Copyright 2017 Mohammad Etemaddar Iran
-# 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.
-
-PRGNAM=libidn2
-VERSION=${VERSION:-2.0.4}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.lz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --infodir=/usr/info \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --build=$ARCH-slackware-linux
-
-make
-make install DESTDIR=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-find $PKG/usr/man -type f -size 0 -delete
-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
-
-rm -f $PKG/usr/info/dir
-gzip -9 $PKG/usr/info/*.info*
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a \
- ABOUT-NLS AUTHORS CONTRIBUTING.md COPYING* INSTALL NEWS README* \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/libraries/libidn2/libidn2.info b/libraries/libidn2/libidn2.info
deleted file mode 100644
index b07454fe03..0000000000
--- a/libraries/libidn2/libidn2.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="libidn2"
-VERSION="2.0.4"
-HOMEPAGE="https://www.gnu.org/software/libidn/"
-DOWNLOAD="https://ftp.gnu.org/gnu/libidn/libidn2-2.0.4.tar.lz"
-MD5SUM="376e879081abe810449389ffcc300585"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Mohammad Etemaddar"
-EMAIL="mohammad.etemaddar@gmail.com"
diff --git a/libraries/libidn2/slack-desc b/libraries/libidn2/slack-desc
deleted file mode 100644
index 251ce06f1c..0000000000
--- a/libraries/libidn2/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-libidn2: libidn2 (GNU IDN Library version 2)
-libidn2:
-libidn2: GNU Libidn is a fully documented implementation of the Stringprep,
-libidn2: Punycode and IDNA 2003 specifications. Libidn's purpose is to encode
-libidn2: and decode internationalized domain names.
-libidn2:
-libidn2: The libidn2 package does not clash with Slackware's libidn package.
-libidn2:
-libidn2:
-libidn2:
-libidn2:
diff --git a/libraries/libindicator3/libindicator3.SlackBuild b/libraries/libindicator3/libindicator3.SlackBuild
index 0fc7a67f17..4987b1e670 100644
--- a/libraries/libindicator3/libindicator3.SlackBuild
+++ b/libraries/libindicator3/libindicator3.SlackBuild
@@ -70,7 +70,7 @@ find -L . \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
./autogen.sh
-CFLAGS="$SLKCFLAGS -Wno-deprecated -Wno-deprecated-declarations" \
+CFLAGS="$SLKCFLAGS -Wno-deprecated -Wno-deprecated-declarations -Wno-error=incompatible-pointer-types" \
CXXFLAGS="$SLKCFLAGS -Wno-deprecated -Wno-deprecated-declarations" \
./configure \
--prefix=/usr \
diff --git a/libraries/libinput/README b/libraries/libinput/README
deleted file mode 100644
index 6ffad5d887..0000000000
--- a/libraries/libinput/README
+++ /dev/null
@@ -1,11 +0,0 @@
-libinput (Input device library)
-
-libinput is a library to handle input devices in Wayland compositors
-and to provide a generic X.Org input driver.
-
-It provides device detection, device handling, input device event
-processing and abstraction so minimize the amount of custom input
-code compositors need to provide the common set of functionality
-that users expect. Input event processing includes scaling touch
-coordinates, generating pointer events from touchpads, pointer
-acceleration, etc.
diff --git a/libraries/libinput/libinput.SlackBuild b/libraries/libinput/libinput.SlackBuild
deleted file mode 100644
index 329629cf31..0000000000
--- a/libraries/libinput/libinput.SlackBuild
+++ /dev/null
@@ -1,93 +0,0 @@
-#!/bin/sh
-#
-# Slackware build script for libinput.
-#
-# Copyright 2016-2019 Edinaldo P. Silva, Rio de Janeiro, Brazil.
-# 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.
-
-PRGNAM=libinput
-VERSION=${VERSION:-1.12.6}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-rm -rf $TMP/$PRGNAM-$VERSION
-cd $TMP
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-meson --prefix /usr --libdir lib${LIBDIRSUFFIX} --mandir /usr/man \
- build -Ddebug-gui="false" -Dtests="false" -Ddocumentation="false" \
--Dudev-dir="/lib/udev"
-
-DESTDIR=$PKG ninja -C build all install
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -r COPYING README.md doc/ $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/libraries/libinput/libinput.info b/libraries/libinput/libinput.info
deleted file mode 100644
index 55e8fc0cf2..0000000000
--- a/libraries/libinput/libinput.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="libinput"
-VERSION="1.12.6"
-HOMEPAGE="https://www.freedesktop.org/wiki/Software/libinput"
-DOWNLOAD="https://www.freedesktop.org/software/libinput/libinput-1.12.6.tar.xz"
-MD5SUM="8cf10cc0fdfab865b105dd28283fa0fd"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="libwacom meson graphviz python-evdev pyudev"
-MAINTAINER="Edinaldo P. Silva"
-EMAIL="edps.mundognu@gmail.com"
diff --git a/libraries/libinput/slack-desc b/libraries/libinput/slack-desc
deleted file mode 100644
index 385f7da66f..0000000000
--- a/libraries/libinput/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-libinput: libinput (Input device library)
-libinput:
-libinput: libinput is a library to handle input devices in Wayland compositors
-libinput: and to provide a generic X.Org input driver.
-libinput:
-libinput: Home page: http://www.freedesktop.org/wiki/Software/libinput/
-libinput:
-libinput:
-libinput:
-libinput:
-libinput:
diff --git a/libraries/libircclient/libircclient.SlackBuild b/libraries/libircclient/libircclient.SlackBuild
index 70d4361559..b53a7626bc 100644
--- a/libraries/libircclient/libircclient.SlackBuild
+++ b/libraries/libircclient/libircclient.SlackBuild
@@ -73,6 +73,10 @@ find -L . \
# example: error: 'LIBIRC_RFC_RPL_ENDOFNAMES' was not declared in this scope
patch -p1 < $CWD/libircclient-1.6-rfc.patch
+# for openssl-1.1.x
+sed -i "s|SSL_library_init|OPENSSL_init_ssl|" configure.in
+autoreconf -vif
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
diff --git a/libraries/libkqueue/libkqueue.SlackBuild b/libraries/libkqueue/libkqueue.SlackBuild
index a989d26944..5b7c6208af 100644
--- a/libraries/libkqueue/libkqueue.SlackBuild
+++ b/libraries/libkqueue/libkqueue.SlackBuild
@@ -25,7 +25,7 @@
# Modified by the slackbuilds.org project.
PRGNAM=libkqueue
-VERSION=${VERSION:-2.0.1}
+VERSION=${VERSION:-2.1.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -75,6 +75,8 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+autoreconf -fi
+
CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
diff --git a/libraries/libkqueue/libkqueue.info b/libraries/libkqueue/libkqueue.info
index 6cd089bc9f..f4b2e5d9d1 100644
--- a/libraries/libkqueue/libkqueue.info
+++ b/libraries/libkqueue/libkqueue.info
@@ -1,8 +1,8 @@
PRGNAM="libkqueue"
-VERSION="2.0.1"
+VERSION="2.1.0"
HOMEPAGE="https://github.com/mheily/libkqueue"
-DOWNLOAD="http://sourceforge.net/projects/libkqueue/files/libkqueue-2.0/libkqueue-2.0.1.tar.gz"
-MD5SUM="3d939aa5fa83a870aee71f2181b22994"
+DOWNLOAD="https://github.com/mheily/libkqueue/archive/v2.1.0/libkqueue-2.1.0.tar.gz"
+MD5SUM="e8f7cb2287d3c8b05dc413cd41c032fa"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/libmemcached/libmemcached.SlackBuild b/libraries/libmemcached/libmemcached.SlackBuild
index 3cc3e35ca1..aa21736960 100644
--- a/libraries/libmemcached/libmemcached.SlackBuild
+++ b/libraries/libmemcached/libmemcached.SlackBuild
@@ -82,7 +82,7 @@ export PATH="/usr/libexec:$PATH"
patch -p1 < $CWD/patches/libmemcached-fix-linking-with-libpthread.patch
CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS -fpermissive" \
./configure \
--prefix=/usr \
--exec-prefix=/usr \
diff --git a/libraries/libmp4v2/libmp4v2.SlackBuild b/libraries/libmp4v2/libmp4v2.SlackBuild
index e1550512cf..ad61013270 100644
--- a/libraries/libmp4v2/libmp4v2.SlackBuild
+++ b/libraries/libmp4v2/libmp4v2.SlackBuild
@@ -81,7 +81,7 @@ find -L . \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS -fpermissive" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
diff --git a/libraries/libmusicbrainz/libmusicbrainz.SlackBuild b/libraries/libmusicbrainz/libmusicbrainz.SlackBuild
index e378f14ade..85ea239ddb 100644
--- a/libraries/libmusicbrainz/libmusicbrainz.SlackBuild
+++ b/libraries/libmusicbrainz/libmusicbrainz.SlackBuild
@@ -52,7 +52,7 @@ find -L . \
patch -p1 < $CWD/libmusicbrainz-2.1.5-include_stringh.patch
CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS -Wno-narrowing" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
diff --git a/libraries/libmwaw/libmwaw.SlackBuild b/libraries/libmwaw/libmwaw.SlackBuild
index 9f81e7f543..47bf361aff 100644
--- a/libraries/libmwaw/libmwaw.SlackBuild
+++ b/libraries/libmwaw/libmwaw.SlackBuild
@@ -75,7 +75,7 @@ case "${DOC:-0}" in
esac
CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS -Wno-error=implicit-fallthrough= -Wno-error=int-in-bool-context" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
diff --git a/libraries/liboauth/liboauth-1.0.3-openssl-1.1.0-2.patch b/libraries/liboauth/liboauth-1.0.3-openssl-1.1.0-2.patch
new file mode 100644
index 0000000000..eafd3eb9bf
--- /dev/null
+++ b/libraries/liboauth/liboauth-1.0.3-openssl-1.1.0-2.patch
@@ -0,0 +1,147 @@
+Submitted by: DJ Lucas (dj_AT_linuxfromscratch_DOT_org)
+Date: 2017-05-27
+Initial Package Version: 1.0.3
+Update by: Bruce Dubbs
+Date: 2017-06-14
+Upstream Status: Submitted
+Origin: https://github.com/x42/liboauth/issues/9
+Description: Fixes build issue with OpenSSL-1.1.0.
+Update: Additional fix from upstream. Three lines changed.
+
+diff -Naurp liboauth-1.0.3-orig/src/hash.c liboauth-1.0.3/src/hash.c
+--- liboauth-1.0.3-orig/src/hash.c 2013-10-04 08:02:50.000000000 -0500
++++ liboauth-1.0.3/src/hash.c 2017-05-27 00:51:04.708633351 -0500
+@@ -362,6 +362,11 @@ looser:
+ #include "oauth.h" // base64 encode fn's.
+ #include <openssl/hmac.h>
+
++#if OPENSSL_VERSION_NUMBER < 0x10100000
++#define EVP_MD_CTX_new EVP_MD_CTX_create
++#define EVP_MD_CTX_free EVP_MD_CTX_destroy
++#endif
++
+ char *oauth_sign_hmac_sha1 (const char *m, const char *k) {
+ return(oauth_sign_hmac_sha1_raw (m, strlen(m), k, strlen(k)));
+ }
+@@ -386,7 +391,7 @@ char *oauth_sign_rsa_sha1 (const char *m
+ unsigned char *sig = NULL;
+ unsigned char *passphrase = NULL;
+ unsigned int len=0;
+- EVP_MD_CTX md_ctx;
++ EVP_MD_CTX *md_ctx;
+
+ EVP_PKEY *pkey;
+ BIO *in;
+@@ -399,24 +404,31 @@ char *oauth_sign_rsa_sha1 (const char *m
+ return xstrdup("liboauth/OpenSSL: can not read private key");
+ }
+
++ md_ctx = EVP_MD_CTX_new();
++ if (md_ctx == NULL) {
++ return xstrdup("liboauth/OpenSSL: failed to allocate EVP_MD_CTX");
++ }
++
+ len = EVP_PKEY_size(pkey);
+ sig = (unsigned char*)xmalloc((len+1)*sizeof(char));
+
+- EVP_SignInit(&md_ctx, EVP_sha1());
+- EVP_SignUpdate(&md_ctx, m, strlen(m));
+- if (EVP_SignFinal (&md_ctx, sig, &len, pkey)) {
++ EVP_SignInit(md_ctx, EVP_sha1());
++ EVP_SignUpdate(md_ctx, m, strlen(m));
++ if (EVP_SignFinal (md_ctx, sig, &len, pkey)) {
+ char *tmp;
+ sig[len] = '\0';
+ tmp = oauth_encode_base64(len,sig);
+ OPENSSL_free(sig);
+ EVP_PKEY_free(pkey);
++ EVP_MD_CTX_free(md_ctx);
+ return tmp;
+ }
++ EVP_MD_CTX_free(md_ctx);
+ return xstrdup("liboauth/OpenSSL: rsa-sha1 signing failed");
+ }
+
+ int oauth_verify_rsa_sha1 (const char *m, const char *c, const char *s) {
+- EVP_MD_CTX md_ctx;
++ EVP_MD_CTX *md_ctx;
+ EVP_PKEY *pkey;
+ BIO *in;
+ X509 *cert = NULL;
+@@ -437,13 +449,18 @@ int oauth_verify_rsa_sha1 (const char *m
+ return -2;
+ }
+
++ md_ctx = EVP_MD_CTX_new();
++ if (md_ctx == NULL) {
++ return -2;
++ }
++
+ b64d= (unsigned char*) xmalloc(sizeof(char)*strlen(s));
+ slen = oauth_decode_base64(b64d, s);
+
+- EVP_VerifyInit(&md_ctx, EVP_sha1());
+- EVP_VerifyUpdate(&md_ctx, m, strlen(m));
+- err = EVP_VerifyFinal(&md_ctx, b64d, slen, pkey);
+- EVP_MD_CTX_cleanup(&md_ctx);
++ EVP_VerifyInit(md_ctx, EVP_sha1());
++ EVP_VerifyUpdate(md_ctx, m, strlen(m));
++ err = EVP_VerifyFinal(md_ctx, b64d, slen, pkey);
++ EVP_MD_CTX_free(pkey);
+ EVP_PKEY_free(pkey);
+ xfree(b64d);
+ return (err);
+@@ -455,35 +472,41 @@ int oauth_verify_rsa_sha1 (const char *m
+ */
+ char *oauth_body_hash_file(char *filename) {
+ unsigned char fb[BUFSIZ];
+- EVP_MD_CTX ctx;
++ EVP_MD_CTX *ctx;
+ size_t len=0;
+ unsigned char *md;
+ FILE *F= fopen(filename, "r");
+ if (!F) return NULL;
+
+- EVP_MD_CTX_init(&ctx);
+- EVP_DigestInit(&ctx,EVP_sha1());
++ ctx = EVP_MD_CTX_new();
++ if (ctx == NULL) {
++ return xstrdup("liboauth/OpenSSL: failed to allocate EVP_MD_CTX");
++ }
++ EVP_DigestInit(ctx,EVP_sha1());
+ while (!feof(F) && (len=fread(fb,sizeof(char),BUFSIZ, F))>0) {
+- EVP_DigestUpdate(&ctx, fb, len);
++ EVP_DigestUpdate(ctx, fb, len);
+ }
+ fclose(F);
+ len=0;
+ md=(unsigned char*) xcalloc(EVP_MD_size(EVP_sha1()),sizeof(unsigned char));
+- EVP_DigestFinal(&ctx, md,(unsigned int*) &len);
+- EVP_MD_CTX_cleanup(&ctx);
++ EVP_DigestFinal(ctx, md,(unsigned int*) &len);
++ EVP_MD_CTX_free(ctx);
+ return oauth_body_hash_encode(len, md);
+ }
+
+ char *oauth_body_hash_data(size_t length, const char *data) {
+- EVP_MD_CTX ctx;
++ EVP_MD_CTX *ctx;
+ size_t len=0;
+ unsigned char *md;
+ md=(unsigned char*) xcalloc(EVP_MD_size(EVP_sha1()),sizeof(unsigned char));
+- EVP_MD_CTX_init(&ctx);
+- EVP_DigestInit(&ctx,EVP_sha1());
+- EVP_DigestUpdate(&ctx, data, length);
+- EVP_DigestFinal(&ctx, md,(unsigned int*) &len);
+- EVP_MD_CTX_cleanup(&ctx);
++ ctx = EVP_MD_CTX_new();
++ if (ctx == NULL) {
++ return xstrdup("liboauth/OpenSSL: failed to allocate EVP_MD_CTX");
++ }
++ EVP_DigestInit(ctx,EVP_sha1());
++ EVP_DigestUpdate(ctx, data, length);
++ EVP_DigestFinal(ctx, md,(unsigned int*) &len);
++ EVP_MD_CTX_free(ctx);
+ return oauth_body_hash_encode(len, md);
+ }
+
diff --git a/libraries/liboauth/liboauth.SlackBuild b/libraries/liboauth/liboauth.SlackBuild
index 819e22333a..9f225f8676 100644
--- a/libraries/liboauth/liboauth.SlackBuild
+++ b/libraries/liboauth/liboauth.SlackBuild
@@ -77,6 +77,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# port to openssl-1.1.x
+patch -p1 < $CWD/liboauth-1.0.3-openssl-1.1.0-2.patch
+
# compile in clean dir
mkdir -v build
cd build
diff --git a/libraries/libopusenc/README b/libraries/libopusenc/README
deleted file mode 100644
index 44dab27110..0000000000
--- a/libraries/libopusenc/README
+++ /dev/null
@@ -1,2 +0,0 @@
-libopusenc is a library that provides an easy way to encode Ogg
-Opus files.
diff --git a/libraries/libopusenc/libopusenc.SlackBuild b/libraries/libopusenc/libopusenc.SlackBuild
deleted file mode 100644
index 199690a36a..0000000000
--- a/libraries/libopusenc/libopusenc.SlackBuild
+++ /dev/null
@@ -1,99 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for libopusenc
-
-# Copyright 2017 Willy Sudiarto Raharjo <willysr@slackbuilds.org>
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=libopusenc
-VERSION=${VERSION:-0.2.1}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --enable-static=no \
- --enable-fixed-point \
- --build=$ARCH-slackware-linux
-
-make
-make install DESTDIR=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS COPYING README.md $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/libraries/libopusenc/libopusenc.info b/libraries/libopusenc/libopusenc.info
deleted file mode 100644
index 2347f6e5a3..0000000000
--- a/libraries/libopusenc/libopusenc.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="libopusenc"
-VERSION="0.2.1"
-HOMEPAGE="https://opus-codec.org/"
-DOWNLOAD="https://archive.mozilla.org/pub/opus/libopusenc-0.2.1.tar.gz"
-MD5SUM="f038ea0f4168d184c76b42d293697c57"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="opus"
-MAINTAINER="Willy Sudiarto Raharjo"
-EMAIL="willysr@slackbuilds.org"
diff --git a/libraries/libopusenc/slack-desc b/libraries/libopusenc/slack-desc
deleted file mode 100644
index 041704af97..0000000000
--- a/libraries/libopusenc/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-libopusenc: libopusenc (High-level Opus decoding library)
-libopusenc:
-libopusenc: libopusenc is a library that provides an easy way to encode Ogg
-libopusenc: Opus files.
-libopusenc:
-libopusenc:
-libopusenc:
-libopusenc: Project site: https://opus-codec.org/
-libopusenc:
-libopusenc:
-libopusenc:
diff --git a/libraries/libpqxx/libpqxx.SlackBuild b/libraries/libpqxx/libpqxx.SlackBuild
index d3a2f26995..270b23ccf4 100644
--- a/libraries/libpqxx/libpqxx.SlackBuild
+++ b/libraries/libpqxx/libpqxx.SlackBuild
@@ -20,8 +20,8 @@
# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=libpqxx
-VERSION=${VERSION:-4.0.1}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-20170619_7809d4a}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
@@ -51,7 +51,7 @@ else
LIBDIRSUFFIX=""
fi
-DOCS="AUTHORS COPYING ChangeLog INSTALL README README-UPGRADE VERSION"
+DOCS="AUTHORS COPYING INSTALL README.md README-UPGRADE VERSION"
set -e
@@ -59,14 +59,14 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+tar xvf $CWD/$PRGNAM-$VERSION.tar.?z
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
diff --git a/libraries/libpqxx/libpqxx.info b/libraries/libpqxx/libpqxx.info
index 7e980da303..3db1d82ad0 100644
--- a/libraries/libpqxx/libpqxx.info
+++ b/libraries/libpqxx/libpqxx.info
@@ -1,8 +1,8 @@
PRGNAM="libpqxx"
-VERSION="4.0.1"
-HOMEPAGE="http://pqxx.org/development/libpqxx/"
-DOWNLOAD="http://pqxx.org/download/software/libpqxx/libpqxx-4.0.1.tar.gz"
-MD5SUM="6ea888b9ba85dd7cef1b182dc5f223a2"
+VERSION="20170619_7809d4a"
+HOMEPAGE="https://github.com/jtv/libpqxx"
+DOWNLOAD="http://ponce.cc/slackware/sources/repo/libpqxx-20170619_7809d4a.tar.xz"
+MD5SUM="675dd58d48f87b7c421d8ccaafd97f34"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="postgresql"
diff --git a/libraries/libqinfinity/libqinfinity.SlackBuild b/libraries/libqinfinity/libqinfinity.SlackBuild
index 4820de7ca0..751f619b74 100644
--- a/libraries/libqinfinity/libqinfinity.SlackBuild
+++ b/libraries/libqinfinity/libqinfinity.SlackBuild
@@ -58,7 +58,7 @@ mkdir -p build
cd build
cmake \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS -Wno-error=narrowing" \
-DCMAKE_INSTALL_PREFIX=/usr \
-DLIB_SUFFIX=${LIBDIRSUFFIX} \
-DCMAKE_BUILD_TYPE=Release ..
diff --git a/libraries/libqxt/libqxt-gcc6.patch b/libraries/libqxt/libqxt-gcc6.patch
new file mode 100644
index 0000000000..519646d6eb
--- /dev/null
+++ b/libraries/libqxt/libqxt-gcc6.patch
@@ -0,0 +1,11 @@
+--- a/src/core/qxtslotjob.cpp 2011-11-24 16:10:32.000000000 -0600
++++ b/src/core/qxtslotjob.cpp 2016-03-07 16:20:32.758268253 -0600
+@@ -174,7 +174,7 @@ This uses QxtSignalWaiter so it will _no
+
+ QVariant QxtFuture::delayedResult(int msec)
+ {
+- if (!waiter->wait(msec, false))
++ if (!waiter->wait(msec, NULL))
+ return QVariant();
+ return job->result();
+ }
diff --git a/libraries/libqxt/libqxt.SlackBuild b/libraries/libqxt/libqxt.SlackBuild
index 870d2ead16..fe260941aa 100644
--- a/libraries/libqxt/libqxt.SlackBuild
+++ b/libraries/libqxt/libqxt.SlackBuild
@@ -74,6 +74,9 @@ find -L . \
# Fix linking during the xrandr test
sed -i "s|lXrandr$|lXrandr -lX11|" config.tests/xrandr/xrandr.pro
+# Thanks to Archlinux for this
+patch -p1 < $CWD/libqxt-gcc6.patch
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure -prefix /usr -libdir /usr/lib$LIBDIRSUFFIX
diff --git a/libraries/libreplaygain/libreplaygain.SlackBuild b/libraries/libreplaygain/libreplaygain.SlackBuild
index 60554fedb3..a7f3e187c2 100644
--- a/libraries/libreplaygain/libreplaygain.SlackBuild
+++ b/libraries/libreplaygain/libreplaygain.SlackBuild
@@ -10,7 +10,7 @@ TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -21,8 +21,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -45,10 +45,10 @@ tar xzvf $CWD/$PRGNAM\_$VERSION.tar.gz
cd $PRGNAM\_$VERSION
chown -R root:root .
find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
# adding missing include file to CMakeLists.txt
echo 'INSTALL(FILES ${libreplaygain_SOURCE_DIR}/include/replaygain/gain_analysis.h DESTINATION include/replaygain)' >> src/CMakeLists.txt
@@ -59,12 +59,12 @@ cmake \
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DLIB_SUFFIX=${LIBDIRSUFFIX}
+ -DLIB_SUFFIX=${LIBDIRSUFFIX} .
make
make install DESTDIR=$PKG
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
diff --git a/libraries/libsearpc/libsearpc.SlackBuild b/libraries/libsearpc/libsearpc.SlackBuild
index 56aed9cbda..99407b59c5 100644
--- a/libraries/libsearpc/libsearpc.SlackBuild
+++ b/libraries/libsearpc/libsearpc.SlackBuild
@@ -25,13 +25,13 @@
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=libsearpc
-VERSION=${VERSION:-3.0.7}
+VERSION=${VERSION:-3.1.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -42,8 +42,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -61,8 +61,8 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$VERSION-latest
-tar xvf $CWD/v$VERSION.tar.gz || tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
@@ -88,7 +88,7 @@ make
make install-strip DESTDIR=$PKG
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS COPYING INSTALL README.markdown $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a AUTHORS LICENSE.txt INSTALL README.markdown $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/libraries/libsearpc/libsearpc.info b/libraries/libsearpc/libsearpc.info
index 24f2e679a6..292bc4baa5 100644
--- a/libraries/libsearpc/libsearpc.info
+++ b/libraries/libsearpc/libsearpc.info
@@ -1,7 +1,7 @@
PRGNAM="libsearpc"
-VERSION="3.0.7"
+VERSION="3.1.0"
HOMEPAGE="http://seafile.com/"
-DOWNLOAD="https://github.com/haiwen/libsearpc/archive/v3.0.7.tar.gz"
+DOWNLOAD="https://github.com/haiwen/libsearpc/archive/v3.1.0/libsearpc-3.1.0.tar.gz"
MD5SUM="1d20e93e0fb39f98c907e633d9f1b11b"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
diff --git a/libraries/libsidplayfp/libsidplayfp.SlackBuild b/libraries/libsidplayfp/libsidplayfp.SlackBuild
index 8406a5fb5d..f9c3c6aae0 100644
--- a/libraries/libsidplayfp/libsidplayfp.SlackBuild
+++ b/libraries/libsidplayfp/libsidplayfp.SlackBuild
@@ -25,13 +25,13 @@
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=libsidplayfp
-VERSION=${VERSION:-1.8.6}
+VERSION=${VERSION:-1.8.7}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -42,8 +42,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
diff --git a/libraries/libsidplayfp/libsidplayfp.info b/libraries/libsidplayfp/libsidplayfp.info
index 1a24881670..ad709ec1ca 100644
--- a/libraries/libsidplayfp/libsidplayfp.info
+++ b/libraries/libsidplayfp/libsidplayfp.info
@@ -1,8 +1,8 @@
PRGNAM="libsidplayfp"
-VERSION="1.8.6"
+VERSION="1.8.7"
HOMEPAGE="https://sourceforge.net/projects/sidplay-residfp/"
-DOWNLOAD="http://downloads.sourceforge.net/project/sidplay-residfp/libsidplayfp/1.8/libsidplayfp-1.8.6.tar.gz"
-MD5SUM="fe1a88baa347cb896234327f61e62428"
+DOWNLOAD="http://downloads.sourceforge.net/sidplay-residfp/libsidplayfp-1.8.7.tar.gz"
+MD5SUM="9f6d46a1c2572cc2a6837173895d6f21"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="xa"
diff --git a/libraries/libsodium/README b/libraries/libsodium/README
deleted file mode 100644
index d401f6c292..0000000000
--- a/libraries/libsodium/README
+++ /dev/null
@@ -1,2 +0,0 @@
-libsodium is a portable fork of NaCl with a compatible API. It is a software
-library for network communication, encryption, decryption, signatures, etc.
diff --git a/libraries/libsodium/libsodium.SlackBuild b/libraries/libsodium/libsodium.SlackBuild
deleted file mode 100644
index 51e59a4539..0000000000
--- a/libraries/libsodium/libsodium.SlackBuild
+++ /dev/null
@@ -1,98 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for libsodium
-
-# Copyright 2018 T3slider <t3slider@gmail.com>
-# 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.
-
-PRGNAM=libsodium
-VERSION=${VERSION:-1.0.16}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --enable-static=no \
- --build=$ARCH-slackware-linux
-
-make
-make check
-make install-strip DESTDIR=$PKG
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a \
- AUTHORS ChangeLog LICENSE README.markdown THANKS \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/libraries/libsodium/libsodium.info b/libraries/libsodium/libsodium.info
deleted file mode 100644
index ca9cfd144e..0000000000
--- a/libraries/libsodium/libsodium.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="libsodium"
-VERSION="1.0.16"
-HOMEPAGE="https://github.com/jedisct1/libsodium"
-DOWNLOAD="https://download.libsodium.org/libsodium/releases/libsodium-1.0.16.tar.gz"
-MD5SUM="37b18839e57e7a62834231395c8e962b"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="T3slider"
-EMAIL="t3slider@gmail.com"
diff --git a/libraries/libsodium/slack-desc b/libraries/libsodium/slack-desc
deleted file mode 100644
index 9f9b669bc6..0000000000
--- a/libraries/libsodium/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-libsodium: libsodium (a library for network communication and cryptography)
-libsodium:
-libsodium: libsodium is a portable fork of NaCl with a compatible API. It is
-libsodium: a software library for network communication, encryption, decryption,
-libsodium: signatures, etc.
-libsodium:
-libsodium: https://github.com/jedisct1/libsodium
-libsodium:
-libsodium:
-libsodium:
-libsodium:
diff --git a/libraries/libtorrent/libtorrent-openssl-1.1.patch b/libraries/libtorrent/libtorrent-openssl-1.1.patch
new file mode 100644
index 0000000000..55d0cb901b
--- /dev/null
+++ b/libraries/libtorrent/libtorrent-openssl-1.1.patch
@@ -0,0 +1,105 @@
+From 4607bbf78040789dee29266878ce109136b984ef Mon Sep 17 00:00:00 2001
+From: rakshasa <sundell.software@gmail.com>
+Date: Tue, 20 Dec 2016 19:51:02 +0900
+Subject: [PATCH] Added support for openssl 1.1.
+
+---
+ configure.ac | 4 ++++
+ src/utils/diffie_hellman.cc | 36 ++++++++++++++++++++++++++++++++++--
+ 2 files changed, 38 insertions(+), 2 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 65e34872..27e33570 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -69,12 +69,15 @@ AC_ARG_ENABLE(openssl,
+ [ --disable-openssl Don't use OpenSSL's SHA1 implementation.],
+ [
+ if test "$enableval" = "yes"; then
++dnl move to scripts.
+ PKG_CHECK_MODULES(OPENSSL, libcrypto,
+ CXXFLAGS="$CXXFLAGS $OPENSSL_CFLAGS";
+ LIBS="$LIBS $OPENSSL_LIBS")
+
+ AC_DEFINE(USE_OPENSSL, 1, Using OpenSSL.)
+ AC_DEFINE(USE_OPENSSL_SHA, 1, Using OpenSSL's SHA1 implementation.)
++ AC_CHECK_LIB([crypto], [DH_set0_pqg], [AC_DEFINE(USE_OPENSSL_1_1, 1, Using OpenSSL 1.1.)])
++
+ else
+ AC_DEFINE(USE_NSS_SHA, 1, Using Mozilla's SHA1 implementation.)
+ fi
+@@ -85,6 +88,7 @@ AC_ARG_ENABLE(openssl,
+
+ AC_DEFINE(USE_OPENSSL, 1, Using OpenSSL.)
+ AC_DEFINE(USE_OPENSSL_SHA, 1, Using OpenSSL's SHA1 implementation.)
++ AC_CHECK_LIB([crypto], [DH_set0_pqg], [AC_DEFINE(USE_OPENSSL_1_1, 1, Using OpenSSL 1.1.)])
+ ]
+ )
+
+diff --git a/src/utils/diffie_hellman.cc b/src/utils/diffie_hellman.cc
+index aa653d45..7ec13165 100644
+--- a/src/utils/diffie_hellman.cc
++++ b/src/utils/diffie_hellman.cc
+@@ -54,11 +54,23 @@ DiffieHellman::DiffieHellman(const unsigned char *prime, int primeLength,
+ m_secret(NULL), m_size(0) {
+
+ #ifdef USE_OPENSSL
++
+ m_dh = DH_new();
++
++#ifdef USE_OPENSSL_1_1
++ BIGNUM * const dh_p = BN_bin2bn(prime, primeLength, NULL);
++ BIGNUM * const dh_g = BN_bin2bn(generator, generatorLength, NULL);
++
++ if (dh_p == NULL || dh_g == NULL ||
++ !DH_set0_pqg(m_dh, dh_p, NULL, dh_g))
++ throw internal_error("Could not generate Diffie-Hellman parameters");
++#else
+ m_dh->p = BN_bin2bn(prime, primeLength, NULL);
+ m_dh->g = BN_bin2bn(generator, generatorLength, NULL);
++#endif
+
+ DH_generate_key(m_dh);
++
+ #else
+ throw internal_error("Compiled without encryption support.");
+ #endif
+@@ -74,7 +86,19 @@ DiffieHellman::~DiffieHellman() {
+ bool
+ DiffieHellman::is_valid() const {
+ #ifdef USE_OPENSSL
++ if (m_dh == NULL)
++ return false;
++
++#ifdef USE_OPENSSL_1_1
++ const BIGNUM *pub_key;
++
++ DH_get0_key(m_dh, &pub_key, NULL);
++
++ return pub_key != NULL;
++#else
+ return m_dh != NULL && m_dh->pub_key != NULL;
++#endif
++
+ #else
+ return false;
+ #endif
+@@ -103,8 +127,16 @@ DiffieHellman::store_pub_key(unsigned char* dest, unsigned int length) {
+ #ifdef USE_OPENSSL
+ std::memset(dest, 0, length);
+
+- if ((int)length >= BN_num_bytes(m_dh->pub_key))
+- BN_bn2bin(m_dh->pub_key, dest + length - BN_num_bytes(m_dh->pub_key));
++ const BIGNUM *pub_key;
++
++#ifdef USE_OPENSSL_1_1
++ DH_get0_key(m_dh, &pub_key, NULL);
++#else
++ pub_key = m_dh->pub_key;
++#endif
++
++ if ((int)length >= BN_num_bytes(pub_key))
++ BN_bn2bin(pub_key, dest + length - BN_num_bytes(pub_key));
+ #endif
+ }
+
diff --git a/libraries/libtorrent/libtorrent.SlackBuild b/libraries/libtorrent/libtorrent.SlackBuild
index feb2231046..b1d0d4cce8 100644
--- a/libraries/libtorrent/libtorrent.SlackBuild
+++ b/libraries/libtorrent/libtorrent.SlackBuild
@@ -51,6 +51,10 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+sed -i '/AM_PATH_CPPUNIT/d' configure.ac
+patch -p1 < $CWD/libtorrent-openssl-1.1.patch
+./autogen.sh
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
diff --git a/libraries/libtxc_dxtn/README b/libraries/libtxc_dxtn/README
deleted file mode 100644
index a20c465fa6..0000000000
--- a/libraries/libtxc_dxtn/README
+++ /dev/null
@@ -1,5 +0,0 @@
-This library provides the GL_EXT_texture_compression_s3tc extenstion for Mesa
-for using precompressed textures with hardware decompression (precompressed
-textures are used by most modern games).
-
-Due to US patent restrictions, this library is not part of Mesa itself.
diff --git a/libraries/libtxc_dxtn/libtxc_dxtn.SlackBuild b/libraries/libtxc_dxtn/libtxc_dxtn.SlackBuild
deleted file mode 100644
index 49192eecb0..0000000000
--- a/libraries/libtxc_dxtn/libtxc_dxtn.SlackBuild
+++ /dev/null
@@ -1,96 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for libtxc_dxtn
-
-# Copyright 2012 Carlos Corbacho <carlos@strangeworlds.co.uk>
-# 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.
-
-PRGNAM=libtxc_dxtn
-VERSION=${VERSION:-1.0.1}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i486 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --build=$ARCH-slackware-linux
-
-make
-make install DESTDIR=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/libraries/libtxc_dxtn/libtxc_dxtn.info b/libraries/libtxc_dxtn/libtxc_dxtn.info
deleted file mode 100644
index 57831f2652..0000000000
--- a/libraries/libtxc_dxtn/libtxc_dxtn.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="libtxc_dxtn"
-VERSION="1.0.1"
-HOMEPAGE="https://people.freedesktop.org/~cbrill/libtxc_dxtn/"
-DOWNLOAD="https://people.freedesktop.org/~cbrill/libtxc_dxtn/libtxc_dxtn-1.0.1.tar.bz2"
-MD5SUM="7105107f07ac49753f4b61ba9d0c79c5"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Carlos Corbacho"
-EMAIL="carlos@strangeworlds.co.uk"
diff --git a/libraries/libtxc_dxtn/slack-desc b/libraries/libtxc_dxtn/slack-desc
deleted file mode 100644
index 86695e02b8..0000000000
--- a/libraries/libtxc_dxtn/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-libtxc_dxtn: libtxc_dxtn (S3TC for Mesa)
-libtxc_dxtn:
-libtxc_dxtn: Support for using precompressed textures with hardware decompression
-libtxc_dxtn: in Mesa (currently used by most new games).
-libtxc_dxtn:
-libtxc_dxtn:
-libtxc_dxtn:
-libtxc_dxtn:
-libtxc_dxtn:
-libtxc_dxtn:
-libtxc_dxtn:
diff --git a/libraries/libunwind/README b/libraries/libunwind/README
deleted file mode 100644
index c650d3ee47..0000000000
--- a/libraries/libunwind/README
+++ /dev/null
@@ -1,9 +0,0 @@
-Libunwind is a portable and efficient C programming interface
-to determine the call-chain of a program.
-
-The API is useful in a number of applications:
-
-* debuggers
-* introspection
-* efficient setjmp()
-* ...
diff --git a/libraries/libunwind/libunwind.SlackBuild b/libraries/libunwind/libunwind.SlackBuild
deleted file mode 100644
index 6d9dbe168f..0000000000
--- a/libraries/libunwind/libunwind.SlackBuild
+++ /dev/null
@@ -1,104 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for libunwind
-
-# Copyright 2013 tjohann <thorsten.johannvorderbrueggen@t-online.de>
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=libunwind
-VERSION=${VERSION:-1.1}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i486 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-DOCS="AUTHORS COPYING ChangeLog INSTALL LICENSE NEWS README TODO"
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --disable-static \
- --build=$ARCH-slackware-linux
-
-make
-# make pdf # doesn't work
-make install DESTDIR=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/libraries/libunwind/libunwind.info b/libraries/libunwind/libunwind.info
deleted file mode 100644
index 4f4c7c124b..0000000000
--- a/libraries/libunwind/libunwind.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="libunwind"
-VERSION="1.1"
-HOMEPAGE="http://www.nongnu.org/libunwind/"
-DOWNLOAD="http://download.savannah.nongnu.org/releases/libunwind/libunwind-1.1.tar.gz"
-MD5SUM="fb4ea2f6fbbe45bf032cd36e586883ce"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="tjohann"
-EMAIL="thorsten.johannvorderbrueggen@t-online.de"
diff --git a/libraries/libunwind/slack-desc b/libraries/libunwind/slack-desc
deleted file mode 100644
index 3fe00993a0..0000000000
--- a/libraries/libunwind/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-libunwind: libunwind (C programming interface to determine the call-chain)
-libunwind:
-libunwind: It is a portable and efficient C programming interface
-libunwind: to determine the call-chain of a program.
-libunwind: The API is useful in a number of applications:
-libunwind: * debuggers
-libunwind: * introspection
-libunwind: * efficient setjmp()
-libunwind: * ...
-libunwind:
-libunwind: Homepage: http://www.nongnu.org/libunwind
diff --git a/libraries/libvirt-glib/libvirt-glib.SlackBuild b/libraries/libvirt-glib/libvirt-glib.SlackBuild
index 60a9c1969f..8cd9900e6b 100644
--- a/libraries/libvirt-glib/libvirt-glib.SlackBuild
+++ b/libraries/libvirt-glib/libvirt-glib.SlackBuild
@@ -23,7 +23,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=libvirt-glib
-VERSION=${VERSION:-1.0.0}
+VERSION=${VERSION:-2.0.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
diff --git a/libraries/libvirt-glib/libvirt-glib.info b/libraries/libvirt-glib/libvirt-glib.info
index 90a4b953cc..fc47c60e88 100644
--- a/libraries/libvirt-glib/libvirt-glib.info
+++ b/libraries/libvirt-glib/libvirt-glib.info
@@ -1,8 +1,8 @@
PRGNAM="libvirt-glib"
-VERSION="1.0.0"
+VERSION="2.0.0"
HOMEPAGE="http://libvirt.org/"
-DOWNLOAD="https://libvirt.org/sources/glib/libvirt-glib-1.0.0.tar.gz"
-MD5SUM="cb1332e97c175606306fe8966f8243af"
+DOWNLOAD="https://libvirt.org/sources/glib/libvirt-glib-2.0.0.tar.gz"
+MD5SUM="b470b5524c29b61a8ce8e0d094e6c835"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="libvirt vala"
diff --git a/libraries/libvirt-python/libvirt-python.SlackBuild b/libraries/libvirt-python/libvirt-python.SlackBuild
index 9688b5afe4..17b1f85b1e 100644
--- a/libraries/libvirt-python/libvirt-python.SlackBuild
+++ b/libraries/libvirt-python/libvirt-python.SlackBuild
@@ -23,7 +23,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=libvirt-python
-VERSION=${VERSION:-4.5.0}
+VERSION=${VERSION:-5.0.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -67,6 +67,7 @@ find -L . \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
python setup.py install --root=$PKG
+python3 setup.py install --root=$PKG
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | \
grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
diff --git a/libraries/libvirt-python/libvirt-python.info b/libraries/libvirt-python/libvirt-python.info
index 0670df4073..6a61d643f0 100644
--- a/libraries/libvirt-python/libvirt-python.info
+++ b/libraries/libvirt-python/libvirt-python.info
@@ -1,8 +1,8 @@
PRGNAM="libvirt-python"
-VERSION="4.5.0"
+VERSION="5.0.0"
HOMEPAGE="http://libvirt.org"
-DOWNLOAD="https://libvirt.org/sources/python/libvirt-python-4.5.0.tar.gz"
-MD5SUM="0c1b66a8878d6436b036565060707f73"
+DOWNLOAD="https://libvirt.org/sources/python/libvirt-python-5.0.0.tar.gz"
+MD5SUM="1366ff0ab84bd5930cc903a0c83cb4b6"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="libvirt"
diff --git a/libraries/libvirt/libvirt.SlackBuild b/libraries/libvirt/libvirt.SlackBuild
index 84008caff4..239cca3ae4 100644
--- a/libraries/libvirt/libvirt.SlackBuild
+++ b/libraries/libvirt/libvirt.SlackBuild
@@ -5,8 +5,8 @@
# Maintained by Robby Workman <rworkman@slackbuilds.org>
PRGNAM=libvirt
-VERSION=${VERSION:-4.5.0}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-5.0.0}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
diff --git a/libraries/libvirt/libvirt.info b/libraries/libvirt/libvirt.info
index f8186d1ad3..d6aba941b8 100644
--- a/libraries/libvirt/libvirt.info
+++ b/libraries/libvirt/libvirt.info
@@ -1,8 +1,8 @@
PRGNAM="libvirt"
-VERSION="4.5.0"
+VERSION="5.0.0"
HOMEPAGE="http://libvirt.org"
-DOWNLOAD="https://libvirt.org/sources/libvirt-4.5.0.tar.xz"
-MD5SUM="692b2d00907438ed08a68813d3177cd3"
+DOWNLOAD="https://libvirt.org/sources/libvirt-5.0.0.tar.xz"
+MD5SUM="b67b226b8f22fbe86991daec5d71ef82"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="yajl urlgrabber"
diff --git a/libraries/libwacom/README b/libraries/libwacom/README
deleted file mode 100644
index 6ee0b09e28..0000000000
--- a/libraries/libwacom/README
+++ /dev/null
@@ -1,5 +0,0 @@
-libwacom (Library to identify Wacom tablets and their features)
-
-Manages the libraries, configuration, and diagnostic tools for Wacom
-tablets running under Linux. It also maintains updated Linux kernel
-drivers and Xorg/XFree86 XInput drivers.
diff --git a/libraries/libwacom/libwacom.SlackBuild b/libraries/libwacom/libwacom.SlackBuild
deleted file mode 100644
index 3828b9962b..0000000000
--- a/libraries/libwacom/libwacom.SlackBuild
+++ /dev/null
@@ -1,102 +0,0 @@
-#!/bin/sh
-#
-# Slackware build script for libwacom.
-#
-# Copyright 2016-2018 Edinaldo P. Silva, Rio de Janeiro, Brazil.
-# 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.
-
-PRGNAM=libwacom
-VERSION=${VERSION:-0.32}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$(uname -m)" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$(uname -m) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$PRGNAM-$VERSION.tar.gz
-mv $PRGNAM-$PRGNAM-$VERSION $PRGNAM-$VERSION
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./autogen.sh \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --disable-static \
- --build=$ARCH-slackware-linux
-
-make
-make install DESTDIR=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp COPYING NEWS README $PKG/usr/doc/$PRGNAM-$VERSION/
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/libraries/libwacom/libwacom.info b/libraries/libwacom/libwacom.info
deleted file mode 100644
index 55ce69c2fb..0000000000
--- a/libraries/libwacom/libwacom.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="libwacom"
-VERSION="0.32"
-HOMEPAGE="https://github.com/linuxwacom/libwacom"
-DOWNLOAD="https://github.com/linuxwacom/libwacom/archive/libwacom-0.32/libwacom-libwacom-0.32.tar.gz"
-MD5SUM="9582656b7088b650e81c4d84a5bac658"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Edinaldo P. Silva"
-EMAIL="edps.mundognu@gmail.com"
diff --git a/libraries/libwacom/slack-desc b/libraries/libwacom/slack-desc
deleted file mode 100644
index 35db81dc05..0000000000
--- a/libraries/libwacom/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-libwacom: libwacom (Library to identify Wacom tablets and their features)
-libwacom:
-libwacom: Manages the libraries, configuration, and diagnostic tools for Wacom
-libwacom: tablets running under Linux. It also maintains updated Linux kernel
-libwacom: drivers and Xorg/XFree86 XInput drivers.
-libwacom:
-libwacom: Home Page: https://github.com/linuxwacom/libwacom
-libwacom:
-libwacom:
-libwacom:
-libwacom:
diff --git a/libraries/libwebp/README b/libraries/libwebp/README
deleted file mode 100644
index 1ea4235291..0000000000
--- a/libraries/libwebp/README
+++ /dev/null
@@ -1,18 +0,0 @@
-WebP is a method of lossy compression that can be used on photographic
-images. The degree of compression is adjustable so a user can choose
-the trade-off between file size and image quality.
-WebP typically achieves an average of 39% more compression than JPEG
-and JPEG 2000, without loss of image quality.
-
-WebP is a new image format that provides lossless and lossy compression for
-images on the web. WebP lossless images are 26% smaller in size compared to
-PNGs. WebP lossy images are 25-34% smaller in size compared to JPEG images at
-equivalent SSIM index.
-
-WebP supports lossless transparency (also known as alpha channel) with just 22%
-additional bytes. Transparency is also supported with lossy compression and
-typically provides 3x smaller file sizes compared to PNG when lossy compression
-is acceptable for the red/green/blue color channels.
-
-Webmasters and web developers can use the WebP image format to create smaller
-and richer images that can help make the web faster.
diff --git a/libraries/libwebp/libwebp.SlackBuild b/libraries/libwebp/libwebp.SlackBuild
deleted file mode 100644
index f475557d10..0000000000
--- a/libraries/libwebp/libwebp.SlackBuild
+++ /dev/null
@@ -1,98 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for webP
-# written by powtrix (@gmail.com)
-
-PRGNAM=libwebp
-VERSION=${VERSION:-1.0.1}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --disable-static \
- --disable-silent-rules \
- --enable-everything \
- --enable-swap-16bit-csp \
- --build=$ARCH-slackware-linux
-
-make
-make install DESTDIR=$PKG
-
-(
- cd swig
- # Fix temporary working directory.
- sed -i "/^tmpdir/s|=.*|= 'tmpdir'|" setup.py
- CFLAGS="$SLKCFLAGS -I$PKG/usr/include" \
- LDFLAGS="-L$PKG/usr/lib${LIBDIRSUFFIX} -lwebp" \
- python setup.py install --root=$PKG
- # Install the python3 module if python3 is installed
- if $(python3 -c 'import sys' 2>/dev/null); then
- CFLAGS="$SLKCFLAGS -I$PKG/usr/include" \
- LDFLAGS="-L$PKG/usr/lib${LIBDIRSUFFIX} -lwebp" \
- python3 setup.py install --root=$PKG
- fi
-)
-
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS COPYING ChangeLog NEWS PATENTS README $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/libraries/libwebp/libwebp.info b/libraries/libwebp/libwebp.info
deleted file mode 100644
index 26252a0e77..0000000000
--- a/libraries/libwebp/libwebp.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="libwebp"
-VERSION="1.0.1"
-HOMEPAGE="https://developers.google.com/speed/webp/"
-DOWNLOAD="https://storage.googleapis.com/downloads.webmproject.org/releases/webp/libwebp-1.0.1.tar.gz"
-MD5SUM="ba72dfa7588c751a3a9b735a6746a23e"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="powtrix"
-EMAIL="powtrix@gmail.com"
diff --git a/libraries/libwebp/slack-desc b/libraries/libwebp/slack-desc
deleted file mode 100644
index c37e841aaf..0000000000
--- a/libraries/libwebp/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-libwebp: libwebp (WebP photo compression library)
-libwebp:
-libwebp: WebP is a method of lossy compression that can be used on
-libwebp: photographic images. The degree of compression is adjustable so a
-libwebp: user can choose the trade-off between file size and image quality.
-libwebp: WebP typically achieves an average of 39% more compression than
-libwebp: JPEG and JPEG 2000, without loss of image quality.
-libwebp:
-libwebp: Homepage: https://developers.google.com/speed/webp/
-libwebp:
-libwebp:
diff --git a/libraries/libwebsockets/libwebsockets.SlackBuild b/libraries/libwebsockets/libwebsockets.SlackBuild
index 597f9e9ecc..d4207fb091 100644
--- a/libraries/libwebsockets/libwebsockets.SlackBuild
+++ b/libraries/libwebsockets/libwebsockets.SlackBuild
@@ -23,7 +23,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=libwebsockets
-VERSION=${VERSION:-2.0.2}
+VERSION=${VERSION:-2.2.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
diff --git a/libraries/libwebsockets/libwebsockets.info b/libraries/libwebsockets/libwebsockets.info
index 9f832a06a7..690337fcab 100644
--- a/libraries/libwebsockets/libwebsockets.info
+++ b/libraries/libwebsockets/libwebsockets.info
@@ -1,8 +1,8 @@
PRGNAM="libwebsockets"
-VERSION="2.0.2"
+VERSION="2.2.1"
HOMEPAGE="https://libwebsockets.org/"
-DOWNLOAD="https://github.com/warmcat/libwebsockets/archive/v2.0.2/libwebsockets-2.0.2.tar.gz"
-MD5SUM="778c920a580fba1f943c84e9702e7b26"
+DOWNLOAD="https://github.com/warmcat/libwebsockets/archive/v2.2.1/libwebsockets-2.2.1.tar.gz"
+MD5SUM="1f641cde2ab3687db3d553f68fe0f620"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/libwps/libwps.SlackBuild b/libraries/libwps/libwps.SlackBuild
index 838e0c09dd..4e14aff208 100644
--- a/libraries/libwps/libwps.SlackBuild
+++ b/libraries/libwps/libwps.SlackBuild
@@ -75,7 +75,7 @@ case "${DOC:-0}" in
esac
CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS -Wno-error=implicit-fallthrough=" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
diff --git a/libraries/libzdb/libzdb.SlackBuild b/libraries/libzdb/libzdb.SlackBuild
index 00f439ba09..2267542660 100644
--- a/libraries/libzdb/libzdb.SlackBuild
+++ b/libraries/libzdb/libzdb.SlackBuild
@@ -83,7 +83,6 @@ CXXFLAGS="$SLKCFLAGS" \
--docdir=/usr/doc/$PRGNAM-$VERSION \
--enable-static=no \
--enable-protected \
- --enable-openssl \
--enable-sqliteunlock \
--with-mysql \
--with-sqlite=/usr/include \
diff --git a/libraries/libzrtpcpp/libzrtpcpp.SlackBuild b/libraries/libzrtpcpp/libzrtpcpp.SlackBuild
index 0fe58e8c8d..a717ac8ec9 100644
--- a/libraries/libzrtpcpp/libzrtpcpp.SlackBuild
+++ b/libraries/libzrtpcpp/libzrtpcpp.SlackBuild
@@ -24,7 +24,7 @@
PRGNAM=libzrtpcpp
SRCNAM=ZRTPCPP
-VERSION=${VERSION:-4.1.2}
+VERSION=${VERSION:-4.6.6}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -55,7 +55,7 @@ else
LIBDIRSUFFIX=""
fi
-DOCS="AUTHORS COPYING ChangeLog INSTALL NEWS README.md $CWD/$PRGNAM.SlackBuild"
+DOCS="AUTHORS COPYING ChangeLog INSTALL README.md $CWD/$PRGNAM.SlackBuild"
set -e
diff --git a/libraries/libzrtpcpp/libzrtpcpp.info b/libraries/libzrtpcpp/libzrtpcpp.info
index 362f787ee7..280482cd0a 100644
--- a/libraries/libzrtpcpp/libzrtpcpp.info
+++ b/libraries/libzrtpcpp/libzrtpcpp.info
@@ -1,8 +1,8 @@
PRGNAM="libzrtpcpp"
-VERSION="4.1.2"
+VERSION="4.6.6"
HOMEPAGE="http://www.gnutelephony.org/"
-DOWNLOAD="https://github.com/wernerd/ZRTPCPP/archive/V4.1.2.tar.gz"
-MD5SUM="dd13e50d0106eb38132fd74bd024664c"
+DOWNLOAD="https://github.com/wernerd/ZRTPCPP/archive/V4.6.6/ZRTPCPP-4.6.6.tar.gz"
+MD5SUM="e4f4fd0b5f228782cde398fbcff5d139"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="ccrtp"
diff --git a/libraries/live555/live555.SlackBuild b/libraries/live555/live555.SlackBuild
index ed8ff54a14..d204da7527 100644
--- a/libraries/live555/live555.SlackBuild
+++ b/libraries/live555/live555.SlackBuild
@@ -62,6 +62,10 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# This header isn't shipped in glibc >= 2.26 anymore
+# https://sourceware.org/glibc/wiki/Release/2.26#Removal_of_.27xlocale.h.27
+sed -i 's/#include <xlocale.h>.*/#include <locale.h>/' liveMedia/include/Locale.hh
+
for f in $(find . -type f |xargs grep -l "PREFIX =") ; do echo $f; sed -i -e "/PREFIX =/c\PREFIX = \/usr" $f ; done
for f in $(find . -type f |xargs grep -l "LIBDIR =") ; do echo $f; sed -i -e "/LIBDIR =/c\LIBDIR = \$(PREFIX)\/lib$LIBDIRSUFFIX" $f ; done
diff --git a/libraries/med/med.SlackBuild b/libraries/med/med.SlackBuild
index 9256b4e3b0..a9e8ff100d 100644
--- a/libraries/med/med.SlackBuild
+++ b/libraries/med/med.SlackBuild
@@ -79,6 +79,7 @@ CXXFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--docdir=/usr/doc/$PRGNAM-$VERSION \
--enable-fortran \
+ --disable-python \
--disable-static \
--build=$ARCH-slackware-linux
diff --git a/libraries/npth/README b/libraries/npth/README
deleted file mode 100644
index b89f596996..0000000000
--- a/libraries/npth/README
+++ /dev/null
@@ -1,11 +0,0 @@
-npth (New GNU Portable Threads Library)
-
-nPth is a library to provide the GNU Pth API and thus a non-preemptive
-threads implementation.
-
-In contrast to GNU Pth is is based on the system's standard threads
-implementation. This allows the use of libraries which are not compatible
-to GNU Pth. Experience with a Windows Pth emulation showed that this
-is a solid way to provide a co-routine based framework.
-
-This library is required to compile GnuPG 2.1.
diff --git a/libraries/npth/npth.SlackBuild b/libraries/npth/npth.SlackBuild
deleted file mode 100644
index 570dd8e992..0000000000
--- a/libraries/npth/npth.SlackBuild
+++ /dev/null
@@ -1,95 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for nPth
-
-# Copyright 2016 pyllyukko
-# 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.
-
-PRGNAM=npth
-VERSION=${VERSION:-1.6}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --build=$ARCH-slackware-linux
-
-make
-make install-strip DESTDIR=$PKG
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS COPYING.LIB ChangeLog HACKING INSTALL NEWS README VERSION \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/libraries/npth/npth.info b/libraries/npth/npth.info
deleted file mode 100644
index 61f97c00b1..0000000000
--- a/libraries/npth/npth.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="npth"
-VERSION="1.6"
-HOMEPAGE="https://www.gnupg.org/related_software/npth/index.html"
-DOWNLOAD="https://www.gnupg.org/ftp/gcrypt/npth/npth-1.6.tar.bz2"
-MD5SUM="375d1a15ad969f32d25f1a7630929854"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="pyllyukko"
-EMAIL="pyllyukko AT maimed dot org"
diff --git a/libraries/npth/slack-desc b/libraries/npth/slack-desc
deleted file mode 100644
index fa1c3c2ab7..0000000000
--- a/libraries/npth/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-npth: npth (New GNU Portable Threads Library)
-npth:
-npth: nPth is a library to provide the GNU Pth API and thus a non-preemptive
-npth: threads implementation.
-npth:
-npth: In contrast to GNU Pth is is based on the system's standard threads
-npth: implementation. This allows the use of libraries which are not
-npth: compatible to GNU Pth. Experience with a Windows Pth emulation showed
-npth: that this is a solid way to provide a co-routine based framework.
-npth:
-npth: Homepage: https://www.gnupg.org/related_software/npth/index.html
diff --git a/libraries/ocl-icd/README b/libraries/ocl-icd/README
deleted file mode 100644
index 3a939287d6..0000000000
--- a/libraries/ocl-icd/README
+++ /dev/null
@@ -1,19 +0,0 @@
-ocl-icd: free OpenCL ICD Loader
-
-OpenCL implementations are provided as ICD (Installable Client Driver). An
-OpenCL program can use several ICD thanks to the use of an ICD Loader as
-provided by this project. This free ICD Loader can load any (free or non free)
-ICD.
-
-NOTE: ocl-icd should not be needed on systems where graphics drivers
-by AMD or Nvidia already provide an OpenCL ICD Loader implementation.
-To check if you already have an ICD loader, run this as root:
-
- ldconfig -p | grep -i opencl
-
-If nothing is printed out, then your system probably lacks an ICD
-implementation (libOpenCL.so* objects) and you need this package.
-
-If something is printed out, then you don't need this package, as it
-would probably overwrite the ICD loader that came with your graphics
-drivers.
diff --git a/libraries/ocl-icd/ocl-icd.SlackBuild b/libraries/ocl-icd/ocl-icd.SlackBuild
deleted file mode 100644
index 3c699bf126..0000000000
--- a/libraries/ocl-icd/ocl-icd.SlackBuild
+++ /dev/null
@@ -1,109 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for ocl-icd
-
-# Copyright (c) 2017 Alan Alberghini <414N@slacky.it>
-# 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.
-# -----------------------------------------------------------------------------
-#
-# Build history:
-#
-# 1 - Initial release.
-
-PRGNAM=ocl-icd
-VERSION=${VERSION:-2.2.11}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-DOCS="README NEWS COPYING"
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/${PRGNAM}-${VERSION}.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --enable-official-khronos-headers \
- --disable-debug \
- --build=$ARCH-slackware-linux
-
-make
-make install DESTDIR=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a \
- $DOCS \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/libraries/ocl-icd/ocl-icd.info b/libraries/ocl-icd/ocl-icd.info
deleted file mode 100644
index afc9e0c87d..0000000000
--- a/libraries/ocl-icd/ocl-icd.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="ocl-icd"
-VERSION="2.2.11"
-HOMEPAGE="https://forge.imag.fr/projects/ocl-icd/"
-DOWNLOAD="https://forge.imag.fr/frs/download.php/814/ocl-icd-2.2.11.tar.gz"
-MD5SUM="32335dc7dd3ea2a4b994ca87f2f80554"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Alan Alberghini"
-EMAIL="414N@slacky.it"
diff --git a/libraries/ocl-icd/slack-desc b/libraries/ocl-icd/slack-desc
deleted file mode 100644
index cbaa8ef2ba..0000000000
--- a/libraries/ocl-icd/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
-# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-ocl-icd: ocl-icd (OpenCL ICD Loader)
-ocl-icd:
-ocl-icd: OpenCL implementations are provided as ICD (Installable Client
-ocl-icd: Driver). An OpenCL program can use several ICD thanks to the use of an
-ocl-icd: ICD Loader as provided by this project. This free ICD Loader can load
-ocl-icd: any (free or non free) ICD.
-ocl-icd:
-ocl-icd:
-ocl-icd:
-ocl-icd: Homepage:
-ocl-icd: https://forge.imag.fr/projects/ocl-icd/
diff --git a/libraries/openbabel/openbabel.SlackBuild b/libraries/openbabel/openbabel.SlackBuild
index 7bd54ad595..426fab52d4 100644
--- a/libraries/openbabel/openbabel.SlackBuild
+++ b/libraries/openbabel/openbabel.SlackBuild
@@ -25,7 +25,8 @@
# Thanks to Daniil Bratashov (dn2010@gmail.com) for the cmake conversion
PRGNAM=openbabel
-VERSION=${VERSION:-2.3.2}
+VERSION=${VERSION:-2.4.1}
+SRCVER=$(echo $VERSION | tr . -)
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -61,9 +62,9 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
+rm -rf $PRGNAM-$PRGNAM-$SRCVER
+tar xvf $CWD/$PRGNAM-$SRCVER.tar.gz
+cd $PRGNAM-$PRGNAM-$SRCVER
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -71,9 +72,6 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-# Patch for gcc-5 thanks to Arch
-patch -p0 < $CWD/gcc-5.patch
-
mkdir -p build
cd build
cmake \
@@ -95,7 +93,7 @@ find $PKG/usr/man -type f -exec gzip -9 {} \;
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
- ChangeLog AUTHORS COPYING NEWS README THANKS doc/*.html \
+ AUTHORS COPYING NEWS.md README.md THANKS authors.txt doc/*.html \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
diff --git a/libraries/openbabel/openbabel.info b/libraries/openbabel/openbabel.info
index ff15c8591e..112968ba8a 100644
--- a/libraries/openbabel/openbabel.info
+++ b/libraries/openbabel/openbabel.info
@@ -1,8 +1,8 @@
PRGNAM="openbabel"
-VERSION="2.3.2"
+VERSION="2.4.1"
HOMEPAGE="http://openbabel.sourceforge.net"
-DOWNLOAD="http://downloads.sourceforge.net/openbabel/openbabel-2.3.2.tar.gz"
-MD5SUM="9b0007560d9d838b40ab4ad06daf5610"
+DOWNLOAD="https://github.com/openbabel/openbabel/archive/openbabel-2-4-1/openbabel-2-4-1.tar.gz"
+MD5SUM="c0e0aefeef0f9f2bb2c78109d65c30a5"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="jdk"
diff --git a/libraries/pcre2/README b/libraries/pcre2/README
deleted file mode 100644
index 604c47269f..0000000000
--- a/libraries/pcre2/README
+++ /dev/null
@@ -1,2 +0,0 @@
-PCRE2 is a re-working of the original PCRE library to provide an entirely new
-API.
diff --git a/libraries/pcre2/pcre2.SlackBuild b/libraries/pcre2/pcre2.SlackBuild
deleted file mode 100644
index 98affad11e..0000000000
--- a/libraries/pcre2/pcre2.SlackBuild
+++ /dev/null
@@ -1,103 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for pcre2
-
-# Copyright 2016-2018 Larry Hajali <larryhaja[at]gmail[dot]com>
-# 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.
-
-PRGNAM=pcre2
-VERSION=${VERSION:-10.32}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --mandir=/usr/man \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --disable-silent-rules \
- --enable-static=no \
- --enable-pcre2-16 \
- --enable-pcre2-32 \
- --enable-jit \
- --enable-pcre2grep-libz \
- --enable-pcre2grep-libbz2 \
- --enable-pcre2test-libreadline \
- --build=$ARCH-slackware-linux
-
-make
-make install DESTDIR=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/libraries/pcre2/pcre2.info b/libraries/pcre2/pcre2.info
deleted file mode 100644
index 6ab3dfe22b..0000000000
--- a/libraries/pcre2/pcre2.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="pcre2"
-VERSION="10.32"
-HOMEPAGE="http://www.pcre.org/"
-DOWNLOAD="https://downloads.sourceforge.net/pcre/pcre2-10.32.tar.bz2"
-MD5SUM="8a096287153fb994970df3570e90fcb5"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Larry Hajali"
-EMAIL="larryhaja[at]gmail[dot]com"
diff --git a/libraries/physfs/physfs.SlackBuild b/libraries/physfs/physfs.SlackBuild
index 67e7602d4e..815653bfdc 100644
--- a/libraries/physfs/physfs.SlackBuild
+++ b/libraries/physfs/physfs.SlackBuild
@@ -72,14 +72,14 @@ find -L . \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
cmake \
- -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS -Wno-error=maybe-uninitialized" \
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
-DPHYSFS_BUILD_SHARED=ON \
-DPHYSFS_BUILD_STATIC=OFF \
-DPHYSFS_BUILD_TEST=OFF \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DLIB_SUFFIX:STRING=${LIBDIRSUFFIX}
+ -DLIB_SUFFIX:STRING=${LIBDIRSUFFIX} .
make
make install DESTDIR=$PKG
diff --git a/libraries/podofo/podofo.SlackBuild b/libraries/podofo/podofo.SlackBuild
index 926b5372d3..2f54c18414 100644
--- a/libraries/podofo/podofo.SlackBuild
+++ b/libraries/podofo/podofo.SlackBuild
@@ -69,6 +69,8 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+sed -i "s/BINARY_DIR}\/objects\"/BINARY_DIR}\/objects\" || true/" test/TokenizerTest/CMakeLists.txt
+
# Fix mandir directory.
sed -i 's|share/man|man|' CMakeLists.txt
# Fix building podofo on x86 with cppunit.
diff --git a/libraries/poppler-qt5/poppler-qt5.SlackBuild b/libraries/poppler-qt5/poppler-qt5.SlackBuild
index ce99c22afc..40e56259da 100644
--- a/libraries/poppler-qt5/poppler-qt5.SlackBuild
+++ b/libraries/poppler-qt5/poppler-qt5.SlackBuild
@@ -23,8 +23,8 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=poppler-qt5
-VERSION=${VERSION:-0.45.0}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-0.68.0}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
@@ -56,8 +56,8 @@ fi
set -e
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
+rm -rf $PKG ${PKG}_2
+mkdir -p $TMP $PKG ${PKG}_2 $OUTPUT
cd $TMP
rm -rf ${PRGNAM/-*/}-$VERSION
tar xvf $CWD/${PRGNAM/-*/}-$VERSION.tar.xz
@@ -69,32 +69,38 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-CFLAGS="$SLKCFLAGS" \
+mkdir build
+cd build
CXXFLAGS="$SLKCFLAGS -std=c++11" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --enable-xpdf-headers \
- --enable-poppler-qt4 \
- --enable-poppler-qt5 \
- --disable-silent-rules \
- --enable-cairo-output \
- --mandir=/usr/man \
- --disable-static \
- --without-testdatadir \
- --enable-zlib \
- --build=$ARCH-slackware-linux
-
+cmake \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_MANDIR=/usr/man \
+ -DBUILD_SHARED_LIBS=ON \
+ -DENABLE_QT5=ON \
+ -DENABLE_CMS=lcms2 \
+ -DENABLE_DCTDECODER=libjpeg \
+ -DENABLE_GTK_DOC=ON \
+ -DENABLE_LIBOPENJPEG=openjpeg2 \
+ -DENABLE_XPDF_HEADERS=ON \
+ -DENABLE_ZLIB=ON \
+ -DENABLE_ZLIB_UNCOMPRESS=ON \
+ -DBUILD_GTK_TESTS=OFF \
+ -DBUILD_QT5_TESTS=OFF \
+ -DBUILD_CPP_TESTS=OFF \
+ ..
make
-make -C qt5 install DESTDIR=$PKG
-
-mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig
-install -m 0644 $PRGNAM.pc $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig
+make install DESTDIR=${PKG}_2
+cd ..
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+mkdir -p $PKG/usr/{bin,lib$LIBDIRSUFFIX/pkgconfig,include/poppler}
+mv ${PKG}_2/usr/lib$LIBDIRSUFFIX/lib$PRGNAM.* $PKG/usr/lib$LIBDIRSUFFIX/
+mv ${PKG}_2/usr/lib$LIBDIRSUFFIX/pkgconfig/$PRGNAM.pc $PKG/usr/lib$LIBDIRSUFFIX/pkgconfig
+mv ${PKG}_2/usr/bin/pdfdetach $PKG/usr/bin/
+mv ${PKG}_2/usr/include/poppler/qt5 $PKG/usr/include/poppler/
+
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a README COPYING $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
diff --git a/libraries/poppler-qt5/poppler-qt5.info b/libraries/poppler-qt5/poppler-qt5.info
index e99b4f6e11..f681888f2c 100644
--- a/libraries/poppler-qt5/poppler-qt5.info
+++ b/libraries/poppler-qt5/poppler-qt5.info
@@ -1,8 +1,8 @@
PRGNAM="poppler-qt5"
-VERSION="0.45.0"
+VERSION="0.68.0"
HOMEPAGE="https://poppler.freedesktop.org/"
-DOWNLOAD="https://poppler.freedesktop.org/poppler-0.45.0.tar.xz"
-MD5SUM="a66e8c3cf6dab91dab5ba90d362c6063"
+DOWNLOAD="https://poppler.freedesktop.org/poppler-0.68.0.tar.xz"
+MD5SUM="722ea5837cdfaae4c98607987000de30"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="qt5"
diff --git a/libraries/ptlib/ptlib-2.10.10-mga-bison-parameter.patch b/libraries/ptlib/ptlib-2.10.10-mga-bison-parameter.patch
deleted file mode 100644
index fcc8d0d2e7..0000000000
--- a/libraries/ptlib/ptlib-2.10.10-mga-bison-parameter.patch
+++ /dev/null
@@ -1,39 +0,0 @@
---- ptlib-2.10.11/./src/ptlib/common/getdate.y 2013-08-15 01:20:26.000000000 +0200
-+++ /mnt/chroot/cauldron/home/dan/rpm/BUILD/ptlib-2.10.11/src/ptlib/common/getdate.y 2013-12-15 00:24:27.866481490 +0100
-@@ -121,9 +121,9 @@
- static int yylex();
-
- #ifdef __GNUC__
--static int yyerror(char const *msg);
-+static int yyerror(void *, char const *msg);
- #else
--static void yyerror(char const *msg);
-+static void yyerror(void *, char const *msg);
- #endif
-
-
-@@ -132,7 +132,8 @@
-
- %}
-
--%pure_parser
-+%pure-parser
-+%parse-param {void *parseParam}
-
- %union {
- time_t Number;
-@@ -1018,12 +1019,12 @@
- #endif
-
- #ifdef __GNUC__
--int yyerror(const char * s)
-+int yyerror(void *var, const char * s)
- {
- return 0;
- }
- #else
--static void yyerror(const char * s)
-+static void yyerror(void *var, const char * s)
- {
- }
- #endif
diff --git a/libraries/ptlib/ptlib-2.10.11-bison_fixes-2.patch b/libraries/ptlib/ptlib-2.10.11-bison_fixes-2.patch
new file mode 100644
index 0000000000..7f5d66cf24
--- /dev/null
+++ b/libraries/ptlib/ptlib-2.10.11-bison_fixes-2.patch
@@ -0,0 +1,2951 @@
+Submitted By: Armin K. <krejzi at email dot com>
+Updated By: Bruce Dubbs <bduubs at linuxfromscratch dot org>
+Date: 2013-08-20
+ 2016-05-04
+Initial Package Version: 2.10.10
+Upstream Status: Reported
+Origin: Self
+Description: Adds pregenerated C file which isn't generated correctly
+ with Bison 3.0.
+Update: Add fixes for gcc-6
+
+diff -Naur ptlib-2.10.11.orig/include/ptlib/critsec.h ptlib-2.10.11/include/ptlib/critsec.h
+--- ptlib-2.10.11.orig/include/ptlib/critsec.h 2013-08-14 18:20:32.000000000 -0500
++++ ptlib-2.10.11/include/ptlib/critsec.h 2016-05-04 19:40:01.626203961 -0500
+@@ -40,7 +40,7 @@
+ #if P_HAS_ATOMIC_INT
+
+ #if defined(__GNUC__)
+-# if __GNUC__ >= 4 && __GNUC_MINOR__ >= 2
++# if (__GNUC__ >= 4 && __GNUC_MINOR__ >= 2) || __GNUC__ >= 5
+ # include <ext/atomicity.h>
+ # else
+ # include <bits/atomicity.h>
+diff -Naur ptlib-2.10.11.orig/make/unix.mak ptlib-2.10.11/make/unix.mak
+--- ptlib-2.10.11.orig/make/unix.mak 2013-08-14 18:20:27.000000000 -0500
++++ ptlib-2.10.11/make/unix.mak 2016-05-04 19:38:50.921583820 -0500
+@@ -729,4 +729,6 @@
+
+ LDLIBS += -l$(PTLIB_BASE)$(LIB_TYPE)
+
++STDCCFLAGS += -Wno-deprecated-declarations
++
+ # End of unix.mak
+diff -Naur ptlib-2.10.11.orig/src/ptlib/common/getdate.tab.c ptlib-2.10.11/src/ptlib/common/getdate.tab.c
+--- ptlib-2.10.11.orig/src/ptlib/common/getdate.tab.c 1969-12-31 18:00:00.000000000 -0600
++++ ptlib-2.10.11/src/ptlib/common/getdate.tab.c 2016-05-04 19:38:59.892281859 -0500
+@@ -0,0 +1,2884 @@
++/* A Bison parser, made by GNU Bison 2.7.12-4996. */
++
++/* Bison implementation for Yacc-like parsers in C
++
++ Copyright (C) 1984, 1989-1990, 2000-2013 Free Software Foundation, Inc.
++
++ This program is free software: you can redistribute it and/or modify
++ it under the terms of the GNU General Public License as published by
++ the Free Software Foundation, either version 3 of the License, or
++ (at your option) any later version.
++
++ This program is distributed in the hope that it will be useful,
++ but WITHOUT ANY WARRANTY; without even the implied warranty of
++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ GNU General Public License for more details.
++
++ You should have received a copy of the GNU General Public License
++ along with this program. If not, see <http://www.gnu.org/licenses/>. */
++
++/* As a special exception, you may create a larger work that contains
++ part or all of the Bison parser skeleton and distribute that work
++ under terms of your choice, so long as that work isn't itself a
++ parser generator using the skeleton or a modified version thereof
++ as a parser skeleton. Alternatively, if you modify or redistribute
++ the parser skeleton itself, you may (at your option) remove this
++ special exception, which will cause the skeleton and the resulting
++ Bison output files to be licensed under the GNU General Public
++ License without this special exception.
++
++ This special exception was added by the Free Software Foundation in
++ version 2.2 of Bison. */
++
++/* C LALR(1) parser skeleton written by Richard Stallman, by
++ simplifying the original so-called "semantic" parser. */
++
++/* All symbols defined below should begin with yy or YY, to avoid
++ infringing on user name space. This should be done even for local
++ variables, as they might otherwise be expanded by user macros.
++ There are some unavoidable exceptions within include files to
++ define necessary library symbols; they are noted "INFRINGES ON
++ USER NAME SPACE" below. */
++
++/* Identify Bison output. */
++#define YYBISON 1
++
++/* Bison version. */
++#define YYBISON_VERSION "2.7.12-4996"
++
++/* Skeleton name. */
++#define YYSKELETON_NAME "yacc.c"
++
++/* Pure parsers. */
++#define YYPURE 1
++
++/* Push parsers. */
++#define YYPUSH 0
++
++/* Pull parsers. */
++#define YYPULL 1
++
++
++
++
++/* Copy the first part of user declarations. */
++/* Line 371 of yacc.c */
++#line 1 "ptlib/common/getdate.y"
++
++/*
++** Originally written by Steven M. Bellovin <smb@research.att.com> while
++** at the University of North Carolina at Chapel Hill. Later tweaked by
++** a couple of people on Usenet. Completely overhauled by Rich $alz
++** <rsalz@bbn.com> and Jim Berets <jberets@bbn.com> in August, 1990;
++**
++** Major hack to coerce it into use with the Equivalence Portable
++** Windows Library.
++**
++** This grammar has 10 shift/reduce conflicts.
++**
++** This code is in the public domain and has no copyright.
++*/
++/* SUPPRESS 287 on yaccpar_sccsid *//* Unused static variable */
++/* SUPPRESS 288 on yyerrlab *//* Label unused */
++
++
++#include <time.h>
++#include <string.h>
++#include <ctype.h>
++#include <stdlib.h>
++
++#ifndef EOF
++#include <stdio.h>
++#endif
++
++
++#ifdef _WIN32
++#ifdef _MSC_VER
++#pragma warning(disable:4131 4701 4996)
++#endif
++#define STDAPICALLTYPE __stdcall
++#define MSDOS
++#else
++#define STDAPICALLTYPE
++#endif
++
++
++extern int STDAPICALLTYPE PTimeGetChar(void * stream);
++extern void STDAPICALLTYPE PTimeUngetChar(void * stream, int c);
++int STDAPICALLTYPE PTimeGetDateOrder();
++int STDAPICALLTYPE PTimeIsMonthName(const char *, int, int);
++int STDAPICALLTYPE PTimeIsDayName(const char *, int, int);
++
++
++#define EPOCH 1970
++#define HOUR(x) ((time_t)(x) * 60)
++#define SECSPERDAY (24L * 60L * 60L)
++
++
++/*
++** An entry in the lexical lookup table.
++*/
++typedef struct _TABLE {
++ char *name;
++ int type;
++ time_t value;
++} TABLE;
++
++
++/*
++** Daylight-savings mode: on, off, or not yet known.
++*/
++typedef enum _DSTMODE {
++ DSTon, DSToff, DSTmaybe
++} DSTMODE;
++
++/*
++** Meridian: am, pm, or 24-hour style.
++*/
++typedef enum _MERIDIAN {
++ MERam, MERpm, MER24
++} MERIDIAN;
++
++
++/*
++** Global variables. We could get rid of most of these by using a good
++** union as the yacc stack. (This routine was originally written before
++** yacc had the %union construct.) Maybe someday; right now we only use
++** the %union very rarely.
++*/
++struct Variables {
++ void *yyInput;
++ DSTMODE yyDSTmode;
++ time_t yyDayOrdinal;
++ time_t yyDayNumber;
++ int yyHaveDate;
++ int yyHaveDay;
++ int yyHaveRel;
++ int yyHaveTime;
++ int yyHaveZone;
++ time_t yyTimezone;
++ time_t yyDay;
++ time_t yyHour;
++ time_t yyMinutes;
++ time_t yyMonth;
++ time_t yySeconds;
++ time_t yyYear;
++ MERIDIAN yyMeridian;
++ time_t yyRelMonth;
++ time_t yyRelSeconds;
++};
++
++#define VARIABLE ((struct Variables*)parseParam)
++
++
++#define YYPURE 1
++#define YYLEX_PARAM VARIABLE
++#define YYPARSE_PARAM parseParam
++
++#define yyparse PTime_yyparse
++#define yylex PTime_yylex
++#define yyerror PTime_yyerror
++
++#define GCC_VERSION (__GNUC__ * 10000 \
++ + __GNUC_MINOR__ * 100 \
++ + __GNUC_PATCHLEVEL__)
++
++static int yyparse(void *);
++static int yylex();
++
++#ifdef __GNUC__
++static int yyerror(char const *msg);
++#else
++static void yyerror(char const *msg);
++#endif
++
++
++static void SetPossibleDate(struct Variables*, time_t, time_t, time_t);
++
++
++
++/* Line 371 of yacc.c */
++#line 202 "ptlib/common/getdate.tab.c"
++
++# ifndef YY_NULL
++# if defined __cplusplus && 201103L <= __cplusplus
++# define YY_NULL nullptr
++# else
++# define YY_NULL 0
++# endif
++# endif
++
++/* Enabling verbose error messages. */
++#ifdef YYERROR_VERBOSE
++# undef YYERROR_VERBOSE
++# define YYERROR_VERBOSE 1
++#else
++# define YYERROR_VERBOSE 0
++#endif
++
++
++/* Enabling traces. */
++#ifndef YYDEBUG
++# define YYDEBUG 0
++#endif
++#if YYDEBUG
++extern int yydebug;
++#endif
++
++/* Tokens. */
++#ifndef YYTOKENTYPE
++# define YYTOKENTYPE
++ /* Put the tokens into the symbol table, so that GDB and other debuggers
++ know about them. */
++ enum yytokentype {
++ tAGO = 258,
++ tDAY = 259,
++ tDAYZONE = 260,
++ tID = 261,
++ tMERIDIAN = 262,
++ tMINUTE_UNIT = 263,
++ tMONTH = 264,
++ tMONTH_UNIT = 265,
++ tSNUMBER = 266,
++ tS4DIGITNUMBER = 267,
++ tUNUMBER = 268,
++ t4DIGITNUMBER = 269,
++ t6DIGITNUMBER = 270,
++ t8DIGITNUMBER = 271,
++ tSEC_UNIT = 272,
++ tZONE = 273,
++ tMILZONE = 274,
++ tRFC3339 = 275,
++ tDST = 276
++ };
++#endif
++
++
++#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
++typedef union YYSTYPE
++{
++/* Line 387 of yacc.c */
++#line 137 "ptlib/common/getdate.y"
++
++ time_t Number;
++ enum _MERIDIAN Meridian;
++
++
++/* Line 387 of yacc.c */
++#line 269 "ptlib/common/getdate.tab.c"
++} YYSTYPE;
++# define YYSTYPE_IS_TRIVIAL 1
++# define yystype YYSTYPE /* obsolescent; will be withdrawn */
++# define YYSTYPE_IS_DECLARED 1
++#endif
++
++
++#ifdef YYPARSE_PARAM
++#if defined __STDC__ || defined __cplusplus
++int yyparse (void *YYPARSE_PARAM);
++#else
++int yyparse ();
++#endif
++#else /* ! YYPARSE_PARAM */
++#if defined __STDC__ || defined __cplusplus
++int yyparse (void);
++#else
++int yyparse ();
++#endif
++#endif /* ! YYPARSE_PARAM */
++
++
++
++/* Copy the second part of user declarations. */
++
++/* Line 390 of yacc.c */
++#line 296 "ptlib/common/getdate.tab.c"
++
++#ifdef short
++# undef short
++#endif
++
++#ifdef YYTYPE_UINT8
++typedef YYTYPE_UINT8 yytype_uint8;
++#else
++typedef unsigned char yytype_uint8;
++#endif
++
++#ifdef YYTYPE_INT8
++typedef YYTYPE_INT8 yytype_int8;
++#elif (defined __STDC__ || defined __C99__FUNC__ \
++ || defined __cplusplus || defined _MSC_VER)
++typedef signed char yytype_int8;
++#else
++typedef short int yytype_int8;
++#endif
++
++#ifdef YYTYPE_UINT16
++typedef YYTYPE_UINT16 yytype_uint16;
++#else
++typedef unsigned short int yytype_uint16;
++#endif
++
++#ifdef YYTYPE_INT16
++typedef YYTYPE_INT16 yytype_int16;
++#else
++typedef short int yytype_int16;
++#endif
++
++#ifndef YYSIZE_T
++# ifdef __SIZE_TYPE__
++# define YYSIZE_T __SIZE_TYPE__
++# elif defined size_t
++# define YYSIZE_T size_t
++# elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \
++ || defined __cplusplus || defined _MSC_VER)
++# include <stddef.h> /* INFRINGES ON USER NAME SPACE */
++# define YYSIZE_T size_t
++# else
++# define YYSIZE_T unsigned int
++# endif
++#endif
++
++#define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
++
++#ifndef YY_
++# if defined YYENABLE_NLS && YYENABLE_NLS
++# if ENABLE_NLS
++# include <libintl.h> /* INFRINGES ON USER NAME SPACE */
++# define YY_(Msgid) dgettext ("bison-runtime", Msgid)
++# endif
++# endif
++# ifndef YY_
++# define YY_(Msgid) Msgid
++# endif
++#endif
++
++#ifndef __attribute__
++/* This feature is available in gcc versions 2.5 and later. */
++# if (! defined __GNUC__ || __GNUC__ < 2 \
++ || (__GNUC__ == 2 && __GNUC_MINOR__ < 5))
++# define __attribute__(Spec) /* empty */
++# endif
++#endif
++
++/* Suppress unused-variable warnings by "using" E. */
++#if ! defined lint || defined __GNUC__
++# define YYUSE(E) ((void) (E))
++#else
++# define YYUSE(E) /* empty */
++#endif
++
++
++/* Identity function, used to suppress warnings about constant conditions. */
++#ifndef lint
++# define YYID(N) (N)
++#else
++#if (defined __STDC__ || defined __C99__FUNC__ \
++ || defined __cplusplus || defined _MSC_VER)
++static int
++YYID (int yyi)
++#else
++static int
++YYID (yyi)
++ int yyi;
++#endif
++{
++ return yyi;
++}
++#endif
++
++#if ! defined yyoverflow || YYERROR_VERBOSE
++
++/* The parser invokes alloca or malloc; define the necessary symbols. */
++
++# ifdef YYSTACK_USE_ALLOCA
++# if YYSTACK_USE_ALLOCA
++# ifdef __GNUC__
++# define YYSTACK_ALLOC __builtin_alloca
++# elif defined __BUILTIN_VA_ARG_INCR
++# include <alloca.h> /* INFRINGES ON USER NAME SPACE */
++# elif defined _AIX
++# define YYSTACK_ALLOC __alloca
++# elif defined _MSC_VER
++# include <malloc.h> /* INFRINGES ON USER NAME SPACE */
++# define alloca _alloca
++# else
++# define YYSTACK_ALLOC alloca
++# if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \
++ || defined __cplusplus || defined _MSC_VER)
++# include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
++ /* Use EXIT_SUCCESS as a witness for stdlib.h. */
++# ifndef EXIT_SUCCESS
++# define EXIT_SUCCESS 0
++# endif
++# endif
++# endif
++# endif
++# endif
++
++# ifdef YYSTACK_ALLOC
++ /* Pacify GCC's `empty if-body' warning. */
++# define YYSTACK_FREE(Ptr) do { /* empty */; } while (YYID (0))
++# ifndef YYSTACK_ALLOC_MAXIMUM
++ /* The OS might guarantee only one guard page at the bottom of the stack,
++ and a page size can be as small as 4096 bytes. So we cannot safely
++ invoke alloca (N) if N exceeds 4096. Use a slightly smaller number
++ to allow for a few compiler-allocated temporary stack slots. */
++# define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */
++# endif
++# else
++# define YYSTACK_ALLOC YYMALLOC
++# define YYSTACK_FREE YYFREE
++# ifndef YYSTACK_ALLOC_MAXIMUM
++# define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
++# endif
++# if (defined __cplusplus && ! defined EXIT_SUCCESS \
++ && ! ((defined YYMALLOC || defined malloc) \
++ && (defined YYFREE || defined free)))
++# include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
++# ifndef EXIT_SUCCESS
++# define EXIT_SUCCESS 0
++# endif
++# endif
++# ifndef YYMALLOC
++# define YYMALLOC malloc
++# if ! defined malloc && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \
++ || defined __cplusplus || defined _MSC_VER)
++void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
++# endif
++# endif
++# ifndef YYFREE
++# define YYFREE free
++# if ! defined free && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \
++ || defined __cplusplus || defined _MSC_VER)
++void free (void *); /* INFRINGES ON USER NAME SPACE */
++# endif
++# endif
++# endif
++#endif /* ! defined yyoverflow || YYERROR_VERBOSE */
++
++
++#if (! defined yyoverflow \
++ && (! defined __cplusplus \
++ || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
++
++/* A type that is properly aligned for any stack member. */
++union yyalloc
++{
++ yytype_int16 yyss_alloc;
++ YYSTYPE yyvs_alloc;
++};
++
++/* The size of the maximum gap between one aligned stack and the next. */
++# define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
++
++/* The size of an array large to enough to hold all stacks, each with
++ N elements. */
++# define YYSTACK_BYTES(N) \
++ ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
++ + YYSTACK_GAP_MAXIMUM)
++
++# define YYCOPY_NEEDED 1
++
++/* Relocate STACK from its old location to the new one. The
++ local variables YYSIZE and YYSTACKSIZE give the old and new number of
++ elements in the stack, and YYPTR gives the new location of the
++ stack. Advance YYPTR to a properly aligned location for the next
++ stack. */
++# define YYSTACK_RELOCATE(Stack_alloc, Stack) \
++ do \
++ { \
++ YYSIZE_T yynewbytes; \
++ YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \
++ Stack = &yyptr->Stack_alloc; \
++ yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
++ yyptr += yynewbytes / sizeof (*yyptr); \
++ } \
++ while (YYID (0))
++
++#endif
++
++#if defined YYCOPY_NEEDED && YYCOPY_NEEDED
++/* Copy COUNT objects from SRC to DST. The source and destination do
++ not overlap. */
++# ifndef YYCOPY
++# if defined __GNUC__ && 1 < __GNUC__
++# define YYCOPY(Dst, Src, Count) \
++ __builtin_memcpy (Dst, Src, (Count) * sizeof (*(Src)))
++# else
++# define YYCOPY(Dst, Src, Count) \
++ do \
++ { \
++ YYSIZE_T yyi; \
++ for (yyi = 0; yyi < (Count); yyi++) \
++ (Dst)[yyi] = (Src)[yyi]; \
++ } \
++ while (YYID (0))
++# endif
++# endif
++#endif /* !YYCOPY_NEEDED */
++
++/* YYFINAL -- State number of the termination state. */
++#define YYFINAL 2
++/* YYLAST -- Last index in YYTABLE. */
++#define YYLAST 105
++
++/* YYNTOKENS -- Number of terminals. */
++#define YYNTOKENS 25
++/* YYNNTS -- Number of nonterminals. */
++#define YYNNTS 12
++/* YYNRULES -- Number of rules. */
++#define YYNRULES 51
++/* YYNRULES -- Number of states. */
++#define YYNSTATES 63
++
++/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
++#define YYUNDEFTOK 2
++#define YYMAXUTOK 276
++
++#define YYTRANSLATE(YYX) \
++ ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
++
++/* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX. */
++static const yytype_uint8 yytranslate[] =
++{
++ 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
++ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
++ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
++ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
++ 2, 2, 2, 2, 23, 2, 2, 24, 2, 2,
++ 2, 2, 2, 2, 2, 2, 2, 2, 22, 2,
++ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
++ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
++ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
++ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
++ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
++ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
++ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
++ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
++ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
++ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
++ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
++ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
++ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
++ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
++ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
++ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
++ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
++ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
++ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
++ 2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
++ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
++ 15, 16, 17, 18, 19, 20, 21
++};
++
++#if YYDEBUG
++/* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
++ YYRHS. */
++static const yytype_uint8 yyprhs[] =
++{
++ 0, 0, 3, 4, 7, 9, 11, 13, 15, 17,
++ 19, 22, 25, 28, 33, 38, 45, 52, 54, 56,
++ 59, 61, 63, 66, 69, 73, 79, 84, 86, 90,
++ 93, 98, 101, 105, 108, 110, 113, 116, 118, 121,
++ 124, 126, 129, 132, 134, 136, 138, 140, 142, 144,
++ 146, 147
++};
++
++/* YYRHS -- A `-1'-separated list of the rules' RHS. */
++static const yytype_int8 yyrhs[] =
++{
++ 26, 0, -1, -1, 26, 27, -1, 28, -1, 29,
++ -1, 31, -1, 30, -1, 32, -1, 35, -1, 13,
++ 7, -1, 14, 12, -1, 15, 12, -1, 34, 22,
++ 34, 36, -1, 34, 22, 34, 12, -1, 34, 22,
++ 34, 22, 34, 36, -1, 34, 22, 34, 22, 34,
++ 12, -1, 18, -1, 5, -1, 18, 21, -1, 19,
++ -1, 4, -1, 4, 23, -1, 34, 4, -1, 34,
++ 24, 34, -1, 34, 24, 34, 24, 34, -1, 34,
++ 11, 11, 20, -1, 16, -1, 34, 9, 11, -1,
++ 9, 34, -1, 9, 34, 23, 34, -1, 34, 9,
++ -1, 34, 9, 34, -1, 33, 3, -1, 33, -1,
++ 34, 8, -1, 11, 8, -1, 8, -1, 11, 17,
++ -1, 34, 17, -1, 17, -1, 11, 10, -1, 34,
++ 10, -1, 10, -1, 13, -1, 14, -1, 15, -1,
++ 13, -1, 14, -1, 15, -1, -1, 7, -1
++};
++
++/* YYRLINE[YYN] -- source line where rule number YYN was defined. */
++static const yytype_uint16 yyrline[] =
++{
++ 0, 153, 153, 154, 157, 160, 163, 166, 169, 172,
++ 175, 181, 189, 197, 203, 210, 216, 226, 230, 235,
++ 239, 249, 253, 257, 263, 266, 269, 273, 278, 282,
++ 289, 294, 301, 306, 310, 313, 316, 319, 322, 325,
++ 328, 331, 334, 337, 342, 345, 348, 353, 379, 390,
++ 407, 410
++};
++#endif
++
++#if YYDEBUG || YYERROR_VERBOSE || 0
++/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
++ First, the terminals, then, starting at YYNTOKENS, nonterminals. */
++static const char *const yytname[] =
++{
++ "$end", "error", "$undefined", "tAGO", "tDAY", "tDAYZONE", "tID",
++ "tMERIDIAN", "tMINUTE_UNIT", "tMONTH", "tMONTH_UNIT", "tSNUMBER",
++ "tS4DIGITNUMBER", "tUNUMBER", "t4DIGITNUMBER", "t6DIGITNUMBER",
++ "t8DIGITNUMBER", "tSEC_UNIT", "tZONE", "tMILZONE", "tRFC3339", "tDST",
++ "':'", "','", "'/'", "$accept", "spec", "item", "time", "zone", "day",
++ "date", "rel", "relunit", "unumber", "number", "o_merid", YY_NULL
++};
++#endif
++
++# ifdef YYPRINT
++/* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
++ token YYLEX-NUM. */
++static const yytype_uint16 yytoknum[] =
++{
++ 0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
++ 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
++ 275, 276, 58, 44, 47
++};
++# endif
++
++/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
++static const yytype_uint8 yyr1[] =
++{
++ 0, 25, 26, 26, 27, 27, 27, 27, 27, 27,
++ 28, 28, 28, 28, 28, 28, 28, 29, 29, 29,
++ 29, 30, 30, 30, 31, 31, 31, 31, 31, 31,
++ 31, 31, 31, 32, 32, 33, 33, 33, 33, 33,
++ 33, 33, 33, 33, 34, 34, 34, 35, 35, 35,
++ 36, 36
++};
++
++/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
++static const yytype_uint8 yyr2[] =
++{
++ 0, 2, 0, 2, 1, 1, 1, 1, 1, 1,
++ 2, 2, 2, 4, 4, 6, 6, 1, 1, 2,
++ 1, 1, 2, 2, 3, 5, 4, 1, 3, 2,
++ 4, 2, 3, 2, 1, 2, 2, 1, 2, 2,
++ 1, 2, 2, 1, 1, 1, 1, 1, 1, 1,
++ 0, 1
++};
++
++/* YYDEFACT[STATE-NAME] -- Default reduction number in state STATE-NUM.
++ Performed when YYTABLE doesn't specify something else to do. Zero
++ means the default is an error. */
++static const yytype_uint8 yydefact[] =
++{
++ 2, 0, 1, 21, 18, 37, 0, 43, 0, 44,
++ 45, 46, 27, 40, 17, 20, 3, 4, 5, 7,
++ 6, 8, 34, 0, 9, 22, 44, 45, 46, 29,
++ 36, 41, 38, 10, 11, 12, 19, 33, 23, 35,
++ 31, 42, 0, 39, 0, 0, 0, 28, 32, 0,
++ 50, 24, 30, 26, 51, 14, 0, 13, 0, 50,
++ 25, 16, 15
++};
++
++/* YYDEFGOTO[NTERM-NUM]. */
++static const yytype_int8 yydefgoto[] =
++{
++ -1, 1, 16, 17, 18, 19, 20, 21, 22, 23,
++ 24, 57
++};
++
++/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
++ STATE-NUM. */
++#define YYPACT_NINF -27
++static const yytype_int8 yypact[] =
++{
++ -27, 49, -27, -10, -27, -27, -11, -27, 1, 10,
++ 69, 86, -27, -27, -9, -27, -27, -27, -27, -27,
++ -27, -27, 13, -3, -27, -27, -27, -27, -27, 8,
++ -27, -27, -27, -27, -27, -27, -27, -27, -27, -27,
++ 30, -27, 9, -27, -11, -11, -11, -27, -27, 12,
++ 15, 18, -27, -27, -27, -27, -11, -27, -11, 23,
++ -27, -27, -27
++};
++
++/* YYPGOTO[NTERM-NUM]. */
++static const yytype_int8 yypgoto[] =
++{
++ -27, -27, -27, -27, -27, -27, -27, -27, -27, -6,
++ -27, -26
++};
++
++/* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If
++ positive, shift that token. If negative, reduce the rule which
++ number is the opposite. If YYTABLE_NINF, syntax error. */
++#define YYTABLE_NINF -50
++static const yytype_int8 yytable[] =
++{
++ 29, 38, 26, 27, 28, 39, 40, 41, 42, 30,
++ -47, 31, 36, 25, 43, -47, 37, 33, 32, 44,
++ 49, 45, 54, -47, -47, -47, -47, 55, -47, -47,
++ 54, 46, 53, 62, 48, 61, 0, 56, 50, 51,
++ 52, 47, 58, 26, 27, 28, 0, 0, 0, 2,
++ 59, 0, 60, 3, 4, 0, 0, 5, 6, 7,
++ 8, 0, 9, 10, 11, 12, 13, 14, 15, -48,
++ 0, 0, 0, 0, -48, 0, 0, 0, 0, 0,
++ 0, 34, -48, -48, -48, -48, -49, -48, -48, 0,
++ 0, -49, 0, 0, 0, 0, 0, 0, 35, -49,
++ -49, -49, -49, 0, -49, -49
++};
++
++#define yypact_value_is_default(Yystate) \
++ (!!((Yystate) == (-27)))
++
++#define yytable_value_is_error(Yytable_value) \
++ YYID (0)
++
++static const yytype_int8 yycheck[] =
++{
++ 6, 4, 13, 14, 15, 8, 9, 10, 11, 8,
++ 0, 10, 21, 23, 17, 5, 3, 7, 17, 22,
++ 11, 24, 7, 13, 14, 15, 16, 12, 18, 19,
++ 7, 23, 20, 59, 40, 12, -1, 22, 44, 45,
++ 46, 11, 24, 13, 14, 15, -1, -1, -1, 0,
++ 56, -1, 58, 4, 5, -1, -1, 8, 9, 10,
++ 11, -1, 13, 14, 15, 16, 17, 18, 19, 0,
++ -1, -1, -1, -1, 5, -1, -1, -1, -1, -1,
++ -1, 12, 13, 14, 15, 16, 0, 18, 19, -1,
++ -1, 5, -1, -1, -1, -1, -1, -1, 12, 13,
++ 14, 15, 16, -1, 18, 19
++};
++
++/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
++ symbol of state STATE-NUM. */
++static const yytype_uint8 yystos[] =
++{
++ 0, 26, 0, 4, 5, 8, 9, 10, 11, 13,
++ 14, 15, 16, 17, 18, 19, 27, 28, 29, 30,
++ 31, 32, 33, 34, 35, 23, 13, 14, 15, 34,
++ 8, 10, 17, 7, 12, 12, 21, 3, 4, 8,
++ 9, 10, 11, 17, 22, 24, 23, 11, 34, 11,
++ 34, 34, 34, 20, 7, 12, 22, 36, 24, 34,
++ 34, 12, 36
++};
++
++#define yyerrok (yyerrstatus = 0)
++#define yyclearin (yychar = YYEMPTY)
++#define YYEMPTY (-2)
++#define YYEOF 0
++
++#define YYACCEPT goto yyacceptlab
++#define YYABORT goto yyabortlab
++#define YYERROR goto yyerrorlab
++
++
++/* Like YYERROR except do call yyerror. This remains here temporarily
++ to ease the transition to the new meaning of YYERROR, for GCC.
++ Once GCC version 2 has supplanted version 1, this can go. However,
++ YYFAIL appears to be in use. Nevertheless, it is formally deprecated
++ in Bison 2.4.2's NEWS entry, where a plan to phase it out is
++ discussed. */
++
++#define YYFAIL goto yyerrlab
++#if defined YYFAIL
++ /* This is here to suppress warnings from the GCC cpp's
++ -Wunused-macros. Normally we don't worry about that warning, but
++ some users do, and we want to make it easy for users to remove
++ YYFAIL uses, which will produce warnings from Bison 2.5. */
++#endif
++
++#define YYRECOVERING() (!!yyerrstatus)
++
++#define YYBACKUP(Token, Value) \
++do \
++ if (yychar == YYEMPTY) \
++ { \
++ yychar = (Token); \
++ yylval = (Value); \
++ YYPOPSTACK (yylen); \
++ yystate = *yyssp; \
++ goto yybackup; \
++ } \
++ else \
++ { \
++ yyerror (YY_("syntax error: cannot back up")); \
++ YYERROR; \
++ } \
++while (YYID (0))
++
++/* Error token number */
++#define YYTERROR 1
++#define YYERRCODE 256
++
++
++/* This macro is provided for backward compatibility. */
++#ifndef YY_LOCATION_PRINT
++# define YY_LOCATION_PRINT(File, Loc) ((void) 0)
++#endif
++
++
++/* YYLEX -- calling `yylex' with the right arguments. */
++#ifdef YYLEX_PARAM
++# define YYLEX yylex (&yylval, YYLEX_PARAM)
++#else
++# define YYLEX yylex (&yylval)
++#endif
++
++/* Enable debugging if requested. */
++#if YYDEBUG
++
++# ifndef YYFPRINTF
++# include <stdio.h> /* INFRINGES ON USER NAME SPACE */
++# define YYFPRINTF fprintf
++# endif
++
++# define YYDPRINTF(Args) \
++do { \
++ if (yydebug) \
++ YYFPRINTF Args; \
++} while (YYID (0))
++
++# define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
++do { \
++ if (yydebug) \
++ { \
++ YYFPRINTF (stderr, "%s ", Title); \
++ yy_symbol_print (stderr, \
++ Type, Value); \
++ YYFPRINTF (stderr, "\n"); \
++ } \
++} while (YYID (0))
++
++
++/*--------------------------------.
++| Print this symbol on YYOUTPUT. |
++`--------------------------------*/
++
++/*ARGSUSED*/
++#if (defined __STDC__ || defined __C99__FUNC__ \
++ || defined __cplusplus || defined _MSC_VER)
++static void
++yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep)
++#else
++static void
++yy_symbol_value_print (yyoutput, yytype, yyvaluep)
++ FILE *yyoutput;
++ int yytype;
++ YYSTYPE const * const yyvaluep;
++#endif
++{
++ FILE *yyo = yyoutput;
++ YYUSE (yyo);
++ if (!yyvaluep)
++ return;
++# ifdef YYPRINT
++ if (yytype < YYNTOKENS)
++ YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
++# else
++ YYUSE (yyoutput);
++# endif
++ YYUSE (yytype);
++}
++
++
++/*--------------------------------.
++| Print this symbol on YYOUTPUT. |
++`--------------------------------*/
++
++#if (defined __STDC__ || defined __C99__FUNC__ \
++ || defined __cplusplus || defined _MSC_VER)
++static void
++yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep)
++#else
++static void
++yy_symbol_print (yyoutput, yytype, yyvaluep)
++ FILE *yyoutput;
++ int yytype;
++ YYSTYPE const * const yyvaluep;
++#endif
++{
++ if (yytype < YYNTOKENS)
++ YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
++ else
++ YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
++
++ yy_symbol_value_print (yyoutput, yytype, yyvaluep);
++ YYFPRINTF (yyoutput, ")");
++}
++
++/*------------------------------------------------------------------.
++| yy_stack_print -- Print the state stack from its BOTTOM up to its |
++| TOP (included). |
++`------------------------------------------------------------------*/
++
++#if (defined __STDC__ || defined __C99__FUNC__ \
++ || defined __cplusplus || defined _MSC_VER)
++static void
++yy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop)
++#else
++static void
++yy_stack_print (yybottom, yytop)
++ yytype_int16 *yybottom;
++ yytype_int16 *yytop;
++#endif
++{
++ YYFPRINTF (stderr, "Stack now");
++ for (; yybottom <= yytop; yybottom++)
++ {
++ int yybot = *yybottom;
++ YYFPRINTF (stderr, " %d", yybot);
++ }
++ YYFPRINTF (stderr, "\n");
++}
++
++# define YY_STACK_PRINT(Bottom, Top) \
++do { \
++ if (yydebug) \
++ yy_stack_print ((Bottom), (Top)); \
++} while (YYID (0))
++
++
++/*------------------------------------------------.
++| Report that the YYRULE is going to be reduced. |
++`------------------------------------------------*/
++
++#if (defined __STDC__ || defined __C99__FUNC__ \
++ || defined __cplusplus || defined _MSC_VER)
++static void
++yy_reduce_print (YYSTYPE *yyvsp, int yyrule)
++#else
++static void
++yy_reduce_print (yyvsp, yyrule)
++ YYSTYPE *yyvsp;
++ int yyrule;
++#endif
++{
++ int yynrhs = yyr2[yyrule];
++ int yyi;
++ unsigned long int yylno = yyrline[yyrule];
++ YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n",
++ yyrule - 1, yylno);
++ /* The symbols being reduced. */
++ for (yyi = 0; yyi < yynrhs; yyi++)
++ {
++ YYFPRINTF (stderr, " $%d = ", yyi + 1);
++ yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi],
++ &(yyvsp[(yyi + 1) - (yynrhs)])
++ );
++ YYFPRINTF (stderr, "\n");
++ }
++}
++
++# define YY_REDUCE_PRINT(Rule) \
++do { \
++ if (yydebug) \
++ yy_reduce_print (yyvsp, Rule); \
++} while (YYID (0))
++
++/* Nonzero means print parse trace. It is left uninitialized so that
++ multiple parsers can coexist. */
++int yydebug;
++#else /* !YYDEBUG */
++# define YYDPRINTF(Args)
++# define YY_SYMBOL_PRINT(Title, Type, Value, Location)
++# define YY_STACK_PRINT(Bottom, Top)
++# define YY_REDUCE_PRINT(Rule)
++#endif /* !YYDEBUG */
++
++
++/* YYINITDEPTH -- initial size of the parser's stacks. */
++#ifndef YYINITDEPTH
++# define YYINITDEPTH 200
++#endif
++
++/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
++ if the built-in stack extension method is used).
++
++ Do not make this value too large; the results are undefined if
++ YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
++ evaluated with infinite-precision integer arithmetic. */
++
++#ifndef YYMAXDEPTH
++# define YYMAXDEPTH 10000
++#endif
++
++
++#if YYERROR_VERBOSE
++
++# ifndef yystrlen
++# if defined __GLIBC__ && defined _STRING_H
++# define yystrlen strlen
++# else
++/* Return the length of YYSTR. */
++#if (defined __STDC__ || defined __C99__FUNC__ \
++ || defined __cplusplus || defined _MSC_VER)
++static YYSIZE_T
++yystrlen (const char *yystr)
++#else
++static YYSIZE_T
++yystrlen (yystr)
++ const char *yystr;
++#endif
++{
++ YYSIZE_T yylen;
++ for (yylen = 0; yystr[yylen]; yylen++)
++ continue;
++ return yylen;
++}
++# endif
++# endif
++
++# ifndef yystpcpy
++# if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
++# define yystpcpy stpcpy
++# else
++/* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
++ YYDEST. */
++#if (defined __STDC__ || defined __C99__FUNC__ \
++ || defined __cplusplus || defined _MSC_VER)
++static char *
++yystpcpy (char *yydest, const char *yysrc)
++#else
++static char *
++yystpcpy (yydest, yysrc)
++ char *yydest;
++ const char *yysrc;
++#endif
++{
++ char *yyd = yydest;
++ const char *yys = yysrc;
++
++ while ((*yyd++ = *yys++) != '\0')
++ continue;
++
++ return yyd - 1;
++}
++# endif
++# endif
++
++# ifndef yytnamerr
++/* Copy to YYRES the contents of YYSTR after stripping away unnecessary
++ quotes and backslashes, so that it's suitable for yyerror. The
++ heuristic is that double-quoting is unnecessary unless the string
++ contains an apostrophe, a comma, or backslash (other than
++ backslash-backslash). YYSTR is taken from yytname. If YYRES is
++ null, do not copy; instead, return the length of what the result
++ would have been. */
++static YYSIZE_T
++yytnamerr (char *yyres, const char *yystr)
++{
++ if (*yystr == '"')
++ {
++ YYSIZE_T yyn = 0;
++ char const *yyp = yystr;
++
++ for (;;)
++ switch (*++yyp)
++ {
++ case '\'':
++ case ',':
++ goto do_not_strip_quotes;
++
++ case '\\':
++ if (*++yyp != '\\')
++ goto do_not_strip_quotes;
++ /* Fall through. */
++ default:
++ if (yyres)
++ yyres[yyn] = *yyp;
++ yyn++;
++ break;
++
++ case '"':
++ if (yyres)
++ yyres[yyn] = '\0';
++ return yyn;
++ }
++ do_not_strip_quotes: ;
++ }
++
++ if (! yyres)
++ return yystrlen (yystr);
++
++ return yystpcpy (yyres, yystr) - yyres;
++}
++# endif
++
++/* Copy into *YYMSG, which is of size *YYMSG_ALLOC, an error message
++ about the unexpected token YYTOKEN for the state stack whose top is
++ YYSSP.
++
++ Return 0 if *YYMSG was successfully written. Return 1 if *YYMSG is
++ not large enough to hold the message. In that case, also set
++ *YYMSG_ALLOC to the required number of bytes. Return 2 if the
++ required number of bytes is too large to store. */
++static int
++yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg,
++ yytype_int16 *yyssp, int yytoken)
++{
++ YYSIZE_T yysize0 = yytnamerr (YY_NULL, yytname[yytoken]);
++ YYSIZE_T yysize = yysize0;
++ enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
++ /* Internationalized format string. */
++ const char *yyformat = YY_NULL;
++ /* Arguments of yyformat. */
++ char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
++ /* Number of reported tokens (one for the "unexpected", one per
++ "expected"). */
++ int yycount = 0;
++
++ /* There are many possibilities here to consider:
++ - Assume YYFAIL is not used. It's too flawed to consider. See
++ <http://lists.gnu.org/archive/html/bison-patches/2009-12/msg00024.html>
++ for details. YYERROR is fine as it does not invoke this
++ function.
++ - If this state is a consistent state with a default action, then
++ the only way this function was invoked is if the default action
++ is an error action. In that case, don't check for expected
++ tokens because there are none.
++ - The only way there can be no lookahead present (in yychar) is if
++ this state is a consistent state with a default action. Thus,
++ detecting the absence of a lookahead is sufficient to determine
++ that there is no unexpected or expected token to report. In that
++ case, just report a simple "syntax error".
++ - Don't assume there isn't a lookahead just because this state is a
++ consistent state with a default action. There might have been a
++ previous inconsistent state, consistent state with a non-default
++ action, or user semantic action that manipulated yychar.
++ - Of course, the expected token list depends on states to have
++ correct lookahead information, and it depends on the parser not
++ to perform extra reductions after fetching a lookahead from the
++ scanner and before detecting a syntax error. Thus, state merging
++ (from LALR or IELR) and default reductions corrupt the expected
++ token list. However, the list is correct for canonical LR with
++ one exception: it will still contain any token that will not be
++ accepted due to an error action in a later state.
++ */
++ if (yytoken != YYEMPTY)
++ {
++ int yyn = yypact[*yyssp];
++ yyarg[yycount++] = yytname[yytoken];
++ if (!yypact_value_is_default (yyn))
++ {
++ /* Start YYX at -YYN if negative to avoid negative indexes in
++ YYCHECK. In other words, skip the first -YYN actions for
++ this state because they are default actions. */
++ int yyxbegin = yyn < 0 ? -yyn : 0;
++ /* Stay within bounds of both yycheck and yytname. */
++ int yychecklim = YYLAST - yyn + 1;
++ int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
++ int yyx;
++
++ for (yyx = yyxbegin; yyx < yyxend; ++yyx)
++ if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR
++ && !yytable_value_is_error (yytable[yyx + yyn]))
++ {
++ if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
++ {
++ yycount = 1;
++ yysize = yysize0;
++ break;
++ }
++ yyarg[yycount++] = yytname[yyx];
++ {
++ YYSIZE_T yysize1 = yysize + yytnamerr (YY_NULL, yytname[yyx]);
++ if (! (yysize <= yysize1
++ && yysize1 <= YYSTACK_ALLOC_MAXIMUM))
++ return 2;
++ yysize = yysize1;
++ }
++ }
++ }
++ }
++
++ switch (yycount)
++ {
++# define YYCASE_(N, S) \
++ case N: \
++ yyformat = S; \
++ break
++ YYCASE_(0, YY_("syntax error"));
++ YYCASE_(1, YY_("syntax error, unexpected %s"));
++ YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s"));
++ YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s"));
++ YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s"));
++ YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"));
++# undef YYCASE_
++ }
++
++ {
++ YYSIZE_T yysize1 = yysize + yystrlen (yyformat);
++ if (! (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM))
++ return 2;
++ yysize = yysize1;
++ }
++
++ if (*yymsg_alloc < yysize)
++ {
++ *yymsg_alloc = 2 * yysize;
++ if (! (yysize <= *yymsg_alloc
++ && *yymsg_alloc <= YYSTACK_ALLOC_MAXIMUM))
++ *yymsg_alloc = YYSTACK_ALLOC_MAXIMUM;
++ return 1;
++ }
++
++ /* Avoid sprintf, as that infringes on the user's name space.
++ Don't have undefined behavior even if the translation
++ produced a string with the wrong number of "%s"s. */
++ {
++ char *yyp = *yymsg;
++ int yyi = 0;
++ while ((*yyp = *yyformat) != '\0')
++ if (*yyp == '%' && yyformat[1] == 's' && yyi < yycount)
++ {
++ yyp += yytnamerr (yyp, yyarg[yyi++]);
++ yyformat += 2;
++ }
++ else
++ {
++ yyp++;
++ yyformat++;
++ }
++ }
++ return 0;
++}
++#endif /* YYERROR_VERBOSE */
++
++/*-----------------------------------------------.
++| Release the memory associated to this symbol. |
++`-----------------------------------------------*/
++
++/*ARGSUSED*/
++#if (defined __STDC__ || defined __C99__FUNC__ \
++ || defined __cplusplus || defined _MSC_VER)
++static void
++yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep)
++#else
++static void
++yydestruct (yymsg, yytype, yyvaluep)
++ const char *yymsg;
++ int yytype;
++ YYSTYPE *yyvaluep;
++#endif
++{
++ YYUSE (yyvaluep);
++
++ if (!yymsg)
++ yymsg = "Deleting";
++ YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
++
++ YYUSE (yytype);
++}
++
++
++
++
++/*----------.
++| yyparse. |
++`----------*/
++
++#ifdef YYPARSE_PARAM
++#if (defined __STDC__ || defined __C99__FUNC__ \
++ || defined __cplusplus || defined _MSC_VER)
++int
++yyparse (void *YYPARSE_PARAM)
++#else
++int
++yyparse (YYPARSE_PARAM)
++ void *YYPARSE_PARAM;
++#endif
++#else /* ! YYPARSE_PARAM */
++#if (defined __STDC__ || defined __C99__FUNC__ \
++ || defined __cplusplus || defined _MSC_VER)
++int
++yyparse (void)
++#else
++int
++yyparse ()
++
++#endif
++#endif
++{
++/* The lookahead symbol. */
++int yychar;
++
++
++#if defined __GNUC__ && 407 <= __GNUC__ * 100 + __GNUC_MINOR__
++/* Suppress an incorrect diagnostic about yylval being uninitialized. */
++# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
++ _Pragma ("GCC diagnostic push") \
++ _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")\
++ _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"")
++# define YY_IGNORE_MAYBE_UNINITIALIZED_END \
++ _Pragma ("GCC diagnostic pop")
++#else
++/* Default value used for initialization, for pacifying older GCCs
++ or non-GCC compilers. */
++static YYSTYPE yyval_default;
++# define YY_INITIAL_VALUE(Value) = Value
++#endif
++#ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
++# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
++# define YY_IGNORE_MAYBE_UNINITIALIZED_END
++#endif
++#ifndef YY_INITIAL_VALUE
++# define YY_INITIAL_VALUE(Value) /* Nothing. */
++#endif
++
++/* The semantic value of the lookahead symbol. */
++YYSTYPE yylval YY_INITIAL_VALUE(yyval_default);
++
++ /* Number of syntax errors so far. */
++ int yynerrs;
++
++ int yystate;
++ /* Number of tokens to shift before error messages enabled. */
++ int yyerrstatus;
++
++ /* The stacks and their tools:
++ `yyss': related to states.
++ `yyvs': related to semantic values.
++
++ Refer to the stacks through separate pointers, to allow yyoverflow
++ to reallocate them elsewhere. */
++
++ /* The state stack. */
++ yytype_int16 yyssa[YYINITDEPTH];
++ yytype_int16 *yyss;
++ yytype_int16 *yyssp;
++
++ /* The semantic value stack. */
++ YYSTYPE yyvsa[YYINITDEPTH];
++ YYSTYPE *yyvs;
++ YYSTYPE *yyvsp;
++
++ YYSIZE_T yystacksize;
++
++ int yyn;
++ int yyresult;
++ /* Lookahead token as an internal (translated) token number. */
++ int yytoken = 0;
++ /* The variables used to return semantic value and location from the
++ action routines. */
++ YYSTYPE yyval;
++
++#if YYERROR_VERBOSE
++ /* Buffer for error messages, and its allocated size. */
++ char yymsgbuf[128];
++ char *yymsg = yymsgbuf;
++ YYSIZE_T yymsg_alloc = sizeof yymsgbuf;
++#endif
++
++#define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N))
++
++ /* The number of symbols on the RHS of the reduced rule.
++ Keep to zero when no symbol should be popped. */
++ int yylen = 0;
++
++ yyssp = yyss = yyssa;
++ yyvsp = yyvs = yyvsa;
++ yystacksize = YYINITDEPTH;
++
++ YYDPRINTF ((stderr, "Starting parse\n"));
++
++ yystate = 0;
++ yyerrstatus = 0;
++ yynerrs = 0;
++ yychar = YYEMPTY; /* Cause a token to be read. */
++ goto yysetstate;
++
++/*------------------------------------------------------------.
++| yynewstate -- Push a new state, which is found in yystate. |
++`------------------------------------------------------------*/
++ yynewstate:
++ /* In all cases, when you get here, the value and location stacks
++ have just been pushed. So pushing a state here evens the stacks. */
++ yyssp++;
++
++ yysetstate:
++ *yyssp = yystate;
++
++ if (yyss + yystacksize - 1 <= yyssp)
++ {
++ /* Get the current used size of the three stacks, in elements. */
++ YYSIZE_T yysize = yyssp - yyss + 1;
++
++#ifdef yyoverflow
++ {
++ /* Give user a chance to reallocate the stack. Use copies of
++ these so that the &'s don't force the real ones into
++ memory. */
++ YYSTYPE *yyvs1 = yyvs;
++ yytype_int16 *yyss1 = yyss;
++
++ /* Each stack pointer address is followed by the size of the
++ data in use in that stack, in bytes. This used to be a
++ conditional around just the two extra args, but that might
++ be undefined if yyoverflow is a macro. */
++ yyoverflow (YY_("memory exhausted"),
++ &yyss1, yysize * sizeof (*yyssp),
++ &yyvs1, yysize * sizeof (*yyvsp),
++ &yystacksize);
++
++ yyss = yyss1;
++ yyvs = yyvs1;
++ }
++#else /* no yyoverflow */
++# ifndef YYSTACK_RELOCATE
++ goto yyexhaustedlab;
++# else
++ /* Extend the stack our own way. */
++ if (YYMAXDEPTH <= yystacksize)
++ goto yyexhaustedlab;
++ yystacksize *= 2;
++ if (YYMAXDEPTH < yystacksize)
++ yystacksize = YYMAXDEPTH;
++
++ {
++ yytype_int16 *yyss1 = yyss;
++ union yyalloc *yyptr =
++ (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
++ if (! yyptr)
++ goto yyexhaustedlab;
++ YYSTACK_RELOCATE (yyss_alloc, yyss);
++ YYSTACK_RELOCATE (yyvs_alloc, yyvs);
++# undef YYSTACK_RELOCATE
++ if (yyss1 != yyssa)
++ YYSTACK_FREE (yyss1);
++ }
++# endif
++#endif /* no yyoverflow */
++
++ yyssp = yyss + yysize - 1;
++ yyvsp = yyvs + yysize - 1;
++
++ YYDPRINTF ((stderr, "Stack size increased to %lu\n",
++ (unsigned long int) yystacksize));
++
++ if (yyss + yystacksize - 1 <= yyssp)
++ YYABORT;
++ }
++
++ YYDPRINTF ((stderr, "Entering state %d\n", yystate));
++
++ if (yystate == YYFINAL)
++ YYACCEPT;
++
++ goto yybackup;
++
++/*-----------.
++| yybackup. |
++`-----------*/
++yybackup:
++
++ /* Do appropriate processing given the current state. Read a
++ lookahead token if we need one and don't already have one. */
++
++ /* First try to decide what to do without reference to lookahead token. */
++ yyn = yypact[yystate];
++ if (yypact_value_is_default (yyn))
++ goto yydefault;
++
++ /* Not known => get a lookahead token if don't already have one. */
++
++ /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol. */
++ if (yychar == YYEMPTY)
++ {
++ YYDPRINTF ((stderr, "Reading a token: "));
++ yychar = YYLEX;
++ }
++
++ if (yychar <= YYEOF)
++ {
++ yychar = yytoken = YYEOF;
++ YYDPRINTF ((stderr, "Now at end of input.\n"));
++ }
++ else
++ {
++ yytoken = YYTRANSLATE (yychar);
++ YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
++ }
++
++ /* If the proper action on seeing token YYTOKEN is to reduce or to
++ detect an error, take that action. */
++ yyn += yytoken;
++ if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
++ goto yydefault;
++ yyn = yytable[yyn];
++ if (yyn <= 0)
++ {
++ if (yytable_value_is_error (yyn))
++ goto yyerrlab;
++ yyn = -yyn;
++ goto yyreduce;
++ }
++
++ /* Count tokens shifted since error; after three, turn off error
++ status. */
++ if (yyerrstatus)
++ yyerrstatus--;
++
++ /* Shift the lookahead token. */
++ YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
++
++ /* Discard the shifted token. */
++ yychar = YYEMPTY;
++
++ yystate = yyn;
++ YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
++ *++yyvsp = yylval;
++ YY_IGNORE_MAYBE_UNINITIALIZED_END
++
++ goto yynewstate;
++
++
++/*-----------------------------------------------------------.
++| yydefault -- do the default action for the current state. |
++`-----------------------------------------------------------*/
++yydefault:
++ yyn = yydefact[yystate];
++ if (yyn == 0)
++ goto yyerrlab;
++ goto yyreduce;
++
++
++/*-----------------------------.
++| yyreduce -- Do a reduction. |
++`-----------------------------*/
++yyreduce:
++ /* yyn is the number of a rule to reduce with. */
++ yylen = yyr2[yyn];
++
++ /* If YYLEN is nonzero, implement the default value of the action:
++ `$$ = $1'.
++
++ Otherwise, the following line sets YYVAL to garbage.
++ This behavior is undocumented and Bison
++ users should not rely upon it. Assigning to YYVAL
++ unconditionally makes the parser a bit smaller, and it avoids a
++ GCC warning that YYVAL may be used uninitialized. */
++ yyval = yyvsp[1-yylen];
++
++
++ YY_REDUCE_PRINT (yyn);
++ switch (yyn)
++ {
++ case 4:
++/* Line 1787 of yacc.c */
++#line 157 "ptlib/common/getdate.y"
++ {
++ VARIABLE->yyHaveTime++;
++ }
++ break;
++
++ case 5:
++/* Line 1787 of yacc.c */
++#line 160 "ptlib/common/getdate.y"
++ {
++ VARIABLE->yyHaveZone++;
++ }
++ break;
++
++ case 6:
++/* Line 1787 of yacc.c */
++#line 163 "ptlib/common/getdate.y"
++ {
++ VARIABLE->yyHaveDate++;
++ }
++ break;
++
++ case 7:
++/* Line 1787 of yacc.c */
++#line 166 "ptlib/common/getdate.y"
++ {
++ VARIABLE->yyHaveDay++;
++ }
++ break;
++
++ case 8:
++/* Line 1787 of yacc.c */
++#line 169 "ptlib/common/getdate.y"
++ {
++ VARIABLE->yyHaveRel++;
++ }
++ break;
++
++ case 10:
++/* Line 1787 of yacc.c */
++#line 175 "ptlib/common/getdate.y"
++ {
++ VARIABLE->yyHour = (yyvsp[(1) - (2)].Number);
++ VARIABLE->yyMinutes = 0;
++ VARIABLE->yySeconds = 0;
++ VARIABLE->yyMeridian = (yyvsp[(2) - (2)].Meridian);
++ }
++ break;
++
++ case 11:
++/* Line 1787 of yacc.c */
++#line 181 "ptlib/common/getdate.y"
++ {
++ VARIABLE->yyHour = (yyvsp[(1) - (2)].Number)/100;
++ VARIABLE->yyMinutes = (yyvsp[(1) - (2)].Number)%100;
++ VARIABLE->yySeconds = 0;
++ VARIABLE->yyMeridian = MER24;
++ VARIABLE->yyDSTmode = DSToff;
++ VARIABLE->yyTimezone = - ((yyvsp[(2) - (2)].Number) % 100 + ((yyvsp[(2) - (2)].Number) / 100) * 60);
++ }
++ break;
++
++ case 12:
++/* Line 1787 of yacc.c */
++#line 189 "ptlib/common/getdate.y"
++ {
++ VARIABLE->yyHour = (yyvsp[(1) - (2)].Number)/10000;
++ VARIABLE->yyMinutes = ((yyvsp[(1) - (2)].Number)/100)%100;
++ VARIABLE->yySeconds = (yyvsp[(1) - (2)].Number) % 100;
++ VARIABLE->yyMeridian = MER24;
++ VARIABLE->yyDSTmode = DSToff;
++ VARIABLE->yyTimezone = - ((yyvsp[(2) - (2)].Number) % 100 + ((yyvsp[(2) - (2)].Number) / 100) * 60);
++ }
++ break;
++
++ case 13:
++/* Line 1787 of yacc.c */
++#line 197 "ptlib/common/getdate.y"
++ {
++ VARIABLE->yyHour = (yyvsp[(1) - (4)].Number);
++ VARIABLE->yyMinutes = (yyvsp[(3) - (4)].Number);
++ VARIABLE->yySeconds = 0;
++ VARIABLE->yyMeridian = (yyvsp[(4) - (4)].Meridian);
++ }
++ break;
++
++ case 14:
++/* Line 1787 of yacc.c */
++#line 203 "ptlib/common/getdate.y"
++ {
++ VARIABLE->yyHour = (yyvsp[(1) - (4)].Number);
++ VARIABLE->yyMinutes = (yyvsp[(3) - (4)].Number);
++ VARIABLE->yyMeridian = MER24;
++ VARIABLE->yyDSTmode = DSToff;
++ VARIABLE->yyTimezone = - ((yyvsp[(4) - (4)].Number) % 100 + ((yyvsp[(4) - (4)].Number) / 100) * 60);
++ }
++ break;
++
++ case 15:
++/* Line 1787 of yacc.c */
++#line 210 "ptlib/common/getdate.y"
++ {
++ VARIABLE->yyHour = (yyvsp[(1) - (6)].Number);
++ VARIABLE->yyMinutes = (yyvsp[(3) - (6)].Number);
++ VARIABLE->yySeconds = (yyvsp[(5) - (6)].Number);
++ VARIABLE->yyMeridian = (yyvsp[(6) - (6)].Meridian);
++ }
++ break;
++
++ case 16:
++/* Line 1787 of yacc.c */
++#line 216 "ptlib/common/getdate.y"
++ {
++ VARIABLE->yyHour = (yyvsp[(1) - (6)].Number);
++ VARIABLE->yyMinutes = (yyvsp[(3) - (6)].Number);
++ VARIABLE->yySeconds = (yyvsp[(5) - (6)].Number);
++ VARIABLE->yyMeridian = MER24;
++ VARIABLE->yyDSTmode = DSToff;
++ VARIABLE->yyTimezone = - ((yyvsp[(6) - (6)].Number) % 100 + ((yyvsp[(6) - (6)].Number) / 100) * 60);
++ }
++ break;
++
++ case 17:
++/* Line 1787 of yacc.c */
++#line 226 "ptlib/common/getdate.y"
++ {
++ VARIABLE->yyTimezone = (yyvsp[(1) - (1)].Number);
++ VARIABLE->yyDSTmode = DSToff;
++ }
++ break;
++
++ case 18:
++/* Line 1787 of yacc.c */
++#line 230 "ptlib/common/getdate.y"
++ {
++ VARIABLE->yyTimezone = (yyvsp[(1) - (1)].Number);
++ VARIABLE->yyDSTmode = DSTon;
++ }
++ break;
++
++ case 19:
++/* Line 1787 of yacc.c */
++#line 235 "ptlib/common/getdate.y"
++ {
++ VARIABLE->yyTimezone = (yyvsp[(1) - (2)].Number);
++ VARIABLE->yyDSTmode = DSTon;
++ }
++ break;
++
++ case 20:
++/* Line 1787 of yacc.c */
++#line 239 "ptlib/common/getdate.y"
++ {
++ if (VARIABLE->yyHaveTime > 0) {
++ VARIABLE->yyTimezone = (yyvsp[(1) - (1)].Number);
++ VARIABLE->yyDSTmode = DSToff;
++ }
++ else
++ VARIABLE->yyHaveZone--;
++ }
++ break;
++
++ case 21:
++/* Line 1787 of yacc.c */
++#line 249 "ptlib/common/getdate.y"
++ {
++ VARIABLE->yyDayOrdinal = 1;
++ VARIABLE->yyDayNumber = (yyvsp[(1) - (1)].Number);
++ }
++ break;
++
++ case 22:
++/* Line 1787 of yacc.c */
++#line 253 "ptlib/common/getdate.y"
++ {
++ VARIABLE->yyDayOrdinal = 1;
++ VARIABLE->yyDayNumber = (yyvsp[(1) - (2)].Number);
++ }
++ break;
++
++ case 23:
++/* Line 1787 of yacc.c */
++#line 257 "ptlib/common/getdate.y"
++ {
++ VARIABLE->yyDayOrdinal = (yyvsp[(1) - (2)].Number);
++ VARIABLE->yyDayNumber = (yyvsp[(2) - (2)].Number);
++ }
++ break;
++
++ case 24:
++/* Line 1787 of yacc.c */
++#line 263 "ptlib/common/getdate.y"
++ {
++ SetPossibleDate(VARIABLE, (yyvsp[(1) - (3)].Number), (yyvsp[(3) - (3)].Number), VARIABLE->yyYear);
++ }
++ break;
++
++ case 25:
++/* Line 1787 of yacc.c */
++#line 266 "ptlib/common/getdate.y"
++ {
++ SetPossibleDate(VARIABLE, (yyvsp[(1) - (5)].Number), (yyvsp[(3) - (5)].Number), (yyvsp[(5) - (5)].Number));
++ }
++ break;
++
++ case 26:
++/* Line 1787 of yacc.c */
++#line 269 "ptlib/common/getdate.y"
++ {
++ /* ISO 8601 format. yyyy-mm-dd. */
++ SetPossibleDate(VARIABLE, (yyvsp[(1) - (4)].Number), -(yyvsp[(2) - (4)].Number), -(yyvsp[(3) - (4)].Number));
++ }
++ break;
++
++ case 27:
++/* Line 1787 of yacc.c */
++#line 273 "ptlib/common/getdate.y"
++ {
++ VARIABLE->yyDay= ((yyvsp[(1) - (1)].Number))%100;
++ VARIABLE->yyMonth= ((yyvsp[(1) - (1)].Number)/100)%100;
++ VARIABLE->yyYear = (yyvsp[(1) - (1)].Number)/10000;
++ }
++ break;
++
++ case 28:
++/* Line 1787 of yacc.c */
++#line 278 "ptlib/common/getdate.y"
++ {
++ /* e.g. 17-JUN-1992. */
++ SetPossibleDate(VARIABLE, (yyvsp[(1) - (3)].Number), (yyvsp[(2) - (3)].Number), -(yyvsp[(3) - (3)].Number));
++ }
++ break;
++
++ case 29:
++/* Line 1787 of yacc.c */
++#line 282 "ptlib/common/getdate.y"
++ {
++ VARIABLE->yyMonth = (yyvsp[(1) - (2)].Number);
++ if ((yyvsp[(2) - (2)].Number) > 31)
++ VARIABLE->yyYear = (yyvsp[(2) - (2)].Number);
++ else
++ VARIABLE->yyDay = (yyvsp[(2) - (2)].Number);
++ }
++ break;
++
++ case 30:
++/* Line 1787 of yacc.c */
++#line 289 "ptlib/common/getdate.y"
++ {
++ VARIABLE->yyMonth = (yyvsp[(1) - (4)].Number);
++ VARIABLE->yyDay = (yyvsp[(2) - (4)].Number);
++ VARIABLE->yyYear = (yyvsp[(4) - (4)].Number);
++ }
++ break;
++
++ case 31:
++/* Line 1787 of yacc.c */
++#line 294 "ptlib/common/getdate.y"
++ {
++ if ((yyvsp[(1) - (2)].Number) > 31)
++ VARIABLE->yyYear = (yyvsp[(1) - (2)].Number);
++ else
++ VARIABLE->yyDay = (yyvsp[(1) - (2)].Number);
++ VARIABLE->yyMonth = (yyvsp[(2) - (2)].Number);
++ }
++ break;
++
++ case 32:
++/* Line 1787 of yacc.c */
++#line 301 "ptlib/common/getdate.y"
++ {
++ SetPossibleDate(VARIABLE, (yyvsp[(1) - (3)].Number), (yyvsp[(2) - (3)].Number), (yyvsp[(3) - (3)].Number));
++ }
++ break;
++
++ case 33:
++/* Line 1787 of yacc.c */
++#line 306 "ptlib/common/getdate.y"
++ {
++ VARIABLE->yyRelSeconds = -VARIABLE->yyRelSeconds;
++ VARIABLE->yyRelMonth = -VARIABLE->yyRelMonth;
++ }
++ break;
++
++ case 35:
++/* Line 1787 of yacc.c */
++#line 313 "ptlib/common/getdate.y"
++ {
++ VARIABLE->yyRelSeconds += (yyvsp[(1) - (2)].Number) * (yyvsp[(2) - (2)].Number) * 60L;
++ }
++ break;
++
++ case 36:
++/* Line 1787 of yacc.c */
++#line 316 "ptlib/common/getdate.y"
++ {
++ VARIABLE->yyRelSeconds += (yyvsp[(1) - (2)].Number) * (yyvsp[(2) - (2)].Number) * 60L;
++ }
++ break;
++
++ case 37:
++/* Line 1787 of yacc.c */
++#line 319 "ptlib/common/getdate.y"
++ {
++ VARIABLE->yyRelSeconds += (yyvsp[(1) - (1)].Number) * 60L;
++ }
++ break;
++
++ case 38:
++/* Line 1787 of yacc.c */
++#line 322 "ptlib/common/getdate.y"
++ {
++ VARIABLE->yyRelSeconds += (yyvsp[(1) - (2)].Number);
++ }
++ break;
++
++ case 39:
++/* Line 1787 of yacc.c */
++#line 325 "ptlib/common/getdate.y"
++ {
++ VARIABLE->yyRelSeconds += (yyvsp[(1) - (2)].Number);
++ }
++ break;
++
++ case 40:
++/* Line 1787 of yacc.c */
++#line 328 "ptlib/common/getdate.y"
++ {
++ VARIABLE->yyRelSeconds++;
++ }
++ break;
++
++ case 41:
++/* Line 1787 of yacc.c */
++#line 331 "ptlib/common/getdate.y"
++ {
++ VARIABLE->yyRelMonth += (yyvsp[(1) - (2)].Number) * (yyvsp[(2) - (2)].Number);
++ }
++ break;
++
++ case 42:
++/* Line 1787 of yacc.c */
++#line 334 "ptlib/common/getdate.y"
++ {
++ VARIABLE->yyRelMonth += (yyvsp[(1) - (2)].Number) * (yyvsp[(2) - (2)].Number);
++ }
++ break;
++
++ case 43:
++/* Line 1787 of yacc.c */
++#line 337 "ptlib/common/getdate.y"
++ {
++ VARIABLE->yyRelMonth += (yyvsp[(1) - (1)].Number);
++ }
++ break;
++
++ case 44:
++/* Line 1787 of yacc.c */
++#line 342 "ptlib/common/getdate.y"
++ {
++ (yyval.Number) = (yyvsp[(1) - (1)].Number);
++ }
++ break;
++
++ case 45:
++/* Line 1787 of yacc.c */
++#line 345 "ptlib/common/getdate.y"
++ {
++ (yyval.Number) = (yyvsp[(1) - (1)].Number);
++ }
++ break;
++
++ case 46:
++/* Line 1787 of yacc.c */
++#line 348 "ptlib/common/getdate.y"
++ {
++ (yyval.Number) = (yyvsp[(1) - (1)].Number);
++ }
++ break;
++
++ case 47:
++/* Line 1787 of yacc.c */
++#line 353 "ptlib/common/getdate.y"
++ {
++ if (VARIABLE->yyHaveTime && VARIABLE->yyHaveDate && !VARIABLE->yyHaveRel)
++ VARIABLE->yyYear = (yyvsp[(1) - (1)].Number);
++ else {
++ if((yyvsp[(1) - (1)].Number)>240000) {
++ VARIABLE->yyHaveDate++;
++ VARIABLE->yyDay= ((yyvsp[(1) - (1)].Number))%100;
++ VARIABLE->yyMonth= ((yyvsp[(1) - (1)].Number)/100)%100;
++ VARIABLE->yyYear = (yyvsp[(1) - (1)].Number)/10000;
++ }
++ else {
++ VARIABLE->yyHaveTime++;
++ if ((yyvsp[(1) - (1)].Number) < 10000) {
++ VARIABLE->yyHour = (yyvsp[(1) - (1)].Number) / 100;
++ VARIABLE->yyMinutes = (yyvsp[(1) - (1)].Number) % 100;
++ VARIABLE->yySeconds = 0;
++ }
++ else {
++ VARIABLE->yyHour = (yyvsp[(1) - (1)].Number)/10000;
++ VARIABLE->yyMinutes = ((yyvsp[(1) - (1)].Number)/100)%100;
++ VARIABLE->yySeconds = (yyvsp[(1) - (1)].Number) % 100;
++ }
++ VARIABLE->yyMeridian = MER24;
++ }
++ }
++ }
++ break;
++
++ case 48:
++/* Line 1787 of yacc.c */
++#line 379 "ptlib/common/getdate.y"
++ {
++ if (VARIABLE->yyHaveTime && VARIABLE->yyHaveDate && !VARIABLE->yyHaveRel)
++ VARIABLE->yyYear = (yyvsp[(1) - (1)].Number);
++ else {
++ VARIABLE->yyHaveTime++;
++ VARIABLE->yyHour = (yyvsp[(1) - (1)].Number)/100;
++ VARIABLE->yyMinutes = (yyvsp[(1) - (1)].Number)%100;
++ VARIABLE->yySeconds = 0;
++ VARIABLE->yyMeridian = MER24;
++ }
++ }
++ break;
++
++ case 49:
++/* Line 1787 of yacc.c */
++#line 390 "ptlib/common/getdate.y"
++ {
++ if (!VARIABLE->yyHaveDate && (yyvsp[(1) - (1)].Number)>240000) {
++ VARIABLE->yyHaveDate++;
++ VARIABLE->yyDay= ((yyvsp[(1) - (1)].Number))%100;
++ VARIABLE->yyMonth= ((yyvsp[(1) - (1)].Number)/100)%100;
++ VARIABLE->yyYear = (yyvsp[(1) - (1)].Number)/10000;
++ }
++ else if (!VARIABLE->yyHaveTime) {
++ VARIABLE->yyHaveTime++;
++ VARIABLE->yyHour = (yyvsp[(1) - (1)].Number)/10000;
++ VARIABLE->yyMinutes = ((yyvsp[(1) - (1)].Number)/100)%100;
++ VARIABLE->yySeconds = (yyvsp[(1) - (1)].Number) % 100;
++ VARIABLE->yyMeridian = MER24;
++ }
++ }
++ break;
++
++ case 50:
++/* Line 1787 of yacc.c */
++#line 407 "ptlib/common/getdate.y"
++ {
++ (yyval.Meridian) = MER24;
++ }
++ break;
++
++ case 51:
++/* Line 1787 of yacc.c */
++#line 410 "ptlib/common/getdate.y"
++ {
++ (yyval.Meridian) = (yyvsp[(1) - (1)].Meridian);
++ }
++ break;
++
++
++/* Line 1787 of yacc.c */
++#line 2031 "ptlib/common/getdate.tab.c"
++ default: break;
++ }
++ /* User semantic actions sometimes alter yychar, and that requires
++ that yytoken be updated with the new translation. We take the
++ approach of translating immediately before every use of yytoken.
++ One alternative is translating here after every semantic action,
++ but that translation would be missed if the semantic action invokes
++ YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or
++ if it invokes YYBACKUP. In the case of YYABORT or YYACCEPT, an
++ incorrect destructor might then be invoked immediately. In the
++ case of YYERROR or YYBACKUP, subsequent parser actions might lead
++ to an incorrect destructor call or verbose syntax error message
++ before the lookahead is translated. */
++ YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
++
++ YYPOPSTACK (yylen);
++ yylen = 0;
++ YY_STACK_PRINT (yyss, yyssp);
++
++ *++yyvsp = yyval;
++
++ /* Now `shift' the result of the reduction. Determine what state
++ that goes to, based on the state we popped back to and the rule
++ number reduced by. */
++
++ yyn = yyr1[yyn];
++
++ yystate = yypgoto[yyn - YYNTOKENS] + *yyssp;
++ if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp)
++ yystate = yytable[yystate];
++ else
++ yystate = yydefgoto[yyn - YYNTOKENS];
++
++ goto yynewstate;
++
++
++/*------------------------------------.
++| yyerrlab -- here on detecting error |
++`------------------------------------*/
++yyerrlab:
++ /* Make sure we have latest lookahead translation. See comments at
++ user semantic actions for why this is necessary. */
++ yytoken = yychar == YYEMPTY ? YYEMPTY : YYTRANSLATE (yychar);
++
++ /* If not already recovering from an error, report this error. */
++ if (!yyerrstatus)
++ {
++ ++yynerrs;
++#if ! YYERROR_VERBOSE
++ yyerror (YY_("syntax error"));
++#else
++# define YYSYNTAX_ERROR yysyntax_error (&yymsg_alloc, &yymsg, \
++ yyssp, yytoken)
++ {
++ char const *yymsgp = YY_("syntax error");
++ int yysyntax_error_status;
++ yysyntax_error_status = YYSYNTAX_ERROR;
++ if (yysyntax_error_status == 0)
++ yymsgp = yymsg;
++ else if (yysyntax_error_status == 1)
++ {
++ if (yymsg != yymsgbuf)
++ YYSTACK_FREE (yymsg);
++ yymsg = (char *) YYSTACK_ALLOC (yymsg_alloc);
++ if (!yymsg)
++ {
++ yymsg = yymsgbuf;
++ yymsg_alloc = sizeof yymsgbuf;
++ yysyntax_error_status = 2;
++ }
++ else
++ {
++ yysyntax_error_status = YYSYNTAX_ERROR;
++ yymsgp = yymsg;
++ }
++ }
++ yyerror (yymsgp);
++ if (yysyntax_error_status == 2)
++ goto yyexhaustedlab;
++ }
++# undef YYSYNTAX_ERROR
++#endif
++ }
++
++
++
++ if (yyerrstatus == 3)
++ {
++ /* If just tried and failed to reuse lookahead token after an
++ error, discard it. */
++
++ if (yychar <= YYEOF)
++ {
++ /* Return failure if at end of input. */
++ if (yychar == YYEOF)
++ YYABORT;
++ }
++ else
++ {
++ yydestruct ("Error: discarding",
++ yytoken, &yylval);
++ yychar = YYEMPTY;
++ }
++ }
++
++ /* Else will try to reuse lookahead token after shifting the error
++ token. */
++ goto yyerrlab1;
++
++
++/*---------------------------------------------------.
++| yyerrorlab -- error raised explicitly by YYERROR. |
++`---------------------------------------------------*/
++yyerrorlab:
++
++ /* Pacify compilers like GCC when the user code never invokes
++ YYERROR and the label yyerrorlab therefore never appears in user
++ code. */
++ if (/*CONSTCOND*/ 0)
++ goto yyerrorlab;
++
++ /* Do not reclaim the symbols of the rule which action triggered
++ this YYERROR. */
++ YYPOPSTACK (yylen);
++ yylen = 0;
++ YY_STACK_PRINT (yyss, yyssp);
++ yystate = *yyssp;
++ goto yyerrlab1;
++
++
++/*-------------------------------------------------------------.
++| yyerrlab1 -- common code for both syntax error and YYERROR. |
++`-------------------------------------------------------------*/
++yyerrlab1:
++ yyerrstatus = 3; /* Each real token shifted decrements this. */
++
++ for (;;)
++ {
++ yyn = yypact[yystate];
++ if (!yypact_value_is_default (yyn))
++ {
++ yyn += YYTERROR;
++ if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
++ {
++ yyn = yytable[yyn];
++ if (0 < yyn)
++ break;
++ }
++ }
++
++ /* Pop the current state because it cannot handle the error token. */
++ if (yyssp == yyss)
++ YYABORT;
++
++
++ yydestruct ("Error: popping",
++ yystos[yystate], yyvsp);
++ YYPOPSTACK (1);
++ yystate = *yyssp;
++ YY_STACK_PRINT (yyss, yyssp);
++ }
++
++ YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
++ *++yyvsp = yylval;
++ YY_IGNORE_MAYBE_UNINITIALIZED_END
++
++
++ /* Shift the error token. */
++ YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
++
++ yystate = yyn;
++ goto yynewstate;
++
++
++/*-------------------------------------.
++| yyacceptlab -- YYACCEPT comes here. |
++`-------------------------------------*/
++yyacceptlab:
++ yyresult = 0;
++ goto yyreturn;
++
++/*-----------------------------------.
++| yyabortlab -- YYABORT comes here. |
++`-----------------------------------*/
++yyabortlab:
++ yyresult = 1;
++ goto yyreturn;
++
++#if !defined yyoverflow || YYERROR_VERBOSE
++/*-------------------------------------------------.
++| yyexhaustedlab -- memory exhaustion comes here. |
++`-------------------------------------------------*/
++yyexhaustedlab:
++ yyerror (YY_("memory exhausted"));
++ yyresult = 2;
++ /* Fall through. */
++#endif
++
++yyreturn:
++ if (yychar != YYEMPTY)
++ {
++ /* Make sure we have latest lookahead translation. See comments at
++ user semantic actions for why this is necessary. */
++ yytoken = YYTRANSLATE (yychar);
++ yydestruct ("Cleanup: discarding lookahead",
++ yytoken, &yylval);
++ }
++ /* Do not reclaim the symbols of the rule which action triggered
++ this YYABORT or YYACCEPT. */
++ YYPOPSTACK (yylen);
++ YY_STACK_PRINT (yyss, yyssp);
++ while (yyssp != yyss)
++ {
++ yydestruct ("Cleanup: popping",
++ yystos[*yyssp], yyvsp);
++ YYPOPSTACK (1);
++ }
++#ifndef yyoverflow
++ if (yyss != yyssa)
++ YYSTACK_FREE (yyss);
++#endif
++#if YYERROR_VERBOSE
++ if (yymsg != yymsgbuf)
++ YYSTACK_FREE (yymsg);
++#endif
++ /* Make sure YYID is used. */
++ return YYID (yyresult);
++}
++
++
++/* Line 2050 of yacc.c */
++#line 415 "ptlib/common/getdate.y"
++
++
++/* Month and day table. */
++static TABLE const MonthDayTable[] = {
++ { "january", tMONTH, 1 },
++ { "february", tMONTH, 2 },
++ { "march", tMONTH, 3 },
++ { "april", tMONTH, 4 },
++ { "may", tMONTH, 5 },
++ { "june", tMONTH, 6 },
++ { "july", tMONTH, 7 },
++ { "august", tMONTH, 8 },
++ { "september", tMONTH, 9 },
++ { "sept", tMONTH, 9 },
++ { "october", tMONTH, 10 },
++ { "november", tMONTH, 11 },
++ { "december", tMONTH, 12 },
++ { "sunday", tDAY, 0 },
++ { "monday", tDAY, 1 },
++ { "tuesday", tDAY, 2 },
++ { "tues", tDAY, 2 },
++ { "wednesday", tDAY, 3 },
++ { "wednes", tDAY, 3 },
++ { "thursday", tDAY, 4 },
++ { "thur", tDAY, 4 },
++ { "thurs", tDAY, 4 },
++ { "friday", tDAY, 5 },
++ { "saturday", tDAY, 6 },
++ { NULL }
++};
++
++/* Time units table. */
++static TABLE const UnitsTable[] = {
++ { "year", tMONTH_UNIT, 12 },
++ { "month", tMONTH_UNIT, 1 },
++ { "fortnight", tMINUTE_UNIT, 14 * 24 * 60 },
++ { "week", tMINUTE_UNIT, 7 * 24 * 60 },
++ { "day", tMINUTE_UNIT, 1 * 24 * 60 },
++ { "hour", tMINUTE_UNIT, 60 },
++ { "minute", tMINUTE_UNIT, 1 },
++ { "min", tMINUTE_UNIT, 1 },
++ { "second", tSEC_UNIT, 1 },
++ { "sec", tSEC_UNIT, 1 },
++ { NULL }
++};
++
++/* Assorted relative-time words. */
++static TABLE const OtherTable[] = {
++ { "tomorrow", tMINUTE_UNIT, 1 * 24 * 60 },
++ { "yesterday", tMINUTE_UNIT, -1 * 24 * 60 },
++ { "today", tMINUTE_UNIT, 0 },
++ { "now", tMINUTE_UNIT, 0 },
++ { "last", tUNUMBER, -1 },
++ { "this", tMINUTE_UNIT, 0 },
++ { "next", tUNUMBER, 2 },
++ { "first", tUNUMBER, 1 },
++/* { "second", tUNUMBER, 2 }, */
++ { "third", tUNUMBER, 3 },
++ { "fourth", tUNUMBER, 4 },
++ { "fifth", tUNUMBER, 5 },
++ { "sixth", tUNUMBER, 6 },
++ { "seventh", tUNUMBER, 7 },
++ { "eighth", tUNUMBER, 8 },
++ { "ninth", tUNUMBER, 9 },
++ { "tenth", tUNUMBER, 10 },
++ { "eleventh", tUNUMBER, 11 },
++ { "twelfth", tUNUMBER, 12 },
++ { "ago", tAGO, 1 },
++ { NULL }
++};
++
++/* The timezone table. */
++/* Some of these are commented out because a time_t can't store a float. */
++static TABLE const TimezoneTable[] = {
++ { "gmt", tZONE, HOUR( 0) }, /* Greenwich Mean */
++ { "ut", tZONE, HOUR( 0) }, /* Universal (Coordinated) */
++ { "utc", tZONE, HOUR( 0) },
++ { "wet", tZONE, HOUR( 0) }, /* Western European */
++ { "bst", tDAYZONE, HOUR( 0) }, /* British Summer */
++ { "wat", tZONE, HOUR( 1) }, /* West Africa */
++ { "at", tZONE, HOUR( 2) }, /* Azores */
++#if 0
++ /* For completeness. BST is also British Summer, and GST is
++ * also Guam Standard. */
++ { "bst", tZONE, HOUR( 3) }, /* Brazil Standard */
++ { "gst", tZONE, HOUR( 3) }, /* Greenland Standard */
++#endif
++#if 0
++ { "nft", tZONE, HOUR(3.5) }, /* Newfoundland */
++ { "nst", tZONE, HOUR(3.5) }, /* Newfoundland Standard */
++ { "ndt", tDAYZONE, HOUR(3.5) }, /* Newfoundland Daylight */
++#endif
++ { "ast", tZONE, HOUR( 4) }, /* Atlantic Standard */
++ { "adt", tDAYZONE, HOUR( 4) }, /* Atlantic Daylight */
++ { "est", tZONE, HOUR( 5) }, /* Eastern Standard */
++ { "edt", tDAYZONE, HOUR( 5) }, /* Eastern Daylight */
++ { "cst", tZONE, HOUR( 6) }, /* Central Standard */
++ { "cdt", tDAYZONE, HOUR( 6) }, /* Central Daylight */
++ { "mst", tZONE, HOUR( 7) }, /* Mountain Standard */
++ { "mdt", tDAYZONE, HOUR( 7) }, /* Mountain Daylight */
++ { "pst", tZONE, HOUR( 8) }, /* Pacific Standard */
++ { "pdt", tDAYZONE, HOUR( 8) }, /* Pacific Daylight */
++ { "yst", tZONE, HOUR( 9) }, /* Yukon Standard */
++ { "ydt", tDAYZONE, HOUR( 9) }, /* Yukon Daylight */
++ { "hst", tZONE, HOUR(10) }, /* Hawaii Standard */
++ { "hdt", tDAYZONE, HOUR(10) }, /* Hawaii Daylight */
++ { "cat", tZONE, HOUR(10) }, /* Central Alaska */
++ { "ahst", tZONE, HOUR(10) }, /* Alaska-Hawaii Standard */
++ { "nt", tZONE, HOUR(11) }, /* Nome */
++ { "idlw", tZONE, HOUR(12) }, /* International Date Line West */
++ { "cet", tZONE, -HOUR(1) }, /* Central European */
++ { "met", tZONE, -HOUR(1) }, /* Middle European */
++ { "mewt", tZONE, -HOUR(1) }, /* Middle European Winter */
++ { "mest", tDAYZONE, -HOUR(1) }, /* Middle European Summer */
++ { "swt", tZONE, -HOUR(1) }, /* Swedish Winter */
++ { "sst", tDAYZONE, -HOUR(1) }, /* Swedish Summer */
++ { "fwt", tZONE, -HOUR(1) }, /* French Winter */
++ { "fst", tDAYZONE, -HOUR(1) }, /* French Summer */
++ { "eet", tZONE, -HOUR(2) }, /* Eastern Europe, USSR Zone 1 */
++ { "bt", tZONE, -HOUR(3) }, /* Baghdad, USSR Zone 2 */
++#if 0
++ { "it", tZONE, -HOUR(3.5) },/* Iran */
++#endif
++ { "zp4", tZONE, -HOUR(4) }, /* USSR Zone 3 */
++ { "zp5", tZONE, -HOUR(5) }, /* USSR Zone 4 */
++#if 0
++ { "ist", tZONE, -HOUR(5.5) },/* Indian Standard */
++#endif
++ { "zp6", tZONE, -HOUR(6) }, /* USSR Zone 5 */
++#if 0
++ /* For completeness. NST is also Newfoundland Stanard, and SST is
++ * also Swedish Summer. */
++ { "nst", tZONE, -HOUR(6.5) },/* North Sumatra */
++ { "sst", tZONE, -HOUR(7) }, /* South Sumatra, USSR Zone 6 */
++#endif /* 0 */
++ { "wast", tZONE, -HOUR(7) }, /* West Australian Standard */
++ { "wadt", tDAYZONE, -HOUR(7) }, /* West Australian Daylight */
++#if 0
++ { "jt", tZONE, -HOUR(7.5) },/* Java (3pm in Cronusland!) */
++#endif
++ { "cct", tZONE, -HOUR(8) }, /* China Coast, USSR Zone 7 */
++ { "jst", tZONE, -HOUR(9) }, /* Japan Standard, USSR Zone 8 */
++#if 0
++ { "cast", tZONE, -HOUR(9.5) },/* Central Australian Standard */
++ { "cadt", tDAYZONE, -HOUR(9.5) },/* Central Australian Daylight */
++#endif
++ { "east", tZONE, -HOUR(10) }, /* Eastern Australian Standard */
++ { "eadt", tDAYZONE, -HOUR(10) }, /* Eastern Australian Daylight */
++ { "gst", tZONE, -HOUR(10) }, /* Guam Standard, USSR Zone 9 */
++ { "nzt", tZONE, -HOUR(12) }, /* New Zealand */
++ { "nzst", tZONE, -HOUR(12) }, /* New Zealand Standard */
++ { "nzdt", tDAYZONE, -HOUR(12) }, /* New Zealand Daylight */
++ { "idle", tZONE, -HOUR(12) }, /* International Date Line East */
++ { NULL }
++};
++
++/* Military timezone table. */
++static TABLE const MilitaryTable[] = {
++ { "a", tMILZONE, HOUR( 1) },
++ { "b", tMILZONE, HOUR( 2) },
++ { "c", tMILZONE, HOUR( 3) },
++ { "d", tMILZONE, HOUR( 4) },
++ { "e", tMILZONE, HOUR( 5) },
++ { "f", tMILZONE, HOUR( 6) },
++ { "g", tMILZONE, HOUR( 7) },
++ { "h", tMILZONE, HOUR( 8) },
++ { "i", tMILZONE, HOUR( 9) },
++ { "k", tMILZONE, HOUR( 10) },
++ { "l", tMILZONE, HOUR( 11) },
++ { "m", tMILZONE, HOUR( 12) },
++ { "n", tMILZONE, HOUR(- 1) },
++ { "o", tMILZONE, HOUR(- 2) },
++ { "p", tMILZONE, HOUR(- 3) },
++ { "q", tMILZONE, HOUR(- 4) },
++ { "r", tMILZONE, HOUR(- 5) },
++ { "s", tMILZONE, HOUR(- 6) },
++ { "t", tMILZONE, HOUR(- 7) },
++ { "u", tMILZONE, HOUR(- 8) },
++ { "v", tMILZONE, HOUR(- 9) },
++ { "w", tMILZONE, HOUR(-10) },
++ { "x", tMILZONE, HOUR(-11) },
++ { "y", tMILZONE, HOUR(-12) },
++ { "z", tZONE, HOUR( 0) }, /* Deliberately tZONE */
++ { NULL }
++};
++
++static int LookupWord(char * buff, YYSTYPE * yylval, struct Variables * vars)
++{
++ register char *p;
++ register char *q;
++ register const TABLE *tp;
++ int i;
++ int abbrev;
++
++ /* Make it lowercase. */
++ for (p = buff; *p != '\0'; p++)
++ *p = (char)tolower(*p);
++
++ if (strcmp(buff, "am") == 0 || strcmp(buff, "a.m.") == 0) {
++ yylval->Meridian = MERam;
++ return tMERIDIAN;
++ }
++ if (strcmp(buff, "pm") == 0 || strcmp(buff, "p.m.") == 0) {
++ yylval->Meridian = MERpm;
++ return tMERIDIAN;
++ }
++
++ /* See if we have an abbreviation for a month. */
++ if (strlen(buff) == 3)
++ abbrev = 1;
++ else if (strlen(buff) == 4 && buff[3] == '.') {
++ abbrev = 1;
++ buff[3] = '\0';
++ }
++ else
++ abbrev = 0;
++
++ for (tp = MonthDayTable; tp->name; tp++) {
++ if (abbrev) {
++ if (strncmp(buff, tp->name, 3) == 0) {
++ yylval->Number = tp->value;
++ return tp->type;
++ }
++ }
++ else if (strcmp(buff, tp->name) == 0) {
++ yylval->Number = tp->value;
++ return tp->type;
++ }
++ }
++
++ for (tp = TimezoneTable; tp->name; tp++)
++ if (strcmp(buff, tp->name) == 0) {
++ yylval->Number = tp->value;
++ return tp->type;
++ }
++
++ if (strcmp(buff, "dst") == 0)
++ return tDST;
++
++ for (tp = UnitsTable; tp->name; tp++)
++ if (strcmp(buff, tp->name) == 0) {
++ yylval->Number = tp->value;
++ return tp->type;
++ }
++
++ /* Strip off any plural and try the units table again. */
++ i = strlen(buff) - 1;
++ if (buff[i] == 's') {
++ buff[i] = '\0';
++ for (tp = UnitsTable; tp->name; tp++)
++ if (strcmp(buff, tp->name) == 0) {
++ yylval->Number = tp->value;
++ return tp->type;
++ }
++ buff[i] = 's'; /* Put back for "this" in OtherTable. */
++ }
++
++ for (tp = OtherTable; tp->name; tp++)
++ if (strcmp(buff, tp->name) == 0) {
++ yylval->Number = tp->value;
++ return tp->type;
++ }
++
++ /* Avoid confusion with 'T' in RFC3339 and 't' in Military timezones */
++ if (!vars->yyHaveTime && strcmp(buff, "t") == 0)
++ return tRFC3339;
++
++ /* Military timezones. */
++ if (buff[1] == '\0' && isalpha(*buff)) {
++ for (tp = MilitaryTable; tp->name; tp++)
++ if (strcmp(buff, tp->name) == 0) {
++ yylval->Number = tp->value;
++ return tp->type;
++ }
++ }
++
++ /* Drop out any periods and try the timezone table again. */
++ for (i = 0, p = q = buff; *q; q++)
++ if (*q != '.')
++ *p++ = *q;
++ else
++ i++;
++ *p = '\0';
++ if (i)
++ for (tp = TimezoneTable; tp->name; tp++)
++ if (strcmp(buff, tp->name) == 0) {
++ yylval->Number = tp->value;
++ return tp->type;
++ }
++
++ for (i = 1; i <= 12; i++)
++ for (abbrev = 0; abbrev < 2; abbrev++)
++ if (PTimeIsMonthName(buff, i, abbrev)) {
++ yylval->Number = i;
++ return tMONTH;
++ }
++
++ for (i = 1; i <= 7; i++)
++ for (abbrev = 0; abbrev < 2; abbrev++)
++ if (PTimeIsDayName(buff, i, abbrev)) {
++ yylval->Number = i;
++ return tDAY;
++ }
++
++ return tID;
++}
++
++
++#ifdef _MSC_VER
++#pragma warning(disable:4211)
++#endif
++
++#ifndef __GNUC__
++static
++#endif
++int yylex(YYSTYPE * yylval, struct Variables * vars)
++{
++ register char *p;
++ char buff[20];
++ int Count;
++ int sign;
++ register int c = PTimeGetChar(vars->yyInput);
++
++ while (c != EOF && c != '\0' && c != '\n') {
++ while (isspace(c))
++ c = PTimeGetChar(vars->yyInput);
++
++ if (isdigit(c) || c == '-' || c == '+') {
++ if (c == '-' || c == '+') {
++ sign = c == '-' ? -1 : 1;
++ if (!isdigit(c = PTimeGetChar(vars->yyInput)))
++ /* skip the '-' sign */
++ continue;
++ }
++ else
++ sign = 0;
++ yylval->Number = 0;
++ Count = 0; /* Count number of digits */
++ while (isdigit(c)) {
++ yylval->Number = 10 * yylval->Number + c - '0';
++ c = PTimeGetChar(vars->yyInput);
++ Count++;
++ }
++ PTimeUngetChar(vars->yyInput, c);
++ if (sign < 0)
++ yylval->Number = -yylval->Number;
++ if (Count == 4)
++ return sign ? tS4DIGITNUMBER : t4DIGITNUMBER;
++ if (sign)
++ return tSNUMBER;
++ if (Count == 6)
++ return t6DIGITNUMBER;
++ if (Count == 8)
++ return t8DIGITNUMBER;
++ return tUNUMBER;
++ }
++
++ if (isalpha(c)) {
++ for (p = buff; isalpha(c) || c == '.'; c = PTimeGetChar(vars->yyInput)) {
++ if (p < &buff[sizeof(buff)-1])
++ *p++ = (char)c;
++ }
++ *p = '\0';
++ PTimeUngetChar(vars->yyInput, c);
++ return LookupWord(buff, yylval, vars);
++ }
++
++ if (c != '(')
++ return c;
++
++ Count = 0;
++ do {
++ c = PTimeGetChar(vars->yyInput);
++ if (c == '\0' || c == EOF)
++ return c;
++ if (c == '(')
++ Count++;
++ else if (c == ')')
++ Count--;
++ } while (Count > 0);
++ }
++
++ if (c == '\n')
++ PTimeUngetChar(vars->yyInput, c);
++
++ return EOF;
++}
++
++#ifdef _MSC_VER
++#pragma warning(default:4211)
++#endif
++
++
++static time_t ToSeconds(time_t Hours, time_t Minutes, time_t Seconds,
++ MERIDIAN Meridian)
++{
++ if (Minutes < 0 || Minutes > 59 || Seconds < 0 || Seconds > 59)
++ return -1;
++ switch (Meridian) {
++ case MER24:
++ if (Hours < 0 || Hours > 23)
++ return -1;
++ return (Hours * 60L + Minutes) * 60L + Seconds;
++ case MERam:
++ if (Hours < 1 || Hours > 12)
++ return -1;
++ if (Hours == 12)
++ Hours = 0;
++ return (Hours * 60L + Minutes) * 60L + Seconds;
++ case MERpm:
++ if (Hours < 1 || Hours > 12)
++ return -1;
++ if (Hours == 12)
++ Hours = 0;
++ return ((Hours + 12) * 60L + Minutes) * 60L + Seconds;
++ }
++
++ return -1;
++}
++
++
++static time_t Convert(time_t Month, time_t Day, time_t Year,
++ time_t Hours, time_t Minutes, time_t Seconds,
++ MERIDIAN Meridian, DSTMODE DSTmode, time_t yyTimezone)
++{
++ static int DaysInMonth[12] = {
++ 31, 0, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31
++ };
++ time_t tod;
++ time_t Julian;
++ int i;
++
++ if (Year < 0)
++ Year = -Year;
++ if (Year < 70)
++ Year += 2000;
++ else if (Year < 100)
++ Year += 1900;
++ DaysInMonth[1] = Year % 4 == 0 && (Year % 100 != 0 || Year % 400 == 0)
++ ? 29 : 28;
++ /* Checking for 2038 bogusly assumes that time_t is 32 bits. But
++ I'm too lazy to try to check for time_t overflow in another way. */
++ if (Year < EPOCH || Year > 2038
++ || Month < 1 || Month > 12
++ /* Lint fluff: "conversion from long may lose accuracy" */
++ || Day < 1 || Day > DaysInMonth[(int)--Month])
++ return -1;
++
++ for (Julian = Day - 1, i = 0; i < Month; i++)
++ Julian += DaysInMonth[i];
++ for (i = EPOCH; i < Year; i++)
++ Julian += 365 + (i % 4 == 0);
++ Julian *= SECSPERDAY;
++ Julian += yyTimezone * 60L;
++ if ((tod = ToSeconds(Hours, Minutes, Seconds, Meridian)) < 0)
++ return -1;
++ Julian += tod;
++ if (DSTmode == DSTon
++ || (DSTmode == DSTmaybe && localtime(&Julian)->tm_isdst))
++ Julian -= 60 * 60;
++ return Julian;
++}
++
++
++static time_t DSTcorrect(time_t Start, time_t Future)
++{
++ time_t StartDay;
++ time_t FutureDay;
++
++ StartDay = (localtime(&Start)->tm_hour + 1) % 24;
++ FutureDay = (localtime(&Future)->tm_hour + 1) % 24;
++ return (Future - Start) + (StartDay - FutureDay) * 60L * 60L;
++}
++
++
++static time_t RelativeDate(time_t Start, time_t DayOrdinal, time_t DayNumber)
++{
++ struct tm *tm;
++ time_t now;
++
++ now = Start;
++ tm = localtime(&now);
++ now += SECSPERDAY * ((DayNumber - tm->tm_wday + 7) % 7);
++ now += 7 * SECSPERDAY * (DayOrdinal <= 0 ? DayOrdinal : DayOrdinal - 1);
++ return DSTcorrect(Start, now);
++}
++
++
++static time_t RelativeMonth(time_t Start, time_t RelMonth, time_t yyTimezone)
++{
++ struct tm *tm;
++ time_t Month;
++ time_t Year;
++
++ if (RelMonth == 0)
++ return 0;
++ tm = localtime(&Start);
++ Month = 12 * tm->tm_year + tm->tm_mon + RelMonth;
++ Year = Month / 12 + 1900;
++ Month = Month % 12 + 1;
++ return DSTcorrect(Start,
++ Convert(Month, (time_t)tm->tm_mday, Year,
++ (time_t)tm->tm_hour, (time_t)tm->tm_min, (time_t)tm->tm_sec,
++ MER24, DSTmaybe, yyTimezone));
++}
++
++
++static void SetPossibleDate(struct Variables * var,
++ time_t possible_day,
++ time_t possible_month,
++ time_t possible_year)
++{
++ int date_order;
++
++ if (possible_day > 31) /* test for ymd */
++ date_order = 2;
++ else if (possible_day > 12) /* test for dmy */
++ date_order = 1;
++ else if (possible_month > 12) /* test for mdy */
++ date_order = 0;
++ else
++ date_order = PTimeGetDateOrder();
++
++ switch (date_order) {
++ case 0 :
++ var->yyDay = possible_month;
++ var->yyMonth = possible_day;
++ var->yyYear = possible_year;
++ break;
++ case 1 :
++ var->yyDay = possible_day;
++ var->yyMonth = possible_month;
++ var->yyYear = possible_year;
++ break;
++ default :
++ var->yyDay = possible_year;
++ var->yyMonth = possible_month;
++ var->yyYear = possible_day;
++ }
++}
++
++
++time_t STDAPICALLTYPE PTimeParse(void * inputStream, struct tm * now, int timezone)
++{
++ time_t Start;
++ struct Variables var;
++
++
++ var.yyInput = inputStream;
++ var.yyYear = now->tm_year + 1900;
++ var.yyMonth = now->tm_mon + 1;
++ var.yyDay = now->tm_mday;
++ var.yyTimezone = -timezone;
++ var.yyDSTmode = DSTmaybe;
++ var.yyHour = 0;
++ var.yyMinutes = 0;
++ var.yySeconds = 0;
++ var.yyMeridian = MER24;
++ var.yyRelSeconds = 0;
++ var.yyRelMonth = 0;
++ var.yyHaveDate = 0;
++ var.yyHaveDay = 0;
++ var.yyHaveRel = 0;
++ var.yyHaveTime = 0;
++ var.yyHaveZone = 0;
++
++ yyparse(&var);
++
++ if (var.yyHaveTime > 1 || var.yyHaveZone > 1 ||
++ var.yyHaveDate > 1 || var.yyHaveDay > 1)
++ return -1;
++
++ if (var.yyHaveTime == 0 && var.yyHaveZone == 0 &&
++ var.yyHaveDate == 0 && var.yyHaveDay == 0 && var.yyHaveRel == 0)
++ return -1;
++
++ if (var.yyHaveDate || var.yyHaveTime || var.yyHaveDay) {
++ Start = Convert(var.yyMonth, var.yyDay, var.yyYear,
++ var.yyHour, var.yyMinutes, var.yySeconds,
++ var.yyMeridian, var.yyDSTmode, var.yyTimezone);
++ if (Start < 0)
++ return -1;
++ }
++ else {
++ time(&Start);
++ if (!var.yyHaveRel)
++ Start -= ((now->tm_hour * 60L + now->tm_min) * 60L) + now->tm_sec;
++ }
++
++ Start += var.yyRelSeconds;
++ Start += RelativeMonth(Start, var.yyRelMonth, var.yyTimezone);
++
++ if (var.yyHaveDay && !var.yyHaveDate)
++ Start += RelativeDate(Start, var.yyDayOrdinal, var.yyDayNumber);
++
++ /* Have to do *something* with a legitimate -1 so it's distinguishable
++ * from the error return value. (Alternately could set errno on error.) */
++ return Start == -1 ? 0 : Start;
++}
++
++
++#ifdef _MSC_VER
++#pragma warning(disable:4028 4100 4211)
++#endif
++
++#ifdef __GNUC__
++int yyerror(const char * s)
++{
++ return 0;
++}
++#else
++static void yyerror(const char * s)
++{
++}
++#endif
++
++#ifdef _MSC_VER
++#pragma warning(default:4028 4100 4211)
++#endif
++
++
++/* End of file ***************************************************************/
+diff -Naur ptlib-2.10.11.orig/src/ptlib/unix/svcproc.cxx ptlib-2.10.11/src/ptlib/unix/svcproc.cxx
+--- ptlib-2.10.11.orig/src/ptlib/unix/svcproc.cxx 2013-08-14 18:20:26.000000000 -0500
++++ ptlib-2.10.11/src/ptlib/unix/svcproc.cxx 2016-05-04 19:42:20.526529457 -0500
+@@ -217,7 +217,7 @@
+ pid_t pid;
+
+ {
+- ifstream pidfile(pidfilename);
++ ifstream pidfile((std::string&)pidfilename);
+ if (!pidfile.is_open()) {
+ cout << "Could not open pid file: \"" << pidfilename << "\""
+ " - " << strerror(errno) << endl;
+@@ -384,7 +384,7 @@
+ // Run as a daemon, ie fork
+
+ if (!pidfilename) {
+- ifstream pidfile(pidfilename);
++ ifstream pidfile((std::string&)pidfilename);
+ if (pidfile.is_open()) {
+ pid_t pid;
+ pidfile >> pid;
+@@ -412,7 +412,7 @@
+ cout << "Daemon started with pid " << pid << endl;
+ if (!pidfilename) {
+ // Write out the child pid to magic file in /var/run (at least for linux)
+- ofstream pidfile(pidfilename);
++ ofstream pidfile((std::string&)pidfilename);
+ if (pidfile.is_open())
+ pidfile << pid;
+ else
diff --git a/libraries/ptlib/ptlib.SlackBuild b/libraries/ptlib/ptlib.SlackBuild
index d2c42bd774..db6471b7c8 100644
--- a/libraries/ptlib/ptlib.SlackBuild
+++ b/libraries/ptlib/ptlib.SlackBuild
@@ -68,8 +68,7 @@ find -L . \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
# Fix building with bison-3.0.4
-# thanks to Dan Fandrich / OpalVOIP https://sourceforge.net/p/opalvoip/patches/259/
-patch -p1 < $CWD/ptlib-2.10.10-mga-bison-parameter.patch
+patch -p1 < $CWD/ptlib-2.10.11-bison_fixes-2.patch
# Disable SSLv3
patch -p1 < $CWD/ssl3.patch
diff --git a/libraries/python3-PyQt5/python3-PyQt5.SlackBuild b/libraries/python3-PyQt5/python3-PyQt5.SlackBuild
index 759fbffc7b..c35cca54d4 100644
--- a/libraries/python3-PyQt5/python3-PyQt5.SlackBuild
+++ b/libraries/python3-PyQt5/python3-PyQt5.SlackBuild
@@ -93,8 +93,8 @@ python3 configure.py \
--confirm-license \
--verbose \
-q /usr/bin/qmake-qt5 \
- --sip=/usr/bin/python3-sip \
- --sip-incdir=/usr/include/python$PYTHONVER
+ --sip=/usr/bin/sip3 \
+ --sip-incdir=/usr/include/python${PYTHONVER}m
make
make install DESTDIR=$PKG INSTALL_ROOT=$PKG
diff --git a/libraries/python3-pillow/README b/libraries/python3-pillow/README
deleted file mode 100644
index 8bd903c6d8..0000000000
--- a/libraries/python3-pillow/README
+++ /dev/null
@@ -1,8 +0,0 @@
-The Python Imaging Library (PIL) adds image processing capabilities to
-your Python environment. This library provides extensive file format
-support, an efficient internal representation and powerful image
-processing capabilities.
-
-NOTE - This SlackBuild provides PIL libraries with support for Python3. It
-is intended to be a complement to Slackware's default python-pillow, not to
-replace it, hence it doesn't include the scripts that would go to /usr/bin.
diff --git a/libraries/python3-pillow/python3-pillow.SlackBuild b/libraries/python3-pillow/python3-pillow.SlackBuild
deleted file mode 100644
index fca5f71d14..0000000000
--- a/libraries/python3-pillow/python3-pillow.SlackBuild
+++ /dev/null
@@ -1,107 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for python3-pillow
-
-# Copyright 2015-2017 Philip Lacroix <slackph at posteo dot de>
-#
-# Based on build script for python-pillow by following authors:
-# Copyright 2009, 2010, 2013, 2014 Patrick J. Volkerding, Sebeka, MN, USA
-# Copyright 2014 Heinz Wiesinger, Amsterdam, The Netherlands
-# Copyright 2015 Brenton Earl <brent at exitstatusone dot com>
-# 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.
-
-PRGNAM=python3-pillow
-SRCNAM=Pillow
-VERSION=${VERSION:-3.0.0}
-BUILD=${BUILD:-2}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $SRCNAM-$VERSION
-tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
-
-cd $SRCNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-# Do not install scripts that would go to /usr/bin, as they
-# are already part of python-pillow.
-sed -i -e "s~.*scripts=glob.glob(\"Scripts/\*.py\"),~~" setup.py
-
-python3 setup.py install --root=$PKG
-
-# Safety check to prevent changes in the install process of a
-# different version of Pillow that might allow files in /usr/bin.
-if [ -e $PKG/usr/bin ]; then
- echo -e "\n* Warning - This package is not allowed to put files in /usr/bin,"
- echo "* as they conflict with Slackware's default python-pillow. Exiting."
- exit 1
-fi
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" \
- | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-PRGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
-
-# Install documentation.
-mkdir -p $PRGDOC
-cat $CWD/README > $PRGDOC/README
-cat $CWD/$PRGNAM.SlackBuild > $PRGDOC/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/libraries/python3-pillow/python3-pillow.info b/libraries/python3-pillow/python3-pillow.info
deleted file mode 100644
index 77117beb48..0000000000
--- a/libraries/python3-pillow/python3-pillow.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="python3-pillow"
-VERSION="3.0.0"
-HOMEPAGE="http://python-pillow.github.io/"
-DOWNLOAD="https://pypi.python.org/packages/source/P/Pillow/Pillow-3.0.0.tar.gz"
-MD5SUM="fc8ac44e93da09678eac7e30c9b7377d"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="python3 %README%"
-MAINTAINER="Philip Lacroix"
-EMAIL="slackph at posteo dot de"
diff --git a/libraries/python3-pillow/slack-desc b/libraries/python3-pillow/slack-desc
deleted file mode 100644
index 446cde956c..0000000000
--- a/libraries/python3-pillow/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-python3-pillow: python3-pillow (Python3 support for python-pillow)
-python3-pillow:
-python3-pillow: The Python Imaging Library (PIL) adds image processing capabilities
-python3-pillow: to your Python environment. This library provides extensive file
-python3-pillow: format support, an efficient internal representation and powerful
-python3-pillow: image processing capabilities.
-python3-pillow:
-python3-pillow: This package provides the PIL libraries with support for Python3. It
-python3-pillow: is intended to be a complement to python-pillow, not to replace it.
-python3-pillow:
-python3-pillow: Homepage: https://python3-pillow.github.io/
diff --git a/libraries/qt5-webkit/qt5-webkit.SlackBuild b/libraries/qt5-webkit/qt5-webkit.SlackBuild
index 5dc15c76bd..d3b2bf4027 100644
--- a/libraries/qt5-webkit/qt5-webkit.SlackBuild
+++ b/libraries/qt5-webkit/qt5-webkit.SlackBuild
@@ -28,7 +28,7 @@
PRGNAM=qt5-webkit
SRCNAM=qtwebkit-opensource-src
-VERSION=${VERSION:-5.9.0}
+VERSION=${VERSION:-5.9.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -88,7 +88,7 @@ if [ -d include ]; then
syncqt.pl -version $VERSION Source/sync.profile
fi
-qmake-qt5 PREFIX="/usr" QMAKE_CFLAGS+="$SLKCFLAGS" QMAKE_CXXFLAGS+="$SLKCFLAGS" \
+qmake-qt5 PREFIX="/usr" QMAKE_CFLAGS+="$SLKCFLAGS" QMAKE_CXXFLAGS+="$SLKCFLAGS -fpermissive" \
-o Makefile WebKit.pro
make
diff --git a/libraries/qt5-webkit/qt5-webkit.info b/libraries/qt5-webkit/qt5-webkit.info
index de2d8ee75f..f3d784f00e 100644
--- a/libraries/qt5-webkit/qt5-webkit.info
+++ b/libraries/qt5-webkit/qt5-webkit.info
@@ -1,8 +1,8 @@
PRGNAM="qt5-webkit"
-VERSION="5.9.0"
+VERSION="5.9.1"
HOMEPAGE="https://www.qt.io"
-DOWNLOAD="https://download.qt.io/community_releases/5.9/5.9.0-final/qtwebkit-opensource-src-5.9.0.tar.xz"
-MD5SUM="1fc0ed873cc9326b823a8a83126714f5"
+DOWNLOAD="http://download.qt.io/archive/qt/5.9/5.9.1/submodules/qtwebkit-opensource-src-5.9.1.tar.xz"
+MD5SUM="c7a5eb579c2476ff54f8cff2111b0910"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="qt5"
diff --git a/libraries/qt5/patches/0001-QSslSocket-OpenSSL-1.1-backend.patch b/libraries/qt5/patches/0001-QSslSocket-OpenSSL-1.1-backend.patch
new file mode 100644
index 0000000000..a06395db37
--- /dev/null
+++ b/libraries/qt5/patches/0001-QSslSocket-OpenSSL-1.1-backend.patch
@@ -0,0 +1,4238 @@
+From c181441ae0ab7ebc0bfa846eb46060ce12bd2112 Mon Sep 17 00:00:00 2001
+From: "Richard J. Moore" <rich@kde.org>
+Date: Thu, 23 Mar 2017 12:43:22 +0100
+Subject: [PATCH] QSslSocket: OpenSSL 1.1 backend
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+This patch-set implements a new QSslSocket backend based on OpenSSL 1.1.
+
+1. General.
+
+The code in this patch was organized to achieve these (somewhat contradicting)
+objectives:
+- keep the new code free of #if-ery, as far as possible;
+- make it easy to clean away dead code when we're eventually able to retire
+ out-dated OpenSSL versions;
+- reduce the amount of code duplication.
+
+If changes in some file/component were insignificant (~5 one-liners per file),
+we still use pp-checks like: #if QT_CONFIG(opensslv11) ... #else ... #endif -
+the logic is simple and it's still easy to clean the code if we remove the legacy
+back-end. Where it saved #if-ery, we also introduced 'forward-compatible'
+macros implementing equivalents of 1.1 functions using older OpenSSL.
+
+In case some class contains a lot of version-specific ifdefs (particularly where
+nested #if-ery was complex) we choose to split code into: "pre11" h/cpp files,
+"shared" h/cpp files (they preserve their original names, e.g qsslsocket_openssl.cpp)
+and "11" h/cpp files. If in future we remove the legacy back-end, "pre11" should be
+removed; "shared" and "11" parts - merged.
+
+2. Configuration.
+
+We introduced a new feature 'opensslv11' which complements the pre-existing
+'openssl' and 'openssl-linked' features. The 'opensslv11' feature is enabled
+by a simple test which either compiles successfully or ends in a compilation
+error, depending on a value of the OPENSSL_VERSION_NUMBER constant. If the
+feature was enabled, we also append an additional compilation flag
+-DOPENSSL_API_COMPAT=0x10100000L to make sure our new code does not contain
+deprecated structures, function calls, macro-invocations from OpenSSL < 1.1.
+
+Change-Id: I2064efbe9685def5d2bb2233a66f7581954fb74a
+Reviewed-by: André Klitzing <aklitzing@gmail.com>
+Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
+---
+ config.tests/unix/openssl11/openssl.cpp | 48 +++
+ config.tests/unix/openssl11/openssl.pro | 2 +
+ src/network/configure.json | 11 +
+ src/network/ssl/qsslcertificate_openssl.cpp | 57 +--
+ src/network/ssl/qsslcontext_openssl.cpp | 309 +-------------
+ src/network/ssl/qsslcontext_openssl11.cpp | 277 ++++++++++++
+ src/network/ssl/qsslcontext_opensslpre11.cpp | 354 ++++++++++++++++
+ .../ssl/qssldiffiehellmanparameters_openssl.cpp | 38 +-
+ src/network/ssl/qsslellipticcurve.h | 1 +
+ src/network/ssl/qsslellipticcurve_openssl.cpp | 8 +-
+ src/network/ssl/qsslkey_openssl.cpp | 79 ++--
+ src/network/ssl/qsslsocket_openssl.cpp | 368 ++--------------
+ src/network/ssl/qsslsocket_openssl11.cpp | 285 +++++++++++++
+ src/network/ssl/qsslsocket_openssl11_symbols_p.h | 132 ++++++
+ src/network/ssl/qsslsocket_openssl_p.h | 8 +-
+ src/network/ssl/qsslsocket_openssl_symbols.cpp | 471 ++++++++++++++-------
+ src/network/ssl/qsslsocket_openssl_symbols_p.h | 117 +----
+ src/network/ssl/qsslsocket_opensslpre11.cpp | 424 +++++++++++++++++++
+ .../ssl/qsslsocket_opensslpre11_symbols_p.h | 230 ++++++++++
+ src/network/ssl/ssl.pri | 18 +-
+ 20 files changed, 2280 insertions(+), 957 deletions(-)
+ create mode 100644 config.tests/unix/openssl11/openssl.cpp
+ create mode 100644 config.tests/unix/openssl11/openssl.pro
+ create mode 100644 src/network/ssl/qsslcontext_openssl11.cpp
+ create mode 100644 src/network/ssl/qsslcontext_opensslpre11.cpp
+ create mode 100644 src/network/ssl/qsslsocket_openssl11.cpp
+ create mode 100644 src/network/ssl/qsslsocket_openssl11_symbols_p.h
+ create mode 100644 src/network/ssl/qsslsocket_opensslpre11.cpp
+ create mode 100644 src/network/ssl/qsslsocket_opensslpre11_symbols_p.h
+
+Index: qtbase-opensource-src-5.9.2/config.tests/unix/openssl11/openssl.cpp
+===================================================================
+--- /dev/null
++++ qtbase-opensource-src-5.9.2/config.tests/unix/openssl11/openssl.cpp
+@@ -0,0 +1,48 @@
++/****************************************************************************
++**
++** Copyright (C) 2017 The Qt Company Ltd.
++** Contact: https://www.qt.io/licensing/
++**
++** This file is part of the config.tests of the Qt Toolkit.
++**
++** $QT_BEGIN_LICENSE:LGPL$
++** Commercial License Usage
++** Licensees holding valid commercial Qt licenses may use this file in
++** accordance with the commercial license agreement provided with the
++** Software or, alternatively, in accordance with the terms contained in
++** a written agreement between you and The Qt Company. For licensing terms
++** and conditions see https://www.qt.io/terms-conditions. For further
++** information use the contact form at https://www.qt.io/contact-us.
++**
++** GNU Lesser General Public License Usage
++** Alternatively, this file may be used under the terms of the GNU Lesser
++** General Public License version 3 as published by the Free Software
++** Foundation and appearing in the file LICENSE.LGPL3 included in the
++** packaging of this file. Please review the following information to
++** ensure the GNU Lesser General Public License version 3 requirements
++** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
++**
++** GNU General Public License Usage
++** Alternatively, this file may be used under the terms of the GNU
++** General Public License version 2.0 or (at your option) the GNU General
++** Public license version 3 or any later version approved by the KDE Free
++** Qt Foundation. The licenses are as published by the Free Software
++** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
++** included in the packaging of this file. Please review the following
++** information to ensure the GNU General Public License requirements will
++** be met: https://www.gnu.org/licenses/gpl-2.0.html and
++** https://www.gnu.org/licenses/gpl-3.0.html.
++**
++** $QT_END_LICENSE$
++**
++****************************************************************************/
++
++#include <openssl/opensslv.h>
++
++#if !defined(OPENSSL_VERSION_NUMBER) || OPENSSL_VERSION_NUMBER-0 < 0x10100000L
++# error "OpenSSL >= 1.1 is required"
++#endif
++
++int main()
++{
++}
+Index: qtbase-opensource-src-5.9.2/config.tests/unix/openssl11/openssl.pro
+===================================================================
+--- /dev/null
++++ qtbase-opensource-src-5.9.2/config.tests/unix/openssl11/openssl.pro
+@@ -0,0 +1,2 @@
++SOURCES = openssl.cpp
++CONFIG -= x11 qt
+Index: qtbase-opensource-src-5.9.2/src/network/configure.json
+===================================================================
+--- qtbase-opensource-src-5.9.2.orig/src/network/configure.json
++++ qtbase-opensource-src-5.9.2/src/network/configure.json
+@@ -154,6 +154,12 @@
+ ]
+ },
+ "use": "network"
++ },
++ "openssl11": {
++ "label": "OpenSSL v. 1.1 support",
++ "type": "compile",
++ "test": "unix/openssl11",
++ "use": "network"
+ }
+ },
+
+@@ -221,6 +227,11 @@
+ "condition": "config.winrt || features.securetransport || features.openssl",
+ "output": [ "publicFeature", "feature" ]
+ },
++ "opensslv11": {
++ "label": "OpenSSL v. 1.1",
++ "condition": "tests.openssl11",
++ "output": ["publicFeature", "feature"]
++ },
+ "sctp": {
+ "label": "SCTP",
+ "autoDetect": false,
+Index: qtbase-opensource-src-5.9.2/src/network/ssl/qsslcertificate_openssl.cpp
+===================================================================
+--- qtbase-opensource-src-5.9.2.orig/src/network/ssl/qsslcertificate_openssl.cpp
++++ qtbase-opensource-src-5.9.2/src/network/ssl/qsslcertificate_openssl.cpp
+@@ -1,6 +1,7 @@
+ /****************************************************************************
+ **
+-** Copyright (C) 2016 The Qt Company Ltd.
++** Copyright (C) 2017 The Qt Company Ltd.
++** Copyright (C) 2016 Richard J. Moore <rich@kde.org>
+ ** Contact: https://www.qt.io/licensing/
+ **
+ ** This file is part of the QtNetwork module of the Qt Toolkit.
+@@ -64,12 +65,14 @@ bool QSslCertificate::operator==(const Q
+ uint qHash(const QSslCertificate &key, uint seed) Q_DECL_NOTHROW
+ {
+ if (X509 * const x509 = key.d->x509) {
+- (void)q_X509_cmp(x509, x509); // populate x509->sha1_hash
+- // (if someone knows a better way...)
+- return qHashBits(x509->sha1_hash, SHA_DIGEST_LENGTH, seed);
+- } else {
+- return seed;
++ const EVP_MD *sha1 = q_EVP_sha1();
++ unsigned int len = 0;
++ unsigned char md[EVP_MAX_MD_SIZE];
++ q_X509_digest(x509, sha1, md, &len);
++ return qHashBits(md, len, seed);
+ }
++
++ return seed;
+ }
+
+ bool QSslCertificate::isNull() const
+@@ -89,8 +92,7 @@ QByteArray QSslCertificate::version() co
+ {
+ QMutexLocker lock(QMutexPool::globalInstanceGet(d.data()));
+ if (d->versionString.isEmpty() && d->x509)
+- d->versionString =
+- QByteArray::number(qlonglong(q_ASN1_INTEGER_get(d->x509->cert_info->version)) + 1);
++ d->versionString = QByteArray::number(qlonglong(q_X509_get_version(d->x509)) + 1);
+
+ return d->versionString;
+ }
+@@ -99,7 +101,7 @@ QByteArray QSslCertificate::serialNumber
+ {
+ QMutexLocker lock(QMutexPool::globalInstanceGet(d.data()));
+ if (d->serialNumberString.isEmpty() && d->x509) {
+- ASN1_INTEGER *serialNumber = d->x509->cert_info->serialNumber;
++ ASN1_INTEGER *serialNumber = q_X509_get_serialNumber(d->x509);
+ QByteArray hexString;
+ hexString.reserve(serialNumber->length * 3);
+ for (int a = 0; a < serialNumber->length; ++a) {
+@@ -199,14 +201,15 @@ QMultiMap<QSsl::AlternativeNameEntryType
+ continue;
+ }
+
+- const char *altNameStr = reinterpret_cast<const char *>(q_ASN1_STRING_data(genName->d.ia5));
++ const char *altNameStr = reinterpret_cast<const char *>(q_ASN1_STRING_get0_data(genName->d.ia5));
+ const QString altName = QString::fromLatin1(altNameStr, len);
+ if (genName->type == GEN_DNS)
+ result.insert(QSsl::DnsEntry, altName);
+ else if (genName->type == GEN_EMAIL)
+ result.insert(QSsl::EmailEntry, altName);
+ }
+- q_sk_pop_free((STACK*)altNames, reinterpret_cast<void(*)(void*)>(q_sk_free));
++
++ q_OPENSSL_sk_pop_free((OPENSSL_STACK*)altNames, reinterpret_cast<void(*)(void*)>(q_OPENSSL_sk_free));
+ }
+
+ return result;
+@@ -235,25 +238,26 @@ QSslKey QSslCertificate::publicKey() con
+ QSslKey key;
+
+ key.d->type = QSsl::PublicKey;
+- X509_PUBKEY *xkey = d->x509->cert_info->key;
+- EVP_PKEY *pkey = q_X509_PUBKEY_get(xkey);
++
++ EVP_PKEY *pkey = q_X509_get_pubkey(d->x509);
+ Q_ASSERT(pkey);
++ const int keyType = q_EVP_PKEY_type(q_EVP_PKEY_base_id(pkey));
+
+- if (q_EVP_PKEY_type(pkey->type) == EVP_PKEY_RSA) {
++ if (keyType == EVP_PKEY_RSA) {
+ key.d->rsa = q_EVP_PKEY_get1_RSA(pkey);
+ key.d->algorithm = QSsl::Rsa;
+ key.d->isNull = false;
+- } else if (q_EVP_PKEY_type(pkey->type) == EVP_PKEY_DSA) {
++ } else if (keyType == EVP_PKEY_DSA) {
+ key.d->dsa = q_EVP_PKEY_get1_DSA(pkey);
+ key.d->algorithm = QSsl::Dsa;
+ key.d->isNull = false;
+ #ifndef OPENSSL_NO_EC
+- } else if (q_EVP_PKEY_type(pkey->type) == EVP_PKEY_EC) {
++ } else if (keyType == EVP_PKEY_EC) {
+ key.d->ec = q_EVP_PKEY_get1_EC_KEY(pkey);
+ key.d->algorithm = QSsl::Ec;
+ key.d->isNull = false;
+ #endif
+- } else if (q_EVP_PKEY_type(pkey->type) == EVP_PKEY_DH) {
++ } else if (keyType == EVP_PKEY_DH) {
+ // DH unsupported
+ } else {
+ // error?
+@@ -275,7 +279,7 @@ static QVariant x509UnknownExtensionToVa
+ X509V3_EXT_METHOD *meth = const_cast<X509V3_EXT_METHOD *>(q_X509V3_EXT_get(ext));
+ if (!meth) {
+ ASN1_OCTET_STRING *value = q_X509_EXTENSION_get_data(ext);
+- QByteArray result( reinterpret_cast<const char *>(q_ASN1_STRING_data(value)),
++ QByteArray result( reinterpret_cast<const char *>(q_ASN1_STRING_get0_data(value)),
+ q_ASN1_STRING_length(value));
+ return result;
+ }
+@@ -371,7 +375,7 @@ static QVariant x509ExtensionToValue(X50
+ continue;
+ }
+
+- const char *uriStr = reinterpret_cast<const char *>(q_ASN1_STRING_data(name->d.uniformResourceIdentifier));
++ const char *uriStr = reinterpret_cast<const char *>(q_ASN1_STRING_get0_data(name->d.uniformResourceIdentifier));
+ const QString uri = QString::fromUtf8(uriStr, len);
+
+ result[QString::fromUtf8(QSslCertificatePrivate::asn1ObjectName(ad->method))] = uri;
+@@ -380,11 +384,7 @@ static QVariant x509ExtensionToValue(X50
+ }
+ }
+
+-#if OPENSSL_VERSION_NUMBER >= 0x10000000L
+- q_sk_pop_free((_STACK*)info, reinterpret_cast<void(*)(void*)>(q_sk_free));
+-#else
+- q_sk_pop_free((STACK*)info, reinterpret_cast<void(*)(void*)>(q_sk_free));
+-#endif
++ q_OPENSSL_sk_pop_free((OPENSSL_STACK*)info, reinterpret_cast<void(*)(void *)>(q_OPENSSL_sk_free));
+ return result;
+ }
+ break;
+@@ -607,7 +607,11 @@ static QMap<QByteArray, QString> _q_mapF
+ unsigned char *data = 0;
+ int size = q_ASN1_STRING_to_UTF8(&data, q_X509_NAME_ENTRY_get_data(e));
+ info.insertMulti(name, QString::fromUtf8((char*)data, size));
++#if QT_CONFIG(opensslv11)
++ q_CRYPTO_free(data, 0, 0);
++#else
+ q_CRYPTO_free(data);
++#endif
+ }
+
+ return info;
+@@ -619,8 +623,9 @@ QSslCertificate QSslCertificatePrivate::
+ if (!x509 || !QSslSocket::supportsSsl())
+ return certificate;
+
+- ASN1_TIME *nbef = q_X509_get_notBefore(x509);
+- ASN1_TIME *naft = q_X509_get_notAfter(x509);
++ ASN1_TIME *nbef = q_X509_getm_notBefore(x509);
++ ASN1_TIME *naft = q_X509_getm_notAfter(x509);
++
+ certificate.d->notValidBefore = q_getTimeFromASN1(nbef);
+ certificate.d->notValidAfter = q_getTimeFromASN1(naft);
+ certificate.d->null = false;
+Index: qtbase-opensource-src-5.9.2/src/network/ssl/qsslcontext_openssl.cpp
+===================================================================
+--- qtbase-opensource-src-5.9.2.orig/src/network/ssl/qsslcontext_openssl.cpp
++++ qtbase-opensource-src-5.9.2/src/network/ssl/qsslcontext_openssl.cpp
+@@ -1,6 +1,6 @@
+ /****************************************************************************
+ **
+-** Copyright (C) 2016 The Qt Company Ltd.
++** Copyright (C) 2017 The Qt Company Ltd.
+ ** Copyright (C) 2014 BlackBerry Limited. All rights reserved.
+ ** Copyright (C) 2014 Governikus GmbH & Co. KG.
+ ** Contact: https://www.qt.io/licensing/
+@@ -41,22 +41,14 @@
+
+
+ #include <QtNetwork/qsslsocket.h>
+-#include <QtNetwork/qssldiffiehellmanparameters.h>
+-#include <QtCore/qmutex.h>
+
+ #include "private/qssl_p.h"
+ #include "private/qsslcontext_openssl_p.h"
+-#include "private/qsslsocket_p.h"
+ #include "private/qsslsocket_openssl_p.h"
+ #include "private/qsslsocket_openssl_symbols_p.h"
+-#include "private/qssldiffiehellmanparameters_p.h"
+
+ QT_BEGIN_NAMESPACE
+
+-// defined in qsslsocket_openssl.cpp:
+-extern int q_X509Callback(int ok, X509_STORE_CTX *ctx);
+-extern QString getErrorsFromOpenSsl();
+-
+ QSslContext::QSslContext()
+ : ctx(0),
+ pkey(0),
+@@ -78,301 +70,6 @@ QSslContext::~QSslContext()
+ q_SSL_SESSION_free(session);
+ }
+
+-static inline QString msgErrorSettingEllipticCurves(const QString &why)
+-{
+- return QSslSocket::tr("Error when setting the elliptic curves (%1)").arg(why);
+-}
+-
+-// static
+-void QSslContext::initSslContext(QSslContext *sslContext, QSslSocket::SslMode mode, const QSslConfiguration &configuration, bool allowRootCertOnDemandLoading)
+-{
+- sslContext->sslConfiguration = configuration;
+- sslContext->errorCode = QSslError::NoError;
+-
+- bool client = (mode == QSslSocket::SslClientMode);
+-
+- bool reinitialized = false;
+- bool unsupportedProtocol = false;
+-init_context:
+- switch (sslContext->sslConfiguration.protocol()) {
+- case QSsl::SslV2:
+-#ifndef OPENSSL_NO_SSL2
+- sslContext->ctx = q_SSL_CTX_new(client ? q_SSLv2_client_method() : q_SSLv2_server_method());
+-#else
+- // SSL 2 not supported by the system, but chosen deliberately -> error
+- sslContext->ctx = 0;
+- unsupportedProtocol = true;
+-#endif
+- break;
+- case QSsl::SslV3:
+-#ifndef OPENSSL_NO_SSL3_METHOD
+- sslContext->ctx = q_SSL_CTX_new(client ? q_SSLv3_client_method() : q_SSLv3_server_method());
+-#else
+- // SSL 3 not supported by the system, but chosen deliberately -> error
+- sslContext->ctx = 0;
+- unsupportedProtocol = true;
+-#endif
+- break;
+- case QSsl::SecureProtocols:
+- // SSLv2 and SSLv3 will be disabled by SSL options
+- // But we need q_SSLv23_server_method() otherwise AnyProtocol will be unable to connect on Win32.
+- case QSsl::TlsV1SslV3:
+- // SSLv2 will will be disabled by SSL options
+- case QSsl::AnyProtocol:
+- default:
+- sslContext->ctx = q_SSL_CTX_new(client ? q_SSLv23_client_method() : q_SSLv23_server_method());
+- break;
+- case QSsl::TlsV1_0:
+- sslContext->ctx = q_SSL_CTX_new(client ? q_TLSv1_client_method() : q_TLSv1_server_method());
+- break;
+- case QSsl::TlsV1_1:
+-#if OPENSSL_VERSION_NUMBER >= 0x10001000L
+- sslContext->ctx = q_SSL_CTX_new(client ? q_TLSv1_1_client_method() : q_TLSv1_1_server_method());
+-#else
+- // TLS 1.1 not supported by the system, but chosen deliberately -> error
+- sslContext->ctx = 0;
+- unsupportedProtocol = true;
+-#endif
+- break;
+- case QSsl::TlsV1_2:
+-#if OPENSSL_VERSION_NUMBER >= 0x10001000L
+- sslContext->ctx = q_SSL_CTX_new(client ? q_TLSv1_2_client_method() : q_TLSv1_2_server_method());
+-#else
+- // TLS 1.2 not supported by the system, but chosen deliberately -> error
+- sslContext->ctx = 0;
+- unsupportedProtocol = true;
+-#endif
+- break;
+- case QSsl::TlsV1_0OrLater:
+- // Specific protocols will be specified via SSL options.
+- sslContext->ctx = q_SSL_CTX_new(client ? q_SSLv23_client_method() : q_SSLv23_server_method());
+- break;
+- case QSsl::TlsV1_1OrLater:
+- case QSsl::TlsV1_2OrLater:
+-#if OPENSSL_VERSION_NUMBER >= 0x10001000L
+- // Specific protocols will be specified via SSL options.
+- sslContext->ctx = q_SSL_CTX_new(client ? q_SSLv23_client_method() : q_SSLv23_server_method());
+-#else
+- // TLS 1.1/1.2 not supported by the system, but chosen deliberately -> error
+- sslContext->ctx = 0;
+- unsupportedProtocol = true;
+-#endif
+- break;
+- }
+-
+- if (!sslContext->ctx) {
+- // After stopping Flash 10 the SSL library looses its ciphers. Try re-adding them
+- // by re-initializing the library.
+- if (!reinitialized) {
+- reinitialized = true;
+- if (q_SSL_library_init() == 1)
+- goto init_context;
+- }
+-
+- sslContext->errorStr = QSslSocket::tr("Error creating SSL context (%1)").arg(
+- unsupportedProtocol ? QSslSocket::tr("unsupported protocol") : QSslSocketBackendPrivate::getErrorsFromOpenSsl()
+- );
+- sslContext->errorCode = QSslError::UnspecifiedError;
+- return;
+- }
+-
+- // Enable bug workarounds.
+- long options = QSslSocketBackendPrivate::setupOpenSslOptions(configuration.protocol(), configuration.d->sslOptions);
+- q_SSL_CTX_set_options(sslContext->ctx, options);
+-
+-#if OPENSSL_VERSION_NUMBER >= 0x10000000L
+- // Tell OpenSSL to release memory early
+- // http://www.openssl.org/docs/ssl/SSL_CTX_set_mode.html
+- if (q_SSLeay() >= 0x10000000L)
+- q_SSL_CTX_set_mode(sslContext->ctx, SSL_MODE_RELEASE_BUFFERS);
+-#endif
+-
+- // Initialize ciphers
+- QByteArray cipherString;
+- bool first = true;
+- QList<QSslCipher> ciphers = sslContext->sslConfiguration.ciphers();
+- if (ciphers.isEmpty())
+- ciphers = QSslSocketPrivate::defaultCiphers();
+- for (const QSslCipher &cipher : qAsConst(ciphers)) {
+- if (first)
+- first = false;
+- else
+- cipherString.append(':');
+- cipherString.append(cipher.name().toLatin1());
+- }
+-
+- if (!q_SSL_CTX_set_cipher_list(sslContext->ctx, cipherString.data())) {
+- sslContext->errorStr = QSslSocket::tr("Invalid or empty cipher list (%1)").arg(QSslSocketBackendPrivate::getErrorsFromOpenSsl());
+- sslContext->errorCode = QSslError::UnspecifiedError;
+- return;
+- }
+-
+- const QDateTime now = QDateTime::currentDateTimeUtc();
+-
+- // Add all our CAs to this store.
+- const auto caCertificates = sslContext->sslConfiguration.caCertificates();
+- for (const QSslCertificate &caCertificate : caCertificates) {
+- // From https://www.openssl.org/docs/ssl/SSL_CTX_load_verify_locations.html:
+- //
+- // If several CA certificates matching the name, key identifier, and
+- // serial number condition are available, only the first one will be
+- // examined. This may lead to unexpected results if the same CA
+- // certificate is available with different expiration dates. If a
+- // ``certificate expired'' verification error occurs, no other
+- // certificate will be searched. Make sure to not have expired
+- // certificates mixed with valid ones.
+- //
+- // See also: QSslSocketBackendPrivate::verify()
+- if (caCertificate.expiryDate() >= now) {
+- q_X509_STORE_add_cert(q_SSL_CTX_get_cert_store(sslContext->ctx), (X509 *)caCertificate.handle());
+- }
+- }
+-
+- if (QSslSocketPrivate::s_loadRootCertsOnDemand && allowRootCertOnDemandLoading) {
+- // tell OpenSSL the directories where to look up the root certs on demand
+- const QList<QByteArray> unixDirs = QSslSocketPrivate::unixRootCertDirectories();
+- for (const QByteArray &unixDir : unixDirs)
+- q_SSL_CTX_load_verify_locations(sslContext->ctx, 0, unixDir.constData());
+- }
+-
+- if (!sslContext->sslConfiguration.localCertificate().isNull()) {
+- // Require a private key as well.
+- if (sslContext->sslConfiguration.privateKey().isNull()) {
+- sslContext->errorStr = QSslSocket::tr("Cannot provide a certificate with no key, %1").arg(QSslSocketBackendPrivate::getErrorsFromOpenSsl());
+- sslContext->errorCode = QSslError::UnspecifiedError;
+- return;
+- }
+-
+- // Load certificate
+- if (!q_SSL_CTX_use_certificate(sslContext->ctx, (X509 *)sslContext->sslConfiguration.localCertificate().handle())) {
+- sslContext->errorStr = QSslSocket::tr("Error loading local certificate, %1").arg(QSslSocketBackendPrivate::getErrorsFromOpenSsl());
+- sslContext->errorCode = QSslError::UnspecifiedError;
+- return;
+- }
+-
+- if (configuration.d->privateKey.algorithm() == QSsl::Opaque) {
+- sslContext->pkey = reinterpret_cast<EVP_PKEY *>(configuration.d->privateKey.handle());
+- } else {
+- // Load private key
+- sslContext->pkey = q_EVP_PKEY_new();
+- // before we were using EVP_PKEY_assign_R* functions and did not use EVP_PKEY_free.
+- // this lead to a memory leak. Now we use the *_set1_* functions which do not
+- // take ownership of the RSA/DSA key instance because the QSslKey already has ownership.
+- if (configuration.d->privateKey.algorithm() == QSsl::Rsa)
+- q_EVP_PKEY_set1_RSA(sslContext->pkey, reinterpret_cast<RSA *>(configuration.d->privateKey.handle()));
+- else if (configuration.d->privateKey.algorithm() == QSsl::Dsa)
+- q_EVP_PKEY_set1_DSA(sslContext->pkey, reinterpret_cast<DSA *>(configuration.d->privateKey.handle()));
+-#ifndef OPENSSL_NO_EC
+- else if (configuration.d->privateKey.algorithm() == QSsl::Ec)
+- q_EVP_PKEY_set1_EC_KEY(sslContext->pkey, reinterpret_cast<EC_KEY *>(configuration.d->privateKey.handle()));
+-#endif
+- }
+-
+- if (!q_SSL_CTX_use_PrivateKey(sslContext->ctx, sslContext->pkey)) {
+- sslContext->errorStr = QSslSocket::tr("Error loading private key, %1").arg(QSslSocketBackendPrivate::getErrorsFromOpenSsl());
+- sslContext->errorCode = QSslError::UnspecifiedError;
+- return;
+- }
+- if (configuration.d->privateKey.algorithm() == QSsl::Opaque)
+- sslContext->pkey = 0; // Don't free the private key, it belongs to QSslKey
+-
+- // Check if the certificate matches the private key.
+- if (!q_SSL_CTX_check_private_key(sslContext->ctx)) {
+- sslContext->errorStr = QSslSocket::tr("Private key does not certify public key, %1").arg(QSslSocketBackendPrivate::getErrorsFromOpenSsl());
+- sslContext->errorCode = QSslError::UnspecifiedError;
+- return;
+- }
+-
+- // If we have any intermediate certificates then we need to add them to our chain
+- bool first = true;
+- for (const QSslCertificate &cert : qAsConst(configuration.d->localCertificateChain)) {
+- if (first) {
+- first = false;
+- continue;
+- }
+- q_SSL_CTX_ctrl(sslContext->ctx, SSL_CTRL_EXTRA_CHAIN_CERT, 0,
+- q_X509_dup(reinterpret_cast<X509 *>(cert.handle())));
+- }
+- }
+-
+- // Initialize peer verification.
+- if (sslContext->sslConfiguration.peerVerifyMode() == QSslSocket::VerifyNone) {
+- q_SSL_CTX_set_verify(sslContext->ctx, SSL_VERIFY_NONE, 0);
+- } else {
+- q_SSL_CTX_set_verify(sslContext->ctx, SSL_VERIFY_PEER, q_X509Callback);
+- }
+-
+- // Set verification depth.
+- if (sslContext->sslConfiguration.peerVerifyDepth() != 0)
+- q_SSL_CTX_set_verify_depth(sslContext->ctx, sslContext->sslConfiguration.peerVerifyDepth());
+-
+- // set persisted session if the user set it
+- if (!configuration.sessionTicket().isEmpty())
+- sslContext->setSessionASN1(configuration.sessionTicket());
+-
+- // Set temp DH params
+- QSslDiffieHellmanParameters dhparams = configuration.diffieHellmanParameters();
+-
+- if (!dhparams.isValid()) {
+- sslContext->errorStr = QSslSocket::tr("Diffie-Hellman parameters are not valid");
+- sslContext->errorCode = QSslError::UnspecifiedError;
+- return;
+- }
+-
+- if (!dhparams.isEmpty()) {
+- const QByteArray &params = dhparams.d->derData;
+- const char *ptr = params.constData();
+- DH *dh = q_d2i_DHparams(NULL, reinterpret_cast<const unsigned char **>(&ptr), params.length());
+- if (dh == NULL)
+- qFatal("q_d2i_DHparams failed to convert QSslDiffieHellmanParameters to DER form");
+- q_SSL_CTX_set_tmp_dh(sslContext->ctx, dh);
+- q_DH_free(dh);
+- }
+-
+-#ifndef OPENSSL_NO_EC
+-#if OPENSSL_VERSION_NUMBER >= 0x10002000L
+- if (q_SSLeay() >= 0x10002000L) {
+- q_SSL_CTX_ctrl(sslContext->ctx, SSL_CTRL_SET_ECDH_AUTO, 1, NULL);
+- } else
+-#endif
+- {
+- // Set temp ECDH params
+- EC_KEY *ecdh = 0;
+- ecdh = q_EC_KEY_new_by_curve_name(NID_X9_62_prime256v1);
+- q_SSL_CTX_set_tmp_ecdh(sslContext->ctx, ecdh);
+- q_EC_KEY_free(ecdh);
+- }
+-#endif // OPENSSL_NO_EC
+-
+-#if OPENSSL_VERSION_NUMBER >= 0x10001000L && !defined(OPENSSL_NO_PSK)
+- if (!client)
+- q_SSL_CTX_use_psk_identity_hint(sslContext->ctx, sslContext->sslConfiguration.preSharedKeyIdentityHint().constData());
+-#endif // OPENSSL_VERSION_NUMBER >= 0x10001000L && !defined(OPENSSL_NO_PSK)
+-
+- const QVector<QSslEllipticCurve> qcurves = sslContext->sslConfiguration.ellipticCurves();
+- if (!qcurves.isEmpty()) {
+-#if OPENSSL_VERSION_NUMBER >= 0x10002000L && !defined(OPENSSL_NO_EC)
+- // Set the curves to be used
+- if (q_SSLeay() >= 0x10002000L) {
+- // SSL_CTX_ctrl wants a non-const pointer as last argument,
+- // but let's avoid a copy into a temporary array
+- if (!q_SSL_CTX_ctrl(sslContext->ctx,
+- SSL_CTRL_SET_CURVES,
+- qcurves.size(),
+- const_cast<int *>(reinterpret_cast<const int *>(qcurves.data())))) {
+- sslContext->errorStr = msgErrorSettingEllipticCurves(QSslSocketBackendPrivate::getErrorsFromOpenSsl());
+- sslContext->errorCode = QSslError::UnspecifiedError;
+- }
+- } else
+-#endif // OPENSSL_VERSION_NUMBER >= 0x10002000L && !defined(OPENSSL_NO_EC)
+- {
+- // specific curves requested, but not possible to set -> error
+- sslContext->errorStr = msgErrorSettingEllipticCurves(QSslSocket::tr("OpenSSL version too old, need at least v1.0.2"));
+- sslContext->errorCode = QSslError::UnspecifiedError;
+- }
+- }
+-}
+-
+ QSslContext* QSslContext::fromConfiguration(QSslSocket::SslMode mode, const QSslConfiguration &configuration, bool allowRootCertOnDemandLoading)
+ {
+ QSslContext *sslContext = new QSslContext();
+@@ -463,7 +160,7 @@ SSL* QSslContext::createSsl()
+ m_npnContext.len = m_supportedNPNVersions.count();
+ m_npnContext.status = QSslConfiguration::NextProtocolNegotiationNone;
+ #if OPENSSL_VERSION_NUMBER >= 0x10002000L
+- if (q_SSLeay() >= 0x10002000L) {
++ if (QSslSocket::sslLibraryVersionNumber() >= 0x10002000L) {
+ // Callback's type has a parameter 'const unsigned char ** out'
+ // since it was introduced in 1.0.2. Internally, OpenSSL's own code
+ // (tests/examples) cast it to unsigned char * (since it's 'out').
+@@ -508,7 +205,7 @@ bool QSslContext::cacheSession(SSL* ssl)
+ unsigned char *data = reinterpret_cast<unsigned char *>(m_sessionASN1.data());
+ if (!q_i2d_SSL_SESSION(session, &data))
+ qCWarning(lcSsl, "could not store persistent version of SSL session");
+- m_sessionTicketLifeTimeHint = session->tlsext_tick_lifetime_hint;
++ m_sessionTicketLifeTimeHint = q_SSL_SESSION_get_ticket_lifetime_hint(session);
+ }
+ }
+
+Index: qtbase-opensource-src-5.9.2/src/network/ssl/qsslcontext_openssl11.cpp
+===================================================================
+--- /dev/null
++++ qtbase-opensource-src-5.9.2/src/network/ssl/qsslcontext_openssl11.cpp
+@@ -0,0 +1,277 @@
++/****************************************************************************
++**
++** Copyright (C) 2017 The Qt Company Ltd.
++** Copyright (C) 2014 BlackBerry Limited. All rights reserved.
++** Copyright (C) 2014 Governikus GmbH & Co. KG.
++** Copyright (C) 2016 Richard J. Moore <rich@kde.org>
++** Contact: https://www.qt.io/licensing/
++**
++** This file is part of the QtNetwork module of the Qt Toolkit.
++**
++** $QT_BEGIN_LICENSE:LGPL$
++** Commercial License Usage
++** Licensees holding valid commercial Qt licenses may use this file in
++** accordance with the commercial license agreement provided with the
++** Software or, alternatively, in accordance with the terms contained in
++** a written agreement between you and The Qt Company. For licensing terms
++** and conditions see https://www.qt.io/terms-conditions. For further
++** information use the contact form at https://www.qt.io/contact-us.
++**
++** GNU Lesser General Public License Usage
++** Alternatively, this file may be used under the terms of the GNU Lesser
++** General Public License version 3 as published by the Free Software
++** Foundation and appearing in the file LICENSE.LGPL3 included in the
++** packaging of this file. Please review the following information to
++** ensure the GNU Lesser General Public License version 3 requirements
++** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
++**
++** GNU General Public License Usage
++** Alternatively, this file may be used under the terms of the GNU
++** General Public License version 2.0 or (at your option) the GNU General
++** Public license version 3 or any later version approved by the KDE Free
++** Qt Foundation. The licenses are as published by the Free Software
++** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
++** included in the packaging of this file. Please review the following
++** information to ensure the GNU General Public License requirements will
++** be met: https://www.gnu.org/licenses/gpl-2.0.html and
++** https://www.gnu.org/licenses/gpl-3.0.html.
++**
++** $QT_END_LICENSE$
++**
++****************************************************************************/
++
++
++#include <QtNetwork/qsslsocket.h>
++#include <QtNetwork/qssldiffiehellmanparameters.h>
++
++#include "private/qssl_p.h"
++#include "private/qsslcontext_openssl_p.h"
++#include "private/qsslsocket_p.h"
++#include "private/qsslsocket_openssl_p.h"
++#include "private/qsslsocket_openssl_symbols_p.h"
++#include "private/qssldiffiehellmanparameters_p.h"
++
++#include <vector>
++
++QT_BEGIN_NAMESPACE
++
++// defined in qsslsocket_openssl.cpp:
++extern int q_X509Callback(int ok, X509_STORE_CTX *ctx);
++extern QString getErrorsFromOpenSsl();
++
++static inline QString msgErrorSettingEllipticCurves(const QString &why)
++{
++ return QSslSocket::tr("Error when setting the elliptic curves (%1)").arg(why);
++}
++
++// static
++void QSslContext::initSslContext(QSslContext *sslContext, QSslSocket::SslMode mode, const QSslConfiguration &configuration, bool allowRootCertOnDemandLoading)
++{
++ sslContext->sslConfiguration = configuration;
++ sslContext->errorCode = QSslError::NoError;
++
++ bool client = (mode == QSslSocket::SslClientMode);
++
++ bool reinitialized = false;
++ bool unsupportedProtocol = false;
++init_context:
++ if (sslContext->sslConfiguration.protocol() == QSsl::SslV2) {
++ // SSL 2 is no longer supported, but chosen deliberately -> error
++ sslContext->ctx = nullptr;
++ unsupportedProtocol = true;
++ } else {
++ // The ssl options will actually control the supported methods
++ sslContext->ctx = q_SSL_CTX_new(client ? q_TLS_client_method() : q_TLS_server_method());
++ }
++
++ if (!sslContext->ctx) {
++ // After stopping Flash 10 the SSL library loses its ciphers. Try re-adding them
++ // by re-initializing the library.
++ if (!reinitialized) {
++ reinitialized = true;
++ if (q_OPENSSL_init_ssl(0, nullptr) == 1)
++ goto init_context;
++ }
++
++ sslContext->errorStr = QSslSocket::tr("Error creating SSL context (%1)").arg(
++ unsupportedProtocol ? QSslSocket::tr("unsupported protocol") : QSslSocketBackendPrivate::getErrorsFromOpenSsl()
++ );
++ sslContext->errorCode = QSslError::UnspecifiedError;
++ return;
++ }
++
++ // Enable bug workarounds.
++ long options = QSslSocketBackendPrivate::setupOpenSslOptions(configuration.protocol(), configuration.d->sslOptions);
++ q_SSL_CTX_set_options(sslContext->ctx, options);
++
++ // Tell OpenSSL to release memory early
++ // http://www.openssl.org/docs/ssl/SSL_CTX_set_mode.html
++ q_SSL_CTX_set_mode(sslContext->ctx, SSL_MODE_RELEASE_BUFFERS);
++
++ // Initialize ciphers
++ QByteArray cipherString;
++ bool first = true;
++ QList<QSslCipher> ciphers = sslContext->sslConfiguration.ciphers();
++ if (ciphers.isEmpty())
++ ciphers = QSslSocketPrivate::defaultCiphers();
++ for (const QSslCipher &cipher : qAsConst(ciphers)) {
++ if (first)
++ first = false;
++ else
++ cipherString.append(':');
++ cipherString.append(cipher.name().toLatin1());
++ }
++
++ if (!q_SSL_CTX_set_cipher_list(sslContext->ctx, cipherString.data())) {
++ sslContext->errorStr = QSslSocket::tr("Invalid or empty cipher list (%1)").arg(QSslSocketBackendPrivate::getErrorsFromOpenSsl());
++ sslContext->errorCode = QSslError::UnspecifiedError;
++ return;
++ }
++
++ const QDateTime now = QDateTime::currentDateTimeUtc();
++
++ // Add all our CAs to this store.
++ const auto caCertificates = sslContext->sslConfiguration.caCertificates();
++ for (const QSslCertificate &caCertificate : caCertificates) {
++ // From https://www.openssl.org/docs/ssl/SSL_CTX_load_verify_locations.html:
++ //
++ // If several CA certificates matching the name, key identifier, and
++ // serial number condition are available, only the first one will be
++ // examined. This may lead to unexpected results if the same CA
++ // certificate is available with different expiration dates. If a
++ // ``certificate expired'' verification error occurs, no other
++ // certificate will be searched. Make sure to not have expired
++ // certificates mixed with valid ones.
++ //
++ // See also: QSslSocketBackendPrivate::verify()
++ if (caCertificate.expiryDate() >= now) {
++ q_X509_STORE_add_cert(q_SSL_CTX_get_cert_store(sslContext->ctx), (X509 *)caCertificate.handle());
++ }
++ }
++
++ if (QSslSocketPrivate::s_loadRootCertsOnDemand && allowRootCertOnDemandLoading) {
++ // tell OpenSSL the directories where to look up the root certs on demand
++ const QList<QByteArray> unixDirs = QSslSocketPrivate::unixRootCertDirectories();
++ for (const QByteArray &unixDir : unixDirs)
++ q_SSL_CTX_load_verify_locations(sslContext->ctx, nullptr, unixDir.constData());
++ }
++
++ if (!sslContext->sslConfiguration.localCertificate().isNull()) {
++ // Require a private key as well.
++ if (sslContext->sslConfiguration.privateKey().isNull()) {
++ sslContext->errorStr = QSslSocket::tr("Cannot provide a certificate with no key, %1").arg(QSslSocketBackendPrivate::getErrorsFromOpenSsl());
++ sslContext->errorCode = QSslError::UnspecifiedError;
++ return;
++ }
++
++ // Load certificate
++ if (!q_SSL_CTX_use_certificate(sslContext->ctx, (X509 *)sslContext->sslConfiguration.localCertificate().handle())) {
++ sslContext->errorStr = QSslSocket::tr("Error loading local certificate, %1").arg(QSslSocketBackendPrivate::getErrorsFromOpenSsl());
++ sslContext->errorCode = QSslError::UnspecifiedError;
++ return;
++ }
++
++ if (configuration.d->privateKey.algorithm() == QSsl::Opaque) {
++ sslContext->pkey = reinterpret_cast<EVP_PKEY *>(configuration.d->privateKey.handle());
++ } else {
++ // Load private key
++ sslContext->pkey = q_EVP_PKEY_new();
++ // before we were using EVP_PKEY_assign_R* functions and did not use EVP_PKEY_free.
++ // this lead to a memory leak. Now we use the *_set1_* functions which do not
++ // take ownership of the RSA/DSA key instance because the QSslKey already has ownership.
++ if (configuration.d->privateKey.algorithm() == QSsl::Rsa)
++ q_EVP_PKEY_set1_RSA(sslContext->pkey, reinterpret_cast<RSA *>(configuration.d->privateKey.handle()));
++ else if (configuration.d->privateKey.algorithm() == QSsl::Dsa)
++ q_EVP_PKEY_set1_DSA(sslContext->pkey, reinterpret_cast<DSA *>(configuration.d->privateKey.handle()));
++#ifndef OPENSSL_NO_EC
++ else if (configuration.d->privateKey.algorithm() == QSsl::Ec)
++ q_EVP_PKEY_set1_EC_KEY(sslContext->pkey, reinterpret_cast<EC_KEY *>(configuration.d->privateKey.handle()));
++#endif
++ }
++
++ if (!q_SSL_CTX_use_PrivateKey(sslContext->ctx, sslContext->pkey)) {
++ sslContext->errorStr = QSslSocket::tr("Error loading private key, %1").arg(QSslSocketBackendPrivate::getErrorsFromOpenSsl());
++ sslContext->errorCode = QSslError::UnspecifiedError;
++ return;
++ }
++ if (configuration.d->privateKey.algorithm() == QSsl::Opaque)
++ sslContext->pkey = nullptr; // Don't free the private key, it belongs to QSslKey
++
++ // Check if the certificate matches the private key.
++ if (!q_SSL_CTX_check_private_key(sslContext->ctx)) {
++ sslContext->errorStr = QSslSocket::tr("Private key does not certify public key, %1").arg(QSslSocketBackendPrivate::getErrorsFromOpenSsl());
++ sslContext->errorCode = QSslError::UnspecifiedError;
++ return;
++ }
++
++ // If we have any intermediate certificates then we need to add them to our chain
++ bool first = true;
++ for (const QSslCertificate &cert : qAsConst(configuration.d->localCertificateChain)) {
++ if (first) {
++ first = false;
++ continue;
++ }
++ q_SSL_CTX_ctrl(sslContext->ctx, SSL_CTRL_EXTRA_CHAIN_CERT, 0,
++ q_X509_dup(reinterpret_cast<X509 *>(cert.handle())));
++ }
++ }
++
++ // Initialize peer verification.
++ if (sslContext->sslConfiguration.peerVerifyMode() == QSslSocket::VerifyNone) {
++ q_SSL_CTX_set_verify(sslContext->ctx, SSL_VERIFY_NONE, nullptr);
++ } else {
++ q_SSL_CTX_set_verify(sslContext->ctx, SSL_VERIFY_PEER, q_X509Callback);
++ }
++
++ // Set verification depth.
++ if (sslContext->sslConfiguration.peerVerifyDepth() != 0)
++ q_SSL_CTX_set_verify_depth(sslContext->ctx, sslContext->sslConfiguration.peerVerifyDepth());
++
++ // set persisted session if the user set it
++ if (!configuration.sessionTicket().isEmpty())
++ sslContext->setSessionASN1(configuration.sessionTicket());
++
++ // Set temp DH params
++ QSslDiffieHellmanParameters dhparams = configuration.diffieHellmanParameters();
++
++ if (!dhparams.isValid()) {
++ sslContext->errorStr = QSslSocket::tr("Diffie-Hellman parameters are not valid");
++ sslContext->errorCode = QSslError::UnspecifiedError;
++ return;
++ }
++
++ if (!dhparams.isEmpty()) {
++ const QByteArray &params = dhparams.d->derData;
++ const char *ptr = params.constData();
++ DH *dh = q_d2i_DHparams(NULL, reinterpret_cast<const unsigned char **>(&ptr), params.length());
++ if (dh == NULL)
++ qFatal("q_d2i_DHparams failed to convert QSslDiffieHellmanParameters to DER form");
++ q_SSL_CTX_set_tmp_dh(sslContext->ctx, dh);
++ q_DH_free(dh);
++ }
++
++#ifndef OPENSSL_NO_PSK
++ if (!client)
++ q_SSL_CTX_use_psk_identity_hint(sslContext->ctx, sslContext->sslConfiguration.preSharedKeyIdentityHint().constData());
++#endif // !OPENSSL_NO_PSK
++
++ const QVector<QSslEllipticCurve> qcurves = sslContext->sslConfiguration.ellipticCurves();
++ if (!qcurves.isEmpty()) {
++#ifdef OPENSSL_NO_EC
++ sslContext->errorStr = msgErrorSettingEllipticCurves(QSslSocket::tr("OpenSSL version with disabled elliptic curves"));
++ sslContext->errorCode = QSslError::UnspecifiedError;
++#else
++ // Set the curves to be used.
++ std::vector<int> curves;
++ curves.reserve(qcurves.size());
++ for (const auto &sslCurve : qcurves)
++ curves.push_back(sslCurve.id);
++ if (!q_SSL_CTX_ctrl(sslContext->ctx, SSL_CTRL_SET_CURVES, long(curves.size()), &curves[0])) {
++ sslContext->errorStr = msgErrorSettingEllipticCurves(QSslSocketBackendPrivate::getErrorsFromOpenSsl());
++ sslContext->errorCode = QSslError::UnspecifiedError;
++ }
++#endif
++ }
++}
++
++QT_END_NAMESPACE
+Index: qtbase-opensource-src-5.9.2/src/network/ssl/qsslcontext_opensslpre11.cpp
+===================================================================
+--- /dev/null
++++ qtbase-opensource-src-5.9.2/src/network/ssl/qsslcontext_opensslpre11.cpp
+@@ -0,0 +1,354 @@
++/****************************************************************************
++**
++** Copyright (C) 2017 The Qt Company Ltd.
++** Copyright (C) 2014 BlackBerry Limited. All rights reserved.
++** Copyright (C) 2014 Governikus GmbH & Co. KG.
++** Contact: https://www.qt.io/licensing/
++**
++** This file is part of the QtNetwork module of the Qt Toolkit.
++**
++** $QT_BEGIN_LICENSE:LGPL$
++** Commercial License Usage
++** Licensees holding valid commercial Qt licenses may use this file in
++** accordance with the commercial license agreement provided with the
++** Software or, alternatively, in accordance with the terms contained in
++** a written agreement between you and The Qt Company. For licensing terms
++** and conditions see https://www.qt.io/terms-conditions. For further
++** information use the contact form at https://www.qt.io/contact-us.
++**
++** GNU Lesser General Public License Usage
++** Alternatively, this file may be used under the terms of the GNU Lesser
++** General Public License version 3 as published by the Free Software
++** Foundation and appearing in the file LICENSE.LGPL3 included in the
++** packaging of this file. Please review the following information to
++** ensure the GNU Lesser General Public License version 3 requirements
++** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
++**
++** GNU General Public License Usage
++** Alternatively, this file may be used under the terms of the GNU
++** General Public License version 2.0 or (at your option) the GNU General
++** Public license version 3 or any later version approved by the KDE Free
++** Qt Foundation. The licenses are as published by the Free Software
++** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
++** included in the packaging of this file. Please review the following
++** information to ensure the GNU General Public License requirements will
++** be met: https://www.gnu.org/licenses/gpl-2.0.html and
++** https://www.gnu.org/licenses/gpl-3.0.html.
++**
++** $QT_END_LICENSE$
++**
++****************************************************************************/
++
++
++#include <QtNetwork/qsslsocket.h>
++#include <QtNetwork/qssldiffiehellmanparameters.h>
++
++#include "private/qssl_p.h"
++#include "private/qsslcontext_openssl_p.h"
++#include "private/qsslsocket_p.h"
++#include "private/qsslsocket_openssl_p.h"
++#include "private/qsslsocket_openssl_symbols_p.h"
++#include "private/qssldiffiehellmanparameters_p.h"
++
++QT_BEGIN_NAMESPACE
++
++// defined in qsslsocket_openssl.cpp:
++extern int q_X509Callback(int ok, X509_STORE_CTX *ctx);
++extern QString getErrorsFromOpenSsl();
++
++static inline QString msgErrorSettingEllipticCurves(const QString &why)
++{
++ return QSslSocket::tr("Error when setting the elliptic curves (%1)").arg(why);
++}
++
++// static
++void QSslContext::initSslContext(QSslContext *sslContext, QSslSocket::SslMode mode, const QSslConfiguration &configuration, bool allowRootCertOnDemandLoading)
++{
++ sslContext->sslConfiguration = configuration;
++ sslContext->errorCode = QSslError::NoError;
++
++ bool client = (mode == QSslSocket::SslClientMode);
++
++ bool reinitialized = false;
++ bool unsupportedProtocol = false;
++init_context:
++ switch (sslContext->sslConfiguration.protocol()) {
++ case QSsl::SslV2:
++#ifndef OPENSSL_NO_SSL2
++ sslContext->ctx = q_SSL_CTX_new(client ? q_SSLv2_client_method() : q_SSLv2_server_method());
++#else
++ // SSL 2 not supported by the system, but chosen deliberately -> error
++ sslContext->ctx = 0;
++ unsupportedProtocol = true;
++#endif
++ break;
++ case QSsl::SslV3:
++#ifndef OPENSSL_NO_SSL3_METHOD
++ sslContext->ctx = q_SSL_CTX_new(client ? q_SSLv3_client_method() : q_SSLv3_server_method());
++#else
++ // SSL 3 not supported by the system, but chosen deliberately -> error
++ sslContext->ctx = 0;
++ unsupportedProtocol = true;
++#endif
++ break;
++ case QSsl::SecureProtocols:
++ // SSLv2 and SSLv3 will be disabled by SSL options
++ // But we need q_SSLv23_server_method() otherwise AnyProtocol will be unable to connect on Win32.
++ case QSsl::TlsV1SslV3:
++ // SSLv2 will will be disabled by SSL options
++ case QSsl::AnyProtocol:
++ default:
++ sslContext->ctx = q_SSL_CTX_new(client ? q_SSLv23_client_method() : q_SSLv23_server_method());
++ break;
++ case QSsl::TlsV1_0:
++ sslContext->ctx = q_SSL_CTX_new(client ? q_TLSv1_client_method() : q_TLSv1_server_method());
++ break;
++ case QSsl::TlsV1_1:
++#if OPENSSL_VERSION_NUMBER >= 0x10001000L
++ sslContext->ctx = q_SSL_CTX_new(client ? q_TLSv1_1_client_method() : q_TLSv1_1_server_method());
++#else
++ // TLS 1.1 not supported by the system, but chosen deliberately -> error
++ sslContext->ctx = 0;
++ unsupportedProtocol = true;
++#endif
++ break;
++ case QSsl::TlsV1_2:
++#if OPENSSL_VERSION_NUMBER >= 0x10001000L
++ sslContext->ctx = q_SSL_CTX_new(client ? q_TLSv1_2_client_method() : q_TLSv1_2_server_method());
++#else
++ // TLS 1.2 not supported by the system, but chosen deliberately -> error
++ sslContext->ctx = 0;
++ unsupportedProtocol = true;
++#endif
++ break;
++ case QSsl::TlsV1_0OrLater:
++ // Specific protocols will be specified via SSL options.
++ sslContext->ctx = q_SSL_CTX_new(client ? q_SSLv23_client_method() : q_SSLv23_server_method());
++ break;
++ case QSsl::TlsV1_1OrLater:
++ case QSsl::TlsV1_2OrLater:
++#if OPENSSL_VERSION_NUMBER >= 0x10001000L
++ // Specific protocols will be specified via SSL options.
++ sslContext->ctx = q_SSL_CTX_new(client ? q_SSLv23_client_method() : q_SSLv23_server_method());
++#else
++ // TLS 1.1/1.2 not supported by the system, but chosen deliberately -> error
++ sslContext->ctx = 0;
++ unsupportedProtocol = true;
++#endif
++ break;
++ }
++
++ if (!sslContext->ctx) {
++ // After stopping Flash 10 the SSL library loses its ciphers. Try re-adding them
++ // by re-initializing the library.
++ if (!reinitialized) {
++ reinitialized = true;
++ if (q_SSL_library_init() == 1)
++ goto init_context;
++ }
++
++ sslContext->errorStr = QSslSocket::tr("Error creating SSL context (%1)").arg(
++ unsupportedProtocol ? QSslSocket::tr("unsupported protocol") : QSslSocketBackendPrivate::getErrorsFromOpenSsl()
++ );
++ sslContext->errorCode = QSslError::UnspecifiedError;
++ return;
++ }
++
++ // Enable bug workarounds.
++ long options = QSslSocketBackendPrivate::setupOpenSslOptions(configuration.protocol(), configuration.d->sslOptions);
++ q_SSL_CTX_set_options(sslContext->ctx, options);
++
++#if OPENSSL_VERSION_NUMBER >= 0x10000000L
++ // Tell OpenSSL to release memory early
++ // http://www.openssl.org/docs/ssl/SSL_CTX_set_mode.html
++ if (q_SSLeay() >= 0x10000000L)
++ q_SSL_CTX_set_mode(sslContext->ctx, SSL_MODE_RELEASE_BUFFERS);
++#endif
++
++ // Initialize ciphers
++ QByteArray cipherString;
++ bool first = true;
++ QList<QSslCipher> ciphers = sslContext->sslConfiguration.ciphers();
++ if (ciphers.isEmpty())
++ ciphers = QSslSocketPrivate::defaultCiphers();
++ for (const QSslCipher &cipher : qAsConst(ciphers)) {
++ if (first)
++ first = false;
++ else
++ cipherString.append(':');
++ cipherString.append(cipher.name().toLatin1());
++ }
++
++ if (!q_SSL_CTX_set_cipher_list(sslContext->ctx, cipherString.data())) {
++ sslContext->errorStr = QSslSocket::tr("Invalid or empty cipher list (%1)").arg(QSslSocketBackendPrivate::getErrorsFromOpenSsl());
++ sslContext->errorCode = QSslError::UnspecifiedError;
++ return;
++ }
++
++ const QDateTime now = QDateTime::currentDateTimeUtc();
++
++ // Add all our CAs to this store.
++ const auto caCertificates = sslContext->sslConfiguration.caCertificates();
++ for (const QSslCertificate &caCertificate : caCertificates) {
++ // From https://www.openssl.org/docs/ssl/SSL_CTX_load_verify_locations.html:
++ //
++ // If several CA certificates matching the name, key identifier, and
++ // serial number condition are available, only the first one will be
++ // examined. This may lead to unexpected results if the same CA
++ // certificate is available with different expiration dates. If a
++ // ``certificate expired'' verification error occurs, no other
++ // certificate will be searched. Make sure to not have expired
++ // certificates mixed with valid ones.
++ //
++ // See also: QSslSocketBackendPrivate::verify()
++ if (caCertificate.expiryDate() >= now) {
++ q_X509_STORE_add_cert(q_SSL_CTX_get_cert_store(sslContext->ctx), (X509 *)caCertificate.handle());
++ }
++ }
++
++ if (QSslSocketPrivate::s_loadRootCertsOnDemand && allowRootCertOnDemandLoading) {
++ // tell OpenSSL the directories where to look up the root certs on demand
++ const QList<QByteArray> unixDirs = QSslSocketPrivate::unixRootCertDirectories();
++ for (const QByteArray &unixDir : unixDirs)
++ q_SSL_CTX_load_verify_locations(sslContext->ctx, 0, unixDir.constData());
++ }
++
++ if (!sslContext->sslConfiguration.localCertificate().isNull()) {
++ // Require a private key as well.
++ if (sslContext->sslConfiguration.privateKey().isNull()) {
++ sslContext->errorStr = QSslSocket::tr("Cannot provide a certificate with no key, %1").arg(QSslSocketBackendPrivate::getErrorsFromOpenSsl());
++ sslContext->errorCode = QSslError::UnspecifiedError;
++ return;
++ }
++
++ // Load certificate
++ if (!q_SSL_CTX_use_certificate(sslContext->ctx, (X509 *)sslContext->sslConfiguration.localCertificate().handle())) {
++ sslContext->errorStr = QSslSocket::tr("Error loading local certificate, %1").arg(QSslSocketBackendPrivate::getErrorsFromOpenSsl());
++ sslContext->errorCode = QSslError::UnspecifiedError;
++ return;
++ }
++
++ if (configuration.d->privateKey.algorithm() == QSsl::Opaque) {
++ sslContext->pkey = reinterpret_cast<EVP_PKEY *>(configuration.d->privateKey.handle());
++ } else {
++ // Load private key
++ sslContext->pkey = q_EVP_PKEY_new();
++ // before we were using EVP_PKEY_assign_R* functions and did not use EVP_PKEY_free.
++ // this lead to a memory leak. Now we use the *_set1_* functions which do not
++ // take ownership of the RSA/DSA key instance because the QSslKey already has ownership.
++ if (configuration.d->privateKey.algorithm() == QSsl::Rsa)
++ q_EVP_PKEY_set1_RSA(sslContext->pkey, reinterpret_cast<RSA *>(configuration.d->privateKey.handle()));
++ else if (configuration.d->privateKey.algorithm() == QSsl::Dsa)
++ q_EVP_PKEY_set1_DSA(sslContext->pkey, reinterpret_cast<DSA *>(configuration.d->privateKey.handle()));
++#ifndef OPENSSL_NO_EC
++ else if (configuration.d->privateKey.algorithm() == QSsl::Ec)
++ q_EVP_PKEY_set1_EC_KEY(sslContext->pkey, reinterpret_cast<EC_KEY *>(configuration.d->privateKey.handle()));
++#endif
++ }
++
++ if (!q_SSL_CTX_use_PrivateKey(sslContext->ctx, sslContext->pkey)) {
++ sslContext->errorStr = QSslSocket::tr("Error loading private key, %1").arg(QSslSocketBackendPrivate::getErrorsFromOpenSsl());
++ sslContext->errorCode = QSslError::UnspecifiedError;
++ return;
++ }
++ if (configuration.d->privateKey.algorithm() == QSsl::Opaque)
++ sslContext->pkey = 0; // Don't free the private key, it belongs to QSslKey
++
++ // Check if the certificate matches the private key.
++ if (!q_SSL_CTX_check_private_key(sslContext->ctx)) {
++ sslContext->errorStr = QSslSocket::tr("Private key does not certify public key, %1").arg(QSslSocketBackendPrivate::getErrorsFromOpenSsl());
++ sslContext->errorCode = QSslError::UnspecifiedError;
++ return;
++ }
++
++ // If we have any intermediate certificates then we need to add them to our chain
++ bool first = true;
++ for (const QSslCertificate &cert : qAsConst(configuration.d->localCertificateChain)) {
++ if (first) {
++ first = false;
++ continue;
++ }
++ q_SSL_CTX_ctrl(sslContext->ctx, SSL_CTRL_EXTRA_CHAIN_CERT, 0,
++ q_X509_dup(reinterpret_cast<X509 *>(cert.handle())));
++ }
++ }
++
++ // Initialize peer verification.
++ if (sslContext->sslConfiguration.peerVerifyMode() == QSslSocket::VerifyNone) {
++ q_SSL_CTX_set_verify(sslContext->ctx, SSL_VERIFY_NONE, 0);
++ } else {
++ q_SSL_CTX_set_verify(sslContext->ctx, SSL_VERIFY_PEER, q_X509Callback);
++ }
++
++ // Set verification depth.
++ if (sslContext->sslConfiguration.peerVerifyDepth() != 0)
++ q_SSL_CTX_set_verify_depth(sslContext->ctx, sslContext->sslConfiguration.peerVerifyDepth());
++
++ // set persisted session if the user set it
++ if (!configuration.sessionTicket().isEmpty())
++ sslContext->setSessionASN1(configuration.sessionTicket());
++
++ // Set temp DH params
++ QSslDiffieHellmanParameters dhparams = configuration.diffieHellmanParameters();
++
++ if (!dhparams.isValid()) {
++ sslContext->errorStr = QSslSocket::tr("Diffie-Hellman parameters are not valid");
++ sslContext->errorCode = QSslError::UnspecifiedError;
++ return;
++ }
++
++ if (!dhparams.isEmpty()) {
++ const QByteArray &params = dhparams.d->derData;
++ const char *ptr = params.constData();
++ DH *dh = q_d2i_DHparams(NULL, reinterpret_cast<const unsigned char **>(&ptr), params.length());
++ if (dh == NULL)
++ qFatal("q_d2i_DHparams failed to convert QSslDiffieHellmanParameters to DER form");
++ q_SSL_CTX_set_tmp_dh(sslContext->ctx, dh);
++ q_DH_free(dh);
++ }
++
++#ifndef OPENSSL_NO_EC
++#if OPENSSL_VERSION_NUMBER >= 0x10002000L
++ if (q_SSLeay() >= 0x10002000L) {
++ q_SSL_CTX_ctrl(sslContext->ctx, SSL_CTRL_SET_ECDH_AUTO, 1, NULL);
++ } else
++#endif
++ {
++ // Set temp ECDH params
++ EC_KEY *ecdh = 0;
++ ecdh = q_EC_KEY_new_by_curve_name(NID_X9_62_prime256v1);
++ q_SSL_CTX_set_tmp_ecdh(sslContext->ctx, ecdh);
++ q_EC_KEY_free(ecdh);
++ }
++#endif // OPENSSL_NO_EC
++
++#if OPENSSL_VERSION_NUMBER >= 0x10001000L && !defined(OPENSSL_NO_PSK)
++ if (!client)
++ q_SSL_CTX_use_psk_identity_hint(sslContext->ctx, sslContext->sslConfiguration.preSharedKeyIdentityHint().constData());
++#endif // OPENSSL_VERSION_NUMBER >= 0x10001000L && !defined(OPENSSL_NO_PSK)
++
++ const QVector<QSslEllipticCurve> qcurves = sslContext->sslConfiguration.ellipticCurves();
++ if (!qcurves.isEmpty()) {
++#if OPENSSL_VERSION_NUMBER >= 0x10002000L && !defined(OPENSSL_NO_EC)
++ // Set the curves to be used
++ if (q_SSLeay() >= 0x10002000L) {
++ // SSL_CTX_ctrl wants a non-const pointer as last argument,
++ // but let's avoid a copy into a temporary array
++ if (!q_SSL_CTX_ctrl(sslContext->ctx,
++ SSL_CTRL_SET_CURVES,
++ qcurves.size(),
++ const_cast<int *>(reinterpret_cast<const int *>(qcurves.data())))) {
++ sslContext->errorStr = msgErrorSettingEllipticCurves(QSslSocketBackendPrivate::getErrorsFromOpenSsl());
++ sslContext->errorCode = QSslError::UnspecifiedError;
++ }
++ } else
++#endif // OPENSSL_VERSION_NUMBER >= 0x10002000L && !defined(OPENSSL_NO_EC)
++ {
++ // specific curves requested, but not possible to set -> error
++ sslContext->errorStr = msgErrorSettingEllipticCurves(QSslSocket::tr("OpenSSL version too old, need at least v1.0.2"));
++ sslContext->errorCode = QSslError::UnspecifiedError;
++ }
++ }
++}
++
++QT_END_NAMESPACE
+Index: qtbase-opensource-src-5.9.2/src/network/ssl/qssldiffiehellmanparameters_openssl.cpp
+===================================================================
+--- qtbase-opensource-src-5.9.2.orig/src/network/ssl/qssldiffiehellmanparameters_openssl.cpp
++++ qtbase-opensource-src-5.9.2/src/network/ssl/qssldiffiehellmanparameters_openssl.cpp
+@@ -1,6 +1,7 @@
+ /****************************************************************************
+ **
+ ** Copyright (C) 2015 Mikkel Krautz <mikkel@krautz.dk>
++** Copyright (C) 2016 Richard J. Moore <rich@kde.org>
+ ** Contact: https://www.qt.io/licensing/
+ **
+ ** This file is part of the QtNetwork module of the Qt Toolkit.
+@@ -50,8 +51,8 @@
+ #include <QtCore/qdebug.h>
+ #endif
+
+-// For q_BN_is_word.
+ #include <openssl/bn.h>
++#include <openssl/dh.h>
+
+ QT_BEGIN_NAMESPACE
+
+@@ -62,13 +63,6 @@ static bool isSafeDH(DH *dh)
+
+ QSslSocketPrivate::ensureInitialized();
+
+- // Mark p < 1024 bits as unsafe.
+- if (q_BN_num_bits(dh->p) < 1024) {
+- return false;
+- }
+-
+- if (q_DH_check(dh, &status) != 1)
+- return false;
+
+ // From https://wiki.openssl.org/index.php/Diffie-Hellman_parameters:
+ //
+@@ -81,11 +75,39 @@ static bool isSafeDH(DH *dh)
+ // Without the test, the IETF parameters would
+ // fail validation. For details, see Diffie-Hellman
+ // Parameter Check (when g = 2, must p mod 24 == 11?).
++#if QT_CONFIG(opensslv11)
++ // Mark p < 1024 bits as unsafe.
++ if (q_DH_bits(dh) < 1024)
++ return false;
++
++ if (q_DH_check(dh, &status) != 1)
++ return false;
++
++ const BIGNUM *p = nullptr;
++ const BIGNUM *q = nullptr;
++ const BIGNUM *g = nullptr;
++ q_DH_get0_pqg(dh, &p, &q, &g);
++
++ if (q_BN_is_word(const_cast<BIGNUM *>(g), DH_GENERATOR_2)) {
++ long residue = q_BN_mod_word(p, 24);
++ if (residue == 11 || residue == 23)
++ status &= ~DH_NOT_SUITABLE_GENERATOR;
++ }
++
++#else
++ // Mark p < 1024 bits as unsafe.
++ if (q_BN_num_bits(dh->p) < 1024)
++ return false;
++
++ if (q_DH_check(dh, &status) != 1)
++ return false;
++
+ if (q_BN_is_word(dh->g, DH_GENERATOR_2)) {
+ long residue = q_BN_mod_word(dh->p, 24);
+ if (residue == 11 || residue == 23)
+ status &= ~DH_NOT_SUITABLE_GENERATOR;
+ }
++#endif
+
+ bad |= DH_CHECK_P_NOT_PRIME;
+ bad |= DH_CHECK_P_NOT_SAFE_PRIME;
+Index: qtbase-opensource-src-5.9.2/src/network/ssl/qsslellipticcurve.h
+===================================================================
+--- qtbase-opensource-src-5.9.2.orig/src/network/ssl/qsslellipticcurve.h
++++ qtbase-opensource-src-5.9.2/src/network/ssl/qsslellipticcurve.h
+@@ -80,6 +80,7 @@ private:
+ friend Q_DECL_CONSTEXPR bool operator==(QSslEllipticCurve lhs, QSslEllipticCurve rhs) Q_DECL_NOTHROW;
+ friend Q_DECL_CONSTEXPR uint qHash(QSslEllipticCurve curve, uint seed) Q_DECL_NOTHROW;
+
++ friend class QSslContext;
+ friend class QSslSocketPrivate;
+ friend class QSslSocketBackendPrivate;
+ };
+Index: qtbase-opensource-src-5.9.2/src/network/ssl/qsslellipticcurve_openssl.cpp
+===================================================================
+--- qtbase-opensource-src-5.9.2.orig/src/network/ssl/qsslellipticcurve_openssl.cpp
++++ qtbase-opensource-src-5.9.2/src/network/ssl/qsslellipticcurve_openssl.cpp
+@@ -1,6 +1,7 @@
+ /****************************************************************************
+ **
+ ** Copyright (C) 2014 Governikus GmbH & Co. KG.
++** Copyright (C) 2016 Richard J. Moore <rich@kde.org>
+ ** Contact: https://www.qt.io/licensing/
+ **
+ ** This file is part of the QtNetwork module of the Qt Toolkit.
+@@ -78,17 +79,18 @@ QSslEllipticCurve QSslEllipticCurve::fro
+ QSslEllipticCurve result;
+
+ #ifndef OPENSSL_NO_EC
+- const QByteArray curveNameLatin1 = name.toLatin1();
+
++ const QByteArray curveNameLatin1 = name.toLatin1();
+ int nid = q_OBJ_sn2nid(curveNameLatin1.data());
+
+ #if OPENSSL_VERSION_NUMBER >= 0x10002000L
+- if (nid == 0 && q_SSLeay() >= 0x10002000L)
++ if (nid == 0 && QSslSocket::sslLibraryVersionNumber() >= 0x10002000L)
+ nid = q_EC_curve_nist2nid(curveNameLatin1.data());
+ #endif // OPENSSL_VERSION_NUMBER >= 0x10002000L
+
+ result.id = nid;
+-#endif
++
++#endif // !OPENSSL_NO_EC
+
+ return result;
+ }
+Index: qtbase-opensource-src-5.9.2/src/network/ssl/qsslkey_openssl.cpp
+===================================================================
+--- qtbase-opensource-src-5.9.2.orig/src/network/ssl/qsslkey_openssl.cpp
++++ qtbase-opensource-src-5.9.2/src/network/ssl/qsslkey_openssl.cpp
+@@ -1,6 +1,7 @@
+ /****************************************************************************
+ **
+-** Copyright (C) 2016 The Qt Company Ltd.
++** Copyright (C) 2017 The Qt Company Ltd.
++** Copyright (C) 2016 Richard J. Moore <rich@kde.org>
+ ** Contact: https://www.qt.io/licensing/
+ **
+ ** This file is part of the QtNetwork module of the Qt Toolkit.
+@@ -87,33 +88,30 @@ bool QSslKeyPrivate::fromEVP_PKEY(EVP_PK
+ if (pkey == nullptr)
+ return false;
+
+- if (pkey->type == EVP_PKEY_RSA) {
++#if QT_CONFIG(opensslv11)
++ const int keyType = q_EVP_PKEY_type(q_EVP_PKEY_base_id(pkey));
++#else
++ const int keyType = pkey->type;
++#endif
++ if (keyType == EVP_PKEY_RSA) {
+ isNull = false;
+ algorithm = QSsl::Rsa;
+ type = QSsl::PrivateKey;
+-
+- rsa = q_RSA_new();
+- memcpy(rsa, q_EVP_PKEY_get1_RSA(pkey), sizeof(RSA));
+-
++ rsa = q_EVP_PKEY_get1_RSA(pkey);
+ return true;
+- }
+- else if (pkey->type == EVP_PKEY_DSA) {
++ } else if (keyType == EVP_PKEY_DSA) {
+ isNull = false;
+ algorithm = QSsl::Dsa;
+ type = QSsl::PrivateKey;
+-
+- dsa = q_DSA_new();
+- memcpy(dsa, q_EVP_PKEY_get1_DSA(pkey), sizeof(DSA));
+-
++ dsa = q_EVP_PKEY_get1_DSA(pkey);
+ return true;
+ }
+ #ifndef OPENSSL_NO_EC
+- else if (pkey->type == EVP_PKEY_EC) {
++ else if (keyType == EVP_PKEY_EC) {
+ isNull = false;
+ algorithm = QSsl::Ec;
+ type = QSsl::PrivateKey;
+- ec = q_EC_KEY_dup(q_EVP_PKEY_get1_EC_KEY(pkey));
+-
++ ec = q_EVP_PKEY_get1_EC_KEY(pkey);
+ return true;
+ }
+ #endif
+@@ -181,8 +179,8 @@ int QSslKeyPrivate::length() const
+ return -1;
+
+ switch (algorithm) {
+- case QSsl::Rsa: return q_BN_num_bits(rsa->n);
+- case QSsl::Dsa: return q_BN_num_bits(dsa->p);
++ case QSsl::Rsa: return q_RSA_bits(rsa);
++ case QSsl::Dsa: return q_DSA_bits(dsa);
+ #ifndef OPENSSL_NO_EC
+ case QSsl::Ec: return q_EC_GROUP_get_degree(q_EC_KEY_get0_group(ec));
+ #endif
+@@ -276,7 +274,13 @@ Qt::HANDLE QSslKeyPrivate::handle() cons
+
+ static QByteArray doCrypt(QSslKeyPrivate::Cipher cipher, const QByteArray &data, const QByteArray &key, const QByteArray &iv, int enc)
+ {
+- EVP_CIPHER_CTX ctx;
++#if QT_CONFIG(opensslv11)
++ EVP_CIPHER_CTX *ctx = q_EVP_CIPHER_CTX_new();
++#else
++ EVP_CIPHER_CTX evpCipherContext;
++ EVP_CIPHER_CTX *ctx = &evpCipherContext;
++#endif
++
+ const EVP_CIPHER* type = 0;
+ int i = 0, len = 0;
+
+@@ -294,21 +298,44 @@ static QByteArray doCrypt(QSslKeyPrivate
+
+ QByteArray output;
+ output.resize(data.size() + EVP_MAX_BLOCK_LENGTH);
+- q_EVP_CIPHER_CTX_init(&ctx);
+- q_EVP_CipherInit(&ctx, type, NULL, NULL, enc);
+- q_EVP_CIPHER_CTX_set_key_length(&ctx, key.size());
++
++#if QT_CONFIG(opensslv11)
++ q_EVP_CIPHER_CTX_reset(ctx);
++#else
++ q_EVP_CIPHER_CTX_init(ctx);
++#endif
++
++ q_EVP_CipherInit(ctx, type, NULL, NULL, enc);
++ q_EVP_CIPHER_CTX_set_key_length(ctx, key.size());
+ if (cipher == QSslKeyPrivate::Rc2Cbc)
+- q_EVP_CIPHER_CTX_ctrl(&ctx, EVP_CTRL_SET_RC2_KEY_BITS, 8 * key.size(), NULL);
+- q_EVP_CipherInit(&ctx, NULL,
++ q_EVP_CIPHER_CTX_ctrl(ctx, EVP_CTRL_SET_RC2_KEY_BITS, 8 * key.size(), NULL);
++
++#if QT_CONFIG(opensslv11)
++ // EVP_CipherInit in 1.1 resets the context thus making the calls above useless.
++ // We call EVP_CipherInit_ex instead.
++ q_EVP_CipherInit_ex(ctx, nullptr, nullptr,
++ reinterpret_cast<const unsigned char *>(key.constData()),
++ reinterpret_cast<const unsigned char *>(iv.constData()),
++ enc);
++#else
++ q_EVP_CipherInit(ctx, NULL,
+ reinterpret_cast<const unsigned char *>(key.constData()),
+ reinterpret_cast<const unsigned char *>(iv.constData()), enc);
+- q_EVP_CipherUpdate(&ctx,
++#endif // opensslv11
++
++ q_EVP_CipherUpdate(ctx,
+ reinterpret_cast<unsigned char *>(output.data()), &len,
+ reinterpret_cast<const unsigned char *>(data.constData()), data.size());
+- q_EVP_CipherFinal(&ctx,
++ q_EVP_CipherFinal(ctx,
+ reinterpret_cast<unsigned char *>(output.data()) + len, &i);
+ len += i;
+- q_EVP_CIPHER_CTX_cleanup(&ctx);
++
++#if QT_CONFIG(opensslv11)
++ q_EVP_CIPHER_CTX_reset(ctx);
++ q_EVP_CIPHER_CTX_free(ctx);
++#else
++ q_EVP_CIPHER_CTX_cleanup(ctx);
++#endif
+
+ return output.left(len);
+ }
+Index: qtbase-opensource-src-5.9.2/src/network/ssl/qsslsocket_openssl.cpp
+===================================================================
+--- qtbase-opensource-src-5.9.2.orig/src/network/ssl/qsslsocket_openssl.cpp
++++ qtbase-opensource-src-5.9.2/src/network/ssl/qsslsocket_openssl.cpp
+@@ -1,6 +1,6 @@
+ /****************************************************************************
+ **
+-** Copyright (C) 2016 The Qt Company Ltd.
++** Copyright (C) 2017 The Qt Company Ltd.
+ ** Copyright (C) 2014 Governikus GmbH & Co. KG
+ ** Contact: https://www.qt.io/licensing/
+ **
+@@ -97,70 +97,6 @@ bool QSslSocketPrivate::s_loadRootCertsO
+ int QSslSocketBackendPrivate::s_indexForSSLExtraData = -1;
+ #endif
+
+-/* \internal
+-
+- From OpenSSL's thread(3) manual page:
+-
+- OpenSSL can safely be used in multi-threaded applications provided that at
+- least two callback functions are set.
+-
+- locking_function(int mode, int n, const char *file, int line) is needed to
+- perform locking on shared data structures. (Note that OpenSSL uses a
+- number of global data structures that will be implicitly shared
+- whenever multiple threads use OpenSSL.) Multi-threaded
+- applications will crash at random if it is not set. ...
+- ...
+- id_function(void) is a function that returns a thread ID. It is not
+- needed on Windows nor on platforms where getpid() returns a different
+- ID for each thread (most notably Linux)
+-*/
+-class QOpenSslLocks
+-{
+-public:
+- inline QOpenSslLocks()
+- : initLocker(QMutex::Recursive),
+- locksLocker(QMutex::Recursive)
+- {
+- QMutexLocker locker(&locksLocker);
+- int numLocks = q_CRYPTO_num_locks();
+- locks = new QMutex *[numLocks];
+- memset(locks, 0, numLocks * sizeof(QMutex *));
+- }
+- inline ~QOpenSslLocks()
+- {
+- QMutexLocker locker(&locksLocker);
+- for (int i = 0; i < q_CRYPTO_num_locks(); ++i)
+- delete locks[i];
+- delete [] locks;
+-
+- QSslSocketPrivate::deinitialize();
+- }
+- inline QMutex *lock(int num)
+- {
+- QMutexLocker locker(&locksLocker);
+- QMutex *tmp = locks[num];
+- if (!tmp)
+- tmp = locks[num] = new QMutex(QMutex::Recursive);
+- return tmp;
+- }
+-
+- QMutex *globalLock()
+- {
+- return &locksLocker;
+- }
+-
+- QMutex *initLock()
+- {
+- return &initLocker;
+- }
+-
+-private:
+- QMutex initLocker;
+- QMutex locksLocker;
+- QMutex **locks;
+-};
+-Q_GLOBAL_STATIC(QOpenSslLocks, openssl_locks)
+-
+ QString QSslSocketBackendPrivate::getErrorsFromOpenSsl()
+ {
+ QString errorString;
+@@ -175,20 +111,6 @@ QString QSslSocketBackendPrivate::getErr
+ }
+
+ extern "C" {
+-static void locking_function(int mode, int lockNumber, const char *, int)
+-{
+- QMutex *mutex = openssl_locks()->lock(lockNumber);
+-
+- // Lock or unlock it
+- if (mode & CRYPTO_LOCK)
+- mutex->lock();
+- else
+- mutex->unlock();
+-}
+-static unsigned long id_function()
+-{
+- return (quintptr)QThread::currentThreadId();
+-}
+
+ #if OPENSSL_VERSION_NUMBER >= 0x10001000L && !defined(OPENSSL_NO_PSK)
+ static unsigned int q_ssl_psk_client_callback(SSL *ssl,
+@@ -227,7 +149,7 @@ QSslSocketBackendPrivate::~QSslSocketBac
+ destroySslContext();
+ }
+
+-QSslCipher QSslSocketBackendPrivate::QSslCipher_from_SSL_CIPHER(SSL_CIPHER *cipher)
++QSslCipher QSslSocketBackendPrivate::QSslCipher_from_SSL_CIPHER(const SSL_CIPHER *cipher)
+ {
+ QSslCipher ciph;
+
+@@ -283,6 +205,7 @@ struct QSslErrorList
+ QMutex mutex;
+ QVector<QSslErrorEntry> errors;
+ };
++
+ Q_GLOBAL_STATIC(QSslErrorList, _q_sslErrorList)
+
+ int q_X509Callback(int ok, X509_STORE_CTX *ctx)
+@@ -312,7 +235,7 @@ int q_X509Callback(int ok, X509_STORE_CT
+ }
+ #endif
+ }
+- // Always return OK to allow verification to continue. We're handle the
++ // Always return OK to allow verification to continue. We handle the
+ // errors gracefully after collecting all errors, after verification has
+ // completed.
+ return 1;
+@@ -397,7 +320,7 @@ bool QSslSocketBackendPrivate::initSslCo
+ if (configuration.protocol != QSsl::SslV2 &&
+ configuration.protocol != QSsl::SslV3 &&
+ configuration.protocol != QSsl::UnknownProtocol &&
+- mode == QSslSocket::SslClientMode && q_SSLeay() >= 0x00090806fL) {
++ mode == QSslSocket::SslClientMode && QSslSocket::sslLibraryVersionNumber() >= 0x00090806fL) {
+ // Set server hostname on TLS extension. RFC4366 section 3.1 requires it in ACE format.
+ QString tlsHostName = verificationPeerName.isEmpty() ? q->peerName() : verificationPeerName;
+ if (tlsHostName.isEmpty())
+@@ -438,13 +361,13 @@ bool QSslSocketBackendPrivate::initSslCo
+
+ #if OPENSSL_VERSION_NUMBER >= 0x10001000L
+ // Save a pointer to this object into the SSL structure.
+- if (q_SSLeay() >= 0x10001000L)
++ if (QSslSocket::sslLibraryVersionNumber() >= 0x10001000L)
+ q_SSL_set_ex_data(ssl, s_indexForSSLExtraData, this);
+ #endif
+
+ #if OPENSSL_VERSION_NUMBER >= 0x10001000L && !defined(OPENSSL_NO_PSK)
+ // Set the client callback for PSK
+- if (q_SSLeay() >= 0x10001000L) {
++ if (QSslSocket::sslLibraryVersionNumber() >= 0x10001000L) {
+ if (mode == QSslSocket::SslClientMode)
+ q_SSL_set_psk_client_callback(ssl, &q_ssl_psk_client_callback);
+ else if (mode == QSslSocket::SslServerMode)
+@@ -466,16 +389,6 @@ void QSslSocketBackendPrivate::destroySs
+
+ /*!
+ \internal
+-*/
+-void QSslSocketPrivate::deinitialize()
+-{
+- q_CRYPTO_set_id_callback(0);
+- q_CRYPTO_set_locking_callback(0);
+- q_ERR_free_strings();
+-}
+-
+-/*!
+- \internal
+
+ Does the minimum amount of initialization to determine whether SSL
+ is supported or not.
+@@ -486,92 +399,6 @@ bool QSslSocketPrivate::supportsSsl()
+ return ensureLibraryLoaded();
+ }
+
+-bool QSslSocketPrivate::ensureLibraryLoaded()
+-{
+- if (!q_resolveOpenSslSymbols())
+- return false;
+-
+- // Check if the library itself needs to be initialized.
+- QMutexLocker locker(openssl_locks()->initLock());
+-
+- if (!s_libraryLoaded) {
+- s_libraryLoaded = true;
+-
+- // Initialize OpenSSL.
+- q_CRYPTO_set_id_callback(id_function);
+- q_CRYPTO_set_locking_callback(locking_function);
+- if (q_SSL_library_init() != 1)
+- return false;
+- q_SSL_load_error_strings();
+- q_OpenSSL_add_all_algorithms();
+-
+-#if OPENSSL_VERSION_NUMBER >= 0x10001000L
+- if (q_SSLeay() >= 0x10001000L)
+- QSslSocketBackendPrivate::s_indexForSSLExtraData = q_SSL_get_ex_new_index(0L, NULL, NULL, NULL, NULL);
+-#endif
+-
+- // Initialize OpenSSL's random seed.
+- if (!q_RAND_status()) {
+- qWarning("Random number generator not seeded, disabling SSL support");
+- return false;
+- }
+- }
+- return true;
+-}
+-
+-void QSslSocketPrivate::ensureCiphersAndCertsLoaded()
+-{
+- QMutexLocker locker(openssl_locks()->initLock());
+- if (s_loadedCiphersAndCerts)
+- return;
+- s_loadedCiphersAndCerts = true;
+-
+- resetDefaultCiphers();
+- resetDefaultEllipticCurves();
+-
+-#if QT_CONFIG(library)
+- //load symbols needed to receive certificates from system store
+-#if defined(Q_OS_WIN)
+- HINSTANCE hLib = LoadLibraryW(L"Crypt32");
+- if (hLib) {
+- ptrCertOpenSystemStoreW = (PtrCertOpenSystemStoreW)GetProcAddress(hLib, "CertOpenSystemStoreW");
+- ptrCertFindCertificateInStore = (PtrCertFindCertificateInStore)GetProcAddress(hLib, "CertFindCertificateInStore");
+- ptrCertCloseStore = (PtrCertCloseStore)GetProcAddress(hLib, "CertCloseStore");
+- if (!ptrCertOpenSystemStoreW || !ptrCertFindCertificateInStore || !ptrCertCloseStore)
+- qCWarning(lcSsl, "could not resolve symbols in crypt32 library"); // should never happen
+- } else {
+- qCWarning(lcSsl, "could not load crypt32 library"); // should never happen
+- }
+-#elif defined(Q_OS_QNX)
+- s_loadRootCertsOnDemand = true;
+-#elif defined(Q_OS_UNIX) && !defined(Q_OS_MAC)
+- // check whether we can enable on-demand root-cert loading (i.e. check whether the sym links are there)
+- QList<QByteArray> dirs = unixRootCertDirectories();
+- QStringList symLinkFilter;
+- symLinkFilter << QLatin1String("[0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f].[0-9]");
+- for (int a = 0; a < dirs.count(); ++a) {
+- QDirIterator iterator(QLatin1String(dirs.at(a)), symLinkFilter, QDir::Files);
+- if (iterator.hasNext()) {
+- s_loadRootCertsOnDemand = true;
+- break;
+- }
+- }
+-#endif
+-#endif // QT_CONFIG(library)
+- // if on-demand loading was not enabled, load the certs now
+- if (!s_loadRootCertsOnDemand)
+- setDefaultCaCertificates(systemCaCertificates());
+-#ifdef Q_OS_WIN
+- //Enabled for fetching additional root certs from windows update on windows 6+
+- //This flag is set false by setDefaultCaCertificates() indicating the app uses
+- //its own cert bundle rather than the system one.
+- //Same logic that disables the unix on demand cert loading.
+- //Unlike unix, we do preload the certificates from the cert store.
+- if ((QSysInfo::windowsVersion() & QSysInfo::WV_NT_based) >= QSysInfo::WV_6_0)
+- s_loadRootCertsOnDemand = true;
+-#endif
+-}
+-
+ /*!
+ \internal
+
+@@ -587,26 +414,6 @@ void QSslSocketPrivate::ensureInitialize
+ ensureCiphersAndCertsLoaded();
+ }
+
+-long QSslSocketPrivate::sslLibraryVersionNumber()
+-{
+- if (!supportsSsl())
+- return 0;
+-
+- return q_SSLeay();
+-}
+-
+-QString QSslSocketPrivate::sslLibraryVersionString()
+-{
+- if (!supportsSsl())
+- return QString();
+-
+- const char *versionString = q_SSLeay_version(SSLEAY_VERSION);
+- if (!versionString)
+- return QString();
+-
+- return QString::fromLatin1(versionString);
+-}
+-
+ long QSslSocketPrivate::sslLibraryBuildVersionNumber()
+ {
+ return OPENSSL_VERSION_NUMBER;
+@@ -628,7 +435,11 @@ QString QSslSocketPrivate::sslLibraryBui
+ */
+ void QSslSocketPrivate::resetDefaultCiphers()
+ {
++#if QT_CONFIG(opensslv11)
++ SSL_CTX *myCtx = q_SSL_CTX_new(q_TLS_client_method());
++#else
+ SSL_CTX *myCtx = q_SSL_CTX_new(q_SSLv23_client_method());
++#endif
+ SSL *mySsl = q_SSL_new(myCtx);
+
+ QList<QSslCipher> ciphers;
+@@ -665,7 +476,7 @@ void QSslSocketPrivate::resetDefaultElli
+ QVector<QSslEllipticCurve> curves;
+
+ #ifndef OPENSSL_NO_EC
+- const size_t curveCount = q_EC_get_builtin_curves(NULL, 0);
++ const size_t curveCount = q_EC_get_builtin_curves(nullptr, 0);
+
+ QVarLengthArray<EC_builtin_curve> builtinCurves(static_cast<int>(curveCount));
+
+@@ -699,13 +510,14 @@ QList<QSslCertificate> QSslSocketPrivate
+ if (ptrCertOpenSystemStoreW && ptrCertFindCertificateInStore && ptrCertCloseStore) {
+ HCERTSTORE hSystemStore;
+ hSystemStore = ptrCertOpenSystemStoreW(0, L"ROOT");
+- if(hSystemStore) {
+- PCCERT_CONTEXT pc = NULL;
+- while(1) {
+- pc = ptrCertFindCertificateInStore( hSystemStore, X509_ASN_ENCODING, 0, CERT_FIND_ANY, NULL, pc);
+- if(!pc)
++ if (hSystemStore) {
++ PCCERT_CONTEXT pc = nullptr;
++ while (1) {
++ pc = ptrCertFindCertificateInStore(hSystemStore, X509_ASN_ENCODING, 0, CERT_FIND_ANY, nullptr, pc);
++ if (!pc)
+ break;
+- QByteArray der((const char *)(pc->pbCertEncoded), static_cast<int>(pc->cbCertEncoded));
++ QByteArray der(reinterpret_cast<const char *>(pc->pbCertEncoded),
++ static_cast<int>(pc->cbCertEncoded));
+ QSslCertificate cert(der, QSsl::Der);
+ systemCerts.append(cert);
+ }
+@@ -1503,14 +1315,8 @@ QSslCipher QSslSocketBackendPrivate::ses
+ {
+ if (!ssl)
+ return QSslCipher();
+-#if OPENSSL_VERSION_NUMBER >= 0x10000000L
+- // FIXME This is fairly evil, but needed to keep source level compatibility
+- // with the OpenSSL 0.9.x implementation at maximum -- some other functions
+- // don't take a const SSL_CIPHER* when they should
+- SSL_CIPHER *sessionCipher = const_cast<SSL_CIPHER *>(q_SSL_get_current_cipher(ssl));
+-#else
+- SSL_CIPHER *sessionCipher = q_SSL_get_current_cipher(ssl);
+-#endif
++
++ const SSL_CIPHER *sessionCipher = q_SSL_get_current_cipher(ssl);
+ return sessionCipher ? QSslCipher_from_SSL_CIPHER(sessionCipher) : QSslCipher();
+ }
+
+@@ -1536,112 +1342,6 @@ QSsl::SslProtocol QSslSocketBackendPriva
+ return QSsl::UnknownProtocol;
+ }
+
+-void QSslSocketBackendPrivate::continueHandshake()
+-{
+- Q_Q(QSslSocket);
+- // if we have a max read buffer size, reset the plain socket's to match
+- if (readBufferMaxSize)
+- plainSocket->setReadBufferSize(readBufferMaxSize);
+-
+- if (q_SSL_ctrl((ssl), SSL_CTRL_GET_SESSION_REUSED, 0, NULL))
+- configuration.peerSessionShared = true;
+-
+-#ifdef QT_DECRYPT_SSL_TRAFFIC
+- if (ssl->session && ssl->s3) {
+- const char *mk = reinterpret_cast<const char *>(ssl->session->master_key);
+- QByteArray masterKey(mk, ssl->session->master_key_length);
+- const char *random = reinterpret_cast<const char *>(ssl->s3->client_random);
+- QByteArray clientRandom(random, SSL3_RANDOM_SIZE);
+-
+- // different format, needed for e.g. older Wireshark versions:
+-// const char *sid = reinterpret_cast<const char *>(ssl->session->session_id);
+-// QByteArray sessionID(sid, ssl->session->session_id_length);
+-// QByteArray debugLineRSA("RSA Session-ID:");
+-// debugLineRSA.append(sessionID.toHex().toUpper());
+-// debugLineRSA.append(" Master-Key:");
+-// debugLineRSA.append(masterKey.toHex().toUpper());
+-// debugLineRSA.append("\n");
+-
+- QByteArray debugLineClientRandom("CLIENT_RANDOM ");
+- debugLineClientRandom.append(clientRandom.toHex().toUpper());
+- debugLineClientRandom.append(" ");
+- debugLineClientRandom.append(masterKey.toHex().toUpper());
+- debugLineClientRandom.append("\n");
+-
+- QString sslKeyFile = QDir::tempPath() + QLatin1String("/qt-ssl-keys");
+- QFile file(sslKeyFile);
+- if (!file.open(QIODevice::Append))
+- qCWarning(lcSsl) << "could not open file" << sslKeyFile << "for appending";
+- if (!file.write(debugLineClientRandom))
+- qCWarning(lcSsl) << "could not write to file" << sslKeyFile;
+- file.close();
+- } else {
+- qCWarning(lcSsl, "could not decrypt SSL traffic");
+- }
+-#endif
+-
+- // Cache this SSL session inside the QSslContext
+- if (!(configuration.sslOptions & QSsl::SslOptionDisableSessionSharing)) {
+- if (!sslContextPointer->cacheSession(ssl)) {
+- sslContextPointer.clear(); // we could not cache the session
+- } else {
+- // Cache the session for permanent usage as well
+- if (!(configuration.sslOptions & QSsl::SslOptionDisableSessionPersistence)) {
+- if (!sslContextPointer->sessionASN1().isEmpty())
+- configuration.sslSession = sslContextPointer->sessionASN1();
+- configuration.sslSessionTicketLifeTimeHint = sslContextPointer->sessionTicketLifeTimeHint();
+- }
+- }
+- }
+-
+-#if OPENSSL_VERSION_NUMBER >= 0x1000100fL && !defined(OPENSSL_NO_NEXTPROTONEG)
+-
+- configuration.nextProtocolNegotiationStatus = sslContextPointer->npnContext().status;
+- if (sslContextPointer->npnContext().status == QSslConfiguration::NextProtocolNegotiationUnsupported) {
+- // we could not agree -> be conservative and use HTTP/1.1
+- configuration.nextNegotiatedProtocol = QByteArrayLiteral("http/1.1");
+- } else {
+- const unsigned char *proto = 0;
+- unsigned int proto_len = 0;
+-#if OPENSSL_VERSION_NUMBER >= 0x10002000L
+- if (q_SSLeay() >= 0x10002000L) {
+- q_SSL_get0_alpn_selected(ssl, &proto, &proto_len);
+- if (proto_len && mode == QSslSocket::SslClientMode) {
+- // Client does not have a callback that sets it ...
+- configuration.nextProtocolNegotiationStatus = QSslConfiguration::NextProtocolNegotiationNegotiated;
+- }
+- }
+-
+- if (!proto_len) { // Test if NPN was more lucky ...
+-#else
+- {
+-#endif
+- q_SSL_get0_next_proto_negotiated(ssl, &proto, &proto_len);
+- }
+-
+- if (proto_len)
+- configuration.nextNegotiatedProtocol = QByteArray(reinterpret_cast<const char *>(proto), proto_len);
+- else
+- configuration.nextNegotiatedProtocol.clear();
+- }
+-#endif // OPENSSL_VERSION_NUMBER >= 0x1000100fL ...
+-
+-#if OPENSSL_VERSION_NUMBER >= 0x10002000L
+- if (q_SSLeay() >= 0x10002000L && mode == QSslSocket::SslClientMode) {
+- EVP_PKEY *key;
+- if (q_SSL_get_server_tmp_key(ssl, &key))
+- configuration.ephemeralServerKey = QSslKey(key, QSsl::PublicKey);
+- }
+-#endif // OPENSSL_VERSION_NUMBER >= 0x10002000L ...
+-
+- connectionEncrypted = true;
+- emit q->encrypted();
+- if (autoStartHandshake && pendingClose) {
+- pendingClose = false;
+- q->disconnectFromHost();
+- }
+-}
+-
+ QList<QSslCertificate> QSslSocketBackendPrivate::STACKOFX509_to_QSslCertificates(STACK_OF(X509) *x509)
+ {
+ ensureInitialized();
+@@ -1695,12 +1395,12 @@ QList<QSslError> QSslSocketBackendPrivat
+ QMutexLocker sslErrorListMutexLocker(&_q_sslErrorList()->mutex);
+
+ // Register a custom callback to get all verification errors.
+- X509_STORE_set_verify_cb_func(certStore, q_X509Callback);
++ q_X509_STORE_set_verify_cb(certStore, q_X509Callback);
+
+ // Build the chain of intermediate certificates
+ STACK_OF(X509) *intermediates = 0;
+ if (certificateChain.length() > 1) {
+- intermediates = (STACK_OF(X509) *) q_sk_new_null();
++ intermediates = (STACK_OF(X509) *) q_OPENSSL_sk_new_null();
+
+ if (!intermediates) {
+ q_X509_STORE_free(certStore);
+@@ -1714,11 +1414,8 @@ QList<QSslError> QSslSocketBackendPrivat
+ first = false;
+ continue;
+ }
+-#if OPENSSL_VERSION_NUMBER >= 0x10000000L
+- q_sk_push( (_STACK *)intermediates, reinterpret_cast<X509 *>(cert.handle()));
+-#else
+- q_sk_push( (STACK *)intermediates, reinterpret_cast<char *>(cert.handle()));
+-#endif
++
++ q_OPENSSL_sk_push((OPENSSL_STACK *)intermediates, reinterpret_cast<X509 *>(cert.handle()));
+ }
+ }
+
+@@ -1742,11 +1439,7 @@ QList<QSslError> QSslSocketBackendPrivat
+ (void) q_X509_verify_cert(storeContext);
+
+ q_X509_STORE_CTX_free(storeContext);
+-#if OPENSSL_VERSION_NUMBER >= 0x10000000L
+- q_sk_free( (_STACK *) intermediates);
+-#else
+- q_sk_free( (STACK *) intermediates);
+-#endif
++ q_OPENSSL_sk_free((OPENSSL_STACK *)intermediates);
+
+ // Now process the errors
+ const auto errorList = std::move(_q_sslErrorList()->errors);
+@@ -1820,7 +1513,8 @@ bool QSslSocketBackendPrivate::importPkc
+ // Convert to Qt types
+ if (!key->d->fromEVP_PKEY(pkey)) {
+ qCWarning(lcSsl, "Unable to convert private key");
+- q_sk_pop_free(reinterpret_cast<STACK *>(ca), reinterpret_cast<void(*)(void*)>(q_sk_free));
++ q_OPENSSL_sk_pop_free(reinterpret_cast<OPENSSL_STACK *>(ca),
++ reinterpret_cast<void (*)(void *)>(q_OPENSSL_sk_free));
+ q_X509_free(x509);
+ q_EVP_PKEY_free(pkey);
+ q_PKCS12_free(p12);
+@@ -1835,7 +1529,11 @@ bool QSslSocketBackendPrivate::importPkc
+ *caCertificates = QSslSocketBackendPrivate::STACKOFX509_to_QSslCertificates(ca);
+
+ // Clean up
+- q_sk_pop_free(reinterpret_cast<STACK *>(ca), reinterpret_cast<void(*)(void*)>(q_sk_free));
++ // TODO: verify ASAP, in the past we had sk_pop_free with q_OPENSSL_sk_free
++ // which seems to be blatantly wrong and even crashes with 1.1.
++ q_OPENSSL_sk_pop_free(reinterpret_cast<OPENSSL_STACK *>(ca),
++ reinterpret_cast<void (*)(void *)>(q_X509_free));
++
+ q_X509_free(x509);
+ q_EVP_PKEY_free(pkey);
+ q_PKCS12_free(p12);
+Index: qtbase-opensource-src-5.9.2/src/network/ssl/qsslsocket_openssl11.cpp
+===================================================================
+--- /dev/null
++++ qtbase-opensource-src-5.9.2/src/network/ssl/qsslsocket_openssl11.cpp
+@@ -0,0 +1,285 @@
++/****************************************************************************
++**
++** Copyright (C) 2017 The Qt Company Ltd.
++** Copyright (C) 2014 Governikus GmbH & Co. KG
++** Copyright (C) 2016 Richard J. Moore <rich@kde.org>
++** Contact: https://www.qt.io/licensing/
++**
++** This file is part of the QtNetwork module of the Qt Toolkit.
++**
++** $QT_BEGIN_LICENSE:LGPL$
++** Commercial License Usage
++** Licensees holding valid commercial Qt licenses may use this file in
++** accordance with the commercial license agreement provided with the
++** Software or, alternatively, in accordance with the terms contained in
++** a written agreement between you and The Qt Company. For licensing terms
++** and conditions see https://www.qt.io/terms-conditions. For further
++** information use the contact form at https://www.qt.io/contact-us.
++**
++** GNU Lesser General Public License Usage
++** Alternatively, this file may be used under the terms of the GNU Lesser
++** General Public License version 3 as published by the Free Software
++** Foundation and appearing in the file LICENSE.LGPL3 included in the
++** packaging of this file. Please review the following information to
++** ensure the GNU Lesser General Public License version 3 requirements
++** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
++**
++** GNU General Public License Usage
++** Alternatively, this file may be used under the terms of the GNU
++** General Public License version 2.0 or (at your option) the GNU General
++** Public license version 3 or any later version approved by the KDE Free
++** Qt Foundation. The licenses are as published by the Free Software
++** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
++** included in the packaging of this file. Please review the following
++** information to ensure the GNU General Public License requirements will
++** be met: https://www.gnu.org/licenses/gpl-2.0.html and
++** https://www.gnu.org/licenses/gpl-3.0.html.
++**
++** $QT_END_LICENSE$
++**
++****************************************************************************/
++
++/****************************************************************************
++**
++** In addition, as a special exception, the copyright holders listed above give
++** permission to link the code of its release of Qt with the OpenSSL project's
++** "OpenSSL" library (or modified versions of the "OpenSSL" library that use the
++** same license as the original version), and distribute the linked executables.
++**
++** You must comply with the GNU General Public License version 2 in all
++** respects for all of the code used other than the "OpenSSL" code. If you
++** modify this file, you may extend this exception to your version of the file,
++** but you are not obligated to do so. If you do not wish to do so, delete
++** this exception statement from your version of this file.
++**
++****************************************************************************/
++
++//#define QT_DECRYPT_SSL_TRAFFIC
++
++#include "qssl_p.h"
++#include "qsslsocket_openssl_p.h"
++#include "qsslsocket_openssl_symbols_p.h"
++#include "qsslsocket.h"
++#include "qsslkey.h"
++
++#include <QtCore/qdebug.h>
++#include <QtCore/qdir.h>
++#include <QtCore/qdiriterator.h>
++#include <QtCore/qfile.h>
++#include <QtCore/qmutex.h>
++#include <QtCore/qlibrary.h>
++
++QT_BEGIN_NAMESPACE
++
++Q_GLOBAL_STATIC_WITH_ARGS(QMutex, qt_opensslInitMutex, (QMutex::Recursive))
++
++/*!
++ \internal
++*/
++void QSslSocketPrivate::deinitialize()
++{
++ // This function exists only for compatibility with the pre-11 code,
++ // where deinitialize() actually does some cleanup. To be discarded
++ // once we retire < 1.1.
++}
++
++bool QSslSocketPrivate::ensureLibraryLoaded()
++{
++ if (!q_resolveOpenSslSymbols())
++ return false;
++
++ const QMutexLocker locker(qt_opensslInitMutex);
++
++ if (!s_libraryLoaded) {
++ s_libraryLoaded = true;
++
++ // Initialize OpenSSL.
++ if (q_OPENSSL_init_ssl(0, nullptr) != 1)
++ return false;
++ q_SSL_load_error_strings();
++ q_OpenSSL_add_all_algorithms();
++
++ QSslSocketBackendPrivate::s_indexForSSLExtraData
++ = q_CRYPTO_get_ex_new_index(CRYPTO_EX_INDEX_SSL, 0L, nullptr, nullptr,
++ nullptr, nullptr);
++
++ // Initialize OpenSSL's random seed.
++ if (!q_RAND_status()) {
++ qWarning("Random number generator not seeded, disabling SSL support");
++ return false;
++ }
++ }
++ return true;
++}
++
++void QSslSocketPrivate::ensureCiphersAndCertsLoaded()
++{
++ const QMutexLocker locker(qt_opensslInitMutex);
++
++ if (s_loadedCiphersAndCerts)
++ return;
++ s_loadedCiphersAndCerts = true;
++
++ resetDefaultCiphers();
++ resetDefaultEllipticCurves();
++
++#if QT_CONFIG(library)
++ //load symbols needed to receive certificates from system store
++#if defined(Q_OS_WIN)
++ HINSTANCE hLib = LoadLibraryW(L"Crypt32");
++ if (hLib) {
++ ptrCertOpenSystemStoreW = (PtrCertOpenSystemStoreW)GetProcAddress(hLib, "CertOpenSystemStoreW");
++ ptrCertFindCertificateInStore = (PtrCertFindCertificateInStore)GetProcAddress(hLib, "CertFindCertificateInStore");
++ ptrCertCloseStore = (PtrCertCloseStore)GetProcAddress(hLib, "CertCloseStore");
++ if (!ptrCertOpenSystemStoreW || !ptrCertFindCertificateInStore || !ptrCertCloseStore)
++ qCWarning(lcSsl, "could not resolve symbols in crypt32 library"); // should never happen
++ } else {
++ qCWarning(lcSsl, "could not load crypt32 library"); // should never happen
++ }
++#elif defined(Q_OS_QNX)
++ s_loadRootCertsOnDemand = true;
++#elif defined(Q_OS_UNIX) && !defined(Q_OS_DARWIN)
++ // check whether we can enable on-demand root-cert loading (i.e. check whether the sym links are there)
++ QList<QByteArray> dirs = unixRootCertDirectories();
++ QStringList symLinkFilter;
++ symLinkFilter << QLatin1String("[0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f].[0-9]");
++ for (int a = 0; a < dirs.count(); ++a) {
++ QDirIterator iterator(QLatin1String(dirs.at(a)), symLinkFilter, QDir::Files);
++ if (iterator.hasNext()) {
++ s_loadRootCertsOnDemand = true;
++ break;
++ }
++ }
++#endif
++#endif // QT_CONFIG(library)
++ // if on-demand loading was not enabled, load the certs now
++ if (!s_loadRootCertsOnDemand)
++ setDefaultCaCertificates(systemCaCertificates());
++#ifdef Q_OS_WIN
++ //Enabled for fetching additional root certs from windows update on windows 6+
++ //This flag is set false by setDefaultCaCertificates() indicating the app uses
++ //its own cert bundle rather than the system one.
++ //Same logic that disables the unix on demand cert loading.
++ //Unlike unix, we do preload the certificates from the cert store.
++ if ((QSysInfo::windowsVersion() & QSysInfo::WV_NT_based) >= QSysInfo::WV_6_0)
++ s_loadRootCertsOnDemand = true;
++#endif
++}
++
++long QSslSocketPrivate::sslLibraryVersionNumber()
++{
++ if (!supportsSsl())
++ return 0;
++
++ return q_OpenSSL_version_num();
++}
++
++QString QSslSocketPrivate::sslLibraryVersionString()
++{
++ if (!supportsSsl())
++ return QString();
++
++ const char *versionString = q_OpenSSL_version(OPENSSL_VERSION);
++ if (!versionString)
++ return QString();
++
++ return QString::fromLatin1(versionString);
++}
++
++void QSslSocketBackendPrivate::continueHandshake()
++{
++ Q_Q(QSslSocket);
++ // if we have a max read buffer size, reset the plain socket's to match
++ if (readBufferMaxSize)
++ plainSocket->setReadBufferSize(readBufferMaxSize);
++
++ if (q_SSL_session_reused(ssl))
++ configuration.peerSessionShared = true;
++
++#ifdef QT_DECRYPT_SSL_TRAFFIC
++ if (q_SSL_get_session(ssl)) {
++ size_t master_key_len = q_SSL_SESSION_get_master_key(q_SSL_get_session(ssl), 0, 0);
++ size_t client_random_len = q_SSL_get_client_random(ssl, 0, 0);
++ QByteArray masterKey(int(master_key_len), 0); // Will not overflow
++ QByteArray clientRandom(int(client_random_len), 0); // Will not overflow
++
++ q_SSL_SESSION_get_master_key(q_SSL_get_session(ssl),
++ reinterpret_cast<unsigned char*>(masterKey.data()),
++ masterKey.size());
++ q_SSL_get_client_random(ssl, reinterpret_cast<unsigned char *>(clientRandom.data()),
++ clientRandom.size());
++
++ QByteArray debugLineClientRandom("CLIENT_RANDOM ");
++ debugLineClientRandom.append(clientRandom.toHex().toUpper());
++ debugLineClientRandom.append(" ");
++ debugLineClientRandom.append(masterKey.toHex().toUpper());
++ debugLineClientRandom.append("\n");
++
++ QString sslKeyFile = QDir::tempPath() + QLatin1String("/qt-ssl-keys");
++ QFile file(sslKeyFile);
++ if (!file.open(QIODevice::Append))
++ qCWarning(lcSsl) << "could not open file" << sslKeyFile << "for appending";
++ if (!file.write(debugLineClientRandom))
++ qCWarning(lcSsl) << "could not write to file" << sslKeyFile;
++ file.close();
++ } else {
++ qCWarning(lcSsl, "could not decrypt SSL traffic");
++ }
++#endif
++
++ // Cache this SSL session inside the QSslContext
++ if (!(configuration.sslOptions & QSsl::SslOptionDisableSessionSharing)) {
++ if (!sslContextPointer->cacheSession(ssl)) {
++ sslContextPointer.clear(); // we could not cache the session
++ } else {
++ // Cache the session for permanent usage as well
++ if (!(configuration.sslOptions & QSsl::SslOptionDisableSessionPersistence)) {
++ if (!sslContextPointer->sessionASN1().isEmpty())
++ configuration.sslSession = sslContextPointer->sessionASN1();
++ configuration.sslSessionTicketLifeTimeHint = sslContextPointer->sessionTicketLifeTimeHint();
++ }
++ }
++ }
++
++#if !defined(OPENSSL_NO_NEXTPROTONEG)
++
++ configuration.nextProtocolNegotiationStatus = sslContextPointer->npnContext().status;
++ if (sslContextPointer->npnContext().status == QSslConfiguration::NextProtocolNegotiationUnsupported) {
++ // we could not agree -> be conservative and use HTTP/1.1
++ configuration.nextNegotiatedProtocol = QByteArrayLiteral("http/1.1");
++ } else {
++ const unsigned char *proto = 0;
++ unsigned int proto_len = 0;
++
++ q_SSL_get0_alpn_selected(ssl, &proto, &proto_len);
++ if (proto_len && mode == QSslSocket::SslClientMode) {
++ // Client does not have a callback that sets it ...
++ configuration.nextProtocolNegotiationStatus = QSslConfiguration::NextProtocolNegotiationNegotiated;
++ }
++
++ if (!proto_len) { // Test if NPN was more lucky ...
++ q_SSL_get0_next_proto_negotiated(ssl, &proto, &proto_len);
++ }
++
++ if (proto_len)
++ configuration.nextNegotiatedProtocol = QByteArray(reinterpret_cast<const char *>(proto), proto_len);
++ else
++ configuration.nextNegotiatedProtocol.clear();
++ }
++#endif // !defined(OPENSSL_NO_NEXTPROTONEG)
++
++ if (mode == QSslSocket::SslClientMode) {
++ EVP_PKEY *key;
++ if (q_SSL_get_server_tmp_key(ssl, &key))
++ configuration.ephemeralServerKey = QSslKey(key, QSsl::PublicKey);
++ }
++
++ connectionEncrypted = true;
++ emit q->encrypted();
++ if (autoStartHandshake && pendingClose) {
++ pendingClose = false;
++ q->disconnectFromHost();
++ }
++}
++
++QT_END_NAMESPACE
+Index: qtbase-opensource-src-5.9.2/src/network/ssl/qsslsocket_openssl11_symbols_p.h
+===================================================================
+--- /dev/null
++++ qtbase-opensource-src-5.9.2/src/network/ssl/qsslsocket_openssl11_symbols_p.h
+@@ -0,0 +1,132 @@
++/****************************************************************************
++**
++** Copyright (C) 2017 The Qt Company Ltd.
++** Copyright (C) 2014 BlackBerry Limited. All rights reserved.
++** Copyright (C) 2016 Richard J. Moore <rich@kde.org>
++** Contact: https://www.qt.io/licensing/
++**
++** This file is part of the QtNetwork module of the Qt Toolkit.
++**
++** $QT_BEGIN_LICENSE:LGPL$
++** Commercial License Usage
++** Licensees holding valid commercial Qt licenses may use this file in
++** accordance with the commercial license agreement provided with the
++** Software or, alternatively, in accordance with the terms contained in
++** a written agreement between you and The Qt Company. For licensing terms
++** and conditions see https://www.qt.io/terms-conditions. For further
++** information use the contact form at https://www.qt.io/contact-us.
++**
++** GNU Lesser General Public License Usage
++** Alternatively, this file may be used under the terms of the GNU Lesser
++** General Public License version 3 as published by the Free Software
++** Foundation and appearing in the file LICENSE.LGPL3 included in the
++** packaging of this file. Please review the following information to
++** ensure the GNU Lesser General Public License version 3 requirements
++** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
++**
++** GNU General Public License Usage
++** Alternatively, this file may be used under the terms of the GNU
++** General Public License version 2.0 or (at your option) the GNU General
++** Public license version 3 or any later version approved by the KDE Free
++** Qt Foundation. The licenses are as published by the Free Software
++** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
++** included in the packaging of this file. Please review the following
++** information to ensure the GNU General Public License requirements will
++** be met: https://www.gnu.org/licenses/gpl-2.0.html and
++** https://www.gnu.org/licenses/gpl-3.0.html.
++**
++** $QT_END_LICENSE$
++**
++****************************************************************************/
++
++/****************************************************************************
++**
++** In addition, as a special exception, the copyright holders listed above give
++** permission to link the code of its release of Qt with the OpenSSL project's
++** "OpenSSL" library (or modified versions of the "OpenSSL" library that use the
++** same license as the original version), and distribute the linked executables.
++**
++** You must comply with the GNU General Public License version 2 in all
++** respects for all of the code used other than the "OpenSSL" code. If you
++** modify this file, you may extend this exception to your version of the file,
++** but you are not obligated to do so. If you do not wish to do so, delete
++** this exception statement from your version of this file.
++**
++****************************************************************************/
++
++#ifndef QSSLSOCKET_OPENSSL11_SYMBOLS_P_H
++#define QSSLSOCKET_OPENSSL11_SYMBOLS_P_H
++
++//
++// W A R N I N G
++// -------------
++//
++// This file is not part of the Qt API. It exists purely as an
++// implementation detail. This header file may change from version to
++// version without notice, or even be removed.
++//
++// We mean it.
++//
++
++// Note: this file does not have QT_BEGIN_NAMESPACE/QT_END_NAMESPACE, it's done
++// in qsslsocket_openssl_symbols_p.h.
++
++#ifndef QSSLSOCKET_OPENSSL_SYMBOLS_P_H
++#error "You are not supposed to use this header file, include qsslsocket_openssl_symbols_p.h instead"
++#endif
++
++const unsigned char * q_ASN1_STRING_get0_data(const ASN1_STRING *x);
++
++Q_AUTOTEST_EXPORT BIO *q_BIO_new(const BIO_METHOD *a);
++Q_AUTOTEST_EXPORT const BIO_METHOD *q_BIO_s_mem();
++
++int q_DSA_bits(DSA *a);
++int q_EVP_CIPHER_CTX_reset(EVP_CIPHER_CTX *c);
++int q_EVP_PKEY_base_id(EVP_PKEY *a);
++int q_RSA_bits(RSA *a);
++int q_OPENSSL_sk_num(OPENSSL_STACK *a);
++void q_OPENSSL_sk_pop_free(OPENSSL_STACK *a, void (*b)(void *));
++OPENSSL_STACK *q_OPENSSL_sk_new_null();
++void q_OPENSSL_sk_push(OPENSSL_STACK *st, void *data);
++void q_OPENSSL_sk_free(OPENSSL_STACK *a);
++void * q_OPENSSL_sk_value(OPENSSL_STACK *a, int b);
++int q_SSL_session_reused(SSL *a);
++unsigned long q_SSL_CTX_set_options(SSL_CTX *ctx, unsigned long op);
++int q_OPENSSL_init_ssl(uint64_t opts, const OPENSSL_INIT_SETTINGS *settings);
++size_t q_SSL_get_client_random(SSL *a, unsigned char *out, size_t outlen);
++size_t q_SSL_SESSION_get_master_key(const SSL_SESSION *session, unsigned char *out, size_t outlen);
++int q_CRYPTO_get_ex_new_index(int class_index, long argl, void *argp, CRYPTO_EX_new *new_func, CRYPTO_EX_dup *dup_func, CRYPTO_EX_free *free_func);
++const SSL_METHOD *q_TLS_method();
++const SSL_METHOD *q_TLS_client_method();
++const SSL_METHOD *q_TLS_server_method();
++ASN1_TIME *q_X509_getm_notBefore(X509 *a);
++ASN1_TIME *q_X509_getm_notAfter(X509 *a);
++
++long q_X509_get_version(X509 *a);
++EVP_PKEY *q_X509_get_pubkey(X509 *a);
++void q_X509_STORE_set_verify_cb(X509_STORE *ctx, X509_STORE_CTX_verify_cb verify_cb);
++STACK_OF(X509) *q_X509_STORE_CTX_get0_chain(X509_STORE_CTX *ctx);
++void q_DH_get0_pqg(const DH *dh, const BIGNUM **p, const BIGNUM **q, const BIGNUM **g);
++int q_DH_bits(DH *dh);
++
++# define q_SSL_load_error_strings() q_OPENSSL_init_ssl(OPENSSL_INIT_LOAD_SSL_STRINGS \
++ | OPENSSL_INIT_LOAD_CRYPTO_STRINGS, NULL)
++
++#define q_SKM_sk_num(type, st) ((int (*)(const STACK_OF(type) *))q_OPENSSL_sk_num)(st)
++#define q_SKM_sk_value(type, st,i) ((type * (*)(const STACK_OF(type) *, int))q_OPENSSL_sk_value)(st, i)
++
++#define q_OPENSSL_add_all_algorithms_conf() q_OPENSSL_init_crypto(OPENSSL_INIT_ADD_ALL_CIPHERS \
++ | OPENSSL_INIT_ADD_ALL_DIGESTS \
++ | OPENSSL_INIT_LOAD_CONFIG, NULL)
++#define q_OPENSSL_add_all_algorithms_noconf() q_OPENSSL_init_crypto(OPENSSL_INIT_ADD_ALL_CIPHERS \
++ | OPENSSL_INIT_ADD_ALL_DIGESTS, NULL)
++
++int q_OPENSSL_init_crypto(uint64_t opts, const OPENSSL_INIT_SETTINGS *settings);
++void q_CRYPTO_free(void *str, const char *file, int line);
++
++long q_OpenSSL_version_num();
++const char *q_OpenSSL_version(int type);
++
++unsigned long q_SSL_SESSION_get_ticket_lifetime_hint(const SSL_SESSION *session);
++
++#endif
+Index: qtbase-opensource-src-5.9.2/src/network/ssl/qsslsocket_openssl_p.h
+===================================================================
+--- qtbase-opensource-src-5.9.2.orig/src/network/ssl/qsslsocket_openssl_p.h
++++ qtbase-opensource-src-5.9.2/src/network/ssl/qsslsocket_openssl_p.h
+@@ -1,6 +1,6 @@
+ /****************************************************************************
+ **
+-** Copyright (C) 2016 The Qt Company Ltd.
++** Copyright (C) 2017 The Qt Company Ltd.
+ ** Contact: https://www.qt.io/licensing/
+ **
+ ** This file is part of the QtNetwork module of the Qt Toolkit.
+@@ -98,8 +98,8 @@
+ #include <openssl/crypto.h>
+ #include <openssl/tls1.h>
+
+-#if OPENSSL_VERSION_NUMBER >= 0x10000000L
+-typedef _STACK STACK;
++#if QT_CONFIG(opensslv11)
++#include <openssl/dh.h>
+ #endif
+
+ QT_BEGIN_NAMESPACE
+@@ -151,7 +151,7 @@ public:
+ #endif
+
+ Q_AUTOTEST_EXPORT static long setupOpenSslOptions(QSsl::SslProtocol protocol, QSsl::SslOptions sslOptions);
+- static QSslCipher QSslCipher_from_SSL_CIPHER(SSL_CIPHER *cipher);
++ static QSslCipher QSslCipher_from_SSL_CIPHER(const SSL_CIPHER *cipher);
+ static QList<QSslCertificate> STACKOFX509_to_QSslCertificates(STACK_OF(X509) *x509);
+ static QList<QSslError> verify(const QList<QSslCertificate> &certificateChain, const QString &hostName);
+ static QString getErrorsFromOpenSsl();
+Index: qtbase-opensource-src-5.9.2/src/network/ssl/qsslsocket_openssl_symbols.cpp
+===================================================================
+--- qtbase-opensource-src-5.9.2.orig/src/network/ssl/qsslsocket_openssl_symbols.cpp
++++ qtbase-opensource-src-5.9.2/src/network/ssl/qsslsocket_openssl_symbols.cpp
+@@ -1,7 +1,8 @@
+ /****************************************************************************
+ **
+-** Copyright (C) 2016 The Qt Company Ltd.
++** Copyright (C) 2017 The Qt Company Ltd.
+ ** Copyright (C) 2014 BlackBerry Limited. All rights reserved.
++** Copyright (C) 2016 Richard J. Moore <rich@kde.org>
+ ** Contact: https://www.qt.io/licensing/
+ **
+ ** This file is part of the QtNetwork module of the Qt Toolkit.
+@@ -136,49 +137,195 @@ void qsslSocketCannotResolveSymbolWarnin
+
+ #endif // QT_LINKED_OPENSSL
+
++#if QT_CONFIG(opensslv11)
++
++// Below are the functions first introduced in version 1.1:
++
++DEFINEFUNC(const unsigned char *, ASN1_STRING_get0_data, const ASN1_STRING *a, a, return 0, return)
++DEFINEFUNC2(int, OPENSSL_init_ssl, uint64_t opts, opts, const OPENSSL_INIT_SETTINGS *settings, settings, return 0, return)
++DEFINEFUNC2(int, OPENSSL_init_crypto, uint64_t opts, opts, const OPENSSL_INIT_SETTINGS *settings, settings, return 0, return)
++DEFINEFUNC(BIO *, BIO_new, const BIO_METHOD *a, a, return 0, return)
++DEFINEFUNC(const BIO_METHOD *, BIO_s_mem, void, DUMMYARG, return 0, return)
++DEFINEFUNC2(int, BN_is_word, BIGNUM *a, a, BN_ULONG w, w, return 0, return)
++DEFINEFUNC(int, EVP_CIPHER_CTX_reset, EVP_CIPHER_CTX *c, c, return 0, return)
++DEFINEFUNC(int, EVP_PKEY_base_id, EVP_PKEY *a, a, return NID_undef, return)
++DEFINEFUNC(int, RSA_bits, RSA *a, a, return 0, return)
++DEFINEFUNC(int, DSA_bits, DSA *a, a, return 0, return)
++DEFINEFUNC(int, OPENSSL_sk_num, OPENSSL_STACK *a, a, return -1, return)
++DEFINEFUNC2(void, OPENSSL_sk_pop_free, OPENSSL_STACK *a, a, void (*b)(void*), b, return, DUMMYARG)
++DEFINEFUNC(OPENSSL_STACK *, OPENSSL_sk_new_null, DUMMYARG, DUMMYARG, return 0, return)
++DEFINEFUNC2(void, OPENSSL_sk_push, OPENSSL_STACK *a, a, void *b, b, return, DUMMYARG)
++DEFINEFUNC(void, OPENSSL_sk_free, OPENSSL_STACK *a, a, return, DUMMYARG)
++DEFINEFUNC2(void *, OPENSSL_sk_value, OPENSSL_STACK *a, a, int b, b, return 0, return)
++DEFINEFUNC(int, SSL_session_reused, SSL *a, a, return 0, return)
++DEFINEFUNC2(unsigned long, SSL_CTX_set_options, SSL_CTX *ctx, ctx, unsigned long op, op, return 0, return)
++DEFINEFUNC3(size_t, SSL_get_client_random, SSL *a, a, unsigned char *out, out, size_t outlen, outlen, return 0, return)
++DEFINEFUNC3(size_t, SSL_SESSION_get_master_key, const SSL_SESSION *ses, ses, unsigned char *out, out, size_t outlen, outlen, return 0, return)
++DEFINEFUNC6(int, CRYPTO_get_ex_new_index, int class_index, class_index, long argl, argl, void *argp, argp, CRYPTO_EX_new *new_func, new_func, CRYPTO_EX_dup *dup_func, dup_func, CRYPTO_EX_free *free_func, free_func, return -1, return)
++
++DEFINEFUNC(const SSL_METHOD *, TLS_method, DUMMYARG, DUMMYARG, return 0, return)
++DEFINEFUNC(const SSL_METHOD *, TLS_client_method, DUMMYARG, DUMMYARG, return 0, return)
++DEFINEFUNC(const SSL_METHOD *, TLS_server_method, DUMMYARG, DUMMYARG, return 0, return)
++DEFINEFUNC(ASN1_TIME *, X509_getm_notBefore, X509 *a, a, return 0, return)
++DEFINEFUNC(ASN1_TIME *, X509_getm_notAfter, X509 *a, a, return 0, return)
++DEFINEFUNC(long, X509_get_version, X509 *a, a, return -1, return)
++DEFINEFUNC(EVP_PKEY *, X509_get_pubkey, X509 *a, a, return 0, return)
++DEFINEFUNC2(void, X509_STORE_set_verify_cb, X509_STORE *a, a, X509_STORE_CTX_verify_cb verify_cb, verify_cb, return, DUMMYARG)
++DEFINEFUNC(STACK_OF(X509) *, X509_STORE_CTX_get0_chain, X509_STORE_CTX *a, a, return 0, return)
++DEFINEFUNC3(void, CRYPTO_free, void *str, str, const char *file, file, int line, line, return, DUMMYARG)
++DEFINEFUNC(long, OpenSSL_version_num, void, DUMMYARG, return 0, return)
++DEFINEFUNC(const char *, OpenSSL_version, int a, a, return 0, return)
++DEFINEFUNC(unsigned long, SSL_SESSION_get_ticket_lifetime_hint, const SSL_SESSION *session, session, return 0, return)
++DEFINEFUNC4(void, DH_get0_pqg, const DH *dh, dh, const BIGNUM **p, p, const BIGNUM **q, q, const BIGNUM **g, g, return, DUMMYARG)
++DEFINEFUNC(int, DH_bits, DH *dh, dh, return 0, return)
++
++#else // QT_CONFIG(opensslv11)
++
++// Functions below are either deprecated or removed in OpenSSL >= 1.1:
++
++DEFINEFUNC(unsigned char *, ASN1_STRING_data, ASN1_STRING *a, a, return 0, return)
++
+ #ifdef SSLEAY_MACROS
+ DEFINEFUNC3(void *, ASN1_dup, i2d_of_void *a, a, d2i_of_void *b, b, char *c, c, return 0, return)
+ #endif
++DEFINEFUNC2(BIO *, BIO_new_file, const char *filename, filename, const char *mode, mode, return 0, return)
++DEFINEFUNC(void, ERR_clear_error, DUMMYARG, DUMMYARG, return, DUMMYARG)
++DEFINEFUNC(BIO *, BIO_new, BIO_METHOD *a, a, return 0, return)
++DEFINEFUNC(BIO_METHOD *, BIO_s_mem, void, DUMMYARG, return 0, return)
++DEFINEFUNC(int, CRYPTO_num_locks, DUMMYARG, DUMMYARG, return 0, return)
++DEFINEFUNC(void, CRYPTO_set_locking_callback, void (*a)(int, int, const char *, int), a, return, DUMMYARG)
++DEFINEFUNC(void, CRYPTO_set_id_callback, unsigned long (*a)(), a, return, DUMMYARG)
++DEFINEFUNC(void, CRYPTO_free, void *a, a, return, DUMMYARG)
++DEFINEFUNC(unsigned long, ERR_peek_last_error, DUMMYARG, DUMMYARG, return 0, return)
++DEFINEFUNC(void, ERR_free_strings, void, DUMMYARG, return, DUMMYARG)
++DEFINEFUNC(void, EVP_CIPHER_CTX_cleanup, EVP_CIPHER_CTX *a, a, return, DUMMYARG)
++DEFINEFUNC(void, EVP_CIPHER_CTX_init, EVP_CIPHER_CTX *a, a, return, DUMMYARG)
++
++#ifdef SSLEAY_MACROS
++DEFINEFUNC6(void *, PEM_ASN1_read_bio, d2i_of_void *a, a, const char *b, b, BIO *c, c, void **d, d, pem_password_cb *e, e, void *f, f, return 0, return)
++DEFINEFUNC6(void *, PEM_ASN1_write_bio, d2i_of_void *a, a, const char *b, b, BIO *c, c, void **d, d, pem_password_cb *e, e, void *f, f, return 0, return)
++#endif // SSLEAY_MACROS
++
++DEFINEFUNC(int, sk_num, STACK *a, a, return -1, return)
++DEFINEFUNC2(void, sk_pop_free, STACK *a, a, void (*b)(void*), b, return, DUMMYARG)
++
++#if OPENSSL_VERSION_NUMBER >= 0x10000000L
++DEFINEFUNC(_STACK *, sk_new_null, DUMMYARG, DUMMYARG, return 0, return)
++DEFINEFUNC2(void, sk_push, _STACK *a, a, void *b, b, return, DUMMYARG)
++DEFINEFUNC(void, sk_free, _STACK *a, a, return, DUMMYARG)
++DEFINEFUNC2(void *, sk_value, STACK *a, a, int b, b, return 0, return)
++#else
++DEFINEFUNC(STACK *, sk_new_null, DUMMYARG, DUMMYARG, return 0, return)
++DEFINEFUNC2(void, sk_push, STACK *a, a, char *b, b, return, DUMMYARG)
++DEFINEFUNC(void, sk_free, STACK *a, a, return, DUMMYARG)
++DEFINEFUNC2(char *, sk_value, STACK *a, a, int b, b, return 0, return)
++#endif // OPENSSL_VERSION_NUMBER >= 0x10000000L
++
++DEFINEFUNC(int, SSL_library_init, void, DUMMYARG, return -1, return)
++DEFINEFUNC(void, SSL_load_error_strings, void, DUMMYARG, return, DUMMYARG)
++
++#if OPENSSL_VERSION_NUMBER >= 0x10001000L
++DEFINEFUNC5(int, SSL_get_ex_new_index, long argl, argl, void *argp, argp, CRYPTO_EX_new *new_func, new_func, CRYPTO_EX_dup *dup_func, dup_func, CRYPTO_EX_free *free_func, free_func, return -1, return)
++#endif // OPENSSL_VERSION_NUMBER >= 0x10001000L
++
++#if OPENSSL_VERSION_NUMBER >= 0x10000000L
++#ifndef OPENSSL_NO_SSL2
++DEFINEFUNC(const SSL_METHOD *, SSLv2_client_method, DUMMYARG, DUMMYARG, return 0, return)
++#endif
++#ifndef OPENSSL_NO_SSL3_METHOD
++DEFINEFUNC(const SSL_METHOD *, SSLv3_client_method, DUMMYARG, DUMMYARG, return 0, return)
++#endif
++DEFINEFUNC(const SSL_METHOD *, SSLv23_client_method, DUMMYARG, DUMMYARG, return 0, return)
++DEFINEFUNC(const SSL_METHOD *, TLSv1_client_method, DUMMYARG, DUMMYARG, return 0, return)
++#if OPENSSL_VERSION_NUMBER >= 0x10001000L
++DEFINEFUNC(const SSL_METHOD *, TLSv1_1_client_method, DUMMYARG, DUMMYARG, return 0, return)
++DEFINEFUNC(const SSL_METHOD *, TLSv1_2_client_method, DUMMYARG, DUMMYARG, return 0, return)
++#endif
++#ifndef OPENSSL_NO_SSL2
++DEFINEFUNC(const SSL_METHOD *, SSLv2_server_method, DUMMYARG, DUMMYARG, return 0, return)
++#endif
++#ifndef OPENSSL_NO_SSL3_METHOD
++DEFINEFUNC(const SSL_METHOD *, SSLv3_server_method, DUMMYARG, DUMMYARG, return 0, return)
++#endif
++DEFINEFUNC(const SSL_METHOD *, SSLv23_server_method, DUMMYARG, DUMMYARG, return 0, return)
++DEFINEFUNC(const SSL_METHOD *, TLSv1_server_method, DUMMYARG, DUMMYARG, return 0, return)
++#if OPENSSL_VERSION_NUMBER >= 0x10001000L
++DEFINEFUNC(const SSL_METHOD *, TLSv1_1_server_method, DUMMYARG, DUMMYARG, return 0, return)
++DEFINEFUNC(const SSL_METHOD *, TLSv1_2_server_method, DUMMYARG, DUMMYARG, return 0, return)
++#endif
++#else
++#ifndef OPENSSL_NO_SSL2
++DEFINEFUNC(SSL_METHOD *, SSLv2_client_method, DUMMYARG, DUMMYARG, return 0, return)
++#endif
++#ifndef OPENSSL_NO_SSL3_METHOD
++DEFINEFUNC(SSL_METHOD *, SSLv3_client_method, DUMMYARG, DUMMYARG, return 0, return)
++#endif
++DEFINEFUNC(SSL_METHOD *, SSLv23_client_method, DUMMYARG, DUMMYARG, return 0, return)
++DEFINEFUNC(SSL_METHOD *, TLSv1_client_method, DUMMYARG, DUMMYARG, return 0, return)
++#ifndef OPENSSL_NO_SSL2
++DEFINEFUNC(SSL_METHOD *, SSLv2_server_method, DUMMYARG, DUMMYARG, return 0, return)
++#endif
++#ifndef OPENSSL_NO_SSL3_METHOD
++DEFINEFUNC(SSL_METHOD *, SSLv3_server_method, DUMMYARG, DUMMYARG, return 0, return)
++#endif
++DEFINEFUNC(SSL_METHOD *, SSLv23_server_method, DUMMYARG, DUMMYARG, return 0, return)
++DEFINEFUNC(SSL_METHOD *, TLSv1_server_method, DUMMYARG, DUMMYARG, return 0, return)
++#endif
++
++DEFINEFUNC(STACK_OF(X509) *, X509_STORE_CTX_get_chain, X509_STORE_CTX *a, a, return 0, return)
++
++#ifdef SSLEAY_MACROS
++DEFINEFUNC2(int, i2d_DSAPrivateKey, const DSA *a, a, unsigned char **b, b, return -1, return)
++DEFINEFUNC2(int, i2d_RSAPrivateKey, const RSA *a, a, unsigned char **b, b, return -1, return)
++#ifndef OPENSSL_NO_EC
++DEFINEFUNC2(int, i2d_ECPrivateKey, const EC_KEY *a, a, unsigned char **b, b, return -1, return)
++#endif
++DEFINEFUNC3(RSA *, d2i_RSAPrivateKey, RSA **a, a, unsigned char **b, b, long c, c, return 0, return)
++DEFINEFUNC3(DSA *, d2i_DSAPrivateKey, DSA **a, a, unsigned char **b, b, long c, c, return 0, return)
++#ifndef OPENSSL_NO_EC
++DEFINEFUNC3(EC_KEY *, d2i_ECPrivateKey, EC_KEY **a, a, unsigned char **b, b, long c, c, return 0, return)
++#endif
++#endif
++DEFINEFUNC(char *, CONF_get1_default_config_file, DUMMYARG, DUMMYARG, return 0, return)
++DEFINEFUNC(void, OPENSSL_add_all_algorithms_noconf, void, DUMMYARG, return, DUMMYARG)
++DEFINEFUNC(void, OPENSSL_add_all_algorithms_conf, void, DUMMYARG, return, DUMMYARG)
++DEFINEFUNC(long, SSLeay, void, DUMMYARG, return 0, return)
++DEFINEFUNC(const char *, SSLeay_version, int a, a, return 0, return)
++
++#endif // QT_CONFIG(opensslv11)
++
+ DEFINEFUNC(long, ASN1_INTEGER_get, ASN1_INTEGER *a, a, return 0, return)
+-DEFINEFUNC(unsigned char *, ASN1_STRING_data, ASN1_STRING *a, a, return 0, return)
+ DEFINEFUNC(int, ASN1_STRING_length, ASN1_STRING *a, a, return 0, return)
+-DEFINEFUNC2(int, ASN1_STRING_to_UTF8, unsigned char **a, a, ASN1_STRING *b, b, return 0, return);
++DEFINEFUNC2(int, ASN1_STRING_to_UTF8, unsigned char **a, a, ASN1_STRING *b, b, return 0, return)
+ DEFINEFUNC4(long, BIO_ctrl, BIO *a, a, int b, b, long c, c, void *d, d, return -1, return)
+ DEFINEFUNC(int, BIO_free, BIO *a, a, return 0, return)
+-DEFINEFUNC(BIO *, BIO_new, BIO_METHOD *a, a, return 0, return)
+ DEFINEFUNC2(BIO *, BIO_new_mem_buf, void *a, a, int b, b, return 0, return)
+ DEFINEFUNC3(int, BIO_read, BIO *a, a, void *b, b, int c, c, return -1, return)
+-DEFINEFUNC(BIO_METHOD *, BIO_s_mem, void, DUMMYARG, return 0, return)
++
+ DEFINEFUNC3(int, BIO_write, BIO *a, a, const void *b, b, int c, c, return -1, return)
+ DEFINEFUNC(int, BN_num_bits, const BIGNUM *a, a, return 0, return)
+-#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+-DEFINEFUNC2(int, BN_is_word, BIGNUM *a, a, BN_ULONG w, w, return 0, return)
+-#endif
+ DEFINEFUNC2(BN_ULONG, BN_mod_word, const BIGNUM *a, a, BN_ULONG w, w, return static_cast<BN_ULONG>(-1), return)
+ #ifndef OPENSSL_NO_EC
+ DEFINEFUNC(const EC_GROUP*, EC_KEY_get0_group, const EC_KEY* k, k, return 0, return)
+ DEFINEFUNC(int, EC_GROUP_get_degree, const EC_GROUP* g, g, return 0, return)
+ #endif
+-DEFINEFUNC(int, CRYPTO_num_locks, DUMMYARG, DUMMYARG, return 0, return)
+-DEFINEFUNC(void, CRYPTO_set_locking_callback, void (*a)(int, int, const char *, int), a, return, DUMMYARG)
+-DEFINEFUNC(void, CRYPTO_set_id_callback, unsigned long (*a)(), a, return, DUMMYARG)
+-DEFINEFUNC(void, CRYPTO_free, void *a, a, return, DUMMYARG)
+ DEFINEFUNC(DSA *, DSA_new, DUMMYARG, DUMMYARG, return 0, return)
+ DEFINEFUNC(void, DSA_free, DSA *a, a, return, DUMMYARG)
+ DEFINEFUNC3(X509 *, d2i_X509, X509 **a, a, const unsigned char **b, b, long c, c, return 0, return)
+ DEFINEFUNC2(char *, ERR_error_string, unsigned long a, a, char *b, b, return 0, return)
+ DEFINEFUNC(unsigned long, ERR_get_error, DUMMYARG, DUMMYARG, return 0, return)
+-DEFINEFUNC(void, ERR_free_strings, void, DUMMYARG, return, DUMMYARG)
+-DEFINEFUNC(void, EVP_CIPHER_CTX_cleanup, EVP_CIPHER_CTX *a, a, return, DUMMYARG)
+-DEFINEFUNC(void, EVP_CIPHER_CTX_init, EVP_CIPHER_CTX *a, a, return, DUMMYARG)
+-DEFINEFUNC4(int, EVP_CIPHER_CTX_ctrl, EVP_CIPHER_CTX *ctx, ctx, int type, type, int arg, arg, void *ptr, ptr, return 0, return);
++DEFINEFUNC(EVP_CIPHER_CTX *, EVP_CIPHER_CTX_new, void, DUMMYARG, return 0, return)
++DEFINEFUNC(void, EVP_CIPHER_CTX_free, EVP_CIPHER_CTX *a, a, return, DUMMYARG)
++DEFINEFUNC4(int, EVP_CIPHER_CTX_ctrl, EVP_CIPHER_CTX *ctx, ctx, int type, type, int arg, arg, void *ptr, ptr, return 0, return)
+ DEFINEFUNC2(int, EVP_CIPHER_CTX_set_key_length, EVP_CIPHER_CTX *ctx, ctx, int keylen, keylen, return 0, return)
+-DEFINEFUNC5(int, EVP_CipherInit, EVP_CIPHER_CTX *ctx, ctx, const EVP_CIPHER *type, type, const unsigned char *key, key, const unsigned char *iv, iv, int enc, enc, return 0, return);
+-DEFINEFUNC5(int, EVP_CipherUpdate, EVP_CIPHER_CTX *ctx, ctx, unsigned char *out, out, int *outl, outl, const unsigned char *in, in, int inl, inl, return 0, return);
+-DEFINEFUNC3(int, EVP_CipherFinal, EVP_CIPHER_CTX *ctx, ctx, unsigned char *out, out, int *outl, outl, return 0, return);
++DEFINEFUNC5(int, EVP_CipherInit, EVP_CIPHER_CTX *ctx, ctx, const EVP_CIPHER *type, type, const unsigned char *key, key, const unsigned char *iv, iv, int enc, enc, return 0, return)
++DEFINEFUNC6(int, EVP_CipherInit_ex, EVP_CIPHER_CTX *ctx, ctx, const EVP_CIPHER *cipher, cipher, ENGINE *impl, impl, const unsigned char *key, key, const unsigned char *iv, iv, int enc, enc, return 0, return)
++DEFINEFUNC5(int, EVP_CipherUpdate, EVP_CIPHER_CTX *ctx, ctx, unsigned char *out, out, int *outl, outl, const unsigned char *in, in, int inl, inl, return 0, return)
++DEFINEFUNC3(int, EVP_CipherFinal, EVP_CIPHER_CTX *ctx, ctx, unsigned char *out, out, int *outl, outl, return 0, return)
+ DEFINEFUNC(const EVP_CIPHER *, EVP_des_cbc, DUMMYARG, DUMMYARG, return 0, return)
+ DEFINEFUNC(const EVP_CIPHER *, EVP_des_ede3_cbc, DUMMYARG, DUMMYARG, return 0, return)
+ DEFINEFUNC(const EVP_CIPHER *, EVP_rc2_cbc, DUMMYARG, DUMMYARG, return 0, return)
++DEFINEFUNC(const EVP_MD *, EVP_sha1, DUMMYARG, DUMMYARG, return 0, return)
+ DEFINEFUNC3(int, EVP_PKEY_assign, EVP_PKEY *a, a, int b, b, char *c, c, return -1, return)
+ DEFINEFUNC2(int, EVP_PKEY_set1_RSA, EVP_PKEY *a, a, RSA *b, b, return -1, return)
+ DEFINEFUNC2(int, EVP_PKEY_set1_DSA, EVP_PKEY *a, a, DSA *b, b, return -1, return)
+@@ -202,10 +349,8 @@ DEFINEFUNC3(int, i2t_ASN1_OBJECT, char *
+ DEFINEFUNC4(int, OBJ_obj2txt, char *a, a, int b, b, ASN1_OBJECT *c, c, int d, d, return -1, return)
+
+ DEFINEFUNC(int, OBJ_obj2nid, const ASN1_OBJECT *a, a, return NID_undef, return)
+-#ifdef SSLEAY_MACROS
+-DEFINEFUNC6(void *, PEM_ASN1_read_bio, d2i_of_void *a, a, const char *b, b, BIO *c, c, void **d, d, pem_password_cb *e, e, void *f, f, return 0, return)
+-DEFINEFUNC6(void *, PEM_ASN1_write_bio, d2i_of_void *a, a, const char *b, b, BIO *c, c, void **d, d, pem_password_cb *e, e, void *f, f, return 0, return)
+-#else
++
++#ifndef SSLEAY_MACROS
+ DEFINEFUNC4(EVP_PKEY *, PEM_read_bio_PrivateKey, BIO *a, a, EVP_PKEY **b, b, pem_password_cb *c, c, void *d, d, return 0, return)
+ DEFINEFUNC4(DSA *, PEM_read_bio_DSAPrivateKey, BIO *a, a, DSA **b, b, pem_password_cb *c, c, void *d, d, return 0, return)
+ DEFINEFUNC4(RSA *, PEM_read_bio_RSAPrivateKey, BIO *a, a, RSA **b, b, pem_password_cb *c, c, void *d, d, return 0, return)
+@@ -218,7 +363,7 @@ DEFINEFUNC7(int, PEM_write_bio_RSAPrivat
+ #ifndef OPENSSL_NO_EC
+ DEFINEFUNC7(int, PEM_write_bio_ECPrivateKey, BIO *a, a, EC_KEY *b, b, const EVP_CIPHER *c, c, unsigned char *d, d, int e, e, pem_password_cb *f, f, void *g, g, return 0, return)
+ #endif
+-#endif
++#endif // !SSLEAY_MACROS
+ DEFINEFUNC4(EVP_PKEY *, PEM_read_bio_PUBKEY, BIO *a, a, EVP_PKEY **b, b, pem_password_cb *c, c, void *d, d, return 0, return)
+ DEFINEFUNC4(DSA *, PEM_read_bio_DSA_PUBKEY, BIO *a, a, DSA **b, b, pem_password_cb *c, c, void *d, d, return 0, return)
+ DEFINEFUNC4(RSA *, PEM_read_bio_RSA_PUBKEY, BIO *a, a, RSA **b, b, pem_password_cb *c, c, void *d, d, return 0, return)
+@@ -234,23 +379,10 @@ DEFINEFUNC2(void, RAND_seed, const void
+ DEFINEFUNC(int, RAND_status, void, DUMMYARG, return -1, return)
+ DEFINEFUNC(RSA *, RSA_new, DUMMYARG, DUMMYARG, return 0, return)
+ DEFINEFUNC(void, RSA_free, RSA *a, a, return, DUMMYARG)
+-DEFINEFUNC(int, sk_num, STACK *a, a, return -1, return)
+-DEFINEFUNC2(void, sk_pop_free, STACK *a, a, void (*b)(void*), b, return, DUMMYARG)
+-#if OPENSSL_VERSION_NUMBER >= 0x10000000L
+-DEFINEFUNC(_STACK *, sk_new_null, DUMMYARG, DUMMYARG, return 0, return)
+-DEFINEFUNC2(void, sk_push, _STACK *a, a, void *b, b, return, DUMMYARG)
+-DEFINEFUNC(void, sk_free, _STACK *a, a, return, DUMMYARG)
+-DEFINEFUNC2(void *, sk_value, STACK *a, a, int b, b, return 0, return)
+-#else
+-DEFINEFUNC(STACK *, sk_new_null, DUMMYARG, DUMMYARG, return 0, return)
+-DEFINEFUNC2(void, sk_push, STACK *a, a, char *b, b, return, DUMMYARG)
+-DEFINEFUNC(void, sk_free, STACK *a, a, return, DUMMYARG)
+-DEFINEFUNC2(char *, sk_value, STACK *a, a, int b, b, return 0, return)
+-#endif
+ DEFINEFUNC(int, SSL_accept, SSL *a, a, return -1, return)
+ DEFINEFUNC(int, SSL_clear, SSL *a, a, return -1, return)
+-DEFINEFUNC3(char *, SSL_CIPHER_description, SSL_CIPHER *a, a, char *b, b, int c, c, return 0, return)
+-DEFINEFUNC2(int, SSL_CIPHER_get_bits, SSL_CIPHER *a, a, int *b, b, return 0, return)
++DEFINEFUNC3(char *, SSL_CIPHER_description, const SSL_CIPHER *a, a, char *b, b, int c, c, return 0, return)
++DEFINEFUNC2(int, SSL_CIPHER_get_bits, const SSL_CIPHER *a, a, int *b, b, return 0, return)
+ DEFINEFUNC(int, SSL_connect, SSL *a, a, return -1, return)
+ DEFINEFUNC(int, SSL_CTX_check_private_key, const SSL_CTX *a, a, return -1, return)
+ DEFINEFUNC4(long, SSL_CTX_ctrl, SSL_CTX *a, a, int b, b, long c, c, void *d, d, return -1, return)
+@@ -287,8 +419,6 @@ DEFINEFUNC(long, SSL_get_verify_result,
+ #else
+ DEFINEFUNC(long, SSL_get_verify_result, SSL *a, a, return -1, return)
+ #endif
+-DEFINEFUNC(int, SSL_library_init, void, DUMMYARG, return -1, return)
+-DEFINEFUNC(void, SSL_load_error_strings, void, DUMMYARG, return, DUMMYARG)
+ DEFINEFUNC(SSL *, SSL_new, SSL_CTX *a, a, return 0, return)
+ DEFINEFUNC4(long, SSL_ctrl, SSL *a, a, int cmd, cmd, long larg, larg, void *parg, parg, return -1, return)
+ DEFINEFUNC3(int, SSL_read, SSL *a, a, void *b, b, int c, c, return -1, return)
+@@ -301,7 +431,6 @@ DEFINEFUNC(void, SSL_SESSION_free, SSL_S
+ DEFINEFUNC(SSL_SESSION*, SSL_get1_session, SSL *ssl, ssl, return 0, return)
+ DEFINEFUNC(SSL_SESSION*, SSL_get_session, const SSL *ssl, ssl, return 0, return)
+ #if OPENSSL_VERSION_NUMBER >= 0x10001000L
+-DEFINEFUNC5(int, SSL_get_ex_new_index, long argl, argl, void *argp, argp, CRYPTO_EX_new *new_func, new_func, CRYPTO_EX_dup *dup_func, dup_func, CRYPTO_EX_free *free_func, free_func, return -1, return)
+ DEFINEFUNC3(int, SSL_set_ex_data, SSL *ssl, ssl, int idx, idx, void *arg, arg, return 0, return)
+ DEFINEFUNC2(void *, SSL_get_ex_data, const SSL *ssl, ssl, int idx, idx, return NULL, return)
+ #endif
+@@ -310,51 +439,9 @@ DEFINEFUNC2(void, SSL_set_psk_client_cal
+ DEFINEFUNC2(void, SSL_set_psk_server_callback, SSL* ssl, ssl, q_psk_server_callback_t callback, callback, return, DUMMYARG)
+ DEFINEFUNC2(int, SSL_CTX_use_psk_identity_hint, SSL_CTX* ctx, ctx, const char *hint, hint, return 0, return)
+ #endif
+-#if OPENSSL_VERSION_NUMBER >= 0x10000000L
+-#ifndef OPENSSL_NO_SSL2
+-DEFINEFUNC(const SSL_METHOD *, SSLv2_client_method, DUMMYARG, DUMMYARG, return 0, return)
+-#endif
+-#ifndef OPENSSL_NO_SSL3_METHOD
+-DEFINEFUNC(const SSL_METHOD *, SSLv3_client_method, DUMMYARG, DUMMYARG, return 0, return)
+-#endif
+-DEFINEFUNC(const SSL_METHOD *, SSLv23_client_method, DUMMYARG, DUMMYARG, return 0, return)
+-DEFINEFUNC(const SSL_METHOD *, TLSv1_client_method, DUMMYARG, DUMMYARG, return 0, return)
+-#if OPENSSL_VERSION_NUMBER >= 0x10001000L
+-DEFINEFUNC(const SSL_METHOD *, TLSv1_1_client_method, DUMMYARG, DUMMYARG, return 0, return)
+-DEFINEFUNC(const SSL_METHOD *, TLSv1_2_client_method, DUMMYARG, DUMMYARG, return 0, return)
+-#endif
+-#ifndef OPENSSL_NO_SSL2
+-DEFINEFUNC(const SSL_METHOD *, SSLv2_server_method, DUMMYARG, DUMMYARG, return 0, return)
+-#endif
+-#ifndef OPENSSL_NO_SSL3_METHOD
+-DEFINEFUNC(const SSL_METHOD *, SSLv3_server_method, DUMMYARG, DUMMYARG, return 0, return)
+-#endif
+-DEFINEFUNC(const SSL_METHOD *, SSLv23_server_method, DUMMYARG, DUMMYARG, return 0, return)
+-DEFINEFUNC(const SSL_METHOD *, TLSv1_server_method, DUMMYARG, DUMMYARG, return 0, return)
+-#if OPENSSL_VERSION_NUMBER >= 0x10001000L
+-DEFINEFUNC(const SSL_METHOD *, TLSv1_1_server_method, DUMMYARG, DUMMYARG, return 0, return)
+-DEFINEFUNC(const SSL_METHOD *, TLSv1_2_server_method, DUMMYARG, DUMMYARG, return 0, return)
+-#endif
+-#else
+-#ifndef OPENSSL_NO_SSL2
+-DEFINEFUNC(SSL_METHOD *, SSLv2_client_method, DUMMYARG, DUMMYARG, return 0, return)
+-#endif
+-#ifndef OPENSSL_NO_SSL3_METHOD
+-DEFINEFUNC(SSL_METHOD *, SSLv3_client_method, DUMMYARG, DUMMYARG, return 0, return)
+-#endif
+-DEFINEFUNC(SSL_METHOD *, SSLv23_client_method, DUMMYARG, DUMMYARG, return 0, return)
+-DEFINEFUNC(SSL_METHOD *, TLSv1_client_method, DUMMYARG, DUMMYARG, return 0, return)
+-#ifndef OPENSSL_NO_SSL2
+-DEFINEFUNC(SSL_METHOD *, SSLv2_server_method, DUMMYARG, DUMMYARG, return 0, return)
+-#endif
+-#ifndef OPENSSL_NO_SSL3_METHOD
+-DEFINEFUNC(SSL_METHOD *, SSLv3_server_method, DUMMYARG, DUMMYARG, return 0, return)
+-#endif
+-DEFINEFUNC(SSL_METHOD *, SSLv23_server_method, DUMMYARG, DUMMYARG, return 0, return)
+-DEFINEFUNC(SSL_METHOD *, TLSv1_server_method, DUMMYARG, DUMMYARG, return 0, return)
+-#endif
+ DEFINEFUNC3(int, SSL_write, SSL *a, a, const void *b, b, int c, c, return -1, return)
+ DEFINEFUNC2(int, X509_cmp, X509 *a, a, X509 *b, b, return -1, return)
++DEFINEFUNC4(int, X509_digest, const X509 *x509, x509, const EVP_MD *type, type, unsigned char *md, md, unsigned int *len, len, return -1, return)
+ #ifndef SSLEAY_MACROS
+ DEFINEFUNC(X509 *, X509_dup, X509 *a, a, return 0, return)
+ #endif
+@@ -378,6 +465,7 @@ DEFINEFUNC2(int, ASN1_STRING_print, BIO
+ DEFINEFUNC2(int, X509_check_issued, X509 *a, a, X509 *b, b, return -1, return)
+ DEFINEFUNC(X509_NAME *, X509_get_issuer_name, X509 *a, a, return 0, return)
+ DEFINEFUNC(X509_NAME *, X509_get_subject_name, X509 *a, a, return 0, return)
++DEFINEFUNC(ASN1_INTEGER *, X509_get_serialNumber, X509 *a, a, return 0, return)
+ DEFINEFUNC(int, X509_verify_cert, X509_STORE_CTX *a, a, return -1, return)
+ DEFINEFUNC(int, X509_NAME_entry_count, X509_NAME *a, a, return 0, return)
+ DEFINEFUNC2(X509_NAME_ENTRY *, X509_NAME_get_entry, X509_NAME *a, a, int b, b, return 0, return)
+@@ -393,7 +481,6 @@ DEFINEFUNC2(int, X509_STORE_CTX_set_purp
+ DEFINEFUNC(int, X509_STORE_CTX_get_error, X509_STORE_CTX *a, a, return -1, return)
+ DEFINEFUNC(int, X509_STORE_CTX_get_error_depth, X509_STORE_CTX *a, a, return -1, return)
+ DEFINEFUNC(X509 *, X509_STORE_CTX_get_current_cert, X509_STORE_CTX *a, a, return 0, return)
+-DEFINEFUNC(STACK_OF(X509) *, X509_STORE_CTX_get_chain, X509_STORE_CTX *a, a, return 0, return)
+ DEFINEFUNC(X509_STORE_CTX *, X509_STORE_CTX_new, DUMMYARG, DUMMYARG, return 0, return)
+ #ifdef SSLEAY_MACROS
+ DEFINEFUNC2(int, i2d_DSAPrivateKey, const DSA *a, a, unsigned char **b, b, return -1, return)
+@@ -407,11 +494,7 @@ DEFINEFUNC3(DSA *, d2i_DSAPrivateKey, DS
+ DEFINEFUNC3(EC_KEY *, d2i_ECPrivateKey, EC_KEY **a, a, unsigned char **b, b, long c, c, return 0, return)
+ #endif
+ #endif
+-DEFINEFUNC(void, OPENSSL_add_all_algorithms_noconf, void, DUMMYARG, return, DUMMYARG)
+-DEFINEFUNC(void, OPENSSL_add_all_algorithms_conf, void, DUMMYARG, return, DUMMYARG)
+ DEFINEFUNC3(int, SSL_CTX_load_verify_locations, SSL_CTX *ctx, ctx, const char *CAfile, CAfile, const char *CApath, CApath, return 0, return)
+-DEFINEFUNC(long, SSLeay, void, DUMMYARG, return 0, return)
+-DEFINEFUNC(const char *, SSLeay_version, int a, a, return 0, return)
+ DEFINEFUNC2(int, i2d_SSL_SESSION, SSL_SESSION *in, in, unsigned char **pp, pp, return 0, return)
+ DEFINEFUNC3(SSL_SESSION *, d2i_SSL_SESSION, SSL_SESSION **a, a, const unsigned char **pp, pp, long length, length, return 0, return)
+ #if OPENSSL_VERSION_NUMBER >= 0x1000100fL && !defined(OPENSSL_NO_NEXTPROTONEG)
+@@ -694,8 +777,8 @@ static QPair<QLibrary*, QLibrary*> loadO
+ #ifndef Q_OS_DARWIN
+ // second attempt: find the development files libssl.so and libcrypto.so
+ //
+- // disabled on OS X/iOS:
+- // OS X's /usr/lib/libssl.dylib, /usr/lib/libcrypto.dylib will be picked up in the third
++ // disabled on macOS/iOS:
++ // macOS's /usr/lib/libssl.dylib, /usr/lib/libcrypto.dylib will be picked up in the third
+ // attempt, _after_ <bundle>/Contents/Frameworks has been searched.
+ // iOS does not ship a system libssl.dylib, libcrypto.dylib in the first place.
+ libssl->setFileNameAndVersion(QLatin1String("ssl"), -1);
+@@ -754,8 +837,12 @@ bool q_resolveOpenSslSymbols()
+ static bool symbolsResolved = false;
+ static bool triedToResolveSymbols = false;
+ #ifndef QT_NO_THREAD
++#if QT_CONFIG(opensslv11)
++ QMutexLocker locker(QMutexPool::globalInstanceGet((void *)&q_OPENSSL_init_ssl));
++#else
+ QMutexLocker locker(QMutexPool::globalInstanceGet((void *)&q_SSL_library_init));
+ #endif
++#endif
+ if (symbolsResolved)
+ return true;
+ if (triedToResolveSymbols)
+@@ -771,11 +858,145 @@ bool q_resolveOpenSslSymbols()
+ // failed to load them
+ return false;
+
++#if QT_CONFIG(opensslv11)
++
++ RESOLVEFUNC(OPENSSL_init_ssl)
++ RESOLVEFUNC(OPENSSL_init_crypto)
++ RESOLVEFUNC(ASN1_STRING_get0_data)
++ RESOLVEFUNC(EVP_CIPHER_CTX_reset)
++ RESOLVEFUNC(EVP_PKEY_base_id)
++ RESOLVEFUNC(RSA_bits)
++ RESOLVEFUNC(OPENSSL_sk_new_null)
++ RESOLVEFUNC(OPENSSL_sk_push)
++ RESOLVEFUNC(OPENSSL_sk_free)
++ RESOLVEFUNC(OPENSSL_sk_num)
++ RESOLVEFUNC(OPENSSL_sk_pop_free)
++ RESOLVEFUNC(OPENSSL_sk_value)
++ RESOLVEFUNC(DH_get0_pqg)
++ RESOLVEFUNC(SSL_CTX_set_options)
++ RESOLVEFUNC(SSL_get_client_random)
++ RESOLVEFUNC(SSL_SESSION_get_master_key)
++ RESOLVEFUNC(SSL_session_reused)
++ RESOLVEFUNC(SSL_get_session)
++ RESOLVEFUNC(CRYPTO_get_ex_new_index)
++ RESOLVEFUNC(TLS_method)
++ RESOLVEFUNC(TLS_client_method)
++ RESOLVEFUNC(TLS_server_method)
++ RESOLVEFUNC(X509_STORE_CTX_get0_chain)
++ RESOLVEFUNC(X509_getm_notBefore)
++ RESOLVEFUNC(X509_getm_notAfter)
++ RESOLVEFUNC(X509_get_version)
++ RESOLVEFUNC(X509_get_pubkey)
++ RESOLVEFUNC(X509_STORE_set_verify_cb)
++ RESOLVEFUNC(CRYPTO_free)
++ RESOLVEFUNC(OpenSSL_version_num)
++ RESOLVEFUNC(OpenSSL_version)
++ if (!_q_OpenSSL_version) {
++ // Apparently, we were built with OpenSSL 1.1 enabled but are now using
++ // a wrong library.
++ delete libs.first;
++ delete libs.second;
++ qCWarning(lcSsl, "Incompatible version of OpenSSL");
++ return false;
++ }
++
++ RESOLVEFUNC(SSL_SESSION_get_ticket_lifetime_hint)
++ RESOLVEFUNC(DH_bits)
++ RESOLVEFUNC(DSA_bits)
++
++#else // !opensslv11
++
++ RESOLVEFUNC(ASN1_STRING_data)
++
+ #ifdef SSLEAY_MACROS
+ RESOLVEFUNC(ASN1_dup)
++#endif // SSLEAY_MACROS
++ RESOLVEFUNC(BIO_new_file)
++ RESOLVEFUNC(ERR_clear_error)
++ RESOLVEFUNC(CRYPTO_free)
++ RESOLVEFUNC(CRYPTO_num_locks)
++ RESOLVEFUNC(CRYPTO_set_id_callback)
++ RESOLVEFUNC(CRYPTO_set_locking_callback)
++ RESOLVEFUNC(ERR_peek_last_error)
++ RESOLVEFUNC(ERR_free_strings)
++ RESOLVEFUNC(EVP_CIPHER_CTX_cleanup)
++ RESOLVEFUNC(EVP_CIPHER_CTX_init)
++
++#ifdef SSLEAY_MACROS // ### verify
++ RESOLVEFUNC(PEM_ASN1_read_bio)
++#endif // SSLEAY_MACROS
++
++ RESOLVEFUNC(sk_new_null)
++ RESOLVEFUNC(sk_push)
++ RESOLVEFUNC(sk_free)
++ RESOLVEFUNC(sk_num)
++ RESOLVEFUNC(sk_pop_free)
++ RESOLVEFUNC(sk_value)
++ RESOLVEFUNC(SSL_library_init)
++ RESOLVEFUNC(SSL_load_error_strings)
++#if OPENSSL_VERSION_NUMBER >= 0x10001000L
++ RESOLVEFUNC(SSL_get_ex_new_index)
++#endif
++#ifndef OPENSSL_NO_SSL2
++ RESOLVEFUNC(SSLv2_client_method)
++#endif
++#ifndef OPENSSL_NO_SSL3_METHOD
++ RESOLVEFUNC(SSLv3_client_method)
++#endif
++ RESOLVEFUNC(SSLv23_client_method)
++ RESOLVEFUNC(TLSv1_client_method)
++#if OPENSSL_VERSION_NUMBER >= 0x10001000L
++ RESOLVEFUNC(TLSv1_1_client_method)
++ RESOLVEFUNC(TLSv1_2_client_method)
+ #endif
++#ifndef OPENSSL_NO_SSL2
++ RESOLVEFUNC(SSLv2_server_method)
++#endif
++#ifndef OPENSSL_NO_SSL3_METHOD
++ RESOLVEFUNC(SSLv3_server_method)
++#endif
++ RESOLVEFUNC(SSLv23_server_method)
++ RESOLVEFUNC(TLSv1_server_method)
++#if OPENSSL_VERSION_NUMBER >= 0x10001000L
++ RESOLVEFUNC(TLSv1_1_server_method)
++ RESOLVEFUNC(TLSv1_2_server_method)
++#endif
++ RESOLVEFUNC(X509_STORE_CTX_get_chain)
++#ifdef SSLEAY_MACROS
++ RESOLVEFUNC(i2d_DSAPrivateKey)
++ RESOLVEFUNC(i2d_RSAPrivateKey)
++ RESOLVEFUNC(d2i_DSAPrivateKey)
++ RESOLVEFUNC(d2i_RSAPrivateKey)
++#endif
++ RESOLVEFUNC(CONF_get1_default_config_file)
++ RESOLVEFUNC(OPENSSL_add_all_algorithms_noconf)
++ RESOLVEFUNC(OPENSSL_add_all_algorithms_conf)
++ RESOLVEFUNC(SSLeay)
++
++ if (!_q_SSLeay || q_SSLeay() >= 0x10100000L) {
++ // OpenSSL 1.1 has deprecated and removed SSLeay. We consider a failure to
++ // resolve this symbol as a failure to resolve symbols.
++ // The right operand of '||' above is ... a bit of paranoia.
++ delete libs.first;
++ delete libs.second;
++ qCWarning(lcSsl, "Incompatible version of OpenSSL");
++ return false;
++ }
++
++
++ RESOLVEFUNC(SSLeay_version)
++
++#ifndef OPENSSL_NO_EC
++#if OPENSSL_VERSION_NUMBER >= 0x10002000L
++ if (q_SSLeay() >= 0x10002000L)
++ RESOLVEFUNC(EC_curve_nist2nid)
++#endif // OPENSSL_VERSION_NUMBER >= 0x10002000L
++#endif // OPENSSL_NO_EC
++
++
++#endif // !opensslv11
++
+ RESOLVEFUNC(ASN1_INTEGER_get)
+- RESOLVEFUNC(ASN1_STRING_data)
+ RESOLVEFUNC(ASN1_STRING_length)
+ RESOLVEFUNC(ASN1_STRING_to_UTF8)
+ RESOLVEFUNC(BIO_ctrl)
+@@ -794,25 +1015,22 @@ bool q_resolveOpenSslSymbols()
+ RESOLVEFUNC(BN_is_word)
+ #endif
+ RESOLVEFUNC(BN_mod_word)
+- RESOLVEFUNC(CRYPTO_free)
+- RESOLVEFUNC(CRYPTO_num_locks)
+- RESOLVEFUNC(CRYPTO_set_id_callback)
+- RESOLVEFUNC(CRYPTO_set_locking_callback)
+ RESOLVEFUNC(DSA_new)
+ RESOLVEFUNC(DSA_free)
+ RESOLVEFUNC(ERR_error_string)
+ RESOLVEFUNC(ERR_get_error)
+- RESOLVEFUNC(ERR_free_strings)
+- RESOLVEFUNC(EVP_CIPHER_CTX_cleanup)
+- RESOLVEFUNC(EVP_CIPHER_CTX_init)
++ RESOLVEFUNC(EVP_CIPHER_CTX_new)
++ RESOLVEFUNC(EVP_CIPHER_CTX_free)
+ RESOLVEFUNC(EVP_CIPHER_CTX_ctrl)
+ RESOLVEFUNC(EVP_CIPHER_CTX_set_key_length)
+ RESOLVEFUNC(EVP_CipherInit)
++ RESOLVEFUNC(EVP_CipherInit_ex)
+ RESOLVEFUNC(EVP_CipherUpdate)
+ RESOLVEFUNC(EVP_CipherFinal)
+ RESOLVEFUNC(EVP_des_cbc)
+ RESOLVEFUNC(EVP_des_ede3_cbc)
+ RESOLVEFUNC(EVP_rc2_cbc)
++ RESOLVEFUNC(EVP_sha1)
+ RESOLVEFUNC(EVP_PKEY_assign)
+ RESOLVEFUNC(EVP_PKEY_set1_RSA)
+ RESOLVEFUNC(EVP_PKEY_set1_DSA)
+@@ -834,9 +1052,8 @@ bool q_resolveOpenSslSymbols()
+ RESOLVEFUNC(i2t_ASN1_OBJECT)
+ RESOLVEFUNC(OBJ_obj2txt)
+ RESOLVEFUNC(OBJ_obj2nid)
+-#ifdef SSLEAY_MACROS // ### verify
+- RESOLVEFUNC(PEM_ASN1_read_bio)
+-#else
++
++#ifndef SSLEAY_MACROS
+ RESOLVEFUNC(PEM_read_bio_PrivateKey)
+ RESOLVEFUNC(PEM_read_bio_DSAPrivateKey)
+ RESOLVEFUNC(PEM_read_bio_RSAPrivateKey)
+@@ -849,7 +1066,8 @@ bool q_resolveOpenSslSymbols()
+ #ifndef OPENSSL_NO_EC
+ RESOLVEFUNC(PEM_write_bio_ECPrivateKey)
+ #endif
+-#endif
++#endif // !SSLEAY_MACROS
++
+ RESOLVEFUNC(PEM_read_bio_PUBKEY)
+ RESOLVEFUNC(PEM_read_bio_DSA_PUBKEY)
+ RESOLVEFUNC(PEM_read_bio_RSA_PUBKEY)
+@@ -865,12 +1083,6 @@ bool q_resolveOpenSslSymbols()
+ RESOLVEFUNC(RAND_status)
+ RESOLVEFUNC(RSA_new)
+ RESOLVEFUNC(RSA_free)
+- RESOLVEFUNC(sk_new_null)
+- RESOLVEFUNC(sk_push)
+- RESOLVEFUNC(sk_free)
+- RESOLVEFUNC(sk_num)
+- RESOLVEFUNC(sk_pop_free)
+- RESOLVEFUNC(sk_value)
+ RESOLVEFUNC(SSL_CIPHER_description)
+ RESOLVEFUNC(SSL_CIPHER_get_bits)
+ RESOLVEFUNC(SSL_CTX_check_private_key)
+@@ -898,8 +1110,6 @@ bool q_resolveOpenSslSymbols()
+ RESOLVEFUNC(SSL_get_peer_cert_chain)
+ RESOLVEFUNC(SSL_get_peer_certificate)
+ RESOLVEFUNC(SSL_get_verify_result)
+- RESOLVEFUNC(SSL_library_init)
+- RESOLVEFUNC(SSL_load_error_strings)
+ RESOLVEFUNC(SSL_new)
+ RESOLVEFUNC(SSL_ctrl)
+ RESOLVEFUNC(SSL_read)
+@@ -912,7 +1122,6 @@ bool q_resolveOpenSslSymbols()
+ RESOLVEFUNC(SSL_get1_session)
+ RESOLVEFUNC(SSL_get_session)
+ #if OPENSSL_VERSION_NUMBER >= 0x10001000L
+- RESOLVEFUNC(SSL_get_ex_new_index)
+ RESOLVEFUNC(SSL_set_ex_data)
+ RESOLVEFUNC(SSL_get_ex_data)
+ #endif
+@@ -922,30 +1131,6 @@ bool q_resolveOpenSslSymbols()
+ RESOLVEFUNC(SSL_CTX_use_psk_identity_hint)
+ #endif
+ RESOLVEFUNC(SSL_write)
+-#ifndef OPENSSL_NO_SSL2
+- RESOLVEFUNC(SSLv2_client_method)
+-#endif
+-#ifndef OPENSSL_NO_SSL3_METHOD
+- RESOLVEFUNC(SSLv3_client_method)
+-#endif
+- RESOLVEFUNC(SSLv23_client_method)
+- RESOLVEFUNC(TLSv1_client_method)
+-#if OPENSSL_VERSION_NUMBER >= 0x10001000L
+- RESOLVEFUNC(TLSv1_1_client_method)
+- RESOLVEFUNC(TLSv1_2_client_method)
+-#endif
+-#ifndef OPENSSL_NO_SSL2
+- RESOLVEFUNC(SSLv2_server_method)
+-#endif
+-#ifndef OPENSSL_NO_SSL3_METHOD
+- RESOLVEFUNC(SSLv3_server_method)
+-#endif
+- RESOLVEFUNC(SSLv23_server_method)
+- RESOLVEFUNC(TLSv1_server_method)
+-#if OPENSSL_VERSION_NUMBER >= 0x10001000L
+- RESOLVEFUNC(TLSv1_1_server_method)
+- RESOLVEFUNC(TLSv1_2_server_method)
+-#endif
+ RESOLVEFUNC(X509_NAME_entry_count)
+ RESOLVEFUNC(X509_NAME_get_entry)
+ RESOLVEFUNC(X509_NAME_ENTRY_get_data)
+@@ -961,12 +1146,12 @@ bool q_resolveOpenSslSymbols()
+ RESOLVEFUNC(X509_STORE_CTX_get_error)
+ RESOLVEFUNC(X509_STORE_CTX_get_error_depth)
+ RESOLVEFUNC(X509_STORE_CTX_get_current_cert)
+- RESOLVEFUNC(X509_STORE_CTX_get_chain)
+ RESOLVEFUNC(X509_cmp)
+ #ifndef SSLEAY_MACROS
+ RESOLVEFUNC(X509_dup)
+ #endif
+ RESOLVEFUNC(X509_print)
++ RESOLVEFUNC(X509_digest)
+ RESOLVEFUNC(X509_EXTENSION_get_object)
+ RESOLVEFUNC(X509_free)
+ RESOLVEFUNC(X509_get_ext)
+@@ -982,6 +1167,7 @@ bool q_resolveOpenSslSymbols()
+ RESOLVEFUNC(X509_check_issued)
+ RESOLVEFUNC(X509_get_issuer_name)
+ RESOLVEFUNC(X509_get_subject_name)
++ RESOLVEFUNC(X509_get_serialNumber)
+ RESOLVEFUNC(X509_verify_cert)
+ RESOLVEFUNC(d2i_X509)
+ RESOLVEFUNC(i2d_X509)
+@@ -991,11 +1177,7 @@ bool q_resolveOpenSslSymbols()
+ RESOLVEFUNC(d2i_DSAPrivateKey)
+ RESOLVEFUNC(d2i_RSAPrivateKey)
+ #endif
+- RESOLVEFUNC(OPENSSL_add_all_algorithms_noconf)
+- RESOLVEFUNC(OPENSSL_add_all_algorithms_conf)
+ RESOLVEFUNC(SSL_CTX_load_verify_locations)
+- RESOLVEFUNC(SSLeay)
+- RESOLVEFUNC(SSLeay_version)
+ RESOLVEFUNC(i2d_SSL_SESSION)
+ RESOLVEFUNC(d2i_SSL_SESSION)
+ #if OPENSSL_VERSION_NUMBER >= 0x1000100fL && !defined(OPENSSL_NO_NEXTPROTONEG)
+@@ -1019,27 +1201,14 @@ bool q_resolveOpenSslSymbols()
+ RESOLVEFUNC(EC_KEY_new_by_curve_name)
+ RESOLVEFUNC(EC_KEY_free)
+ RESOLVEFUNC(EC_get_builtin_curves)
+-#if OPENSSL_VERSION_NUMBER >= 0x10002000L
+- if (q_SSLeay() >= 0x10002000L)
+- RESOLVEFUNC(EC_curve_nist2nid)
+-#endif // OPENSSL_VERSION_NUMBER >= 0x10002000L
+ #endif // OPENSSL_NO_EC
+ RESOLVEFUNC(PKCS12_parse)
+ RESOLVEFUNC(d2i_PKCS12_bio)
+ RESOLVEFUNC(PKCS12_free)
+
++ symbolsResolved = true;
+ delete libs.first;
+ delete libs.second;
+- if (!_q_SSLeay || q_SSLeay() >= 0x10100000L) {
+- // OpenSSL 1.1 deprecated and removed SSLeay. We consider a failure to
+- // resolve this symbol as a failure to resolve symbols.
+- // The right operand of '||' above ... a bit of paranoia.
+- qCWarning(lcSsl, "Incompatible version of OpenSSL");
+- return false;
+- }
+-
+- symbolsResolved = true;
+-
+ return true;
+ }
+ #endif // QT_CONFIG(library)
+Index: qtbase-opensource-src-5.9.2/src/network/ssl/qsslsocket_openssl_symbols_p.h
+===================================================================
+--- qtbase-opensource-src-5.9.2.orig/src/network/ssl/qsslsocket_openssl_symbols_p.h
++++ qtbase-opensource-src-5.9.2/src/network/ssl/qsslsocket_openssl_symbols_p.h
+@@ -1,6 +1,6 @@
+ /****************************************************************************
+ **
+-** Copyright (C) 2016 The Qt Company Ltd.
++** Copyright (C) 2017 The Qt Company Ltd.
+ ** Copyright (C) 2014 BlackBerry Limited. All rights reserved.
+ ** Contact: https://www.qt.io/licensing/
+ **
+@@ -56,6 +56,7 @@
+ #ifndef QSSLSOCKET_OPENSSL_SYMBOLS_P_H
+ #define QSSLSOCKET_OPENSSL_SYMBOLS_P_H
+
++
+ //
+ // W A R N I N G
+ // -------------
+@@ -215,17 +216,20 @@ QT_BEGIN_NAMESPACE
+
+ #endif // !defined QT_LINKED_OPENSSL
+
++#if QT_CONFIG(opensslv11)
++#include "qsslsocket_openssl11_symbols_p.h"
++#else
++#include "qsslsocket_opensslpre11_symbols_p.h"
++#endif // QT_CONFIG
++
+ bool q_resolveOpenSslSymbols();
+ long q_ASN1_INTEGER_get(ASN1_INTEGER *a);
+-unsigned char * q_ASN1_STRING_data(ASN1_STRING *a);
+ int q_ASN1_STRING_length(ASN1_STRING *a);
+ int q_ASN1_STRING_to_UTF8(unsigned char **a, ASN1_STRING *b);
+ long q_BIO_ctrl(BIO *a, int b, long c, void *d);
+ Q_AUTOTEST_EXPORT int q_BIO_free(BIO *a);
+-Q_AUTOTEST_EXPORT BIO *q_BIO_new(BIO_METHOD *a);
+ BIO *q_BIO_new_mem_buf(void *a, int b);
+ int q_BIO_read(BIO *a, void *b, int c);
+-Q_AUTOTEST_EXPORT BIO_METHOD *q_BIO_s_mem();
+ Q_AUTOTEST_EXPORT int q_BIO_write(BIO *a, const void *b, int c);
+ int q_BN_num_bits(const BIGNUM *a);
+ #if OPENSSL_VERSION_NUMBER >= 0x10100000L
+@@ -247,26 +251,23 @@ BN_ULONG q_BN_mod_word(const BIGNUM *a,
+ const EC_GROUP* q_EC_KEY_get0_group(const EC_KEY* k);
+ int q_EC_GROUP_get_degree(const EC_GROUP* g);
+ #endif
+-int q_CRYPTO_num_locks();
+-void q_CRYPTO_set_locking_callback(void (*a)(int, int, const char *, int));
+-void q_CRYPTO_set_id_callback(unsigned long (*a)());
+-void q_CRYPTO_free(void *a);
+ DSA *q_DSA_new();
+ void q_DSA_free(DSA *a);
+ X509 *q_d2i_X509(X509 **a, const unsigned char **b, long c);
+ char *q_ERR_error_string(unsigned long a, char *b);
+ unsigned long q_ERR_get_error();
+-void q_ERR_free_strings();
+-void q_EVP_CIPHER_CTX_cleanup(EVP_CIPHER_CTX *a);
+-void q_EVP_CIPHER_CTX_init(EVP_CIPHER_CTX *a);
++EVP_CIPHER_CTX *q_EVP_CIPHER_CTX_new();
++void q_EVP_CIPHER_CTX_free(EVP_CIPHER_CTX *a);
+ int q_EVP_CIPHER_CTX_ctrl(EVP_CIPHER_CTX *ctx, int type, int arg, void *ptr);
+ int q_EVP_CIPHER_CTX_set_key_length(EVP_CIPHER_CTX *x, int keylen);
+ int q_EVP_CipherInit(EVP_CIPHER_CTX *ctx, const EVP_CIPHER *type, const unsigned char *key, const unsigned char *iv, int enc);
++int q_EVP_CipherInit_ex(EVP_CIPHER_CTX *ctx, const EVP_CIPHER *cipher, ENGINE *impl, const unsigned char *key, const unsigned char *iv, int enc);
+ int q_EVP_CipherUpdate(EVP_CIPHER_CTX *ctx, unsigned char *out, int *outl, const unsigned char *in, int inl);
+ int q_EVP_CipherFinal(EVP_CIPHER_CTX *ctx, unsigned char *out, int *outl);
+ const EVP_CIPHER *q_EVP_des_cbc();
+ const EVP_CIPHER *q_EVP_des_ede3_cbc();
+ const EVP_CIPHER *q_EVP_rc2_cbc();
++const EVP_MD *q_EVP_sha1();
+ int q_EVP_PKEY_assign(EVP_PKEY *a, int b, char *c);
+ Q_AUTOTEST_EXPORT int q_EVP_PKEY_set1_RSA(EVP_PKEY *a, RSA *b);
+ int q_EVP_PKEY_set1_DSA(EVP_PKEY *a, DSA *b);
+@@ -310,7 +311,7 @@ int q_PEM_write_bio_RSAPrivateKey(BIO *a
+ int q_PEM_write_bio_ECPrivateKey(BIO *a, EC_KEY *b, const EVP_CIPHER *c, unsigned char *d,
+ int e, pem_password_cb *f, void *g);
+ #endif
+-#endif
++#endif // SSLEAY_MACROS
+ Q_AUTOTEST_EXPORT EVP_PKEY *q_PEM_read_bio_PUBKEY(BIO *a, EVP_PKEY **b, pem_password_cb *c, void *d);
+ DSA *q_PEM_read_bio_DSA_PUBKEY(BIO *a, DSA **b, pem_password_cb *c, void *d);
+ RSA *q_PEM_read_bio_RSA_PUBKEY(BIO *a, RSA **b, pem_password_cb *c, void *d);
+@@ -326,23 +327,10 @@ void q_RAND_seed(const void *a, int b);
+ int q_RAND_status();
+ RSA *q_RSA_new();
+ void q_RSA_free(RSA *a);
+-int q_sk_num(STACK *a);
+-void q_sk_pop_free(STACK *a, void (*b)(void *));
+-#if OPENSSL_VERSION_NUMBER >= 0x10000000L
+-_STACK *q_sk_new_null();
+-void q_sk_push(_STACK *st, void *data);
+-void q_sk_free(_STACK *a);
+-void * q_sk_value(STACK *a, int b);
+-#else
+-STACK *q_sk_new_null();
+-void q_sk_push(STACK *st, char *data);
+-void q_sk_free(STACK *a);
+-char * q_sk_value(STACK *a, int b);
+-#endif
+ int q_SSL_accept(SSL *a);
+ int q_SSL_clear(SSL *a);
+-char *q_SSL_CIPHER_description(SSL_CIPHER *a, char *b, int c);
+-int q_SSL_CIPHER_get_bits(SSL_CIPHER *a, int *b);
++char *q_SSL_CIPHER_description(const SSL_CIPHER *a, char *b, int c);
++int q_SSL_CIPHER_get_bits(const SSL_CIPHER *a, int *b);
+ int q_SSL_connect(SSL *a);
+ int q_SSL_CTX_check_private_key(const SSL_CTX *a);
+ long q_SSL_CTX_ctrl(SSL_CTX *a, int b, long c, void *d);
+@@ -374,8 +362,6 @@ int q_SSL_get_error(SSL *a, int b);
+ STACK_OF(X509) *q_SSL_get_peer_cert_chain(SSL *a);
+ X509 *q_SSL_get_peer_certificate(SSL *a);
+ long q_SSL_get_verify_result(const SSL *a);
+-int q_SSL_library_init();
+-void q_SSL_load_error_strings();
+ SSL *q_SSL_new(SSL_CTX *a);
+ long q_SSL_ctrl(SSL *ssl,int cmd, long larg, void *parg);
+ int q_SSL_read(SSL *a, void *b, int c);
+@@ -388,7 +374,6 @@ void q_SSL_SESSION_free(SSL_SESSION *ses
+ SSL_SESSION *q_SSL_get1_session(SSL *ssl);
+ SSL_SESSION *q_SSL_get_session(const SSL *ssl);
+ #if OPENSSL_VERSION_NUMBER >= 0x10001000L
+-int q_SSL_get_ex_new_index(long argl, void *argp, CRYPTO_EX_new *new_func, CRYPTO_EX_dup *dup_func, CRYPTO_EX_free *free_func);
+ int q_SSL_set_ex_data(SSL *ssl, int idx, void *arg);
+ void *q_SSL_get_ex_data(const SSL *ssl, int idx);
+ #endif
+@@ -399,49 +384,6 @@ typedef unsigned int (*q_psk_server_call
+ void q_SSL_set_psk_server_callback(SSL *ssl, q_psk_server_callback_t callback);
+ int q_SSL_CTX_use_psk_identity_hint(SSL_CTX *ctx, const char *hint);
+ #endif // OPENSSL_VERSION_NUMBER >= 0x10001000L && !defined(OPENSSL_NO_PSK)
+-#if OPENSSL_VERSION_NUMBER >= 0x10000000L
+-#ifndef OPENSSL_NO_SSL2
+-const SSL_METHOD *q_SSLv2_client_method();
+-#endif
+-#ifndef OPENSSL_NO_SSL3_METHOD
+-const SSL_METHOD *q_SSLv3_client_method();
+-#endif
+-const SSL_METHOD *q_SSLv23_client_method();
+-const SSL_METHOD *q_TLSv1_client_method();
+-const SSL_METHOD *q_TLSv1_1_client_method();
+-const SSL_METHOD *q_TLSv1_2_client_method();
+-#ifndef OPENSSL_NO_SSL2
+-const SSL_METHOD *q_SSLv2_server_method();
+-#endif
+-#ifndef OPENSSL_NO_SSL3_METHOD
+-const SSL_METHOD *q_SSLv3_server_method();
+-#endif
+-const SSL_METHOD *q_SSLv23_server_method();
+-const SSL_METHOD *q_TLSv1_server_method();
+-const SSL_METHOD *q_TLSv1_1_server_method();
+-const SSL_METHOD *q_TLSv1_2_server_method();
+-#else
+-#ifndef OPENSSL_NO_SSL2
+-SSL_METHOD *q_SSLv2_client_method();
+-#endif
+-#ifndef OPENSSL_NO_SSL3_METHOD
+-SSL_METHOD *q_SSLv3_client_method();
+-#endif
+-SSL_METHOD *q_SSLv23_client_method();
+-SSL_METHOD *q_TLSv1_client_method();
+-SSL_METHOD *q_TLSv1_1_client_method();
+-SSL_METHOD *q_TLSv1_2_client_method();
+-#ifndef OPENSSL_NO_SSL2
+-SSL_METHOD *q_SSLv2_server_method();
+-#endif
+-#ifndef OPENSSL_NO_SSL3_METHOD
+-SSL_METHOD *q_SSLv3_server_method();
+-#endif
+-SSL_METHOD *q_SSLv23_server_method();
+-SSL_METHOD *q_TLSv1_server_method();
+-SSL_METHOD *q_TLSv1_1_server_method();
+-SSL_METHOD *q_TLSv1_2_server_method();
+-#endif
+ int q_SSL_write(SSL *a, const void *b, int c);
+ int q_X509_cmp(X509 *a, X509 *b);
+ #ifdef SSLEAY_MACROS
+@@ -452,6 +394,7 @@ void *q_ASN1_dup(i2d_of_void *i2d, d2i_o
+ X509 *q_X509_dup(X509 *a);
+ #endif
+ void q_X509_print(BIO *a, X509*b);
++int q_X509_digest(const X509 *x509, const EVP_MD *type, unsigned char *md, unsigned int *len);
+ ASN1_OBJECT *q_X509_EXTENSION_get_object(X509_EXTENSION *a);
+ void q_X509_free(X509 *a);
+ X509_EXTENSION *q_X509_get_ext(X509 *a, int b);
+@@ -471,6 +414,7 @@ int q_ASN1_STRING_print(BIO *a, ASN1_STR
+ int q_X509_check_issued(X509 *a, X509 *b);
+ X509_NAME *q_X509_get_issuer_name(X509 *a);
+ X509_NAME *q_X509_get_subject_name(X509 *a);
++ASN1_INTEGER *q_X509_get_serialNumber(X509 *a);
+ int q_X509_verify_cert(X509_STORE_CTX *ctx);
+ int q_X509_NAME_entry_count(X509_NAME *a);
+ X509_NAME_ENTRY *q_X509_NAME_get_entry(X509_NAME *a,int b);
+@@ -488,7 +432,6 @@ int q_X509_STORE_CTX_set_purpose(X509_ST
+ int q_X509_STORE_CTX_get_error(X509_STORE_CTX *ctx);
+ int q_X509_STORE_CTX_get_error_depth(X509_STORE_CTX *ctx);
+ X509 *q_X509_STORE_CTX_get_current_cert(X509_STORE_CTX *ctx);
+-STACK_OF(X509) *q_X509_STORE_CTX_get_chain(X509_STORE_CTX *ctx);
+
+ // Diffie-Hellman support
+ DH *q_DH_new();
+@@ -522,34 +465,9 @@ int q_PKCS12_parse(PKCS12 *p12, const ch
+ PKCS12 *q_d2i_PKCS12_bio(BIO *bio, PKCS12 **pkcs12);
+ void q_PKCS12_free(PKCS12 *pkcs12);
+
+-
+ #define q_BIO_get_mem_data(b, pp) (int)q_BIO_ctrl(b,BIO_CTRL_INFO,0,(char *)pp)
+ #define q_BIO_pending(b) (int)q_BIO_ctrl(b,BIO_CTRL_PENDING,0,NULL)
+-#ifdef SSLEAY_MACROS
+-int q_i2d_DSAPrivateKey(const DSA *a, unsigned char **pp);
+-int q_i2d_RSAPrivateKey(const RSA *a, unsigned char **pp);
+-RSA *q_d2i_RSAPrivateKey(RSA **a, unsigned char **pp, long length);
+-DSA *q_d2i_DSAPrivateKey(DSA **a, unsigned char **pp, long length);
+-#define q_PEM_read_bio_RSAPrivateKey(bp, x, cb, u) \
+- (RSA *)q_PEM_ASN1_read_bio( \
+- (void *(*)(void**, const unsigned char**, long int))q_d2i_RSAPrivateKey, PEM_STRING_RSA, bp, (void **)x, cb, u)
+-#define q_PEM_read_bio_DSAPrivateKey(bp, x, cb, u) \
+- (DSA *)q_PEM_ASN1_read_bio( \
+- (void *(*)(void**, const unsigned char**, long int))q_d2i_DSAPrivateKey, PEM_STRING_DSA, bp, (void **)x, cb, u)
+-#define q_PEM_write_bio_RSAPrivateKey(bp,x,enc,kstr,klen,cb,u) \
+- PEM_ASN1_write_bio((int (*)(void*, unsigned char**))q_i2d_RSAPrivateKey,PEM_STRING_RSA,\
+- bp,(char *)x,enc,kstr,klen,cb,u)
+-#define q_PEM_write_bio_DSAPrivateKey(bp,x,enc,kstr,klen,cb,u) \
+- PEM_ASN1_write_bio((int (*)(void*, unsigned char**))q_i2d_DSAPrivateKey,PEM_STRING_DSA,\
+- bp,(char *)x,enc,kstr,klen,cb,u)
+-#define q_PEM_read_bio_DHparams(bp, dh, cb, u) \
+- (DH *)q_PEM_ASN1_read_bio( \
+- (void *(*)(void**, const unsigned char**, long int))q_d2i_DHparams, PEM_STRING_DHPARAMS, bp, (void **)x, cb, u)
+-#endif
+-#define q_SSL_CTX_set_options(ctx,op) q_SSL_CTX_ctrl((ctx),SSL_CTRL_OPTIONS,(op),NULL)
+ #define q_SSL_CTX_set_mode(ctx,op) q_SSL_CTX_ctrl((ctx),SSL_CTRL_MODE,(op),NULL)
+-#define q_SKM_sk_num(type, st) ((int (*)(const STACK_OF(type) *))q_sk_num)(st)
+-#define q_SKM_sk_value(type, st,i) ((type * (*)(const STACK_OF(type) *, int))q_sk_value)(st, i)
+ #define q_sk_GENERAL_NAME_num(st) q_SKM_sk_num(GENERAL_NAME, (st))
+ #define q_sk_GENERAL_NAME_value(st, i) q_SKM_sk_value(GENERAL_NAME, (st), (i))
+ #define q_sk_X509_num(st) q_SKM_sk_num(X509, (st))
+@@ -558,18 +476,12 @@ DSA *q_d2i_DSAPrivateKey(DSA **a, unsign
+ #define q_sk_SSL_CIPHER_value(st, i) q_SKM_sk_value(SSL_CIPHER, (st), (i))
+ #define q_SSL_CTX_add_extra_chain_cert(ctx,x509) \
+ q_SSL_CTX_ctrl(ctx,SSL_CTRL_EXTRA_CHAIN_CERT,0,(char *)x509)
+-#define q_X509_get_notAfter(x) X509_get_notAfter(x)
+-#define q_X509_get_notBefore(x) X509_get_notBefore(x)
+ #define q_EVP_PKEY_assign_RSA(pkey,rsa) q_EVP_PKEY_assign((pkey),EVP_PKEY_RSA,\
+ (char *)(rsa))
+ #define q_EVP_PKEY_assign_DSA(pkey,dsa) q_EVP_PKEY_assign((pkey),EVP_PKEY_DSA,\
+ (char *)(dsa))
+ #define q_OpenSSL_add_all_algorithms() q_OPENSSL_add_all_algorithms_conf()
+-void q_OPENSSL_add_all_algorithms_noconf();
+-void q_OPENSSL_add_all_algorithms_conf();
+ int q_SSL_CTX_load_verify_locations(SSL_CTX *ctx, const char *CAfile, const char *CApath);
+-long q_SSLeay();
+-const char *q_SSLeay_version(int type);
+ int q_i2d_SSL_SESSION(SSL_SESSION *in, unsigned char **pp);
+ SSL_SESSION *q_d2i_SSL_SESSION(SSL_SESSION **a, const unsigned char **pp, long length);
+
+Index: qtbase-opensource-src-5.9.2/src/network/ssl/qsslsocket_opensslpre11.cpp
+===================================================================
+--- /dev/null
++++ qtbase-opensource-src-5.9.2/src/network/ssl/qsslsocket_opensslpre11.cpp
+@@ -0,0 +1,424 @@
++/****************************************************************************
++**
++** Copyright (C) 2017 The Qt Company Ltd.
++** Copyright (C) 2014 Governikus GmbH & Co. KG
++** Contact: https://www.qt.io/licensing/
++**
++** This file is part of the QtNetwork module of the Qt Toolkit.
++**
++** $QT_BEGIN_LICENSE:LGPL$
++** Commercial License Usage
++** Licensees holding valid commercial Qt licenses may use this file in
++** accordance with the commercial license agreement provided with the
++** Software or, alternatively, in accordance with the terms contained in
++** a written agreement between you and The Qt Company. For licensing terms
++** and conditions see https://www.qt.io/terms-conditions. For further
++** information use the contact form at https://www.qt.io/contact-us.
++**
++** GNU Lesser General Public License Usage
++** Alternatively, this file may be used under the terms of the GNU Lesser
++** General Public License version 3 as published by the Free Software
++** Foundation and appearing in the file LICENSE.LGPL3 included in the
++** packaging of this file. Please review the following information to
++** ensure the GNU Lesser General Public License version 3 requirements
++** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
++**
++** GNU General Public License Usage
++** Alternatively, this file may be used under the terms of the GNU
++** General Public License version 2.0 or (at your option) the GNU General
++** Public license version 3 or any later version approved by the KDE Free
++** Qt Foundation. The licenses are as published by the Free Software
++** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
++** included in the packaging of this file. Please review the following
++** information to ensure the GNU General Public License requirements will
++** be met: https://www.gnu.org/licenses/gpl-2.0.html and
++** https://www.gnu.org/licenses/gpl-3.0.html.
++**
++** $QT_END_LICENSE$
++**
++****************************************************************************/
++
++/****************************************************************************
++**
++** In addition, as a special exception, the copyright holders listed above give
++** permission to link the code of its release of Qt with the OpenSSL project's
++** "OpenSSL" library (or modified versions of the "OpenSSL" library that use the
++** same license as the original version), and distribute the linked executables.
++**
++** You must comply with the GNU General Public License version 2 in all
++** respects for all of the code used other than the "OpenSSL" code. If you
++** modify this file, you may extend this exception to your version of the file,
++** but you are not obligated to do so. If you do not wish to do so, delete
++** this exception statement from your version of this file.
++**
++****************************************************************************/
++
++//#define QT_DECRYPT_SSL_TRAFFIC
++
++#include "qssl_p.h"
++#include "qsslsocket_openssl_p.h"
++#include "qsslsocket_openssl_symbols_p.h"
++#include "qsslsocket.h"
++#include "qsslkey.h"
++
++#include <QtCore/qdebug.h>
++#include <QtCore/qdir.h>
++#include <QtCore/qdiriterator.h>
++#include <QtCore/qthread.h>
++#include <QtCore/qfile.h>
++#include <QtCore/qmutex.h>
++#include <QtCore/qlibrary.h>
++
++QT_BEGIN_NAMESPACE
++
++/* \internal
++
++ From OpenSSL's thread(3) manual page:
++
++ OpenSSL can safely be used in multi-threaded applications provided that at
++ least two callback functions are set.
++
++ locking_function(int mode, int n, const char *file, int line) is needed to
++ perform locking on shared data structures. (Note that OpenSSL uses a
++ number of global data structures that will be implicitly shared
++ whenever multiple threads use OpenSSL.) Multi-threaded
++ applications will crash at random if it is not set. ...
++ ...
++ id_function(void) is a function that returns a thread ID. It is not
++ needed on Windows nor on platforms where getpid() returns a different
++ ID for each thread (most notably Linux)
++*/
++
++class QOpenSslLocks
++{
++public:
++ QOpenSslLocks()
++ : initLocker(QMutex::Recursive),
++ locksLocker(QMutex::Recursive)
++ {
++ QMutexLocker locker(&locksLocker);
++ int numLocks = q_CRYPTO_num_locks();
++ locks = new QMutex *[numLocks];
++ memset(locks, 0, numLocks * sizeof(QMutex *));
++ }
++ ~QOpenSslLocks()
++ {
++ QMutexLocker locker(&locksLocker);
++ for (int i = 0; i < q_CRYPTO_num_locks(); ++i)
++ delete locks[i];
++ delete [] locks;
++
++ QSslSocketPrivate::deinitialize();
++ }
++ QMutex *lock(int num)
++ {
++ QMutexLocker locker(&locksLocker);
++ QMutex *tmp = locks[num];
++ if (!tmp)
++ tmp = locks[num] = new QMutex(QMutex::Recursive);
++ return tmp;
++ }
++
++ QMutex *globalLock()
++ {
++ return &locksLocker;
++ }
++
++ QMutex *initLock()
++ {
++ return &initLocker;
++ }
++
++private:
++ QMutex initLocker;
++ QMutex locksLocker;
++ QMutex **locks;
++};
++
++Q_GLOBAL_STATIC(QOpenSslLocks, openssl_locks)
++
++extern "C" {
++static void locking_function(int mode, int lockNumber, const char *, int)
++{
++ QMutex *mutex = openssl_locks()->lock(lockNumber);
++
++ // Lock or unlock it
++ if (mode & CRYPTO_LOCK)
++ mutex->lock();
++ else
++ mutex->unlock();
++}
++static unsigned long id_function()
++{
++ return (quintptr)QThread::currentThreadId();
++}
++
++} // extern "C"
++
++static void q_OpenSSL_add_all_algorithms_safe()
++{
++#ifdef Q_OS_WIN
++ // Prior to version 1.0.1m an attempt to call OpenSSL_add_all_algorithms on
++ // Windows could result in 'exit' call from OPENSSL_config (QTBUG-43843).
++ // We can predict this and avoid OPENSSL_add_all_algorithms call.
++ // From OpenSSL docs:
++ // "An application does not need to add algorithms to use them explicitly,
++ // for example by EVP_sha1(). It just needs to add them if it (or any of
++ // the functions it calls) needs to lookup algorithms.
++ // The cipher and digest lookup functions are used in many parts of the
++ // library. If the table is not initialized several functions will
++ // misbehave and complain they cannot find algorithms. This includes the
++ // PEM, PKCS#12, SSL and S/MIME libraries. This is a common query in
++ // the OpenSSL mailing lists."
++ //
++ // Anyway, as a result, we chose not to call this function if it would exit.
++
++ if (q_SSLeay() < 0x100010DFL)
++ {
++ // Now, before we try to call it, check if an attempt to open config file
++ // will result in exit:
++ if (char *confFileName = q_CONF_get1_default_config_file()) {
++ BIO *confFile = q_BIO_new_file(confFileName, "r");
++ const auto lastError = q_ERR_peek_last_error();
++ q_CRYPTO_free(confFileName);
++ if (confFile) {
++ q_BIO_free(confFile);
++ } else {
++ q_ERR_clear_error();
++ if (ERR_GET_REASON(lastError) == ERR_R_SYS_LIB) {
++ qCWarning(lcSsl, "failed to open openssl.conf file");
++ return;
++ }
++ }
++ }
++ }
++#endif // Q_OS_WIN
++
++ q_OpenSSL_add_all_algorithms();
++}
++
++
++/*!
++ \internal
++*/
++void QSslSocketPrivate::deinitialize()
++{
++ q_CRYPTO_set_id_callback(0);
++ q_CRYPTO_set_locking_callback(0);
++ q_ERR_free_strings();
++}
++
++
++bool QSslSocketPrivate::ensureLibraryLoaded()
++{
++ if (!q_resolveOpenSslSymbols())
++ return false;
++
++ // Check if the library itself needs to be initialized.
++ QMutexLocker locker(openssl_locks()->initLock());
++
++ if (!s_libraryLoaded) {
++ s_libraryLoaded = true;
++
++ // Initialize OpenSSL.
++ q_CRYPTO_set_id_callback(id_function);
++ q_CRYPTO_set_locking_callback(locking_function);
++ if (q_SSL_library_init() != 1)
++ return false;
++ q_SSL_load_error_strings();
++ q_OpenSSL_add_all_algorithms_safe();
++
++#if OPENSSL_VERSION_NUMBER >= 0x10001000L
++ if (q_SSLeay() >= 0x10001000L)
++ QSslSocketBackendPrivate::s_indexForSSLExtraData = q_SSL_get_ex_new_index(0L, NULL, NULL, NULL, NULL);
++#endif
++
++ // Initialize OpenSSL's random seed.
++ if (!q_RAND_status()) {
++ qWarning("Random number generator not seeded, disabling SSL support");
++ return false;
++ }
++ }
++ return true;
++}
++
++void QSslSocketPrivate::ensureCiphersAndCertsLoaded()
++{
++ QMutexLocker locker(openssl_locks()->initLock());
++ if (s_loadedCiphersAndCerts)
++ return;
++ s_loadedCiphersAndCerts = true;
++
++ resetDefaultCiphers();
++ resetDefaultEllipticCurves();
++
++#if QT_CONFIG(library)
++ //load symbols needed to receive certificates from system store
++#if defined(Q_OS_WIN)
++ HINSTANCE hLib = LoadLibraryW(L"Crypt32");
++ if (hLib) {
++ ptrCertOpenSystemStoreW = (PtrCertOpenSystemStoreW)GetProcAddress(hLib, "CertOpenSystemStoreW");
++ ptrCertFindCertificateInStore = (PtrCertFindCertificateInStore)GetProcAddress(hLib, "CertFindCertificateInStore");
++ ptrCertCloseStore = (PtrCertCloseStore)GetProcAddress(hLib, "CertCloseStore");
++ if (!ptrCertOpenSystemStoreW || !ptrCertFindCertificateInStore || !ptrCertCloseStore)
++ qCWarning(lcSsl, "could not resolve symbols in crypt32 library"); // should never happen
++ } else {
++ qCWarning(lcSsl, "could not load crypt32 library"); // should never happen
++ }
++#elif defined(Q_OS_QNX)
++ s_loadRootCertsOnDemand = true;
++#elif defined(Q_OS_UNIX) && !defined(Q_OS_MACOS)
++ // check whether we can enable on-demand root-cert loading (i.e. check whether the sym links are there)
++ QList<QByteArray> dirs = unixRootCertDirectories();
++ QStringList symLinkFilter;
++ symLinkFilter << QLatin1String("[0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f].[0-9]");
++ for (int a = 0; a < dirs.count(); ++a) {
++ QDirIterator iterator(QLatin1String(dirs.at(a)), symLinkFilter, QDir::Files);
++ if (iterator.hasNext()) {
++ s_loadRootCertsOnDemand = true;
++ break;
++ }
++ }
++#endif
++#endif // QT_CONFIG(library)
++ // if on-demand loading was not enabled, load the certs now
++ if (!s_loadRootCertsOnDemand)
++ setDefaultCaCertificates(systemCaCertificates());
++#ifdef Q_OS_WIN
++ //Enabled for fetching additional root certs from windows update on windows 6+
++ //This flag is set false by setDefaultCaCertificates() indicating the app uses
++ //its own cert bundle rather than the system one.
++ //Same logic that disables the unix on demand cert loading.
++ //Unlike unix, we do preload the certificates from the cert store.
++ if ((QSysInfo::windowsVersion() & QSysInfo::WV_NT_based) >= QSysInfo::WV_6_0)
++ s_loadRootCertsOnDemand = true;
++#endif
++}
++
++long QSslSocketPrivate::sslLibraryVersionNumber()
++{
++ if (!supportsSsl())
++ return 0;
++
++ return q_SSLeay();
++}
++
++QString QSslSocketPrivate::sslLibraryVersionString()
++{
++ if (!supportsSsl())
++ return QString();
++
++ const char *versionString = q_SSLeay_version(SSLEAY_VERSION);
++ if (!versionString)
++ return QString();
++
++ return QString::fromLatin1(versionString);
++}
++
++void QSslSocketBackendPrivate::continueHandshake()
++{
++ Q_Q(QSslSocket);
++ // if we have a max read buffer size, reset the plain socket's to match
++ if (readBufferMaxSize)
++ plainSocket->setReadBufferSize(readBufferMaxSize);
++
++ if (q_SSL_ctrl((ssl), SSL_CTRL_GET_SESSION_REUSED, 0, NULL))
++ configuration.peerSessionShared = true;
++
++#ifdef QT_DECRYPT_SSL_TRAFFIC
++ if (ssl->session && ssl->s3) {
++ const char *mk = reinterpret_cast<const char *>(ssl->session->master_key);
++ QByteArray masterKey(mk, ssl->session->master_key_length);
++ const char *random = reinterpret_cast<const char *>(ssl->s3->client_random);
++ QByteArray clientRandom(random, SSL3_RANDOM_SIZE);
++
++ // different format, needed for e.g. older Wireshark versions:
++// const char *sid = reinterpret_cast<const char *>(ssl->session->session_id);
++// QByteArray sessionID(sid, ssl->session->session_id_length);
++// QByteArray debugLineRSA("RSA Session-ID:");
++// debugLineRSA.append(sessionID.toHex().toUpper());
++// debugLineRSA.append(" Master-Key:");
++// debugLineRSA.append(masterKey.toHex().toUpper());
++// debugLineRSA.append("\n");
++
++ QByteArray debugLineClientRandom("CLIENT_RANDOM ");
++ debugLineClientRandom.append(clientRandom.toHex().toUpper());
++ debugLineClientRandom.append(" ");
++ debugLineClientRandom.append(masterKey.toHex().toUpper());
++ debugLineClientRandom.append("\n");
++
++ QString sslKeyFile = QDir::tempPath() + QLatin1String("/qt-ssl-keys");
++ QFile file(sslKeyFile);
++ if (!file.open(QIODevice::Append))
++ qCWarning(lcSsl) << "could not open file" << sslKeyFile << "for appending";
++ if (!file.write(debugLineClientRandom))
++ qCWarning(lcSsl) << "could not write to file" << sslKeyFile;
++ file.close();
++ } else {
++ qCWarning(lcSsl, "could not decrypt SSL traffic");
++ }
++#endif
++
++ // Cache this SSL session inside the QSslContext
++ if (!(configuration.sslOptions & QSsl::SslOptionDisableSessionSharing)) {
++ if (!sslContextPointer->cacheSession(ssl)) {
++ sslContextPointer.clear(); // we could not cache the session
++ } else {
++ // Cache the session for permanent usage as well
++ if (!(configuration.sslOptions & QSsl::SslOptionDisableSessionPersistence)) {
++ if (!sslContextPointer->sessionASN1().isEmpty())
++ configuration.sslSession = sslContextPointer->sessionASN1();
++ configuration.sslSessionTicketLifeTimeHint = sslContextPointer->sessionTicketLifeTimeHint();
++ }
++ }
++ }
++
++#if OPENSSL_VERSION_NUMBER >= 0x1000100fL && !defined(OPENSSL_NO_NEXTPROTONEG)
++
++ configuration.nextProtocolNegotiationStatus = sslContextPointer->npnContext().status;
++ if (sslContextPointer->npnContext().status == QSslConfiguration::NextProtocolNegotiationUnsupported) {
++ // we could not agree -> be conservative and use HTTP/1.1
++ configuration.nextNegotiatedProtocol = QByteArrayLiteral("http/1.1");
++ } else {
++ const unsigned char *proto = 0;
++ unsigned int proto_len = 0;
++#if OPENSSL_VERSION_NUMBER >= 0x10002000L
++ if (q_SSLeay() >= 0x10002000L) {
++ q_SSL_get0_alpn_selected(ssl, &proto, &proto_len);
++ if (proto_len && mode == QSslSocket::SslClientMode) {
++ // Client does not have a callback that sets it ...
++ configuration.nextProtocolNegotiationStatus = QSslConfiguration::NextProtocolNegotiationNegotiated;
++ }
++ }
++
++ if (!proto_len) { // Test if NPN was more lucky ...
++#else
++ {
++#endif
++ q_SSL_get0_next_proto_negotiated(ssl, &proto, &proto_len);
++ }
++
++ if (proto_len)
++ configuration.nextNegotiatedProtocol = QByteArray(reinterpret_cast<const char *>(proto), proto_len);
++ else
++ configuration.nextNegotiatedProtocol.clear();
++ }
++#endif // OPENSSL_VERSION_NUMBER >= 0x1000100fL ...
++
++#if OPENSSL_VERSION_NUMBER >= 0x10002000L
++ if (q_SSLeay() >= 0x10002000L && mode == QSslSocket::SslClientMode) {
++ EVP_PKEY *key;
++ if (q_SSL_get_server_tmp_key(ssl, &key))
++ configuration.ephemeralServerKey = QSslKey(key, QSsl::PublicKey);
++ }
++#endif // OPENSSL_VERSION_NUMBER >= 0x10002000L ...
++
++ connectionEncrypted = true;
++ emit q->encrypted();
++ if (autoStartHandshake && pendingClose) {
++ pendingClose = false;
++ q->disconnectFromHost();
++ }
++}
++
++QT_END_NAMESPACE
+Index: qtbase-opensource-src-5.9.2/src/network/ssl/qsslsocket_opensslpre11_symbols_p.h
+===================================================================
+--- /dev/null
++++ qtbase-opensource-src-5.9.2/src/network/ssl/qsslsocket_opensslpre11_symbols_p.h
+@@ -0,0 +1,230 @@
++/****************************************************************************
++**
++** Copyright (C) 2017 The Qt Company Ltd.
++** Copyright (C) 2014 BlackBerry Limited. All rights reserved.
++** Contact: https://www.qt.io/licensing/
++**
++** This file is part of the QtNetwork module of the Qt Toolkit.
++**
++** $QT_BEGIN_LICENSE:LGPL$
++** Commercial License Usage
++** Licensees holding valid commercial Qt licenses may use this file in
++** accordance with the commercial license agreement provided with the
++** Software or, alternatively, in accordance with the terms contained in
++** a written agreement between you and The Qt Company. For licensing terms
++** and conditions see https://www.qt.io/terms-conditions. For further
++** information use the contact form at https://www.qt.io/contact-us.
++**
++** GNU Lesser General Public License Usage
++** Alternatively, this file may be used under the terms of the GNU Lesser
++** General Public License version 3 as published by the Free Software
++** Foundation and appearing in the file LICENSE.LGPL3 included in the
++** packaging of this file. Please review the following information to
++** ensure the GNU Lesser General Public License version 3 requirements
++** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
++**
++** GNU General Public License Usage
++** Alternatively, this file may be used under the terms of the GNU
++** General Public License version 2.0 or (at your option) the GNU General
++** Public license version 3 or any later version approved by the KDE Free
++** Qt Foundation. The licenses are as published by the Free Software
++** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
++** included in the packaging of this file. Please review the following
++** information to ensure the GNU General Public License requirements will
++** be met: https://www.gnu.org/licenses/gpl-2.0.html and
++** https://www.gnu.org/licenses/gpl-3.0.html.
++**
++** $QT_END_LICENSE$
++**
++****************************************************************************/
++
++/****************************************************************************
++**
++** In addition, as a special exception, the copyright holders listed above give
++** permission to link the code of its release of Qt with the OpenSSL project's
++** "OpenSSL" library (or modified versions of the "OpenSSL" library that use the
++** same license as the original version), and distribute the linked executables.
++**
++** You must comply with the GNU General Public License version 2 in all
++** respects for all of the code used other than the "OpenSSL" code. If you
++** modify this file, you may extend this exception to your version of the file,
++** but you are not obligated to do so. If you do not wish to do so, delete
++** this exception statement from your version of this file.
++**
++****************************************************************************/
++
++
++#ifndef QSSLSOCKET_OPENSSLPRE11_SYMBOLS_P_H
++#define QSSLSOCKET_OPENSSLPRE11_SYMBOLS_P_H
++
++//
++// W A R N I N G
++// -------------
++//
++// This file is not part of the Qt API. It exists purely as an
++// implementation detail. This header file may change from version to
++// version without notice, or even be removed.
++//
++// We mean it.
++//
++
++// Note: this file does not have QT_BEGIN_NAMESPACE/QT_END_NAMESPACE, it's done
++// in qsslsocket_openssl_symbols_p.h.
++
++#ifndef QSSLSOCKET_OPENSSL_SYMBOLS_P_H
++#error "You are not supposed to use this header file, include qsslsocket_openssl_symbols_p.h instead"
++#endif
++
++unsigned char * q_ASN1_STRING_data(ASN1_STRING *a);
++BIO *q_BIO_new_file(const char *filename, const char *mode);
++void q_ERR_clear_error();
++Q_AUTOTEST_EXPORT BIO *q_BIO_new(BIO_METHOD *a);
++Q_AUTOTEST_EXPORT BIO_METHOD *q_BIO_s_mem();
++int q_CRYPTO_num_locks();
++void q_CRYPTO_set_locking_callback(void (*a)(int, int, const char *, int));
++void q_CRYPTO_set_id_callback(unsigned long (*a)());
++void q_CRYPTO_free(void *a);
++unsigned long q_ERR_peek_last_error();
++void q_ERR_free_strings();
++void q_EVP_CIPHER_CTX_cleanup(EVP_CIPHER_CTX *a);
++void q_EVP_CIPHER_CTX_init(EVP_CIPHER_CTX *a);
++
++#if OPENSSL_VERSION_NUMBER >= 0x10000000L
++typedef _STACK STACK;
++#endif
++
++// The typedef we use to make our pre 1.1 code look more like 1.1 (less ifdefs).
++typedef STACK OPENSSL_STACK;
++
++// We resolve q_sk_ functions, but use q_OPENSSL_sk_ macros in code to reduce
++// the amount of #ifdefs.
++int q_sk_num(STACK *a);
++#define q_OPENSSL_sk_num(a) q_sk_num(a)
++void q_sk_pop_free(STACK *a, void (*b)(void *));
++#define q_OPENSSL_sk_pop_free(a, b) q_sk_pop_free(a, b)
++STACK *q_sk_new_null();
++#define q_OPENSSL_sk_new_null() q_sk_new_null()
++
++void q_sk_free(STACK *a);
++
++// Just a name alias (not a function call expression) since in code we take an
++// address of this:
++#define q_OPENSSL_sk_free q_sk_free
++
++#if OPENSSL_VERSION_NUMBER >= 0x10000000L
++void *q_sk_value(STACK *a, int b);
++void q_sk_push(STACK *st, void *data);
++#else
++char *q_sk_value(STACK *a, int b);
++void q_sk_push(STACK *st, char *data);
++#endif // OPENSSL_VERSION_NUMBER >= 0x10000000L
++
++#define q_OPENSSL_sk_value(a, b) q_sk_value(a, b)
++#define q_OPENSSL_sk_push(st, data) q_sk_push(st, data)
++
++#if OPENSSL_VERSION_NUMBER >= 0x10000000L
++SSL_CTX *q_SSL_CTX_new(const SSL_METHOD *a);
++#else
++SSL_CTX *q_SSL_CTX_new(SSL_METHOD *a);
++#endif
++
++int q_SSL_library_init();
++void q_SSL_load_error_strings();
++
++#if OPENSSL_VERSION_NUMBER >= 0x10001000L
++int q_SSL_get_ex_new_index(long argl, void *argp, CRYPTO_EX_new *new_func, CRYPTO_EX_dup *dup_func, CRYPTO_EX_free *free_func);
++#endif
++
++#if OPENSSL_VERSION_NUMBER >= 0x10000000L
++#ifndef OPENSSL_NO_SSL2
++const SSL_METHOD *q_SSLv2_client_method();
++#endif
++#ifndef OPENSSL_NO_SSL3_METHOD
++const SSL_METHOD *q_SSLv3_client_method();
++#endif
++const SSL_METHOD *q_SSLv23_client_method();
++const SSL_METHOD *q_TLSv1_client_method();
++const SSL_METHOD *q_TLSv1_1_client_method();
++const SSL_METHOD *q_TLSv1_2_client_method();
++#ifndef OPENSSL_NO_SSL2
++const SSL_METHOD *q_SSLv2_server_method();
++#endif
++#ifndef OPENSSL_NO_SSL3_METHOD
++const SSL_METHOD *q_SSLv3_server_method();
++#endif
++const SSL_METHOD *q_SSLv23_server_method();
++const SSL_METHOD *q_TLSv1_server_method();
++const SSL_METHOD *q_TLSv1_1_server_method();
++const SSL_METHOD *q_TLSv1_2_server_method();
++#else
++#ifndef OPENSSL_NO_SSL2
++SSL_METHOD *q_SSLv2_client_method();
++#endif
++#ifndef OPENSSL_NO_SSL3_METHOD
++SSL_METHOD *q_SSLv3_client_method();
++#endif
++SSL_METHOD *q_SSLv23_client_method();
++SSL_METHOD *q_TLSv1_client_method();
++SSL_METHOD *q_TLSv1_1_client_method();
++SSL_METHOD *q_TLSv1_2_client_method();
++#ifndef OPENSSL_NO_SSL2
++SSL_METHOD *q_SSLv2_server_method();
++#endif
++#ifndef OPENSSL_NO_SSL3_METHOD
++SSL_METHOD *q_SSLv3_server_method();
++#endif
++SSL_METHOD *q_SSLv23_server_method();
++SSL_METHOD *q_TLSv1_server_method();
++SSL_METHOD *q_TLSv1_1_server_method();
++SSL_METHOD *q_TLSv1_2_server_method();
++#endif
++
++STACK_OF(X509) *q_X509_STORE_CTX_get_chain(X509_STORE_CTX *ctx);
++
++#ifdef SSLEAY_MACROS
++int q_i2d_DSAPrivateKey(const DSA *a, unsigned char **pp);
++int q_i2d_RSAPrivateKey(const RSA *a, unsigned char **pp);
++RSA *q_d2i_RSAPrivateKey(RSA **a, unsigned char **pp, long length);
++DSA *q_d2i_DSAPrivateKey(DSA **a, unsigned char **pp, long length);
++#define q_PEM_read_bio_RSAPrivateKey(bp, x, cb, u) \
++ (RSA *)q_PEM_ASN1_read_bio( \
++ (void *(*)(void**, const unsigned char**, long int))q_d2i_RSAPrivateKey, PEM_STRING_RSA, bp, (void **)x, cb, u)
++#define q_PEM_read_bio_DSAPrivateKey(bp, x, cb, u) \
++ (DSA *)q_PEM_ASN1_read_bio( \
++ (void *(*)(void**, const unsigned char**, long int))q_d2i_DSAPrivateKey, PEM_STRING_DSA, bp, (void **)x, cb, u)
++#define q_PEM_write_bio_RSAPrivateKey(bp,x,enc,kstr,klen,cb,u) \
++ PEM_ASN1_write_bio((int (*)(void*, unsigned char**))q_i2d_RSAPrivateKey,PEM_STRING_RSA,\
++ bp,(char *)x,enc,kstr,klen,cb,u)
++#define q_PEM_write_bio_DSAPrivateKey(bp,x,enc,kstr,klen,cb,u) \
++ PEM_ASN1_write_bio((int (*)(void*, unsigned char**))q_i2d_DSAPrivateKey,PEM_STRING_DSA,\
++ bp,(char *)x,enc,kstr,klen,cb,u)
++#define q_PEM_read_bio_DHparams(bp, dh, cb, u) \
++ (DH *)q_PEM_ASN1_read_bio( \
++ (void *(*)(void**, const unsigned char**, long int))q_d2i_DHparams, PEM_STRING_DHPARAMS, bp, (void **)x, cb, u)
++#endif // SSLEAY_MACROS
++
++#define q_SSL_CTX_set_options(ctx,op) q_SSL_CTX_ctrl((ctx),SSL_CTRL_OPTIONS,(op),NULL)
++#define q_SKM_sk_num(type, st) ((int (*)(const STACK_OF(type) *))q_sk_num)(st)
++#define q_SKM_sk_value(type, st,i) ((type * (*)(const STACK_OF(type) *, int))q_sk_value)(st, i)
++#define q_X509_getm_notAfter(x) X509_get_notAfter(x)
++#define q_X509_getm_notBefore(x) X509_get_notBefore(x)
++
++// "Forward compatibility" with OpenSSL 1.1 (to save on #if-ery elsewhere):
++#define q_X509_get_version(x509) q_ASN1_INTEGER_get((x509)->cert_info->version)
++#define q_ASN1_STRING_get0_data(x) q_ASN1_STRING_data(x)
++#define q_EVP_PKEY_base_id(pkey) ((pkey)->type)
++#define q_X509_get_pubkey(x509) q_X509_PUBKEY_get((x509)->cert_info->key)
++#define q_SSL_SESSION_get_ticket_lifetime_hint(s) ((s)->tlsext_tick_lifetime_hint)
++#define q_RSA_bits(rsa) q_BN_num_bits((rsa)->n)
++#define q_DSA_bits(dsa) q_BN_num_bits((dsa)->p)
++#define q_X509_STORE_set_verify_cb(s,c) X509_STORE_set_verify_cb_func((s),(c))
++
++char *q_CONF_get1_default_config_file();
++void q_OPENSSL_add_all_algorithms_noconf();
++void q_OPENSSL_add_all_algorithms_conf();
++
++long q_SSLeay();
++const char *q_SSLeay_version(int type);
++
++
++#endif // QSSLSOCKET_OPENSSL_PRE11_SYMBOLS_P_H
+Index: qtbase-opensource-src-5.9.2/src/network/ssl/ssl.pri
+===================================================================
+--- qtbase-opensource-src-5.9.2.orig/src/network/ssl/ssl.pri
++++ qtbase-opensource-src-5.9.2/src/network/ssl/ssl.pri
+@@ -60,13 +60,25 @@ qtConfig(ssl) {
+ HEADERS += ssl/qsslcontext_openssl_p.h \
+ ssl/qsslsocket_openssl_p.h \
+ ssl/qsslsocket_openssl_symbols_p.h
+- SOURCES += ssl/qsslcertificate_openssl.cpp \
+- ssl/qsslcontext_openssl.cpp \
++ SOURCES += ssl/qsslsocket_openssl_symbols.cpp \
+ ssl/qssldiffiehellmanparameters_openssl.cpp \
++ ssl/qsslcertificate_openssl.cpp \
+ ssl/qsslellipticcurve_openssl.cpp \
+ ssl/qsslkey_openssl.cpp \
+ ssl/qsslsocket_openssl.cpp \
+- ssl/qsslsocket_openssl_symbols.cpp
++ ssl/qsslcontext_openssl.cpp
++
++ qtConfig(opensslv11) {
++ HEADERS += ssl/qsslsocket_openssl11_symbols_p.h
++ SOURCES += ssl/qsslsocket_openssl11.cpp \
++ ssl/qsslcontext_openssl11.cpp
++
++ QMAKE_CXXFLAGS += -DOPENSSL_API_COMPAT=0x10100000L
++ } else {
++ HEADERS += ssl/qsslsocket_opensslpre11_symbols_p.h
++ SOURCES += ssl/qsslsocket_opensslpre11.cpp \
++ ssl/qsslcontext_opensslpre11.cpp
++ }
+
+ darwin:SOURCES += ssl/qsslsocket_mac_shared.cpp
+
diff --git a/libraries/qt5/patches/qtwebengine-5.9.6-gcc8.patch b/libraries/qt5/patches/qtwebengine-5.9.6-gcc8.patch
new file mode 100644
index 0000000000..ba6a49fd74
--- /dev/null
+++ b/libraries/qt5/patches/qtwebengine-5.9.6-gcc8.patch
@@ -0,0 +1,24 @@
+From: Fedora
+Subject: Fix build for 32-bit platforms
+
+Apparently not upstream, can't find this anywhere. So I assume Fedora is the actual source?
+https://src.fedoraproject.org/cgit/rpms/chromium.git/tree/chromium-66.0.3359.170-gcc8-alignof.patch
+
+diff -up chromium-66.0.3359.170/src/3rdparty/chromium/mojo/public/c/system/macros.h.gcc8-alignof chromium-66.0.3359.170/src/3rdparty/chromium/mojo/public/c/system/macros.h
+--- a/src/3rdparty/chromium/mojo/public/c/system/macros.h 2018-05-15 14:58:46.448912634 -0400
++++ b/src/3rdparty/chromium/mojo/public/c/system/macros.h 2018-05-15 14:58:52.041784613 -0400
+@@ -18,7 +18,13 @@
+ #endif
+
+ // Like the C++11 |alignof| operator.
+-#if __cplusplus >= 201103L
++#if defined(__GNUC__) && __GNUC__ >= 8
++// GCC 8 has changed the alignof operator to return the minimal alignment
++// required by the target ABI, instead of the preferred alignment.
++// This means that on 32-bit x86, it will return 4 instead of 8.
++// Use __alignof__ instead to avoid this.
++#define MOJO_ALIGNOF(type) __alignof__(type)
++#elif __cplusplus >= 201103L
+ #define MOJO_ALIGNOF(type) alignof(type)
+ #elif defined(__GNUC__)
+ #define MOJO_ALIGNOF(type) __alignof__(type)
diff --git a/libraries/qt5/qt5.SlackBuild b/libraries/qt5/qt5.SlackBuild
index 18ed17ca7e..9b936d1e0a 100644
--- a/libraries/qt5/qt5.SlackBuild
+++ b/libraries/qt5/qt5.SlackBuild
@@ -50,7 +50,7 @@
# Adapted for Qt 5.9.6 by David Woodfall
PRGNAM=qt5
-VERSION=${VERSION:-5.9.7}
+VERSION=${VERSION:-5.9.6}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -156,6 +156,16 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+# Support for openssl-1.1.x
+( cd qtbase
+ patch -p1 < $CWD/patches/0001-QSslSocket-OpenSSL-1.1-backend.patch )
+
+# Fix for gcc-8.x
+if [ "$WEBENGINE" == "yes" ]; then
+ ( cd qtwebengine
+ patch -p1 < $CWD/patches/qtwebengine-5.9.6-gcc8.patch )
+fi
+
# Limit -reduce-relocations to ix86 and x86_64.
# https://bugreports.qt-project.org/browse/QTBUG-36129
if echo $ARCH | grep -q '\(i.86\|x86_64\)' 2>/dev/null; then
@@ -167,7 +177,7 @@ fi
sed -i "s|-O2|$SLKCFLAGS|" qtbase/mkspecs/common/gcc-base.conf
export CFLAGS="$SLKCFLAGS"
-export CXXFLAGS="$SLKCFLAGS -std=c++11"
+export CXXFLAGS="$SLKCFLAGS"
./configure -v \
-confirm-license \
-opensource \
@@ -182,8 +192,9 @@ export CXXFLAGS="$SLKCFLAGS -std=c++11"
-system-sqlite \
-plugin-sql-sqlite \
-icu \
- -openssl-linked \
+ -openssl \
-verbose \
+ -optimized-qmake \
-dbus-linked \
-qpa xcb \
-xcb \
@@ -195,7 +206,6 @@ export CXXFLAGS="$SLKCFLAGS -std=c++11"
-no-strip \
-release \
-no-use-gold-linker \
- -c++std c++11 \
$CCACHE \
$CODECS \
$PULSE \
diff --git a/libraries/qt5/qt5.info b/libraries/qt5/qt5.info
index 39da582922..cedc8b43f6 100644
--- a/libraries/qt5/qt5.info
+++ b/libraries/qt5/qt5.info
@@ -1,8 +1,8 @@
PRGNAM="qt5"
-VERSION="5.9.7"
+VERSION="5.9.6"
HOMEPAGE="http://qt-project.org/"
-DOWNLOAD="http://download.qt.io/official_releases/qt/5.9/5.9.7/single/qt-everywhere-opensource-src-5.9.7.tar.xz"
-MD5SUM="70e617aeb1f9bbf84a12b8cf09b01ece"
+DOWNLOAD="http://download.qt.io/official_releases/qt/5.9/5.9.6/single/qt-everywhere-opensource-src-5.9.6.tar.xz"
+MD5SUM="a427428c65f35909ef6ae865b8ee0da6"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="libxkbcommon libinput"
diff --git a/libraries/rapidjson/rapidjson.SlackBuild b/libraries/rapidjson/rapidjson.SlackBuild
index 474a7d13e4..3224dc94fd 100644
--- a/libraries/rapidjson/rapidjson.SlackBuild
+++ b/libraries/rapidjson/rapidjson.SlackBuild
@@ -75,7 +75,7 @@ patch -p1 < $CWD/fix-build-on-gcc7.diff
mkdir -p build
cd build
cmake \
- -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS -Wno-error=class-memaccess" \
-DCMAKE_INSTALL_PREFIX=/usr \
-DLIB_INSTALL_DIR=/usr/lib${LIBDIRSUFFIX} \
-DCMAKE_BUILD_TYPE=Release ..
diff --git a/libraries/rudiments/rudiments.SlackBuild b/libraries/rudiments/rudiments.SlackBuild
index 5ee33033b2..ecd7377f17 100644
--- a/libraries/rudiments/rudiments.SlackBuild
+++ b/libraries/rudiments/rudiments.SlackBuild
@@ -23,13 +23,13 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=rudiments
-VERSION=${VERSION:-0.55.0}
+VERSION=${VERSION:-1.0.5}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -40,8 +40,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
diff --git a/libraries/rudiments/rudiments.info b/libraries/rudiments/rudiments.info
index c3cd414a19..6e6900d699 100644
--- a/libraries/rudiments/rudiments.info
+++ b/libraries/rudiments/rudiments.info
@@ -1,8 +1,8 @@
PRGNAM="rudiments"
-VERSION="0.55.0"
+VERSION="1.0.5"
HOMEPAGE="http://sqlrelay.sourceforge.net/"
-DOWNLOAD="http://downloads.sourceforge.net/rudiments/rudiments-0.55.0.tar.gz"
-MD5SUM="1b066c718074e78c96b82f900772cf6a"
+DOWNLOAD="http://downloads.sourceforge.net/rudiments/rudiments-1.0.5.tar.gz"
+MD5SUM="c44ff4cf82f30258b85aebd8e54fc37b"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/sdformat/cmake.patch b/libraries/sdformat/cmake.patch
new file mode 100644
index 0000000000..38e6b6cca6
--- /dev/null
+++ b/libraries/sdformat/cmake.patch
@@ -0,0 +1,20 @@
+diff -Naur osrf-sdformat-e5ac5aaa49f2.orig/CMakeLists.txt osrf-sdformat-e5ac5aaa49f2/CMakeLists.txt
+--- osrf-sdformat-e5ac5aaa49f2.orig/CMakeLists.txt 2016-10-10 23:51:37.000000000 +0200
++++ osrf-sdformat-e5ac5aaa49f2/CMakeLists.txt 2017-07-29 19:46:16.021921859 +0200
+@@ -186,11 +186,13 @@
+ # OS Specific initialization
+ if (UNIX)
+ sdf_setup_unix()
+-else (WIN32)
++endif ()
++if (WIN32)
+ sdf_setup_windows()
+-else (APPLE)
++endif ()
++if (APPLE)
+ sdf_setup_apple()
+-endif()
++endif ()
+
+ #################################################
+ # Print warnings and errors
diff --git a/libraries/sdformat/sdformat.SlackBuild b/libraries/sdformat/sdformat.SlackBuild
index 5dea256ef6..b412d5a10d 100644
--- a/libraries/sdformat/sdformat.SlackBuild
+++ b/libraries/sdformat/sdformat.SlackBuild
@@ -71,6 +71,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# Patch for cmake >= 3.9.x
+patch -p1 < $CWD/cmake.patch
+
mkdir -p build
cd build
cmake \
diff --git a/libraries/tls/tls.SlackBuild b/libraries/tls/tls.SlackBuild
index 1c02ed39ad..6b7fef6e6f 100644
--- a/libraries/tls/tls.SlackBuild
+++ b/libraries/tls/tls.SlackBuild
@@ -5,7 +5,7 @@
# Assumed to be public domain
PRGNAM=tls
-VERSION=${VERSION:-1.6}
+VERSION=${VERSION:-1.6.7}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -49,7 +49,8 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-CFLAGS="$SLKCFLAGS" \
+LIBS="-L/usr/lib${LIBDIRSUFFIX}/openssl-1.0" \
+CFLAGS="$SLKCFLAGS -I/usr/include/openssl-1.0" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
diff --git a/libraries/tls/tls.info b/libraries/tls/tls.info
index ddbc5d2333..f70fe2d73a 100644
--- a/libraries/tls/tls.info
+++ b/libraries/tls/tls.info
@@ -1,8 +1,8 @@
PRGNAM="tls"
-VERSION="1.6"
+VERSION="1.6.7"
HOMEPAGE="http://tls.sourceforge.net/"
-DOWNLOAD="http://downloads.sourceforge.net/tls/tls1.6-src.tar.gz"
-MD5SUM="eb326ff9e6fc3b9885aa5c72fb8df3bf"
+DOWNLOAD="http://downloads.sourceforge.net/tls/tls1.6.7-src.tar.gz"
+MD5SUM="2765d84a7a520c9979d82a0abebc1647"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/totem-pl-parser/totem-pl-parser.SlackBuild b/libraries/totem-pl-parser/totem-pl-parser.SlackBuild
index a65d1f9a4d..fcc7e06516 100644
--- a/libraries/totem-pl-parser/totem-pl-parser.SlackBuild
+++ b/libraries/totem-pl-parser/totem-pl-parser.SlackBuild
@@ -5,13 +5,13 @@
# Written by crocket (crockabiscuit@gmail.com)
PRGNAM=totem-pl-parser
-VERSION=${VERSION:-3.4.5}
+VERSION=${VERSION:-3.26.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -22,8 +22,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -46,30 +46,26 @@ tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
+mkdir build
+cd build
+meson setup \
--prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --disable-static \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --infodir=/usr/info \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --build=$ARCH-slackware-linux
-
-make V=1
-make install-strip DESTDIR=$PKG
+ --libexecdir=/usr/lib$LIBDIRSUFFIX \
+ --buildtype=release \
+ -Denable-gtk-doc=true \
+ ..
+ninja
+DESTDIR="$PKG" ninja install
+cd ..
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
- AUTHORS COPYING.LIB ChangeLog INSTALL NEWS README \
+ AUTHORS COPYING.LIB MAINTAINERS NEWS README \
$PKG/usr/doc/$PRGNAM-$VERSION
cd $PKG/usr/doc/$PRGNAM-$VERSION
ln -sf ../../share/gtk-doc/html/$PRGNAM html
diff --git a/libraries/totem-pl-parser/totem-pl-parser.info b/libraries/totem-pl-parser/totem-pl-parser.info
index 021acd7ecc..d7c80bdfe9 100644
--- a/libraries/totem-pl-parser/totem-pl-parser.info
+++ b/libraries/totem-pl-parser/totem-pl-parser.info
@@ -1,8 +1,8 @@
PRGNAM="totem-pl-parser"
-VERSION="3.4.5"
-HOMEPAGE="ftp://ftp.gnome.org/pub/gnome/sources/totem-pl-parser"
-DOWNLOAD="http://ftp.gnome.org/pub/gnome/sources/totem-pl-parser/3.4/totem-pl-parser-3.4.5.tar.xz"
-MD5SUM="c675bb7e0195397d3870fd3c9690b220"
+VERSION="3.26.0"
+HOMEPAGE="https://git.gnome.org/browse/totem-pl-parser"
+DOWNLOAD="http://ponce.cc/slackware/sources/repo/totem-pl-parser-3.26.0.tar.xz"
+MD5SUM="a1c92d40691884ca05a70cb9993b9b9a"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/ucl/ucl.SlackBuild b/libraries/ucl/ucl.SlackBuild
index d7cf336816..f11c45e090 100644
--- a/libraries/ucl/ucl.SlackBuild
+++ b/libraries/ucl/ucl.SlackBuild
@@ -71,6 +71,7 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+CPPFLAGS="-std=c90" \
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
diff --git a/libraries/ucommon/ucommon.SlackBuild b/libraries/ucommon/ucommon.SlackBuild
index c37d6cd1bf..fd4b20c35b 100644
--- a/libraries/ucommon/ucommon.SlackBuild
+++ b/libraries/ucommon/ucommon.SlackBuild
@@ -24,7 +24,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=ucommon
-VERSION=${VERSION:-6.1.10}
+VERSION=${VERSION:-7.0.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
diff --git a/libraries/ucommon/ucommon.info b/libraries/ucommon/ucommon.info
index b90320835d..b31fa21fa4 100644
--- a/libraries/ucommon/ucommon.info
+++ b/libraries/ucommon/ucommon.info
@@ -1,8 +1,8 @@
PRGNAM="ucommon"
-VERSION="6.1.10"
+VERSION="7.0.0"
HOMEPAGE="http://www.gnu.org/software/commoncpp/"
-DOWNLOAD="http://ftp.gnu.org/gnu/commoncpp/ucommon-6.1.10.tar.gz"
-MD5SUM="a0908c7a1abad82ce9556bb59f77bedb"
+DOWNLOAD="http://ftp.gnu.org/gnu/commoncpp/ucommon-7.0.0.tar.gz"
+MD5SUM="90468af8f6692f0b6576189927414a39"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/libraries/vte2/README b/libraries/vte2/README
new file mode 100644
index 0000000000..4c78dea1a2
--- /dev/null
+++ b/libraries/vte2/README
@@ -0,0 +1,7 @@
+VTE2 is a terminal emulator widget for use with GTK+2.
+This package contains the VTE library and development files and
+a sample implementation (vte).
+
+This package can be installed side by side with vte included in
+the default Slackware installation since this package is intended
+for use with GTK+2.
diff --git a/libraries/vte2/fix_meta_alt_keybinding.patch b/libraries/vte2/fix_meta_alt_keybinding.patch
new file mode 100644
index 0000000000..bd364be584
--- /dev/null
+++ b/libraries/vte2/fix_meta_alt_keybinding.patch
@@ -0,0 +1,74 @@
+From 180dcc578e13c6096e277fb853e7162db640f207 Mon Sep 17 00:00:00 2001
+From: Alexandre Rostovtsev <tetromino@gentoo.org>
+Date: Tue, 15 Nov 2011 03:06:40 -0500
+Subject: [PATCH] Map both gdk's Meta and Alt to vte's Meta for >=gtk+-3.2.2
+ compatibility
+
+Also, since VTE_META_MASK is now a mask with multiple bits set, code that
+compares gdk key modifiers to VTE_META_MASK by numerical equality is no
+longer guaranteed to work. Therefore, for such comparisons a new function,
+vte_keymap_fixup_modifiers, is introduced; it ensures that if any bits
+matching matching VTE_META_MASK are set, then all are set.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=663779
+---
+ src/keymap.c | 15 +++++++++++++--
+ src/keymap.h | 2 +-
+ 2 files changed, 14 insertions(+), 3 deletions(-)
+
+diff --git a/src/keymap.c b/src/keymap.c
+index 9a21669..95b4c5b 100644
+--- a/src/keymap.c
++++ b/src/keymap.c
+@@ -990,6 +990,17 @@ static const struct _vte_keymap_group {
+ {GDK_KEY (F35), _vte_keymap_GDK_F35},
+ };
+
++/* Restrict modifiers to the specified mask and ensure that VTE_META_MASK,
++ * despite being a compound mask, is treated as indivisible. */
++GdkModifierType
++_vte_keymap_fixup_modifiers(GdkModifierType modifiers,
++ GdkModifierType mask)
++{
++ if (modifiers & VTE_META_MASK)
++ modifiers |= VTE_META_MASK;
++ return modifiers & mask;
++}
++
+ /* Map the specified keyval/modifier setup, dependent on the mode, to either
+ * a literal string or a capability name. */
+ void
+@@ -1104,7 +1115,7 @@ _vte_keymap_map(guint keyval,
+ } else {
+ fkey_mode = fkey_default;
+ }
+- modifiers &= (GDK_SHIFT_MASK | GDK_CONTROL_MASK | VTE_META_MASK | VTE_NUMLOCK_MASK);
++ modifiers = _vte_keymap_fixup_modifiers(modifiers, GDK_SHIFT_MASK | GDK_CONTROL_MASK | VTE_META_MASK | VTE_NUMLOCK_MASK);
+
+ /* Search for the conditions. */
+ for (i = 0; entries[i].normal_length || entries[i].special[0]; i++)
+@@ -1375,7 +1386,7 @@ _vte_keymap_key_add_key_modifiers(guint keyval,
+ return;
+ }
+
+- switch (modifiers & significant_modifiers) {
++ switch (_vte_keymap_fixup_modifiers(modifiers, significant_modifiers)) {
+ case 0:
+ modifier = 0;
+ break;
+diff --git a/src/keymap.h b/src/keymap.h
+index 243e22e..21d9b8e 100644
+--- a/src/keymap.h
++++ b/src/keymap.h
+@@ -27,7 +27,7 @@
+
+ G_BEGIN_DECLS
+
+-#define VTE_META_MASK GDK_META_MASK
++#define VTE_META_MASK (GDK_META_MASK | GDK_MOD1_MASK)
+ #define VTE_NUMLOCK_MASK GDK_MOD2_MASK
+
+ /* Map the specified keyval/modifier setup, dependent on the mode, to either
+--
+1.7.8.rc3
+
diff --git a/libraries/vte3/slack-desc b/libraries/vte2/slack-desc
index 7f685687da..1c583a507c 100644
--- a/libraries/vte3/slack-desc
+++ b/libraries/vte2/slack-desc
@@ -6,14 +6,14 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-vte3: vte3 (terminal emulator widget)
-vte3:
-vte3: VTE3 is a terminal emulator widget for use with GTK+3. This package
-vte3: contains the VTE library and development files and a sample
-vte3: implementation (vte).
-vte3:
-vte3: VTE is used by XFce.
-vte3:
-vte3: homepage: https://github.com/GNOME/vte
-vte3:
-vte3:
+vte2: vte2 (gtk+2 terminal emulator widget)
+vte2:
+vte2: VTE2 is a terminal emulator widget for use with GTK+2. This package
+vte2: contains the VTE library and development files and a sample
+vte2: implementation (vte).
+vte2:
+vte2: homepage: https://github.com/GNOME/vte
+vte2:
+vte2:
+vte2:
+vte2:
diff --git a/libraries/vte2/vte.escape.cpu.usage.diff b/libraries/vte2/vte.escape.cpu.usage.diff
new file mode 100644
index 0000000000..e82cf46877
--- /dev/null
+++ b/libraries/vte2/vte.escape.cpu.usage.diff
@@ -0,0 +1,89 @@
+--- ./src/table.c.orig 2011-08-16 16:52:48.000000000 -0500
++++ ./src/table.c 2012-08-08 21:25:15.080344805 -0500
+@@ -550,7 +550,7 @@
+ if (G_UNLIKELY (*array == NULL)) {
+ *array = g_value_array_new(1);
+ }
+- g_value_set_long(&value, total);
++ g_value_set_long(&value, CLAMP (total, 0, G_MAXUSHORT));
+ g_value_array_append(*array, &value);
+ } while (i++ < arginfo->length);
+ g_value_unset(&value);
+--- ./src/vteseq.c.orig 2011-08-16 16:52:48.000000000 -0500
++++ ./src/vteseq.c 2012-08-08 21:25:15.104344804 -0500
+@@ -557,7 +557,7 @@
+ GValueArray *params,
+ VteTerminalSequenceHandler handler)
+ {
+- vte_sequence_handler_multiple_limited(terminal, params, handler, G_MAXLONG);
++ vte_sequence_handler_multiple_limited(terminal, params, handler, G_MAXUSHORT);
+ }
+
+ static void
+@@ -1392,7 +1392,7 @@
+ static void
+ vte_sequence_handler_DC (VteTerminal *terminal, GValueArray *params)
+ {
+- vte_sequence_handler_multiple(terminal, params, vte_sequence_handler_dc);
++ vte_sequence_handler_multiple_r(terminal, params, vte_sequence_handler_dc);
+ }
+
+ /* Delete a line at the current cursor position. */
+@@ -1785,7 +1785,7 @@
+ static void
+ vte_sequence_handler_RI (VteTerminal *terminal, GValueArray *params)
+ {
+- vte_sequence_handler_multiple(terminal, params, vte_sequence_handler_nd);
++ vte_sequence_handler_multiple_r(terminal, params, vte_sequence_handler_nd);
+ }
+
+ /* Save cursor (position). */
+@@ -2777,8 +2777,7 @@
+ {
+ GValue *value;
+ VteScreen *screen;
+- long param, end, row;
+- int i;
++ long param, end, row, i, limit;
+ screen = terminal->pvt->screen;
+ /* The default is one. */
+ param = 1;
+@@ -2796,7 +2795,13 @@
+ } else {
+ end = screen->insert_delta + terminal->row_count - 1;
+ }
+- /* Insert the new lines at the cursor. */
++
++ /* Only allow to insert as many lines as there are between this row
++ * and the end of the scrolling region. See bug #676090.
++ */
++ limit = end - row + 1;
++ param = MIN (param, limit);
++
+ for (i = 0; i < param; i++) {
+ /* Clear a line off the end of the region and add one to the
+ * top of the region. */
+@@ -2817,8 +2822,7 @@
+ {
+ GValue *value;
+ VteScreen *screen;
+- long param, end, row;
+- int i;
++ long param, end, row, i, limit;
+
+ screen = terminal->pvt->screen;
+ /* The default is one. */
+@@ -2837,6 +2841,13 @@
+ } else {
+ end = screen->insert_delta + terminal->row_count - 1;
+ }
++
++ /* Only allow to delete as many lines as there are between this row
++ * and the end of the scrolling region. See bug #676090.
++ */
++ limit = end - row + 1;
++ param = MIN (param, limit);
++
+ /* Clear them from below the current cursor. */
+ for (i = 0; i < param; i++) {
+ /* Insert a line at the end of the region and remove one from
diff --git a/libraries/vte3/vte3.SlackBuild b/libraries/vte2/vte2.SlackBuild
index 22767e6827..8d137f0f6d 100644
--- a/libraries/vte3/vte3.SlackBuild
+++ b/libraries/vte2/vte2.SlackBuild
@@ -1,8 +1,8 @@
#!/bin/sh
-# Slackware build script for vte3
+# Slackware build script for vte2
-# Copyright 2012-2017 Willy Sudiarto Raharjo <willysr@slackbuilds.org>
+# Copyright 2017 Matteo Bernardini <ponce@slackbuilds.org>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,9 +22,9 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+PRGNAM=vte2
SRCNAM=vte
-PRGNAM=vte3
-VERSION=${VERSION:-0.50.2}
+VERSION=${VERSION:-0.28.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -61,9 +61,8 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $SRCNAM-$VERSION
-tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z*
cd $SRCNAM-$VERSION
-
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -71,7 +70,12 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-./autogen.sh
+# https://bugzilla.gnome.org/show_bug.cgi?id=663779
+patch -p1 < $CWD/fix_meta_alt_keybinding.patch
+
+# Escape sequences can cause high CPU usage (CVE-2012-2738):
+patch -p1 < $CWD/vte.escape.cpu.usage.diff
+
CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
@@ -80,7 +84,11 @@ CFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--docdir=/usr/doc/$PRGNAM-$VERSION \
--disable-static \
- --enable-introspection \
+ --disable-introspection \
+ --enable-python \
+ --enable-gnome-pty-helper \
+ --with-gtk=2.0 \
+ --with-default-emulation=xterm \
--build=$ARCH-slackware-linux
make
@@ -90,7 +98,7 @@ find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | gr
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS COPYING HACKING NEWS README* $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a AUTHORS COPYING HACKING MAINTAINERS NEWS README* $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/libraries/vte2/vte2.info b/libraries/vte2/vte2.info
new file mode 100644
index 0000000000..2ed7a7f4f6
--- /dev/null
+++ b/libraries/vte2/vte2.info
@@ -0,0 +1,10 @@
+PRGNAM="vte2"
+VERSION="0.28.2"
+HOMEPAGE="https://github.com/GNOME/vte"
+DOWNLOAD="http://ftp.gnome.org/pub/gnome/sources/vte/0.28/vte-0.28.2.tar.xz"
+MD5SUM="497f26e457308649e6ece32b3bb142ff"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Matteo Bernardini"
+EMAIL="ponce@slackbuilds.org"
diff --git a/libraries/vte3/README b/libraries/vte3/README
deleted file mode 100644
index 86da295880..0000000000
--- a/libraries/vte3/README
+++ /dev/null
@@ -1,7 +0,0 @@
-VTE3 is a terminal emulator widget for use with GTK+3. This package
-contains the VTE library and development files and a sample
-implementation (vte).
-
-This package can be installed side by side with vte included
-in default Slackware installation since this package is intended for
-use with GTK+3.
diff --git a/libraries/vte3/vte3.info b/libraries/vte3/vte3.info
deleted file mode 100644
index c6411ff75b..0000000000
--- a/libraries/vte3/vte3.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="vte3"
-VERSION="0.50.2"
-HOMEPAGE="https://github.com/GNOME/vte"
-DOWNLOAD="https://github.com/GNOME/vte/archive/0.50.2/vte-0.50.2.tar.gz"
-MD5SUM="bf2dfda34b2d641c5b9b839d1abcf410"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="vala pcre2"
-MAINTAINER="Willy Sudiarto Raharjo"
-EMAIL="willysr@slackbuilds.org"
diff --git a/libraries/webkit2gtk/webkit2gtk.info b/libraries/webkit2gtk/webkit2gtk.info
index 8c4164b2e7..3b9e7738f9 100644
--- a/libraries/webkit2gtk/webkit2gtk.info
+++ b/libraries/webkit2gtk/webkit2gtk.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://www.webkitgtk.org/releases/webkitgtk-2.20.5.tar.xz"
MD5SUM="72a05f6a4dc1c78b079590a8fd280401"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="geoclue2 hyphen libwebp woff2"
+REQUIRES="geoclue2 gst-plugins-bad hyphen libwebp woff2"
MAINTAINER="Willy Sudiarto Raharjo"
EMAIL="willysr@slackbuilds.org"
diff --git a/libraries/webkitgtk3/webkitgtk3.SlackBuild b/libraries/webkitgtk3/webkitgtk3.SlackBuild
index e33636bf82..10b1fc099e 100644
--- a/libraries/webkitgtk3/webkitgtk3.SlackBuild
+++ b/libraries/webkitgtk3/webkitgtk3.SlackBuild
@@ -80,7 +80,7 @@ if pkg-config --exists geoclue ; then GEOCLUE="yes" ; else GEOCLUE="no" ; fi
patch -p1 < $CWD/webkitgtk-2.4.9-abs.patch
CFLAGS="$SLKCFLAGS -fno-delete-null-pointer-checks" \
-CXXFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS -fno-delete-null-pointer-checks -fpermissive" \
./configure \
--prefix=/usr \
--docdir=/usr/doc/$PRGNAM-$VERSION \
@@ -88,7 +88,7 @@ CXXFLAGS="$SLKCFLAGS" \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--with-gtk=3.0 \
--enable-introspection \
- --enable-webkit2 \
+ --enable-webkit2=no \
--enable-geolocation=$GEOCLUE \
--build=$ARCH-slackware-linux
diff --git a/libraries/wvstreams/patches/0001-Use-explicit-cast-and-prevent-compiler-error.patch b/libraries/wvstreams/patches/0001-Use-explicit-cast-and-prevent-compiler-error.patch
new file mode 100644
index 0000000000..3932ddb949
--- /dev/null
+++ b/libraries/wvstreams/patches/0001-Use-explicit-cast-and-prevent-compiler-error.patch
@@ -0,0 +1,50 @@
+From 32ecfa8e89306ace726f7ad14f2b09c2aa1b96c4 Mon Sep 17 00:00:00 2001
+From: Michal Sekletar <msekleta@redhat.com>
+Date: Tue, 9 Feb 2016 21:02:59 +0100
+Subject: [PATCH] Use explicit cast and prevent compiler error
+
+---
+ streams/wvstream.cc | 13 ++++++++-----
+ 1 file changed, 8 insertions(+), 5 deletions(-)
+
+diff --git a/streams/wvstream.cc b/streams/wvstream.cc
+index 4564f3c..76565b4 100644
+--- a/streams/wvstream.cc
++++ b/streams/wvstream.cc
+@@ -907,9 +907,9 @@ void WvStream::_build_selectinfo(SelectInfo &si, time_t msec_timeout,
+
+ if (forceable)
+ {
+- si.wants.readable = readcb;
+- si.wants.writable = writecb;
+- si.wants.isexception = exceptcb;
++ si.wants.readable = static_cast<bool>(readcb);
++ si.wants.writable = static_cast<bool>(writecb);
++ si.wants.isexception = static_cast<bool>(exceptcb);
+ }
+ else
+ {
+@@ -1019,7 +1019,7 @@ bool WvStream::_select(time_t msec_timeout, bool readable, bool writable,
+
+ IWvStream::SelectRequest WvStream::get_select_request()
+ {
+- return IWvStream::SelectRequest(readcb, writecb, exceptcb);
++ return IWvStream::SelectRequest(static_cast<bool>(readcb), static_cast<bool>(writecb), static_cast<bool>(exceptcb));
+ }
+
+
+@@ -1107,7 +1107,10 @@ bool WvStream::continue_select(time_t msec_timeout)
+ // inefficient, because if the alarm was expired then pre_select()
+ // returned true anyway and short-circuited the previous select().
+ TRACE("hello-%p\n", this);
+- return !alarm_was_ticking || select(0, readcb, writecb, exceptcb);
++ return !alarm_was_ticking || select(0,
++ static_cast<bool>(readcb),
++ static_cast<bool>(writecb),
++ static_cast<bool>(exceptcb));
+ }
+
+
+--
+2.5.0
+
diff --git a/libraries/wvstreams/patches/05_gcc.diff b/libraries/wvstreams/patches/05_gcc.diff
index 8e4fd03298..616843d4ae 100644
--- a/libraries/wvstreams/patches/05_gcc.diff
+++ b/libraries/wvstreams/patches/05_gcc.diff
@@ -1,16 +1,3 @@
-Index: wvstreams-4.6.1/crypto/wvx509.cc
-===================================================================
---- wvstreams-4.6.1.orig/crypto/wvx509.cc 2011-05-20 00:02:38.119136584 +0200
-+++ wvstreams-4.6.1/crypto/wvx509.cc 2011-05-20 00:02:26.035136589 +0200
-@@ -1157,7 +1157,7 @@
-
- if (ext)
- {
-- X509V3_EXT_METHOD *method = X509V3_EXT_get(ext);
-+ X509V3_EXT_METHOD *method = (X509V3_EXT_METHOD *)X509V3_EXT_get(ext);
- if (!method)
- {
- WvDynBuf buf;
Index: wvstreams-4.6.1/ipstreams/wvunixdgsocket.cc
===================================================================
--- wvstreams-4.6.1.orig/ipstreams/wvunixdgsocket.cc 2011-05-20 00:02:38.391136584 +0200
diff --git a/libraries/wvstreams/patches/openssl-buildfix.patch b/libraries/wvstreams/patches/openssl-buildfix.patch
new file mode 100644
index 0000000000..3f76e5f697
--- /dev/null
+++ b/libraries/wvstreams/patches/openssl-buildfix.patch
@@ -0,0 +1,16 @@
+diff -Naur wvstreams-4.6.1.orig/crypto/wvx509.cc wvstreams-4.6.1/crypto/wvx509.cc
+--- wvstreams-4.6.1.orig/crypto/wvx509.cc 2008-10-23 22:23:49.000000000 +0200
++++ wvstreams-4.6.1/crypto/wvx509.cc 2018-05-10 09:25:27.106684000 +0200
+@@ -1157,7 +1157,11 @@
+
+ if (ext)
+ {
+- X509V3_EXT_METHOD *method = X509V3_EXT_get(ext);
++#if OPENSSL_VERSION_NUMBER >= 0x10000000L
++ const X509V3_EXT_METHOD *method = X509V3_EXT_get(ext);
++#else
++ X509V3_EXT_METHOD *method = (X509V3_EXT_METHOD *)X509V3_EXT_get(ext);
++#endif
+ if (!method)
+ {
+ WvDynBuf buf;
diff --git a/libraries/wvstreams/wvstreams.SlackBuild b/libraries/wvstreams/wvstreams.SlackBuild
index 562bb05d11..fe600b62c9 100644
--- a/libraries/wvstreams/wvstreams.SlackBuild
+++ b/libraries/wvstreams/wvstreams.SlackBuild
@@ -59,13 +59,20 @@ patch -p1 < $CWD/patches/wvstreams-4.6.1-parallel-make.patch
patch -p1 < $CWD/patches/wvstreams-4.6.1-gcc47.patch
# another patch for gcc and glibc > 2.12.0 from debian
patch -p1 < $CWD/patches/05_gcc.diff
+# another one for gcc-6.x from fedora
+patch -p1 < $CWD/patches/0001-Use-explicit-cast-and-prevent-compiler-error.patch
+# disable a warning (just for readability during build)
+sed -i "s|_BSD_SOURCE|_DEFAULT_SOURCE|" wvrules.mk
+# Fix build against openssl
+patch -p1 < $CWD/patches/openssl-buildfix.patch
# configure doesn't support disabling static libraries
# Don't manually remove them either, as wvdial won't build then :)
# Added more flags to avoid aborting when building with gcc-4.7.x
# https://bugs.gentoo.org/show_bug.cgi?id=419971
+LIBS="-L/usr/lib${LIBDIRSUFFIX}/openssl-1.0" \
CFLAGS="$SLKCFLAGS -fno-tree-dce -fno-optimize-sibling-calls" \
-CXXFLAGS="$SLKCFLAGS -fno-tree-dce -fno-optimize-sibling-calls" \
+CXXFLAGS="$SLKCFLAGS -fno-tree-dce -fno-optimize-sibling-calls -I/usr/include/openssl-1.0" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
diff --git a/libraries/xf86-input-libinput/README b/libraries/xf86-input-libinput/README
deleted file mode 100644
index 5acca28f9c..0000000000
--- a/libraries/xf86-input-libinput/README
+++ /dev/null
@@ -1,20 +0,0 @@
-A generic input driver for the X.Org X11 X server based on libinput,
-supporting all devices.
-Serves as a wrapper needed by libinput to communicate with X.Org.
-
-Note that to have libinput properly operating on a Slackware 14.2
-system, you also need this wrapper.
-
-The package automatically places a default configuration file in
-/etc/X11/xorg.conf.d/90-libinput.conf
-To make sure that the driver takes precedence over any other drivers
-that try to control your input devices, make sure that the number of
-the above file is the highest of all the numbers in the same directory.
-If you want to customize the default parameters of the driver,
-modify the above file. Do not modify the system file in
-/usr/share/X11/xorg.conf.d/90-libinput.conf
-
-WARNING: Misconfiguration of an X input driver may leave you without
-usable input devices in your X session.
-To fix the problem, boot to init level 3 (terminal, without starting X)
-and make the appropriate fixes.
diff --git a/libraries/xf86-input-libinput/slack-desc b/libraries/xf86-input-libinput/slack-desc
deleted file mode 100644
index 47a5a44bd0..0000000000
--- a/libraries/xf86-input-libinput/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-xf86-input-libinput: xf86-input-libinput (Xorg X11 libinput input driver)
-xf86-input-libinput:
-xf86-input-libinput: A generic input driver for the X.Org X11 X server based on libinput,
-xf86-input-libinput: supporting all devices. Serves as a wrapper needed by libinput to
-xf86-input-libinput: communicate with X.Org
-xf86-input-libinput:
-xf86-input-libinput:
-xf86-input-libinput: http://xorg.freedesktop.org/
-xf86-input-libinput: https://cgit.freedesktop.org/xorg/driver/xf86-input-libinput/
-xf86-input-libinput:
-xf86-input-libinput:
diff --git a/libraries/xf86-input-libinput/xf86-input-libinput.SlackBuild b/libraries/xf86-input-libinput/xf86-input-libinput.SlackBuild
deleted file mode 100644
index 532bdb2caa..0000000000
--- a/libraries/xf86-input-libinput/xf86-input-libinput.SlackBuild
+++ /dev/null
@@ -1,116 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for xf86-input-libinput
-
-# Copyright 2017 Nikolay Nikolov <nikobnikolov[at]gmail[dot]com>
-# 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.
-
-PRGNAM=xf86-input-libinput
-VERSION=${VERSION:-0.28.0}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xjvf $CWD/$PRGNAM-$VERSION.tar.bz2
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --sharedstatedir=/var/lib \
- --infodir=/usr/info \
- --disable-silent-rules \
- --disable-dependency-tracking \
- --disable-static \
- --build=$ARCH-slackware-linux
-
-make
-make install DESTDIR=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-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
-
-rm -f $PKG/usr/info/dir
-
-find $PKG -name perllocal.pod \
- -o -name ".packlist" \
- -o -name "*.bs" \
- | xargs rm -f
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a README.md COPYING $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mv $PKG/usr/share/X11/xorg.conf.d/*-libinput.conf $PKG/usr/share/X11/xorg.conf.d/90-libinput.conf
-mkdir -p $PKG/etc/X11/xorg.conf.d/
-cp $PKG/usr/share/X11/xorg.conf.d/90-libinput.conf $PKG/etc/X11/xorg.conf.d/
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/libraries/xf86-input-libinput/xf86-input-libinput.info b/libraries/xf86-input-libinput/xf86-input-libinput.info
deleted file mode 100644
index bdf9f216c9..0000000000
--- a/libraries/xf86-input-libinput/xf86-input-libinput.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="xf86-input-libinput"
-VERSION="0.28.0"
-HOMEPAGE="https://cgit.freedesktop.org/xorg/driver/xf86-input-libinput/"
-DOWNLOAD="https://www.x.org/releases/individual/driver/xf86-input-libinput-0.28.0.tar.bz2"
-MD5SUM="2d7519ac0e39d4c88f3be32e81a637aa"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="libinput"
-MAINTAINER="Nikolay Nikolov"
-EMAIL="nikobnikolov[at]gmail[dot]com"
diff --git a/libraries/xulrunner/README b/libraries/xulrunner/README
deleted file mode 100644
index de70749144..0000000000
--- a/libraries/xulrunner/README
+++ /dev/null
@@ -1,12 +0,0 @@
-The XULRunner project is a Mozilla runtime package that can be used
-to bootstrap XUL+XPCOM applications that are as rich as Thunderbird
-and Firefox. It will provide mechanisms for installing, upgrading,
-and uninstalling these applications. XULRunner will also provide
-libxul, a solution which allows the embedding of Mozilla technologies
-in other projects and products.
-
-Note:
-If you have to install jdk you need to run ". /etc/profile" before
-trying to compile xurlrunner.
-
-Optional dependencies are avahi, gnome-vfs, libbonobo, and libgnome.
diff --git a/libraries/xulrunner/ftfntfmt.patch b/libraries/xulrunner/ftfntfmt.patch
deleted file mode 100644
index 176360f8a5..0000000000
--- a/libraries/xulrunner/ftfntfmt.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From bb146548c7846ba5d14f070f4be985797d83d5ca Mon Sep 17 00:00:00 2001
-From: Mike Hommey <mh+mozilla@glandium.org>
-Date: Fri, 14 Aug 2015 08:50:38 +0900
-Subject: [PATCH] Bug 1194520 - Add a system header wrapper for
- <freetype/ftfntfmt.h>
-
----
- config/system-headers | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/config/system-headers b/config/system-headers
-index bee35da..ad1f88d 100644
---- a/config/system-headers
-+++ b/config/system-headers
-@@ -450,16 +450,17 @@ foundation/base64.h
- foundation/hexdump.h
- #endif
- fp.h
- fpieee.h
- frame/log.h
- frame/req.h
- freetype/freetype.h
- freetype/ftcache.h
-+freetype/ftfntfmt.h
- freetype/ftglyph.h
- freetype/ftsynth.h
- freetype/ftoutln.h
- freetype/ttnameid.h
- freetype/tttables.h
- freetype/t1tables.h
- freetype/ftlcdfil.h
- freetype/ftsizes.h
---
-2.5.0.3.ge81d485
-
diff --git a/libraries/xulrunner/gold/gold b/libraries/xulrunner/gold/gold
deleted file mode 100644
index 8c86d3b06b..0000000000
--- a/libraries/xulrunner/gold/gold
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/bin/bash
-/usr/bin/ld.gold "$@"
diff --git a/libraries/xulrunner/gold/ld b/libraries/xulrunner/gold/ld
deleted file mode 100644
index 8c86d3b06b..0000000000
--- a/libraries/xulrunner/gold/ld
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/bin/bash
-/usr/bin/ld.gold "$@"
diff --git a/libraries/xulrunner/slack-desc b/libraries/xulrunner/slack-desc
deleted file mode 100644
index c86823db11..0000000000
--- a/libraries/xulrunner/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-xulrunner: xulrunner (XULRunner provides the XUL Runtime environment)
-xulrunner:
-xulrunner: The XULRunner project is a Mozilla runtime package that can be used
-xulrunner: to bootstrap XUL+XPCOM applications that are as rich as Thunderbird
-xulrunner: and Firefox. It will provide mechanisms for installing, upgrading,
-xulrunner: and uninstalling these applications. XULRunner will also provide
-xulrunner: libxul, a solution which allows the embedding of Mozilla technologies
-xulrunner: in other projects and products.
-xulrunner:
-xulrunner: Homepage, http://developer.mozilla.org/en/XULRunner
-xulrunner:
diff --git a/libraries/xulrunner/xulrunner.SlackBuild b/libraries/xulrunner/xulrunner.SlackBuild
deleted file mode 100644
index ca27415be3..0000000000
--- a/libraries/xulrunner/xulrunner.SlackBuild
+++ /dev/null
@@ -1,162 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for xulrunner
-
-# Written by David Somero <dsomero@hotmail.com>
-# Derived from Slackware's Slackbuilds.
-#
-# Copyright 2008, 2009 Patrick J. Volkerding, Sebeka, Minnesota, USA
-# Copyright 2010, 2011 David Somero (dsomero@hotmail.com) Athens, TN, 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.
-
-
-PRGNAM=xulrunner
-VERSION=${VERSION:-41.0.2}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i486 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS=""
- LIBDIRSUFFIX=""
- OPTIMIZE=" --enable-optimize=-O2 "
- # On IA32, use gold since GNU ld runs out of memory linking libxul.so:
- PATH="$(pwd)/gold:$PATH"
- export CC="gcc -B$(pwd)/gold"
- export CXX="g++ -B$(pwd)/gold"
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS=""
- LIBDIRSUFFIX=""
- OPTIMIZE=" --enable-optimize=-O2 "
- # On IA32, use gold since GNU ld runs out of memory linking libxul.so:
- PATH="$(pwd)/gold:$PATH"
- export CC="gcc -B$(pwd)/gold"
- export CXX="g++ -B$(pwd)/gold"
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
- OPTIMIZE=" --enable-optimize=-O2 "
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
- OPTIMIZE=" --enable-optimize=-O2 "
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf mozilla-release
-tar xvf $CWD/$PRGNAM-$VERSION.source.tar.xz
-cd mozilla-release
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
-
-# https://bugzilla.mozilla.org/show_bug.cgi?id=1143411
-# https://bug1194520.bmoattachments.org/attachment.cgi?id=8647805
-patch -p1 < $CWD/ftfntfmt.patch
-
-# Don't use --enable-system-cairo
-# https://bugzilla.mozilla.org/show_bug.cgi?id=722975
-OPTIONS="\
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --enable-default-toolkit=cairo-gtk2 \
- $OPTIMIZE \
- --enable-application=xulrunner \
- --enable-javaxpcom \
- --enable-libxul \
- --enable-safe-browsing \
- --enable-image-encoders=all \
- --enable-image-decoders=all \
- --enable-pulseaudio \
- --enable-system-lcms \
- --with-system-zlib \
- --with-system-bz2 \
- --enable-system-ffi \
- --disable-system-sqlite \
- --disable-crashreporter \
- --disable-debug \
- --disable-mailnews \
- --disable-installer \
- --disable-updater \
- --disable-elf-hack \
- --build=$ARCH-slackware-linux \
- --host=$ARCH-slackware-linux \
- --target=$ARCH-slackware-linux"
-
-export CFLAGS="$SLKCFLAGS"
-export CXXFLAGS="$SLKCFLAGS"
-export MOZ_MAKE_FLAGS="$MAKEFLAGS"
-
-unset DBUS_SESSION_BUS_ADDRESS ORBIT_SOCKETDIR SESSION_MANAGER \
- XDG_SESSION_COOKIE XAUTHORITY MAKEFLAGS
-
-echo ". \$topsrcdir/browser/config/mozconfig" > .mozconfig
-
-# Mozilla devs enforce using an objdir for building
-# https://developer.mozilla.org/en/Configuring_Build_Options#Building_with_an_objdir
-mkdir obj
-echo "mk_add_options MOZ_OBJDIR=$(pwd)/obj" >> .mozconfig
-
-if [ "$MOZLOCALIZE" ]; then
- echo "mk_add_options MOZ_CO_LOCALES=\"$MOZLOCALIZE\"" >> .mozconfig
-fi
-
-# Write in it the options above
-for option in $OPTIONS; do echo "ac_add_options $option" >> .mozconfig; done
-
-echo "ac_add_options --disable-tests" >> .mozconfig
-make -f client.mk build
-
-make -f client.mk install DESTDIR=$PKG
-
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a LICENSE LEGAL README.txt $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/libraries/xulrunner/xulrunner.info b/libraries/xulrunner/xulrunner.info
deleted file mode 100644
index 97cd112c61..0000000000
--- a/libraries/xulrunner/xulrunner.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="xulrunner"
-VERSION="41.0.2"
-HOMEPAGE="https://developer.mozilla.org/en/Getting_started_with_XULRunner"
-DOWNLOAD="https://ftp.mozilla.org/pub/mozilla.org/xulrunner/releases/41.0.2/source/xulrunner-41.0.2.source.tar.xz"
-MD5SUM="d6889657659025de38387986cc8764e6"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="jdk"
-MAINTAINER="David Somero"
-EMAIL="dsomero@hotmail.com"
diff --git a/libraries/yaml-cpp/boost_patch.diff b/libraries/yaml-cpp/boost_patch.diff
new file mode 100644
index 0000000000..913c300b50
--- /dev/null
+++ b/libraries/yaml-cpp/boost_patch.diff
@@ -0,0 +1,11 @@
+diff -Naur yaml-cpp-release-0.5.3.bak/include/yaml-cpp/node/detail/iterator.h yaml-cpp-release-0.5.3/include/yaml-cpp/node/detail/iterator.h
+--- yaml-cpp-release-0.5.3.bak/include/yaml-cpp/node/detail/iterator.h 2016-01-11 07:11:40.000000000 +1300
++++ yaml-cpp-release-0.5.3/include/yaml-cpp/node/detail/iterator.h 2018-07-22 16:58:24.156667873 +1200
+@@ -11,6 +11,7 @@
+ #include "yaml-cpp/node/ptr.h"
+ #include "yaml-cpp/node/detail/node_iterator.h"
+ #include <boost/iterator/iterator_adaptor.hpp>
++#include <boost/next_prior.hpp>
+ #include <boost/utility.hpp>
+
+ namespace YAML {
diff --git a/libraries/yaml-cpp/yaml-cpp.SlackBuild b/libraries/yaml-cpp/yaml-cpp.SlackBuild
index ebd2bf4e34..f9d21e17b1 100644
--- a/libraries/yaml-cpp/yaml-cpp.SlackBuild
+++ b/libraries/yaml-cpp/yaml-cpp.SlackBuild
@@ -69,6 +69,8 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+patch -p1 < $CWD/boost_patch.diff
+
mkdir -p build
cd build
cmake \
diff --git a/misc/dmg2img/0001-openssl-1.1-compatibility.patch b/misc/dmg2img/0001-openssl-1.1-compatibility.patch
new file mode 100644
index 0000000000..b5ed45d2ff
--- /dev/null
+++ b/misc/dmg2img/0001-openssl-1.1-compatibility.patch
@@ -0,0 +1,219 @@
+From f16f247d30f868e84f31e24792b4464488f1c009 Mon Sep 17 00:00:00 2001
+From: Peter Wu <peter@lekensteyn.nl>
+Date: Tue, 2 May 2017 15:53:38 +0200
+Subject: [PATCH] vfdecrypt: OpenSSL 1.1 compatibility
+
+Allocate contexts from the heap on all OpenSSL versions, this is needed
+since OpenSSL 1.1.0. No attempt is done at addressing issues like global
+variables and fixing potential memleaks on error paths.
+
+Compile-tested only with OpenSSL 1.1.0e (Arch Linux) and OpenSSL 1.0.2g
+(Ubuntu 16.04), I have no test file.
+
+Fixes https://github.com/Lekensteyn/dmg2img/issues/4
+---
+ vfdecrypt.c | 103 ++++++++++++++++++++++++++++++++++++++++++++++--------------
+ 1 file changed, 80 insertions(+), 23 deletions(-)
+
+diff --git a/vfdecrypt.c b/vfdecrypt.c
+index 56d3530..b1a36d3 100644
+--- a/vfdecrypt.c
++++ b/vfdecrypt.c
+@@ -183,7 +183,7 @@ void adjust_v2_header_byteorder(cencrypted_v2_pwheader *pwhdr) {
+ pwhdr->encrypted_keyblob_size = htonl(pwhdr->encrypted_keyblob_size);
+ }
+
+-HMAC_CTX hmacsha1_ctx;
++HMAC_CTX *hmacsha1_ctx;
+ AES_KEY aes_decrypt_key;
+ int CHUNK_SIZE=4096; // default
+
+@@ -196,9 +196,9 @@ void compute_iv(uint32_t chunk_no, uint8_t *iv) {
+ unsigned int mdLen;
+
+ chunk_no = OSSwapHostToBigInt32(chunk_no);
+- HMAC_Init_ex(&hmacsha1_ctx, NULL, 0, NULL, NULL);
+- HMAC_Update(&hmacsha1_ctx, (void *) &chunk_no, sizeof(uint32_t));
+- HMAC_Final(&hmacsha1_ctx, mdResult, &mdLen);
++ HMAC_Init_ex(hmacsha1_ctx, NULL, 0, NULL, NULL);
++ HMAC_Update(hmacsha1_ctx, (void *) &chunk_no, sizeof(uint32_t));
++ HMAC_Final(hmacsha1_ctx, mdResult, &mdLen);
+ memcpy(iv, mdResult, CIPHER_BLOCKSIZE);
+ }
+
+@@ -212,52 +212,75 @@ void decrypt_chunk(uint8_t *ctext, uint8_t *ptext, uint32_t chunk_no) {
+ /* DES3-EDE unwrap operation loosely based on to RFC 2630, section 12.6
+ * wrapped_key has to be 40 bytes in length. */
+ int apple_des3_ede_unwrap_key(uint8_t *wrapped_key, int wrapped_key_len, uint8_t *decryptKey, uint8_t *unwrapped_key) {
+- EVP_CIPHER_CTX ctx;
++ EVP_CIPHER_CTX *ctx;
+ uint8_t *TEMP1, *TEMP2, *CEKICV;
+ uint8_t IV[8] = { 0x4a, 0xdd, 0xa2, 0x2c, 0x79, 0xe8, 0x21, 0x05 };
+ int outlen, tmplen, i;
+
+- EVP_CIPHER_CTX_init(&ctx);
++#if OPENSSL_VERSION_NUMBER >= 0x10100000L
++ ctx = EVP_CIPHER_CTX_new();
++#else
++ ctx = malloc(sizeof(*ctx));
++#endif
++ if (!ctx) {
++ fprintf(stderr, "Out of memory: EVP_CIPHER_CTX!\n");
++ return(-1);
++ }
++
++ EVP_CIPHER_CTX_init(ctx);
+ /* result of the decryption operation shouldn't be bigger than ciphertext */
+ TEMP1 = malloc(wrapped_key_len);
+ TEMP2 = malloc(wrapped_key_len);
+ CEKICV = malloc(wrapped_key_len);
+ /* uses PKCS#7 padding for symmetric key operations by default */
+- EVP_DecryptInit_ex(&ctx, EVP_des_ede3_cbc(), NULL, decryptKey, IV);
++ EVP_DecryptInit_ex(ctx, EVP_des_ede3_cbc(), NULL, decryptKey, IV);
+
+- if(!EVP_DecryptUpdate(&ctx, TEMP1, &outlen, wrapped_key, wrapped_key_len)) {
++ if(!EVP_DecryptUpdate(ctx, TEMP1, &outlen, wrapped_key, wrapped_key_len)) {
+ fprintf(stderr, "internal error (1) during key unwrap operation!\n");
+ return(-1);
+ }
+- if(!EVP_DecryptFinal_ex(&ctx, TEMP1 + outlen, &tmplen)) {
++ if(!EVP_DecryptFinal_ex(ctx, TEMP1 + outlen, &tmplen)) {
+ fprintf(stderr, "internal error (2) during key unwrap operation!\n");
+ return(-1);
+ }
+ outlen += tmplen;
+- EVP_CIPHER_CTX_cleanup(&ctx);
++#if OPENSSL_VERSION_NUMBER >= 0x10100000L
++ EVP_CIPHER_CTX_reset(ctx);
++#else
++ EVP_CIPHER_CTX_cleanup(ctx);
++#endif
+
+ /* reverse order of TEMP3 */
+ for(i = 0; i < outlen; i++) TEMP2[i] = TEMP1[outlen - i - 1];
+
+- EVP_CIPHER_CTX_init(&ctx);
++ EVP_CIPHER_CTX_init(ctx);
+ /* uses PKCS#7 padding for symmetric key operations by default */
+- EVP_DecryptInit_ex(&ctx, EVP_des_ede3_cbc(), NULL, decryptKey, TEMP2);
+- if(!EVP_DecryptUpdate(&ctx, CEKICV, &outlen, TEMP2+8, outlen-8)) {
++ EVP_DecryptInit_ex(ctx, EVP_des_ede3_cbc(), NULL, decryptKey, TEMP2);
++ if(!EVP_DecryptUpdate(ctx, CEKICV, &outlen, TEMP2+8, outlen-8)) {
+ fprintf(stderr, "internal error (3) during key unwrap operation!\n");
+ return(-1);
+ }
+- if(!EVP_DecryptFinal_ex(&ctx, CEKICV + outlen, &tmplen)) {
++ if(!EVP_DecryptFinal_ex(ctx, CEKICV + outlen, &tmplen)) {
+ fprintf(stderr, "internal error (4) during key unwrap operation!\n");
+ return(-1);
+ }
+
+ outlen += tmplen;
+- EVP_CIPHER_CTX_cleanup(&ctx);
++#if OPENSSL_VERSION_NUMBER >= 0x10100000L
++ EVP_CIPHER_CTX_reset(ctx);
++#else
++ EVP_CIPHER_CTX_cleanup(ctx);
++#endif
+
+ memcpy(unwrapped_key, CEKICV+4, outlen-4);
+ free(TEMP1);
+ free(TEMP2);
+ free(CEKICV);
++#if OPENSSL_VERSION_NUMBER >= 0x10100000L
++ EVP_CIPHER_CTX_free(ctx);
++#else
++ free(ctx);
++#endif
+ return(0);
+ }
+
+@@ -279,31 +302,46 @@ int unwrap_v1_header(char *passphrase, cencrypted_v1_header *header, uint8_t *ae
+ int unwrap_v2_header(char *passphrase, cencrypted_v2_pwheader *header, uint8_t *aes_key, uint8_t *hmacsha1_key) {
+ /* derived key is a 3DES-EDE key */
+ uint8_t derived_key[192/8];
+- EVP_CIPHER_CTX ctx;
++ EVP_CIPHER_CTX *ctx;
+ uint8_t *TEMP1;
+ int outlen, tmplen;
+
++#if OPENSSL_VERSION_NUMBER >= 0x10100000L
++ ctx = EVP_CIPHER_CTX_new();
++#else
++ ctx = malloc(sizeof(*ctx));
++#endif
++ if (!ctx) {
++ fprintf(stderr, "Out of memory: EVP_CIPHER_CTX!\n");
++ return(-1);
++ }
++
+ PKCS5_PBKDF2_HMAC_SHA1(passphrase, strlen(passphrase), (unsigned char*)header->kdf_salt, 20,
+ PBKDF2_ITERATION_COUNT, sizeof(derived_key), derived_key);
+
+ print_hex(derived_key, 192/8);
+
+- EVP_CIPHER_CTX_init(&ctx);
++ EVP_CIPHER_CTX_init(ctx);
+ /* result of the decryption operation shouldn't be bigger than ciphertext */
+ TEMP1 = malloc(header->encrypted_keyblob_size);
+ /* uses PKCS#7 padding for symmetric key operations by default */
+- EVP_DecryptInit_ex(&ctx, EVP_des_ede3_cbc(), NULL, derived_key, header->blob_enc_iv);
++ EVP_DecryptInit_ex(ctx, EVP_des_ede3_cbc(), NULL, derived_key, header->blob_enc_iv);
+
+- if(!EVP_DecryptUpdate(&ctx, TEMP1, &outlen, header->encrypted_keyblob, header->encrypted_keyblob_size)) {
++ if(!EVP_DecryptUpdate(ctx, TEMP1, &outlen, header->encrypted_keyblob, header->encrypted_keyblob_size)) {
+ fprintf(stderr, "internal error (1) during key unwrap operation!\n");
+ return(-1);
+ }
+- if(!EVP_DecryptFinal_ex(&ctx, TEMP1 + outlen, &tmplen)) {
++ if(!EVP_DecryptFinal_ex(ctx, TEMP1 + outlen, &tmplen)) {
+ fprintf(stderr, "internal error (2) during key unwrap operation!\n");
+ return(-1);
+ }
+ outlen += tmplen;
+- EVP_CIPHER_CTX_cleanup(&ctx);
++#if OPENSSL_VERSION_NUMBER >= 0x10100000L
++ EVP_CIPHER_CTX_free(ctx);
++#else
++ EVP_CIPHER_CTX_cleanup(ctx);
++ free(ctx);
++#endif
+ memcpy(aes_key, TEMP1, 16);
+ memcpy(hmacsha1_key, TEMP1, 20);
+
+@@ -446,8 +484,21 @@ int main(int argc, char *argv[]) {
+ CHUNK_SIZE = v2header.blocksize;
+ }
+
+- HMAC_CTX_init(&hmacsha1_ctx);
+- HMAC_Init_ex(&hmacsha1_ctx, hmacsha1_key, sizeof(hmacsha1_key), EVP_sha1(), NULL);
++#if OPENSSL_VERSION_NUMBER >= 0x10100000L
++ hmacsha1_ctx = HMAC_CTX_new();
++#else
++ hmacsha1_ctx = malloc(sizeof(*hmacsha1_ctx));
++#endif
++ if (!hmacsha1_ctx) {
++ fprintf(stderr, "Out of memory: HMAC CTX!\n");
++ exit(1);
++ }
++#if OPENSSL_VERSION_NUMBER >= 0x10100000L
++ HMAC_CTX_reset(hmacsha1_ctx);
++#else
++ HMAC_CTX_init(hmacsha1_ctx);
++#endif
++ HMAC_Init_ex(hmacsha1_ctx, hmacsha1_key, sizeof(hmacsha1_key), EVP_sha1(), NULL);
+ AES_set_decrypt_key(aes_key, CIPHER_KEY_LENGTH * 8, &aes_decrypt_key);
+
+ if (verbose >= 1) {
+@@ -472,5 +523,11 @@ int main(int argc, char *argv[]) {
+ }
+
+ if (verbose) fprintf(stderr, "%"PRIX32" chunks written\n", chunk_no);
++#if OPENSSL_VERSION_NUMBER >= 0x10100000L
++ HMAC_CTX_free(hmacsha1_ctx);
++#else
++ HMAC_CTX_cleanup(hmacsha1_ctx);
++ free(hmacsha1_ctx);
++#endif
+ return(0);
+ }
diff --git a/misc/dmg2img/dmg2img.SlackBuild b/misc/dmg2img/dmg2img.SlackBuild
index abc1872933..ebdf569f17 100644
--- a/misc/dmg2img/dmg2img.SlackBuild
+++ b/misc/dmg2img/dmg2img.SlackBuild
@@ -71,6 +71,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# Thanks Archlinux!
+patch -lp1 < $CWD/0001-openssl-1.1-compatibility.patch
+
make CFLAGS="$SLKCFLAGS"
make install DESTDIR=$PKG
diff --git a/misc/glogg/glogg.SlackBuild b/misc/glogg/glogg.SlackBuild
index 0278e2c4e8..33c808c379 100644
--- a/misc/glogg/glogg.SlackBuild
+++ b/misc/glogg/glogg.SlackBuild
@@ -23,7 +23,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=glogg
-VERSION=${VERSION:-1.0.2}
+VERSION=${VERSION:-1.1.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -69,7 +69,7 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-qmake
+qmake-qt5
make
make install INSTALL_ROOT=$PKG/usr
diff --git a/misc/glogg/glogg.info b/misc/glogg/glogg.info
index 61587350f7..fb8c11dd71 100644
--- a/misc/glogg/glogg.info
+++ b/misc/glogg/glogg.info
@@ -1,10 +1,10 @@
PRGNAM="glogg"
-VERSION="1.0.2"
+VERSION="1.1.4"
HOMEPAGE="http://glogg.bonnefon.org/"
-DOWNLOAD="http://glogg.bonnefon.org/files/glogg-1.0.2.tar.gz"
-MD5SUM="d6d9bb70ed50a38c5fa9114d71b52d3d"
+DOWNLOAD="http://glogg.bonnefon.org/files/glogg-1.1.4.tar.gz"
+MD5SUM="065d292411df490dcb3c6abae35ed608"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES=""
+REQUIRES="qt5"
MAINTAINER="Miroslaw Turski"
EMAIL="miroslaw.turski@gmail.com"
diff --git a/misc/gourmet/gourmet.SlackBuild b/misc/gourmet/gourmet.SlackBuild
index e9a2f0f93d..0121943095 100644
--- a/misc/gourmet/gourmet.SlackBuild
+++ b/misc/gourmet/gourmet.SlackBuild
@@ -24,7 +24,7 @@
PRGNAM=gourmet
VERSION=${VERSION:-0.17.4}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
@@ -69,6 +69,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# Patch to replace removed tostring() with tobytes()
+patch -p1 < $CWD/tostring-to-tobytes.patch
+
python setup.py install --root=$PKG
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
diff --git a/misc/gourmet/gourmet.info b/misc/gourmet/gourmet.info
index 16bbef1a65..64f0f25902 100644
--- a/misc/gourmet/gourmet.info
+++ b/misc/gourmet/gourmet.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://github.com/thinkle/gourmet/archive/0.17.4.tar.gz"
MD5SUM="937334364abc3093709a604c1d473e9f"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SQLAlchemy python-distutils-extra reportlab pygtkspell gst0-python python-elib.intl"
+REQUIRES="SQLAlchemy lxml python-distutils-extra reportlab pygtkspell gst0-python python-elib.intl pypoppler"
MAINTAINER="Erwin van Zanten"
EMAIL="e.van.zanten.evz@gmail.com"
diff --git a/misc/gourmet/slack-desc b/misc/gourmet/slack-desc
index 16eb4722a4..ae51c1b38c 100644
--- a/misc/gourmet/slack-desc
+++ b/misc/gourmet/slack-desc
@@ -6,7 +6,7 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-gourmet: gourmet (A Recipe organizer for Linux)
+gourmet: Gourmet (a recipe organizer for Linux)
gourmet:
gourmet: Gourmet Recipe Manager is a recipe-organizer that allows you
gourmet: to collect, search, organize, and browse your recipes.
diff --git a/misc/gourmet/tostring-to-tobytes.patch b/misc/gourmet/tostring-to-tobytes.patch
new file mode 100644
index 0000000000..e42c59403d
--- /dev/null
+++ b/misc/gourmet/tostring-to-tobytes.patch
@@ -0,0 +1,26 @@
+diff --git a/gourmet/gtk_extras/ratingWidget.py b/gourmet/gtk_extras/ratingWidget.py
+index 0e01735..efa6463 100644
+--- a/gourmet/gtk_extras/ratingWidget.py
++++ b/gourmet/gtk_extras/ratingWidget.py
+@@ -135,7 +135,7 @@ class StarGenerator:
+ if is_rgba: rowstride = 4
+ else: rowstride = 3
+ pb=gtk.gdk.pixbuf_new_from_data(
+- image.tostring(),
++ image.tobytes(),
+ gtk.gdk.COLORSPACE_RGB,
+ is_rgba,
+ 8,
+diff --git a/gourmet/plugins/browse_recipes/icon_helpers.py b/gourmet/plugins/browse_recipes/icon_helpers.py
+index 61c772c..2e7b08b 100644
+--- a/gourmet/plugins/browse_recipes/icon_helpers.py
++++ b/gourmet/plugins/browse_recipes/icon_helpers.py
+@@ -38,7 +38,7 @@ def get_pixbuf_from_image (image):
+ if is_rgba: rowstride = 4
+ else: rowstride = 3
+ pb=gtk.gdk.pixbuf_new_from_data(
+- image.tostring(),
++ image.tobytes(),
+ gtk.gdk.COLORSPACE_RGB,
+ is_rgba,
+ 8,
diff --git a/misc/ibus-unikey/ibus-unikey.SlackBuild b/misc/ibus-unikey/ibus-unikey.SlackBuild
index 3e2c7cc047..26ac340db0 100644
--- a/misc/ibus-unikey/ibus-unikey.SlackBuild
+++ b/misc/ibus-unikey/ibus-unikey.SlackBuild
@@ -60,7 +60,7 @@ patch -p1 -i $CWD/gcc-6.diff
./autogen.sh
CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS -Wno-error=narrowing" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
diff --git a/misc/krename/krename.SlackBuild b/misc/krename/krename.SlackBuild
index f084711cd4..4e67905635 100644
--- a/misc/krename/krename.SlackBuild
+++ b/misc/krename/krename.SlackBuild
@@ -71,6 +71,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# Fix for gcc >= 6.x
+patch -p1 < $CWD/null.patch
+
KDEPREF=$(kde4-config --prefix)
cmake \
diff --git a/misc/krename/null.patch b/misc/krename/null.patch
new file mode 100644
index 0000000000..991ebbea1c
--- /dev/null
+++ b/misc/krename/null.patch
@@ -0,0 +1,12 @@
+diff -Naur krename-r247.orig/src/batchrenamer.cpp krename-r247/src/batchrenamer.cpp
+--- krename-r247.orig/src/batchrenamer.cpp 2013-11-24 22:46:05.000000000 +0100
++++ krename-r247/src/batchrenamer.cpp 2017-06-20 14:42:57.330437870 +0200
+@@ -402,7 +402,7 @@
+ break;
+ case eRenameMode_Link:
+ // In case of link delete created file
+- job = KIO::file_delete( dstUrl, false );
++ job = KIO::file_delete( dstUrl, NULL );
+ break;
+ case eRenameMode_Copy: // no undo possible
+ // TODO: Maybe we should delete the created files
diff --git a/misc/stardict-tools/stardict-tools.SlackBuild b/misc/stardict-tools/stardict-tools.SlackBuild
index 7a681ee867..5466bff3f4 100644
--- a/misc/stardict-tools/stardict-tools.SlackBuild
+++ b/misc/stardict-tools/stardict-tools.SlackBuild
@@ -52,6 +52,9 @@ find -L . \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
patch -p0 < $CWD/stardict-tools.patch
+
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS -Wno-error=narrowing -fpermissive" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
diff --git a/misc/xca/xca.SlackBuild b/misc/xca/xca.SlackBuild
index 15387ae802..8d6f02ac35 100644
--- a/misc/xca/xca.SlackBuild
+++ b/misc/xca/xca.SlackBuild
@@ -69,6 +69,10 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# Hack to avoid building the html docs, broken with the newer linuxdoc-tools
+sed -i '/case "$DOCTOOL" in/i \
+DOCTOOL=true' configure
+
sed -i \
-e 's/LIBS="\${LIBS} \${OPENSSL_LIBS}\${QT_LIBS}"/LIBS="\${LIBS} \${OPENSSL_LIBS} \${QT_LIBS}"/' \
configure
diff --git a/misc/yapet/gcc6.patch b/misc/yapet/gcc6.patch
new file mode 100644
index 0000000000..a57e0c93c1
--- /dev/null
+++ b/misc/yapet/gcc6.patch
@@ -0,0 +1,11 @@
+--- yapet-1.0/yapet/cfg.h 2014-02-23 10:18:41.000000000 -0700
++++ yapet-1.0/yapet/cfg.h 2016-04-14 07:06:49.665672169 -0700
+@@ -163,7 +163,7 @@
+ locked = false;
+ }
+
+- void is_locked() const {
++ bool is_locked() const {
+ return locked;
+ }
+
diff --git a/misc/yapet/yapet.SlackBuild b/misc/yapet/yapet.SlackBuild
index 25630ffe46..91af2b8d91 100644
--- a/misc/yapet/yapet.SlackBuild
+++ b/misc/yapet/yapet.SlackBuild
@@ -69,6 +69,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# From upstream
+patch -p1 < $CWD/gcc6.patch
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
diff --git a/misc/zinnia/zinnia-fixes-gcc6-compile.patch b/misc/zinnia/zinnia-fixes-gcc6-compile.patch
new file mode 100644
index 0000000000..848f306edb
--- /dev/null
+++ b/misc/zinnia/zinnia-fixes-gcc6-compile.patch
@@ -0,0 +1,22 @@
+Index: zinnia-0.06/trainer.cpp
+===================================================================
+--- zinnia-0.06.orig/trainer.cpp
++++ zinnia-0.06/trainer.cpp
+@@ -93,7 +93,7 @@ class TrainerImpl: public Trainer {
+
+ public:
+ bool add(const Character &character) {
+- const std::string y = character.value();
++ std::string y = character.value();
+ CHECK_FALSE(!y.empty()) << "input character is empty";
+ Features features;
+ CHECK_FALSE(features.read(character)) << "cannot read character: " << y;
+@@ -103,7 +103,7 @@ class TrainerImpl: public Trainer {
+ if (!fn) {
+ return false;
+ }
+- x_.push_back(std::make_pair<std::string, FeatureNode *>(y, fn));
++ x_.push_back(std::make_pair(y, fn));
+ return true;
+ }
+
diff --git a/misc/zinnia/zinnia.SlackBuild b/misc/zinnia/zinnia.SlackBuild
index efd04acd51..62b3c033e4 100644
--- a/misc/zinnia/zinnia.SlackBuild
+++ b/misc/zinnia/zinnia.SlackBuild
@@ -70,6 +70,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# Thanks to fedora for this patch
+patch -p1 < $CWD/zinnia-fixes-gcc6-compile.patch
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
diff --git a/multimedia/MuseScore/MuseScore.SlackBuild b/multimedia/MuseScore/MuseScore.SlackBuild
index bc7ac9dca2..2ea246f75b 100644
--- a/multimedia/MuseScore/MuseScore.SlackBuild
+++ b/multimedia/MuseScore/MuseScore.SlackBuild
@@ -51,6 +51,9 @@ else
LIBDIRSUFFIX=""
fi
+# https://anonscm.debian.org/git/pkg-multimedia/musescore.git/commit/?id=bfc6223
+patch -p1 < $CWD/all.h.patch
+
make release PREFIX=/usr CFLAGS="$SLKCFLAGS" CXXFLAGS="$SLKCFLAGS" LDFLAGS="-pthread"
make install PREFIX=/usr DESTDIR=$PKG UPDATE_CACHE=FALSE
diff --git a/multimedia/MuseScore/all.h.patch b/multimedia/MuseScore/all.h.patch
new file mode 100644
index 0000000000..196baefafa
--- /dev/null
+++ b/multimedia/MuseScore/all.h.patch
@@ -0,0 +1,18 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 079504708..dcdb6c517 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -570,11 +570,8 @@ endif (NOT MINGW AND NOT APPLE)
+ #
+
+ # all.h is expected in PROJECT_BINARY_DIR by subdirs
+-add_custom_command(
+- OUTPUT ${PROJECT_BINARY_DIR}/all.h
+- COMMAND ${CMAKE_COMMAND}
+- ARGS -E copy ${PROJECT_SOURCE_DIR}/all.h ${PROJECT_BINARY_DIR}/all.h
+- DEPENDS ${PROJECT_SOURCE_DIR}/all.h
++execute_process(
++ COMMAND ${CMAKE_COMMAND} -E copy ${PROJECT_SOURCE_DIR}/all.h ${PROJECT_BINARY_DIR}/all.h
+ WORKING_DIRECTORY ${PROJECT_BINARY_DIR}
+ )
+ if (NOT MINGW)
diff --git a/multimedia/aegisub/aegisub.SlackBuild b/multimedia/aegisub/aegisub.SlackBuild
index 0bdf6b18bb..9cd0eccceb 100644
--- a/multimedia/aegisub/aegisub.SlackBuild
+++ b/multimedia/aegisub/aegisub.SlackBuild
@@ -70,7 +70,12 @@ find -L . \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
sed 's/$(LIBS_BOOST) $(LIBS_ICU)/$(LIBS_BOOST) $(LIBS_ICU) -pthread/' -i tools/Makefile
+sed 's|gil/gil_all.hpp|gil.hpp|g' -i src/*.cpp
+zcat $CWD/icu59.patch.gz | patch -p1
+patch -p1 < $CWD/boost-1.68.patch
+
+CPPFLAGS+=' -DU_USING_ICU_NAMESPACE=1' \
LDFLAGS="$LDFLAGS -lz" \
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
diff --git a/multimedia/aegisub/boost-1.68.patch b/multimedia/aegisub/boost-1.68.patch
new file mode 100644
index 0000000000..5d917f607e
--- /dev/null
+++ b/multimedia/aegisub/boost-1.68.patch
@@ -0,0 +1,34 @@
+From d8336d2fed73c72d1227b343d6acfb991bc1651b Mon Sep 17 00:00:00 2001
+From: Jan Beich <jbeich@FreeBSD.org>
+Date: Mon, 9 Jul 2018 20:15:29 +0000
+Subject: [PATCH] Keep using std::distance after Boost 1.68
+
+src/search_replace_engine.cpp:256:14: error: call to
+ 'distance' is ambiguous
+ count += distance(
+ ^~~~~~~~
+/usr/include/c++/v1/iterator:511:1: note: candidate function [with _InputIter =
+ boost::u32regex_iterator<std::__1::__wrap_iter<const char *> >]
+distance(_InputIter __first, _InputIter __last)
+^
+/usr/local/include/boost/iterator/distance.hpp:49:9: note: candidate function [with SinglePassIterator =
+ boost::u32regex_iterator<std::__1::__wrap_iter<const char *> >]
+ distance(SinglePassIterator first, SinglePassIterator last)
+ ^
+---
+ src/search_replace_engine.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/search_replace_engine.cpp b/src/search_replace_engine.cpp
+index 594c21e5e..14c71680d 100644
+--- a/src/search_replace_engine.cpp
++++ b/src/search_replace_engine.cpp
+@@ -253,7 +253,7 @@ bool SearchReplaceEngine::ReplaceAll() {
+ if (MatchState ms = matches(&diag, 0)) {
+ auto& diag_field = diag.*get_dialogue_field(settings.field);
+ std::string const& text = diag_field.get();
+- count += distance(
++ count += std::distance(
+ boost::u32regex_iterator<std::string::const_iterator>(begin(text), end(text), *ms.re),
+ boost::u32regex_iterator<std::string::const_iterator>());
+ diag_field = u32regex_replace(text, *ms.re, settings.replace_with);
diff --git a/multimedia/aegisub/icu59.patch.gz b/multimedia/aegisub/icu59.patch.gz
new file mode 100644
index 0000000000..a0253432b5
--- /dev/null
+++ b/multimedia/aegisub/icu59.patch.gz
Binary files differ
diff --git a/multimedia/bombono-dvd/bombono-dvd.SlackBuild b/multimedia/bombono-dvd/bombono-dvd.SlackBuild
index 4ad1cf1197..831f0d46b0 100644
--- a/multimedia/bombono-dvd/bombono-dvd.SlackBuild
+++ b/multimedia/bombono-dvd/bombono-dvd.SlackBuild
@@ -83,6 +83,8 @@ patch -p1 < $CWD/patches/fix_ptr2bool_cast.patch
patch -p1 < $CWD/patches/fix_c++11_literal_warnings.patch
patch -p1 < $CWD/patches/autoptr2uniqueptr.patch
patch -p1 < $CWD/patches/boost.patch
+patch -p1 < $CWD/patches/fix_operator_ambiguity.patch
+patch -p1 < $CWD/patches/fix_throw_specifications.patch
# Fix for ffmpeg-3
patch -p1 < $CWD/patches/ffmpeg3.patch
diff --git a/multimedia/bombono-dvd/patches/fix_operator_ambiguity.patch b/multimedia/bombono-dvd/patches/fix_operator_ambiguity.patch
new file mode 100644
index 0000000000..5fcfaf0466
--- /dev/null
+++ b/multimedia/bombono-dvd/patches/fix_operator_ambiguity.patch
@@ -0,0 +1,352 @@
+diff -ruN old/src/mbase/project/serialization.h new/src/mbase/project/serialization.h
+--- old/src/mbase/project/serialization.h 2017-06-01 13:54:44.086895687 +0430
++++ new/src/mbase/project/serialization.h 2017-06-01 14:09:16.523275880 +0430
+@@ -75,7 +75,9 @@
+ template<typename T>
+ std::string MakeString(const T& t)
+ {
+- return (str::stream() << t).str();
++ str::stream ss;
++ ss << t;
++ return ss.str();
+ }
+
+ template<typename T>
+diff -ruN old/src/mgui/dvdimport.cpp new/src/mgui/dvdimport.cpp
+--- old/src/mgui/dvdimport.cpp 2017-06-01 13:54:44.086895687 +0430
++++ new/src/mgui/dvdimport.cpp 2017-06-01 14:06:42.488114237 +0430
+@@ -211,10 +211,11 @@
+ row[VF().selState] = false;
+ row[VF().name] = VobFName(vob.pos);
+ row[VF().thumbnail] = vob.aspect == af4_3 ? pix4_3 : pix16_9;
+- std::string desc = (str::stream(Mpeg::SecToHMS(vob.tmLen, true)) << ", "
+- << vob.sz.x << "x" << vob.sz.y << ", "
+- << (vob.aspect == af4_3 ? "4:3" : "16:9") << ", "
+- << std::fixed << std::setprecision(2) << vob.Count()/512. << " " << _("MB")).str();
++ str::stream ss (Mpeg::SecToHMS(vob.tmLen, true));
++ ss << ", " << vob.sz.x << "x" << vob.sz.y << ", "
++ << (vob.aspect == af4_3 ? "4:3" : "16:9") << ", "
++ << std::fixed << std::setprecision(2) << vob.Count()/512. << " " << _("MB");
++ std::string desc = ss.str();
+ row[VF().desc] = desc;
+ }
+ CompleteSelection(id, false);
+diff -ruN old/src/mbase/project/media.cpp new/src/mbase/project/media.cpp
+--- old/src/mbase/project/media.cpp 2017-06-01 14:25:09.492134844 +0430
++++ new/src/mbase/project/media.cpp 2017-06-01 14:37:53.196336367 +0430
+@@ -58,7 +58,9 @@
+
+ std::string MakeAutoName(const std::string& str, int old_sz)
+ {
+- return (str::stream() << str << " " << old_sz+1).str();
++ str::stream ss;
++ ss << str << " " << old_sz+1;
++ return ss.str();
+ }
+
+ void VideoMD::AddChapter(ChapterItem chp)
+diff -ruN old/src/mbase/project/menu.cpp new/src/mbase/project/menu.cpp
+--- old/src/mbase/project/menu.cpp 2017-06-01 14:25:09.495468141 +0430
++++ new/src/mbase/project/menu.cpp 2017-06-01 14:39:42.004331141 +0430
+@@ -166,7 +166,9 @@
+ static std::string MakeObjectPath(int idx, const char* type)
+ {
+ ASSERT( idx != NO_HNDL );
+- return (str::stream() << type << "." << idx).str();
++ str::stream ss;
++ ss << type << "." << idx;
++ return ss.str();
+ }
+
+ std::string GetMediaRef(MediaItem mi)
+@@ -197,7 +199,9 @@
+ void RefMaker::Visit(VideoChapterMD& obj)
+ {
+ refStr = GetMediaRef(obj.owner);
+- refStr += (str::stream() << "." << ChapterPosInt(&obj)).str();
++ str::stream ss;
++ ss << "." << ChapterPosInt(&obj);
++ refStr += ss.str();
+ }
+
+ std::string Media2Ref(MediaItem mi)
+@@ -233,8 +237,9 @@
+
+ std::string ThrowBadIndex(const char* prefix, int idx)
+ {
+- throw std::runtime_error(
+- (str::stream() << prefix << idx).str() );
++ str::stream ss;
++ ss << prefix << idx;
++ throw std::runtime_error(ss.str());
+ }
+
+ MediaItem TryGetMedia(int idx)
+diff -ruN old/src/mbase/project/srl-common.cpp new/src/mbase/project/srl-common.cpp
+--- old/src/mbase/project/srl-common.cpp 2017-06-01 14:25:09.495468141 +0430
++++ new/src/mbase/project/srl-common.cpp 2017-06-01 14:40:56.524722225 +0430
+@@ -36,10 +36,12 @@
+ std::string ToString(const RGBA::Pixel& pxl)
+ {
+ using Mpeg::set_hms;
+- return (str::stream("#") << std::hex
+- << set_hms() << (int)pxl.red
+- << set_hms() << (int)pxl.green
+- << set_hms() << (int)pxl.blue << (int)pxl.alpha).str();
++ str::stream ss ("#");
++ ss << std::hex
++ << set_hms() << (int)pxl.red
++ << set_hms() << (int)pxl.green
++ << set_hms() << (int)pxl.blue << (int)pxl.alpha;
++ return ss.str();
+ }
+
+ // как pango_color_parse()
+diff -ruN old/src/mgui/author/render.cpp new/src/mgui/author/render.cpp
+--- old/src/mgui/author/render.cpp 2017-06-01 14:25:09.498801438 +0430
++++ new/src/mgui/author/render.cpp 2017-06-01 14:28:08.901379890 +0430
+@@ -1307,7 +1307,9 @@
+
+ bool RenderMainPicture(const std::string& out_dir, Menu mn, int i)
+ {
+- Author::Info((str::stream() << "Rendering menu \"" << mn->mdName << "\" ...").str());
++ str::stream ss;
++ ss << "Rendering menu \"" << mn->mdName << "\" ...";
++ Author::Info(ss.str());
+ const std::string mn_dir = MakeMenuPath(out_dir, mn, i);
+
+ if( IsMotion(mn) )
+diff -ruN old/src/mgui/author/script.cpp new/src/mgui/author/script.cpp
+--- old/src/mgui/author/script.cpp 2017-06-01 14:25:09.498801438 +0430
++++ new/src/mgui/author/script.cpp 2017-06-01 14:31:23.248978018 +0430
+@@ -130,7 +130,9 @@
+ {
+ VideoItem vi = IsVideo(mi);
+ ASSERT( vi );
+- str = (str::stream() << "title " << GetAuthorNumber(vi)).str();
++ str::stream ss;
++ ss << "title " << GetAuthorNumber(vi);
++ str = ss.str();
+ }
+ return str;
+ }
+@@ -179,7 +181,9 @@
+ // Потому: Ð´Ð»Ñ ÑƒÐ´Ð¾Ñтва пользователей даем Ñоздавать нулевую главу, Ñ€Ð°Ð·Ñ€ÐµÑˆÐ°Ñ Ñто здеÑÑŒ
+ // (однако доп. нулевые главы будут приводить к ошибке Cannot jump to chapter N ... only M exist)
+ int c_num = ChapterPosInt(&obj) + (owner->List()[0]->chpTime ? 2 : 1) ;
+- res = (str::stream() << "jump title " << v_num << " chapter " << c_num << ";").str();
++ str::stream ss;
++ ss << "jump title " << v_num << " chapter " << c_num << ";";
++ res = ss.str();
+ }
+
+ static std::string MakeButtonJump(MediaItem mi, bool vts_domain)
+@@ -204,7 +208,9 @@
+ if( !fs::native(name) )
+ name = "Menu";
+
+- std::string fname = (str::stream() << idx+1 << "." << name).str();
++ str::stream ss;
++ ss << idx+1 << "." << name;
++ std::string fname = ss.str();
+ return cnv_from_utf8 ? ConvertPathFromUtf8(fname) : fname ;
+ }
+
+@@ -626,7 +632,9 @@
+ void AuthorSectionInfo(const std::string& str)
+ {
+ Author::Info("\n#", false);
+- Author::Info((str::stream() << "# " << str).str(), false);
++ str::stream ss;
++ ss << "# " << str;
++ Author::Info(ss.str(), false);
+ Author::Info("#\n", false);
+ }
+
+@@ -1082,7 +1090,9 @@
+
+ static void AuthorImpl(const std::string& out_dir)
+ {
+- AuthorSectionInfo((str::stream() << "Build DVD-Video in folder: " << out_dir).str());
++ str::stream ss;
++ ss << "Build DVD-Video in folder: " << out_dir;
++ AuthorSectionInfo(ss.str());
+ IteratePendingEvents();
+
+ IndexVideosForAuthoring();
+diff -ruN old/src/mgui/project/add.cpp new/src/mgui/project/add.cpp
+--- old/src/mgui/project/add.cpp 2017-06-01 14:25:09.498801438 +0430
++++ new/src/mgui/project/add.cpp 2017-06-01 14:33:26.303387642 +0430
+@@ -86,7 +86,9 @@
+
+ static std::string FpsToStr(const Point& frate)
+ {
+- return (str::stream() << (double)frate.x/frate.y).str();
++ str::stream ss;
++ ss << (double)frate.x/frate.y;
++ return ss.str();
+ }
+
+ static std::string TVTypeStr(bool is_ntsc)
+@@ -163,7 +165,9 @@
+ // *
+ bool is_aspect_ok = vid.sarCode == af4_3 || vid.sarCode == af16_9;
+ Point aspect = vid.SizeAspect();
+- std::string aspect_str = (str::stream() << aspect.x << ':' << aspect.y).str();
++ str::stream ss;
++ ss << aspect.x << ':' << aspect.y;
++ std::string aspect_str = ss.str();
+ SetImportError(ed, is_aspect_ok,
+ std::string(_("Aspect ratio")) + ": \t" + MarkError(aspect_str, is_aspect_ok),
+ BF_(Descriptions[2]) % tv_type % bf::stop);
+diff -ruN old/src/mgui/sdk/cairo_utils.cpp new/src/mgui/sdk/cairo_utils.cpp
+--- old/src/mgui/sdk/cairo_utils.cpp 2017-06-01 14:25:09.498801438 +0430
++++ new/src/mgui/sdk/cairo_utils.cpp 2017-06-01 14:35:20.831246046 +0430
+@@ -27,6 +27,8 @@
+ std::string MakeSVGFilename(const char* prefix)
+ {
+ static int idx = 1;
+- return (str::stream() << prefix << "-" << Mpeg::set_hms() << idx++ << ".svg" ).str();
++ str::stream ss;
++ ss << prefix << "-" << Mpeg::set_hms() << idx++ << ".svg";
++ return ss.str();
+ }
+
+diff -ruN old/src/mgui/timeline/layout.cpp new/src/mgui/timeline/layout.cpp
+--- old/src/mgui/timeline/layout.cpp 2017-06-01 14:25:09.502134734 +0430
++++ new/src/mgui/timeline/layout.cpp 2017-06-01 14:36:36.152095784 +0430
+@@ -600,8 +600,10 @@
+ void FramesToTime(std::string& str, int cnt, double fps)
+ {
+ time4_t t4 = FramesToTime(cnt, fps);
+- str = (str::stream() << Mpeg::set_hms() << t4.hh << ":" << Mpeg::set_hms() << t4.mm << ":"
+- << Mpeg::set_hms() << t4.ss << ";" << Mpeg::set_hms() << t4.ff).str();
++ str::stream ss;
++ ss << Mpeg::set_hms() << t4.hh << ":" << Mpeg::set_hms() << t4.mm << ":"
++ << Mpeg::set_hms() << t4.ss << ";" << Mpeg::set_hms() << t4.ff;
++ str = ss.str();
+ }
+
+ } // namespace TimeLine
+diff -ruN old/src/mgui/win_utils.cpp new/src/mgui/win_utils.cpp
+--- old/src/mgui/win_utils.cpp 2017-06-01 14:25:09.498801438 +0430
++++ new/src/mgui/win_utils.cpp 2017-06-01 14:26:50.898112082 +0430
+@@ -132,7 +132,9 @@
+
+ std::string ColorToString(const unsigned int rgba)
+ {
+- return (str::stream() << std::hex << (rgba >> 8)).str();
++ str::stream ss;
++ ss << std::hex << (rgba >> 8);
++ return ss.str();
+ }
+
+ CR::Color GetBGColor(Gtk::Widget& wdg)
+diff -ruN old/src/mdemux/dvdread.cpp new/src/mdemux/dvdread.cpp
+--- old/src/mdemux/dvdread.cpp 2017-06-01 14:48:30.110355679 +0430
++++ new/src/mdemux/dvdread.cpp 2017-06-01 14:50:50.141065674 +0430
+@@ -35,8 +35,10 @@
+ std::string VobFName(VobPos& pos, const std::string& suffix)
+ {
+ using Mpeg::set_hms;
+- return (str::stream("Video") << set_hms() << int(pos.Vts())
+- << "-" << set_hms() << pos.VobId() << suffix << ".vob").str();
++ str::stream ss ("Video");
++ ss << set_hms() << int(pos.Vts())
++ << "-" << set_hms() << pos.VobId() << suffix << ".vob";
++ return ss.str();
+ }
+
+ typedef boost::function<void(int, double)> VobTimeFnr;
+@@ -282,9 +284,11 @@
+ static void TryDVDReadBlocks(dvd_file_t* file, int off, size_t cnt, char* buf)
+ {
+ int real_cnt = DVDReadBlocks(file, off, cnt, (unsigned char*)buf);
+- if( (int)cnt != real_cnt )
+- throw std::runtime_error( (str::stream() << real_cnt <<
+- " != DVDReadBlocks(" << cnt << ")").str() );
++ if( (int)cnt != real_cnt ) {
++ str::stream ss;
++ ss << real_cnt << " != DVDReadBlocks(" << cnt << ")";
++ throw std::runtime_error( ss.str() );
++ }
+ }
+
+ // размер буфера должен ÑоответÑтвовать читаемому диапазону
+diff -ruN old/src/mdemux/mpeg2demux.cpp new/src/mdemux/mpeg2demux.cpp
+--- old/src/mdemux/mpeg2demux.cpp 2017-06-01 14:48:30.110355679 +0430
++++ new/src/mdemux/mpeg2demux.cpp 2017-06-01 14:55:35.784165916 +0430
+@@ -71,7 +71,9 @@
+
+ static std::string MakePESKey(int id, const char* ext)
+ {
+- return (str::stream() << id << "." << ext).str();
++ str::stream ss;
++ ss << id << "." << ext;
++ return ss.str();
+ }
+
+ static bool ReadPart(io::stream& strm, uint8_t* buf, int sz, int& len)
+@@ -110,7 +112,9 @@
+ ASSERT(0);
+ }
+
+- std::string header_str = (str::stream() << sample_rate << ":" << channels << ":" << bps << ".lpcm").str();
++ str::stream ss;
++ ss << sample_rate << ":" << channels << ":" << bps << ".lpcm";
++ std::string header_str = ss.str();
+ return MakePESKey(track, header_str.c_str());
+ }
+
+diff -ruN old/src/mdemux/seek.cpp new/src/mdemux/seek.cpp
+--- old/src/mdemux/seek.cpp 2017-06-01 14:48:30.110355679 +0430
++++ new/src/mdemux/seek.cpp 2017-06-01 14:52:09.669280234 +0430
+@@ -37,8 +37,10 @@
+ int hh = min / 60;
+ int mm = min - hh*60;
+
+- return (str::stream() << set_hms() << hh << ":"
+- << set_hms() << mm << ":" << set_hms() << ss).str();
++ str::stream strss;
++ strss << set_hms() << hh << ":"
++ << set_hms() << mm << ":" << set_hms() << ss;
++ return strss.str();
+ }
+
+ bool MediaInfo::InitBegin(VideoLine& vl)
+diff -ruN old/src/mlib/sdk/misc.cpp new/src/mlib/sdk/misc.cpp
+--- old/src/mlib/sdk/misc.cpp 2017-06-01 14:48:30.120355606 +0430
++++ new/src/mlib/sdk/misc.cpp 2017-06-01 14:53:25.504549937 +0430
+@@ -173,12 +173,16 @@
+ std::string Double2Str(double val)
+ {
+ //return boost::format("%1%") % val % bf::stop;
+- return (str::stream() << val).str();
++ str::stream ss;
++ ss << val;
++ return ss.str();
+ }
+
+ std::string Int2Str(int val)
+ {
+- return (str::stream() << val).str();
++ str::stream ss;
++ ss << val;
++ return ss.str();
+ }
+
+ static bool ICaseMatch(const std::string& str, const std::string& pat_str)
+diff -ruN old/src/mlib/sdk/system.cpp new/src/mlib/sdk/system.cpp
+--- old/src/mlib/sdk/system.cpp 2017-06-01 14:48:30.120355606 +0430
++++ new/src/mlib/sdk/system.cpp 2017-06-01 14:54:13.980777662 +0430
+@@ -28,7 +28,9 @@
+ int GetMemSize()
+ {
+ pid_t pid = getpid();
+- std::string str = (str::stream() << "/proc/" << pid << "/statm").str();
++ str::stream ss;
++ ss << "/proc/" << pid << "/statm";
++ std::string str = ss.str();
+
+ io::stream strm(str.c_str(), iof::in);
+ int mem;
diff --git a/multimedia/bombono-dvd/patches/fix_throw_specifications.patch b/multimedia/bombono-dvd/patches/fix_throw_specifications.patch
new file mode 100644
index 0000000000..f2f4c40d4f
--- /dev/null
+++ b/multimedia/bombono-dvd/patches/fix_throw_specifications.patch
@@ -0,0 +1,24 @@
+diff -ruN old/src/mbase/project/table.h new/src/mbase/project/table.h
+--- old/src/mbase/project/table.h 2017-06-01 13:54:44.086895687 +0430
++++ new/src/mbase/project/table.h 2017-06-01 13:55:58.089107253 +0430
+@@ -128,7 +128,7 @@
+ void ClearSettings();
+
+ void Load(const std::string& fname,
+- const std::string& cur_dir = std::string()) throw (std::exception);
++ const std::string& cur_dir = std::string());
+ bool Save();
+
+ bool SaveAs(const std::string& fname,
+diff -ruN old/src/mbase/project/srl-db.cpp new/src/mbase/project/srl-db.cpp
+--- old/src/mbase/project/srl-db.cpp 2017-06-01 14:25:09.495468141 +0430
++++ new/src/mbase/project/srl-db.cpp 2017-06-01 14:41:49.699901753 +0430
+@@ -102,7 +102,7 @@
+ }
+
+ void ADatabase::Load(const std::string& fname,
+- const std::string& cur_dir) throw (std::exception)
++ const std::string& cur_dir)
+ {
+ try
+ {
diff --git a/multimedia/dvgrab/dvgrab.SlackBuild b/multimedia/dvgrab/dvgrab.SlackBuild
index 73e1d982cb..56cf622cf7 100644
--- a/multimedia/dvgrab/dvgrab.SlackBuild
+++ b/multimedia/dvgrab/dvgrab.SlackBuild
@@ -70,7 +70,7 @@ find -L . \
-exec chmod 644 {} \;
CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS -Wno-narrowing" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
diff --git a/multimedia/ffmpeg/README b/multimedia/ffmpeg/README
deleted file mode 100644
index cc3af60b8c..0000000000
--- a/multimedia/ffmpeg/README
+++ /dev/null
@@ -1,70 +0,0 @@
-ffmpeg (Software to record, convert and stream audio and video)
-
-FFmpeg is a complete solution to record, convert and stream audio
-and video. It includes libavcodec, the leading audio/video codec
-library.
-
-You can enable a lot of optional (not-autodetected) features by
-passing variables to the script (VAR=yes/no ./ffmpeg.SlackBuild):
-ASS=yes|no (default: no), requires libass
-BLURAY=yes|no (default: no), requires libbluray
-BS2B=yes|no (default: no), requires libbs2b
-CELT=yes|no (default: no), requires celt
-CHROMAPRINT=yes|no (default: no), requires chromaprint
-DC1394=yes|no (default: no), requires libdc1394
-DECKLINK=yes|no (default: no), requires decklink-sdk
-EBUR128=yes|no (default: no), requires libebur128
-FDK_AAC=yes|no (default: no), requires libfdk-aac (creates non-redistributable binary)
-FLITE=yes|no (default: no), requires flite
-FREI0R=yes|no (default: no), requires frei0r
-GME=yes|no (default: no), requires libgme
-GSM=yes|no (default: no), requires gsm
-IEC61883=yes|no (default: no), requires libiec61883 and libavc1394
-ILBC=yes|no (default: no), requires libilbc
-LADSPA=yes|no (default: no), requires ladspa_sdk
-LAME=yes|no (default: no), requires lame
-MODPLUG=yes|no (default: no), requires libmodplug
-NETCDF=yes|no (default: no), requires netcdf
-OPENAL=yes|no (default: no), requires OpenAL
-OPENCORE=yes|no (default: no), requires opencore-amr
-OPENCV=yes|no (default: no), requires opencv-legacy
-OPENSSL=yes|no (default: no), creates non-redistributable binary
-OPUS=yes|no (default: no), requires opus
-RTMP=yes|no (default: no), requires rtmpdump
-RUBBERBAND=yes|no (default: no), requires rubberband
-SCHROEDINGER=yes|no (default: no), requires schroedinger
-SNAPPY=yes|no (default: no), requires snappy
-SPEEX=yes|no (default: no), requires speex
-TESSERACT=yes|no (default: no), requires tesseract
-TWOLAME=yes|no (default: no), requires twolame
-VIDSTAB=yes|no (default: no), requires vid.stab
-WEBP=yes|no (default: no), requires libwebp
-X264=yes|no (default: no), requires x264
-X265=yes|no (default: no), requires x265
-XVID=yes|no (default: no), requires xvidcore
-ZMQ=yes|no (default: no), requires zeromq
-ZVBI=yes|no (default: no), requires zvbi
-
-Additional optional (autodetected) dependencies are jack-audio-connection-kit and
-SDL2. The latter is needed for building ffplay.
-
-Further, there are some more features with dependencies already available
-in core Slackware. These are enabled by default, but can be disabled similar
-to the other switches above:
-CACA=yes|no (default: yes)
-FONTCONFIG=yes|no (default: yes)
-FREETYPE=yes|no (default: yes)
-FRIBIDI=yes|no (default: yes)
-GNUTLS=yes|no (default: yes)
-JP2=yes|no (default: yes)
-LIBCDIO=yes|no (default: yes)
-LIBSSH=yes|no (default: yes)
-OPENGL=yes|no (default: yes)
-PULSEAUDIO=yes|no (default: yes)
-SAMBA=yes|no (default: yes)
-THEORA=yes|no (default: yes)
-V4L2=yes|no (default: yes)
-VORBIS=yes|no (default: yes)
-VPX=yes|no (default: yes)
-WAVPACK=yes|no (default: yes)
-X11GRAB=yes|no (default: yes)
diff --git a/multimedia/ffmpeg/ffmpeg-3.2.4-libfdk_aac-2.0.0.patch b/multimedia/ffmpeg/ffmpeg-3.2.4-libfdk_aac-2.0.0.patch
deleted file mode 100644
index 03d831d72d..0000000000
--- a/multimedia/ffmpeg/ffmpeg-3.2.4-libfdk_aac-2.0.0.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- libavcodec/libfdk-aacenc.c.orig 2017-02-10 23:25:26.000000000 +1000
-+++ libavcodec/libfdk-aacenc.c 2018-12-10 07:59:22.515000000 +1000
-@@ -286,7 +286,7 @@
- }
-
- avctx->frame_size = info.frameLength;
-- avctx->initial_padding = info.encoderDelay;
-+ avctx->initial_padding = info.nDelay;
- ff_af_queue_init(avctx, &s->afq);
-
- if (avctx->flags & AV_CODEC_FLAG_GLOBAL_HEADER) {
diff --git a/multimedia/ffmpeg/ffmpeg-3.2.4-openjpeg2.3.patch b/multimedia/ffmpeg/ffmpeg-3.2.4-openjpeg2.3.patch
deleted file mode 100644
index 65e17d4449..0000000000
--- a/multimedia/ffmpeg/ffmpeg-3.2.4-openjpeg2.3.patch
+++ /dev/null
@@ -1,102 +0,0 @@
-diff -Naur ffmpeg-3.2.4.orig/configure ffmpeg-3.2.4/configure
---- ffmpeg-3.2.4.orig/configure 2017-02-10 14:25:25.000000000 +0100
-+++ ffmpeg-3.2.4/configure 2017-10-12 08:36:03.395867915 +0200
-@@ -1831,6 +1831,8 @@
- machine_ioctl_meteor_h
- malloc_h
- opencv2_core_core_c_h
-+ openjpeg_2_3_openjpeg_h
-+ openjpeg_2_2_openjpeg_h
- openjpeg_2_1_openjpeg_h
- openjpeg_2_0_openjpeg_h
- openjpeg_1_5_openjpeg_h
-@@ -5721,7 +5723,11 @@
- require opencv opencv2/core/core_c.h cvCreateImageHeader -lopencv_core -lopencv_imgproc; } ||
- require_pkg_config opencv opencv/cxcore.h cvCreateImageHeader; }
- enabled libopenh264 && require_pkg_config openh264 wels/codec_api.h WelsGetCodecVersion
--enabled libopenjpeg && { { check_lib2 openjpeg-2.1/openjpeg.h opj_version -lopenjp2 -DOPJ_STATIC && add_cppflags -DOPJ_STATIC; } ||
-+enabled libopenjpeg && { { check_lib2 openjpeg-2.3/openjpeg.h opj_version -lopenjp2 -DOPJ_STATIC && add_cppflags -DOPJ_STATIC; } ||
-+ check_lib2 openjpeg-2.3/openjpeg.h opj_version -lopenjp2 ||
-+ { check_lib2 openjpeg-2.2/openjpeg.h opj_version -lopenjp2 -DOPJ_STATIC && add_cppflags -DOPJ_STATIC; } ||
-+ check_lib2 openjpeg-2.2/openjpeg.h opj_version -lopenjp2 ||
-+ { check_lib2 openjpeg-2.1/openjpeg.h opj_version -lopenjp2 -DOPJ_STATIC && add_cppflags -DOPJ_STATIC; } ||
- check_lib2 openjpeg-2.1/openjpeg.h opj_version -lopenjp2 ||
- { check_lib2 openjpeg-2.0/openjpeg.h opj_version -lopenjp2 -DOPJ_STATIC && add_cppflags -DOPJ_STATIC; } ||
- { check_lib2 openjpeg-1.5/openjpeg.h opj_version -lopenjpeg -DOPJ_STATIC && add_cppflags -DOPJ_STATIC; } ||
-diff -Naur ffmpeg-3.2.4.orig/libavcodec/libopenjpegdec.c ffmpeg-3.2.4/libavcodec/libopenjpegdec.c
---- ffmpeg-3.2.4.orig/libavcodec/libopenjpegdec.c 2017-02-10 14:25:26.000000000 +0100
-+++ ffmpeg-3.2.4/libavcodec/libopenjpegdec.c 2017-10-12 08:38:20.676315554 +0200
-@@ -34,7 +34,11 @@
- #include "internal.h"
- #include "thread.h"
-
--#if HAVE_OPENJPEG_2_1_OPENJPEG_H
-+#if HAVE_OPENJPEG_2_3_OPENJPEG_H
-+# include <openjpeg-2.3/openjpeg.h>
-+#elif HAVE_OPENJPEG_2_2_OPENJPEG_H
-+# include <openjpeg-2.2/openjpeg.h>
-+#elif HAVE_OPENJPEG_2_1_OPENJPEG_H
- # include <openjpeg-2.1/openjpeg.h>
- #elif HAVE_OPENJPEG_2_0_OPENJPEG_H
- # include <openjpeg-2.0/openjpeg.h>
-@@ -44,7 +48,7 @@
- # include <openjpeg.h>
- #endif
-
--#if HAVE_OPENJPEG_2_1_OPENJPEG_H || HAVE_OPENJPEG_2_0_OPENJPEG_H
-+#if HAVE_OPENJPEG_2_3_OPENJPEG_H || HAVE_OPENJPEG_2_2_OPENJPEG_H || HAVE_OPENJPEG_2_1_OPENJPEG_H || HAVE_OPENJPEG_2_0_OPENJPEG_H
- # define OPENJPEG_MAJOR_VERSION 2
- # define OPJ(x) OPJ_##x
- #else
-@@ -429,7 +433,7 @@
- opj_stream_set_read_function(stream, stream_read);
- opj_stream_set_skip_function(stream, stream_skip);
- opj_stream_set_seek_function(stream, stream_seek);
--#if HAVE_OPENJPEG_2_1_OPENJPEG_H
-+#if HAVE_OPENJPEG_2_3_OPENJPEG_H || HAVE_OPENJPEG_2_2_OPENJPEG_H || HAVE_OPENJPEG_2_1_OPENJPEG_H
- opj_stream_set_user_data(stream, &reader, NULL);
- #elif HAVE_OPENJPEG_2_0_OPENJPEG_H
- opj_stream_set_user_data(stream, &reader);
-diff -Naur ffmpeg-3.2.4.orig/libavcodec/libopenjpegenc.c ffmpeg-3.2.4/libavcodec/libopenjpegenc.c
---- ffmpeg-3.2.4.orig/libavcodec/libopenjpegenc.c 2017-02-10 14:25:26.000000000 +0100
-+++ ffmpeg-3.2.4/libavcodec/libopenjpegenc.c 2017-10-12 08:40:43.411456456 +0200
-@@ -32,7 +32,11 @@
- #include "avcodec.h"
- #include "internal.h"
-
--#if HAVE_OPENJPEG_2_1_OPENJPEG_H
-+#if HAVE_OPENJPEG_2_3_OPENJPEG_H
-+# include <openjpeg-2.3/openjpeg.h>
-+#elif HAVE_OPENJPEG_2_2_OPENJPEG_H
-+# include <openjpeg-2.2/openjpeg.h>
-+#elif HAVE_OPENJPEG_2_1_OPENJPEG_H
- # include <openjpeg-2.1/openjpeg.h>
- #elif HAVE_OPENJPEG_2_0_OPENJPEG_H
- # include <openjpeg-2.0/openjpeg.h>
-@@ -42,7 +46,7 @@
- # include <openjpeg.h>
- #endif
-
--#if HAVE_OPENJPEG_2_1_OPENJPEG_H || HAVE_OPENJPEG_2_0_OPENJPEG_H
-+#if HAVE_OPENJPEG_2_3_OPENJPEG_H || HAVE_OPENJPEG_2_2_OPENJPEG_H || HAVE_OPENJPEG_2_1_OPENJPEG_H || HAVE_OPENJPEG_2_0_OPENJPEG_H
- # define OPENJPEG_MAJOR_VERSION 2
- # define OPJ(x) OPJ_##x
- #else
-@@ -306,7 +310,7 @@
-
- opj_set_default_encoder_parameters(&ctx->enc_params);
-
--#if HAVE_OPENJPEG_2_1_OPENJPEG_H
-+#if HAVE_OPENJPEG_2_3_OPENJPEG_H || HAVE_OPENJPEG_2_2_OPENJPEG_H || HAVE_OPENJPEG_2_1_OPENJPEG_H
- switch (ctx->cinema_mode) {
- case OPJ_CINEMA2K_24:
- ctx->enc_params.rsiz = OPJ_PROFILE_CINEMA_2K;
-@@ -771,7 +775,7 @@
- opj_stream_set_write_function(stream, stream_write);
- opj_stream_set_skip_function(stream, stream_skip);
- opj_stream_set_seek_function(stream, stream_seek);
--#if HAVE_OPENJPEG_2_1_OPENJPEG_H
-+#if HAVE_OPENJPEG_2_3_OPENJPEG_H || HAVE_OPENJPEG_2_2_OPENJPEG_H || HAVE_OPENJPEG_2_1_OPENJPEG_H
- opj_stream_set_user_data(stream, &writer, NULL);
- #elif HAVE_OPENJPEG_2_0_OPENJPEG_H
- opj_stream_set_user_data(stream, &writer);
diff --git a/multimedia/ffmpeg/ffmpeg.SlackBuild b/multimedia/ffmpeg/ffmpeg.SlackBuild
deleted file mode 100644
index bba18397a9..0000000000
--- a/multimedia/ffmpeg/ffmpeg.SlackBuild
+++ /dev/null
@@ -1,261 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for ffmpeg
-
-# Copyright 2010-2017 Heinz Wiesinger, Amsterdam, The Netherlands
-# Copyright 2017 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.
-
-# Originally written by core (eroc@linuxmail.org)
-# Modified by Robby Workman <rworkman@slackbuilds.org>
-
-PRGNAM=ffmpeg
-VERSION=${VERSION:-3.2.4}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i486 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-# You can enable a lot of optional (not-autodetected) features by
-# passing variables to the script (VAR=yes/no ./ffmpeg.SlackBuild).
-# Unfortunately ffmpeg's configure doesn't support --enable-feature=yes
-# syntax, so we have to do it the complicated way :/
-# Additional optional (autodetected) dependencies are:
-# - jack-audio-connection-kit
-# - libva
-# - libvdpau
-# - libX11
-# - libxcb
-# - sdl2
-# - xz
-# - zlib
-
-mp3lame="" ; [ "${LAME:-no}" != "no" ] && mp3lame="--enable-libmp3lame"
-libx264="" ; [ "${X264:-no}" != "no" ] && libx264="--enable-libx264"
-libcelt="" ; [ "${CELT:-no}" != "no" ] && libcelt="--enable-libcelt"
-libdc1394="" ; [ "${DC1394:-no}" != "no" ] && libdc1394="--enable-libdc1394"
-libfrei0r="" ; [ "${FREI0R:-no}" != "no" ] && libfrei0r="--enable-frei0r"
-libgsm="" ; [ "${GSM:-no}" != "no" ] && libgsm="--enable-libgsm"
-librtmp="" ; [ "${RTMP:-no}" != "no" ] && librtmp="--enable-librtmp"
-dirac_fast="" ; [ "${SCHROEDINGER:-no}" != "no" ] && dirac_fast="--enable-libschroedinger"
-libspeex="" ; [ "${SPEEX:-no}" != "no" ] && libspeex="--enable-libspeex"
-libxvid="" ; [ "${XVID:-no}" != "no" ] && libxvid="--enable-libxvid"
-libbluray="" ; [ "${BLURAY:-no}" != "no" ] && libbluray="--enable-libbluray"
-libass="" ; [ "${ASS:-no}" != "no" ] && libass="--enable-libass"
-libopenal="" ; [ "${OPENAL:-no}" != "no" ] && libopenal="--enable-openal"
-libiec61883=""; [ "${IEC61883:-no}" != "no" ] && libiec61883="--enable-libiec61883"
-libilbc="" ; [ "${ILBC:-no}" != "no" ] && libilbc="--enable-libilbc"
-libmodplug="" ; [ "${MODPLUG:-no}" != "no" ] && libmodplug="--enable-libmodplug"
-libopus="" ; [ "${OPUS:-no}" != "no" ] && libopus="--enable-libopus"
-libtwolame="" ; [ "${TWOLAME:-no}" != "no" ] && libtwolame="--enable-libtwolame"
-ladspa="" ; [ "${LADSPA:-no}" != "no" ] && ladspa="--enable-ladspa"
-libflite="" ; [ "${FLITE:-no}" != "no" ] && libflite="--enable-libflite"
-libvidstab="" ; [ "${VIDSTAB:-no}" != "no" ] && libvidstab="--enable-libvidstab"
-libx265="" ; [ "${X265:-no}" != "no" ] && libx265="--enable-libx265"
-libzvbi="" ; [ "${ZVBI:-no}" != "no" ] && libzvbi="--enable-libzvbi"
-libopencv="" ; [ "${OPENCV:-no}" != "no" ] && libopencv="--enable-libopencv"
-libgme="" ; [ "${GME:-no}" != "no" ] && libgme="--enable-libgme"
-libsnappy="" ; [ "${SNAPPY:-no}" != "no" ] && libsnappy="--enable-libsnappy"
-libwebp="" ; [ "${WEBP:-no}" != "no" ] && libwebp="--enable-libwebp"
-libzmq="" ; [ "${ZMQ:-no}" != "no" ] && libzmq="--enable-libzmq"
-libbs2b="" ; [ "${BS2B:-no}" != "no" ] && libbs2b="--enable-libbs2b"
-libebur128="" ; [ "${EBUR128:-no}" != "no" ] && libebur128="--enable-libebur128"
-rubberband="" ; [ "${RUBBERBAND:-no}" != "no" ] && rubberband="--enable-librubberband"
-tesseract="" ; [ "${TESSERACT:-no}" != "no" ] && tesseract="--enable-libtesseract"
-netcdf="" ; [ "${NETCDF:-no}" != "no" ] && netcdf="--enable-netcdf"
-chromaprint="" ; [ "${CHROMAPRINT:-no}" != "no" ] && chromaprint="--enable-chromaprint"
-opencore_amr="" ; [ "${OPENCORE:-no}" != "no" ] && \
- opencore_amr="--enable-libopencore-amrnb --enable-libopencore-amrwb"
-fdk="" ; [ "${FDK_AAC:-no}" != "no" ] && \
- { fdk="--enable-libfdk-aac"; non_free="--enable-nonfree" ; }
-ssl="" ; [ "${OPENSSL:-no}" != "no" ] && \
- { ssl="--enable-openssl" ; non_free="--enable-nonfree" ; }
-decklink="" ; [ "${DECKLINK:-no}" != "no" ] && \
- { decklink="--enable-decklink" ; \
- SLKCFLAGS="$SLKCFLAGS -I/usr/include/decklink" ; }
-
-# Default enabled features:
-#opencl="" ; [ "${OPENCL:-yes}" != "no" ] && opencl="--enable-opencl"
-fontconfig="" ; [ "${FONTCONFIG:-yes}" != "no" ] && fontconfig="--enable-libfontconfig"
-freetype="" ; [ "${FREETYPE:-yes}" != "no" ] && freetype="--enable-libfreetype"
-fribidi="" ; [ "${FRIBIDI:-yes}" != "no" ] && fribidi="--enable-libfribidi"
-gnutls="" ; [ "${GNUTLS:-yes}" != "no" ] && gnutls="--enable-gnutls"
-libcaca="" ; [ "${CACA:-yes}" != "no" ] && libcaca="--enable-libcaca"
-libcdio="" ; [ "${LIBCDIO:-yes}" != "no" ] && libcdio="--enable-libcdio"
-libssh="" ; [ "${LIBSSH:-yes}" != "no" ] && libssh="--enable-libssh"
-libtheora="" ; [ "${THEORA:-yes}" != "no" ] && libtheora="--enable-libtheora"
-libv4l2="" ; [ "${V4L2:-yes}" != "no" ] && libv4l2="--enable-libv4l2"
-libvorbis="" ; [ "${VORBIS:-yes}" != "no" ] && libvorbis="--enable-libvorbis"
-libvpx="" ; [ "${VPX:-yes}" != "no" ] && libvpx="--enable-libvpx"
-opengl="" ; [ "${OPENGL:-yes}" != "no" ] && opengl="--enable-opengl"
-openjpeg="" ; [ "${JP2:-yes}" != "no" ] && openjpeg="--enable-libopenjpeg"
-pulse="" ; [ "${PULSEAUDIO:-yes}" != "no" ] && pulse="--enable-libpulse"
-samba="" ; [ "${SAMBA:-yes}" != "no" ] && samba="--enable-libsmbclient"
-wavpack="" ; [ "${WAVPACK:-yes}" != "no" ] && wavpack="--enable-libwavpack"
-x11grab="" ; [ "${X11GRAB:-yes}" != "no" ] && x11grab="--enable-x11grab"
-
-# Disable patent encumbered features:
-aac="" ; [ "${AAC:-yes}" != "yes" ] && aac="--disable-encoder=aac"
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-# Patch for openjpeg-2.3.0
-patch -p1 < $CWD/ffmpeg-3.2.4-openjpeg2.3.patch
-
-#patch for libfdk-aac 2.0.0
-patch -p0 < $CWD/ffmpeg-3.2.4-libfdk_aac-2.0.0.patch
-
-# Fix linking with flite:
-sed -i "s| -lflite\"| -lflite -lm -lasound\"|" \
- ./configure
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --shlibdir=/usr/lib${LIBDIRSUFFIX} \
- --docdir=/usr/doc/$PRGNAM-$VERSION/html \
- --mandir=/usr/man \
- --disable-debug \
- --enable-shared \
- --disable-static \
- --enable-gpl \
- --enable-version3 \
- --enable-avresample \
- --arch=$ARCH \
- $non_free \
- $aac \
- $chromaprint \
- $decklink \
- $dirac_fast \
- $fdk \
- $fontconfig \
- $freetype \
- $fribidi \
- $gnutls \
- $ladspa \
- $libass \
- $libbluray \
- $libbs2b \
- $libcaca \
- $libcdio \
- $libcelt \
- $libdc1394 \
- $libebur128 \
- $libflite \
- $libfrei0r \
- $libgme \
- $libgsm \
- $libiec61883 \
- $libilbc \
- $libmodplug \
- $libopenal \
- $libopencv \
- $libopus \
- $librtmp \
- $libsnappy \
- $libspeex \
- $libssh \
- $libtheora \
- $libtwolame \
- $libv4l2 \
- $libvidstab \
- $libvorbis \
- $libvpx \
- $libwebp \
- $libx264 \
- $libx265 \
- $libxvid \
- $libzmq \
- $libzvbi \
- $mp3lame \
- $netcdf \
- $opencore_amr \
- $opengl \
- $openjpeg \
- $pulse \
- $rubberband \
- $samba \
- $ssl \
- $tesseract \
- $wavpack \
- $x11grab
-
-make
-make install DESTDIR=$PKG
-make install-man DESTDIR=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | \
- grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/txt
-cp -a Changelog COPYING* CREDITS INSTALL* LICENSE* MAINTAINERS README* \
- RELEASE VERSION \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a doc/*.txt $PKG/usr/doc/$PRGNAM-$VERSION/txt/
-find . -name "RELEASE_NOTES" -exec cp -a {} $PKG/usr/doc/$PRGNAM-$VERSION/ \;
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/multimedia/ffmpeg/ffmpeg.info b/multimedia/ffmpeg/ffmpeg.info
deleted file mode 100644
index f187f17aa0..0000000000
--- a/multimedia/ffmpeg/ffmpeg.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="ffmpeg"
-VERSION="3.2.4"
-HOMEPAGE="http://www.ffmpeg.org"
-DOWNLOAD="http://www.ffmpeg.org/releases/ffmpeg-3.2.4.tar.xz"
-MD5SUM="39fd71024ac76ba35f04397021af5606"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="%README%"
-MAINTAINER="Heinz Wiesinger"
-EMAIL="pprkut@liwjatan.at"
diff --git a/multimedia/ffmpeg/slack-desc b/multimedia/ffmpeg/slack-desc
deleted file mode 100644
index 6d47b332b4..0000000000
--- a/multimedia/ffmpeg/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-ffmpeg: ffmpeg (Software to record, convert and stream audio and video)
-ffmpeg:
-ffmpeg: FFmpeg is a complete solution to record, convert and stream audio
-ffmpeg: and video. It includes libavcodec, the leading audio/video codec
-ffmpeg: library. FFmpeg is developed under Linux, but it can compiled
-ffmpeg: under most operating systems, including Windows.
-ffmpeg:
-ffmpeg: Homepage: http://ffmpeg.mplayerhq.hu
-ffmpeg:
-ffmpeg:
-ffmpeg:
diff --git a/multimedia/ffmpeg4/ffmpeg4.SlackBuild b/multimedia/ffmpeg4/ffmpeg4.SlackBuild
index 565dc68ae9..77734df93e 100644
--- a/multimedia/ffmpeg4/ffmpeg4.SlackBuild
+++ b/multimedia/ffmpeg4/ffmpeg4.SlackBuild
@@ -98,7 +98,7 @@ enable "LIBOPUS" "no" "--enable-libopus" ""
enable "LIBPULSE" "yes" "--enable-libpulse" ""
enable "LIBRTMP" "no" "--enable-librtmp" ""
enable "LIBRUBBERBAND" "no" "--enable-librubberband" ""
-enable "LIBSMBCLIENT" "yes" "--enable-libsmbclient" ""
+enable "LIBSMBCLIENT" "no" "--enable-libsmbclient" ""
enable "LIBSNAPPY" "no" "--enable-libsnappy" ""
enable "LIBSPEEX" "no" "--enable-libspeex" ""
enable "LIBSSH" "yes" "--enable-libssh" ""
diff --git a/multimedia/gnash/gnash.SlackBuild b/multimedia/gnash/gnash.SlackBuild
index 99a4c07c84..af273fa898 100644
--- a/multimedia/gnash/gnash.SlackBuild
+++ b/multimedia/gnash/gnash.SlackBuild
@@ -23,8 +23,8 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=gnash
-VERSION=${VERSION:-0.8.10}
-BUILD=${BUILD:-7}
+VERSION=${VERSION:-20170308_8a11e60}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
@@ -78,33 +78,17 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
+tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
cd $PRGNAM-$VERSION
chown -R root:root .
-chmod -R u+w,go-w,a+rX-st .
-
-# Fix compilation with GCC 4.7.
-patch -p1 < $CWD/patch/gcc47.patch
-
-# Fix a boost linking error, paths for kde plugin, and a cve patch.
-# Ripped from gentoo
-patch -p1 < $CWD/patch/gnash-0.8.10-boost-1.50.patch
-patch -p1 < $CWD/patch/gnash-0.8.10-klash.patch
-patch -p1 < $CWD/patch/gnash-0.8.10-kde4-libdir.patch
-patch -p1 < $CWD/patch/gnash-0.8.10-cve-2012-1175.patch
-
-# Fix building with giflib-5.0
-# Also ripped from gentoo :-)
-patch -p1 < $CWD/patch/58dcdd9338d965e54c8f03ce3d2757388d82b7a3.patch
-patch -p1 < $CWD/patch/cc22f2d0597f3a9547980f4786d918f8b5635472.patch
-
-# Fix build with new Boost
-# Taken from ARCH
-patch -p1 < $CWD/patch/gnash-boost.patch
-
-# The FFmpeg engine doesn't compile with FFmpeg 0.11.1. Patches welcome.
-# In the meantime, set --enable-media=gst to avoid autodetecting FFmpeg.
-autoreconf -vif
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+./autogen.sh
+
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
@@ -115,14 +99,14 @@ autoreconf -vif
--docdir=/usr/doc/$PRGNAM-$VERSION \
--build=$ARCH-slackware-linux \
--disable-dependency-tracking \
- --enable-media=gst \
--enable-python \
--enable-ssh \
--enable-ssl \
--enable-write \
--without-gconf \
--with-plugins-install=system \
- --with-speexdsp-incl=/usr/include/speex \
+ --with-speexdsp-incl=/usr/include \
+ --disable-npapi \
$KLASH_OPT \
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
diff --git a/multimedia/gnash/gnash.info b/multimedia/gnash/gnash.info
index 012dd88c5f..a9525da636 100644
--- a/multimedia/gnash/gnash.info
+++ b/multimedia/gnash/gnash.info
@@ -1,10 +1,10 @@
PRGNAM="gnash"
-VERSION="0.8.10"
+VERSION="20170308_8a11e60"
HOMEPAGE="https://www.gnu.org/software/gnash/"
-DOWNLOAD="ftp://ftp.gnu.org/pub/gnu/gnash/0.8.10/gnash-0.8.10.tar.bz2"
-MD5SUM="63e9f79c41d93d48c5a2fa94856548c4"
+DOWNLOAD="http://ponce.cc/slackware/sources/repo/gnash-20170308_8a11e60.tar.xz"
+MD5SUM="be7f2af072481869395d9f7f8c57cce1"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="agg xulrunner"
+REQUIRES="agg"
MAINTAINER="Kyle Guinn"
EMAIL="elyk03@gmail.com"
diff --git a/multimedia/gnash/patch/58dcdd9338d965e54c8f03ce3d2757388d82b7a3.patch b/multimedia/gnash/patch/58dcdd9338d965e54c8f03ce3d2757388d82b7a3.patch
deleted file mode 100644
index b3242ce0d3..0000000000
--- a/multimedia/gnash/patch/58dcdd9338d965e54c8f03ce3d2757388d82b7a3.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 58dcdd9338d965e54c8f03ce3d2757388d82b7a3 Mon Sep 17 00:00:00 2001
-From: gustavo <gbuschle@hotmail.com>
-Date: Thu, 11 Sep 2014 14:12:17 +0000
-Subject: Add support for giflib 5.1
-
----
-diff --git a/libbase/GnashImageGif.cpp b/libbase/GnashImageGif.cpp
-index 84b09ce..2ae5ddb 100644
---- a/libbase/GnashImageGif.cpp
-+++ b/libbase/GnashImageGif.cpp
-@@ -120,7 +120,11 @@ GifInput::GifInput(std::shared_ptr<IOChannel> in)
- GifInput::~GifInput()
- {
- // Clean up allocated data.
-- DGifCloseFile(_gif);
-+#if GIFLIB_MAJOR==5 && GIFLIB_MINOR==1
-+ DGifCloseFile(_gif, 0);
-+#else
-+ DGifCloseFile(_gif);
-+#endif
- }
-
- size_t
---
-cgit v0.9.0.2
diff --git a/multimedia/gnash/patch/cc22f2d0597f3a9547980f4786d918f8b5635472.patch b/multimedia/gnash/patch/cc22f2d0597f3a9547980f4786d918f8b5635472.patch
deleted file mode 100644
index 6e90737d51..0000000000
--- a/multimedia/gnash/patch/cc22f2d0597f3a9547980f4786d918f8b5635472.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From cc22f2d0597f3a9547980f4786d918f8b5635472 Mon Sep 17 00:00:00 2001
-From: OBATA Akio <obata@lins.jp>
-Date: Mon, 15 Jul 2013 07:16:39 +0000
-Subject: Add support fir GIFLIB-5.0 (bug #39482)
-
-Signed-off-by: Sandro Santilli <strk@keybit.net>
----
-diff --git a/libbase/GnashImageGif.cpp b/libbase/GnashImageGif.cpp
-index eeba4b7..26865c1 100644
---- a/libbase/GnashImageGif.cpp
-+++ b/libbase/GnashImageGif.cpp
-@@ -269,7 +269,17 @@ GifInput::processRecord(GifRecordType record)
- void
- GifInput::read()
- {
-+#if GIFLIB_MAJOR >= 5
-+ int errorCode;
-+ _gif = DGifOpen(_inStream.get(), &readData, &errorCode);
-+#else
- _gif = DGifOpen(_inStream.get(), &readData);
-+#endif
-+
-+ if ( ! _gif ) {
-+ // TODO: decode errorCode if available
-+ throw ParserException("Could not open input GIF stream");
-+ }
-
- GifRecordType record;
-
---
-cgit v0.9.0.2
diff --git a/multimedia/gnash/patch/gcc47.patch b/multimedia/gnash/patch/gcc47.patch
deleted file mode 100644
index 7886b097c9..0000000000
--- a/multimedia/gnash/patch/gcc47.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-diff --git a/plugin/klash4/klash_part.cpp b/plugin/klash4/klash_part.cpp
---- a/plugin/klash4/klash_part.cpp
-+++ b/plugin/klash4/klash_part.cpp
-@@ -27,6 +27,7 @@
- #include <QByteArray>
- #include <QMenu>
- #include <QTimer>
-+#include <unistd.h>
-
- #include <klibloader.h>
- #include <kdebug.h>
diff --git a/multimedia/gnash/patch/gnash-0.8.10-boost-1.50.patch b/multimedia/gnash/patch/gnash-0.8.10-boost-1.50.patch
deleted file mode 100644
index 23282d1e89..0000000000
--- a/multimedia/gnash/patch/gnash-0.8.10-boost-1.50.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-diff -ur a/macros/boost.m4 b/macros/boost.m4
---- a/macros/boost.m4 2012-09-03 17:11:43.000000000 +0200
-+++ b/macros/boost.m4 2012-10-16 01:58:28.000000000 +0200
-@@ -37,7 +37,7 @@
- boost_headers="detail/lightweight_mutex.hpp thread/thread.hpp multi_index_container.hpp multi_index/key_extractors.hpp thread/mutex.hpp program_options/options_description.hpp iostreams/stream.hpp"
- dnl this is a list of *required* libraries. If any of these are missing, this
- dnl test will return a failure, and Gnash won't build.
-- boost_libs="thread program_options iostreams"
-+ boost_libs="thread program_options iostreams system"
-
- dnl this is a list of *recommended* libraries. If any of these are missing, this
- dnl test will return a warning, and Gnash will build, but testing won't work.
-diff -ur a/plugin/npapi/Makefile.am b/plugin/npapi/Makefile.am
---- a/plugin/npapi/Makefile.am 2012-09-03 17:11:43.000000000 +0200
-+++ b/plugin/npapi/Makefile.am 2012-10-16 01:58:57.000000000 +0200
-@@ -78,7 +78,7 @@
-
- libgnashplugin_la_LIBADD = \
- $(GLIB_LIBS) \
-- -lboost_iostreams \
-+ $(BOOST_LIBS) \
- $(NULL)
-
- # Scriptable plugin support
diff --git a/multimedia/gnash/patch/gnash-0.8.10-cve-2012-1175.patch b/multimedia/gnash/patch/gnash-0.8.10-cve-2012-1175.patch
deleted file mode 100644
index 9a218d9216..0000000000
--- a/multimedia/gnash/patch/gnash-0.8.10-cve-2012-1175.patch
+++ /dev/null
@@ -1,63 +0,0 @@
-From bb4dc77eecb6ed1b967e3ecbce3dac6c5e6f1527 Mon Sep 17 00:00:00 2001
-From: Benjamin Wolsey <bwy@benjaminwolsey.de>
-Date: Sat, 10 Mar 2012 14:52:50 +0000
-Subject: Fix crash in GnashImage.cpp
-
----
-diff --git a/libbase/GnashImage.cpp b/libbase/GnashImage.cpp
-index 11c6956..03a6939 100644
---- a/libbase/GnashImage.cpp
-+++ b/libbase/GnashImage.cpp
-@@ -26,6 +26,7 @@
- #include <boost/scoped_array.hpp>
- #include <boost/shared_ptr.hpp>
- #include <algorithm>
-+#include <cassert>
-
- #ifdef USE_PNG
- # include "GnashImagePng.h"
-@@ -44,6 +45,21 @@ namespace image {
-
- namespace {
- void processAlpha(GnashImage::iterator imageData, size_t pixels);
-+ bool checkValidSize(size_t width, size_t height, size_t channels) {
-+
-+ if (width == 0 || height == 0) return false;
-+
-+ assert(channels > 0);
-+
-+ boost::uint32_t maxSize = std::numeric_limits<boost::int32_t>::max();
-+ if (width >= maxSize || height >= maxSize) return false;
-+
-+ maxSize /= channels;
-+ maxSize /= width;
-+ maxSize /= height;
-+
-+ return maxSize > 0;
-+ }
- }
-
- GnashImage::GnashImage(iterator data, size_t width, size_t height,
-@@ -55,6 +71,8 @@ GnashImage::GnashImage(iterator data, size_t width, size_t height,
- _height(height),
- _data(data)
- {
-+ // Callers should check dimensions
-+ assert(checkValidSize(_width, _height, channels()));
- }
-
- /// Create an image allocating a buffer of height*pitch bytes
-@@ -66,8 +84,9 @@ GnashImage::GnashImage(size_t width, size_t height, ImageType type,
- _width(width),
- _height(height)
- {
-- const size_t max = std::numeric_limits<boost::int32_t>::max();
-- if (size() > max) {
-+ // Constructed from external input, so restrict dimensions to avoid
-+ // overflow in size calculations
-+ if (!checkValidSize(_width, _height, channels())) {
- throw std::bad_alloc();
- }
- _data.reset(new value_type[size()]);
---
-cgit v0.9.0.2
diff --git a/multimedia/gnash/patch/gnash-0.8.10-kde4-libdir.patch b/multimedia/gnash/patch/gnash-0.8.10-kde4-libdir.patch
deleted file mode 100644
index b3279441d2..0000000000
--- a/multimedia/gnash/patch/gnash-0.8.10-kde4-libdir.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -ur a/macros/kde4.m4 b/macros/kde4.m4
---- a/macros/kde4.m4 2011-02-26 19:11:08.000000000 +0100
-+++ b/macros/kde4.m4 2011-11-25 18:09:25.000000000 +0100
-@@ -198,7 +198,7 @@
- if test -d ${KDE4_PREFIX}/lib64 -a -f /etc/redhat-release; then
- KDE4_PLUGINDIR="${KDE4_PREFIX}/lib64/kde4"
- else
-- KDE4_PLUGINDIR="${KDE4_PREFIX}/lib/kde4"
-+ KDE4_PLUGINDIR="${KDE4_PREFIX}/${acl_libdirstem}/kde4"
- fi
- fi
- if test x"${with_kde4_servicesdir}" != x ; then
diff --git a/multimedia/gnash/patch/gnash-0.8.10-klash.patch b/multimedia/gnash/patch/gnash-0.8.10-klash.patch
deleted file mode 100644
index e6afec04d2..0000000000
--- a/multimedia/gnash/patch/gnash-0.8.10-klash.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -ur a/macros/kde4.m4 b/macros/kde4.m4
---- a/macros/kde4.m4 2011-02-26 19:11:08.000000000 +0100
-+++ b/macros/kde4.m4 2011-03-21 00:04:38.845997945 +0100
-@@ -210,7 +210,7 @@
- KDE4_CONFIGDIR="${KDE4_PREFIX}/share/kde4/config"
- fi
- if test x"${KDE4_APPSDATADIR}" = x ; then
-- KDE4_APPSDATADIR="${KDE4_PREFIX}/share/kde4/apps/klash"
-+ KDE4_APPSDATADIR="${KDE4_PREFIX}/share/apps/klash"
- fi
-
- if test x"${ac_cv_path_kde4_incl}" != x ; then
diff --git a/multimedia/gnash/patch/gnash-boost.patch b/multimedia/gnash/patch/gnash-boost.patch
deleted file mode 100644
index 55208f1ae3..0000000000
--- a/multimedia/gnash/patch/gnash-boost.patch
+++ /dev/null
@@ -1,14 +0,0 @@
---- gnash-0.8.10/libbase/accumulator.h.orig 2016-02-08 02:56:17.059694787 +0700
-+++ gnash-0.8.10/libbase/accumulator.h 2016-02-08 02:57:58.375615249 +0700
-@@ -61,6 +61,11 @@
- virtual unsigned min_tokens() const { return 0; }
- virtual unsigned max_tokens() const { return 0; }
-
-+ #if BOOST_VERSION >= 105900
-+ /// There are no tokens, so this is indifferent.
-+ virtual bool adjacent_tokens_only() const { return false; }
-+ #endif
-+
- /// Accumulating from different sources is silly.
- virtual bool is_composing() const { return false; }
-
diff --git a/multimedia/gpac/gpac.SlackBuild b/multimedia/gpac/gpac.SlackBuild
index 396ceae938..34f60d4754 100644
--- a/multimedia/gpac/gpac.SlackBuild
+++ b/multimedia/gpac/gpac.SlackBuild
@@ -88,6 +88,9 @@ find -L . \
# configure doesn't have --libdir option.
sed -i "s/^libdir=\".*\"$/libdir=\"lib$LIBDIRSUFFIX\"/" configure
+# remove this to let it build against openssl-1.1.x
+sed -i "/SSLeay_add_all_algorithms/d" src/utils/downloader.c
+
./configure \
--prefix=/usr \
--mandir=/usr/man \
diff --git a/multimedia/gst-libav/README b/multimedia/gst-libav/README
deleted file mode 100644
index eca4522c85..0000000000
--- a/multimedia/gst-libav/README
+++ /dev/null
@@ -1,2 +0,0 @@
-This module contains a GStreamer plugin for libav, as well as an
-internal copy of the libav source code.
diff --git a/multimedia/gst-libav/gst-libav.SlackBuild b/multimedia/gst-libav/gst-libav.SlackBuild
deleted file mode 100644
index ed629a2f96..0000000000
--- a/multimedia/gst-libav/gst-libav.SlackBuild
+++ /dev/null
@@ -1,96 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for gst-libav
-
-# Copyright (C) 2010 Juan Valencia <jvalenciae@gmail.com>
-# 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.
-
-PRGNAM=gst-libav
-VERSION=${VERSION:-1.6.2}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i486 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-rm -rf $TMP/$PRGNAM-$VERSION
-cd $TMP
-tar xvf $CWD/$PRGNAM-$VERSION.tar.?z*
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-CFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --build=$ARCH-slackware-linux
-
-make
-make install DESTDIR=$PKG
-
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS ChangeLog COPYING INSTALL NEWS README TODO \
- $PKG/usr/doc/$PRGNAM-$VERSION
-find $PKG/usr/doc/$PRGNAM-$VERSION -type f -exec chmod 644 {} \;
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/multimedia/gst-libav/gst-libav.info b/multimedia/gst-libav/gst-libav.info
deleted file mode 100644
index ab38270126..0000000000
--- a/multimedia/gst-libav/gst-libav.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="gst-libav"
-VERSION="1.6.2"
-HOMEPAGE="https://gstreamer.freedesktop.org/"
-DOWNLOAD="https://gstreamer.freedesktop.org/src/gst-libav/gst-libav-1.6.2.tar.xz"
-MD5SUM="09644a38827d233f53edeac815dd0ec0"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Robby Workman"
-EMAIL="rworkman@slackbuilds.org"
diff --git a/multimedia/gst-libav/slack-desc b/multimedia/gst-libav/slack-desc
deleted file mode 100644
index 352ee23dbd..0000000000
--- a/multimedia/gst-libav/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-gst-libav: gst-libav (A GStreamer libav/ffmpeg plugin)
-gst-libav:
-gst-libav: This module contains a GStreamer plugin for libav as well as an
-gst-libav: internal copy of the libav source code.
-gst-libav:
-gst-libav: http://gstreamer.freedesktop.org/
-gst-libav:
-gst-libav:
-gst-libav:
-gst-libav:
-gst-libav:
diff --git a/multimedia/gst-plugins-bad/README b/multimedia/gst-plugins-bad/README
index d71085b6fc..b9ab4588e1 100644
--- a/multimedia/gst-plugins-bad/README
+++ b/multimedia/gst-plugins-bad/README
@@ -5,6 +5,6 @@ a real live maintainer, or some actual wide use.
This optionally depends on OpenAL, TiMidity++, amrnb, amrwb, celt, faac,
faad2, flite, fluidsynth, gsm, libass, libcdaudio, libdc1394, libdca,
-libkate, liblrdf, libmimic, libmodplug, libmusicbrainz, libofa,
-libquicktime, libwebp, lv2, musepack-tools, opencv, rtmpdump,
+libfdk-aac, libkate, liblrdf, libmimic, libmodplug, libmusicbrainz,
+libofa, libquicktime, libwebp, lv2, musepack-tools, opencv, rtmpdump,
schroedinger, soundtouch, swfdec, and xvidcore.
diff --git a/multimedia/gst-plugins-bad/gst-plugins-bad.SlackBuild b/multimedia/gst-plugins-bad/gst-plugins-bad.SlackBuild
index c9cfb68a14..bd20aae95a 100644
--- a/multimedia/gst-plugins-bad/gst-plugins-bad.SlackBuild
+++ b/multimedia/gst-plugins-bad/gst-plugins-bad.SlackBuild
@@ -23,13 +23,13 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=gst-plugins-bad
-VERSION=${VERSION:-1.6.2}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-1.14.4}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -40,8 +40,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -69,8 +69,12 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+patch -p1 < $CWD/libfdk-aac-2.0.0-1.patch
+patch -p1 < $CWD/libfdk-aac-2.0.0-2.patch
+
+autoreconf -fiv
CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS -std=c++11" \
+CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
@@ -78,6 +82,9 @@ CXXFLAGS="$SLKCFLAGS -std=c++11" \
--localstatedir=/var \
--mandir=/usr/man \
--docdir=/usr/doc/$PRGNAM-$VERSION \
+ --enable-vulkan=no \
+ --disable-examples \
+ --disable-opencv \
--build=$ARCH-slackware-linux
make
diff --git a/multimedia/gst-plugins-bad/gst-plugins-bad.info b/multimedia/gst-plugins-bad/gst-plugins-bad.info
index 553c0edef7..bf31d14104 100644
--- a/multimedia/gst-plugins-bad/gst-plugins-bad.info
+++ b/multimedia/gst-plugins-bad/gst-plugins-bad.info
@@ -1,8 +1,8 @@
PRGNAM="gst-plugins-bad"
-VERSION="1.6.2"
+VERSION="1.14.4"
HOMEPAGE="https://gstreamer.freedesktop.org/"
-DOWNLOAD="https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-1.6.2.tar.xz"
-MD5SUM="7c73bec1d389f0e184ebbbbb9e9f883d"
+DOWNLOAD="https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-1.14.4.tar.xz"
+MD5SUM="5d20a91d027708abcf924f6c1279dd25"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/multimedia/gst-plugins-bad/libfdk-aac-2.0.0-1.patch b/multimedia/gst-plugins-bad/libfdk-aac-2.0.0-1.patch
new file mode 100644
index 0000000000..1d820af3b9
--- /dev/null
+++ b/multimedia/gst-plugins-bad/libfdk-aac-2.0.0-1.patch
@@ -0,0 +1,47 @@
+From 19d34f6b5e1633d5ec4bb2832c58470f0c829cab Mon Sep 17 00:00:00 2001
+From: "Jan Alexander Steffens (heftig)" <jan.steffens@gmail.com>
+Date: Wed, 5 Dec 2018 10:10:39 +0100
+Subject: [PATCH] fdkaacdec: Use WAV channel mapping instead of interleave
+ setting
+
+The latter is going away in libfdk-aac 2.0.0. Instead, MPEG-style output
+is always non-interleaved and WAV-style output is always interleaved.
+Earlier libfdk-aac also defaults interleaving accordingly.
+
+Since our reordering looks at the associated PCE indices instead of the
+actual channel order, we're agnostic to the mapping.
+
+For https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/825
+---
+ ext/fdkaac/gstfdkaacdec.c | 12 ++++--------
+ 1 file changed, 4 insertions(+), 8 deletions(-)
+
+diff --git a/ext/fdkaac/gstfdkaacdec.c b/ext/fdkaac/gstfdkaacdec.c
+index c27183752..f5136b334 100644
+--- a/ext/fdkaac/gstfdkaacdec.c
++++ b/ext/fdkaac/gstfdkaacdec.c
+@@ -151,17 +151,13 @@ gst_fdkaacdec_set_format (GstAudioDecoder * dec, GstCaps * caps)
+ gst_buffer_unref (codec_data);
+ }
+
++ /* Choose WAV channel mapping to get interleaving even with libfdk-aac 2.0.0
++ * The pChannelIndices retain the indices from the standard MPEG mapping so
++ * we're agnostic to the actual order. */
+ if ((err =
+ aacDecoder_SetParam (self->dec, AAC_PCM_OUTPUT_CHANNEL_MAPPING,
+- 0)) != AAC_DEC_OK) {
+- GST_ERROR_OBJECT (self, "Failed to set output channel mapping: %d", err);
+- return FALSE;
+- }
+-
+- if ((err =
+- aacDecoder_SetParam (self->dec, AAC_PCM_OUTPUT_INTERLEAVED,
+ 1)) != AAC_DEC_OK) {
+- GST_ERROR_OBJECT (self, "Failed to set interleaved output: %d", err);
++ GST_ERROR_OBJECT (self, "Failed to set output channel mapping: %d", err);
+ return FALSE;
+ }
+
+--
+2.18.1
+
diff --git a/multimedia/gst-plugins-bad/libfdk-aac-2.0.0-2.patch b/multimedia/gst-plugins-bad/libfdk-aac-2.0.0-2.patch
new file mode 100644
index 0000000000..1ea08f9abb
--- /dev/null
+++ b/multimedia/gst-plugins-bad/libfdk-aac-2.0.0-2.patch
@@ -0,0 +1,30 @@
+From f4fdb9770c76113f38515245fecc5f11b3ace20d Mon Sep 17 00:00:00 2001
+From: "Jan Alexander Steffens (heftig)" <jan.steffens@gmail.com>
+Date: Tue, 4 Dec 2018 17:54:42 +0100
+Subject: [PATCH] fdkaacenc: Remove MODE_2_1
+
+This is not a standard mode and no longer supported by fdk-aac 2.0.0.
+
+For https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/825
+---
+ ext/fdkaac/gstfdkaacenc.c | 4 ----
+ 1 file changed, 4 deletions(-)
+
+diff --git a/ext/fdkaac/gstfdkaacenc.c b/ext/fdkaac/gstfdkaacenc.c
+index ad2bcb492..8410e684c 100644
+--- a/ext/fdkaac/gstfdkaacenc.c
++++ b/ext/fdkaac/gstfdkaacenc.c
+@@ -71,10 +71,6 @@ static const struct
+ GST_AUDIO_CHANNEL_POSITION_FRONT_CENTER,
+ GST_AUDIO_CHANNEL_POSITION_FRONT_LEFT,
+ GST_AUDIO_CHANNEL_POSITION_FRONT_RIGHT}}, {
+- 3, MODE_2_1, {
+- GST_AUDIO_CHANNEL_POSITION_FRONT_LEFT,
+- GST_AUDIO_CHANNEL_POSITION_FRONT_RIGHT,
+- GST_AUDIO_CHANNEL_POSITION_LFE1}}, {
+ 4, MODE_1_2_1, {
+ GST_AUDIO_CHANNEL_POSITION_FRONT_CENTER,
+ GST_AUDIO_CHANNEL_POSITION_FRONT_LEFT,
+--
+2.18.1
+
diff --git a/multimedia/gst-plugins-ugly/gst-plugins-ugly.SlackBuild b/multimedia/gst-plugins-ugly/gst-plugins-ugly.SlackBuild
index a4e113d47c..e073b77750 100644
--- a/multimedia/gst-plugins-ugly/gst-plugins-ugly.SlackBuild
+++ b/multimedia/gst-plugins-ugly/gst-plugins-ugly.SlackBuild
@@ -23,13 +23,13 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=gst-plugins-ugly
-VERSION=${VERSION:-1.6.2}
+VERSION=${VERSION:-1.14.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -40,8 +40,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
diff --git a/multimedia/gst-plugins-ugly/gst-plugins-ugly.info b/multimedia/gst-plugins-ugly/gst-plugins-ugly.info
index 1fc6a4908f..870cd854ab 100644
--- a/multimedia/gst-plugins-ugly/gst-plugins-ugly.info
+++ b/multimedia/gst-plugins-ugly/gst-plugins-ugly.info
@@ -1,8 +1,8 @@
PRGNAM="gst-plugins-ugly"
-VERSION="1.6.2"
+VERSION="1.14.4"
HOMEPAGE="https://gstreamer.freedesktop.org/"
-DOWNLOAD="https://gstreamer.freedesktop.org/src/gst-plugins-ugly/gst-plugins-ugly-1.6.2.tar.xz"
-MD5SUM="0f0e30336e3155443cd5bfec5c215d56"
+DOWNLOAD="https://gstreamer.freedesktop.org/src/gst-plugins-ugly/gst-plugins-ugly-1.14.4.tar.xz"
+MD5SUM="90768a0074db071175ce980064d9a1ac"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/multimedia/gst0-plugins-bad/gst0-plugins-bad.SlackBuild b/multimedia/gst0-plugins-bad/gst0-plugins-bad.SlackBuild
index c06474d672..1083e93c41 100644
--- a/multimedia/gst0-plugins-bad/gst0-plugins-bad.SlackBuild
+++ b/multimedia/gst0-plugins-bad/gst0-plugins-bad.SlackBuild
@@ -79,6 +79,8 @@ patch -p1 < $CWD/libmodplug-include.patch
# Fix build against libvpx 1.4.0.
patch -p1 < $CWD/drop-vpx-compat-defines.patch
+CPPFLAGS="-I/usr/include/openssl-1.0" \
+LIBS="-L/usr/lib$LIBDIRSUFFIX/openssl-1.0" \
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
diff --git a/multimedia/k9copy-reloaded/k9copy-reloaded.SlackBuild b/multimedia/k9copy-reloaded/k9copy-reloaded.SlackBuild
index a6c97ac873..ed7c4cc6fd 100644
--- a/multimedia/k9copy-reloaded/k9copy-reloaded.SlackBuild
+++ b/multimedia/k9copy-reloaded/k9copy-reloaded.SlackBuild
@@ -129,6 +129,7 @@ find -L . \
# patches from upstream and community:
patch -p1 < $CWD/patches/k9copy-mimetype.patch
patch -p0 < $CWD/patches/k9copy-tempdir.patch
+patch -p1 < $CWD/patches/ffmpeg3andgcc6.patch
# Needed to link with the ffmpeg static libs we just built:
export PKG_CONFIG_PATH="${FFMPEGDIR}/usr/lib${LIBDIRSUFFIX}/pkgconfig"
diff --git a/multimedia/k9copy-reloaded/patches/ffmpeg3andgcc6.patch b/multimedia/k9copy-reloaded/patches/ffmpeg3andgcc6.patch
new file mode 100644
index 0000000000..68218a20a3
--- /dev/null
+++ b/multimedia/k9copy-reloaded/patches/ffmpeg3andgcc6.patch
@@ -0,0 +1,74 @@
+--- k9copy/src/core/k9tools.cpp.orig 2016-07-04 03:37:07.537698816 +0100
++++ k9copy/src/core/k9tools.cpp 2016-07-04 03:37:15.044797764 +0100
+@@ -88,7 +88,7 @@ bool k9Tools::checkProgram(QString _prog
+ #if QT_VERSION >= 0x050000
+ bool res=QStandardPaths::findExecutable( _progName) !=NULL ;
+ #else // Qt4 Code
+- bool res= KStandardDirs::findExe( _progName,NULL,false) !=NULL ;
++ bool res= KStandardDirs::findExe( _progName,NULL,0) !=NULL ;
+ #endif
+ if (_msg && !res)
+ k9Dialogs::error(i18n("Error starting program %1").arg(_progName),i18n("Running program"));
+--- k9copy/src/backup/k9dvdbackup.cpp.orig 2016-07-04 03:45:28.518294176 +0100
++++ k9copy/src/backup/k9dvdbackup.cpp 2016-07-04 03:48:20.856559514 +0100
+@@ -33,6 +33,7 @@
+ #include <stdarg.h>
+ #include <errno.h>
+ #include <string.h>
++#include <math.h>
+ #include <qdir.h>
+
+ #include <kmessagebox.h>
+@@ -907,7 +908,8 @@ k9Vobu * k9DVDBackup::remapOffset(uint32
+
+
+ if ((vobu1 !=NULL) && (vobu2!=NULL)) {
+- *_offset = abs(vobu1->newSector - vobu2->newSector) | maskOffset1 ;
++ *_offset = fabs(vobu1->newSector - vobu2->newSector);
++ *_offset |= maskOffset1;
+ *_offset |= maskOffset2;
+ return vobu2;
+ }
+--- k9copy/src/import/k9avidecode.cpp.orig 2016-07-04 03:53:55.963959712 +0100
++++ k9copy/src/import/k9avidecode.cpp 2016-07-04 04:09:58.766458043 +0100
+@@ -26,7 +26,6 @@ static int sws_flags = SWS_BICUBIC;
+ void av_free_packet_internal(AVPacket *pkt)
+ {
+ if (pkt) {
+- if (pkt->destruct) pkt->destruct(pkt);
+ pkt->data = NULL; pkt->size = 0;
+ }
+ }
+@@ -238,14 +237,14 @@ bool k9AviDecode::open(const QString & _
+
+ int numBytes;
+ // Determine required buffer size and allocate buffer
+- numBytes=avpicture_get_size(PIX_FMT_RGB24, m_CodecCtx->width,
++ numBytes=avpicture_get_size(AV_PIX_FMT_RGB24, m_CodecCtx->width,
+ m_CodecCtx->height);
+ m_buffer=(uint8_t *)av_malloc(numBytes*sizeof(uint8_t));
+
+ // Assign appropriate parts of buffer to image planes in pFrameRGB
+ // Note that pFrameRGB is an AVFrame, but AVFrame is a superset
+ // of AVPicture
+- avpicture_fill((AVPicture *)m_FrameRGB, m_buffer, PIX_FMT_RGB24,
++ avpicture_fill((AVPicture *)m_FrameRGB, m_buffer, AV_PIX_FMT_RGB24,
+ m_CodecCtx->width, m_CodecCtx->height);
+
+
+@@ -317,13 +316,13 @@ void k9AviDecode::readFrame(double _seco
+ bFound=true;
+ #ifndef HAVE_SWSCALE
+ // Convert the image from its native format to RGB
+- img_convert((AVPicture *)m_FrameRGB, PIX_FMT_RGB24,
++ img_convert((AVPicture *)m_FrameRGB, AV_PIX_FMT_RGB24,
+ (AVPicture*)m_Frame, m_CodecCtx->pix_fmt,
+ m_CodecCtx->width, m_CodecCtx->height);
+ SaveFrame(m_FrameRGB, m_CodecCtx->width,
+ m_CodecCtx->height);
+ #else
+- toRGB_convert_ctx=sws_getContext(m_CodecCtx->width, m_CodecCtx->height, m_CodecCtx->pix_fmt, m_CodecCtx->width, m_CodecCtx->height, PIX_FMT_RGB24, sws_flags,NULL,NULL,NULL);
++ toRGB_convert_ctx=sws_getContext(m_CodecCtx->width, m_CodecCtx->height, m_CodecCtx->pix_fmt, m_CodecCtx->width, m_CodecCtx->height, AV_PIX_FMT_RGB24, sws_flags,NULL,NULL,NULL);
+ sws_scale(toRGB_convert_ctx, m_Frame->data, m_Frame->linesize, 0, m_CodecCtx->height, m_FrameRGB->data,m_FrameRGB->linesize);
+ // convert frame to QImage
+ SaveFrame(m_FrameRGB, m_CodecCtx->width,
diff --git a/multimedia/kdenlive/kdenlive.SlackBuild b/multimedia/kdenlive/kdenlive.SlackBuild
index 9304f04db7..7327a58c3e 100644
--- a/multimedia/kdenlive/kdenlive.SlackBuild
+++ b/multimedia/kdenlive/kdenlive.SlackBuild
@@ -101,6 +101,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# Needed for gcc >= 6.x
+sed -i "s|\ abs(| fabs(|" src/scopes/audioscopes/spectrogram.cpp
+
mkdir build
cd build
cmake \
diff --git a/multimedia/mkvtoolnix/boost-1.69.0.patch b/multimedia/mkvtoolnix/boost-1.69.0.patch
new file mode 100644
index 0000000000..5ea1117528
--- /dev/null
+++ b/multimedia/mkvtoolnix/boost-1.69.0.patch
@@ -0,0 +1,51 @@
+After https://github.com/boostorg/logic/commit/23cd89d4c80f build fails:
+
+src/common/debugging.h:63:14: fatal error: no viable conversion from returned value of type 'boost::tribool' to function return type 'bool'
+ return m_requested;
+ ^~~~~~~~~~~
+src/input/r_matroska.cpp:1685:43: fatal error: no viable conversion from 'boost::logic::tribool' to 'bool'
+ PTZR(t->ptzr)->set_track_enabled_flag(t->enabled_track);
+ ^~~~~~~~~~~~~~~~
+src/merge/generic_packetizer.h:199:44: note: passing argument to parameter 'enabled_track' here
+ virtual void set_track_enabled_flag(bool enabled_track);
+ ^
+src/output/p_avc_es.cpp:49:41: fatal error: no viable conversion from 'boost::logic::tribool' to 'bool'
+ m_parser.set_fix_bitstream_frame_rate(m_ti.m_fix_bitstream_frame_rate);
+ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+src/common/avc_es_parser.h:152:42: note: passing argument to parameter 'fix' here
+ void set_fix_bitstream_frame_rate(bool fix) {
+ ^
+
+--- src/common/debugging.h.orig 2018-10-20 14:44:02 UTC
++++ src/common/debugging.h
+@@ -60,7 +60,7 @@ class debugging_option_c {
+ if (boost::logic::indeterminate(m_requested))
+ m_requested = debugging_c::requested(m_option);
+
+- return m_requested;
++ return bool{m_requested};
+ }
+ };
+
+--- src/input/r_matroska.cpp.orig 2018-10-20 14:44:02 UTC
++++ src/input/r_matroska.cpp
+@@ -1682,7 +1682,7 @@ kax_reader_c::set_packetizer_headers(kax_track_t *t) {
+ PTZR(t->ptzr)->set_track_forced_flag(true);
+
+ if (boost::logic::indeterminate(PTZR(t->ptzr)->m_ti.m_enabled_track))
+- PTZR(t->ptzr)->set_track_enabled_flag(t->enabled_track);
++ PTZR(t->ptzr)->set_track_enabled_flag(bool{t->enabled_track});
+
+ if ((0 != t->track_uid) && !PTZR(t->ptzr)->set_uid(t->track_uid))
+ mxwarn(boost::format(Y("matroska_reader: Could not keep the track UID %1% because it is already allocated for the new file.\n")) % t->track_uid);
+--- src/output/p_avc_es.cpp.orig 2018-10-20 14:44:02 UTC
++++ src/output/p_avc_es.cpp
+@@ -46,7 +46,7 @@ avc_es_video_packetizer_c(generic_reader_c *p_reader,
+ set_codec_id(MKV_V_MPEG4_AVC);
+
+ m_parser.set_keep_ar_info(false);
+- m_parser.set_fix_bitstream_frame_rate(m_ti.m_fix_bitstream_frame_rate);
++ m_parser.set_fix_bitstream_frame_rate(bool{m_ti.m_fix_bitstream_frame_rate});
+
+ // If no external timestamp file has been specified then mkvmerge
+ // might have created a factory due to the --default-duration
diff --git a/multimedia/mkvtoolnix/mkvtoolnix.SlackBuild b/multimedia/mkvtoolnix/mkvtoolnix.SlackBuild
index 05b885583f..d147676c4f 100644
--- a/multimedia/mkvtoolnix/mkvtoolnix.SlackBuild
+++ b/multimedia/mkvtoolnix/mkvtoolnix.SlackBuild
@@ -23,7 +23,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=mkvtoolnix
-VERSION=${VERSION:-27.0.0}
+VERSION=${VERSION:-29.0.0}
BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
@@ -69,6 +69,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# https://svnweb.freebsd.org/ports?view=revision&revision=482787
+patch -p0 < $CWD/boost-1.69.0.patch
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
diff --git a/multimedia/mkvtoolnix/mkvtoolnix.info b/multimedia/mkvtoolnix/mkvtoolnix.info
index e11b61a87b..74eb674549 100644
--- a/multimedia/mkvtoolnix/mkvtoolnix.info
+++ b/multimedia/mkvtoolnix/mkvtoolnix.info
@@ -1,8 +1,8 @@
PRGNAM="mkvtoolnix"
-VERSION="27.0.0"
+VERSION="29.0.0"
HOMEPAGE="https://www.bunkus.org/videotools/mkvtoolnix"
-DOWNLOAD="https://www.bunkus.org/videotools/mkvtoolnix/sources/mkvtoolnix-27.0.0.tar.xz"
-MD5SUM="67370772ea1e0d404f371813ac85c153"
+DOWNLOAD="https://www.bunkus.org/videotools/mkvtoolnix/sources/mkvtoolnix-29.0.0.tar.xz"
+MD5SUM="f252db8c5c43588677f9bd4d337de3de"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="cmark"
diff --git a/multimedia/mlt/mlt.SlackBuild b/multimedia/mlt/mlt.SlackBuild
index 34b021379c..460b8977c1 100644
--- a/multimedia/mlt/mlt.SlackBuild
+++ b/multimedia/mlt/mlt.SlackBuild
@@ -72,10 +72,10 @@ OUTPUT=${OUTPUT:-/tmp}
# Autodetect which SWIG Languages bindings to build
# according to what's installed on the system:
-if [ -f "$(which javac)" ]; then java="java"; else java=""; fi
+java="" # if [ -f "$(which javac)" ]; then java="java"; else java=""; fi
if [ -f "$(which lua)" ]; then lua="lua"; else lua=""; fi
if [ -f "$(which perl)" ]; then perl="perl"; else perl=""; fi
-if [ -f "$(which php)" ]; then php="php"; else php=""; fi
+php="" # if [ -f "$(which php)" ]; then php="php"; else php=""; fi
if [ -f "$(which python)" ]; then python="python"; else python=""; fi
if [ -h "$(which tclsh)" ]; then tcl="tcl"; else tcl=""; fi
if [ -f "$(which csharp)" ]; then csharp="csharp"; else csharp=""; fi
diff --git a/multimedia/mythtv/libvpxenc.patch b/multimedia/mythtv/libvpxenc.patch
deleted file mode 100644
index e8c21288cb..0000000000
--- a/multimedia/mythtv/libvpxenc.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From 6540fe04a3f9a11ba7084a49b3ee5fa2fc5b32ab Mon Sep 17 00:00:00 2001
-From: James Zern <jzern@google.com>
-Date: Mon, 19 Oct 2015 22:44:11 -0700
-Subject: [PATCH] libvpxenc: remove some unused ctrl id mappings
-
-VP8E_UPD_ENTROPY, VP8E_UPD_REFERENCE, VP8E_USE_REFERENCE were removed
-from libvpx and the remaining values were never used here
-
-Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
-Signed-off-by: James Zern <jzern@google.com>
----
- libavcodec/libvpxenc.c | 8 --------
- 1 file changed, 8 deletions(-)
-
-diff --git a/libavcodec/libvpxenc.c b/libavcodec/libvpxenc.c
-index 5f39783..992122c 100644
---- a/libavcodec/libvpxenc.c
-+++ b/libavcodec/libvpxenc.c
-@@ -104,19 +104,11 @@ typedef struct VP8EncoderContext {
-
- /** String mappings for enum vp8e_enc_control_id */
- static const char *const ctlidstr[] = {
-- [VP8E_UPD_ENTROPY] = "VP8E_UPD_ENTROPY",
-- [VP8E_UPD_REFERENCE] = "VP8E_UPD_REFERENCE",
-- [VP8E_USE_REFERENCE] = "VP8E_USE_REFERENCE",
-- [VP8E_SET_ROI_MAP] = "VP8E_SET_ROI_MAP",
-- [VP8E_SET_ACTIVEMAP] = "VP8E_SET_ACTIVEMAP",
-- [VP8E_SET_SCALEMODE] = "VP8E_SET_SCALEMODE",
- [VP8E_SET_CPUUSED] = "VP8E_SET_CPUUSED",
- [VP8E_SET_ENABLEAUTOALTREF] = "VP8E_SET_ENABLEAUTOALTREF",
- [VP8E_SET_NOISE_SENSITIVITY] = "VP8E_SET_NOISE_SENSITIVITY",
-- [VP8E_SET_SHARPNESS] = "VP8E_SET_SHARPNESS",
- [VP8E_SET_STATIC_THRESHOLD] = "VP8E_SET_STATIC_THRESHOLD",
- [VP8E_SET_TOKEN_PARTITIONS] = "VP8E_SET_TOKEN_PARTITIONS",
-- [VP8E_GET_LAST_QUANTIZER] = "VP8E_GET_LAST_QUANTIZER",
- [VP8E_SET_ARNR_MAXFRAMES] = "VP8E_SET_ARNR_MAXFRAMES",
- [VP8E_SET_ARNR_STRENGTH] = "VP8E_SET_ARNR_STRENGTH",
- [VP8E_SET_ARNR_TYPE] = "VP8E_SET_ARNR_TYPE",
---
-1.7.10.4
-
-
diff --git a/multimedia/mythtv/mythtv.SlackBuild b/multimedia/mythtv/mythtv.SlackBuild
index 35b9780127..34b8f8dce5 100644
--- a/multimedia/mythtv/mythtv.SlackBuild
+++ b/multimedia/mythtv/mythtv.SlackBuild
@@ -28,7 +28,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=mythtv
-VERSION=${VERSION:-0.27.6}
+VERSION=${VERSION:-29.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -65,7 +65,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz || tar xvf $CWD/v$VERSION.tar.gz
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
@@ -80,9 +80,6 @@ sed -i \
-e"s|--without-documentation|--without-documentation --libdir=/usr/lib$LIBDIRSUFFIX|" \
configure
-# Thanks to ARCH Linux
-patch -d external/FFmpeg -p1 < $CWD/libvpxenc.patch
-
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -103,7 +100,6 @@ CXXFLAGS="$SLKCFLAGS" \
--enable-nonfree \
--enable-opengl-video \
--enable-libmp3lame \
- --enable-libfaac \
--enable-libx264 \
--enable-libvpx \
--enable-libxvid \
diff --git a/multimedia/mythtv/mythtv.info b/multimedia/mythtv/mythtv.info
index d364c7f70b..8e3236dbfe 100644
--- a/multimedia/mythtv/mythtv.info
+++ b/multimedia/mythtv/mythtv.info
@@ -1,10 +1,10 @@
PRGNAM="mythtv"
-VERSION="0.27.6"
+VERSION="29.0"
HOMEPAGE="https://www.mythtv.org/"
-DOWNLOAD="https://github.com/MythTV/mythtv/archive/v0.27.6.tar.gz"
-MD5SUM="30dce5263a03687a14ff34331ea537ad"
+DOWNLOAD="https://github.com/MythTV/mythtv/archive/v29.0/mythtv-29.0.tar.gz"
+MD5SUM="b76210627050e1adaabf8d7180f3402b"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="libass faac lame MySQL-python lxml urlgrabber perl-http-message libwww-perl perl-Net-UPnP perl-IO-Socket-INET6 x264 xvidcore"
+REQUIRES="libass faac lame MySQL-python lxml urlgrabber perl-http-message libwww-perl perl-Net-UPnP perl-IO-Socket-INET6 qt5 x264 xvidcore"
MAINTAINER="David Somero"
EMAIL="dsomero@hotmail.com"
diff --git a/multimedia/oggvideotools/oggvideotools.SlackBuild b/multimedia/oggvideotools/oggvideotools.SlackBuild
index d284d00cae..7f06b2c20f 100644
--- a/multimedia/oggvideotools/oggvideotools.SlackBuild
+++ b/multimedia/oggvideotools/oggvideotools.SlackBuild
@@ -83,7 +83,7 @@ cd build
CXXFLAGS="$SLKCFLAGS" \
cmake .. \
-DCMAKE_INSTALL_PREFIX:STRING="/usr" \
- -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS -Wno-error=narrowing" \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_VERBOSE_MAKEFILE:BOOL="TRUE"
make
diff --git a/multimedia/rtmpdump/rtmpdump.SlackBuild b/multimedia/rtmpdump/rtmpdump.SlackBuild
index 7728e656d5..bb3e9064f2 100644
--- a/multimedia/rtmpdump/rtmpdump.SlackBuild
+++ b/multimedia/rtmpdump/rtmpdump.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for rtmpdump
-# Copyright 2013-2016 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
+# Copyright 2013-2018 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -74,6 +74,12 @@ find -L . \
# patch makefiles for shared library install
patch -p1 < $CWD/librtmp-makefile.patch
+# use gnutls instead of openssl
+sed -i \
+ -e 's/^CRYPTO=OPENSSL/#CRYPTO=OPENSSL/' \
+ -e 's/#CRYPTO=GNUTLS/CRYPTO=GNUTLS/' \
+ Makefile librtmp/Makefile
+
XCFLAGS="$SLKCFLAGS" \
make \
prefix=/usr \
diff --git a/multimedia/smpeg/smpeg.SlackBuild b/multimedia/smpeg/smpeg.SlackBuild
index 19a3a4f6c6..b2560d4b2b 100644
--- a/multimedia/smpeg/smpeg.SlackBuild
+++ b/multimedia/smpeg/smpeg.SlackBuild
@@ -69,9 +69,11 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+sed -i "s|^gtv_LDADD.*|gtv_LDADD = @GTK_LIBS@ libsmpeg.la -lX11|" Makefile.am
+
./autogen.sh
-CFLAGS="$SLKCFLAGS" \
+CFLAGS="$SLKCFLAGS -Wno-error=narrowing" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
diff --git a/multimedia/spotify/spotify.SlackBuild b/multimedia/spotify/spotify.SlackBuild
index d1945d7589..c01f4f4c59 100644
--- a/multimedia/spotify/spotify.SlackBuild
+++ b/multimedia/spotify/spotify.SlackBuild
@@ -27,12 +27,11 @@
PRGNAM=spotify
SRCNAM=spotify-client
-VERSION=${VERSION:-1.0.72}
+VERSION=${VERSION:-1.0.89}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
case "$(uname -m)" in
- i?86) DEBARCH="*-*_i386" ; LIBDIRSUFFIX="" ; ARCH=i386 ;;
x86_64) DEBARCH="*-*_amd64" ; LIBDIRSUFFIX="64" ; ARCH=x86_64 ;;
*) echo "Package for $(uname -m) architecture is not available." ; exit 1 ;;
esac
@@ -69,6 +68,7 @@ mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
## we make our own launcher
cat <<EOT > $PKG/usr/bin/$PRGNAM
#!/bin/sh
+export LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:/opt/spotify/usr/lib
/opt/$PRGNAM/usr/bin/$PRGNAM "\$@"
EOT
@@ -84,6 +84,11 @@ chmod 755 $PKG/usr/bin/$PRGNAM
done
)
+# add libraries from ubuntu to which the spotify client links
+# these must be hand-extracted from ubuntu packages :(
+( cd $PKG/opt/$PRGNAM
+ tar xf $CWD/$SRCNAM-$VERSION-additional_libs.tar.xz )
+
mkdir -p $PKG/usr/share/applications/
mv $PKG/opt/$PRGNAM/usr/share/$PRGNAM/$PRGNAM.desktop \
$PKG/usr/share/applications/$SRCNAM.desktop
diff --git a/multimedia/spotify/spotify.info b/multimedia/spotify/spotify.info
index bebc5fa081..ea57cc04d4 100644
--- a/multimedia/spotify/spotify.info
+++ b/multimedia/spotify/spotify.info
@@ -1,10 +1,12 @@
PRGNAM="spotify"
-VERSION="1.0.72"
+VERSION="1.0.89"
HOMEPAGE="https://www.spotify.com"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/spotify/spotify-client_1.0.72.117.g6bd7cc73-35_i386.deb"
-MD5SUM="c8e54d60452bda40f6de23f11c909b2d"
-DOWNLOAD_x86_64="http://ponce.cc/slackware/sources/repo/spotify/spotify-client_1.0.72.117.g6bd7cc73-35_amd64.deb"
-MD5SUM_x86_64="35392fb7d108e2830f22942c0a4ec717"
-REQUIRES=""
+DOWNLOAD="UNSUPPORTED"
+MD5SUM=""
+DOWNLOAD_x86_64="http://ponce.cc/slackware/sources/repo/spotify/spotify-client_1.0.89.313.g34a58dea-5_amd64.deb \
+ http://ponce.cc/slackware/sources/repo/spotify/spotify-client-1.0.89-additional_libs.tar.xz"
+MD5SUM_x86_64="5298643a2d3f0063ba80d59aa002789c \
+ 1f5a70be35981a628844f64a732346e4"
+REQUIRES="rtmpdump"
MAINTAINER="DhabyX"
EMAIL="slack.dhabyx@gmail.com"
diff --git a/multimedia/subtitleeditor/fix-23714-cxx11-v2.patch b/multimedia/subtitleeditor/fix-23714-cxx11-v2.patch
deleted file mode 100644
index 2a74a55a74..0000000000
--- a/multimedia/subtitleeditor/fix-23714-cxx11-v2.patch
+++ /dev/null
@@ -1,273 +0,0 @@
-Index: configure.ac
-===================================================================
---- configure.ac (révision 956)
-+++ configure.ac (copie de travail)
-@@ -18,8 +18,9 @@
- AC_C_INLINE
-
- # Checks for programs.
-+AC_LANG([C++])
- AC_PROG_CXX
--#AC_PROG_CC
-+AX_CXX_COMPILE_STDCXX_11([noext], [mandatory])
-
- # Checks for library functions.
- AC_FUNC_SELECT_ARGTYPES
-@@ -253,7 +254,7 @@
-
- if test "$enable_debug" = "yes"; then
- CXXFLAGS="$CXXFLAGS -DDEBUG -g"
-- LDFLAGS="$LDFLAGS -g -ansi -Wall"
-+ LDFLAGS="$LDFLAGS -g -Wall"
- fi
-
- # =========================================================================
-@@ -265,13 +266,13 @@
-
- if test "$enable_profile" = "yes"; then
- CXXFLAGS="$CXXFLAGS -pg"
-- LDFLAGS="$LDFLAGS -pg -ansi -Wall"
-+ LDFLAGS="$LDFLAGS -pg -Wall"
- fi
-
- # =========================================================================
- # gcc flags
-
--CXXFLAGS="$CXXFLAGS -ansi -Wall -Wextra -Wconversion" #-Werror
-+CXXFLAGS="$CXXFLAGS -Wall -Wextra -Wconversion" #-Werror
-
- # =========================================================================
- # make use of ccache
-Index: m4/ax_cxx_compile_stdcxx_11.m4
-===================================================================
---- m4/ax_cxx_compile_stdcxx_11.m4 (nonexistent)
-+++ m4/ax_cxx_compile_stdcxx_11.m4 (copie de travail)
-@@ -0,0 +1,172 @@
-+# ============================================================================
-+# http://www.gnu.org/software/autoconf-archive/ax_cxx_compile_stdcxx_11.html
-+# ============================================================================
-+#
-+# SYNOPSIS
-+#
-+# AX_CXX_COMPILE_STDCXX_11([ext|noext],[mandatory|optional])
-+#
-+# DESCRIPTION
-+#
-+# Check for baseline language coverage in the compiler for the C++11
-+# standard; if necessary, add switches to CXXFLAGS to enable support.
-+#
-+# The first argument, if specified, indicates whether you insist on an
-+# extended mode (e.g. -std=gnu++11) or a strict conformance mode (e.g.
-+# -std=c++11). If neither is specified, you get whatever works, with
-+# preference for an extended mode.
-+#
-+# The second argument, if specified 'mandatory' or if left unspecified,
-+# indicates that baseline C++11 support is required and that the macro
-+# should error out if no mode with that support is found. If specified
-+# 'optional', then configuration proceeds regardless, after defining
-+# HAVE_CXX11 if and only if a supporting mode is found.
-+#
-+# LICENSE
-+#
-+# Copyright (c) 2008 Benjamin Kosnik <bkoz@redhat.com>
-+# Copyright (c) 2012 Zack Weinberg <zackw@panix.com>
-+# Copyright (c) 2013 Roy Stogner <roystgnr@ices.utexas.edu>
-+# Copyright (c) 2014, 2015 Google Inc.; contributed by Alexey Sokolov <sokolov@google.com>
-+# Copyright (c) 2015 Paul Norman <penorman@mac.com>
-+#
-+# Copying and distribution of this file, with or without modification, are
-+# permitted in any medium without royalty provided the copyright notice
-+# and this notice are preserved. This file is offered as-is, without any
-+# warranty.
-+
-+#serial 13
-+
-+m4_define([_AX_CXX_COMPILE_STDCXX_11_testbody], [[
-+ template <typename T>
-+ struct check
-+ {
-+ static_assert(sizeof(int) <= sizeof(T), "not big enough");
-+ };
-+
-+ struct Base {
-+ virtual void f() {}
-+ };
-+ struct Child : public Base {
-+ virtual void f() override {}
-+ };
-+
-+ typedef check<check<bool>> right_angle_brackets;
-+
-+ int a;
-+ decltype(a) b;
-+
-+ typedef check<int> check_type;
-+ check_type c;
-+ check_type&& cr = static_cast<check_type&&>(c);
-+
-+ auto d = a;
-+ auto l = [](){};
-+ // Prevent Clang error: unused variable 'l' [-Werror,-Wunused-variable]
-+ struct use_l { use_l() { l(); } };
-+
-+ // http://stackoverflow.com/questions/13728184/template-aliases-and-sfinae
-+ // Clang 3.1 fails with headers of libstd++ 4.8.3 when using std::function because of this
-+ namespace test_template_alias_sfinae {
-+ struct foo {};
-+
-+ template<typename T>
-+ using member = typename T::member_type;
-+
-+ template<typename T>
-+ void func(...) {}
-+
-+ template<typename T>
-+ void func(member<T>*) {}
-+
-+ void test();
-+
-+ void test() {
-+ func<foo>(0);
-+ }
-+ }
-+
-+ // Check for C++11 attribute support
-+ void noret [[noreturn]] () { throw 0; }
-+]])
-+
-+AC_DEFUN([AX_CXX_COMPILE_STDCXX_11], [dnl
-+ m4_if([$1], [], [],
-+ [$1], [ext], [],
-+ [$1], [noext], [],
-+ [m4_fatal([invalid argument `$1' to AX_CXX_COMPILE_STDCXX_11])])dnl
-+ m4_if([$2], [], [ax_cxx_compile_cxx11_required=true],
-+ [$2], [mandatory], [ax_cxx_compile_cxx11_required=true],
-+ [$2], [optional], [ax_cxx_compile_cxx11_required=false],
-+ [m4_fatal([invalid second argument `$2' to AX_CXX_COMPILE_STDCXX_11])])
-+ AC_LANG_PUSH([C++])dnl
-+ ac_success=no
-+ AC_CACHE_CHECK(whether $CXX supports C++11 features by default,
-+ ax_cv_cxx_compile_cxx11,
-+ [AC_COMPILE_IFELSE([AC_LANG_SOURCE([_AX_CXX_COMPILE_STDCXX_11_testbody])],
-+ [ax_cv_cxx_compile_cxx11=yes],
-+ [ax_cv_cxx_compile_cxx11=no])])
-+ if test x$ax_cv_cxx_compile_cxx11 = xyes; then
-+ ac_success=yes
-+ fi
-+
-+ m4_if([$1], [noext], [], [dnl
-+ if test x$ac_success = xno; then
-+ for switch in -std=gnu++11 -std=gnu++0x; do
-+ cachevar=AS_TR_SH([ax_cv_cxx_compile_cxx11_$switch])
-+ AC_CACHE_CHECK(whether $CXX supports C++11 features with $switch,
-+ $cachevar,
-+ [ac_save_CXXFLAGS="$CXXFLAGS"
-+ CXXFLAGS="$CXXFLAGS $switch"
-+ AC_COMPILE_IFELSE([AC_LANG_SOURCE([_AX_CXX_COMPILE_STDCXX_11_testbody])],
-+ [eval $cachevar=yes],
-+ [eval $cachevar=no])
-+ CXXFLAGS="$ac_save_CXXFLAGS"])
-+ if eval test x\$$cachevar = xyes; then
-+ CXXFLAGS="$CXXFLAGS $switch"
-+ ac_success=yes
-+ break
-+ fi
-+ done
-+ fi])
-+
-+ m4_if([$1], [ext], [], [dnl
-+ if test x$ac_success = xno; then
-+ dnl HP's aCC needs +std=c++11 according to:
-+ dnl http://h21007.www2.hp.com/portal/download/files/unprot/aCxx/PDF_Release_Notes/769149-001.pdf
-+ dnl Cray's crayCC needs "-h std=c++11"
-+ for switch in -std=c++11 -std=c++0x +std=c++11 "-h std=c++11"; do
-+ cachevar=AS_TR_SH([ax_cv_cxx_compile_cxx11_$switch])
-+ AC_CACHE_CHECK(whether $CXX supports C++11 features with $switch,
-+ $cachevar,
-+ [ac_save_CXXFLAGS="$CXXFLAGS"
-+ CXXFLAGS="$CXXFLAGS $switch"
-+ AC_COMPILE_IFELSE([AC_LANG_SOURCE([_AX_CXX_COMPILE_STDCXX_11_testbody])],
-+ [eval $cachevar=yes],
-+ [eval $cachevar=no])
-+ CXXFLAGS="$ac_save_CXXFLAGS"])
-+ if eval test x\$$cachevar = xyes; then
-+ CXXFLAGS="$CXXFLAGS $switch"
-+ ac_success=yes
-+ break
-+ fi
-+ done
-+ fi])
-+ AC_LANG_POP([C++])
-+ if test x$ax_cxx_compile_cxx11_required = xtrue; then
-+ if test x$ac_success = xno; then
-+ AC_MSG_ERROR([*** A compiler with support for C++11 language features is required.])
-+ fi
-+ else
-+ if test x$ac_success = xno; then
-+ HAVE_CXX11=0
-+ AC_MSG_NOTICE([No compiler with C++11 support was found])
-+ else
-+ HAVE_CXX11=1
-+ AC_DEFINE(HAVE_CXX11,1,
-+ [define if the compiler supports basic C++11 syntax])
-+ fi
-+
-+ AC_SUBST(HAVE_CXX11)
-+ fi
-+])
-Index: plugins/actions/dialoguize/dialoguize.cc
-===================================================================
---- plugins/actions/dialoguize/dialoguize.cc (révision 956)
-+++ plugins/actions/dialoguize/dialoguize.cc (copie de travail)
-@@ -23,7 +23,7 @@
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
--#include <auto_ptr.h>
-+#include <memory.h>
- #include "extension/action.h"
- #include "i18n.h"
- #include "debug.h"
-Index: plugins/actions/documentmanagement/documentmanagement.cc
-===================================================================
---- plugins/actions/documentmanagement/documentmanagement.cc (révision 956)
-+++ plugins/actions/documentmanagement/documentmanagement.cc (copie de travail)
-@@ -178,9 +178,9 @@
-
- ui_id = ui->new_merge_id();
-
-- #define ADD_UI(name) ui->add_ui(ui_id, "/menubar/menu-file/"name, name, name);
-- #define ADD_OPEN_UI(name) ui->add_ui(ui_id, "/menubar/menu-file/menu-open/"name, name, name);
-- #define ADD_SAVE_UI(name) ui->add_ui(ui_id, "/menubar/menu-file/menu-save/"name, name, name);
-+ #define ADD_UI(name) ui->add_ui(ui_id, Glib::ustring::compose("%1/%2","/menubar/menu-file", name), name, name);
-+ #define ADD_OPEN_UI(name) ui->add_ui(ui_id, Glib::ustring::compose("%1/%2","/menubar/menu-file/menu-open", name), name, name);
-+ #define ADD_SAVE_UI(name) ui->add_ui(ui_id, Glib::ustring::compose("%1/%2","/menubar/menu-file/menu-save", name), name, name);
-
- ADD_UI("new-document");
- ADD_OPEN_UI("open-document");
-Index: src/subtitleview.cc
-===================================================================
---- src/subtitleview.cc (révision 956)
-+++ src/subtitleview.cc (copie de travail)
-@@ -1363,7 +1363,7 @@
- {
- int num;
- std::istringstream ss(event->string);
-- bool is_num = ss >> num != 0;
-+ bool is_num = static_cast<bool>(ss >> num) != 0;
- // Update only if it's different
- if(is_num != get_enable_search())
- set_enable_search(is_num);
-Index: src/utility.h
-===================================================================
---- src/utility.h (révision 956)
-+++ src/utility.h (copie de travail)
-@@ -91,7 +91,7 @@
- std::istringstream s(src);
- // return s >> dest != 0;
-
-- bool state = s >> dest != 0;
-+ bool state = static_cast<bool>(s >> dest) != 0;
-
- if(!state)
- se_debug_message(SE_DEBUG_UTILITY, "string:'%s'failed.", src.c_str());
diff --git a/multimedia/subtitleeditor/subtitleeditor.SlackBuild b/multimedia/subtitleeditor/subtitleeditor.SlackBuild
index 4d941c98c8..20b02ffd70 100644
--- a/multimedia/subtitleeditor/subtitleeditor.SlackBuild
+++ b/multimedia/subtitleeditor/subtitleeditor.SlackBuild
@@ -23,13 +23,13 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=subtitleeditor
-VERSION=${VERSION:-0.52.1}
+VERSION=${VERSION:-0.53.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -40,8 +40,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -69,11 +69,6 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-# https://gna.org/bugs/?23714
-patch -p0 < $CWD/fix-23714-cxx11-v2.patch
-
-autoreconf -fi
-
CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
diff --git a/multimedia/subtitleeditor/subtitleeditor.info b/multimedia/subtitleeditor/subtitleeditor.info
index e15bf271dc..a5e5bd87e7 100644
--- a/multimedia/subtitleeditor/subtitleeditor.info
+++ b/multimedia/subtitleeditor/subtitleeditor.info
@@ -1,8 +1,8 @@
PRGNAM="subtitleeditor"
-VERSION="0.52.1"
+VERSION="0.53.0"
HOMEPAGE="https://launchpad.net/subtitleeditor"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/subtitleeditor-0.52.1.tar.gz"
-MD5SUM="d25a3f6966f4d6355485d3dfbcfb437a"
+DOWNLOAD="http://ponce.cc/slackware/sources/repo/subtitleeditor-0.53.0.tar.gz"
+MD5SUM="bcd3ce93a4759ed3f99a56dc7e4c4e00"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="gstreamermm libxml++"
diff --git a/multimedia/tvheadend/tvheadend.SlackBuild b/multimedia/tvheadend/tvheadend.SlackBuild
index 623f21723f..eafdedb449 100644
--- a/multimedia/tvheadend/tvheadend.SlackBuild
+++ b/multimedia/tvheadend/tvheadend.SlackBuild
@@ -23,7 +23,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=tvheadend
-VERSION=${VERSION:-3.4patch1}
+VERSION=${VERSION:-20170619_14bd7eb}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -60,7 +60,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz || tar xvf $CWD/$VERSION.tar.gz
+tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
@@ -69,7 +69,6 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
diff --git a/multimedia/tvheadend/tvheadend.info b/multimedia/tvheadend/tvheadend.info
index ad7caed7c3..43e370d966 100644
--- a/multimedia/tvheadend/tvheadend.info
+++ b/multimedia/tvheadend/tvheadend.info
@@ -1,8 +1,8 @@
PRGNAM="tvheadend"
-VERSION="3.4patch1"
+VERSION="20170619_14bd7eb"
HOMEPAGE="https://tvheadend.org"
-DOWNLOAD="https://github.com/tvheadend/tvheadend/archive/3.4patch1.tar.gz"
-MD5SUM="86d1be0ad6e02bd2aecd3d529a026797"
+DOWNLOAD="http://ponce.cc/slackware/sources/repo/tvheadend-20170619_14bd7eb.tar.xz"
+MD5SUM="29d6ad6e10ef3eb8a96f1e947bec3c1d"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/multimedia/tvtime/tvtime.SlackBuild b/multimedia/tvtime/tvtime.SlackBuild
index ed2d612d24..c065c9ff79 100644
--- a/multimedia/tvtime/tvtime.SlackBuild
+++ b/multimedia/tvtime/tvtime.SlackBuild
@@ -23,13 +23,13 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=tvtime
-VERSION=${VERSION:-1.0.7}
+VERSION=${VERSION:-1.0.11}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -40,16 +40,15 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-# The INSTALL file recommends avoiding the use of the "-march" flag,
-# and -fPIC on x86_64 results in failure
-if [ "$ARCH" = "i486" ]; then
+# The INSTALL file recommends avoiding the use of the "-march" flag
+if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2"
+ SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
@@ -69,7 +68,7 @@ find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
-o -perm 511 \) -exec chmod 755 {} \; -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
@@ -87,13 +86,11 @@ CXXFLAGS="$SLKCFLAGS" \
make
make install DESTDIR=$PKG
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-( cd $PKG/usr/man
- find . -type f -exec gzip -9 {} \;
- for i in $(find . -type l) ; do ln -s $(readlink $i).gz $i.gz ; rm $i ; done
-)
+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
# Let's not clobber the config file
mv $PKG/etc/tvtime/tvtime.xml $PKG/etc/tvtime/tvtime.xml.new
@@ -101,7 +98,7 @@ mv $PKG/etc/tvtime/tvtime.xml $PKG/etc/tvtime/tvtime.xml.new
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
ABOUT-NLS AUTHORS COPYING* ChangeLog INSTALL NEWS README docs/html \
- $PKG/usr/doc/$PRGNAM-$VERSION
+ $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/multimedia/tvtime/tvtime.info b/multimedia/tvtime/tvtime.info
index 366e36ce63..04126667b2 100644
--- a/multimedia/tvtime/tvtime.info
+++ b/multimedia/tvtime/tvtime.info
@@ -1,8 +1,8 @@
PRGNAM="tvtime"
-VERSION="1.0.7"
+VERSION="1.0.11"
HOMEPAGE="http://tvtime.sourceforge.net/"
-DOWNLOAD="http://linuxtv.org/downloads/tvtime/tvtime-1.0.7.tar.gz"
-MD5SUM="d3cea3053ce8ff0d555da82fad138b44"
+DOWNLOAD="http://linuxtv.org/downloads/tvtime/tvtime-1.0.11.tar.gz"
+MD5SUM="f4adba831376a8baad92dbda49056138"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/multimedia/vcdimager/vcdimager.SlackBuild b/multimedia/vcdimager/vcdimager.SlackBuild
index ef61d17058..5e0068fada 100644
--- a/multimedia/vcdimager/vcdimager.SlackBuild
+++ b/multimedia/vcdimager/vcdimager.SlackBuild
@@ -17,13 +17,13 @@
# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
PRGNAM=vcdimager
-VERSION=${VERSION:-0.7.24}
+VERSION=${VERSION:-2.0.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -34,8 +34,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ] ; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ] ; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ] ; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -58,8 +58,10 @@ tar xvf $CWD/$PRGNAM-$VERSION.tar.?z*
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 400 -o -perm 440 \) -exec chmod 644 {} \; -o \
- \( -perm 777 -o -perm 775 -o -perm 511 -o -perm 711 -o -perm 555 \) -exec chmod 755 {} \;
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
diff --git a/multimedia/vcdimager/vcdimager.info b/multimedia/vcdimager/vcdimager.info
index cfdbfe7e55..27b020d21c 100644
--- a/multimedia/vcdimager/vcdimager.info
+++ b/multimedia/vcdimager/vcdimager.info
@@ -1,8 +1,8 @@
PRGNAM="vcdimager"
-VERSION="0.7.24"
+VERSION="2.0.1"
HOMEPAGE="http://www.gnu.org/software/vcdimager/"
-DOWNLOAD="http://mirrors.kernel.org/gnu/vcdimager/vcdimager-0.7.24.tar.gz"
-MD5SUM="3af22978fd79c79d5fda6513b6811145"
+DOWNLOAD="ftp://ftp.gnu.org/gnu/vcdimager/vcdimager-2.0.1.tar.gz"
+MD5SUM="3890d73da62d0607c87962c41cd33a29"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/multimedia/vlc/README b/multimedia/vlc/README
index d1ecfa9112..486733ea48 100644
--- a/multimedia/vlc/README
+++ b/multimedia/vlc/README
@@ -37,7 +37,3 @@ Please advise the maintainer to suggest support for any further options.
*NOTES*
- the qt4 interface seems not to be working ATM so the qt5 one is
enabled by default: this means qt5 is a new mandatory dependency
-- you *need* to version-bump the libva and libva-intel-driver in
- Slackware to versions 1.7.3 for VAAPI support: as we suppose
- a standard install, "--enable-libva=no" is added between the
- configure options, instead
diff --git a/multimedia/vlc/vlc.SlackBuild b/multimedia/vlc/vlc.SlackBuild
index bc3848345a..dd9a8d016c 100644
--- a/multimedia/vlc/vlc.SlackBuild
+++ b/multimedia/vlc/vlc.SlackBuild
@@ -82,6 +82,8 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
cd $PRGNAM-$VERSION
+sed -i '/DEPRECATED/s:^://:' modules/text_renderer/freetype/text_layout.c
+
patch -p0 < $CWD/patch-projectM-fontpath.diff
patch -p0 < $CWD/patch_vlc_cache_gen.diff
@@ -109,7 +111,7 @@ LDFLAGS="$SLKLDFLAGS" \
$wayland \
$opencv \
--enable-merge-ffmpeg \
- --enable-libva=no \
+ --disable-vpx \
--with-kde-solid=no \
make
@@ -118,8 +120,7 @@ make DESTDIR=$PKG install
mkdir -p $PKG/usr/man/man1
gzip -9c doc/vlc.1 > $PKG/usr/man/man1/vlc.1.gz
-mkdir -p $PKG/$(cd /usr/share/vim/vim*/syntax ; pwd)
-cp extras/analyser/vlc.vim $PKG/$(cd /usr/share/vim/vim*/syntax ; pwd)/
+install -D -m0644 extras/analyser/vlc.vim $PKG/usr/share/vim/vimfiles/syntax/vlc.vim
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION
diff --git a/network/NetworkManager-openvpn/NetworkManager-openvpn.SlackBuild b/network/NetworkManager-openvpn/NetworkManager-openvpn.SlackBuild
index 46b08ddac2..7e0f003f8b 100644
--- a/network/NetworkManager-openvpn/NetworkManager-openvpn.SlackBuild
+++ b/network/NetworkManager-openvpn/NetworkManager-openvpn.SlackBuild
@@ -23,7 +23,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=NetworkManager-openvpn
-VERSION=${VERSION:-1.2.10}
+VERSION=${VERSION:-1.8.6}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
diff --git a/network/NetworkManager-openvpn/NetworkManager-openvpn.info b/network/NetworkManager-openvpn/NetworkManager-openvpn.info
index 85a02339c8..d33d6cada3 100644
--- a/network/NetworkManager-openvpn/NetworkManager-openvpn.info
+++ b/network/NetworkManager-openvpn/NetworkManager-openvpn.info
@@ -1,8 +1,8 @@
PRGNAM="NetworkManager-openvpn"
-VERSION="1.2.10"
+VERSION="1.8.6"
HOMEPAGE="https://wiki.gnome.org/Projects/NetworkManager"
-DOWNLOAD="https://download.gnome.org/sources/NetworkManager-openvpn/1.2/NetworkManager-openvpn-1.2.10.tar.xz"
-MD5SUM="f118226ed2bfbacfd64ac4d1e0bd0383"
+DOWNLOAD="https://download.gnome.org/sources/NetworkManager-openvpn/1.8/NetworkManager-openvpn-1.8.6.tar.xz"
+MD5SUM="d6eb18af45a3b2b5be5844db3bb8e97c"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/RSSOwl/RSSOwl.SlackBuild b/network/RSSOwl/RSSOwl.SlackBuild
index e74ccf654a..999ebe5b99 100644
--- a/network/RSSOwl/RSSOwl.SlackBuild
+++ b/network/RSSOwl/RSSOwl.SlackBuild
@@ -73,7 +73,7 @@ ln -s /usr/lib${LIBDIRSUFFIX}/RSSOwl/RSSOwl $PKG/usr/bin/RSSOwl
mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM
cp -av * $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM
-sed -i 's,libhunspell-1.2.so.0,libhunspell-1.3.so.0,g' $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/xulrunner/libxul.so
+sed -i 's,libhunspell-1.2.so.0,libhunspell-1.6.so.0,g' $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/xulrunner/libxul.so
mkdir -p $PKG/usr/share/pixmaps
cp -av icon.xpm $PKG/usr/share/pixmaps/$PRGNAM.xpm
diff --git a/network/bip/bip.SlackBuild b/network/bip/bip.SlackBuild
index 93d6aac4df..e4a191a06c 100644
--- a/network/bip/bip.SlackBuild
+++ b/network/bip/bip.SlackBuild
@@ -72,7 +72,7 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-CFLAGS="$SLKCFLAGS" \
+CFLAGS="$SLKCFLAGS -Wno-error=duplicate-decl-specifier" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
diff --git a/network/bitcoin/bitcoin.SlackBuild b/network/bitcoin/bitcoin.SlackBuild
index c04aa892f6..9c89c199a0 100644
--- a/network/bitcoin/bitcoin.SlackBuild
+++ b/network/bitcoin/bitcoin.SlackBuild
@@ -72,6 +72,8 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+patch -p1 < $CWD/boost-1.66.0.patch
+
# build bitcoin-core
[ -f autogen.sh ] && sh autogen.sh
CFLAGS="$SLKCFLAGS" \
diff --git a/network/bitcoin/boost-1.66.0.patch b/network/bitcoin/boost-1.66.0.patch
new file mode 100644
index 0000000000..be13d20403
--- /dev/null
+++ b/network/bitcoin/boost-1.66.0.patch
@@ -0,0 +1,82 @@
+From 1ec0c0a01c316146434642ab2f14a7367306dbec Mon Sep 17 00:00:00 2001
+From: Suhas Daftuar <sdaftuar@gmail.com>
+Date: Thu, 7 Dec 2017 09:57:53 -0500
+Subject: [PATCH] Make boost::multi_index comparators const
+
+This fixes compatibility with boost 1.66
+---
+ src/miner.h | 4 ++--
+ src/txmempool.h | 10 +++++-----
+ 2 files changed, 7 insertions(+), 7 deletions(-)
+
+diff --git a/src/miner.h b/src/miner.h
+index 36276dc362c5..d81ec6421cb8 100644
+--- a/src/miner.h
++++ b/src/miner.h
+@@ -71,7 +71,7 @@ struct modifiedentry_iter {
+ // except operating on CTxMemPoolModifiedEntry.
+ // TODO: refactor to avoid duplication of this logic.
+ struct CompareModifiedEntry {
+- bool operator()(const CTxMemPoolModifiedEntry &a, const CTxMemPoolModifiedEntry &b)
++ bool operator()(const CTxMemPoolModifiedEntry &a, const CTxMemPoolModifiedEntry &b) const
+ {
+ double f1 = (double)a.nModFeesWithAncestors * b.nSizeWithAncestors;
+ double f2 = (double)b.nModFeesWithAncestors * a.nSizeWithAncestors;
+@@ -86,7 +86,7 @@ struct CompareModifiedEntry {
+ // This is sufficient to sort an ancestor package in an order that is valid
+ // to appear in a block.
+ struct CompareTxIterByAncestorCount {
+- bool operator()(const CTxMemPool::txiter &a, const CTxMemPool::txiter &b)
++ bool operator()(const CTxMemPool::txiter &a, const CTxMemPool::txiter &b) const
+ {
+ if (a->GetCountWithAncestors() != b->GetCountWithAncestors())
+ return a->GetCountWithAncestors() < b->GetCountWithAncestors();
+diff --git a/src/txmempool.h b/src/txmempool.h
+index 346585ab115e..86a008d7b211 100644
+--- a/src/txmempool.h
++++ b/src/txmempool.h
+@@ -204,7 +204,7 @@ struct mempoolentry_txid
+ class CompareTxMemPoolEntryByDescendantScore
+ {
+ public:
+- bool operator()(const CTxMemPoolEntry& a, const CTxMemPoolEntry& b)
++ bool operator()(const CTxMemPoolEntry& a, const CTxMemPoolEntry& b) const
+ {
+ bool fUseADescendants = UseDescendantScore(a);
+ bool fUseBDescendants = UseDescendantScore(b);
+@@ -226,7 +226,7 @@ class CompareTxMemPoolEntryByDescendantScore
+ }
+
+ // Calculate which score to use for an entry (avoiding division).
+- bool UseDescendantScore(const CTxMemPoolEntry &a)
++ bool UseDescendantScore(const CTxMemPoolEntry &a) const
+ {
+ double f1 = (double)a.GetModifiedFee() * a.GetSizeWithDescendants();
+ double f2 = (double)a.GetModFeesWithDescendants() * a.GetTxSize();
+@@ -241,7 +241,7 @@ class CompareTxMemPoolEntryByDescendantScore
+ class CompareTxMemPoolEntryByScore
+ {
+ public:
+- bool operator()(const CTxMemPoolEntry& a, const CTxMemPoolEntry& b)
++ bool operator()(const CTxMemPoolEntry& a, const CTxMemPoolEntry& b) const
+ {
+ double f1 = (double)a.GetModifiedFee() * b.GetTxSize();
+ double f2 = (double)b.GetModifiedFee() * a.GetTxSize();
+@@ -255,7 +255,7 @@ class CompareTxMemPoolEntryByScore
+ class CompareTxMemPoolEntryByEntryTime
+ {
+ public:
+- bool operator()(const CTxMemPoolEntry& a, const CTxMemPoolEntry& b)
++ bool operator()(const CTxMemPoolEntry& a, const CTxMemPoolEntry& b) const
+ {
+ return a.GetTime() < b.GetTime();
+ }
+@@ -264,7 +264,7 @@ class CompareTxMemPoolEntryByEntryTime
+ class CompareTxMemPoolEntryByAncestorFee
+ {
+ public:
+- bool operator()(const CTxMemPoolEntry& a, const CTxMemPoolEntry& b)
++ bool operator()(const CTxMemPoolEntry& a, const CTxMemPoolEntry& b) const
+ {
+ double aFees = a.GetModFeesWithAncestors();
+ double aSize = a.GetSizeWithAncestors();
diff --git a/network/bro/bro.SlackBuild b/network/bro/bro.SlackBuild
index e6393bb656..95335b8de8 100644
--- a/network/bro/bro.SlackBuild
+++ b/network/bro/bro.SlackBuild
@@ -69,11 +69,18 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+LIBS="-L/usr/lib$LIBDIRSUFFIX/openssl-1.0" \
+CPPFLAGS="/usr/include/openssl-1.0" \
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/opt/$PRGNAM
+# Temporary fix until openssl-1.1 is supported
+sed -i "s/^OPENSSL_CRYPTO_LIBRARY.*/OPENSSL_CRYPTO_LIBRARY:FILEPATH=\/usr\/lib$LIBDIRSUFFIX\/openssl-1.0\/libcrypto.so/" build/CMakeCache.txt
+sed -i "s/^OPENSSL_INCLUDE_DIR.*/OPENSSL_INCLUDE_DIR:PATH=\/usr\/include\/openssl-1.0/" build/CMakeCache.txt
+sed -i "s/^OPENSSL_SSL_LIBRARY.*/OPENSSL_SSL_LIBRARY:FILEPATH=\/usr\/lib$LIBDIRSUFFIX\/openssl-1.0\/libssl.so/" build/CMakeCache.txt
+
make
make install DESTDIR=$PKG
diff --git a/network/bwm-ng/bwm-ng.SlackBuild b/network/bwm-ng/bwm-ng.SlackBuild
index e9eb39918c..80297935f6 100644
--- a/network/bwm-ng/bwm-ng.SlackBuild
+++ b/network/bwm-ng/bwm-ng.SlackBuild
@@ -70,6 +70,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# Thanks opensuse
+patch -p0 < $CWD/fix_gcc7_inline.patch
+
CFLAGS="$SLKCFLAGS" \
./autogen.sh \
--prefix=/usr \
diff --git a/network/bwm-ng/fix_gcc7_inline.patch b/network/bwm-ng/fix_gcc7_inline.patch
new file mode 100644
index 0000000000..dec44a7d66
--- /dev/null
+++ b/network/bwm-ng/fix_gcc7_inline.patch
@@ -0,0 +1,40 @@
+--- src/bwm-ng.c.orig 2017-06-12 03:15:08.731964116 +0200
++++ src/bwm-ng.c 2017-06-12 03:15:21.492001798 +0200
+@@ -26,7 +26,7 @@
+
+ /* handle interrupt signal */
+ void sigint(int sig) FUNCATTR_NORETURN;
+-inline void init(void);
++static inline void init(void);
+
+ /* clear stuff and exit */
+ #ifdef __STDC__
+@@ -98,7 +98,7 @@
+ deinit(0, NULL);
+ }
+
+-inline void init(void) {
++static inline void init(void) {
+ if_count=0;
+ delay=500;
+ #if EXTENDED_STATS
+--- src/options.c.orig 2017-06-12 03:11:33.659353656 +0200
++++ src/options.c 2017-06-12 03:14:36.535870677 +0200
+@@ -34,7 +34,7 @@
+ #if EXTENDED_STATS
+ inline int str2output_type(char *optarg);
+ #endif
+-inline int str2out_method(char *optarg);
++static inline int str2out_method(char *optarg);
+ inline int str2in_method(char *optarg);
+
+ #ifdef CONFIG_FILE
+@@ -87,7 +87,7 @@
+ }
+ #endif
+
+-inline int str2out_method(char *optarg) {
++static inline int str2out_method(char *optarg) {
+ if (optarg) {
+ if (!strcasecmp(optarg,"plain")) return PLAIN_OUT;
+ #ifdef HAVE_CURSES
diff --git a/network/ccnet/ccnet.SlackBuild b/network/ccnet/ccnet.SlackBuild
index a357b3a0f4..c42b6cd7b9 100644
--- a/network/ccnet/ccnet.SlackBuild
+++ b/network/ccnet/ccnet.SlackBuild
@@ -25,7 +25,7 @@
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=ccnet
-VERSION=${VERSION:-4.4.6}
+VERSION=${VERSION:-6.1.8}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -61,9 +61,9 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$VERSION-server
-tar xvf $CWD/$PRGNAM-$VERSION-server.tar.gz
-cd $PRGNAM-$VERSION-server
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -93,7 +93,7 @@ make
make install-strip DESTDIR=$PKG
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a COPYRIGHT HACKING LICENCE.txt README.markdown \
+cp -a HACKING LICENSE.txt README.markdown \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
diff --git a/network/ccnet/ccnet.info b/network/ccnet/ccnet.info
index a796b40262..524485246b 100644
--- a/network/ccnet/ccnet.info
+++ b/network/ccnet/ccnet.info
@@ -1,8 +1,8 @@
PRGNAM="ccnet"
-VERSION="4.4.6"
+VERSION="6.1.8"
HOMEPAGE="http://seafile.com/"
-DOWNLOAD="https://github.com/haiwen/ccnet/archive/v4.4.6-server/ccnet-4.4.6-server.tar.gz"
-MD5SUM="bff067e61d0af043b761027fdd840314"
+DOWNLOAD="https://github.com/haiwen/ccnet/archive/v6.1.8/ccnet-6.1.8.tar.gz"
+MD5SUM="4bab2537f68070d5af226fc80b79c859"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="libsearpc vala libzdb"
diff --git a/network/cherokee/cherokee.SlackBuild b/network/cherokee/cherokee.SlackBuild
index ee57d2b98a..cf4dc146fb 100644
--- a/network/cherokee/cherokee.SlackBuild
+++ b/network/cherokee/cherokee.SlackBuild
@@ -5,13 +5,13 @@
# Written by Pablo Hernan Saro (pablosaro@gmail.com)
PRGNAM=cherokee
-VERSION=${VERSION:-20131105_d91c9c1}
+VERSION=${VERSION:-20180709_9a75e65}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -22,8 +22,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
diff --git a/network/cherokee/cherokee.info b/network/cherokee/cherokee.info
index ea23a977c6..59fddb9c31 100644
--- a/network/cherokee/cherokee.info
+++ b/network/cherokee/cherokee.info
@@ -1,8 +1,8 @@
PRGNAM="cherokee"
-VERSION="20131105_d91c9c1"
+VERSION="20180709_9a75e65"
HOMEPAGE="http://www.cherokee-project.com"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/cherokee-20131105_d91c9c1.tar.xz"
-MD5SUM="845ed7bdb3b038d277607a47288aaec1"
+DOWNLOAD="http://ponce.cc/slackware/sources/repo/cherokee-20180709_9a75e65.tar.xz"
+MD5SUM="2f08188ca102fd6a7ad2ea3cc1c26f84"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/dobbscoin/dobbscoin.SlackBuild b/network/dobbscoin/dobbscoin.SlackBuild
index defc639fc5..a3d5048c13 100644
--- a/network/dobbscoin/dobbscoin.SlackBuild
+++ b/network/dobbscoin/dobbscoin.SlackBuild
@@ -31,7 +31,7 @@ TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -42,8 +42,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -83,6 +83,9 @@ patch -p1 < $CWD/miniupnpc-1.9-api.patch
./autogen.sh
+export CC=clang
+export CXX=clang++
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
diff --git a/network/dovecot/README b/network/dovecot/README
deleted file mode 100644
index f81559ff43..0000000000
--- a/network/dovecot/README
+++ /dev/null
@@ -1,27 +0,0 @@
-dovecot (open source IMAP and POP3 server)
-
-Dovecot is an open source IMAP and POP3 email server for Linux/UNIX-like
-systems, written with security primarily in mind. Dovecot is an excellent
-choice for both small and large installations. It's fast, simple to set
-up, requires no special administration and it uses very little memory.
-
-This script builds dovecot with support for SSL. As such, you must
-have openssl installed - openssl-solibs is not enough in itself to meet
-this requirement.
-
-By default, MySQL database is selected, switch to PostgreSQL with:
-
- DATABASE=pgsql ./dovecot.SlackBuild
-
-See the documentation in /usr/doc/dovecot-*/ to get started.
-
-
-Groupnames and Usernames
-
-You must have both 'dovecot' and 'dovenull' users and groups to run this
-script, for example:
-
- groupadd -g 202 dovecot
- useradd -d /dev/null -s /bin/false -u 202 -g 202 dovecot
- groupadd -g 248 dovenull
- useradd -d /dev/null -s /bin/false -u 248 -g 248 dovenull
diff --git a/network/dovecot/doinst.sh b/network/dovecot/doinst.sh
deleted file mode 100644
index 03c21fc848..0000000000
--- a/network/dovecot/doinst.sh
+++ /dev/null
@@ -1,26 +0,0 @@
-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...
-}
-
-preserve_perms() {
- NEW="$1"
- OLD="$(dirname $NEW)/$(basename $NEW .new)"
- if [ -e $OLD ]; then
- cp -a $OLD ${NEW}.incoming
- cat $NEW > ${NEW}.incoming
- mv ${NEW}.incoming $NEW
- fi
- config $NEW
-}
-
-preserve_perms etc/rc.d/rc.dovecot.new
-
diff --git a/network/dovecot/dovecot.SlackBuild b/network/dovecot/dovecot.SlackBuild
deleted file mode 100644
index a69de55eb3..0000000000
--- a/network/dovecot/dovecot.SlackBuild
+++ /dev/null
@@ -1,133 +0,0 @@
-#!/bin/sh
-
-# Copyright 2006, 2010 Alan Hicks, Lizella, GA
-# Copyright 2013, 2014, 2015, 2016, 2017, 2018, 2019 Mario Preksavec, Zagreb, Croatia
-# 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.
-
-PRGNAM=dovecot
-VERSION=${VERSION:-2.3.4}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-# Build with MySQL database support by default
-case $DATABASE in
- pgsql) : ;;
- *) DATABASE=mysql ;;
-esac
-
-bailout() {
- echo " You must have both dovecot and dovenull users and groups:"
- echo " # groupadd -g 202 dovecot"
- echo " # useradd -d /dev/null -s /bin/false -u 202 -g 202 dovecot"
- echo " # groupadd -g 248 dovenull"
- echo " # useradd -d /dev/null -s /bin/false -u 248 -g 248 dovenull"
- exit 1
-}
-
-# Bail if user isn't valid on your system
-if ! getent group dovecot 1>/dev/null 2>/dev/null ; then
- bailout
-elif ! getent passwd dovecot 1>/dev/null 2>/dev/null ; then
- bailout
-fi
-
-set -e
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-# Add -ldl to LDFLAGS for sqlite
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-LDFLAGS="-ldl" \
-./configure \
- --prefix=/usr \
- --sysconfdir=/etc \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --localstatedir=/var \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --mandir=/usr/man \
- --with-notify=inotify \
- --without-pam \
- --with-ldap=plugin \
- --with-lucene \
- --with-$DATABASE \
- --with-sqlite \
- --with-libcap \
- --disable-static \
- --build=$ARCH-slackware-linux
-
-make
-make install-strip DESTDIR=$PKG
-
-mkdir -p $PKG/etc/rc.d
-cat $CWD/rc.dovecot > $PKG/etc/rc.d/rc.dovecot.new
-chmod 0755 $PKG/etc/rc.d/rc.dovecot.new
-
-gzip -9 $PKG/usr/man/man?/*.?
-
-cp -a \
- AUTHORS COPYING* ChangeLog NEWS README TODO \
- $PKG/usr/doc/$PRGNAM-$VERSION/
-cat $CWD/dovecot.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/dovecot.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-cat $CWD/doinst.sh > $PKG/install/doinst.sh
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/network/dovecot/dovecot.info b/network/dovecot/dovecot.info
deleted file mode 100644
index eb0eb93f65..0000000000
--- a/network/dovecot/dovecot.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="dovecot"
-VERSION="2.3.4"
-HOMEPAGE="http://www.dovecot.org/"
-DOWNLOAD="http://www.dovecot.org/releases/2.3/dovecot-2.3.4.tar.gz"
-MD5SUM="00eebc835a8793e8a167a616a78f4753"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Mario Preksavec"
-EMAIL="mario at slackware dot hr"
diff --git a/network/dovecot/rc.dovecot b/network/dovecot/rc.dovecot
deleted file mode 100644
index 8d68312ab7..0000000000
--- a/network/dovecot/rc.dovecot
+++ /dev/null
@@ -1,55 +0,0 @@
-#!/bin/bash
-
-# Copyright 2006, Alan Hicks, Lizella, GA
-# 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.
-
-dovecot_start()
-{
- echo "Firing up dovecot."
- dovecot
-}
-
-dovecot_stop()
-{
- echo "Shutting down dovecot."
- killall dovecot
-}
-
-dovecot_restart()
-{
- dovecot_stop
- sleep 3 # Give it time to clean-up if it needs it.
- dovecot_start
-}
-
-case $1 in
-'start')
- dovecot_start
- ;;
-'stop')
- dovecot_stop
- ;;
-'restart')
- dovecot_restart
- ;;
-*)
- echo "usage $0 start|stop|restart"
-esac
-
diff --git a/network/dovecot/slack-desc b/network/dovecot/slack-desc
deleted file mode 100644
index 29a273bade..0000000000
--- a/network/dovecot/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-dovecot: dovecot (open source IMAP and POP3 server)
-dovecot:
-dovecot: Dovecot is an open source IMAP and POP3 server for Linux/UNIX-like
-dovecot: systems, written with security primarily in mind. Although it's
-dovecot: written in C, it uses several coding techniques to avoid most of the
-dovecot: common pitfalls.
-dovecot: Dovecot can work with standard mbox and Maildir formats and it's
-dovecot: fully compatible with UW-IMAP and Courier IMAP servers'
-dovecot: implementation of them, as well as mail clients accessing the
-dovecot: mailboxes directly.
-dovecot:
diff --git a/network/dsniff/24_Fix-OpenSSL1.1.0-Build.patch b/network/dsniff/24_Fix-OpenSSL1.1.0-Build.patch
new file mode 100644
index 0000000000..db7739ee34
--- /dev/null
+++ b/network/dsniff/24_Fix-OpenSSL1.1.0-Build.patch
@@ -0,0 +1,202 @@
+Description: Fix build with OpenSSL 1.1.0
+Author: Christoph Biedl <debian.axhn@manchmal.in-ulm.de>
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+
+
+--- a/ssh.c
++++ b/ssh.c
+@@ -234,7 +234,10 @@
+ u_char *p, cipher, cookie[8], msg[1024];
+ u_int32_t num;
+ int i;
+-
++
++ const BIGNUM *servkey_e, *servkey_n;
++ const BIGNUM *hostkey_e, *hostkey_n;
++
+ /* Generate anti-spoofing cookie. */
+ RAND_bytes(cookie, sizeof(cookie));
+
+@@ -243,11 +246,13 @@
+ *p++ = SSH_SMSG_PUBLIC_KEY; /* type */
+ memcpy(p, cookie, 8); p += 8; /* cookie */
+ num = 768; PUTLONG(num, p); /* servkey bits */
+- put_bn(ssh->ctx->servkey->e, &p); /* servkey exponent */
+- put_bn(ssh->ctx->servkey->n, &p); /* servkey modulus */
++ RSA_get0_key(ssh->ctx->servkey, &servkey_n, &servkey_e, NULL);
++ put_bn(servkey_e, &p); /* servkey exponent */
++ put_bn(servkey_n, &p); /* servkey modulus */
+ num = 1024; PUTLONG(num, p); /* hostkey bits */
+- put_bn(ssh->ctx->hostkey->e, &p); /* hostkey exponent */
+- put_bn(ssh->ctx->hostkey->n, &p); /* hostkey modulus */
++ RSA_get0_key(ssh->ctx->hostkey, &hostkey_n, &hostkey_e, NULL);
++ put_bn(hostkey_e, &p); /* hostkey exponent */
++ put_bn(hostkey_n, &p); /* hostkey modulus */
+ num = 0; PUTLONG(num, p); /* protocol flags */
+ num = ssh->ctx->encmask; PUTLONG(num, p); /* ciphers */
+ num = ssh->ctx->authmask; PUTLONG(num, p); /* authmask */
+@@ -298,7 +303,7 @@
+ SKIP(p, i, 4);
+
+ /* Decrypt session key. */
+- if (BN_cmp(ssh->ctx->servkey->n, ssh->ctx->hostkey->n) > 0) {
++ if (BN_cmp(servkey_n, hostkey_n) > 0) {
+ rsa_private_decrypt(enckey, enckey, ssh->ctx->servkey);
+ rsa_private_decrypt(enckey, enckey, ssh->ctx->hostkey);
+ }
+@@ -318,8 +323,8 @@
+ BN_clear_free(enckey);
+
+ /* Derive real session key using session id. */
+- if ((p = ssh_session_id(cookie, ssh->ctx->hostkey->n,
+- ssh->ctx->servkey->n)) == NULL) {
++ if ((p = ssh_session_id(cookie, hostkey_n,
++ servkey_n)) == NULL) {
+ warn("ssh_session_id");
+ return (-1);
+ }
+@@ -328,10 +333,8 @@
+ }
+ /* Set cipher. */
+ if (cipher == SSH_CIPHER_3DES) {
+- ssh->estate = des3_init(ssh->sesskey, sizeof(ssh->sesskey));
+- ssh->dstate = des3_init(ssh->sesskey, sizeof(ssh->sesskey));
+- ssh->encrypt = des3_encrypt;
+- ssh->decrypt = des3_decrypt;
++ warnx("cipher 3des no longer supported");
++ return (-1);
+ }
+ else if (cipher == SSH_CIPHER_BLOWFISH) {
+ ssh->estate = blowfish_init(ssh->sesskey,sizeof(ssh->sesskey));
+@@ -357,7 +360,10 @@
+ u_char *p, cipher, cookie[8], msg[1024];
+ u_int32_t num;
+ int i;
+-
++
++ BIGNUM *servkey_n, *servkey_e;
++ BIGNUM *hostkey_n, *hostkey_e;
++
+ /* Get public key. */
+ if ((i = SSH_recv(ssh, pkt, sizeof(pkt))) <= 0) {
+ warn("SSH_recv");
+@@ -379,21 +385,23 @@
+
+ /* Get servkey. */
+ ssh->ctx->servkey = RSA_new();
+- ssh->ctx->servkey->n = BN_new();
+- ssh->ctx->servkey->e = BN_new();
++ servkey_n = BN_new();
++ servkey_e = BN_new();
++ RSA_set0_key(ssh->ctx->servkey, servkey_n, servkey_e, NULL);
+
+ SKIP(p, i, 4);
+- get_bn(ssh->ctx->servkey->e, &p, &i);
+- get_bn(ssh->ctx->servkey->n, &p, &i);
++ get_bn(servkey_e, &p, &i);
++ get_bn(servkey_n, &p, &i);
+
+ /* Get hostkey. */
+ ssh->ctx->hostkey = RSA_new();
+- ssh->ctx->hostkey->n = BN_new();
+- ssh->ctx->hostkey->e = BN_new();
++ hostkey_n = BN_new();
++ hostkey_e = BN_new();
++ RSA_set0_key(ssh->ctx->hostkey, hostkey_n, hostkey_e, NULL);
+
+ SKIP(p, i, 4);
+- get_bn(ssh->ctx->hostkey->e, &p, &i);
+- get_bn(ssh->ctx->hostkey->n, &p, &i);
++ get_bn(hostkey_e, &p, &i);
++ get_bn(hostkey_n, &p, &i);
+
+ /* Get cipher, auth masks. */
+ SKIP(p, i, 4);
+@@ -405,8 +413,8 @@
+ RAND_bytes(ssh->sesskey, sizeof(ssh->sesskey));
+
+ /* Obfuscate with session id. */
+- if ((p = ssh_session_id(cookie, ssh->ctx->hostkey->n,
+- ssh->ctx->servkey->n)) == NULL) {
++ if ((p = ssh_session_id(cookie, hostkey_n,
++ servkey_n)) == NULL) {
+ warn("ssh_session_id");
+ return (-1);
+ }
+@@ -422,7 +430,7 @@
+ else BN_add_word(bn, ssh->sesskey[i]);
+ }
+ /* Encrypt session key. */
+- if (BN_cmp(ssh->ctx->servkey->n, ssh->ctx->hostkey->n) < 0) {
++ if (BN_cmp(servkey_n, hostkey_n) < 0) {
+ rsa_public_encrypt(bn, bn, ssh->ctx->servkey);
+ rsa_public_encrypt(bn, bn, ssh->ctx->hostkey);
+ }
+@@ -470,10 +478,8 @@
+ ssh->decrypt = blowfish_decrypt;
+ }
+ else if (cipher == SSH_CIPHER_3DES) {
+- ssh->estate = des3_init(ssh->sesskey, sizeof(ssh->sesskey));
+- ssh->dstate = des3_init(ssh->sesskey, sizeof(ssh->sesskey));
+- ssh->encrypt = des3_encrypt;
+- ssh->decrypt = des3_decrypt;
++ warnx("cipher 3des no longer supported");
++ return (-1);
+ }
+ /* Get server response. */
+ if ((i = SSH_recv(ssh, pkt, sizeof(pkt))) <= 0) {
+--- a/sshcrypto.c
++++ b/sshcrypto.c
+@@ -28,10 +28,12 @@
+ u_char iv[8];
+ };
+
++#if 0
+ struct des3_state {
+ des_key_schedule k1, k2, k3;
+ des_cblock iv1, iv2, iv3;
+ };
++#endif
+
+ void
+ rsa_public_encrypt(BIGNUM *out, BIGNUM *in, RSA *key)
+@@ -39,10 +41,12 @@
+ u_char *inbuf, *outbuf;
+ int len, ilen, olen;
+
+- if (BN_num_bits(key->e) < 2 || !BN_is_odd(key->e))
++ const BIGNUM *n, *e;
++ RSA_get0_key(key, &n, &e, NULL);
++ if (BN_num_bits(e) < 2 || !BN_is_odd(e))
+ errx(1, "rsa_public_encrypt() exponent too small or not odd");
+
+- olen = BN_num_bytes(key->n);
++ olen = BN_num_bytes(n);
+ outbuf = malloc(olen);
+
+ ilen = BN_num_bytes(in);
+@@ -71,7 +75,9 @@
+ u_char *inbuf, *outbuf;
+ int len, ilen, olen;
+
+- olen = BN_num_bytes(key->n);
++ const BIGNUM *n;
++ RSA_get0_key(key, &n, NULL, NULL);
++ olen = BN_num_bytes(n);
+ outbuf = malloc(olen);
+
+ ilen = BN_num_bytes(in);
+@@ -146,6 +152,7 @@
+ swap_bytes(dst, dst, len);
+ }
+
++#if 0
+ /* XXX - SSH1's weirdo 3DES... */
+ void *
+ des3_init(u_char *sesskey, int len)
+@@ -194,3 +201,4 @@
+ des_ncbc_encrypt(dst, dst, len, dstate->k2, &dstate->iv2, DES_ENCRYPT);
+ des_ncbc_encrypt(dst, dst, len, dstate->k1, &dstate->iv1, DES_DECRYPT);
+ }
++#endif
diff --git a/network/dsniff/dsniff.SlackBuild b/network/dsniff/dsniff.SlackBuild
index 3fe080fd8b..e1d017c37b 100644
--- a/network/dsniff/dsniff.SlackBuild
+++ b/network/dsniff/dsniff.SlackBuild
@@ -73,6 +73,8 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+patch -p1 < $CWD/24_Fix-OpenSSL1.1.0-Build.patch
+
zcat $CWD/dsniff_2.4b1+debian-18.diff.gz | patch -p1
for i in debian/patches/*.dpatch; do
patch -N < "$i"
diff --git a/network/emacs-w3m/emacs-w3m.SlackBuild b/network/emacs-w3m/emacs-w3m.SlackBuild
index 622024e9ed..baca2f789c 100644
--- a/network/emacs-w3m/emacs-w3m.SlackBuild
+++ b/network/emacs-w3m/emacs-w3m.SlackBuild
@@ -5,7 +5,7 @@
# Written by Felix Pfeifer (pfeifer[dot]felix[at]googlemail[dot]com
PRGNAM=emacs-w3m
-VERSION=${VERSION:-cvs_1.4.400_0.20100725}
+VERSION=${VERSION:-cvs_1.4.569_0.20170110}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -41,9 +41,9 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM
-tar xvf $CWD/w3m-el-snapshot_1.4.400+0.20100725.orig.tar.gz
-cd $PRGNAM
+rm -rf w3m-el-snapshot-1.4.569+0.20170110.orig
+tar xvf $CWD/w3m-el-snapshot_1.4.569+0.20170110.orig.tar.gz
+cd w3m-el-snapshot-1.4.569+0.20170110.orig
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
diff --git a/network/emacs-w3m/emacs-w3m.info b/network/emacs-w3m/emacs-w3m.info
index 92b7823263..10349a11bc 100644
--- a/network/emacs-w3m/emacs-w3m.info
+++ b/network/emacs-w3m/emacs-w3m.info
@@ -1,8 +1,8 @@
PRGNAM="emacs-w3m"
-VERSION="cvs_1.4.400_0.20100725"
+VERSION="cvs_1.4.569_0.20170110"
HOMEPAGE="http://emacs-w3m.namazu.org/"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/w3m-el-snapshot_1.4.400+0.20100725.orig.tar.gz"
-MD5SUM="0c5da2a83ea6502bcf7b589b8c4daed8"
+DOWNLOAD="http://ponce.cc/slackware/sources/repo/w3m-el-snapshot_1.4.569+0.20170110.orig.tar.gz"
+MD5SUM="f8bb143de0b009038d6fc73295af40c7"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="w3m"
diff --git a/network/ettercap/ettercap.SlackBuild b/network/ettercap/ettercap.SlackBuild
index f841ef5396..07cb9ca2de 100644
--- a/network/ettercap/ettercap.SlackBuild
+++ b/network/ettercap/ettercap.SlackBuild
@@ -72,6 +72,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# apply some patches from archlinux
+for i in $CWD/patches/*; do patch -p1 < $i ; done
+
mkdir -p build
cd build
cmake \
diff --git a/network/ettercap/patches/0001-First-draft-of-openssl-1.1-compatibility-layer-from-.patch b/network/ettercap/patches/0001-First-draft-of-openssl-1.1-compatibility-layer-from-.patch
new file mode 100644
index 0000000000..effc04ec19
--- /dev/null
+++ b/network/ettercap/patches/0001-First-draft-of-openssl-1.1-compatibility-layer-from-.patch
@@ -0,0 +1,257 @@
+From f0d63b27c82df2ad5f7ada6310727d841b43fbcc Mon Sep 17 00:00:00 2001
+From: Gianfranco Costamagna <costamagnagianfranco@yahoo.it>
+Date: Mon, 27 Jun 2016 12:41:33 +0200
+Subject: [PATCH] First draft of openssl 1.1 compatibility layer (from
+ https://github.com/curl/curl/commit/cfe16c22d7891a1f65ea8cd4c5352504a2afbddc)
+ Closes: #739
+
+---
+ src/dissectors/ec_ssh.c | 93 ++++++++++++++++++++++++++++++++++++++++++++++++-
+ src/ec_sslwrap.c | 14 ++++++++
+ 2 files changed, 106 insertions(+), 1 deletion(-)
+
+diff --git a/src/dissectors/ec_ssh.c b/src/dissectors/ec_ssh.c
+index f89200dc..26c86491 100644
+--- a/src/dissectors/ec_ssh.c
++++ b/src/dissectors/ec_ssh.c
+@@ -36,6 +36,10 @@
+ #include <openssl/md5.h>
+ #include <zlib.h>
+
++#if (OPENSSL_VERSION_NUMBER >= 0x10100000L)
++#define HAVE_OPAQUE_RSA_DSA_DH 1 /* since 1.1.0 -pre5 */
++#endif
++
+ #define SMSG_PUBLIC_KEY 2
+ #define CMSG_SESSION_KEY 3
+ #define CMSG_USER 4
+@@ -138,6 +142,11 @@ FUNC_DECODER(dissector_ssh)
+ char tmp[MAX_ASCII_ADDR_LEN];
+ u_int32 ssh_len, ssh_mod;
+ u_char ssh_packet_type, *ptr, *key_to_put;
++#ifdef HAVE_OPAQUE_RSA_DSA_DH
++ BIGNUM *h_n, *s_n, *m_h_n, *m_s_n;
++ BIGNUM *h_e, *s_e, *m_h_e, *m_s_e;
++ BIGNUM *h_d, *s_d, *m_h_d, *m_s_d;
++#endif
+
+ /* don't complain about unused var */
+ (void) DECODE_DATA;
+@@ -383,12 +392,25 @@ FUNC_DECODER(dissector_ssh)
+ if (session_data->ptrkey == NULL) {
+ /* Initialize RSA key structures (other fileds are set to 0) */
+ session_data->serverkey = RSA_new();
++#ifdef HAVE_OPAQUE_RSA_DSA_DH
++ s_n = BN_new();
++ s_e = BN_new();
++ RSA_set0_key(session_data->serverkey, s_n, s_e, s_d);
++#else
+ session_data->serverkey->n = BN_new();
+ session_data->serverkey->e = BN_new();
++#endif
+
+ session_data->hostkey = RSA_new();
++
++#ifdef HAVE_OPAQUE_RSA_DSA_DH
++ h_n = BN_new();
++ h_e = BN_new();
++ RSA_set0_key(session_data->hostkey, h_n, h_e, h_d);
++#else
+ session_data->hostkey->n = BN_new();
+ session_data->hostkey->e = BN_new();
++#endif
+
+ /* Get the RSA Key from the packet */
+ NS_GET32(server_mod,ptr);
+@@ -396,19 +418,37 @@ FUNC_DECODER(dissector_ssh)
+ DEBUG_MSG("Dissector_ssh Bougs Server_Mod");
+ return NULL;
+ }
++#ifdef HAVE_OPAQUE_RSA_DSA_DH
++ RSA_get0_key(session_data->serverkey, &s_n, &s_e, &s_d);
++ get_bn(s_e, &ptr);
++ get_bn(s_n, &ptr);
++#else
+ get_bn(session_data->serverkey->e, &ptr);
+ get_bn(session_data->serverkey->n, &ptr);
++#endif
+
+ NS_GET32(host_mod,ptr);
+ if (ptr + (host_mod/8) > PACKET->DATA.data + PACKET->DATA.len) {
+ DEBUG_MSG("Dissector_ssh Bougs Host_Mod");
+ return NULL;
+ }
++
++#ifdef HAVE_OPAQUE_RSA_DSA_DH
++ RSA_get0_key(session_data->hostkey, &h_n, &h_e, &h_d);
++ get_bn(h_e, &ptr);
++ get_bn(h_n, &ptr);
++#else
+ get_bn(session_data->hostkey->e, &ptr);
+ get_bn(session_data->hostkey->n, &ptr);
++#endif
+
++#ifdef HAVE_OPAQUE_RSA_DSA_DH
++ server_exp = BN_get_word(s_e);
++ host_exp = BN_get_word(h_e);
++#else
+ server_exp = *(session_data->serverkey->e->d);
+ host_exp = *(session_data->hostkey->e->d);
++#endif
+
+ /* Check if we already have a suitable RSA key to substitute */
+ index_ssl = &ssh_conn_key;
+@@ -424,7 +464,7 @@ FUNC_DECODER(dissector_ssh)
+ SAFE_CALLOC(*index_ssl, 1, sizeof(ssh_my_key));
+
+ /* Generate the new key */
+- (*index_ssl)->myserverkey = (RSA *)RSA_generate_key(server_mod, server_exp, NULL, NULL);
++ (*index_ssl)->myserverkey = (RSA *)RSA_generate_key_ex(server_mod, server_exp, NULL, NULL);
+ (*index_ssl)->myhostkey = (RSA *)RSA_generate_key(host_mod, host_exp, NULL, NULL);
+ (*index_ssl)->server_mod = server_mod;
+ (*index_ssl)->host_mod = host_mod;
+@@ -443,11 +483,25 @@ FUNC_DECODER(dissector_ssh)
+
+ /* Put our RSA key in the packet */
+ key_to_put+=4;
++
++#ifdef HAVE_OPAQUE_RSA_DSA_DH
++ RSA_get0_key(session_data->ptrkey->myserverkey, &m_s_n, &m_s_e, &m_s_d);
++ put_bn(m_s_e, &key_to_put);
++ put_bn(m_s_n, &key_to_put);
++#else
+ put_bn(session_data->ptrkey->myserverkey->e, &key_to_put);
+ put_bn(session_data->ptrkey->myserverkey->n, &key_to_put);
++#endif
+ key_to_put+=4;
++
++#ifdef HAVE_OPAQUE_RSA_DSA_DH
++ RSA_get0_key(session_data->ptrkey->myhostkey, &m_h_n, &m_h_e, &m_h_d);
++ put_bn(m_h_e, &key_to_put);
++ put_bn(m_h_n, &key_to_put);
++#else
+ put_bn(session_data->ptrkey->myhostkey->e, &key_to_put);
+ put_bn(session_data->ptrkey->myhostkey->n, &key_to_put);
++#endif
+
+ /* Recalculate SSH crc */
+ *(u_int32 *)(PACKET->DATA.data + PACKET->DATA.len - 4) = htonl(CRC_checksum(PACKET->DATA.data+4, PACKET->DATA.len-8, CRC_INIT_ZERO));
+@@ -482,19 +536,34 @@ FUNC_DECODER(dissector_ssh)
+ key_to_put = ptr;
+
+ /* Calculate real session id and our fake session id */
++#ifdef HAVE_OPAQUE_RSA_DSA_DH
++ temp_session_id = ssh_session_id(cookie, h_n, s_n);
++#else
+ temp_session_id = ssh_session_id(cookie, session_data->hostkey->n, session_data->serverkey->n);
++#endif
+ if (temp_session_id)
+ memcpy(session_id1, temp_session_id, 16);
++
++#ifdef HAVE_OPAQUE_RSA_DSA_DH
++ temp_session_id=ssh_session_id(cookie, m_h_n, m_s_n);
++#else
+ temp_session_id=ssh_session_id(cookie, session_data->ptrkey->myhostkey->n, session_data->ptrkey->myserverkey->n);
++#endif
++
+ if (temp_session_id)
+ memcpy(session_id2, temp_session_id, 16);
+
+ /* Get the session key */
+ enckey = BN_new();
++
+ get_bn(enckey, &ptr);
+
+ /* Decrypt session key */
++#ifdef HAVE_OPAQUE_RSA_DSA_DH
++ if (BN_cmp(m_s_n, m_h_n) > 0) {
++#else
+ if (BN_cmp(session_data->ptrkey->myserverkey->n, session_data->ptrkey->myhostkey->n) > 0) {
++#endif
+ rsa_private_decrypt(enckey, enckey, session_data->ptrkey->myserverkey);
+ rsa_private_decrypt(enckey, enckey, session_data->ptrkey->myhostkey);
+ } else {
+@@ -534,7 +603,11 @@ FUNC_DECODER(dissector_ssh)
+ BN_add_word(bn, sesskey[i]);
+ }
+
++#ifdef HAVE_OPAQUE_RSA_DSA_DH
++ if (BN_cmp(s_n, h_n) < 0) {
++#else
+ if (BN_cmp(session_data->serverkey->n, session_data->hostkey->n) < 0) {
++#endif
+ rsa_public_encrypt(bn, bn, session_data->serverkey);
+ rsa_public_encrypt(bn, bn, session_data->hostkey);
+ } else {
+@@ -716,7 +789,16 @@ static void rsa_public_encrypt(BIGNUM *out, BIGNUM *in, RSA *key)
+ u_char *inbuf, *outbuf;
+ int32 len, ilen, olen;
+
++#ifdef HAVE_OPAQUE_RSA_DSA_DH
++ BIGNUM *n;
++ BIGNUM *e;
++ BIGNUM *d;
++ RSA_get0_key(key, &n, &e, &d);
++ olen = BN_num_bytes(n);
++#else
+ olen = BN_num_bytes(key->n);
++#endif
++
+ outbuf = malloc(olen);
+ if (outbuf == NULL) /* oops, couldn't allocate memory */
+ return;
+@@ -744,7 +826,16 @@ static void rsa_private_decrypt(BIGNUM *out, BIGNUM *in, RSA *key)
+ u_char *inbuf, *outbuf;
+ int32 len, ilen, olen;
+
++#ifdef HAVE_OPAQUE_RSA_DSA_DH
++ BIGNUM *n;
++ BIGNUM *e;
++ BIGNUM *d;
++ RSA_get0_key(key, &n, &e, &d);
++ olen = BN_num_bytes(n);
++#else
+ olen = BN_num_bytes(key->n);
++#endif
++
+ outbuf = malloc(olen);
+ if (outbuf == NULL) /* oops, couldn't allocate memory */
+ return;
+diff --git a/src/ec_sslwrap.c b/src/ec_sslwrap.c
+index c6c74421..6369d251 100644
+--- a/src/ec_sslwrap.c
++++ b/src/ec_sslwrap.c
+@@ -56,6 +56,10 @@
+ #define OPENSSL_NO_KRB5 1
+ #include <openssl/ssl.h>
+
++#if (OPENSSL_VERSION_NUMBER >= 0x10100000L)
++#define HAVE_OPAQUE_RSA_DSA_DH 1 /* since 1.1.0 -pre5 */
++#endif
++
+ #define BREAK_ON_ERROR(x,y,z) do { \
+ if (x == -E_INVALID) { \
+ SAFE_FREE(z.DATA.disp_data); \
+@@ -1102,9 +1106,19 @@ static X509 *sslw_create_selfsigned(X509 *server_cert)
+ index = X509_get_ext_by_NID(server_cert, NID_authority_key_identifier, -1);
+ if (index >=0) {
+ ext = X509_get_ext(server_cert, index);
++#ifdef HAVE_OPAQUE_RSA_DSA_DH
++ ASN1_OCTET_STRING* data;
++ data = X509_EXTENSION_get_data (ext);
++#endif
+ if (ext) {
++#ifdef HAVE_OPAQUE_RSA_DSA_DH
++ data->data[7] = 0xe7;
++ data->data[8] = 0x7e;
++ X509_EXTENSION_set_data (ext, data);
++#else
+ ext->value->data[7] = 0xe7;
+ ext->value->data[8] = 0x7e;
++#endif
+ X509_add_ext(out_cert, ext, -1);
+ }
+ }
+--
+2.11.1
+
diff --git a/network/ettercap/patches/CVE-2017-6430.patch b/network/ettercap/patches/CVE-2017-6430.patch
new file mode 100644
index 0000000000..67483dcc02
--- /dev/null
+++ b/network/ettercap/patches/CVE-2017-6430.patch
@@ -0,0 +1,68 @@
+From 4ad7f85dc01202e363659aa473c99470b3f4e1f4 Mon Sep 17 00:00:00 2001
+From: Gianfranco Costamagna <costamagnagianfranco@yahoo.it>
+Date: Tue, 7 Mar 2017 22:05:31 +0100
+Subject: [PATCH] Fix issue #782
+
+---
+ utils/etterfilter/ef_compiler.c | 4 +++-
+ utils/etterfilter/ef_main.c | 10 +++++++---
+ utils/etterfilter/ef_output.c | 3 +++
+ 3 files changed, 13 insertions(+), 4 deletions(-)
+
+diff --git a/utils/etterfilter/ef_compiler.c b/utils/etterfilter/ef_compiler.c
+index db876636e..ddb73bd30 100644
+--- a/utils/etterfilter/ef_compiler.c
++++ b/utils/etterfilter/ef_compiler.c
+@@ -239,7 +239,9 @@ size_t compile_tree(struct filter_op **fop)
+ struct filter_op *array = NULL;
+ struct unfold_elm *ue;
+
+- BUG_IF(tree_root == NULL);
++ // invalid file
++ if (tree_root == NULL)
++ return 0;
+
+ fprintf(stdout, " Unfolding the meta-tree ");
+ fflush(stdout);
+diff --git a/utils/etterfilter/ef_main.c b/utils/etterfilter/ef_main.c
+index ae4591344..431084b91 100644
+--- a/utils/etterfilter/ef_main.c
++++ b/utils/etterfilter/ef_main.c
+@@ -39,7 +39,7 @@ struct globals *gbls;
+
+ int main(int argc, char *argv[])
+ {
+-
++ int ret_value = 0;
+ globals_alloc();
+ /* etterfilter copyright */
+ fprintf(stdout, "\n" EC_COLOR_BOLD "%s %s" EC_COLOR_END " copyright %s %s\n\n",
+@@ -84,8 +84,12 @@ int main(int argc, char *argv[])
+ fprintf(stdout, "\n\nThe script contains errors...\n\n");
+
+ /* write to file */
+- if (write_output() != E_SUCCESS)
+- FATAL_ERROR("Cannot write output file (%s)", GBL_OPTIONS->output_file);
++ ret_value = write_output();
++ if (ret_value == -E_NOTHANDLED)
++ FATAL_ERROR("Cannot write output file (%s): the filter is not correctly handled.", GBL_OPTIONS->output_file);
++ else if (ret_value == -E_INVALID)
++ FATAL_ERROR("Cannot write output file (%s): the filter format is not correct. ", GBL_OPTIONS->output_file);
++
+ globals_free();
+ return 0;
+ }
+diff --git a/utils/etterfilter/ef_output.c b/utils/etterfilter/ef_output.c
+index 5ae591904..fcf19f010 100644
+--- a/utils/etterfilter/ef_output.c
++++ b/utils/etterfilter/ef_output.c
+@@ -51,6 +51,9 @@ int write_output(void)
+ if (fop == NULL)
+ return -E_NOTHANDLED;
+
++ if (ninst == 0)
++ return -E_INVALID;
++
+ /* create the file */
+ fd = open(GBL_OPTIONS->output_file, O_CREAT | O_RDWR | O_TRUNC | O_BINARY, 0644);
+ ON_ERROR(fd, -1, "Can't create file %s", GBL_OPTIONS->output_file);
diff --git a/network/ettercap/patches/CVE-2017-8366.patch b/network/ettercap/patches/CVE-2017-8366.patch
new file mode 100644
index 0000000000..1897e81d79
--- /dev/null
+++ b/network/ettercap/patches/CVE-2017-8366.patch
@@ -0,0 +1,258 @@
+From d14d2558da14a33abf7baab28957488a75d16af1 Mon Sep 17 00:00:00 2001
+From: Alexander Koeppe <format_c@online.de>
+Date: Thu, 1 Jun 2017 08:56:23 +0200
+Subject: [PATCH 1/4] Add ASAN compiler flags in DEBUG build type
+
+---
+ CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 90050590f..8e823669c 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -126,7 +126,7 @@ if(NOT DISABLE_RPATH)
+ set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
+ set(CMAKE_MACOSX_RPATH 1)
+ endif(NOT DISABLE_RPATH)
+-set(CMAKE_C_FLAGS_DEBUG "-O0 -ggdb3 -DDEBUG -Wall -Wno-pointer-sign -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security -Wextra -Wredundant-decls" CACHE STRING "" FORCE)
++set(CMAKE_C_FLAGS_DEBUG "-O0 -ggdb3 -DDEBUG -Wall -Wno-pointer-sign -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security -Wextra -Wredundant-decls -fsanitize=address -fno-omit-frame-pointer" CACHE STRING "" FORCE)
+ set(CMAKE_C_FLAGS_RELEASE "-O2 -w -D_FORTIFY_SOURCE=2" CACHE STRING "" FORCE)
+
+ if(OS_DARWIN)
+
+From 044051d302da73e16b0577eb797cd42affba27e5 Mon Sep 17 00:00:00 2001
+From: Alexander Koeppe <format_c@online.de>
+Date: Thu, 1 Jun 2017 08:56:57 +0200
+Subject: [PATCH 2/4] fix buffer over- / underflow conditions
+
+---
+ include/ec_strings.h | 2 +-
+ src/ec_strings.c | 25 +++++++++++++++----------
+ 2 files changed, 16 insertions(+), 11 deletions(-)
+
+diff --git a/include/ec_strings.h b/include/ec_strings.h
+index f791739da..9ad245ef3 100644
+--- a/include/ec_strings.h
++++ b/include/ec_strings.h
+@@ -43,7 +43,7 @@
+
+ EC_API_EXTERN int match_pattern(const char *s, const char *pattern);
+ EC_API_EXTERN int base64_decode(char *bufplain, const char *bufcoded);
+-EC_API_EXTERN int strescape(char *dst, char *src);
++EC_API_EXTERN int strescape(char *dst, char *src, size_t len);
+ EC_API_EXTERN int str_replace(char **text, const char *s, const char *d);
+ EC_API_EXTERN size_t strlen_utf8(const char *s);
+ EC_API_EXTERN char * ec_strtok(char *s, const char *delim, char **ptrptr);
+diff --git a/src/ec_strings.c b/src/ec_strings.c
+index 53583851a..21b71926c 100644
+--- a/src/ec_strings.c
++++ b/src/ec_strings.c
+@@ -167,13 +167,14 @@ static int hextoint(int c)
+ /*
+ * convert the escaped string into a binary one
+ */
+-int strescape(char *dst, char *src)
++int strescape(char *dst, char *src, size_t len)
+ {
+ char *olddst = dst;
++ char *oldsrc = src;
+ int c;
+ int val;
+
+- while ((c = *src++) != '\0') {
++ while ((c = *src++) != '\0' && (size_t)(src - oldsrc) <= len) {
+ if (c == '\\') {
+ switch ((c = *src++)) {
+ case '\0':
+@@ -218,9 +219,11 @@ int strescape(char *dst, char *src)
+ if (c >= '0' && c <= '7')
+ val = (val << 3) | (c - '0');
+ else
+- --src;
++ if (src > oldsrc) /* protect against buffer underflow */
++ --src;
+ } else
+- --src;
++ if (src > oldsrc) /* protect against buffer underflow */
++ --src;
+ *dst++ = (char) val;
+ break;
+
+@@ -232,15 +235,17 @@ int strescape(char *dst, char *src)
+ c = hextoint(*src++);
+ if (c >= 0)
+ val = (val << 4) + c;
+- else
+- --src;
+- } else
+- --src;
++ else if (src > oldsrc) /* protect against buffer underflow */
++ --src;
++ } else if (src > oldsrc) /* protect against buffer underflow */
++ --src;
+ *dst++ = (char) val;
+ break;
+ }
+- } else if (c == 8 || c == 263) /* the backspace */
+- dst--;
++ } else if (c == 8 || c == 263) { /* the backspace */
++ if (dst > oldsrc) /* protect against buffer underflow */
++ dst--;
++ }
+ else
+ *dst++ = (char) c;
+ }
+
+From 19706cf53b189fbc996791cdb4b0d9a1f0feae5f Mon Sep 17 00:00:00 2001
+From: Alexander Koeppe <format_c@online.de>
+Date: Thu, 1 Jun 2017 08:57:54 +0200
+Subject: [PATCH 3/4] adapt calls of strescape() adding strlen
+
+---
+ src/ec_encryption.c | 2 +-
+ src/interfaces/curses/ec_curses_view_connections.c | 2 +-
+ src/interfaces/gtk/ec_gtk_view_connections.c | 2 +-
+ utils/etterfilter/ef_encode.c | 18 ++++++++++++------
+ 4 files changed, 15 insertions(+), 9 deletions(-)
+
+diff --git a/src/ec_encryption.c b/src/ec_encryption.c
+index 6c02529c1..3d5056030 100644
+--- a/src/ec_encryption.c
++++ b/src/ec_encryption.c
+@@ -218,7 +218,7 @@ int set_wep_key(char *string)
+
+ if (type == 's') {
+ /* escape the string and check its length */
+- if (strescape((char *)tmp_wkey, p) != (int)tmp_wkey_len)
++ if (strescape((char *)tmp_wkey, p, strlen(tmp_wkey)+1) != (int)tmp_wkey_len)
+ SEMIFATAL_ERROR("Specified WEP key length does not match the given string");
+ } else if (type == 'p') {
+ /* create the key from the passphrase */
+diff --git a/src/interfaces/curses/ec_curses_view_connections.c b/src/interfaces/curses/ec_curses_view_connections.c
+index fb52331cf..011c0edf7 100644
+--- a/src/interfaces/curses/ec_curses_view_connections.c
++++ b/src/interfaces/curses/ec_curses_view_connections.c
+@@ -614,7 +614,7 @@ static void inject_user(void)
+ size_t len;
+
+ /* escape the sequnces in the buffer */
+- len = strescape((char*)injectbuf, (char*)injectbuf);
++ len = strescape((char*)injectbuf, (char*)injectbuf, strlen(injectbuf)+1);
+
+ /* check where to inject */
+ if (wdg_c1->flags & WDG_OBJ_FOCUSED) {
+diff --git a/src/interfaces/gtk/ec_gtk_view_connections.c b/src/interfaces/gtk/ec_gtk_view_connections.c
+index fa7dfdc58..b55e1755a 100644
+--- a/src/interfaces/gtk/ec_gtk_view_connections.c
++++ b/src/interfaces/gtk/ec_gtk_view_connections.c
+@@ -1627,7 +1627,7 @@ static void gtkui_inject_user(int side)
+ size_t len;
+
+ /* escape the sequnces in the buffer */
+- len = strescape(injectbuf, injectbuf);
++ len = strescape(injectbuf, injectbuf, strlen(injectbuf)+1);
+
+ /* check where to inject */
+ if (side == 1 || side == 2) {
+diff --git a/utils/etterfilter/ef_encode.c b/utils/etterfilter/ef_encode.c
+index d4b9110cd..7e359e062 100644
+--- a/utils/etterfilter/ef_encode.c
++++ b/utils/etterfilter/ef_encode.c
+@@ -136,7 +136,8 @@ int encode_const(char *string, struct filter_op *fop)
+ fop->op.test.string = (u_char*)strdup(string + 1);
+
+ /* escape it in the structure */
+- fop->op.test.slen = strescape((char*)fop->op.test.string, (char*)fop->op.test.string);
++ fop->op.test.slen = strescape((char*)fop->op.test.string,
++ (char*)fop->op.test.string, strlen(fop->op.test.string)+1);
+
+ return E_SUCCESS;
+
+@@ -184,7 +185,8 @@ int encode_function(char *string, struct filter_op *fop)
+ fop->opcode = FOP_FUNC;
+ fop->op.func.op = FFUNC_SEARCH;
+ fop->op.func.string = (u_char*)strdup(dec_args[1]);
+- fop->op.func.slen = strescape((char*)fop->op.func.string, (char*)fop->op.func.string);
++ fop->op.func.slen = strescape((char*)fop->op.func.string,
++ (char*)fop->op.func.string, strlen(fop->op.func.string)+1);
+ ret = E_SUCCESS;
+ } else
+ SCRIPT_ERROR("Unknown offset %s ", dec_args[0]);
+@@ -202,7 +204,8 @@ int encode_function(char *string, struct filter_op *fop)
+ fop->opcode = FOP_FUNC;
+ fop->op.func.op = FFUNC_REGEX;
+ fop->op.func.string = (u_char*)strdup(dec_args[1]);
+- fop->op.func.slen = strescape((char*)fop->op.func.string, (char*)fop->op.func.string);
++ fop->op.func.slen = strescape((char*)fop->op.func.string,
++ (char*)fop->op.func.string, strlen(fop->op.func.string)+1);
+ ret = E_SUCCESS;
+ } else
+ SCRIPT_ERROR("Unknown offset %s ", dec_args[0]);
+@@ -272,9 +275,11 @@ int encode_function(char *string, struct filter_op *fop)
+ /* replace always operate at DATA level */
+ fop->op.func.level = 5;
+ fop->op.func.string = (u_char*)strdup(dec_args[0]);
+- fop->op.func.slen = strescape((char*)fop->op.func.string, (char*)fop->op.func.string);
++ fop->op.func.slen = strescape((char*)fop->op.func.string,
++ (char*)fop->op.func.string, strlen(fop->op.func.string)+1);
+ fop->op.func.replace = (u_char*)strdup(dec_args[1]);
+- fop->op.func.rlen = strescape((char*)fop->op.func.replace, (char*)fop->op.func.replace);
++ fop->op.func.rlen = strescape((char*)fop->op.func.replace,
++ (char*)fop->op.func.replace, strlen(fop->op.func.replace)+1);
+ ret = E_SUCCESS;
+ } else
+ SCRIPT_ERROR("Wrong number of arguments for function \"%s\" ", name);
+@@ -328,7 +333,8 @@ int encode_function(char *string, struct filter_op *fop)
+ if (nargs == 1) {
+ fop->op.func.op = FFUNC_MSG;
+ fop->op.func.string = (u_char*)strdup(dec_args[0]);
+- fop->op.func.slen = strescape((char*)fop->op.func.string, (char*)fop->op.func.string);
++ fop->op.func.slen = strescape((char*)fop->op.func.string,
++ (char*)fop->op.func.string, strlen(fop->op.func.string)+1);
+ ret = E_SUCCESS;
+ } else
+ SCRIPT_ERROR("Wrong number of arguments for function \"%s\" ", name);
+
+From b005d55d4eae444c5be14eb792b50657a14c7b1d Mon Sep 17 00:00:00 2001
+From: Alexander Koeppe <format_c@online.de>
+Date: Sun, 4 Jun 2017 08:09:04 +0200
+Subject: [PATCH 4/4] Only add ASAN flags depeding on compiler version
+
+---
+ CMakeLists.txt | 22 +++++++++++++++++++++-
+ 1 file changed, 21 insertions(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 8e823669c..8f7c7c368 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -126,7 +126,27 @@ if(NOT DISABLE_RPATH)
+ set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
+ set(CMAKE_MACOSX_RPATH 1)
+ endif(NOT DISABLE_RPATH)
+-set(CMAKE_C_FLAGS_DEBUG "-O0 -ggdb3 -DDEBUG -Wall -Wno-pointer-sign -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security -Wextra -Wredundant-decls -fsanitize=address -fno-omit-frame-pointer" CACHE STRING "" FORCE)
++
++# set general build flags for debug build-type
++set(CMAKE_C_FLAGS_DEBUG "-O0 -ggdb3 -DDEBUG -Wall -Wno-pointer-sign -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security -Wextra -Wredundant-decls" CACHE STRING "" FORCE)
++# append ASAN build flags if compiler version has support
++if ("${CMAKE_C_COMPILER_ID}" STREQUAL "GNU")
++ if (CMAKE_C_COMPILER_VERSION VERSION_GREATER 4.8)
++ set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -fsanitize=address -fno-omit-frame-pointer" CACHE STRING "" FORCE)
++ message("Building with ASAN support (GNU compiler)")
++ else (CMAKE_C_COMPILER_VERSION VERSION_GREATER 4.8)
++ message("Building without ASAN support (GNU compiler)")
++ endif (CMAKE_C_COMPILER_VERSION VERSION_GREATER 4.8)
++elseif ("${CMAKE_C_COMPILER_ID}" STREQUAL "Clang")
++ if (CMAKE_C_COMPILER_VERSION VERSION_GREATER 3.1)
++ set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -fsanitize=address -fno-omit-frame-pointer" CACHE STRING "" FORCE)
++ message("Building with ASAN support (Clang compiler)")
++ elseif (CMAKE_C_COMPILER_VERSION VERSION_GREATER 3.1)
++ message("Building without ASAN support (Clang compiler)")
++ endif (CMAKE_C_COMPILER_VERSION VERSION_GREATER 3.1)
++endif ("${CMAKE_C_COMPILER_ID}" STREQUAL "GNU")
++
++# set build flags for release build-type
+ set(CMAKE_C_FLAGS_RELEASE "-O2 -w -D_FORTIFY_SOURCE=2" CACHE STRING "" FORCE)
+
+ if(OS_DARWIN)
diff --git a/network/fcgiwrap/fcgiwrap.SlackBuild b/network/fcgiwrap/fcgiwrap.SlackBuild
index 9d64052b68..b5e6f5b0a2 100644
--- a/network/fcgiwrap/fcgiwrap.SlackBuild
+++ b/network/fcgiwrap/fcgiwrap.SlackBuild
@@ -70,7 +70,7 @@ find -L . \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
autoreconf -i
-CFLAGS="$SLKCFLAGS" \
+CFLAGS="$SLKCFLAGS -Wno-error=implicit-fallthrough=" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
diff --git a/network/fqterm/fqterm.SlackBuild b/network/fqterm/fqterm.SlackBuild
index b90004e147..1af9f50ecf 100644
--- a/network/fqterm/fqterm.SlackBuild
+++ b/network/fqterm/fqterm.SlackBuild
@@ -5,14 +5,13 @@
# Written by vvoody <vvoodywang@gmail.com>
PRGNAM=fqterm
-VERSION=${VERSION:-0.9.8.2}
-SVNVER=svn1076
+VERSION=${VERSION:-0.9.8.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -23,18 +22,14 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
- LIBDIRSUFFIX=""
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
fi
set -e
@@ -42,15 +37,15 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM
-tar xvf $CWD/$PRGNAM-$VERSION-$SVNVER.tar.gz
-cd $PRGNAM
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
mkdir build
cd build
@@ -58,17 +53,16 @@ cd build
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_INSTALL_PREFIX:PATH="/usr" \
- -DLIB_SUFFIX=${LIBDIRSUFFIX} \
..
make
make install DESTDIR=$PKG
cd -
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a LICENSE INSTALL.txt README.txt $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a LICENSE INSTALL.txt README* $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/network/fqterm/fqterm.info b/network/fqterm/fqterm.info
index 787760d96c..c948f08484 100644
--- a/network/fqterm/fqterm.info
+++ b/network/fqterm/fqterm.info
@@ -1,8 +1,8 @@
PRGNAM="fqterm"
-VERSION="0.9.8.2"
+VERSION="0.9.8.4"
HOMEPAGE="https://github.com/mytbk/fqterm"
-DOWNLOAD="http://ftp1.fr.freebsd.org/pub/frugalware/frugalware-stable/source/xlib-extra/fqterm/fqterm-0.9.8.2-svn1076.tar.gz"
-MD5SUM="eaf7b51c1e3e0f13351f9f5678996d51"
+DOWNLOAD="https://github.com/mytbk/fqterm/archive/0.9.8.4/fqterm-0.9.8.4.tar.gz"
+MD5SUM="d7d9500806055def62456550fe33173e"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/hylafax/gcc.patch b/network/hylafax/gcc.patch
new file mode 100644
index 0000000000..ed9817abfe
--- /dev/null
+++ b/network/hylafax/gcc.patch
@@ -0,0 +1,12 @@
+diff -Naur hylafax-6.0.6.orig/libhylafax/FaxRecvInfo.c++ hylafax-6.0.6/libhylafax/FaxRecvInfo.c++
+--- hylafax-6.0.6.orig/libhylafax/FaxRecvInfo.c++ 2012-06-06 02:58:38.000000000 +0200
++++ hylafax-6.0.6/libhylafax/FaxRecvInfo.c++ 2017-06-03 19:51:39.491707130 +0200
+@@ -112,7 +112,7 @@
+ if (cp == NULL || cp[1] != ',' || cp[2] != '"')
+ return (false);
+ u_int i = 0;
+- while (cp+2 != '\0') {
++ while (*(cp+2) != '\0') {
+ callid[i] = cp+3; // +1 for "/+1 for ,/+1 for "
+ if (*cp == '\"') break;
+ callid[i].resize(callid[i].next(0,'"'));
diff --git a/network/hylafax/hylafax.SlackBuild b/network/hylafax/hylafax.SlackBuild
index f2663427e6..e4abfd8ba7 100644
--- a/network/hylafax/hylafax.SlackBuild
+++ b/network/hylafax/hylafax.SlackBuild
@@ -73,6 +73,8 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+patch -p1 < $CWD/gcc.patch
+
# Copy our source for the correct configuration
sed "s|@LIBDIRSUFFIX@|${LIBDIRSUFFIX}|g" \
< $CWD/config.local.in \
diff --git a/network/ifstatus/README b/network/ifstatus/README
deleted file mode 100644
index 9dead8790d..0000000000
--- a/network/ifstatus/README
+++ /dev/null
@@ -1,10 +0,0 @@
-IFStatus was developed for Linux users that are usually in console mode.
-It is a simple, easy to use program for displaying commonly needed / wanted
-statistcs in real time about ingoing and outgoing traffic of multiple network
-interfaces that is usually hard to find, with a simple and effecient view.
-
-The configuration file for IFStatus is automatically created in
-~/.ifstatus/ifstatus.cfg
-
-Please read http://ifstatus.sourceforge.net/graphic/informations.html
-for information on various configuration options.
diff --git a/network/ifstatus/ifstatus.SlackBuild b/network/ifstatus/ifstatus.SlackBuild
deleted file mode 100644
index 135ee6b9e8..0000000000
--- a/network/ifstatus/ifstatus.SlackBuild
+++ /dev/null
@@ -1,91 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for cgdb
-
-# Copyright 2009-2010 Sean Donner (sean.donner@gmail.com)
-# 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.
-
-PRGNAM=ifstatus
-VERSION=${VERSION:-1.1.0}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i486 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-
-# 'v' needed due to poor tarball naming
-tar xvf $CWD/$PRGNAM-v$VERSION.tar.gz
-
-cd $PRGNAM
-chown root:root . -R
-
-# This will not compile on gcc 4.3 or 4.4 without patch,
-# as all .cc files are missing '#include <cstdlib>'
-patch -p1 < $CWD/ifstatus.patch
-
-make \
- CFLAGS="$SLKCFLAGS" \
- CXXFLAGS="$SLKCFLAGS"
-
-# We can't use the 'install' target in the Makefile as it
-# hardcodes the destination directory to /usr/local/bin
-install -D -m 0755 ./ifstatus $PKG/usr/bin/ifstatus
-strip --strip-unneeded $PKG/usr/bin/ifstatus
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS COPYING README $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/network/ifstatus/ifstatus.info b/network/ifstatus/ifstatus.info
deleted file mode 100644
index f4021d55cc..0000000000
--- a/network/ifstatus/ifstatus.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="ifstatus"
-VERSION="1.1.0"
-HOMEPAGE="http://ifstatus.sourceforge.net"
-DOWNLOAD="http://ifstatus.sourceforge.net/download/ifstatus-v1.1.0.tar.gz"
-MD5SUM="f4d413f880754fd6677290160f8bc5d7"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Sean Donner"
-EMAIL="sean.donner@gmail.com"
diff --git a/network/ifstatus/ifstatus.patch b/network/ifstatus/ifstatus.patch
deleted file mode 100644
index 75bc3befd5..0000000000
--- a/network/ifstatus/ifstatus.patch
+++ /dev/null
@@ -1,66 +0,0 @@
-Patch by Robert Scheck <robert@fedoraproject.org> for ifstatus >= 1.1.0,
-which adds a few missing #include lines to not violate the C++ standards
-and to build successfully with G++ version 4.3 and 4.4.
-
---- ifstatus/IFStatus.cc 2006-01-17 00:18:46.000000000 +0100
-+++ ifstatus/IFStatus.cc.gcc44 2009-04-14 00:42:04.000000000 +0200
-@@ -22,6 +22,7 @@
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-+#include <cstdlib>
- #include "Main.h"
- #include "IFStatus.h"
- #include "Graph.h"
---- ifstatus/GraphDecorator.cc 2006-01-17 01:00:59.000000000 +0100
-+++ ifstatus/GraphDecorator.cc.gcc44 2009-04-14 00:41:38.000000000 +0200
-@@ -21,7 +21,8 @@
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
--
-+
-+#include <cstdlib>
- #include "GraphDecorator.h"
- #include "Config.h"
-
---- ifstatus/Interface.cc 2006-01-17 02:48:27.000000000 +0100
-+++ ifstatus/Interface.cc.gcc44 2009-04-14 00:42:23.000000000 +0200
-@@ -22,6 +22,7 @@
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-+#include <cstdlib>
- #include "Interface.h"
- #include "Config.h"
-
---- ifstatus/Config.cc 2005-02-26 12:54:51.000000000 +0100
-+++ ifstatus/Config.cc.gcc44 2009-04-14 00:40:13.000000000 +0200
-@@ -22,6 +22,7 @@
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-+#include <cstdlib>
- #include "Main.h"
- #include "Config.h"
- #include "Util.h"
---- ifstatus/Email.cc 2005-02-26 12:54:51.000000000 +0100
-+++ ifstatus/Email.cc.gcc44 2009-04-14 00:40:44.000000000 +0200
-@@ -22,6 +22,7 @@
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-+#include <cstdlib>
- #include "Email.h"
- #include "Config.h"
-
---- ifstatus/Interfaces.cc 2006-01-16 23:45:33.000000000 +0100
-+++ ifstatus/Interfaces.cc.gcc44 2009-04-14 00:42:45.000000000 +0200
-@@ -22,6 +22,7 @@
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-+#include <cstdlib>
- #include "Interfaces.h"
- #include "Config.h"
- #include "Util.h"
diff --git a/network/ifstatus/slack-desc b/network/ifstatus/slack-desc
deleted file mode 100644
index a0f087dfc8..0000000000
--- a/network/ifstatus/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-ifstatus: ifstatus (A curses network traffic monitor)
-ifstatus:
-ifstatus: IFStatus was developed for Linux users that are usually in console
-ifstatus: mode. It is a simple, easy to use program for displaying commonly
-ifstatus: needed / wanted statistcs in real time about ingoing and outgoing
-ifstatus: traffic of multiple network interfaces that is usually hard to find,
-ifstatus: with a simple and effecient view.
-ifstatus:
-ifstatus:
-ifstatus:
-ifstatus:
diff --git a/network/iperf/iperf.SlackBuild b/network/iperf/iperf.SlackBuild
index f8c40ab1e8..d4c970ca8b 100644
--- a/network/iperf/iperf.SlackBuild
+++ b/network/iperf/iperf.SlackBuild
@@ -8,13 +8,13 @@
# http://www.slackwiki.org/Writing_A_SlackBuild_Script
PRGNAM=iperf
-VERSION=${VERSION:-2.0.5}
+VERSION=${VERSION:-2.0.8}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -25,8 +25,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -49,10 +49,15 @@ tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+# Thanks fedora for these
+for i in $CWD/patches/* ; do patch -p1 < $i ; done
+
+autoreconf -fi
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
@@ -68,13 +73,11 @@ CXXFLAGS="$SLKCFLAGS" \
make
make install DESTDIR=$PKG
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-( cd $PKG/usr/man
- find . -type f -exec gzip -9 {} \;
- for i in $( find . -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-)
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a AUTHORS ChangeLog COPYING INSTALL README doc/index.html $PKG/usr/doc/$PRGNAM-$VERSION
diff --git a/network/iperf/iperf.info b/network/iperf/iperf.info
index fbb6e24fa4..730b096a3b 100644
--- a/network/iperf/iperf.info
+++ b/network/iperf/iperf.info
@@ -1,8 +1,8 @@
PRGNAM="iperf"
-VERSION="2.0.5"
+VERSION="2.0.8"
HOMEPAGE="https://sourceforge.net/projects/iperf/"
-DOWNLOAD="https://downloads.sourceforge.net/iperf/iperf-2.0.5.tar.gz"
-MD5SUM="44b5536b67719f4250faed632a3cd016"
+DOWNLOAD="https://downloads.sourceforge.net/iperf2/iperf-2.0.8.tar.gz"
+MD5SUM="e5887f799d8dc64a974c6c2f2e5cc339"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/iperf/patches/0_iperf-2.0.8-debuginfo.patch b/network/iperf/patches/0_iperf-2.0.8-debuginfo.patch
new file mode 100644
index 0000000000..2a3ad246ee
--- /dev/null
+++ b/network/iperf/patches/0_iperf-2.0.8-debuginfo.patch
@@ -0,0 +1,17 @@
+diff -NarpU5 iperf-2.0.8/configure.ac iperf-2.0.8.debuginfo/configure.ac
+--- iperf-2.0.8/configure.ac 2015-04-02 16:51:48.000000000 -0400
++++ iperf-2.0.8.debuginfo/configure.ac 2015-04-10 10:11:33.287445003 -0400
+@@ -42,13 +42,11 @@ AC_ARG_ENABLE(kalman, AC_HELP_STRING([--
+ dnl ===================================================================
+ dnl Checks for programs
+ dnl ===================================================================
+
+ AC_PROG_CXX
+-CXXFLAGS=`echo " $CXXFLAGS " | sed -e "s/ -g / /"` # do not want it implicitly
+ AC_PROG_CC
+-CFLAGS=`echo " $CFLAGS " | sed -e "s/ -g / /"` # do not want it implicitly
+ AC_ISC_POSIX
+ AC_PROG_INSTALL
+ AC_PROG_MAKE_SET
+ AC_PROG_RANLIB
+ AC_LANG(C)
diff --git a/network/iperf/patches/1_iperf-2.0.8-bindfail.patch b/network/iperf/patches/1_iperf-2.0.8-bindfail.patch
new file mode 100644
index 0000000000..b18b2cffed
--- /dev/null
+++ b/network/iperf/patches/1_iperf-2.0.8-bindfail.patch
@@ -0,0 +1,42 @@
+diff -NarpU5 iperf-2.0.8/src/Client.cpp iperf-2.0.8.bindfail/src/Client.cpp
+--- iperf-2.0.8/src/Client.cpp 2015-04-02 16:51:48.000000000 -0400
++++ iperf-2.0.8.bindfail/src/Client.cpp 2015-04-10 10:05:38.279936555 -0400
+@@ -701,20 +701,20 @@ void Client::Connect( ) {
+ AF_INET
+ #endif
+ : AF_INET);
+
+ mSettings->mSock = socket( domain, type, 0 );
+- WARN_errno( mSettings->mSock == INVALID_SOCKET, "socket" );
++ FAIL_errno( mSettings->mSock == INVALID_SOCKET, "socket", mSettings );
+
+ SetSocketOptions( mSettings );
+
+ SockAddr_localAddr( mSettings );
+ if ( mSettings->mLocalhost != NULL ) {
+ // bind socket to local address
+ rc = bind( mSettings->mSock, (sockaddr*) &mSettings->local,
+ SockAddr_get_sizeof_sockaddr( &mSettings->local ) );
+- WARN_errno( rc == SOCKET_ERROR, "bind" );
++ FAIL_errno( rc == SOCKET_ERROR, "bind", mSettings );
+ }
+ // connect socket
+ rc = connect( mSettings->mSock, (sockaddr*) &mSettings->peer,
+ SockAddr_get_sizeof_sockaddr( &mSettings->peer ));
+ FAIL_errno( rc == SOCKET_ERROR, "connect", mSettings );
+diff -NarpU5 iperf-2.0.8/src/Listener.cpp iperf-2.0.8.bindfail/src/Listener.cpp
+--- iperf-2.0.8/src/Listener.cpp 2015-04-02 16:51:48.000000000 -0400
++++ iperf-2.0.8.bindfail/src/Listener.cpp 2015-04-10 10:06:23.279699885 -0400
+@@ -342,11 +342,11 @@ void Listener::Listen( ) {
+ WARN_errno( rc == SOCKET_ERROR, "WSAJoinLeaf (aka bind)" );
+ } else
+ #endif
+ {
+ rc = bind( mSettings->mSock, (sockaddr*) &mSettings->local, mSettings->size_local );
+- WARN_errno( rc == SOCKET_ERROR, "bind" );
++ FAIL_errno( rc == SOCKET_ERROR, "bind", mSettings );
+ }
+ // listen for connections (TCP only).
+ // default backlog traditionally 5
+ if ( !isUDP( mSettings ) ) {
+ rc = listen( mSettings->mSock, 5 );
diff --git a/network/iperf/patches/2_iperf-2.0.8-math.patch b/network/iperf/patches/2_iperf-2.0.8-math.patch
new file mode 100644
index 0000000000..1a943f5f2c
--- /dev/null
+++ b/network/iperf/patches/2_iperf-2.0.8-math.patch
@@ -0,0 +1,75 @@
+diff -NarU5 a/include/headers.h b/include/headers.h
+--- a/include/headers.h 2015-04-02 16:51:48.000000000 -0400
++++ b/include/headers.h 2016-03-16 14:52:14.386853750 -0400
+@@ -80,11 +80,10 @@
+ #include <assert.h>
+ #include <ctype.h>
+ #include <errno.h>
+ #include <string.h>
+ #include <time.h>
+-#include <math.h>
+ #include <float.h>
+ #include <sys/types.h>
+
+ #ifdef WIN32
+
+diff -NarU5 a/src/Client.cpp b/src/Client.cpp
+--- a/src/Client.cpp 2015-04-02 16:51:48.000000000 -0400
++++ b/src/Client.cpp 2016-03-16 14:52:14.387853701 -0400
+@@ -50,10 +50,11 @@
+ * A client thread initiates a connect to the server and handles
+ * sending and receiving data, then closes the socket.
+ * ------------------------------------------------------------------- */
+
+ #include <time.h>
++#include <cmath>
+ #include "headers.h"
+ #include "Client.hpp"
+ #include "Thread.h"
+ #include "SocketAddr.h"
+ #include "PerfSocket.hpp"
+diff -NarU5 a/src/ReportDefault.c b/src/ReportDefault.c
+--- a/src/ReportDefault.c 2015-04-02 16:51:49.000000000 -0400
++++ b/src/ReportDefault.c 2016-03-16 14:52:14.387853701 -0400
+@@ -47,10 +47,11 @@
+ * ReportDefault.c
+ * by Kevin Gibbs <kgibbs@nlanr.net>
+ *
+ * ________________________________________________________________ */
+
++#include <math.h>
+ #include "headers.h"
+ #include "Settings.hpp"
+ #include "util.h"
+ #include "Reporter.h"
+ #include "report_default.h"
+diff -NarU5 a/src/Reporter.c b/src/Reporter.c
+--- a/src/Reporter.c 2015-04-02 16:51:49.000000000 -0400
++++ b/src/Reporter.c 2016-03-16 14:52:14.388853652 -0400
+@@ -47,10 +47,11 @@
+ * Reporter.c
+ * by Kevin Gibbs <kgibbs@nlanr.net>
+ *
+ * ________________________________________________________________ */
+
++#include <math.h>
+ #include "headers.h"
+ #include "Settings.hpp"
+ #include "util.h"
+ #include "Reporter.h"
+ #include "Thread.h"
+diff -NarU5 a/src/Server.cpp b/src/Server.cpp
+--- a/src/Server.cpp 2015-04-02 16:51:49.000000000 -0400
++++ b/src/Server.cpp 2016-03-16 14:52:14.388853652 -0400
+@@ -52,10 +52,11 @@
+ * Handles sending and receiving data, and then closes socket.
+ * Changes to this version : The server can be run as a daemon
+ * ------------------------------------------------------------------- */
+
+ #define HEADERS()
++#include <cmath>
+ #include "headers.h"
+ #include "Server.hpp"
+ #include "List.h"
+ #include "Extractor.h"
+ #include "Reporter.h"
diff --git a/network/jigdo/jigdo-0.7.3-gcc7.patch b/network/jigdo/jigdo-0.7.3-gcc7.patch
new file mode 100644
index 0000000000..d5f0c8a4d0
--- /dev/null
+++ b/network/jigdo/jigdo-0.7.3-gcc7.patch
@@ -0,0 +1,39 @@
+diff -Naur jigdo-0.7.3.orig/src/mkimage.cc jigdo-0.7.3/src/mkimage.cc
+--- jigdo-0.7.3.orig/src/mkimage.cc 2005-07-09 21:14:46.000000000 +0200
++++ jigdo-0.7.3/src/mkimage.cc 2017-02-17 14:47:12.884488507 +0100
+@@ -285,27 +285,27 @@
+ //______________________________________________________________________
+
+ namespace {
+- const int SIZE_WIDTH = 12;
++ const int size_width = 12;
+ }
+
+ ostream& JigdoDesc::ImageInfo::put(ostream& s) const {
+- s << "image-info " << setw(SIZE_WIDTH) << size() << " "
++ s << "image-info " << setw(size_width) << size() << " "
+ << md5() << ' ' << blockLength() << '\n';
+ return s;
+ }
+ ostream& JigdoDesc::UnmatchedData::put(ostream& s) const {
+- s << "in-template " << setw(SIZE_WIDTH) << offset() << ' '
+- << setw(SIZE_WIDTH) << size() << '\n';
++ s << "in-template " << setw(size_width) << offset() << ' '
++ << setw(size_width) << size() << '\n';
+ return s;
+ }
+ ostream& JigdoDesc::MatchedFile::put(ostream& s) const {
+- s << "need-file " << setw(SIZE_WIDTH) << offset() << ' '
+- << setw(SIZE_WIDTH) << size() << ' ' << md5() << ' ' << rsync() << '\n';
++ s << "need-file " << setw(size_width) << offset() << ' '
++ << setw(size_width) << size() << ' ' << md5() << ' ' << rsync() << '\n';
+ return s;
+ }
+ ostream& JigdoDesc::WrittenFile::put(ostream& s) const {
+- s << "have-file " << setw(SIZE_WIDTH) << offset() << ' '
+- << setw(SIZE_WIDTH) << size() << ' ' << md5() << ' ' << rsync() << '\n';
++ s << "have-file " << setw(size_width) << offset() << ' '
++ << setw(size_width) << size() << ' ' << md5() << ' ' << rsync() << '\n';
+ return s;
+ }
+
diff --git a/network/jigdo/jigdo.SlackBuild b/network/jigdo/jigdo.SlackBuild
index 67e467dde2..ef17522f77 100644
--- a/network/jigdo/jigdo.SlackBuild
+++ b/network/jigdo/jigdo.SlackBuild
@@ -73,6 +73,9 @@ find -L . \
# apply some patches from debian
zcat $CWD/jigdo_0.7.3-3.diff.gz | patch -p1
+# Fic for gcc-7.x, thanks fedora!
+patch -p1 < $CWD/jigdo-0.7.3-gcc7.patch
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
diff --git a/network/kmess/README b/network/kmess/README
deleted file mode 100644
index f04f2e181b..0000000000
--- a/network/kmess/README
+++ /dev/null
@@ -1,5 +0,0 @@
-KMess is an alternative Live Messenger chat client for Linux.
-It allows Linux users to chat with friends who use Live Messenger in
-Windows or Mac OS. The strength of KMess is it's integration with the
-KDE desktop environment, it focus on Messenger-specific features, and
-an easy-to-use interface.
diff --git a/network/kmess/doinst.sh b/network/kmess/doinst.sh
deleted file mode 100644
index 4a25de5e6f..0000000000
--- a/network/kmess/doinst.sh
+++ /dev/null
@@ -1,10 +0,0 @@
-if [ -x /usr/bin/update-desktop-database ]; then
- /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
-fi
-
-if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
- if [ -x /usr/bin/gtk-update-icon-cache ]; then
- /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
- fi
-fi
-
diff --git a/network/kmess/giflib-5.0.patch b/network/kmess/giflib-5.0.patch
deleted file mode 100644
index cc568fdf8a..0000000000
--- a/network/kmess/giflib-5.0.patch
+++ /dev/null
@@ -1,95 +0,0 @@
---- contrib/isf-qt/src/isfqt.cpp.orig 2014-06-11 13:10:43.137321400 +0000
-+++ contrib/isf-qt/src/isfqt.cpp 2014-06-11 13:12:23.123474616 +0000
-@@ -249,7 +249,7 @@
- qWarning() << "Couldn't initialize GIF library!";
- }
-
-- DGifCloseFile( gifImage );
-+ DGifCloseFile( gifImage, NULL );
- gifData.close();
- */
-
-@@ -484,12 +484,13 @@
- int width = isfImage.width();
- int numColors = 0;
- bool gifError = true;
-+ int gifErrCode;
-
- // Convert the image to GIF using libgif
-
- // Open the gif file
- gifData.open( QIODevice::WriteOnly );
-- gifImage = EGifOpen( (void*)&gifData, GifWriteToByteArray );
-+ gifImage = EGifOpen( (void*)&gifData, GifWriteToByteArray, &gifErrCode );
- if( gifImage == 0 )
- {
- qWarning() << "Couldn't initialize gif library!";
-@@ -503,7 +504,7 @@
- numColors = 256;
- }
-
-- cmap = MakeMapObject( numColors, NULL );
-+ cmap = GifMakeMapObject( numColors, NULL );
- if( cmap == 0 && isfImage.numColors() > 1 )
- {
- qWarning() << "Couldn't create map object for gif conversion (colors:" << isfImage.numColors() << ")!";
-@@ -576,7 +577,7 @@
- else
- {
- // Write the extension
-- if( EGifPutExtensionFirst( gifImage, COMMENT_EXT_FUNC_CODE, MAX_GIF_BYTE, isfData.left( MAX_GIF_BYTE ).data() ) == GIF_ERROR )
-+ if( EGifPutExtensionLeader( gifImage, COMMENT_EXT_FUNC_CODE) == GIF_ERROR )
- {
- qWarning() << "EGifPutExtensionFirst failed!";
- goto writeError;
-@@ -590,9 +591,9 @@
- // Write all the full data blocks
- while( length >= MAX_GIF_BYTE )
- {
-- if( EGifPutExtensionNext( gifImage, 0, MAX_GIF_BYTE, isfData.mid( pos, MAX_GIF_BYTE ).data() ) == GIF_ERROR )
-+ if( EGifPutExtensionBlock( gifImage, MAX_GIF_BYTE, isfData.mid( pos, MAX_GIF_BYTE ).data() ) == GIF_ERROR )
- {
-- qWarning() << "EGifPutExtensionNext failed!";
-+ qWarning() << "EGifPutExtensionBlock failed!";
- goto writeError;
- }
-
-@@ -603,17 +604,17 @@
- // Write the last block
- if( length > 0 )
- {
-- if( EGifPutExtensionLast( gifImage, 0, length, isfData.mid( pos, MAX_GIF_BYTE ).data() ) == GIF_ERROR )
-+ if( EGifPutExtensionTrailer( gifImage ) == GIF_ERROR )
- {
-- qWarning() << "EGifPutExtensionLast (n) failed!";
-+ qWarning() << "EGifPutExtensionTrailer (n) failed!";
- goto writeError;
- }
- }
- else
- {
-- if( EGifPutExtensionLast( gifImage, 0, 0, 0 ) == GIF_ERROR )
-+ if( EGifPutExtensionTrailer( gifImage ) == GIF_ERROR )
- {
-- qWarning() << "EGifPutExtensionLast (0) failed!";
-+ qWarning() << "EGifPutExtensionTrailer (0) failed!";
- goto writeError;
- }
- }
-@@ -623,13 +624,13 @@
-
- writeError:
- // Clean up the GIF converter etc
-- EGifCloseFile( gifImage );
-- FreeMapObject( cmap );
-+ EGifCloseFile( gifImage, NULL );
-+ GifFreeMapObject( cmap );
- gifData.close();
-
- if( gifError )
- {
-- qWarning() << "GIF error code:" << GifLastError();
-+ qWarning() << "GIF error code:" << GifErrorString(gifErrCode);
- }
- else
- {
diff --git a/network/kmess/kmess.SlackBuild b/network/kmess/kmess.SlackBuild
deleted file mode 100644
index 27c6a9e73b..0000000000
--- a/network/kmess/kmess.SlackBuild
+++ /dev/null
@@ -1,100 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for kmess
-
-# Copyright 2008-2009 Tarantino Antonino <metrofox9@gmail.com>
-# 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.
-
-PRGNAM=kmess
-VERSION=${VERSION:-2.0.6.2}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i486 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -fr $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.?z*
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
-
-# Fix for building with new giflib (thanks to Arch)
-patch -p1 contrib/isf-qt/src/isfqt.cpp < $CWD/giflib-5.0.patch
-
-mkdir -p build
-cd build
- cmake \
- -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DLIB_SUFFIX=${LIBDIRSUFFIX} \
- -DCMAKE_BUILD_TYPE=Release ..
- make
- make install DESTDIR=$PKG
-cd ..
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a \
- AUTHORS COPYING ChangeLog FEATURES INSTALL NEWS README TODO \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-cat $CWD/doinst.sh > $PKG/install/doinst.sh
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/network/kmess/kmess.info b/network/kmess/kmess.info
deleted file mode 100644
index 51a7e19d01..0000000000
--- a/network/kmess/kmess.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="kmess"
-VERSION="2.0.6.2"
-HOMEPAGE="http://kmess.org/"
-DOWNLOAD="http://downloads.sourceforge.net/kmess/kmess-2.0.6.2.tar.bz2"
-MD5SUM="a2e57911713308bef81b9347135cc5dd"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Tarantino Antonino"
-EMAIL="metrofox9@gmail.com"
diff --git a/network/kmess/slack-desc b/network/kmess/slack-desc
deleted file mode 100644
index 7bced9d9c3..0000000000
--- a/network/kmess/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-kmess: kmess (MSN Messenger client)
-kmess:
-kmess: KMess is a MSN Messenger client for Linux. It enables Linux users
-kmess: to chat with friends online who are using MSN Messenger in Windows
-kmess: or Mac OS. The strength of KMess is it's integration with the KDE
-kmess: desktop environment, focus on MSN Messenger specific features and
-kmess: an easy-to-use interface.
-kmess:
-kmess:
-kmess:
-kmess:
diff --git a/network/knock/knock.SlackBuild b/network/knock/knock.SlackBuild
index eeb481a019..bc5a0d98b1 100644
--- a/network/knock/knock.SlackBuild
+++ b/network/knock/knock.SlackBuild
@@ -5,13 +5,13 @@
# Written by Joey Trungale joey@trungale.net
PRGNAM=knock
-VERSION=${VERSION:-0.5}
+VERSION=${VERSION:-0.7}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -22,8 +22,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -46,10 +46,10 @@ tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
@@ -63,16 +63,14 @@ CXXFLAGS="$SLKCFLAGS" \
make
make install DESTDIR=$PKG
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-( cd $PKG/usr/man
- find . -type f -exec gzip -9 {} \;
- for i in $( find . -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-)
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a COPYING README ChangeLog TODO $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a COPYING README.md ChangeLog TODO $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
cat $PKG/etc/knockd.conf > $PKG/usr/doc/$PRGNAM-$VERSION/knockd.conf
mv $PKG/etc/knockd.conf $PKG/etc/knockd.conf.new
diff --git a/network/knock/knock.info b/network/knock/knock.info
index 8274f4fce1..6845299aa4 100644
--- a/network/knock/knock.info
+++ b/network/knock/knock.info
@@ -1,8 +1,8 @@
PRGNAM="knock"
-VERSION="0.5"
+VERSION="0.7"
HOMEPAGE="http://www.zeroflux.org"
-DOWNLOAD="http://www.zeroflux.org/proj/knock/files/knock-0.5.tar.gz"
-MD5SUM="ca09d61458974cff90a700aba6120891"
+DOWNLOAD="http://www.zeroflux.org/proj/knock/files/knock-0.7.tar.gz"
+MD5SUM="cb6373fd4ccb42eeca3ff406b7fdb8a7"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/leechcraft/README b/network/leechcraft/README
deleted file mode 100644
index 22782597c3..0000000000
--- a/network/leechcraft/README
+++ /dev/null
@@ -1,26 +0,0 @@
-LeechCraft is a full-featured modular "Internet client" application,
-currently including plugins for a web browser, news feed reader,
-BitTorrent client, FTP client, and many more. Plugins are easily added
-and integrated with each other with no effort.
-
-Currently it includes following plugins:
-* Aggregator, news feed reader * BitTorrent, the BitTorrent client
-* Chatter, the IRC client * CSTP, simple HTTP implementation
-* DBusManager, D-Bus for the LeechCraft * DeadLyrics, LyricWiki.org API
-* HistoryHolder, downloads history * LCFTP, FTP implementation client
-* LMP, simple media player with streaming support
-* NetworkMonitor, which monitors for HTTP requests
-* Poshuku, the web browser * Poshuku CleanWeb, AdBlock+-compatible ad blocker
-* Poshuku FileScheme, support for the file:// browsing
-* Poshuku FUA, which allows to set fake user agents per domain
-* SeekThru, client for OpenSearch-aware web sites
-
-The following variables default to ON, but you can disable building any of
-them by passing NAME_OF_VARIABLE=OFF to the build script:
- ENABLE_SUMMARY ENABLE_TORRENT ENABLE_AGGREGATOR ENABLE_POSHUKU ENABLE_HTTP
- ENABLE_FTP ENABLE_LMP ENABLE_DBUSMANAGER ENABLE_DEADLYRICS ENABLE_SEEKTHRU
- ENABLE_NETWORKMONITOR ENABLE_HISTORYHOLDER ENABLE_CHATTER ENABLE_YASD
- ENABLE_DCMINATOR ENABLE_NEWLIFE ENABLE_ANHERO ENABLE_VGRABBER
-As an example, you can do this: ENABLE_LMP=OFF ./leechcraft.SlackBuild
-
-An optional dependency is libtorrent-rasterbar.
diff --git a/network/leechcraft/doinst.sh b/network/leechcraft/doinst.sh
deleted file mode 100644
index f3f8604d5a..0000000000
--- a/network/leechcraft/doinst.sh
+++ /dev/null
@@ -1,22 +0,0 @@
-if [ -x /usr/bin/update-desktop-database ]; then
- /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
-fi
-
-if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
- if [ -x /usr/bin/gtk-update-icon-cache ]; then
- /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
- fi
-fi
-
-if [ -e usr/share/icons/Pevzi/icon-theme.cache ]; then
- if [ -x /usr/bin/gtk-update-icon-cache ]; then
- /usr/bin/gtk-update-icon-cache -f usr/share/icons/Pevzi >/dev/null 2>&1
- fi
-fi
-
-if [ -e usr/share/icons/oxygen/icon-theme.cache ]; then
- if [ -x /usr/bin/gtk-update-icon-cache ]; then
- /usr/bin/gtk-update-icon-cache -f usr/share/icons/oxygen >/dev/null 2>&1
- fi
-fi
-
diff --git a/network/leechcraft/leechcraft.SlackBuild b/network/leechcraft/leechcraft.SlackBuild
deleted file mode 100644
index 80b2acc607..0000000000
--- a/network/leechcraft/leechcraft.SlackBuild
+++ /dev/null
@@ -1,111 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for LeechCraft
-
-# Copyright 2009 rexim
-# 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.
-
-PRGNAM=leechcraft
-VERSION=${VERSION:-0.3.65}
-BUILD=${BUILD:-2}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
- EXTRA_CMAKE_FLAGS=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
- EXTRA_CMAKE_FLAGS=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
- EXTRA_CMAKE_FLAGS="-DRESPECTLIB64=True"
-fi
-
-set -eu
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-mkdir -p build
-cd build
-cmake \
- -DCMAKE_CXX_FLAGS="$SLKCFLAGS" \
- -DCMAKE_C_FLAGS="$SLKCFLAGS" \
- -DCMAKE_INSTALL_PREFIX="/usr" \
- -DLIB_SUFFIX="$LIBDIRSUFFIX" \
- -DENABLE_SUMMARY="${ENABLE_SUMMARY:-ON}" \
- -DENABLE_TORRENT="${ENABLE_TORRENT:-ON}" \
- -DENABLE_AGGREGATOR="${ENABLE_AGGREGATOR:-ON}" \
- -DENABLE_POSHUKU="${ENABLE_POSHUKU:-ON}" \
- -DENABLE_HTTP="${ENABLE_HTTP:-ON}" \
- -DENABLE_FTP="${ENABLE_FTP:-ON}" \
- -DENABLE_LMP="${ENABLE_LMP:-ON}" \
- -DENABLE_DBUSMANAGER="${ENABLE_DBUSMANAGER:-ON}" \
- -DENABLE_DEADLYRICS="${ENABLE_DEADLYRICS:-ON}" \
- -DENABLE_SEEKTHRU="${ENABLE_SEEKTHRU:-ON}" \
- -DENABLE_NETWORKMONITOR="${ENABLE_NETWORKMONITOR:-ON}" \
- -DENABLE_HISTORYHOLDER="${ENABLE_HISTORYHOLDER:-ON}" \
- -DENABLE_CHATTER="${ENABLE_CHATTER:-ON}" \
- -DENABLE_YASD="${ENABLE_YASD:-ON}" \
- -DENABLE_DCMINATOR="${ENABLE_DCMINATOR:-ON}" \
- -DENABLE_NEWLIFE="${ENABLE_NEWLIFE:-ON}" \
- -DENABLE_ANHERO="${ENABLE_ANHERO:-ON}" \
- -DENABLE_VGRABBER="${ENABLE_VGRABBER:-ON}" \
- $EXTRA_CMAKE_FLAGS \
- ../src/
-
-make
-make install DESTDIR=$PKG
-
-# Move the manual pages to the correct place
-mv $PKG/usr/share/man $PKG/usr
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-cat $CWD/doinst.sh > $PKG/install/doinst.sh
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/network/leechcraft/leechcraft.info b/network/leechcraft/leechcraft.info
deleted file mode 100644
index 946c9060bd..0000000000
--- a/network/leechcraft/leechcraft.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="leechcraft"
-VERSION="0.3.65"
-HOMEPAGE="https://leechcraft.org/"
-DOWNLOAD="https://downloads.sourceforge.net/leechcraft/leechcraft-0.3.65.tar.bz2"
-MD5SUM="f410eae27731aa80b8921701477b15e7"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="rexim"
-EMAIL="reximkut@gmail.com"
diff --git a/network/leechcraft/slack-desc b/network/leechcraft/slack-desc
deleted file mode 100644
index eddd124950..0000000000
--- a/network/leechcraft/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-leechcraft: leechcraft (modular internet client application)
-leechcraft:
-leechcraft: LeechCraft is a full-featured modular "Internet client" application,
-leechcraft: currently including plugins for a web browser, news feed reader,
-leechcraft: BitTorrent client, FTP client and many more. Plugins are easily added
-leechcraft: and integrated with each other with no effort.
-leechcraft:
-leechcraft: Homepage: http://leechcraft.org/
-leechcraft:
-leechcraft:
-leechcraft:
diff --git a/network/linuxdcpp/linuxdcpp.SlackBuild b/network/linuxdcpp/linuxdcpp.SlackBuild
index e83b5a345b..bf57367f58 100644
--- a/network/linuxdcpp/linuxdcpp.SlackBuild
+++ b/network/linuxdcpp/linuxdcpp.SlackBuild
@@ -65,7 +65,7 @@ find -L . \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS -fpermissive" \
+CXXFLAGS="$SLKCFLAGS -fpermissive -std=gnu++98" \
scons \
PREFIX=/usr \
FAKE_ROOT=$PKG \
diff --git a/network/memcached/memcached.SlackBuild b/network/memcached/memcached.SlackBuild
index 404909ad39..833314e8d8 100644
--- a/network/memcached/memcached.SlackBuild
+++ b/network/memcached/memcached.SlackBuild
@@ -82,7 +82,7 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-CFLAGS="$SLKCFLAGS" \
+CFLAGS="$SLKCFLAGS -Wno-error=format-overflow -Wno-error=format-truncation" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
diff --git a/network/midori/README b/network/midori/README
index 16ec7ed18a..d8f163a4e0 100644
--- a/network/midori/README
+++ b/network/midori/README
@@ -1,7 +1,7 @@
Midori is a lightweight, webkit-based web browser.
Features:
- * Full integration with GTK+2
+ * Full integration with GTK+3
* Fast rendering with WebKit
* Tabs, windows and session management
* Flexibly configurable Web Search.
@@ -10,11 +10,3 @@ Features:
* Customizable and extensible interface.
* Extensions such as Adblock, form history, mouse gestures
or cookie management.
-
-GTK3 support is disabled by default but can be enabled
-by passing GTK3=yes to the script, e.g.
-
- GTK3=yes ./midori.SlackBuild
-
-If enabled then webkitgtk3 and libunique3 (instead of webkitgtk
-and libunique) are required.
diff --git a/network/midori/doinst.sh b/network/midori/doinst.sh
index 8505e6eaff..4a25de5e6f 100644
--- a/network/midori/doinst.sh
+++ b/network/midori/doinst.sh
@@ -1,19 +1,3 @@
-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...
-}
-
-config etc/xdg/midori/search.new
-config etc/xdg/midori/extensions/adblock/config.new
-
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
diff --git a/network/midori/midori.SlackBuild b/network/midori/midori.SlackBuild
index 99efa991c7..e04135d5b3 100644
--- a/network/midori/midori.SlackBuild
+++ b/network/midori/midori.SlackBuild
@@ -5,7 +5,7 @@
# Copyright 2008 Andrew Brouwers <abrouwers@gmail.com>
# Copyright 2009-2011 Pierre Cazenave <pwcazenave {at} gmail [dot] com>
# Copyright 2012-2013 Roberto Neri, Palermo, Italy
-# Copyright 2013-2016 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
+# Copyright 2013-2018 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
#
# All rights reserved.
#
@@ -27,7 +27,8 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=midori
-VERSION=${VERSION:-0.5.11}
+SRCNAM=core
+VERSION=${VERSION:-7}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -61,22 +62,14 @@ else
LIBDIRSUFFIX=""
fi
-# GTK3 support is disabled by default but can be enabled
-# by passing GTK3=yes to the script
-if [ "${GTK3:-no}" = "yes" ]; then
- ENABLE_GTK3="ON"
-else
- ENABLE_GTK3="OFF"
-fi
-
set -eu
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/${PRGNAM}_${VERSION}_all_.tar.?z*
-cd $PRGNAM-$VERSION
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$PRGNAM-v$VERSION.tar.?z
+cd $SRCNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -87,30 +80,20 @@ find -L . \
mkdir -p build
cd build
cmake \
- -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_FULL_SYSCONFDIR=/etc \
- -DCMAKE_INSTALL_FULL_LIBDIR=/usr/lib$LIBDIRSUFFIX \
- -DCMAKE_INSTALL_DOCDIR=/usr/doc/$PRGNAM-$VERSION \
- -DDATADIR=/usr/share/$PRGNAM \
- -DUSE_ZEITGEIST=OFF \
- -DUSE_GTK3="$ENABLE_GTK3" \
- -DHALF_BRO_INCOM_WEBKIT2=ON \
- -DCMAKE_BUILD_TYPE=Release ..
- make
- make install DESTDIR=$PKG
+ -DCMAKE_INSTALL_LIBDIR=/usr/lib$LIBDIRSUFFIX \
+ -DCMAKE_C_FLAGS="$SLKCFLAGS" \
+ -DVALA_CFLAGS="$SLKCFLAGS" \
+ -G Ninja \
+ ..
+ ninja
+ DESTDIR=$PKG ninja install
cd ..
-# Don't clobber existing configs
-mv $PKG/etc/xdg/midori/search $PKG/etc/xdg/midori/search.new
-mv $PKG/etc/xdg/midori/extensions/adblock/config $PKG/etc/xdg/midori/extensions/adblock/config.new
-
-# The other docs have been taken care by make install
+rm -fR $PKG/usr/share/doc
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a HACKING TODO TRANSLATE \
- $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a COPYING ChangeLog README.md $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-ln -s $PRGNAM-$VERSION $PKG/usr/doc/$PRGNAM
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
diff --git a/network/midori/midori.info b/network/midori/midori.info
index a2abab3152..028cb6b791 100644
--- a/network/midori/midori.info
+++ b/network/midori/midori.info
@@ -1,10 +1,10 @@
PRGNAM="midori"
-VERSION="0.5.11"
-HOMEPAGE="http://midori-browser.org/"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/midori_0.5.11_all_.tar.bz2"
-MD5SUM="fcc03ef759fce4fe9f2446d9da4a065e"
+VERSION="7"
+HOMEPAGE="https://midori-browser.org/"
+DOWNLOAD="https://github.com/midori-browser/core/archive/v7/midori-v7.tar.gz"
+MD5SUM="99ed608331f8894dc3e069bc1c58eedd"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="vala webkit2gtk"
+REQUIRES="ninja vala webkit2gtk"
MAINTAINER="Matteo Bernardini"
EMAIL="ponce@slackbuilds.org"
diff --git a/network/midori/slack-desc b/network/midori/slack-desc
index bddbb483ce..15edff5601 100644
--- a/network/midori/slack-desc
+++ b/network/midori/slack-desc
@@ -8,12 +8,12 @@
|-----handy-ruler------------------------------------------------------|
midori: midori (simple web-browser)
midori:
-midori: midori is a simple web-browser, based on the webkit framework.
+midori: midori is a simple web-browser, based on the webkit framework
+midori: and gtk+3.
midori:
+midori: Homepage: https://midori-browser.org
midori:
midori:
-midori: Homepage: http://midori-browser.org/
-midori:
midori:
midori:
midori:
diff --git a/network/mldonkey/mldonkey.SlackBuild b/network/mldonkey/mldonkey.SlackBuild
index 5845ea64a1..8c7adeb4bd 100644
--- a/network/mldonkey/mldonkey.SlackBuild
+++ b/network/mldonkey/mldonkey.SlackBuild
@@ -26,13 +26,13 @@
# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=mldonkey
-VERSION=${VERSION:-3.1.5}
+VERSION=${VERSION:-3.1.6}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -45,8 +45,8 @@ PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
GUIOPT=${GUIOPT:-no}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -69,10 +69,10 @@ tar xvf $CWD/$PRGNAM-$VERSION.tar.?z*
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
# This avoids downloading tarballs when the SlackBuild is running
mkdir -p patches
@@ -105,7 +105,7 @@ CXXFLAGS="$SLKCFLAGS" \
make -j1
make install DESTDIR=$PKG
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
if [ "$GUIOPT" = 'yes' ]; then
@@ -116,7 +116,7 @@ fi
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
- distrib/*.txt docs ChangeLog \
+ distrib/*.txt docs \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
diff --git a/network/mldonkey/mldonkey.info b/network/mldonkey/mldonkey.info
index f2de7a097c..8d2907a4bc 100644
--- a/network/mldonkey/mldonkey.info
+++ b/network/mldonkey/mldonkey.info
@@ -1,10 +1,10 @@
PRGNAM="mldonkey"
-VERSION="3.1.5"
+VERSION="3.1.6"
HOMEPAGE="http://mldonkey.sourceforge.net"
-DOWNLOAD="http://downloads.sourceforge.net/mldonkey/mldonkey-3.1.5.tar.bz2 \
+DOWNLOAD="https://github.com/ygrek/mldonkey/releases/download/release-3-1-6/mldonkey-3.1.6.tar.bz2 \
http://caml.inria.fr/pub/distrib/ocaml-3.12/ocaml-3.12.0.tar.gz \
http://www.math.nagoya-u.ac.jp/~garrigue/soft/olabl/dist/lablgtk-2.14.2.tar.gz"
-MD5SUM="eca07c8ce88702dd437c72db531162d9 \
+MD5SUM="d73a925fb3559eed2c1d91fdeed1153a \
3ba7cc65123c3579f14e7c726d3ee782 \
bad77680a72dab8b915cae99d1ec9b1f"
DOWNLOAD_x86_64=""
diff --git a/network/mosh/mosh.SlackBuild b/network/mosh/mosh.SlackBuild
index 4f5fe7ce09..bd912a0982 100644
--- a/network/mosh/mosh.SlackBuild
+++ b/network/mosh/mosh.SlackBuild
@@ -52,7 +52,7 @@ find -L . \
-exec chmod 644 {} \;
CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS -fpermissive" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
diff --git a/network/mumble/boost-1.66.patch b/network/mumble/boost-1.66.patch
new file mode 100644
index 0000000000..cf61106ce6
--- /dev/null
+++ b/network/mumble/boost-1.66.patch
@@ -0,0 +1,32 @@
+From ea861fe86743c8402bbad77d8d1dd9de8dce447e Mon Sep 17 00:00:00 2001
+From: Mikkel Krautz <mikkel@krautz.dk>
+Date: Fri, 29 Dec 2017 14:47:25 +0100
+Subject: [PATCH] AudioOutput: do not use non-existant template version of
+ std::abs.
+
+This change fixes AudioOutput to use the float overload of std::abs:
+
+ float std::abs(float);
+
+instead of a non-existant template version.
+
+Fixes mumble-voip/mumble#3281
+
+Needs-Backport: 1.2.x
+---
+ src/mumble/AudioOutput.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/mumble/AudioOutput.cpp b/src/mumble/AudioOutput.cpp
+index cbe0c0e2b..7a0a5e2ab 100644
+--- a/src/mumble/AudioOutput.cpp
++++ b/src/mumble/AudioOutput.cpp
+@@ -437,7 +437,7 @@ bool AudioOutput::mix(void *outbuff, unsigned int nsamp) {
+ top[2] = 0.0f;
+ }
+
+- if (std::abs<float>(front[0] * top[0] + front[1] * top[1] + front[2] * top[2]) > 0.01f) {
++ if (std::abs(front[0] * top[0] + front[1] * top[1] + front[2] * top[2]) > 0.01f) {
+ // Not perpendicular. Assume Y up and rotate 90 degrees.
+
+ float azimuth = 0.0f;
diff --git a/network/mumble/mumble.SlackBuild b/network/mumble/mumble.SlackBuild
index 9de8dc9468..08a665cc71 100644
--- a/network/mumble/mumble.SlackBuild
+++ b/network/mumble/mumble.SlackBuild
@@ -92,6 +92,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# From upstream, needed for the newer boost
+patch -p1 < $CWD/boost-1.66.patch
+
# Mumble won't find the speechd header without this
patch -p1 < $CWD/libspeechd_header.patch
diff --git a/network/museek+/README b/network/museek+/README
deleted file mode 100644
index 350f3838de..0000000000
--- a/network/museek+/README
+++ /dev/null
@@ -1,23 +0,0 @@
-Museek+ is a file-sharing application for the Soulseek peer-to-peer network,
-written in C++. It's an enhanced version of Hyriand's original Museek
-(see http://museek.thegraveyard.org). It supports chat, transferring files,
-searching, user-management, shares browsing and more. The new features are:
-room searching, interests, buddy-only shares, banlists, icon themes, and
-font/color selecting.
-
-Museek+ consists of museekd (daemon), muscan (shares scanning tool), muscand
-(automated shares scanning tool), musetup (command-line configuration script),
-musetup-gtk (PyGTK configuration app), museeq (QT GUI client), mucous (curses
-python client), murmur (PyGTK client) and museekcontrol (command-line python
-client).
-
-After installing museek+ follow these steps:
- 1) Configure your settings with musetup: server, username, password,
- interface password, download directory, shared directories.
- 2) Run museekd.
- 3) Run museeq, mucous, or museekcontrol.
- 4) Login into museekd via the interface socket or host:port and the
- interface password.
-
-An example init script (rc.museekd) for the museekd daemon is provided.
-Feel free to modify it for your needs. Use it at your own risk.
diff --git a/network/museek+/doinst.sh b/network/museek+/doinst.sh
deleted file mode 100644
index 74a3bd3a48..0000000000
--- a/network/museek+/doinst.sh
+++ /dev/null
@@ -1,26 +0,0 @@
-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...
-}
-
-# Keep same perms on rc.museekd.new:
-#if [ -e etc/rc.d/rc.museekd ]; then
-# cp -a etc/rc.d/rc.museekd etc/rc.d/rc.museekd.new.incoming
-# cat etc/rc.d/rc.museekd.new > etc/rc.d/rc.museekd.new.incoming
-# mv etc/rc.d/rc.museekd.new.incoming etc/rc.d/rc.museekd.new
-#fi
-#
-#config etc/rc.d/rc.museekd.new
-
-if [ -x /usr/bin/update-desktop-database ]; then
- /usr/bin/update-desktop-database usr/share/applications >/dev/null 2>&1
-fi
-
diff --git a/network/museek+/museek+.SlackBuild b/network/museek+/museek+.SlackBuild
deleted file mode 100644
index 347b8903bf..0000000000
--- a/network/museek+/museek+.SlackBuild
+++ /dev/null
@@ -1,90 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for museek+
-# Written by Iskar Enev <iskar.enev[@]gmail.com>
-# Currently maintained by B. Watson <yalhcru@gmail.com>
-
-PRGNAM=museek+
-VERSION=${VERSION:-0.2}
-BUILD=${BUILD:-2}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-# This patch fixes the python modules install path
-# to be architecture aware
-patch -p0 < $CWD/museek-python.diff
-
-cmake -DPREFIX=/usr \
- -DMANDIR=man \
- -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS -std=c++11" \
- -DSWIG_DIR:PATH=`swig -swiglib` \
- -DEVERYTHING=1 \
- -DTRAYICON=1 \
- -DBINRELOC=0
-
-make VERBOSE=1
-make install VERBOSE=1 DESTDIR=$PKG
-
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-( cd $PKG/usr/man
- find . -type f -exec gzip -9 {} \;
- for i in $(find . -type l) ; do ln -s $(readlink $i).gz $i.gz ; rm $i ; done
-)
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a \
- COPYING CREDITS FILES LICENSE README TODO INSTALL \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-cat $CWD/rc.museekd > $PKG/usr/doc/$PRGNAM-$VERSION/rc.museekd.new
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-cat $CWD/doinst.sh > $PKG/install/doinst.sh
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/network/museek+/museek+.info b/network/museek+/museek+.info
deleted file mode 100644
index 8ee1bc1126..0000000000
--- a/network/museek+/museek+.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="museek+"
-VERSION="0.2"
-HOMEPAGE="http://museek-plus.sourceforge.net/"
-DOWNLOAD="http://downloads.sourceforge.net/museek-plus/museek+-0.2.tar.bz2"
-MD5SUM="66d3eab341e1cd6642f83d329a18c3b5"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="libxml++"
-MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
diff --git a/network/museek+/museek-python.diff b/network/museek+/museek-python.diff
deleted file mode 100644
index 844d17d624..0000000000
--- a/network/museek+/museek-python.diff
+++ /dev/null
@@ -1,44 +0,0 @@
---- murmur/CMakeLists.txt 2008-09-22 11:49:33.000000000 +0300
-+++ murmur/CMakeLists.txt.1 2009-09-01 12:04:34.000000000 +0300
-@@ -25,7 +25,7 @@
- ${PYMURMUR_FILES}
- )
-
--EXECUTE_PROCESS(COMMAND python -c "import sys; import os; print os.path.join('lib', 'python' + str(sys.version_info[0]) + '.' + str(sys.version_info[1]), 'site-packages')" museek OUTPUT_VARIABLE sitepackages OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_VARIABLE error)
-+EXECUTE_PROCESS(COMMAND python -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1,0,'')" museek OUTPUT_VARIABLE sitepackages OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_VARIABLE error)
-
- if (NOT sitepackages OR error)
- MESSAGE(FATAL_ERROR "Failed to find Python's site-packages directory" ${sitepackages} ${error})
---- mucous/CMakeLists.txt 2008-09-22 11:49:33.000000000 +0300
-+++ mucous/CMakeLists.txt.1 2009-09-01 12:04:55.000000000 +0300
-@@ -28,7 +28,7 @@
- ${PYMUCOUS_FILES}
- )
-
--EXECUTE_PROCESS(COMMAND python -c "import sys; import os; print os.path.join('lib', 'python' + str(sys.version_info[0]) + '.' + str(sys.version_info[1]), 'site-packages')" museek OUTPUT_VARIABLE sitepackages OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_VARIABLE error)
-+EXECUTE_PROCESS(COMMAND python -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1,0,'')" museek OUTPUT_VARIABLE sitepackages OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_VARIABLE error)
-
- if (NOT sitepackages OR error)
- MESSAGE(FATAL_ERROR "Failed to find Python's site-packages directory" ${sitepackages} ${error})
---- python-bindings/CMakeLists.txt 2008-09-22 11:49:33.000000000 +0300
-+++ python-bindings/CMakeLists.txt.1 2009-09-01 12:04:15.000000000 +0300
-@@ -18,7 +18,7 @@
- museek/driver.py
- )
-
--EXECUTE_PROCESS(COMMAND python -c "import sys; import os; print os.path.join('lib', 'python' + str(sys.version_info[0]) + '.' + str(sys.version_info[1]), 'site-packages')" museek OUTPUT_VARIABLE sitepackages OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_VARIABLE error)
-+EXECUTE_PROCESS(COMMAND python -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1,0,'')" museek OUTPUT_VARIABLE sitepackages OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_VARIABLE error)
-
- if (NOT sitepackages OR error)
- MESSAGE(FATAL_ERROR "Failed to find Python's site-packages directory" ${sitepackages} ${error})
---- Mucipher/PyMucipher/CMakeLists.txt 2008-10-07 19:58:27.000000000 +0300
-+++ Mucipher/PyMucipher/CMakeLists.txt.1 2009-09-01 12:05:46.000000000 +0300
-@@ -37,7 +37,7 @@
- ${CMAKE_CURRENT_BINARY_DIR}/mucipherc.py
- ${CMAKE_CURRENT_BINARY_DIR}/_mucipherc.so
- )
--EXECUTE_PROCESS(COMMAND python -c "import sys; import os; print os.path.join('lib', 'python' + str(sys.version_info[0]) + '.' + str(sys.version_info[1]), 'site-packages')" museek OUTPUT_VARIABLE sitepackages OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_VARIABLE error)
-+EXECUTE_PROCESS(COMMAND python -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1,0,'')" museek OUTPUT_VARIABLE sitepackages OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_VARIABLE error)
-
- if (NOT sitepackages OR error)
- MESSAGE(FATAL_ERROR "Failed to find Python's site-packages directory" ${sitepackages} ${error})
diff --git a/network/museek+/rc.museekd b/network/museek+/rc.museekd
deleted file mode 100644
index 8c74eb95ab..0000000000
--- a/network/museek+/rc.museekd
+++ /dev/null
@@ -1,105 +0,0 @@
-#!/bin/sh
-#
-# This shell script takes care of starting and stopping museekd.
-
-MUSEEKD=/usr/bin/museekd
-MUSETUP=/usr/bin/musetup
-MUSCAN=/usr/bin/muscan
-MUSOCKET=/tmp/museekd.root
-PIDFILE=/var/run/museekd.pid
-DBDIR=/var/museek
-CONFIG=$DBDIR/museekd.xml
-CHOWNSOCKET=YES
-
-case "$1" in
- start)
- if [ ! -d $DBDIR ]; then
- mkdir $DBDIR
- fi
- if [ ! -f $CONFIG ]; then
- echo -n "Starting Museek Setup"
- echo
- if [ ! -d $DBDIR ]; then
- mkdir $DBDIR
- fi
- $MUSETUP $CONFIG
- echo
- fi
- if [ -f $PIDFILE ]; then
- echo -n "Museek Daemon already running (or zombie pid file in /var/run/)"
- echo
- exit
- fi
- echo -n "Starting Museek Daemon"
- $MUSEEKD -c $CONFIG &>/dev/null &
- PID="$!"
- sleep 2
- if kill -0 $PID # pid check
- then
- if [ $CHOWNSOCKET = YES ];
- then
- if [ -e $MUSOCKET ]; then chmod 666 $MUSOCKET
- # access the museekd socket from other users, may be a security risk on multiuser systems
- fi
- fi
- echo $PID > $PIDFILE
- echo
- else
- echo -n "Museekd isn't starting up properly. Check your Config file, \nor run 'museekd -c /var/museek/museekd.xml' for verbose messages."
- echo
- fi
- ;;
- stop)
- echo -n "Stopping Museek Daemon"
- echo
- if [ -f $PIDFILE ]; then
- kill -15 $(cat $PIDFILE) &>/dev/null
- rm $PIDFILE
- else
- echo -n "Museek Daemon not running"
- echo
- exit
- fi
- ;;
- reconnect)
- if [ -f $PIDFILE ]; then
- echo -n "Attempting to reconnect Museekd to the Server"
- kill -ALRM $(cat $PIDFILE) &>/dev/null
- echo
- fi
- ;;
- restart)
- $0 stop
- sleep 3
- $0 start
- ;;
- rescan)
- echo -n "Starting Muscan, rescanning shared files"
- echo
- $MUSCAN -c $CONFIG -r -v
- echo
- $0 reload
- ;;
- setup)
- echo -n "Starting Museek Setup"
- echo
- if [ ! -d $DBDIR ]; then
- mkdir $DBDIR
- fi
- $MUSETUP $CONFIG
- echo
- ;;
- reload)
- if [ -f $PIDFILE ]; then
- echo -n "Reloading Museek Daemon to update Shares"
- kill -HUP $(cat $PIDFILE)
- echo
- else
- echo -n "Museek Daemon not running, can't reload shares"
- echo
- fi
- ;;
- *)
- echo "usage: $0 {start|stop|restart|rescan|reconnect|setup|reload}"
- echo -n
-esac
diff --git a/network/museek+/slack-desc b/network/museek+/slack-desc
deleted file mode 100644
index 58f0d98ace..0000000000
--- a/network/museek+/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-museek+: museek+ (file-sharing application)
-museek+:
-museek+: Museek+ is a file-sharing application for the Soulseek p2p network,
-museek+: written in C++. It's an enhanced version of Hyriand's original Museek
-museek+: (http://museek.thegraveyard.org). It supports chat, transferring
-museek+: files, searching, user-management, sharing, banlists, interests
-museek+: and more. Museek+ consists of museekd (daemon), muscan (shares
-museek+: scanning tool), muscand (automated shares scanning tool), musetup
-museek+: (command-line configuration script), musetup-gtk (PyGTK configuration
-museek+: app), museeq (QT GUI client), mucous (curses python client),
-museek+: museekcontrol (command-line python client) and murmur (PyGTK client).
diff --git a/network/ncrack/ncrack.SlackBuild b/network/ncrack/ncrack.SlackBuild
index e7fa0d50de..c99b3248a4 100644
--- a/network/ncrack/ncrack.SlackBuild
+++ b/network/ncrack/ncrack.SlackBuild
@@ -71,7 +71,7 @@ find -L . \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS -fpermissive" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
diff --git a/network/nghttp2/README b/network/nghttp2/README
deleted file mode 100644
index 3d05758f54..0000000000
--- a/network/nghttp2/README
+++ /dev/null
@@ -1,4 +0,0 @@
-nghttp2 is an implementation of HTTP/2 and its header compression
-algorithm HPACK in C.
-The framing layer of HTTP/2 is implemented as a form of reusable C
-library.
diff --git a/network/nghttp2/nghttp2.SlackBuild b/network/nghttp2/nghttp2.SlackBuild
deleted file mode 100644
index 39af89748f..0000000000
--- a/network/nghttp2/nghttp2.SlackBuild
+++ /dev/null
@@ -1,102 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for "nghttp2".
-
-# Copyright 2016 Marcel Saegebarth <marc@mos6581.de>
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=nghttp2
-VERSION=${VERSION:-1.16.1}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --disable-python-bindings \
- --with-jemalloc \
- --disable-static \
- --build=$ARCH-slackware-linux
-
-make
-make install-strip DESTDIR=$PKG
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS COPYING ChangeLog INSTALL README $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/network/nghttp2/nghttp2.info b/network/nghttp2/nghttp2.info
deleted file mode 100644
index 11476aa1b8..0000000000
--- a/network/nghttp2/nghttp2.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="nghttp2"
-VERSION="1.16.1"
-HOMEPAGE="https://nghttp2.org/"
-DOWNLOAD="https://github.com/nghttp2/nghttp2/releases/download/v1.16.1/nghttp2-1.16.1.tar.xz"
-MD5SUM="bde0dca3fd5da7bc5c7c8470ed0674b5"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="jansson"
-MAINTAINER="Marcel Saegebarth"
-EMAIL="marc@mos6581.de"
diff --git a/network/nghttp2/slack-desc b/network/nghttp2/slack-desc
deleted file mode 100644
index a1d218da43..0000000000
--- a/network/nghttp2/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-nghttp2: nghttp2 (HTTP/2 implementation)
-nghttp2:
-nghttp2: nghttp2 is an implementation of HTTP/2 and its header compression
-nghttp2: algorithm HPACK in C.
-nghttp2: The framing layer of HTTP/2 is implemented as a form of reusable C
-nghttp2: library.
-nghttp2:
-nghttp2: Homepage: https://nghttp2.org/
-nghttp2:
-nghttp2:
-nghttp2:
diff --git a/network/opendkim/opendkim.SlackBuild b/network/opendkim/opendkim.SlackBuild
index 85b2b88f4b..83b188ea96 100644
--- a/network/opendkim/opendkim.SlackBuild
+++ b/network/opendkim/opendkim.SlackBuild
@@ -104,6 +104,9 @@ else
UNBOUND=""
fi
+patch -p1 < $CWD/openssl_1.1.0_compat.patch
+autoreconf -vif
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
diff --git a/network/opendkim/openssl_1.1.0_compat.patch b/network/opendkim/openssl_1.1.0_compat.patch
new file mode 100644
index 0000000000..383990832a
--- /dev/null
+++ b/network/opendkim/openssl_1.1.0_compat.patch
@@ -0,0 +1,90 @@
+Description: Build and work with either openssl 1.0.2 or 1.1.0
+ * Add patch to build with either openssl 1.0.2 or 1.1.0 (Closes: #828466)
+ - Thanks to Sebastian Andrzej Siewior for the patch
+Author: Sebastian Andrzej Siewior
+Bug-Debian: http://bugs.debian.org/828466
+Origin: vendor
+Forwarded: no
+Reviewed-By: Scott Kitterman <scott@kitterman.com>
+Last-Update: <YYYY-MM-DD>
+
+--- opendkim-2.11.0~alpha.orig/configure.ac
++++ opendkim-2.11.0~alpha/configure.ac
+@@ -864,26 +864,28 @@ then
+ AC_SEARCH_LIBS([ERR_peek_error], [crypto], ,
+ AC_MSG_ERROR([libcrypto not found]))
+
+- AC_SEARCH_LIBS([SSL_library_init], [ssl], ,
+- [
+- if test x"$enable_shared" = x"yes"
+- then
+- AC_MSG_ERROR([Cannot build shared opendkim
+- against static openssl libraries.
+- Configure with --disable-shared
+- to get this working or obtain a
+- shared libssl library for
+- opendkim to use.])
+- fi
+
+- # avoid caching issue - last result of SSL_library_init
+- # shouldn't be cached for this next check
+- unset ac_cv_search_SSL_library_init
+- LIBCRYPTO_LIBS="$LIBCRYPTO_LIBS -ldl"
+- AC_SEARCH_LIBS([SSL_library_init], [ssl], ,
+- AC_MSG_ERROR([libssl not found]), [-ldl])
+- ]
+- )
++ AC_LINK_IFELSE(
++ [AC_LANG_PROGRAM([[#include <openssl/ssl.h>]],
++ [[SSL_library_init();]])],
++ [od_have_ossl="yes";],
++ [od_have_ossl="no";])
++ if test x"$od_have_ossl" = x"no"
++ then
++ if test x"$enable_shared" = x"yes"
++ then
++ AC_MSG_ERROR([Cannot build shared opendkim
++ against static openssl libraries.
++ Configure with --disable-shared
++ to get this working or obtain a
++ shared libssl library for
++ opendkim to use.])
++ fi
++
++ LIBCRYPTO_LIBS="$LIBCRYPTO_LIBS -ldl"
++ AC_SEARCH_LIBS([SSL_library_init], [ssl], ,
++ AC_MSG_ERROR([libssl not found]), [-ldl])
++ fi
+
+ AC_CHECK_DECL([SHA256_DIGEST_LENGTH],
+ AC_DEFINE([HAVE_SHA256], 1,
+--- opendkim-2.11.0~alpha.orig/opendkim/opendkim-crypto.c
++++ opendkim-2.11.0~alpha/opendkim/opendkim-crypto.c
+@@ -222,7 +222,11 @@ dkimf_crypto_free_id(void *ptr)
+ {
+ assert(pthread_setspecific(id_key, ptr) == 0);
+
++#if OPENSSL_VERSION_NUMBER >= 0x10100000
++ OPENSSL_thread_stop();
++#else
+ ERR_remove_state(0);
++#endif
+
+ free(ptr);
+
+@@ -392,11 +396,15 @@ dkimf_crypto_free(void)
+ {
+ if (crypto_init_done)
+ {
++#if OPENSSL_VERSION_NUMBER >= 0x10100000
++ OPENSSL_thread_stop();
++#else
+ CRYPTO_cleanup_all_ex_data();
+ CONF_modules_free();
+ EVP_cleanup();
+ ERR_free_strings();
+ ERR_remove_state(0);
++#endif
+
+ if (nmutexes > 0)
+ {
diff --git a/network/pidgin-musictracker/pidgin-musictracker.SlackBuild b/network/pidgin-musictracker/pidgin-musictracker.SlackBuild
index 2307eb44cc..5a4ea68244 100644
--- a/network/pidgin-musictracker/pidgin-musictracker.SlackBuild
+++ b/network/pidgin-musictracker/pidgin-musictracker.SlackBuild
@@ -70,7 +70,7 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
-CFLAGS="$SLKCFLAGS -Wno-error=deprecated-declarations" \
+CFLAGS="$SLKCFLAGS -Wno-error=deprecated-declarations -Wno-error=expansion-to-defined -Wno-error=implicit-fallthrough= -Wno-error=format-truncation=" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
diff --git a/network/postfix/README b/network/postfix/README
deleted file mode 100644
index 80840d5668..0000000000
--- a/network/postfix/README
+++ /dev/null
@@ -1,39 +0,0 @@
-Postfix is Wietse Venema's mailer that started life as an alternative to the
-widely-used Sendmail program. It attempts to be fast, easy to administer, and
-secure, while at the same time, being sendmail compatible enough to not upset
-existing users. Thus, the outside has a sendmail-ish flavor, but the inside is
-completely different.
-
-This script builds postfix with optional support for Dovecot SASL, Cyrus SASL
-can be enabled with:
-
- SASL=cyrus ./postfix.SlackBuild
-
-You can also enable support for MySQL:
-
- DATABASE=mysql ./postfix.SlackBuild
-
-PostgreSQL support can be enabled with:
-
- DATABASE=pgsql ./postfix.SlackBuild
-
-On systems with multiple instances, add major version, eg: DATABASE=pgsql-9.5
-
-This script will find support for BerkleyDB and PCRE automagically; TLS support
-requires openssl package, openssl-solibs alone is not enough. Additionally, this
-script doesn't add postfix user and groups, instead it offers sane defaults that
-won't conflict with system users and groups, and other scripts from the SBo.
-
-Package created with this script will conflict with stock sendmail package, you
-*should* remove sendmail before installing postfix, otherwise sendmail updates
-could break your postfix instance.
-
-When upgrading from an older postfix version, make sure the variables such as
-html_directory and readme_directory in /etc/postfix/main.cf point to the new
-location. These can also be fixed later, afterwards make sure to run:
-
- postfix set-permissions
-
-Furthermore, many of the utilities in postfix have multiple manpages such as
-postconf(5) and postconf(8). Use man -k to find them, and don't forget to
-subscribe to the postfix-users mailing list!
diff --git a/network/postfix/doinst.sh b/network/postfix/doinst.sh
deleted file mode 100644
index 97e6510432..0000000000
--- a/network/postfix/doinst.sh
+++ /dev/null
@@ -1,40 +0,0 @@
-#!/bin/sh
-
-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...
-}
-
-preserve_perms() {
- NEW="$1"
- OLD="$(dirname $NEW)/$(basename $NEW .new)"
- if [ -e $OLD ]; then
- cp -a $OLD ${NEW}.incoming
- cat $NEW > ${NEW}.incoming
- mv ${NEW}.incoming $NEW
- fi
- config $NEW
-}
-
-find etc/postfix -type f -name '*.new' \
- | while read new ; do config $new ; done
-
-preserve_perms etc/rc.d/rc.postfix.new
-
-# This is an incompatability with the sendmail package
-( cd usr/lib; rm -f sendmail )
-( cd usr/lib; ln -s /usr/sbin/sendmail sendmail)
-
-# This will set the permissions on all postfix files correctly
-postfix set-permissions
-
-# Symlinks added by makepkg(8)
-
diff --git a/network/postfix/patches/postconf.diff b/network/postfix/patches/postconf.diff
deleted file mode 100644
index c51c1822fe..0000000000
--- a/network/postfix/patches/postconf.diff
+++ /dev/null
@@ -1,31 +0,0 @@
---- postfix-3.0.3/postfix-install.orig 2015-01-29 23:15:30.000000000 +0100
-+++ postfix-3.0.3/postfix-install 2015-10-17 03:57:42.269896095 +0200
-@@ -248,7 +248,7 @@
- case "$junk" in
- *MAIL_VERSION*)
- case "$mail_version" in
-- "") mail_version="`bin/postconf -dhx mail_version`" || exit 1
-+ "") mail_version="`bin/postconf -c conf -dhx mail_version`" || exit 1
- esac
- val=`echo "$junk" | sed 's/MAIL_VERSION$/'"$mail_version/g"` || exit 1
- case "$val" in
-@@ -810,7 +810,7 @@
- # the wrong place when Postfix is being upgraded.
-
- case "$mail_version" in
--"") mail_version="`bin/postconf -dhx mail_version`" || exit 1
-+"") mail_version="`bin/postconf -c conf -dhx mail_version`" || exit 1
- esac
-
- # Undo MAIL_VERSION expansion at the end of a parameter value. If
---- postfix-3.0.3/Makefile.in.orig 2014-09-25 21:16:29.000000000 +0200
-+++ postfix-3.0.3/Makefile.in 2015-10-17 04:01:27.170920308 +0200
-@@ -20,7 +20,7 @@
- EXPAND = sed -e "s;\$${LIB_PREFIX};$(LIB_PREFIX);" \
- -e "s;\$${LIB_SUFFIX};$(LIB_SUFFIX);"
- SHLIB_DIR_OVERRIDE = \
-- $${shlib_directory:-`$(SHLIB_ENV) bin/postconf -dhx shlib_directory`}
-+ $${shlib_directory:-`$(SHLIB_ENV) bin/postconf -c conf -dhx shlib_directory`}
-
- default: update
-
diff --git a/network/postfix/postfix.SlackBuild b/network/postfix/postfix.SlackBuild
deleted file mode 100644
index 6bf3f38e2d..0000000000
--- a/network/postfix/postfix.SlackBuild
+++ /dev/null
@@ -1,199 +0,0 @@
-#!/bin/sh
-#
-# Copyright 2006, 2011 Alan Hicks, Lizella, GA
-# Copyright 2010, 2011, 2013, 2014, 2015, 2016, 2017, 2018, 2019 Mario Preksavec, Zagreb, Croatia
-# 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.
-
-PRGNAM=postfix
-VERSION=${VERSION:-3.3.2}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""5
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-# Build with dovecot sasl support by default
-SASL=${SASL:-dovecot}
-case "$SASL" in
- dovecot) SASLARGS="-DDEF_SERVER_SASL_TYPE=\\\"dovecot\\\""
- SASLLIBS="" ;;
- cyrus) SASLARGS="-I/usr/include/sasl -DUSE_CYRUS_SASL"
- SASLLIBS="-L/usr/lib${LIBDIRSUFFIX}/sasl2 -lsasl2" ;;
- *) SASLARGS=""
- SASLLIBS="" ;;
-esac
-
-# Build without database support by default
-DATABASE=${DATABASE:-none}
-case "$DATABASE" in
- mysql) DBARGS="-I/usr/include/mysql -DHAS_MYSQL"
- DBLIBS="-L/usr/lib${LIBDIRSUFFIX}/mysql -lmysqlclient -lz -lm" ;;
- pgsql*) PGVER=${DATABASE/pgsql-}
- [ "$PGVER" = "pgsql" ] && PGVER=$(ls /usr/lib${LIBDIRSUFFIX}/postgresql/)
- [ -d "/usr/lib${LIBDIRSUFFIX}/postgresql/$PGVER/lib" ] && {
- DBARGS="-I/usr/include/postgresql -DHAS_PGSQL"
- DBLIBS="-L/usr/lib${LIBDIRSUFFIX}/postgresql/$PGVER/lib -lpq -lz -lm"
- } || echo "PostgreSQL not found" ;;
- *) DBARGS=""
- DBLIBS="" ;;
-esac
-
-# Build without ldap support by default
-LDAP=${LDAP:-no}
-case "$LDAP" in
- yes) LDAPARGS="-DUSE_LDAP_SASL -DHAS_LDAP"
- LDAPLIBS="-lldap -llber" ;;
- *) LDAPARGS=""
- LDAPLIBS="" ;;
-esac
-
-# MySQL compile hack
-if [ $DATABASE == "mysql" ] && [ -f /usr/include/mysql/events.h ]; then
-
-cat << EOF
-
- Postfix will fail to compile with mysql support if a system-wide
- events.h file is not removed (postfix has its own events.h).
- Either disable mysql support or (re)move events.h, eg:
-
- # mv /usr/include/mysql/events.h /usr/include/mysql/events.h.bak
-
-EOF
-
- exit
-fi
-
-# Bail if user or group isn't valid on your system
-if ! grep ^postfix: /etc/passwd 2>&1 > /dev/null; then
-
-cat << EOF
-
- You must have a postfix user to run this script
-
- # groupadd -g 200 postfix
- # useradd -u 200 -d /dev/null -s /bin/false -g postfix postfix
-
-EOF
-
- exit
-elif ! grep ^postdrop: /etc/group 2>&1 > /dev/null; then
-
-cat << EOF
-
- You must have a postdrop group to run this script
-
- # groupadd -g 201 postdrop
-
-EOF
-
- exit
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-# Use config files from build tree, not system ones
-# This should probably go to upstream...
-patch -p1 <$CWD/patches/postconf.diff
-
-# Postfix does not use a ./configure script
-
-make makefiles shared=yes \
- CCARGS="-DUSE_SASL_AUTH -DUSE_TLS $SASLARGS $DBARGS $LDAPARGS" \
- AUXLIBS="-lssl -lcrypto $SASLLIBS $DBLIBS $LDAPLIBS" \
- OPT="$SLKCFLAGS" DEBUG=""
-
-make non-interactive-package \
- install_root=$PKG \
- tempdir=$TMP/$PRGNAM-temp \
- config_directory=/etc/postfix \
- daemon_directory=/usr/libexec/postfix \
- command_directory=/usr/sbin \
- queue_directory=/var/spool/postfix \
- sendmail_path=/usr/sbin/sendmail \
- newaliases_path=/usr/bin/newaliases \
- mailq_path=/usr/bin/mailq \
- mail_owner=postfix \
- setgid_group=postdrop \
- html_directory=/usr/doc/$PRGNAM-$VERSION/html \
- manpage_directory=/usr/man \
- readme_directory=/usr/doc/$PRGNAM-$VERSION/README_FILES
-
-install -D -m 0644 -oroot -groot $CWD/rc.postfix $PKG/etc/rc.d/rc.postfix.new
-find $PKG/etc/postfix -type f ! -name "*.default" ! -name "*.proto" ! -name "*.out" \
- ! -name "postfix-files" -exec mv {} {}.new \;
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-
-sed -i 's#\($manpage_directory/man[158]/.\+\.[158]\)\(:.*\)#\1.gz\2#' \
- $PKG/etc/postfix/postfix-files
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AAAREADME COMPATIBILITY COPYRIGHT HISTORY IPv6-ChangeLog LICENSE PORTING \
- RELEASE_NOTES TLS_ACKNOWLEDGEMENTS TLS_CHANGES TLS_LICENSE US_PATENT_6321267 \
- examples implementation-notes $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-cat $CWD/doinst.sh > $PKG/install/doinst.sh
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/network/postfix/postfix.info b/network/postfix/postfix.info
deleted file mode 100644
index 9809f40eb0..0000000000
--- a/network/postfix/postfix.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="postfix"
-VERSION="3.3.2"
-HOMEPAGE="http://www.postfix.org/"
-DOWNLOAD="http://cdn.postfix.johnriley.me/mirrors/postfix-release/official/postfix-3.3.2.tar.gz"
-MD5SUM="4e6ed7056576e0c54cfce6040a0bb0ad"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Mario Preksavec"
-EMAIL="mario at slackware dot hr"
diff --git a/network/postfix/rc.postfix b/network/postfix/rc.postfix
deleted file mode 100644
index 6e133ad9ec..0000000000
--- a/network/postfix/rc.postfix
+++ /dev/null
@@ -1,67 +0,0 @@
-#!/bin/bash
-# Copyright 2006, Alan Hicks, Lizella, GA
-# 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.
-#
-
-postfix_start()
-{
- /usr/sbin/postfix start
-}
-
-postfix_stop()
-{
- /usr/sbin/postfix stop
-}
-
-postfix_restart()
-{
- postfix_stop
- postfix_start
-}
-
-postfix_reload()
-{
- /usr/sbin/postfix reload
-}
-
-postfix_status()
-{
- /usr/sbin/postfix status
-}
-
-case $1 in
-'start')
- postfix_start
- ;;
-'stop')
- postfix_stop
- ;;
-'restart')
- postfix_restart
- ;;
-'reload')
- postfix_reload
- ;;
-'status')
- postfix_status
- ;;
-*)
- echo "usage $0 start|stop|restart|reload|status"
-esac
diff --git a/network/postfix/slack-desc b/network/postfix/slack-desc
deleted file mode 100644
index 0e8c796afc..0000000000
--- a/network/postfix/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-postfix: postfix (alternative to the widely-used Sendmail program)
-postfix:
-postfix: Postfix attempts to be fast, easy to administer, and secure, while at
-postfix: the same time being sendmail compatible enough to not upset existing
-postfix: users. Thus, the outside has a sendmail-ish flavor, but the inside is
-postfix: completely different.
-postfix:
-postfix: Packaging script written by Alan Hicks <alan@lizella.net>
-postfix: and the SlackBuilds.org Team <http://www.slackbuilds.org>
-postfix:
-postfix:
diff --git a/network/razor-agents/razor-agents.SlackBuild b/network/razor-agents/razor-agents.SlackBuild
index 814bf7acf7..bc9ef7a41a 100644
--- a/network/razor-agents/razor-agents.SlackBuild
+++ b/network/razor-agents/razor-agents.SlackBuild
@@ -71,7 +71,7 @@ perl Makefile.PL \
INSTALLDIRS=vendor \
INSTALLVENDORMAN1DIR=/usr/man/man1 \
INSTALLVENDORMAN3DIR=/usr/man/man3
-make
+make -j1
make test
make install DESTDIR=$PKG INSTALLMAN5DIR=$PKG/usr/man/man5
diff --git a/network/remmina/find_libssh.patch b/network/remmina/find_libssh.patch
new file mode 100644
index 0000000000..77976db696
--- /dev/null
+++ b/network/remmina/find_libssh.patch
@@ -0,0 +1,25 @@
+From: "Matteo F. Vescovi" <mfv@debian.org>
+Date: Sun, 12 Aug 2018 14:22:40 +0200
+Subject: Fix_Cmake_rule_for_LibSSH
+
+---
+ cmake/FindLIBSSH.cmake | 6 +++++-
+ 1 file changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/cmake/FindLIBSSH.cmake b/cmake/FindLIBSSH.cmake
+index f003e2d..d1bfe23 100644
+--- a/cmake/FindLIBSSH.cmake
++++ b/cmake/FindLIBSSH.cmake
+@@ -51,7 +51,11 @@ include(FindPackageHandleStandardArgs)
+
+ find_package_handle_standard_args(LIBSSH DEFAULT_MSG LIBSSH_LIBRARY LIBSSH_INCLUDE_DIR)
+
+-set(LIBSSH_LIBRARIES ${LIBSSH_LIBRARY} ${LIBSSH_THREADS_LIBRARY})
++if (LIBSSH_THREADS_LIBRARY)
++ set(LIBSSH_LIBRARIES ${LIBSSH_LIBRARY} ${LIBSSH_THREADS_LIBRARY})
++else()
++ set(LIBSSH_LIBRARIES ${LIBSSH_LIBRARY})
++endif()
+ set(LIBSSH_INCLUDE_DIRS ${LIBSSH_INCLUDE_DIR})
+
+ mark_as_advanced(LIBSSH_INCLUDE_DIR LIBSSH_LIBRARY)
diff --git a/network/remmina/remmina.SlackBuild b/network/remmina/remmina.SlackBuild
index 94e4e67f62..2dc05dbfa1 100644
--- a/network/remmina/remmina.SlackBuild
+++ b/network/remmina/remmina.SlackBuild
@@ -77,6 +77,8 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+patch -p1 < $CWD/find_libssh.patch
+
mkdir -p build
cd build
cmake \
diff --git a/network/seafile-client/seafile-client.SlackBuild b/network/seafile-client/seafile-client.SlackBuild
deleted file mode 100644
index 205c0af148..0000000000
--- a/network/seafile-client/seafile-client.SlackBuild
+++ /dev/null
@@ -1,103 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for "seafile-client".
-
-# Copyright 2015 Marcel Saegebarth <marc@mos6581.de>
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=seafile-client
-SRCNAM=seafile
-VERSION=${VERSION:-4.4.6}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i486 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $SRCNAM-$VERSION
-tar xvf $CWD/v$VERSION-server.tar.gz || tar xvf $CWD/$SRCNAM-$VERSION-server.tar.gz
-cd $SRCNAM-$VERSION-server
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-sh autogen.sh
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --enable-client \
- --enable-static=no \
- --build=$ARCH-slackware-linux
-
-make
-make install-strip DESTDIR=$PKG
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a LICENSE.txt README.markdown $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/network/seafile-client/seafile-client.info b/network/seafile-client/seafile-client.info
deleted file mode 100644
index ef875c1f8f..0000000000
--- a/network/seafile-client/seafile-client.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="seafile-client"
-VERSION="4.4.6"
-HOMEPAGE="http://seafile.com/"
-DOWNLOAD="https://github.com/haiwen/seafile/archive/v4.4.6-server.tar.gz"
-MD5SUM="753db8ec00c8f4e43270afff097a23af"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="ccnet libevhtp"
-MAINTAINER="Marcel Saegebarth"
-EMAIL="marc@mos6581.de"
diff --git a/network/seafile-client/README b/network/seafile/README
index 937324eae1..937324eae1 100644
--- a/network/seafile-client/README
+++ b/network/seafile/README
diff --git a/system/parallel/parallel.SlackBuild b/network/seafile/seafile.SlackBuild
index 7ffc2f6552..63f62460ce 100644
--- a/system/parallel/parallel.SlackBuild
+++ b/network/seafile/seafile.SlackBuild
@@ -1,8 +1,8 @@
#!/bin/sh
-# Slackware build script for "parallel".
+# Slackware build script for seafile
-# Copyright 2015-2017 Marcel Saegebarth <marc@mos6581.de>
+# Copyright 2015 Marcel Saegebarth <marc@mos6581.de>
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -24,8 +24,8 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-PRGNAM=parallel
-VERSION=${VERSION:-20170622}
+PRGNAM=seafile
+VERSION=${VERSION:-6.2.5}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -62,7 +62,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
@@ -71,6 +71,7 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+sh autogen.sh
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -80,18 +81,20 @@ CXXFLAGS="$SLKCFLAGS" \
--localstatedir=/var \
--mandir=/usr/man \
--docdir=/usr/doc/$PRGNAM-$VERSION \
+ --enable-client \
+ --enable-static=no \
--build=$ARCH-slackware-linux
make
make install-strip DESTDIR=$PKG
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a CITATION COPYING NEWS README $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a LICENSE.txt README.markdown $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
diff --git a/network/seafile/seafile.info b/network/seafile/seafile.info
new file mode 100644
index 0000000000..85067fd4fe
--- /dev/null
+++ b/network/seafile/seafile.info
@@ -0,0 +1,10 @@
+PRGNAM="seafile"
+VERSION="6.2.5"
+HOMEPAGE="https://seafile.com"
+DOWNLOAD="https://github.com/haiwen/seafile/archive/v6.2.5/seafile-6.2.5.tar.gz"
+MD5SUM="220790c24a8cb1ff88bacc03e4e87976"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="ccnet libevhtp"
+MAINTAINER="Marcel Saegebarth"
+EMAIL="marc@mos6581.de"
diff --git a/libraries/jansson/slack-desc b/network/seafile/slack-desc
index 9379939173..cad22d1bb6 100644
--- a/libraries/jansson/slack-desc
+++ b/network/seafile/slack-desc
@@ -6,14 +6,14 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-jansson: jansson (C library)
-jansson:
-jansson: Jansson is a C library for encoding, decoding and manipulating JSON
-jansson: data.
-jansson:
-jansson: Homepage: http://www.digip.org/jansson/
-jansson:
-jansson:
-jansson:
-jansson:
-jansson:
+seafile: seafile (Cloud Storage System)
+seafile:
+seafile: Seafile is a next-generation open source cloud storage system with
+seafile: advanced support for file syncing, privacy protection and teamwork.
+seafile:
+seafile: Homepage: http://seafile.com/
+seafile:
+seafile:
+seafile:
+seafile:
+seafile:
diff --git a/network/sqlrelay/sqlrelay.SlackBuild b/network/sqlrelay/sqlrelay.SlackBuild
index aa56ae3355..434b548bdb 100644
--- a/network/sqlrelay/sqlrelay.SlackBuild
+++ b/network/sqlrelay/sqlrelay.SlackBuild
@@ -23,13 +23,13 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=sqlrelay
-VERSION=${VERSION:-0.65.0}
+VERSION=${VERSION:-1.1.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -40,8 +40,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
diff --git a/network/sqlrelay/sqlrelay.info b/network/sqlrelay/sqlrelay.info
index 99177781f8..260729b0fe 100644
--- a/network/sqlrelay/sqlrelay.info
+++ b/network/sqlrelay/sqlrelay.info
@@ -1,8 +1,8 @@
PRGNAM="sqlrelay"
-VERSION="0.65.0"
+VERSION="1.1.0"
HOMEPAGE="http://sqlrelay.sourceforge.net/"
-DOWNLOAD="http://downloads.sourceforge.net/sqlrelay/sqlrelay-0.65.0.tar.gz"
-MD5SUM="231cc46bc32f6c05dc372c2f04cdcd02"
+DOWNLOAD="http://downloads.sourceforge.net/sqlrelay/sqlrelay-1.1.0.tar.gz"
+MD5SUM="be726dd405aef7d5530fd22c0c146f98"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="rudiments"
diff --git a/network/sshfs-fuse/README b/network/sshfs-fuse/README
deleted file mode 100644
index 300d34090d..0000000000
--- a/network/sshfs-fuse/README
+++ /dev/null
@@ -1,10 +0,0 @@
-SSHFS (Secure SHell FileSystem) is a file system for Linux capable of
-operating on files on a remote computer using just a secure shell login
-on the remote computer. On the local computer where the SSHFS is mounted,
-the implementation makes use of the FUSE (Filesystem in Userspace)
-kernel module.
-
-The practical effect of this is that the end user can seamlessly interact
-with remote files being securely served over SSH just as if they were
-local files on his/her computer. On the remote computer the SFTP subsystem
-of SSH is used.
diff --git a/network/sshfs-fuse/slack-desc b/network/sshfs-fuse/slack-desc
deleted file mode 100644
index 7e342f6fac..0000000000
--- a/network/sshfs-fuse/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-sshfs-fuse: sshfs-fuse (ssh file system module for FUSE)
-sshfs-fuse:
-sshfs-fuse: This is a filesystem client based on the SSH File Transfer
-sshfs-fuse: Protocol. Since most SSH servers already support this protocol it
-sshfs-fuse: is very easy to set up: i.e. on the server side there's nothing
-sshfs-fuse: to do. On the client side mounting the filesystem is as easy as
-sshfs-fuse: logging into the server with ssh.
-sshfs-fuse:
-sshfs-fuse:
-sshfs-fuse:
-sshfs-fuse:
diff --git a/network/sshfs-fuse/sshfs-fuse.SlackBuild b/network/sshfs-fuse/sshfs-fuse.SlackBuild
deleted file mode 100644
index 1e43941878..0000000000
--- a/network/sshfs-fuse/sshfs-fuse.SlackBuild
+++ /dev/null
@@ -1,99 +0,0 @@
-#!/bin/sh
-
-# Copyright 2012, Michiel van Wessem, Leicester, United Kingdom
-# Copyright 2006-2009 Alan Hicks, Lizella, GA
-# 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.
-
-PRGNAM=sshfs-fuse
-SRCNAM=sshfs
-VERSION=${VERSION:-2.8}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $SRCNAM-$VERSION
-tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
-cd $SRCNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --build=$ARCH-slackware-linux
-
-make
-make install DESTDIR=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS COPYING ChangeLog $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/network/sshfs-fuse/sshfs-fuse.info b/network/sshfs-fuse/sshfs-fuse.info
deleted file mode 100644
index ec97eeb668..0000000000
--- a/network/sshfs-fuse/sshfs-fuse.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="sshfs-fuse"
-VERSION="2.8"
-HOMEPAGE="https://github.com/libfuse/sshfs"
-DOWNLOAD="https://github.com/libfuse/sshfs/releases/download/sshfs_2.8/sshfs-2.8.tar.gz"
-MD5SUM="0ba25e848ee59e2595d6576c8f6284b6"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Michiel van Wessem"
-EMAIL="michiel@slackbuilds.org"
diff --git a/network/transmission-remote-gtk/README b/network/transmission-remote-gtk/README
index 41c17ca20c..82d2a5b511 100644
--- a/network/transmission-remote-gtk/README
+++ b/network/transmission-remote-gtk/README
@@ -8,4 +8,6 @@ management of the Transmission BitTorrent client using its RPC interface.
priorities, add/edit/remove trackers.
* Change remote settings like global limits, download directory, and
connectivity preferences.
- * Russian, Polish, Korean, and German, Spanish, Ukranian translations.
+ * Russian, Polish, Korean, and German, Spanish, Ukranian translations.
+
+GeoIP is an optional dependency.
diff --git a/network/transmission-remote-gtk/transmission-remote-gtk.SlackBuild b/network/transmission-remote-gtk/transmission-remote-gtk.SlackBuild
index 677e991256..74e31f7d63 100644
--- a/network/transmission-remote-gtk/transmission-remote-gtk.SlackBuild
+++ b/network/transmission-remote-gtk/transmission-remote-gtk.SlackBuild
@@ -32,13 +32,13 @@
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=transmission-remote-gtk
-VERSION=${VERSION:-1.2}
+VERSION=${VERSION:-1.3.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -49,8 +49,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -69,14 +69,14 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+tar xvf $CWD/$PRGNAM-$VERSION.tar.?z
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
diff --git a/network/transmission-remote-gtk/transmission-remote-gtk.info b/network/transmission-remote-gtk/transmission-remote-gtk.info
index 80f1eaffc3..a34496a278 100644
--- a/network/transmission-remote-gtk/transmission-remote-gtk.info
+++ b/network/transmission-remote-gtk/transmission-remote-gtk.info
@@ -1,8 +1,8 @@
PRGNAM="transmission-remote-gtk"
-VERSION="1.2"
+VERSION="1.3.1"
HOMEPAGE="https://github.com/transmission-remote-gtk/transmission-remote-gtk/"
-DOWNLOAD="https://github.com/transmission-remote-gtk/transmission-remote-gtk/releases/download/1.2/transmission-remote-gtk-1.2.tar.gz"
-MD5SUM="dfb485390b49c1f0af5063b44a4fef03"
+DOWNLOAD="https://github.com/transmission-remote-gtk/transmission-remote-gtk/releases/download/1.3.1/transmission-remote-gtk-1.3.1.tar.xz"
+MD5SUM="7a66a947360ed9ae0ce0b4e327dc00ed"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="transmission json-glib"
diff --git a/network/vde2/vde2.SlackBuild b/network/vde2/vde2.SlackBuild
index f0d9d64035..910dbd409f 100644
--- a/network/vde2/vde2.SlackBuild
+++ b/network/vde2/vde2.SlackBuild
@@ -71,6 +71,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# Patch to build against openssl-1.1.x - thanks archlinux!
+patch -p1 < $CWD/vde_cryptcab-compile-against-openssl-1.1.0.patch
+
EXPERIMENTAL=${EXPERIMENTAL:-false}
OPTIONS=""
diff --git a/network/vde2/vde_cryptcab-compile-against-openssl-1.1.0.patch b/network/vde2/vde_cryptcab-compile-against-openssl-1.1.0.patch
new file mode 100644
index 0000000000..227312eabb
--- /dev/null
+++ b/network/vde2/vde_cryptcab-compile-against-openssl-1.1.0.patch
@@ -0,0 +1,92 @@
+--- a/src/vde_cryptcab/cryptcab.c 2011-11-23 16:41:17.000000000 +0000
++++ b/src/vde_cryptcab/cryptcab.c 2017-03-20 22:54:20.452975075 +0000
+@@ -22,7 +22,7 @@
+ exit(1);
+ }
+
+-static EVP_CIPHER_CTX ctx;
++static EVP_CIPHER_CTX *ctx;
+ static int ctx_initialized = 0;
+ static int encryption_disabled = 0;
+ static int nfd;
+@@ -30,6 +30,10 @@
+ static struct vde_open_args open_args={.port=0,.group=NULL,.mode=0700};
+ static int verbose = 0;
+
++#if OPENSSL_VERSION_NUMBER < 0x10100000
++#define EVP_CIPHER_CTX_reset(x) EVP_CIPHER_CTX_cleanup(x)
++#endif
++
+ void vc_printlog(int priority, const char *format, ...)
+ {
+ va_list arg;
+@@ -103,19 +107,21 @@
+ }
+
+ if (!ctx_initialized) {
+- EVP_CIPHER_CTX_init (&ctx);
++ ctx = EVP_CIPHER_CTX_new ();
++ if (!ctx)
++ return -1;
+ ctx_initialized = 1;
+ }
+
+- EVP_EncryptInit (&ctx, EVP_bf_cbc (), p->key, p->iv);
+- if (EVP_EncryptUpdate (&ctx, dst, &olen, src, len) != 1)
++ EVP_EncryptInit (ctx, EVP_bf_cbc (), p->key, p->iv);
++ if (EVP_EncryptUpdate (ctx, dst, &olen, src, len) != 1)
+ {
+ fprintf (stderr,"error in encrypt update\n");
+ olen = -1;
+ goto cleanup;
+ }
+
+- if (EVP_EncryptFinal (&ctx, dst + olen, &tlen) != 1)
++ if (EVP_EncryptFinal (ctx, dst + olen, &tlen) != 1)
+ {
+ fprintf (stderr,"error in encrypt final\n");
+ olen = -1;
+@@ -124,7 +130,7 @@
+ olen += tlen;
+
+ cleanup:
+- EVP_CIPHER_CTX_cleanup(&ctx);
++ EVP_CIPHER_CTX_reset(ctx);
+ return olen;
+ }
+
+@@ -138,19 +144,21 @@
+ }
+
+ if (!ctx_initialized) {
+- EVP_CIPHER_CTX_init (&ctx);
++ ctx = EVP_CIPHER_CTX_new ();
++ if (!ctx)
++ return -1;
+ ctx_initialized = 1;
+ }
+
+- EVP_DecryptInit (&ctx, EVP_bf_cbc (), p->key, p->iv);
+- if (EVP_DecryptUpdate (&ctx, dst, &olen, src, len) != 1)
++ EVP_DecryptInit (ctx, EVP_bf_cbc (), p->key, p->iv);
++ if (EVP_DecryptUpdate (ctx, dst, &olen, src, len) != 1)
+ {
+ fprintf (stderr,"error in decrypt update\n");
+ olen = -1;
+ goto cleanup;
+ }
+
+- if (EVP_DecryptFinal (&ctx, dst + olen, &tlen) != 1)
++ if (EVP_DecryptFinal (ctx, dst + olen, &tlen) != 1)
+ {
+ fprintf (stderr,"error in decrypt final\n");
+ olen = -1;
+@@ -159,7 +167,7 @@
+ olen += tlen;
+
+ cleanup:
+- EVP_CIPHER_CTX_cleanup(&ctx);
++ EVP_CIPHER_CTX_reset (ctx);
+ return olen;
+ }
+
diff --git a/network/verlihub/verlihub-gcc7.patch b/network/verlihub/verlihub-gcc7.patch
new file mode 100644
index 0000000000..4b2ede4d42
--- /dev/null
+++ b/network/verlihub/verlihub-gcc7.patch
@@ -0,0 +1,18 @@
+diff -Naur verlihub-0.9.8e-r2.orig/src/script_api.cpp verlihub-0.9.8e-r2/src/script_api.cpp
+--- verlihub-0.9.8e-r2.orig/src/script_api.cpp 2009-05-16 16:42:07.000000000 +0200
++++ verlihub-0.9.8e-r2/src/script_api.cpp 2017-06-01 20:33:58.923440440 +0200
+@@ -218,12 +218,12 @@
+ cServerDC *server = GetCurrentVerlihub();
+ if(!server) {
+ cerr << "Server verlihub is unfortunately not running or not found." << endl;
+- return false;
++ return NULL;
+ }
+ cUser *usr = GetUser((char *) server->mC.hub_security.c_str());
+ printf("%p\n", usr);
+ printf("%p", usr->mxConn);
+- if ((!usr) || (usr && !usr->mxConn)) return false;
++ if ((!usr) || (usr && !usr->mxConn)) return NULL;
+ cout << "here" << endl;
+ if (!server->mP.ParseForCommands(command_line, usr->mxConn)) {
+ // unknown command
diff --git a/network/verlihub/verlihub.SlackBuild b/network/verlihub/verlihub.SlackBuild
index 25c0729a42..e9d5f550c4 100644
--- a/network/verlihub/verlihub.SlackBuild
+++ b/network/verlihub/verlihub.SlackBuild
@@ -71,6 +71,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# https://gcc.gnu.org/gcc-7/porting_to.html
+patch -p1 < $CWD/verlihub-gcc7.patch
+
patch -p1 < $CWD/verlihub-header.patch
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
diff --git a/office/LibreOffice/LibreOffice.SlackBuild b/office/LibreOffice/LibreOffice.SlackBuild
index 02fad92f50..559a135190 100644
--- a/office/LibreOffice/LibreOffice.SlackBuild
+++ b/office/LibreOffice/LibreOffice.SlackBuild
@@ -219,7 +219,6 @@ extnlpsolver="--enable-ext-nlpsolver"; [ "${EXTNLPSOLVER:-yes}" != "yes" ] &
--with-system-nss \
--with-system-openldap \
--with-system-openssl \
- --with-system-poppler \
--with-system-redland \
--with-system-sane \
--with-system-zlib \
diff --git a/office/abiword/abiword.SlackBuild b/office/abiword/abiword.SlackBuild
index 77fdffe278..d3c9925d88 100644
--- a/office/abiword/abiword.SlackBuild
+++ b/office/abiword/abiword.SlackBuild
@@ -80,6 +80,8 @@ find -L . \
# https://bugs.archlinux.org/task/46659
patch -p1 < $CWD/bug13815.patch
+patch -p1 < $CWD/libical-deprecated.patch
+
CPPFLAGS="-I$TMP/$PRGNAM-$VERSION" \
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS -std=c++11" \
diff --git a/office/abiword/libical-deprecated.patch b/office/abiword/libical-deprecated.patch
new file mode 100644
index 0000000000..9ca15bee12
--- /dev/null
+++ b/office/abiword/libical-deprecated.patch
@@ -0,0 +1,13 @@
+--- abiword-3.0.2/src/text/ptbl/xp/pd_DocumentRDF.cpp.orig 2015-04-02 03:09:20.000000000 +0000
++++ abiword-3.0.2/src/text/ptbl/xp/pd_DocumentRDF.cpp 2017-11-19 22:57:49.533304878 +0000
+@@ -2269,8 +2269,8 @@
+ icalcomponent_set_uid( c, m_uid.c_str() );
+ icalcomponent_set_location( c, m_location.c_str() );
+ icalcomponent_set_description( c, m_desc.c_str() );
+- icalcomponent_set_dtstart( c, icaltime_from_timet( m_dtstart, 0 ) );
+- icalcomponent_set_dtend( c, icaltime_from_timet( m_dtend, 0 ) );
++ icalcomponent_set_dtstart( c, icaltime_from_timet_with_zone( m_dtstart, 0, 0 ) );
++ icalcomponent_set_dtend( c, icaltime_from_timet_with_zone( m_dtend, 0, 0 ) );
+
+ char* data = icalcomponent_as_ical_string( c );
+ std::ofstream oss( filename.c_str() );
diff --git a/office/apvlv/apvlv.SlackBuild b/office/apvlv/apvlv.SlackBuild
index 5246eb400f..62eff77de8 100644
--- a/office/apvlv/apvlv.SlackBuild
+++ b/office/apvlv/apvlv.SlackBuild
@@ -23,15 +23,14 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
PRGNAM=apvlv
-VERSION=${VERSION:-0.1.4}
+VERSION=${VERSION:-20160627_9ab7626}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -42,8 +41,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -61,21 +60,21 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$VERSION-Source
-tar xvf $CWD/$PRGNAM-$VERSION-Source.tar.gz
-cd $PRGNAM-$VERSION-Source
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
+cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
mkdir -p build
cd build
cmake .. \
-DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_CXX_FLAGS_RELEASE="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS_RELEASE="$SLKCFLAGS -fpermissive" \
-DCMAKE_INSTALL_PREFIX=/usr \
-DAPVLV_WITH_UMD=false \
-DMANDIR=/usr/man \
diff --git a/office/apvlv/apvlv.info b/office/apvlv/apvlv.info
index da882def19..4df540a600 100644
--- a/office/apvlv/apvlv.info
+++ b/office/apvlv/apvlv.info
@@ -1,8 +1,8 @@
PRGNAM="apvlv"
-VERSION="0.1.4"
+VERSION="20160627_9ab7626"
HOMEPAGE="http://naihe2010.github.com/apvlv/"
-DOWNLOAD="https://github.com/downloads/naihe2010/apvlv/apvlv-0.1.4-Source.tar.gz"
-MD5SUM="bcd3e96350a2378662e2f2d0fa02d342"
+DOWNLOAD="http://ponce.cc/slackware/sources/repo/apvlv-20160627_9ab7626.tar.xz"
+MD5SUM="e7a285ca7ac4d3abc1842519c0f20987"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/office/calibre/calibre.SlackBuild b/office/calibre/calibre.SlackBuild
index 048798bcf9..cff4dbdc86 100644
--- a/office/calibre/calibre.SlackBuild
+++ b/office/calibre/calibre.SlackBuild
@@ -79,10 +79,6 @@ patch -p1 < $CWD/patches/calibre-no-update.patch
# Remove calibre portable scripts.
rm -f resources/calibre-portable.*
-PYTHONVER=$(python -V 2>&1 | cut -f 2 -d' ' | cut -f 1-2 -d.)
-export SIP_BIN=/usr/bin/python2-sip
-export SIP_INC_DIR="/usr/include/python$PYTHONVER/python2-sip"
-
OVERRIDE_CFLAGS="$SLKCFLAGS" \
OVERRIDE_LDFLAGS="-L/usr/lib${LIBDIRSUFFIX}" \
python setup.py build
diff --git a/office/coolreader/coolreader.SlackBuild b/office/coolreader/coolreader.SlackBuild
index d4cd5b4820..dd38f2cb84 100644
--- a/office/coolreader/coolreader.SlackBuild
+++ b/office/coolreader/coolreader.SlackBuild
@@ -22,19 +22,16 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# Upsteam url: https://sourceforge.net/p/crengine/crengine/ci/master/tree/
+
PRGNAM=coolreader
-VERSION=${VERSION:-3.0.56}
+VERSION=${VERSION:-20160825_d8a3a1b}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
-ORIG_PRGNAM=cr3
-ORIG_VERSION=$VERSION-7
-ORIG_DIRNAME=cr$ORIG_VERSION
-ORIG_FILENAME=${ORIG_PRGNAM}_$VERSION.orig.tar.gz
-
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -45,8 +42,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -59,28 +56,34 @@ else
LIBDIRSUFFIX=""
fi
+ORIG_PRGNAM=cr3
+
set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $ORIG_DIRNAME
-tar xvf $CWD/$ORIG_FILENAME
-cd $ORIG_DIRNAME
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
+cd $PRGNAM-$VERSION
chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
mkdir -p build
cd build
cmake \
- -D CMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
- -D CMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
- -D CMAKE_INSTALL_PREFIX=/usr \
- -D LIB_SUFFIX=${LIBDIRSUFFIX} \
- -D CMAKE_BUILD_TYPE=Release \
- -D MAX_IMAGE_SCALE_MUL=2 \
- -D DOC_DATA_COMPRESSION_LEVEL=3 \
- -D DOC_BUFFER_SIZE=0x1400000 \
- -D GUI=QT ..
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DMAX_IMAGE_SCALE_MUL=2 \
+ -DDOC_DATA_COMPRESSION_LEVEL=3 \
+ -DDOC_BUFFER_SIZE=0x1400000 \
+ -DGUI=QT ..
make VERBOSE=1
make install DESTDIR=$PKG
cd ..
diff --git a/office/coolreader/coolreader.info b/office/coolreader/coolreader.info
index c5b6d8c40f..6da261f458 100644
--- a/office/coolreader/coolreader.info
+++ b/office/coolreader/coolreader.info
@@ -1,8 +1,8 @@
PRGNAM="coolreader"
-VERSION="3.0.56"
+VERSION="20160825_d8a3a1b"
HOMEPAGE="https://sourceforge.net/projects/crengine/"
-DOWNLOAD="https://downloads.sourceforge.net/crengine/CoolReader3/cr3_3.0.56.orig.tar.gz"
-MD5SUM="cc221a608a1b5fea2db5a519c14eeb39"
+DOWNLOAD="http://ponce.cc/slackware/sources/repo/coolreader-20160825_d8a3a1b.tar.xz"
+MD5SUM="0c65e080d2cba8213dd19fb26f4ad9b3"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/office/fbreader/fbreader.SlackBuild b/office/fbreader/fbreader.SlackBuild
index d5c54adeac..d19b2904a3 100644
--- a/office/fbreader/fbreader.SlackBuild
+++ b/office/fbreader/fbreader.SlackBuild
@@ -56,6 +56,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# Needed for gcc >= 6.x
+sed -i "s|-Wall|-Wall -Wno-narrowing|" makefiles/arch/desktop.mk
+
patch -p1 < $CWD/fbreader-0.99.4.patch
export TARGET_ARCH=desktop
diff --git a/office/gbgoffice/gbgoffice.SlackBuild b/office/gbgoffice/gbgoffice.SlackBuild
index 08a3eac59b..268a1f6f00 100644
--- a/office/gbgoffice/gbgoffice.SlackBuild
+++ b/office/gbgoffice/gbgoffice.SlackBuild
@@ -78,6 +78,7 @@ patch -p1 -i $CWD/patches/08_fix_const_conversion.patch
patch -p1 -i $CWD/patches/09_deprecated_SigC.patch
patch -p1 -i $CWD/patches/10_workhelper-buttonbox.patch
patch -p1 -i $CWD/patches/11_explicit-linkage.patch
+patch -p1 -i $CWD/patches/12_gcc6.patch
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS -std=c++11" \
diff --git a/office/gbgoffice/patches/12_gcc6.patch b/office/gbgoffice/patches/12_gcc6.patch
new file mode 100644
index 0000000000..2ec2c344f4
--- /dev/null
+++ b/office/gbgoffice/patches/12_gcc6.patch
@@ -0,0 +1,21 @@
+Description: fixes compilation with GCC-6
+ return type must be Translator* and can't be boolean
+Author: Damyan Ivanov <dmn@debian.org>
+Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=811619
+
+--- a/src/translator_manager.cpp
++++ b/src/translator_manager.cpp
+@@ -176,11 +176,11 @@ Translator *TranslatorManager::getTestDi
+ isDataOk = isDataOk && tr->init(tr->BG_EN, string(string(prop->getDirectory()) + prop->getString("data")).c_str());
+ } else {
+ cerr << "TranslatorManager::getTestDictionaryObject - Wrong description file: " << testDictionaries[index].fileName << "\n";
+- return false;
++ return NULL;
+ }
+ if (!isDataOk) {
+ cerr << "TranslatorManager::getTestDictionaryObject - Problem initialazing dictionary: " << testDictionaries[index].fileName << "\n";
+- return false;
++ return NULL;
+ }
+ char c[16];
+ sprintf(c, "%d", level);
diff --git a/office/gnokii/gnokii-0.6.31-gcc7.patch b/office/gnokii/gnokii-0.6.31-gcc7.patch
new file mode 100644
index 0000000000..6637a6af62
--- /dev/null
+++ b/office/gnokii/gnokii-0.6.31-gcc7.patch
@@ -0,0 +1,17 @@
+Patch by Robert Scheck <robert@fedoraproject.org> for gnokii <= 0.6.31 to avoid
+build failures with GCC 7.x as "../common/.libs/libgnokii.so: undefined reference
+to `local_atoi'". The "inline" is only a hint that the compiler doesn't complain
+about double defined symbols, but does not guarantee that a function is inlined
+or that a symbol is generated when needed.
+
+--- gnokii-0.6.31/common/gsm-filetypes.c 2011-12-02 15:53:04.000000000 +0100
++++ gnokii-0.6.31/common/gsm-filetypes.c.gcc7 2017-02-12 00:55:39.000000000 +0100
+@@ -1409,7 +1409,7 @@
+ #define GET_NEXT_TOKEN() o = get_next_token(line + offset, ';')
+ #define STORE_TOKEN(a) strip_slashes(a, line + offset, sizeof(a) - 1, o - 1)
+
+-inline int local_atoi(char *str, int len)
++static int local_atoi(char *str, int len)
+ {
+ int retval;
+ char *aux = strndup(str, len);
diff --git a/office/gnokii/gnokii.SlackBuild b/office/gnokii/gnokii.SlackBuild
index eb3b4f1519..5301e1c7cf 100644
--- a/office/gnokii/gnokii.SlackBuild
+++ b/office/gnokii/gnokii.SlackBuild
@@ -73,6 +73,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+# Thnx to fedora for this patch
+patch -p1 < $CWD/gnokii-0.6.31-gcc7.patch
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
diff --git a/office/gnucash-legacy/gnucash-legacy.info b/office/gnucash-legacy/gnucash-legacy.info
index 7c4ad9d1f9..5449ab2e68 100644
--- a/office/gnucash-legacy/gnucash-legacy.info
+++ b/office/gnucash-legacy/gnucash-legacy.info
@@ -5,6 +5,6 @@ DOWNLOAD="http://downloads.sourceforge.net/gnucash/gnucash-2.6.21.tar.bz2"
MD5SUM="63226e9b49e11dc0d7106bd15c09996b"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="libgnomecanvas goffice0.8 webkitgtk"
+REQUIRES="libgnomecanvas goffice0.8 guile1.8 webkitgtk"
MAINTAINER="Lenard Spencer"
EMAIL="lenardrspencer@gmail.com"
diff --git a/office/gnumeric/gnumeric.SlackBuild b/office/gnumeric/gnumeric.SlackBuild
index 0a5d0ee899..e87c652629 100644
--- a/office/gnumeric/gnumeric.SlackBuild
+++ b/office/gnumeric/gnumeric.SlackBuild
@@ -66,6 +66,10 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# Avoid the cs help or build will break
+sed -i "s|cs\ de\ es|de es|" doc/Makefile.am || exit 1
+autoreconf -fi
+
# Thanks to mancha for this gem :-)
# The docs will still be missing, but at least we can build the app itself
touch doc/C/gnumeric-C.omf.out
diff --git a/office/htmldoc/build_fix.patch b/office/htmldoc/build_fix.patch
new file mode 100644
index 0000000000..280ee4e554
--- /dev/null
+++ b/office/htmldoc/build_fix.patch
@@ -0,0 +1,13 @@
+diff --git a/htmldoc/htmlsep.cxx b/htmldoc/htmlsep.cxx
+index f2d57bff..d9b2ca30 100644
+--- a/htmldoc/htmlsep.cxx
++++ b/htmldoc/htmlsep.cxx
+@@ -517,7 +517,7 @@ write_doc(FILE **out, // I - Output file
+ if (t->markup >= MARKUP_H1 && t->markup < (MARKUP_H1 + TocLevels) &&
+ htmlGetVariable(t, (uchar *)"_HD_OMIT_TOC") == NULL)
+ {
+- if (heading >= 0)
++ if (*heading >= 0)
+ write_footer(out, *heading);
+
+ (*heading) ++;
diff --git a/office/htmldoc/htmldoc.SlackBuild b/office/htmldoc/htmldoc.SlackBuild
index f88d47c057..82de064e9f 100644
--- a/office/htmldoc/htmldoc.SlackBuild
+++ b/office/htmldoc/htmldoc.SlackBuild
@@ -31,7 +31,7 @@
# not being copied into the package
PRGNAM=htmldoc
-VERSION=${VERSION:-1.8.29}
+VERSION=${VERSION:-1.8.30}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -48,7 +48,7 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-DOCFILES="CHANGES.txt README.txt COMPILE.txt COPYING.txt htmldoc.readme"
+DOCFILES="CHANGES.md README.md COPYING"
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
@@ -70,7 +70,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION-source.tar.bz2
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
@@ -79,6 +79,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# Upstream compiler fix
+patch -p1 < $CWD/build_fix.patch
+
# workaround to avoid /usr/share/doc/htmldoc's use for help function
sed -r -i 's|^#define DOCUMENTATION "$prefix/share/doc/htmldoc"|\
#define DOCUMENTATION "$prefix/doc/htmldoc-$VERSION"|g' ./configure
@@ -117,23 +120,16 @@ mkdir -p $PKG/usr/man/man1
cp -a doc/$PRGNAM.1 $PKG/usr/man/man1
mkdir -p $PKG/usr/share/applications
cp -a desktop/$PRGNAM.desktop $PKG/usr/share/applications
-mkdir -p $PKG/usr/share/mimelnk/application
-cp -a desktop/vnd.htmldoc-book.desktop $PKG/usr/share/mimelnk/application
mkdir -p $PKG/usr/share/mime/packages
cp -a desktop/htmldoc.xml $PKG/usr/share/mime/packages
-mkdir -p $PKG/usr/share/icons/hicolor/{16x16,24x24,32x32,48x48,64x64,96x96,128x128}/apps/
-cp -a desktop/htmldoc-16.png $PKG/usr/share/icons/hicolor/16x16/apps/$PRGNAM.png
-cp -a desktop/htmldoc-24.png $PKG/usr/share/icons/hicolor/24x24/apps/$PRGNAM.png
+mkdir -p $PKG/usr/share/icons/hicolor/{32x32,128x128}/apps/ $PKG/usr/share/pixmaps
cp -a desktop/htmldoc-32.png $PKG/usr/share/icons/hicolor/32x32/apps/$PRGNAM.png
-cp -a desktop/htmldoc-48.png $PKG/usr/share/icons/hicolor/48x48/apps/$PRGNAM.png
-cp -a desktop/htmldoc-64.png $PKG/usr/share/icons/hicolor/64x64/apps/$PRGNAM.png
-cp -a desktop/htmldoc-96.png $PKG/usr/share/icons/hicolor/96x96/apps/$PRGNAM.png
cp -a desktop/htmldoc-128.png $PKG/usr/share/icons/hicolor/128x128/apps/$PRGNAM.png
+cp -a desktop/htmldoc.xpm $PKG/usr/share/pixmaps/$PRGNAM.xpm
mkdir -p $PKG/usr/share/htmldoc/
cp -a fonts $PKG/usr/share/htmldoc/
cp -a data $PKG/usr/share/htmldoc/
-
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
diff --git a/office/htmldoc/htmldoc.info b/office/htmldoc/htmldoc.info
index 5bdd183509..c5d781853f 100644
--- a/office/htmldoc/htmldoc.info
+++ b/office/htmldoc/htmldoc.info
@@ -1,8 +1,8 @@
PRGNAM="htmldoc"
-VERSION="1.8.29"
+VERSION="1.8.30"
HOMEPAGE="https://www.msweet.org/htmldoc/index.html"
-DOWNLOAD="http://www.mirrorservice.org/sites/distfiles.finkmirrors.net/md5/dd2a05e2608d4f34db13c17a6667bb5e/htmldoc-1.8.29-source.tar.bz2"
-MD5SUM="dd2a05e2608d4f34db13c17a6667bb5e"
+DOWNLOAD="https://github.com/michaelrsweet/htmldoc/archive/v1.8.30/htmldoc-1.8.30.tar.gz"
+MD5SUM="93e20731015a4752a7380c3d27a191bd"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="fltk"
diff --git a/office/juffed/README b/office/juffed/README
deleted file mode 100644
index b322d42743..0000000000
--- a/office/juffed/README
+++ /dev/null
@@ -1,6 +0,0 @@
-JuffEd is a free, cross-platform text editor for programmers and
-advanced users. Has syntax highlighting for many languages, code
-folding, find/replace using plain text and regexps, code completion,
-multiple charsets and many other useful features.
-
-enca is an optional dependency (for auto language detection).
diff --git a/office/juffed/juffed.SlackBuild b/office/juffed/juffed.SlackBuild
deleted file mode 100644
index f37a401a21..0000000000
--- a/office/juffed/juffed.SlackBuild
+++ /dev/null
@@ -1,98 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for juffed
-
-# Copyright 2011-2018 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
-# 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.
-
-PRGNAM=juffed
-VERSION=${VERSION:-20180114_9b7af21}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-DOCS="COPYING ChangeLog README"
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.?z*
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-mkdir -p build
-cd build
- cmake \
- -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DLIB_SUFFIX=$LIBDIRSUFFIX \
- -DCMAKE_BUILD_TYPE=Release ..
- make
- make install DESTDIR=$PKG
-cd ..
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-cat $CWD/doinst.sh > $PKG/install/doinst.sh
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/office/juffed/juffed.info b/office/juffed/juffed.info
deleted file mode 100644
index 0b6740222a..0000000000
--- a/office/juffed/juffed.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="juffed"
-VERSION="20180114_9b7af21"
-HOMEPAGE="http://juffed.com"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/juffed-20180114_9b7af21.tar.xz"
-MD5SUM="6b6c56fecdcfd408638a8023deda09cf"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Matteo Bernardini"
-EMAIL="ponce@slackbuilds.org"
diff --git a/office/juffed/slack-desc b/office/juffed/slack-desc
deleted file mode 100644
index ae39cf2747..0000000000
--- a/office/juffed/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-juffed: juffed (light qt editor)
-juffed:
-juffed: JuffEd is a free, cross-platform text editor for programmers and
-juffed: advanced users. Has syntax highlighting for many languages, code
-juffed: folding, find/replace using plain text and regexps, code completion,
-juffed: multiple charsets and many other useful features.
-juffed:
-juffed: homepage: http://juffed.com
-juffed:
-juffed:
-juffed:
diff --git a/office/kbgoffice/gcc6.patch b/office/kbgoffice/gcc6.patch
new file mode 100644
index 0000000000..6e2d45e572
--- /dev/null
+++ b/office/kbgoffice/gcc6.patch
@@ -0,0 +1,17 @@
+diff -Naur kbgoffice-2.1.orig/src/translator_manager.cpp kbgoffice-2.1/src/translator_manager.cpp
+--- kbgoffice-2.1.orig/src/translator_manager.cpp 2010-04-30 14:37:42.000000000 +0200
++++ kbgoffice-2.1/src/translator_manager.cpp 2017-06-01 18:10:20.308920738 +0200
+@@ -141,11 +141,11 @@
+ isDataOk = isDataOk && tr->init(tr->BG_EN, string(string(dataDir) + prop->getString("data")).c_str());
+ } else {
+ cerr << "TranslatorManager::getTestDictionaryObject - Wrong description file: " << testDictionaries[index].file << "\n";
+- return false;
++ return NULL;
+ }
+ if (!isDataOk) {
+ cerr << "TranslatorManager::getTestDictionaryObject - Problem initialazing dictionary: " << testDictionaries[index].file << "\n";
+- return false;
++ return NULL;
+ }
+ char c[16];
+ sprintf(c, "%d", level);
diff --git a/office/kbgoffice/kbgoffice.SlackBuild b/office/kbgoffice/kbgoffice.SlackBuild
index c4f4cbb1af..91069ba041 100644
--- a/office/kbgoffice/kbgoffice.SlackBuild
+++ b/office/kbgoffice/kbgoffice.SlackBuild
@@ -52,6 +52,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+# Thanks debian
+patch -p1 < $CWD/gcc6.patch
+
cd src
sed "s:/usr/local:/usr:" -i.orig $PRGNAM.pro
sed "s:/usr/local:/usr:" -i.orig main.cpp
diff --git a/office/pdfjam/README b/office/pdfjam/README
deleted file mode 100644
index 7d3d58266c..0000000000
--- a/office/pdfjam/README
+++ /dev/null
@@ -1,4 +0,0 @@
-PDFjam is a collection of shell scripts providing a simple interface
-to functionality of the pdfpages package for pdfLaTeX. PDFjam can
-rotate pages, join PDFs, n-up several pages onto one page, generate a
-printer spread for books, and much much more.
diff --git a/office/pdfjam/pdfjam.SlackBuild b/office/pdfjam/pdfjam.SlackBuild
deleted file mode 100644
index 79a862e459..0000000000
--- a/office/pdfjam/pdfjam.SlackBuild
+++ /dev/null
@@ -1,56 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for pdfjam
-# Copyright 2016 Klaatu klaatu@member.fsf.org
-#
-# GNU All-Permissive License
-# Copying and distribution of this file, with or without modification,
-# are permitted in any medium without royalty provided the copyright
-# notice and this notice are preserved. This file is offered as-is,
-# without any warranty.
-
-PRGNAM=pdfjam
-VERSION=${VERSION:-2.08}
-VERTAR=${VERTAR:-latest}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-ARCH='noarch'
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/"$PRGNAM"_"$VERTAR".tgz
-cd $PRGNAM
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-# already in PRGNAM
-mkdir $PKG/usr
-mv bin $PKG/usr/bin
-mkdir -p $PKG/usr/man/man1
-mkdir $PKG/etc
-mv pdfjam.conf $PKG/etc
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-
-for i in man1/* ; do gzip -9c "$i" > $PKG/usr/man/"$i".gz ; done
-
-cp -a COPYING VERSION tests.zip PDFjam-README.html pdfdroplets.png \
- $PKG/usr/doc/$PRGNAM-$VERSION/
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/office/pdfjam/pdfjam.info b/office/pdfjam/pdfjam.info
deleted file mode 100644
index d97fbbdeed..0000000000
--- a/office/pdfjam/pdfjam.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="pdfjam"
-VERSION="2.08"
-HOMEPAGE="https://www2.warwick.ac.uk/fac/sci/statistics/staff/academic-research/firth/software/pdfjam"
-DOWNLOAD="https://www2.warwick.ac.uk/fac/sci/statistics/staff/academic/firth/software/pdfjam/pdfjam_latest.tgz"
-MD5SUM="7df075df7f129091f826275ce8c1f374"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Klaatu"
-EMAIL="klaatu@member.fsf.org"
diff --git a/office/pdfjam/slack-desc b/office/pdfjam/slack-desc
deleted file mode 100644
index 8f35a106b2..0000000000
--- a/office/pdfjam/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-pdfjam: pdfjam (pdf toolkit)
-pdfjam:
-pdfjam: PDFjam is a collection of shell scripts for PDF manipulation, like
-pdfjam: joining, rotating, modifying page layout, generating printer
-pdfjam: spreads, and more.
-pdfjam:
-pdfjam: https://www2.warwick.ac.uk/fac/sci/statistics/staff/\
-pdfjam: academic-research/firth/software/pdfjam/
-pdfjam:
-pdfjam:
-pdfjam:
diff --git a/office/pdftk/README b/office/pdftk/README
index c84c0b6589..6f0d6399e0 100644
--- a/office/pdftk/README
+++ b/office/pdftk/README
@@ -4,3 +4,10 @@ command-line tool for doing everyday things with PDF documents. Keep one
in the top drawer of your desktop and use it to merge PDF documents,
split PDF documents, apply watermarks, repair corrupt PDF, update PDF
metadata, and more. pdftk does not require Acrobat and is free software.
+
+NOTE: Starting with Slackware 15.0 pdftk compilation requires SBo gcc-5
+because gcc-java was dropped from the GNU Compiler Collection as of gcc-7:
+don't forget to source /etc/profile.d/gcc5.sh before starting to build
+this, like
+
+ . /etc/profile.d/gcc5.sh
diff --git a/office/pdftk/pdftk-1.44-add_custom_optflags.patch b/office/pdftk/pdftk-1.44-add_custom_optflags.patch
deleted file mode 100644
index 660073115f..0000000000
--- a/office/pdftk/pdftk-1.44-add_custom_optflags.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-diff -Nurp pdftk-1.44-dist-orig/pdftk/Makefile.Slackware-13.1 pdftk-1.44-dist/pdftk/Makefile.Slackware-13.1
---- pdftk-1.44-dist-orig/pdftk/Makefile.Slackware-13.1 2010-10-25 20:04:51.000000000 +0100
-+++ pdftk-1.44-dist/pdftk/Makefile.Slackware-13.1 2010-10-31 01:44:31.000000000 +0000
-@@ -34,7 +34,7 @@ export CXX= $(TOOLPATH)g++
- export GCJ= $(TOOLPATH)gcj
- export GCJH= $(TOOLPATH)gcjh
- export GJAR= $(TOOLPATH)gjar
--export LIBGCJ= /usr/share/java/libgcj$(VERSUFF).jar
-+export LIBGCJ= /usr/share/java
- export AR= ar
- export RM= rm
- export ARFLAGS= rs
-@@ -71,9 +71,10 @@ export RMFLAGS= -vf
- # only effects libraries following option on the command line
- #
- #
--export CPPFLAGS= -DPATH_DELIM=0x2f -DASK_ABOUT_WARNINGS=false -DUNBLOCK_SIGNALS -fdollars-in-identifiers
--export CXXFLAGS= -Wall -Wextra -Weffc++ -O2
--export GCJFLAGS= -Wall -fsource=1.3 -O2
-+export OPT= -O2
-+export CPPFLAGS= $(OPT) -DPATH_DELIM=0x2f -DASK_ABOUT_WARNINGS=false -DUNBLOCK_SIGNALS -fdollars-in-identifiers
-+export CXXFLAGS= $(OPT) -Wall -Wextra -Weffc++
-+export GCJFLAGS= $(OPT) -Wall -fsource=1.3
- export GCJHFLAGS= -force
- export LDLIBS= -lgcj
-
diff --git a/office/pdftk/pdftk-2.02-use-gcc5.patch b/office/pdftk/pdftk-2.02-use-gcc5.patch
new file mode 100644
index 0000000000..d1e6e124de
--- /dev/null
+++ b/office/pdftk/pdftk-2.02-use-gcc5.patch
@@ -0,0 +1,15 @@
+# diff -Nurp pdftk/Makefile.Slackware-13.1.orig pdftk/Makefile.Slackware-13.1
+--- orig/pdftk/Makefile.Slackware-13.1 2013-07-24 13:27:46.000000000 -0500
++++ pdftk/Makefile.Slackware-13.1 2018-03-04 06:20:55.312900883 -0600
+@@ -21,8 +21,9 @@
+ # tools
+ # need direct path to libgcj for gcjh (starting in gcj 4.1.2 per Aurélien GÃRÃME)
+ TOOLPATH=
+-export VERSUFF=-4.4.4
+-export CXX= $(TOOLPATH)g++
++GCCMAJORTAG=-5 # kjh was here
++export VERSUFF=-5.5.0 # kjh was here
++export CXX= $(TOOLPATH)g++$(GCCMAJORTAG) # kjh was here
+ export GCJ= $(TOOLPATH)gcj
+ export GCJH= $(TOOLPATH)gcjh
+ export GJAR= $(TOOLPATH)gjar
diff --git a/office/pdftk/pdftk.SlackBuild b/office/pdftk/pdftk.SlackBuild
index aa5bad4885..854b6da935 100644
--- a/office/pdftk/pdftk.SlackBuild
+++ b/office/pdftk/pdftk.SlackBuild
@@ -30,7 +30,7 @@ TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -41,8 +41,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -68,10 +68,9 @@ find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
-o -perm 511 \) -exec chmod 755 {} \; -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-# Use our SLKCFLAGS
-patch -p1 < $CWD/pdftk-1.44-add_custom_optflags.patch
+patch -p1 < $CWD/pdftk-2.02-use-gcc5.patch
cd $PRGNAM
# Hardcode "-j1" since this fails with multiple make jobs
diff --git a/office/pdftk/pdftk.info b/office/pdftk/pdftk.info
index 01151c62f1..b4e36211a9 100644
--- a/office/pdftk/pdftk.info
+++ b/office/pdftk/pdftk.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://www.pdflabs.com/tools/pdftk-the-pdf-toolkit/pdftk-2.02-src.zip
MD5SUM="6534365fd6727724f288a556ede33faa"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES=""
+REQUIRES="gcc5"
MAINTAINER="ArTourter"
EMAIL="artourter@gmail.com"
diff --git a/office/qpdfview/qpdfview-synctex-2018.patch b/office/qpdfview/qpdfview-synctex-2018.patch
new file mode 100644
index 0000000000..defb61f386
--- /dev/null
+++ b/office/qpdfview/qpdfview-synctex-2018.patch
@@ -0,0 +1,85 @@
+=== modified file 'application.pro'
+--- application.pro 2018-05-04 18:00:34 +0000
++++ application.pro 2018-05-05 05:57:24 +0000
+@@ -227,6 +227,8 @@
+ !without_pkgconfig:system(pkg-config --exists synctex) {
+ CONFIG += link_pkgconfig
+ PKGCONFIG += synctex
++
++ system(pkg-config --atleast-version=2.0.0 synctex):DEFINES += HAS_SYNCTEX_2
+ } else {
+ HEADERS += synctex/synctex_parser.h synctex/synctex_parser_utils.h synctex/synctex_parser_local.h
+ SOURCES += synctex/synctex_parser.c synctex/synctex_parser_utils.c
+
+=== modified file 'sources/documentview.cpp'
+--- sources/documentview.cpp 2018-03-28 19:19:40 +0000
++++ sources/documentview.cpp 2018-05-05 05:57:24 +0000
+@@ -56,6 +56,15 @@
+
+ #include <synctex_parser.h>
+
++#ifndef HAS_SYNCTEX_2
++
++typedef synctex_scanner_t synctex_scanner_p;
++typedef synctex_node_t synctex_node_p;
++
++#define synctex_scanner_next_result(scanner) synctex_next_result(scanner)
++
++#endif // HAS_SYNCTEX_2
++
+ #endif // WITH_SYNCTEX
+
+ #include "settings.h"
+@@ -245,11 +254,11 @@
+ {
+ DocumentView::SourceLink sourceLink;
+
+- if(synctex_scanner_t scanner = synctex_scanner_new_with_output_file(filePath.toLocal8Bit(), 0, 1))
++ if(synctex_scanner_p scanner = synctex_scanner_new_with_output_file(filePath.toLocal8Bit(), 0, 1))
+ {
+ if(synctex_edit_query(scanner, page, pos.x(), pos.y()) > 0)
+ {
+- for(synctex_node_t node = synctex_next_result(scanner); node != 0; node = synctex_next_result(scanner))
++ for(synctex_node_p node = synctex_scanner_next_result(scanner); node != 0; node = synctex_scanner_next_result(scanner))
+ {
+ sourceLink.name = QString::fromLocal8Bit(synctex_scanner_get_name(scanner, synctex_node_tag(node)));
+ sourceLink.line = qMax(synctex_node_line(node), 0);
+
+=== modified file 'sources/main.cpp'
+--- sources/main.cpp 2018-05-04 05:40:07 +0000
++++ sources/main.cpp 2018-05-05 05:57:24 +0000
+@@ -45,6 +45,16 @@
+
+ #include <synctex_parser.h>
+
++#ifndef HAS_SYNCTEX_2
++
++typedef synctex_scanner_t synctex_scanner_p;
++typedef synctex_node_t synctex_node_p;
++
++#define synctex_scanner_next_result(scanner) synctex_next_result(scanner)
++#define synctex_display_query(scanner, file, line, column, page) synctex_display_query(scanner, file, line, column)
++
++#endif // HAS_SYNCTEX_2
++
+ #endif // WITH_SYNCTEX
+
+ #include "documentview.h"
+@@ -326,13 +336,11 @@
+
+ if(!file.sourceName.isNull())
+ {
+- synctex_scanner_t scanner = synctex_scanner_new_with_output_file(file.filePath.toLocal8Bit(), 0, 1);
+-
+- if(scanner != 0)
++ if(synctex_scanner_p scanner = synctex_scanner_new_with_output_file(file.filePath.toLocal8Bit(), 0, 1))
+ {
+- if(synctex_display_query(scanner, file.sourceName.toLocal8Bit(), file.sourceLine, file.sourceColumn) > 0)
++ if(synctex_display_query(scanner, file.sourceName.toLocal8Bit(), file.sourceLine, file.sourceColumn, -1) > 0)
+ {
+- for(synctex_node_t node = synctex_next_result(scanner); node != 0; node = synctex_next_result(scanner))
++ for(synctex_node_p node = synctex_scanner_next_result(scanner); node != 0; node = synctex_scanner_next_result(scanner))
+ {
+ int page = synctex_node_page(node);
+ QRectF enclosingBox(synctex_node_box_visible_h(node), synctex_node_box_visible_v(node), synctex_node_box_visible_width(node), synctex_node_box_visible_height(node));
+
diff --git a/office/qpdfview/qpdfview.SlackBuild b/office/qpdfview/qpdfview.SlackBuild
index a87f09d0ad..65eaab0e57 100644
--- a/office/qpdfview/qpdfview.SlackBuild
+++ b/office/qpdfview/qpdfview.SlackBuild
@@ -23,7 +23,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=qpdfview
-VERSION=${VERSION:-0.4.16}
+VERSION=${VERSION:-0.4.17beta1}
BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
@@ -70,7 +70,10 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-sed -i "s|/usr/lib/qpdfview|/usr/lib${LIBDIRSUFFIX}/qpdfview|" qpdfview.pri
+patch -p0 < $CWD/qpdfview-synctex-2018.patch
+sed -e 's|2.0.0|1.21.0|' -i application.pro || exit 1
+
+sed -i "s|/usr/lib/qpdfview|/usr/lib${LIBDIRSUFFIX}/qpdfview|" qpdfview.pri || exit 1
# Add localizations
lrelease qpdfview.pro
diff --git a/office/qpdfview/qpdfview.info b/office/qpdfview/qpdfview.info
index 0b90b385dc..2920b841e9 100644
--- a/office/qpdfview/qpdfview.info
+++ b/office/qpdfview/qpdfview.info
@@ -1,8 +1,8 @@
PRGNAM="qpdfview"
-VERSION="0.4.16"
+VERSION="0.4.17beta1"
HOMEPAGE="https://launchpad.net/qpdfview"
-DOWNLOAD="https://launchpad.net/qpdfview/trunk/0.4.16/+download/qpdfview-0.4.16.tar.gz"
-MD5SUM="4b317c4536332a7fe437abe50eca1716"
+DOWNLOAD="http://ponce.cc/slackware/sources/repo/qpdfview/qpdfview-0.4.17beta1.tar.gz"
+MD5SUM="c203518a8988203dd94c648490089a8e"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/office/referencer/referencer-lib_path.patch b/office/referencer/referencer-lib_path.patch
new file mode 100644
index 0000000000..78a1952089
--- /dev/null
+++ b/office/referencer/referencer-lib_path.patch
@@ -0,0 +1,11 @@
+--- referencer-1.2.2/src/Document.C 2014-01-27 03:43:00.000000000 +0700
++++ referencer-1.2.2_/src/Document.C 2016-11-03 16:25:00.698676538 +0700
+@@ -297,7 +297,7 @@
+
+ lib_path = lib_path->get_parent();
+ up_dir_level += "../";
+- if (lib_path == 0) {
++ if (!lib_path) {
+ doc_is_relative_to_library = false;
+ break;
+ }
diff --git a/office/referencer/referencer.SlackBuild b/office/referencer/referencer.SlackBuild
index 8d279093fd..0a3da09354 100644
--- a/office/referencer/referencer.SlackBuild
+++ b/office/referencer/referencer.SlackBuild
@@ -69,6 +69,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# Fix comparison with zero - thanks archlinux
+patch -p1 < $CWD/referencer-lib_path.patch
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS -std=c++11" \
./configure \
diff --git a/office/sc-im/README b/office/sc-im/README
deleted file mode 100644
index d63f9fca91..0000000000
--- a/office/sc-im/README
+++ /dev/null
@@ -1,2 +0,0 @@
-SC-IM - Spreadsheet Calculator Improvised -- An ncurses spreadsheet program
-for terminal. SC-IM is a spreadsheet program that is based on SC.
diff --git a/office/sc-im/sc-im.SlackBuild b/office/sc-im/sc-im.SlackBuild
deleted file mode 100644
index 25e318343e..0000000000
--- a/office/sc-im/sc-im.SlackBuild
+++ /dev/null
@@ -1,99 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for sc-im
-
-# Copyright 2016-2018 Jostein Berntsen <jbernts@broadpark.no>
-# 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.
-
-PRGNAM=sc-im
-VERSION=${VERSION:-0.7.0}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-cd src/
-
-perl -pi -e 's#name = scim#name = sc-im#g|s#prefix = /usr/local#prefix = /usr#g' Makefile
-
-CFLAGS="-DXLS $SLKCFLAGS" \
-CXXFLAGS="-DXLS $SLKCFLAGS" \
-LDLIBS="-lxlsreader" \
-make
-make install DESTDIR=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mv $PKG/usr/share/man $PKG/usr
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cd ..
-cp -a BUGS CHANGES HELP KNOWN_ISSUES LICENSE Readme.md USER_REQUESTS WIKI \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/office/sc-im/sc-im.info b/office/sc-im/sc-im.info
deleted file mode 100644
index 69ea4bfb9b..0000000000
--- a/office/sc-im/sc-im.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="sc-im"
-VERSION="0.7.0"
-HOMEPAGE="https://github.com/andmarti1424/sc-im"
-DOWNLOAD="https://github.com/andmarti1424/sc-im/archive/v0.7.0/sc-im-0.7.0.tar.gz"
-MD5SUM="2f270d957a215f0124d15d0a82c5abfa"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="libxls libxlsxwriter"
-MAINTAINER="Jostein Berntsen"
-EMAIL="jbernts@broadpark.no"
diff --git a/office/sc-im/slack-desc b/office/sc-im/slack-desc
deleted file mode 100644
index d0321b449a..0000000000
--- a/office/sc-im/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-sc-im: sc-im (spreadsheet)
-sc-im:
-sc-im: SC-IM is a spreadsheet program that is based on SC
-sc-im:
-sc-im: SC-IM - Spreadsheet Calculator Improvised
-sc-im: An ncurses spreadsheet program for terminal
-sc-im:
-sc-im:
-sc-im: https://github.com/andmarti1424/sc-im
-sc-im:
-sc-im:
diff --git a/office/scribus/scribus.SlackBuild b/office/scribus/scribus.SlackBuild
index 5842344c68..f163f4aff9 100644
--- a/office/scribus/scribus.SlackBuild
+++ b/office/scribus/scribus.SlackBuild
@@ -27,13 +27,13 @@
# Including input by Yalla-One and some code cleanup by rworkman
PRGNAM=scribus
-VERSION=${VERSION:-1.4.6}
+VERSION=${VERSION:-1.4.7}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -44,8 +44,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -78,7 +78,7 @@ cmake \
-DCMAKE_CXX_FLAGS="$SLKCFLAGS" \
-DCMAKE_INSTALL_PREFIX:PATH=/usr \
-DLIB_SUFFIX=${LIBDIRSUFFIX} \
- -DRENDER_LIB=CAIRO
+ -DRENDER_LIB=CAIRO .
make
make install DESTDIR=$PKG
diff --git a/office/scribus/scribus.info b/office/scribus/scribus.info
index 10e5f6a05f..85fc725c87 100644
--- a/office/scribus/scribus.info
+++ b/office/scribus/scribus.info
@@ -1,8 +1,8 @@
PRGNAM="scribus"
-VERSION="1.4.6"
+VERSION="1.4.7"
HOMEPAGE="https://www.scribus.net"
-DOWNLOAD="https://downloads.sourceforge.net/scribus/scribus-1.4.6.tar.xz"
-MD5SUM="f6161785e24755ea77c8f14b319ff1aa"
+DOWNLOAD="https://downloads.sourceforge.net/scribus/scribus-1.4.7.tar.xz"
+MD5SUM="ddd89731f97c7819fdd2c2e5ad6f016b"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/office/texlive/README b/office/texlive/README
deleted file mode 100644
index d08796d591..0000000000
--- a/office/texlive/README
+++ /dev/null
@@ -1,14 +0,0 @@
-TeXLive (TeXLive binaries, support files, TeX formats)
-
-This package contains binaries and many support files, TeX formats and
-packages, and other files included in the TeXLive TeX distribution.
-This should be adequate for the needs of most TeX users.
-
-The remaining stuff can be found in texlive-extra and texlive-docs,
-all of which are also available at SlackBuilds.org.
-
-Have a look at the scripts in the prep/ directory to see how the texmf
-archives were created from the original Texlive netarchives.
-
-Note that this package conflicts with the tetex packages in Slackware,
-so you'll need to remove tetex and tetex-doc before installing TeXLive.
diff --git a/office/texlive/README.tlpkg b/office/texlive/README.tlpkg
deleted file mode 100644
index 7a6f790ca8..0000000000
--- a/office/texlive/README.tlpkg
+++ /dev/null
@@ -1,17 +0,0 @@
-The TeXLive Package Manager, i.e. tlmgr(1), is not shipped with this
-TeXLive package, as it's not expected to work properly (if at all).
-The general consensus from the TeXLive users mailing list is that
-distributions should not be shipping tlpkg.
-
-The *proper* way to upgrade the TeXLive Slackware package (or any
-part of it) is through your Slackware's package manager. If you
-elect to try tlmgr(1), and it doesn't work at all, or worse, it messes
-up part of your TeXLive installation, too bad. On the other hand,
-if you are able to document exactly what we need to do in order to
-make it:
- 1) work
- 2) put updates and such in a user-specific directory, i.e.
- *not* alter/replace system package contents
-then we would love to hear from you. :-)
-
---rworkman :-)
diff --git a/office/texlive/doinst.sh b/office/texlive/doinst.sh
deleted file mode 100644
index d7af8f55c1..0000000000
--- a/office/texlive/doinst.sh
+++ /dev/null
@@ -1,5 +0,0 @@
-chroot . /usr/bin/mktexlsr 1>/dev/null 2>/dev/null
-printf "y\n" | chroot . /usr/bin/updmap-sys --syncwithtrees 1>/dev/null 2>/dev/null
-chroot . /usr/bin/updmap-sys 1>/dev/null 2>/dev/null
-chroot . /usr/bin/fmtutil-sys --missing 1>/dev/null 2>/dev/null
-chroot . /usr/bin/mtxrun --generate 1>/dev/null 2>/dev/null
diff --git a/office/texlive/patches/20180625.diff b/office/texlive/patches/20180625.diff
deleted file mode 100644
index 583d99486d..0000000000
--- a/office/texlive/patches/20180625.diff
+++ /dev/null
@@ -1,688 +0,0 @@
-diff -ur ./texk/dvipdfm-x/ChangeLog ../b18/texk/dvipdfm-x/ChangeLog
---- ./texk/dvipdfm-x/ChangeLog 2018-03-03 11:27:37.000000000 +0100
-+++ ../b18/texk/dvipdfm-x/ChangeLog 2018-06-25 22:07:46.343277185 +0200
-@@ -1,3 +1,16 @@
-+2018-05-06 Akira Kakuto <kakuto@fuk.kindai.ac.jp>
-+
-+ * tt_cmap.c: Revert a part of changes in 2017-12-09,
-+ which breaks to give tounicode entries for ligatures.
-+ http://tug.org/pipermail/tex-live/2018-May/041608.html.
-+ * configure.ac: Version 20180506.
-+
-+ 2018-04-28 Stefan Br\"uns <stefan.bruens@rwth-aachen.de>
-+
-+ * pngimage.c: Fix a bug which causes a segfault with 1/2/4-bit
-+ transparent indexed PNGs.
-+ * configure.ac: Version 20180428.
-+
- 2018-03-03 Akira Kakuto <kakuto@fuk.kindai.ac.jp>
-
- * xbb.c: Remove unused lines.
-diff -ur ./texk/dvipdfm-x/configure ../b18/texk/dvipdfm-x/configure
---- ./texk/dvipdfm-x/configure 2018-02-17 09:41:35.000000000 +0100
-+++ ../b18/texk/dvipdfm-x/configure 2018-06-25 22:07:47.183276612 +0200
-@@ -1,6 +1,6 @@
- #! /bin/sh
- # Guess values for system-dependent variables and create Makefiles.
--# Generated by GNU Autoconf 2.69 for dvipdfm-x (TeX Live) 20180217.
-+# Generated by GNU Autoconf 2.69 for dvipdfm-x (TeX Live) 20180506.
- #
- # Report bugs to <tex-k@tug.org>.
- #
-@@ -590,8 +590,8 @@
- # Identity of this package.
- PACKAGE_NAME='dvipdfm-x (TeX Live)'
- PACKAGE_TARNAME='dvipdfm-x--tex-live-'
--PACKAGE_VERSION='20180217'
--PACKAGE_STRING='dvipdfm-x (TeX Live) 20180217'
-+PACKAGE_VERSION='20180506'
-+PACKAGE_STRING='dvipdfm-x (TeX Live) 20180506'
- PACKAGE_BUGREPORT='tex-k@tug.org'
- PACKAGE_URL=''
-
-@@ -1350,7 +1350,7 @@
- # Omit some internal or obsolete options to make the list less imposing.
- # This message is too long to be a string in the A/UX 3.1 sh.
- cat <<_ACEOF
--\`configure' configures dvipdfm-x (TeX Live) 20180217 to adapt to many kinds of systems.
-+\`configure' configures dvipdfm-x (TeX Live) 20180506 to adapt to many kinds of systems.
-
- Usage: $0 [OPTION]... [VAR=VALUE]...
-
-@@ -1421,7 +1421,7 @@
-
- if test -n "$ac_init_help"; then
- case $ac_init_help in
-- short | recursive ) echo "Configuration of dvipdfm-x (TeX Live) 20180217:";;
-+ short | recursive ) echo "Configuration of dvipdfm-x (TeX Live) 20180506:";;
- esac
- cat <<\_ACEOF
-
-@@ -1551,7 +1551,7 @@
- test -n "$ac_init_help" && exit $ac_status
- if $ac_init_version; then
- cat <<\_ACEOF
--dvipdfm-x (TeX Live) configure 20180217
-+dvipdfm-x (TeX Live) configure 20180506
- generated by GNU Autoconf 2.69
-
- Copyright (C) 2012 Free Software Foundation, Inc.
-@@ -2390,7 +2390,7 @@
- This file contains any messages produced by compilers while
- running configure, to aid debugging if configure makes a mistake.
-
--It was created by dvipdfm-x (TeX Live) $as_me 20180217, which was
-+It was created by dvipdfm-x (TeX Live) $as_me 20180506, which was
- generated by GNU Autoconf 2.69. Invocation command line was
-
- $ $0 $@
-@@ -8075,7 +8075,7 @@
-
- # Define the identity of the package.
- PACKAGE='dvipdfm-x--tex-live-'
-- VERSION='20180217'
-+ VERSION='20180506'
-
-
- cat >>confdefs.h <<_ACEOF
-@@ -14744,7 +14744,7 @@
- Report bugs to <bug-libtool@gnu.org>."
-
- lt_cl_version="\
--dvipdfm-x (TeX Live) config.lt 20180217
-+dvipdfm-x (TeX Live) config.lt 20180506
- configured by $0, generated by GNU Autoconf 2.69.
-
- Copyright (C) 2011 Free Software Foundation, Inc.
-@@ -16624,7 +16624,7 @@
- # report actual input values of CONFIG_FILES etc. instead of their
- # values after options handling.
- ac_log="
--This file was extended by dvipdfm-x (TeX Live) $as_me 20180217, which was
-+This file was extended by dvipdfm-x (TeX Live) $as_me 20180506, which was
- generated by GNU Autoconf 2.69. Invocation command line was
-
- CONFIG_FILES = $CONFIG_FILES
-@@ -16694,7 +16694,7 @@
- cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
- ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
- ac_cs_version="\\
--dvipdfm-x (TeX Live) config.status 20180217
-+dvipdfm-x (TeX Live) config.status 20180506
- configured by $0, generated by GNU Autoconf 2.69,
- with options \\"\$ac_cs_config\\"
-
-diff -ur ./texk/dvipdfm-x/configure.ac ../b18/texk/dvipdfm-x/configure.ac
---- ./texk/dvipdfm-x/configure.ac 2018-02-28 00:14:55.000000000 +0100
-+++ ../b18/texk/dvipdfm-x/configure.ac 2018-06-25 22:07:47.183276612 +0200
-@@ -7,7 +7,7 @@
- dnl gives unlimited permission to copy and/or distribute it,
- dnl with or without modifications, as long as this notice is preserved.
- dnl
--AC_INIT([dvipdfm-x (TeX Live)], [20180217], [tex-k@tug.org])
-+AC_INIT([dvipdfm-x (TeX Live)], [20180506], [tex-k@tug.org])
- AC_PREREQ([2.65])
- AC_CONFIG_SRCDIR([agl.c])
- AC_CONFIG_AUX_DIR([../../build-aux])
-diff -ur ./texk/dvipdfm-x/pngimage.c ../b18/texk/dvipdfm-x/pngimage.c
---- ./texk/dvipdfm-x/pngimage.c 2018-02-17 09:41:35.000000000 +0100
-+++ ../b18/texk/dvipdfm-x/pngimage.c 2018-06-25 22:07:49.306275165 +0200
-@@ -964,12 +964,16 @@
- png_bytep trans;
- int num_trans;
- png_uint_32 i;
-+ png_byte bpc, mask, shift;
-
- if (!png_get_valid(png_ptr, info_ptr, PNG_INFO_tRNS) ||
- !png_get_tRNS(png_ptr, info_ptr, &trans, &num_trans, NULL)) {
- WARN("%s: PNG does not have valid tRNS chunk but tRNS is requested.", PNG_DEBUG_STR);
- return NULL;
- }
-+ bpc = png_get_bit_depth(png_ptr, info_ptr);
-+ mask = 0xff >> (8 - bpc);
-+ shift = 8 - bpc;
-
- smask = pdf_new_stream(STREAM_COMPRESS);
- dict = pdf_stream_dict(smask);
-@@ -981,7 +985,8 @@
- pdf_add_dict(dict, pdf_new_name("ColorSpace"), pdf_new_name("DeviceGray"));
- pdf_add_dict(dict, pdf_new_name("BitsPerComponent"), pdf_new_number(8));
- for (i = 0; i < width*height; i++) {
-- png_byte idx = image_data_ptr[i];
-+ /* data is packed for 1/2/4 bpc formats, msb first */
-+ png_byte idx = (image_data_ptr[bpc * i / 8] >> (shift - bpc * i % 8)) & mask;
- smask_data_ptr[i] = (idx < num_trans) ? trans[idx] : 0xff;
- }
- pdf_add_stream(smask, (char *)smask_data_ptr, width*height);
-diff -ur ./texk/dvipdfm-x/tt_cmap.c ../b18/texk/dvipdfm-x/tt_cmap.c
---- ./texk/dvipdfm-x/tt_cmap.c 2017-12-09 15:07:09.000000000 +0100
-+++ ../b18/texk/dvipdfm-x/tt_cmap.c 2018-06-25 22:07:49.617274953 +0200
-@@ -1,6 +1,6 @@
- /* This is dvipdfmx, an eXtended version of dvipdfm by Mark A. Wicks.
-
-- Copyright (C) 2007-2017 by Jin-Hwan Cho and Shunsaku Hirata,
-+ Copyright (C) 2007-2018 by Jin-Hwan Cho and Shunsaku Hirata,
- the dvipdfmx project team.
-
- This program is free software; you can redistribute it and/or modify
-@@ -928,19 +928,12 @@
- }
- #undef MAX_UNICODES
- if (unicode_count == -1) {
--#if defined(LIBDPX)
- if(verbose > VERBOSE_LEVEL_MIN) {
- if (name)
- MESG("No Unicode mapping available: GID=%u, name=%s\n", gid, name);
- else
- MESG("No Unicode mapping available: GID=%u\n", gid);
- }
--#else
-- if (name)
-- MESG("No Unicode mapping available: GID=%u, name=%s\n", gid, name);
-- else
-- MESG("No Unicode mapping available: GID=%u\n", gid);
--#endif /* LIBDPX */
- } else {
- /* the Unicode characters go into wbuf[2] and following, in UTF16BE */
- /* we rely on WBUF_SIZE being more than adequate for MAX_UNICODES */
-@@ -1021,13 +1014,7 @@
- {
- USHORT count = 0;
- USHORT cid = cffont ? cff_charsets_lookup_inverse(cffont, gid) : gid;
--
-- /* Skip PUA characters and alphabetic presentation forms, allowing
-- * handle_subst_glyphs() as it might find better mapping. Fixes the
-- * mapping of ligatures encoded in PUA in fonts like Linux Libertine
-- * and old Adobe fonts.
-- */
-- if (is_used_char2(used_chars, cid) && !is_PUA_or_presentation(ch)) {
-+ if (is_used_char2(used_chars, cid)) {
- int len;
- unsigned char *p = wbuf + 2;
-
-@@ -1038,11 +1025,18 @@
- len = UC_UTF16BE_encode_char((int32_t) ch, &p, wbuf + WBUF_SIZE);
- CMap_add_bfchar(cmap, wbuf, 2, wbuf + 2, len);
-
-- /* Avoid duplicate entry
-- * There are problem when two Unicode code is mapped to
-- * single glyph...
-+ /* Skip PUA characters and alphabetic presentation forms, allowing
-+ * handle_subst_glyphs() as it might find better mapping. Fixes the
-+ * mapping of ligatures encoded in PUA in fonts like Linux Libertine
-+ * and old Adobe fonts.
- */
-- used_chars[cid / 8] &= ~(1 << (7 - (cid % 8)));
-+ if (!is_PUA_or_presentation(ch)) {
-+ /* Avoid duplicate entry
-+ * There are problem when two Unicode code is mapped to
-+ * single glyph...
-+ */
-+ used_chars[cid / 8] &= ~(1 << (7 - (cid % 8)));
-+ }
- }
-
- return count;
-diff -ur ./texk/web2c/ptexdir/ChangeLog ../b18/texk/web2c/ptexdir/ChangeLog
---- ./texk/web2c/ptexdir/ChangeLog 2018-02-05 13:35:05.000000000 +0100
-+++ ../b18/texk/web2c/ptexdir/ChangeLog 2018-06-25 22:08:39.566240911 +0200
-@@ -1,3 +1,16 @@
-+2018-05-06 Hironori Kitagawa <h_kitagawa2001@yahoo.co.jp>
-+
-+ * kanji.c: More strict check kanji token.
-+
-+2018-04-14 Hironori Kitagawa <h_kitagawa2001@yahoo.co.jp>
-+
-+ * ptex-base.ch: Fix issue GitHub:texjporg/tex-jp-build#57
-+ that discontinuous KINSOKU/INHIBIT table cannot be
-+ searched properly.
-+ (regression caused by a commmit of 2017-09-11)
-+ * tests/free_pena.tex, tests/free_ixsp.tex: Added.
-+ * ptex_version.h: pTeX version p3.8.1.
-+
- 2018-02-05 Hironobu Yamashita <h.y.acetaminophen@gmail.com>
-
- * ptex-base.ch: Set subtype for JFM glue in math list.
-diff -ur ./texk/web2c/ptexdir/kanji.c ../b18/texk/web2c/ptexdir/kanji.c
---- ./texk/web2c/ptexdir/kanji.c 2016-11-25 19:24:38.000000000 +0100
-+++ ../b18/texk/web2c/ptexdir/kanji.c 2018-06-25 22:08:39.675240837 +0200
-@@ -4,6 +4,7 @@
- */
-
- #include "kanji.h"
-+#define CS_TOKEN_FLAG 0xFFFF
-
- #if !defined(WIN32)
- int sjisterminal;
-@@ -12,7 +13,8 @@
- /* TOKEN */
- boolean check_kanji(integer c)
- {
-- return is_char_kanji(c);
-+ if (c >= CS_TOKEN_FLAG) return false;
-+ else return is_char_kanji(c);
- }
-
- boolean is_char_ascii(integer c)
-diff -ur ./texk/web2c/ptexdir/ptex-base.ch ../b18/texk/web2c/ptexdir/ptex-base.ch
---- ./texk/web2c/ptexdir/ptex-base.ch 2018-02-05 13:35:05.000000000 +0100
-+++ ../b18/texk/web2c/ptexdir/ptex-base.ch 2018-06-25 22:08:39.677240836 +0200
-@@ -58,6 +58,7 @@
- % pTeX p3.7.1.
- % (2017-09-07) HK pTeX p3.7.2 More restrictions on direction change commands.
- % (2018-01-21) HK Added \ptexversion primitive and co. pTeX p3.8.
-+% (2018-04-14) HK pTeX p3.8.1 Bug fix for discontinuous KINSOKU table.
- %
-
- @x
-@@ -73,8 +74,8 @@
- @y
- @d pTeX_version=3
- @d pTeX_minor_version=8
--@d pTeX_revision==".0"
--@d pTeX_version_string=='-p3.8.0' {current \pTeX\ version}
-+@d pTeX_revision==".1"
-+@d pTeX_version_string=='-p3.8.1' {current \pTeX\ version}
- @#
- @d pTeX_banner=='This is pTeX, Version 3.14159265',pTeX_version_string
- @d pTeX_banner_k==pTeX_banner
-@@ -6397,6 +6398,8 @@
- @d inhibit_both=0 {disable to insert space before 2byte-char and after it}
- @d inhibit_previous=1 {disable to insert space before 2byte-char}
- @d inhibit_after=2 {disable to insert space after 2byte-char}
-+@d inhibit_none=3 {enable to insert space before/after 2byte-char}
-+@d inhibit_unused=4 {unused entry}
- @d no_entry=1000
- @d new_pos=0
- @d cur_pos=1
-@@ -6427,14 +6430,15 @@
- begin s:=calc_pos(c); p:=s;
- if n=new_pos then
- begin repeat
-- if (inhibit_xsp_code(p)=0)or(inhibit_xsp_code(p)=c) then goto done;
-+ if (inhibit_xsp_type(p)=inhibit_unused)or(inhibit_xsp_code(p)=0)
-+ or(inhibit_xsp_code(p)=c) then goto done;
- incr(p); if p>255 then p:=0;
- until s=p; p:=no_entry;
- end
- else
- begin repeat
-- if inhibit_xsp_code(p)=0 then goto done1;
-- if inhibit_xsp_code(p)=c then goto done;
-+ if inhibit_xsp_code(p)=0 then goto done1
-+ else if (inhibit_xsp_type(p)<>inhibit_unused)and(inhibit_xsp_code(p)=c) then goto done;
- incr(p); if p>255 then p:=0;
- until s=p;
- done1: p:=no_entry;
-@@ -6447,9 +6451,10 @@
- begin p:=cur_chr; scan_int; n:=cur_val; scan_optional_equals; scan_int;
- if is_char_kanji(n) then
- begin j:=get_inhibit_pos(tokanji(n),new_pos);
-- if (j<>no_entry)and(cur_val>inhibit_after)and(global or cur_level=level_one) then
-- begin n:=0; cur_val:=0 end
-- { remove the entry from inhibit table }
-+ if (j<>no_entry)and(cur_val>inhibit_after) then
-+ begin if global or(cur_level=level_one) then cur_val:=inhibit_unused
-+ { remove the entry from inhibit table }
-+ else cur_val:=inhibit_none; end
- else if j=no_entry then
- begin print_err("Inhibit table is full!!");
- help1("I'm skipping this control sequences.");@/
-@@ -6466,7 +6471,7 @@
-
- @ @<Fetch inhibit type from some table@>=
- begin scan_int; q:=get_inhibit_pos(tokanji(cur_val),cur_pos);
--cur_val_level:=int_val; cur_val:=3;
-+cur_val_level:=int_val; cur_val:=inhibit_none;
- if q<>no_entry then cur_val:=inhibit_xsp_type(q);
- end
-
-@@ -6476,6 +6481,7 @@
-
- @d pre_break_penalty_code=1
- @d post_break_penalty_code=2
-+@d kinsoku_unused_code=3
-
- @<Put each...@>=
- primitive("prebreakpenalty",assign_kinsoku,pre_break_penalty_code);
-@@ -6502,15 +6508,16 @@
- gubed
- if n=new_pos then
- begin repeat
-- if (kinsoku_type(p)=0)or(kinsoku_code(p)=c) then goto done;
-+ if (kinsoku_type(p)=0)or(kinsoku_type(p)=kinsoku_unused_code)
-+ or(kinsoku_code(p)=c) then goto done;
- incr(p); if p>255 then p:=0;
- until s=p;
- p:=no_entry;
- end
- else
- begin repeat
-- if kinsoku_type(p)=0 then goto done1;
-- if kinsoku_code(p)=c then goto done;
-+ if kinsoku_type(p)=0 then goto done1
-+ else if (kinsoku_type(p)<>kinsoku_unused_code)and(kinsoku_code(p)=c) then goto done;
- incr(p); if p>255 then p:=0;
- until s=p;
- done1: p:=no_entry;
-@@ -6523,8 +6530,8 @@
- begin p:=cur_chr; scan_int; n:=cur_val; scan_optional_equals; scan_int;
- if is_char_ascii(n) or is_char_kanji(n) then
- begin j:=get_kinsoku_pos(tokanji(n),new_pos);
-- if (j<>no_entry)and(cur_val=0)and(global or cur_level=level_one) then
-- define(kinsoku_base+j,0,0) { remove the entry from KINSOKU table }
-+ if (j<>no_entry)and(cur_val=0)and(global or(cur_level=level_one)) then
-+ define(kinsoku_base+j,kinsoku_unused_code,0) { remove the entry from KINSOKU table }
- else begin
- if j=no_entry then begin
- print_err("KINSOKU table is full!!");
-diff -ur ./texk/web2c/ptexdir/ptex_version.h ../b18/texk/web2c/ptexdir/ptex_version.h
---- ./texk/web2c/ptexdir/ptex_version.h 2018-01-21 04:48:06.000000000 +0100
-+++ ../b18/texk/web2c/ptexdir/ptex_version.h 2018-06-25 22:08:39.678240835 +0200
-@@ -1 +1 @@
--#define PTEX_VERSION "p3.8.0"
-+#define PTEX_VERSION "p3.8.1"
-diff -ur ./texk/web2c/uptexdir/kanji.c ../b18/texk/web2c/uptexdir/kanji.c
---- ./texk/web2c/uptexdir/kanji.c 2018-02-25 01:31:25.000000000 +0100
-+++ ../b18/texk/web2c/uptexdir/kanji.c 2018-06-25 22:08:41.864239345 +0200
-@@ -18,7 +18,7 @@
- /* TOKEN */
- boolean check_kanji (integer c)
- {
-- if (c > CS_TOKEN_FLAG) return false;
-+ if (c >= CS_TOKEN_FLAG) return false;
- else if (!(XXHi(c)>=KCAT_KANJI && XXHi(c)<=KCAT_HANGUL)) return false;
- else return is_char_kanji(c);
- }
-diff -ur ./utils/README ../b18/utils/README
---- ./utils/README 2018-04-08 22:08:33.000000000 +0200
-+++ ../b18/utils/README 2018-06-25 22:08:45.738236705 +0200
-@@ -1,4 +1,4 @@
--$Id: README 47384 2018-04-08 20:08:33Z karl $
-+$Id: README 47642 2018-05-08 16:06:43Z karl $
- Public domain. Originally written 2005 by Karl Berry.
-
- Extra utilities we (optionally) compile for TeX Live.
-@@ -16,7 +16,7 @@
-
- lacheck - maintained here, by us
-
--m-tx 0.63 - checked 09jan18
-+m-tx 0.63a - checked 29apr18
- http://ctan.org/pkg/m-tx/
-
- pmx 2.8.4 - checked 14feb18
-diff -ur ./utils/m-tx/ChangeLog ../b18/utils/m-tx/ChangeLog
---- ./utils/m-tx/ChangeLog 2018-01-09 04:41:12.000000000 +0100
-+++ ../b18/utils/m-tx/ChangeLog 2018-06-25 22:08:49.771233956 +0200
-@@ -1,3 +1,7 @@
-+2018-04-29 Akira Kakuto <kakuto@fuk.kindai.ac.jp>
-+
-+ * Import m-tx 0.63a.
-+
- 2018-01-09 Akira Kakuto <kakuto@fuk.kindai.ac.jp>
-
- * Import m-tx 0.63.
-diff -ur ./utils/m-tx/TLpatches/ChangeLog ../b18/utils/m-tx/TLpatches/ChangeLog
---- ./utils/m-tx/TLpatches/ChangeLog 2018-01-09 04:41:12.000000000 +0100
-+++ ../b18/utils/m-tx/TLpatches/ChangeLog 2018-06-25 22:08:49.772233956 +0200
-@@ -1,3 +1,7 @@
-+2018-04-29 Akira Kakuto <kakuto@fuk.kindai.ac.jp>
-+
-+ * patch-01-write-bin: Update for 0.63a.
-+
- 2018-01-09 Akira Kakuto <kakuto@fuk.kindai.ac.jp>
-
- * patch-01-write-bin: Update for 0.63.
-diff -ur ./utils/m-tx/TLpatches/TL-Changes ../b18/utils/m-tx/TLpatches/TL-Changes
---- ./utils/m-tx/TLpatches/TL-Changes 2018-01-09 04:41:12.000000000 +0100
-+++ ../b18/utils/m-tx/TLpatches/TL-Changes 2018-06-25 22:08:49.772233956 +0200
-@@ -1,4 +1,4 @@
--Changes applied to the mtx-0.63 tree as obtained from:
-+Changes applied to the mtx-0.63a tree as obtained from:
- http://www.ctan.org/tex-archive/support/m-tx/
-
- Remove:
-diff -ur ./utils/m-tx/TLpatches/patch-01-write-bin ../b18/utils/m-tx/TLpatches/patch-01-write-bin
---- ./utils/m-tx/TLpatches/patch-01-write-bin 2018-01-09 04:41:12.000000000 +0100
-+++ ../b18/utils/m-tx/TLpatches/patch-01-write-bin 2018-06-25 22:08:49.772233956 +0200
-@@ -1,6 +1,21 @@
--diff -ur mtx-0.63.orig/globals.c mtx-0.63/globals.c
----- mtx-0.63.orig/globals.c Tue Jan 09 01:39:42 2018
--+++ mtx-0.63/globals.c Tue Jan 09 08:46:40 2018
-+diff -ur mtx-0.63a/files.c mtx-src/files.c
-+--- mtx-0.63a/files.c Tue Jan 09 01:39:42 2018
-++++ mtx-src/files.c Wed Apr 25 18:07:12 2018
-+@@ -289,9 +289,9 @@
-+ pushFile(infilename);
-+ strcpy(outfile_NAME, outfilename);
-+ if (outfile != NULL)
-+- outfile = freopen(outfile_NAME, "w", outfile);
-++ outfile = freopen(outfile_NAME, "wb", outfile);
-+ else
-+- outfile = fopen(outfile_NAME, "w");
-++ outfile = fopen(outfile_NAME, "wb");
-+ _SETIO(outfile != NULL, FileNotFound);
-+ strcpy(stylefile_NAME, stylefilename);
-+ if (stylefile != NULL)
-+diff -ur mtx-0.63a/globals.c mtx-src/globals.c
-+--- mtx-0.63a/globals.c Tue Jan 09 01:39:42 2018
-++++ mtx-src/globals.c Wed Apr 25 18:07:37 2018
- @@ -230,7 +230,7 @@
- if (outfile != NULL)
- fclose(outfile);
-diff -ur ./utils/m-tx/configure ../b18/utils/m-tx/configure
---- ./utils/m-tx/configure 2018-01-09 04:41:12.000000000 +0100
-+++ ../b18/utils/m-tx/configure 2018-06-25 22:08:49.879233883 +0200
-@@ -1,6 +1,6 @@
- #! /bin/sh
- # Guess values for system-dependent variables and create Makefiles.
--# Generated by GNU Autoconf 2.69 for m-tx (TeX Live) 0.63.
-+# Generated by GNU Autoconf 2.69 for m-tx (TeX Live) 0.63a.
- #
- # Report bugs to <tex-k@tug.org>.
- #
-@@ -580,8 +580,8 @@
- # Identity of this package.
- PACKAGE_NAME='m-tx (TeX Live)'
- PACKAGE_TARNAME='m-tx--tex-live-'
--PACKAGE_VERSION='0.63'
--PACKAGE_STRING='m-tx (TeX Live) 0.63'
-+PACKAGE_VERSION='0.63a'
-+PACKAGE_STRING='m-tx (TeX Live) 0.63a'
- PACKAGE_BUGREPORT='tex-k@tug.org'
- PACKAGE_URL=''
-
-@@ -1275,7 +1275,7 @@
- # Omit some internal or obsolete options to make the list less imposing.
- # This message is too long to be a string in the A/UX 3.1 sh.
- cat <<_ACEOF
--\`configure' configures m-tx (TeX Live) 0.63 to adapt to many kinds of systems.
-+\`configure' configures m-tx (TeX Live) 0.63a to adapt to many kinds of systems.
-
- Usage: $0 [OPTION]... [VAR=VALUE]...
-
-@@ -1341,7 +1341,7 @@
-
- if test -n "$ac_init_help"; then
- case $ac_init_help in
-- short | recursive ) echo "Configuration of m-tx (TeX Live) 0.63:";;
-+ short | recursive ) echo "Configuration of m-tx (TeX Live) 0.63a:";;
- esac
- cat <<\_ACEOF
-
-@@ -1438,7 +1438,7 @@
- test -n "$ac_init_help" && exit $ac_status
- if $ac_init_version; then
- cat <<\_ACEOF
--m-tx (TeX Live) configure 0.63
-+m-tx (TeX Live) configure 0.63a
- generated by GNU Autoconf 2.69
-
- Copyright (C) 2012 Free Software Foundation, Inc.
-@@ -1861,7 +1861,7 @@
- This file contains any messages produced by compilers while
- running configure, to aid debugging if configure makes a mistake.
-
--It was created by m-tx (TeX Live) $as_me 0.63, which was
-+It was created by m-tx (TeX Live) $as_me 0.63a, which was
- generated by GNU Autoconf 2.69. Invocation command line was
-
- $ $0 $@
-@@ -3784,7 +3784,7 @@
-
- # Define the identity of the package.
- PACKAGE='m-tx--tex-live-'
-- VERSION='0.63'
-+ VERSION='0.63a'
-
-
- cat >>confdefs.h <<_ACEOF
-@@ -5868,7 +5868,7 @@
- # report actual input values of CONFIG_FILES etc. instead of their
- # values after options handling.
- ac_log="
--This file was extended by m-tx (TeX Live) $as_me 0.63, which was
-+This file was extended by m-tx (TeX Live) $as_me 0.63a, which was
- generated by GNU Autoconf 2.69. Invocation command line was
-
- CONFIG_FILES = $CONFIG_FILES
-@@ -5925,7 +5925,7 @@
- cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
- ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
- ac_cs_version="\\
--m-tx (TeX Live) config.status 0.63
-+m-tx (TeX Live) config.status 0.63a
- configured by $0, generated by GNU Autoconf 2.69,
- with options \\"\$ac_cs_config\\"
-
-diff -ur ./utils/m-tx/mtx-src/Corrections ../b18/utils/m-tx/mtx-src/Corrections
---- ./utils/m-tx/mtx-src/Corrections 2018-01-09 04:41:12.000000000 +0100
-+++ ../b18/utils/m-tx/mtx-src/Corrections 2018-06-25 22:08:49.880233882 +0200
-@@ -3,6 +3,12 @@
-
- Newest items at top. You might also want to look at file `MAINTENANCE`.
-
-+Version 0.63a
-+-------------
-+
-+Commented out apparently spurious begin...end block in preambleDefaults
-+in preamble.pas. (RDT)
-+
- Version 0.63
- ------------
-
-diff -ur ./utils/m-tx/mtx-src/files.c ../b18/utils/m-tx/mtx-src/files.c
---- ./utils/m-tx/mtx-src/files.c 2016-11-25 19:24:43.000000000 +0100
-+++ ../b18/utils/m-tx/mtx-src/files.c 2018-06-25 22:08:49.882233881 +0200
-@@ -289,9 +289,9 @@
- pushFile(infilename);
- strcpy(outfile_NAME, outfilename);
- if (outfile != NULL)
-- outfile = freopen(outfile_NAME, "w", outfile);
-+ outfile = freopen(outfile_NAME, "wb", outfile);
- else
-- outfile = fopen(outfile_NAME, "w");
-+ outfile = fopen(outfile_NAME, "wb");
- _SETIO(outfile != NULL, FileNotFound);
- strcpy(stylefile_NAME, stylefilename);
- if (stylefile != NULL)
-diff -ur ./utils/m-tx/mtx-src/libp2c/p2clib.c ../b18/utils/m-tx/mtx-src/libp2c/p2clib.c
---- ./utils/m-tx/mtx-src/libp2c/p2clib.c 2018-01-09 04:41:12.000000000 +0100
-+++ ../b18/utils/m-tx/mtx-src/libp2c/p2clib.c 2018-06-25 22:08:49.883233880 +0200
-@@ -73,8 +73,8 @@
- {
- register char *dd = (char *)d, *ss = (char *)s;
- if (dd < ss || dd - ss >= n) {
--#if defined(bcopy) && defined(memcpy)
-- my_memcpy(dd, ss, n);
-+#if defined(bcopy) && defined(memcpy)
-+ Anyptr my_memcpy(Anyptr d, Const Anyptr s, size_t n);
- #else
- memcpy(dd, ss, n);
- #endif
-diff -ur ./utils/m-tx/mtx-src/preamble.c ../b18/utils/m-tx/mtx-src/preamble.c
---- ./utils/m-tx/mtx-src/preamble.c 2018-01-09 04:41:12.000000000 +0100
-+++ ../b18/utils/m-tx/mtx-src/preamble.c 2018-06-25 22:08:49.953233832 +0200
-@@ -801,8 +801,8 @@
- stave_size[i] = unspec;
- for (i = 0; i <= maxstaves; i++)
- nspace[i] = unspec;
-- nspace[i] = unspec;
-- stave_size[i-1] = unspec;
-+ /* next line seems to be spurious. 0.63a RDT */
-+ /* begin nspace[i]:=unspec; stave_size[i]:=unspec; end; */
- n_pages = 1;
- n_systems = 1;
- readStyles();
-diff -ur ./utils/m-tx/mtx-src/preamble.pas ../b18/utils/m-tx/mtx-src/preamble.pas
---- ./utils/m-tx/mtx-src/preamble.pas 2018-01-09 04:41:12.000000000 +0100
-+++ ../b18/utils/m-tx/mtx-src/preamble.pas 2018-06-25 22:08:49.953233832 +0200
-@@ -501,7 +501,8 @@
- for i:=1 to maxvoices do setVocal(i,false);
- for i:=1 to maxstaves do stave_size[i]:=unspec;
- for i:=0 to maxstaves do nspace[i]:=unspec;
-- begin nspace[i]:=unspec; stave_size[i]:=unspec; end;
-+ { next line seems to be spurious. 0.63a RDT }
-+ { begin nspace[i]:=unspec; stave_size[i]:=unspec; end; }
- n_pages:=1; n_systems:=1;
- readStyles; old_known_styles := known_styles;
- for i:=1 to lines_in_paragraph do omit_line[i]:=false;
-diff -ur ./utils/m-tx/mtx-src/prepmx.c ../b18/utils/m-tx/mtx-src/prepmx.c
---- ./utils/m-tx/mtx-src/prepmx.c 2018-01-09 04:41:12.000000000 +0100
-+++ ../b18/utils/m-tx/mtx-src/prepmx.c 2018-06-25 22:08:49.954233832 +0200
-@@ -66,8 +66,8 @@
-
- /** M-Tx preprocessor to PMX Dirk Laurie */
-
--#define version "0.63"
--#define version_date "<7 January 2018>"
-+#define version "0.63a"
-+#define version_date "<8 April 2018>"
-
- /** See file "Corrections" for updates */
-
-@@ -758,7 +758,7 @@
- Static void topOfPMXfile(void)
- {
- Char STR2[24];
-- Char STR3[32];
-+ Char STR3[30];
-
- putLine("---");
- sprintf(STR2, "\\def\\mtxversion{%s}", version);
-diff -ur ./utils/m-tx/mtx-src/prepmx.pas ../b18/utils/m-tx/mtx-src/prepmx.pas
---- ./utils/m-tx/mtx-src/prepmx.pas 2018-01-09 04:41:12.000000000 +0100
-+++ ../b18/utils/m-tx/mtx-src/prepmx.pas 2018-06-25 22:08:49.954233832 +0200
-@@ -5,8 +5,8 @@
- { CMO: addition/change by Christian Mondrup }
-
- {* M-Tx preprocessor to PMX Dirk Laurie }
--const version = '0.63';
-- version_date = '<7 January 2018>';
-+const version = '0.63a';
-+ version_date = '<8 April 2018>';
-
- {* See file "Corrections" for updates }
-
-diff -ur ./utils/m-tx/tests/mozart.pmx ../b18/utils/m-tx/tests/mozart.pmx
---- ./utils/m-tx/tests/mozart.pmx 2018-01-09 04:41:12.000000000 +0100
-+++ ../b18/utils/m-tx/tests/mozart.pmx 2018-06-25 22:08:50.059233760 +0200
-@@ -1,6 +1,6 @@
- ---
--\def\mtxversion{0.63}
--\def\mtxdate{<7 January 2018>}
-+\def\mtxversion{0.63a}
-+\def\mtxdate{<8 April 2018>}
- \input mtx
- \mtxComposerLine{}{W. A. Mozart (1756--1791)}
- \mtxTitleLine{Riff in C}
-diff -ur ./utils/m-tx/version.ac ../b18/utils/m-tx/version.ac
---- ./utils/m-tx/version.ac 2018-01-09 04:41:12.000000000 +0100
-+++ ../b18/utils/m-tx/version.ac 2018-06-25 22:08:50.059233760 +0200
-@@ -8,4 +8,4 @@
- dnl --------------------------------------------------------
- dnl
- dnl m4-include this file to define the current mtx version
--m4_define([mtx_version], [0.63])
-+m4_define([mtx_version], [0.63a])
diff --git a/office/texlive/patches/synctex-missing-header.patch b/office/texlive/patches/synctex-missing-header.patch
deleted file mode 100644
index e783bd0bc1..0000000000
--- a/office/texlive/patches/synctex-missing-header.patch
+++ /dev/null
@@ -1,18 +0,0 @@
---- texk/web2c/Makefile.in.orig 2018-07-23 11:03:30.763277046 +0200
-+++ texk/web2c/Makefile.in 2018-07-23 11:04:53.940224054 +0200
-@@ -1762,6 +1762,7 @@
- MANS = $(dist_man_MANS) $(nodist_man_MANS)
- DATA = $(pkgconfig_DATA)
- am__syncinclude_HEADERS_DIST = synctexdir/synctex_parser.h \
-+ synctexdir/synctex_version.h \
- synctexdir/synctex_parser_utils.h
- HEADERS = $(syncinclude_HEADERS)
- RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
-@@ -4021,6 +4022,7 @@
- pkgconfigdir = ${libdir}/pkgconfig
- @SYNCTEX_TRUE@syncinclude_HEADERS = \
- @SYNCTEX_TRUE@ synctexdir/synctex_parser.h \
-+@SYNCTEX_TRUE@ synctexdir/synctex_version.h \
- @SYNCTEX_TRUE@ synctexdir/synctex_parser_utils.h
-
- @SYNCTEX_TRUE@pkgconfig_DATA = synctexdir/synctex.pc
diff --git a/office/texlive/prep/texmf_get.sh b/office/texlive/prep/texmf_get.sh
deleted file mode 100644
index fa4f3f752d..0000000000
--- a/office/texlive/prep/texmf_get.sh
+++ /dev/null
@@ -1,1076 +0,0 @@
-#!/bin/bash
-
-# texmf_get.sh (c) 2016 - 2018 Johannes Schoepfer, Germany, slackbuilds[at]schoepfer[dot]info
-# 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.
-#
-# V 15.0.2
-#
-# Prepare xz-compressed tarballs of texlive-texmf-trees based on texlive.tlpdb
-# This script takes care of dependencies(as far as these are present in texlive.tlpdb)
-# of collections and packages, and that every texlive-package is included only once.
-# The editions(base/extra/docs) should contain no binaries(exception biber)
-# -base: the most usefull stuff, most binaries/scripts,
-# manpages for compiled binaries 65mb 2017-11-07
-# -docs: -base documentation only, no manpages/GNU infofiles
-# -extra: remaining stuff and corresponding docs
-#
-# texlive netarchive policy: Every package is included as dependency
-# in exactly one collection. A package may have dependencies on other
-# packages from any collection.
-
-# package source: http://mirror.ctan.org/systems/texlive/tlnet/archive/
-
-#set -e
-MAJORVERSION=2018
-mirror="http://mirror.ctan.org/systems/texlive/tlnet/"
-TMP=$PWD/tmp
-
-# Globally excluded packages, which are/contain
-# -useless without tlmgr-installer
-# -non-linux
-# -covered by an external package, e.g. asymptote on SBo
-# -obsolete, e.g. omega
-# -java dependend packages
-# -binaries provided already by texlive.Slackbuild
-# -binaries provided already other system packages, e.g. texlive-scripts.ARCH
-# -only sources, or hyphen directives, e.g. metatype1, patch, ...
-# -only hyphen directives, e.g. hyphen-farsi ...
-
-global_exclude="
- aleph
- antomega
- asymptote
- bibtexu
- cslatex
- dviout.win32
- hyphen-arabic
- hyphen-farsi
- lambda
- metatype1
- ocherokee
- oinuit
- omega
- omegaware
- otibet
- patch
- texlive-common
- texlive-docindex
- texlive-msg-translations
- texlive-scripts
- texlive.infra
- texliveonfly
- texosquery
- texworks
- tlcockpit
- tlshell
- wintools.win32
- "
-
- # special packages, move their type1 fonts(if metafonts are present)
- # and/or docs to -extra
-special_packages="
- koma-script
- velthuis
- armtex
- montex
- vntex
- pl
- cc-pl
- cs
- musixtex-fonts
- tipa
- cbfonts
- ptex-fonts
- uptex-fonts
- "
-#Todo: split type1 fonts, or keep subset of type1 fonts in base
-# cm-super
-
-# keep precompiled binaries, list binary, not package name
-keep_precompiled="
- biber
- "
-
-texmf_editions () {
-
- # "excludes from -base", also dependencies are excluded
- PACKAGES="
- cm-super
- biber
- bib2gls
- knitting
- pgfornament
- pgfplots
- pst-cox
- pst-poker
- pst-vectorian
- pst-geo
- bclogo
- $(grep ^"name .*biblatex" $db | cut -d' ' -f2 )
- " texmfget extra || exit 1
-
- # packages/collections and their dependencies for -base
- PACKAGES="
- $(cat $corepackages)
- etoolbox
- xcolor
- memoir
- velthuis
- wasy
- ptex
- platex
- revtex
- uptex
- uplatex
- collection-basic
- collection-latex
- collection-metapost
- collection-plaingeneric
- collection-luatex
- collection-context
- collection-fontutils
- collection-langczechslovak
- collection-langeuropean
- collection-langenglish
- collection-langfrench
- collection-langitalian
- collection-langpolish
- collection-langportuguese
- collection-langspanish
- collection-latexrecommended
- $(collection_by_size fontsextra 70000 || exit 1)
- $(collection_by_size publishers 10000 || exit 1)
- " texmfget base
-
- # packages/collections and their dependencies for -extra
- PACKAGES="
- amiri
- arabi
- arabi-add
- arara
- arev
- bangorcsthesis
- beamer2thesis
- beamertheme-detlevcm
- beamertheme-epyt
- beamertheme-saintpetersburg
- beebe
- bhcexam
- bxtexlogo
- churchslavonic
- collection-fontsextra
- collection-langchinese
- collection-langcjk
- collection-langjapanese
- collection-langkorean
- collection-publishers
- collection-texworks
- collection-wintools
- ctan-o-mat
- ctanify
- ctanupload
- dad
- ethiop-t1
- fibeamer
- fithesis
- ghsystem
- gregoriotex
- hustthesis
- ijsra
- iwhdp
- jpsj
- kerkis
- ketcindy
- kpfonts
- langsci
- latex2nemeth
- libertine
- lilyglyphs
- lni
- luatexko
- media9
- musuos
- mwe
- newtx
- nwejm
- padauk
- pdfwin
- pdfx
- powerdot-tuliplab
- powerdot-FUBerlin
- quran
- resumecls
- sanskrit-t1
- sapthesis
- sduthesis
- seuthesix
- simurgh
- skaknew
- stellenbosch
- suanpan
- tudscr
- uantwerpendocs
- ucs
- udesoftec
- universalis
- uowthesis
- wasy2-ps
- xduthesis
- xetexko
- xq
- " texmfget extra || exit 1
-
- # What's left, for base again
- PACKAGES="
- collection-fontsrecommended
- collection-xetex
- collection-langcyrillic
- collection-langarabic
- collection-langgerman
- collection-langgreek
- collection-langother
- collection-humanities
- collection-mathscience
- collection-pictures
- collection-pstricks
- collection-music
- collection-games
- collection-binextra
- collection-bibtexextra
- collection-formatsextra
- collection-latexextra
- " texmfget base || exit 1
-
-}
-
-# ==== Nothing to edit beyond this line ====
-
-usage () {
- echo
- echo "Generate texmf trees/editions based on collections/packages"
- echo "and their (hard)dependencies."
- echo "./texmf_get.sh [base|docs|extra|lint]"
- echo
- echo "-base: texfiles, no docs"
- echo "-docs: docs of -base"
- echo "-extra: remaining texfiles and docs"
- echo "[lint]: compare filename contents of all generated editions,"
- echo " to detect overlapping files"
- echo
- echo "Only new/updated/missing tex packages are downloaded."
- echo "The first run takes \"long\", tex packages(about 2500Mb)"
- echo "need to be downloaded."
- echo "To check out a new version/release, delete"
- echo "$db"
- echo "A new ascii index file/database(texlive.tlpdb) is will be"
- echo "pulled on the next run, and a new version yymmdd will be set."
- echo
- echo "All generated tarballs, logs etc. are going to"
- echo "$TMP"
- echo
-}
-
-collection_by_size () {
- # from collection $1, pull packages smaller $2 bytes
- start_n="$(grep -n ^"name collection-$1"$ $db | cut -d':' -f1)"
- # find end of package/collection
- for emptyline in $emptylines
- do
- if [ "$emptyline" -gt "$start_n" ]
- then
- end_n=$emptyline
- break
- fi
- done
- extrapackages="$(sed "${start_n},${end_n}!d" $db | grep ^"depend " | grep -v ^"depend collection" | sed "s/^depend//g" )"
-
- # add if smaller than ...
- for checksize in $extrapackages
- do
- package_meta $checksize || exit 1
- size=$(grep ^"containersize " $texmf/$checksize.meta | cut -d' ' -f2)
- # for $2, e.g. 3000 means 3kb
- [ $size -lt $2 ] && echo $checksize
- done
-}
-
-package_meta () {
- if [ ! -s "$texmf/$1.meta" ]
- then
- # collection start linenumer
- start_n="$(grep -n ^"name ${1}"$ $db | cut -d':' -f1)"
- [ -z "$start_n" ] && echo "$1 was not found in $db, bye." && exit 1
- # find end of package/collection
- for emptyline in $emptylines
- do
- if [ "$emptyline" -gt "$start_n" ]
- then
- end_n=$emptyline
- break
- fi
- done
- # Don't handle collections as dependency of other collections
- sed "${start_n},${end_n}!d;/^depend collection/d" $db > $texmf/$1.meta
- fi
-}
-
-download () {
- # Download packages, if not already available. Not every packages has a corresponding .doc package.
- # Try three times if package isn't present, with -t1 to get another mirror the second time
- cd $texmf
- if [ ! -s "${1}${flavour}.tar.xz" ]
- then
- for run in {1..10}
- do
- wget -t1 -c ${mirror}archive/${1}${flavour}.tar.xz
- [ -s "${1}${flavour}.tar.xz" ] && break
- done
- fi
- # If no success by downloading, write error log
- [ ! -s ${1}${flavour}.tar.xz ] && echo "Downloading ${1}${flavour}.tar.xz did not work, writing to $errorlog" && echo "$VERSION" >> $errorlog && echo "Error downloading ${1}${flavour}.tar.xz" >> $errorlog && exit 1
-
- # check sha512, give three tries for downloading again(diffrent mirrors are used automatically)
- if [ "$flavour" = ".doc" ]
- then
- sha512="$(grep ^doccontainerchecksum $texmf/$1.meta | cut -d' ' -f2 )"
- else
- sha512="$(grep ^containerchecksum $texmf/$1.meta | cut -d' ' -f2 )"
- fi
-
- for run in {1..10}
- do
- if [ "$(sha512sum ${1}${flavour}.tar.xz | cut -d' ' -f1 )" != "$sha512" ]
- then
- # Download (hopefully) newer file
- rm ${1}${flavour}.tar.xz
- wget -t1 -c ${mirror}archive/${1}${flavour}.tar.xz
- else
- break
- fi
- done
- # check sha512 again, exit if it fails
- if [ "$(sha512sum ${1}${flavour}.tar.xz | cut -d' ' -f1 )" != "$sha512" ]
- then
- echo "sha512sum $(sha512sum ${1}${flavour}.tar.xz | cut -d' ' -f1 ) of"
- echo "${package}${flavour}.tar.xz doesn't match with $db"
- # delete metafile on failure to get generated again on next run, where new $db may be in use
- rm $texmf/$1.meta
- echo "sha512sum $sha512"
- echo "Delete ${db}* to be current again, and try again."
- exit 1
- fi
-}
-
-untar () {
- # leave if $1 has no content
- if [ -s "$1" ]
- then
- while read package
- do
- echo "untar $package"
- # untar all packages, check for relocation, "relocate 1" -> untar in texmf-dist
- download $package || exit 1
- # untar the tex package, relocate to texmf-dist if necessary, binpackages always need relocation
- relocated='.'
- [ -n "$(grep -w ^"relocated 1" $texmf/$package.meta)" -o -n "$(grep ^"binfiles " $texmf/$package.meta)" ] && relocated="texmf-dist"
- # if not .doc package, investigate files for dependencies/provides
- if [ -n "$flavour" ]
- then
- tar xf ${package}${flavour}.tar.xz --exclude tlpkg -C $relocated || exit 1
- else
- #tar vxf ${package}${flavour}.tar.xz --exclude tlpkg -C $relocated
- tar vxf ${package}${flavour}.tar.xz --exclude tlpkg -C $relocated | egrep '\.sty$|\.bbx$|\.cls$' > $texmf/$package.deps
- if [ -n "$texmf/$package.deps" ]
- then
- unset provide
- unset depends
- for depfile in $(cat $texmf/$package.deps)
- do
- filename="$( echo $depfile | rev | cut -d'.' -f2- | cut -d'/' -f1 | rev)"
- # always add $filename as "ProvidesPackage", if it's a .sty
- echo $depfile | grep '\.sty'$ &>/dev/null
- [ $? = 0 ] && provide+="${filename},"
- # remove comments, if there are backslashes ignore that content, except it is \filename
- #provide+="$(sed "s/%.*//g" $texmf/$relocated/$depfile | sed -n "s/.*\\\ProvidesPackage{\([^}]*\)}.*/\1/p" | sed "s/\\\filename/$filename/g;/\\\/d" | sort -u | tr '\n' ',')"
- #sed -z "s/.*\\\Provides\(Package\|ExplPackage\|File\|Class\)*.\n//g" | sed "s/[[:space:]]//
- #provide+="$(sed "s/%.*//g" $texmf/$relocated/$depfile | sed -z "s/.*\\\Provides\(Package\|ExplPackage\|File\|Class\)*.\n//g" | sed "s/[[:space:]]// | sed -n "s/.*\\\Provides\(Package\|ExplPackage\|File\|Class\){\([^}]*\)}.*/\2/p" | sed "s/\\\filename/$filename/g;s/\\\ExplFileName/$filename/g;/\\\/d" | sed "s/\(\.sty$\|\.cls$\)//g" | sort -u | tr '\n' ',')"
- provide+="$(sed "s/%.*//g" $texmf/$relocated/$depfile | sed -z "s/\(Package\|ExplPackage\|File\|Class\)\n/\1/g" | sed "s/[[:space:]]//" | sed -n "s/.*\\\Provides\(Package\|ExplPackage\|File\|Class\){\([^}]*\)}.*/\2/p" | sed "s/\\\filename/$filename/g;s/\\\ExplFileName/$filename/g" | sed "s/\(\.sty$\|\.cls$\)//g" | sort -u | tr '\n' ',')"
- #depends+="$(sed "s/%.*//g" $texmf/$relocated/$depfile | sed -n "s/.*\(\\\require\|\\\use\)package{\([^}]*\)}.*/\2/p" | sed "/\\\/d" | sort -u | tr '\n' ',')"
- depends+="$(sed "s/%.*//g" $texmf/$relocated/$depfile | sed -n "s/.*\(\\\require\|\\\use\)package{\([^}]*\)}.*/\2/p" | sort -u | tr '\n' ',')"
- #depends+="$(sed "s/%.*//g" $texmf/$relocated/$depfile | sed -n "s/.*\\\\(require\|use\)package{\([^}]*\)}.*/\2/p" | sed "/\\\/d" | sort -u | tr '\n' ',')"
- done
- if [ -n "$provide" ]
- then
- #echo "$package $provide | sort -u | tr '\n' ',' " >> $TMP/provides.run.$edition
- echo "$package $provide" >> $TMP/provides.run.$edition
- fi
- if [ -n "$depends" ]
- then
- echo "$package $depends" >> $TMP/depends.run.$edition
- fi
- fi
- fi
-
- # Delete binaries, these are provided
- # by texlive.Slackbuild, keep symlinks and scripts
-
- for arch in $platforms
- do
- if [ -d $texmf/texmf-dist/bin/$arch ]
- then
- [ ! -d $texmf/texmf-dist/linked_scripts ] \
- && mkdir $texmf/texmf-dist/linked_scripts
- # rewrite link target to fit systemwide installation
- for link in $(find $texmf/texmf-dist/bin/$arch -type l)
- do
- ln -sf $(readlink $link | sed "s/^..\/..\(.*\)/..\/share\1/" ) $link || exit 1
- done
- # move symlinks to linked_scripts
- find $texmf/texmf-dist/bin/$arch -type l -exec mv '{}' $texmf/texmf-dist/linked_scripts/ \;
-
- # keep only binaries of special packages
- # remove xindy.mem(gzip compresses data) to prevent overwriting
- for bin in $(find $texmf/texmf-dist/bin/$arch \
- -type f -exec file '{}' + | \
- grep -e "executable" -e "shared object" -e "gzip compressed data" | \
- grep -e ELF -e "gzip compressed data" | cut -f 1 -d : )
- do
- for binary in $keep_precompiled
- do
- if [ "$(echo $bin | rev | cut -d'/' -f1 | rev)" != "$binary" ]
- then
- rm $bin
- echo $bin | rev | cut -d'/' -f1 | rev >> $binary_removed.$edition
- fi
- done
- done
- # move scripts to linked-scripts
- scripts="$(find $texmf/texmf-dist/bin/$arch -type f -exec file '{}' + | grep -wv ELF | cut -f 1 -d : )"
- for script in $scripts
- do
- mv $script $texmf/texmf-dist/linked_scripts/
- done
- fi
- done
-
- if [ "$flavour" = ".doc" ]
- then
- size=$(grep ^doccontainersize $texmf/$package.meta | cut -d' ' -f2)
- else
- size=$(grep ^containersize $texmf/$package.meta | cut -d' ' -f2)
- fi
- shortdesc="$(grep ^shortdesc $texmf/$package.meta | cut -d' ' -f2- )"
- echo "$size byte, $package$flavour: $shortdesc" >> $output.meta
- # make index of uncompressed size of each package
- echo "$(xz -l --verbose ${package}${flavour}.tar.xz | grep "Uncompressed size" | cut -d'(' -f2 | cut -d' ' -f1 ) byte, $package$flavour: $shortdesc" >> $output.meta.uncompressed
- done < $1
-
- # copy packages index to texmf-dist, so included packages are known in later installation
- # don't list binary packages, as the binaries itself are not contained, only the symlinks.
- cat $output.meta | grep -v '\-linux:' >> $output.$edition.meta
- cat $output.meta.uncompressed | grep -v '\-linux:' >> $output.$edition.meta.uncompressed
-
- # cleanup
- [ -f $output.meta ] && rm $output.meta
- [ -f $output.meta.uncompressed ] && rm $output.meta.uncompressed
- fi
-}
-
-remove_cruft () {
- # Remove m$-stuff, ConTeXt single-user-system stuff, source leftovers and pdf-versions of manpages
- rm -rf texmf-dist/source
- rm -rf texmf-dist/scripts/context/stubs/source/
- find texmf-dist/ -type d -name 'win32' -exec rm -rf {} +
- find texmf-dist/ -type d -name 'win64' -exec rm -rf {} +
- find texmf-dist/ -type d -name 'mswin' -exec rm -rf {} +
- find texmf-dist/ -type d -name 'win' -exec rm -rf {} +
- find texmf-dist/ -type d -name 'setup' -exec rm -rf {} +
- find texmf-dist/ -type d -name 'install' -exec rm -rf {} +
- find texmf-dist/ -type f -name 'uninstall*.sh' -delete
- find texmf-dist/ -type f -name '*.bat' -delete
- find texmf-dist/ -type f -name '*.bat.w95' -delete
- find texmf-dist/ -type f -name '*win32*' -delete
- find texmf-dist/ -type f -name 'winansi*' -delete
- find texmf-dist/ -type f -name '*man1.pdf' -delete
- find texmf-dist/ -type f -name '*man5.pdf' -delete
- # Remove zero-length files, as these appear e.g. in hyph-utf8 tex-package.
- # find texmf-dist/ -type f -size 0c -delete
- find texmf-dist/ -type f -empty -delete
- # Remove empty directories recursively
- find texmf-dist/ -type d -empty -delete
-}
-
-texmfget () {
- # make sure no package is added more than once.
- echo "Preparing index of packages to be added to -${1} ..."
- echo "$PACKAGES" | sed "s/[[:space:]]//g;/^$/d" > $collections_tobedone
- # Remove outputfile if already present
- >$output
- >$output_doc
-
- # Only do something if $collection wasn't already done before
- while [ -s $collections_tobedone ]
- do
- collection=$(tail -n1 $collections_tobedone)
-
- # continue with next collection if collection was already done
- if [ -s "$collections_done" ]
- then
- grep -w "^${collection}$" $collections_done &> /dev/null
- if [ $? = 0 ]
- then
- # remove from $collections_tobedone
- sed -i "/^$collection$/d" $collections_tobedone
- if [ -n "$(grep "^${collection} added to" $logfile)" ]
- then
- echo "$collection already added " >> $logfile
- fi
- continue
- fi
- fi
-
- package_meta $collection || exit 1
-
- # If $collection is a singel package(not a collection-), add it here
- if [ -n "$(head -n1 $texmf/$collection.meta | fgrep -v "name collection" )" ]
- then
- addpackage=no
- # if package contains docs, add to docpackages
- if [ -n "$(grep ^docfiles $texmf/$collection.meta)" ]
- then
- echo "$collection" >> $output_doc
- echo "$collection added to docs $1" >> $logfile
- addpackage=yes
- fi
- if [ -n "$(grep ^runfiles $texmf/$collection.meta)" -o -n "$(grep ^binfiles $texmf/$collection.meta)" ]
- then
- echo "$collection" >> $output
- echo "$collection added to -$1" >> $logfile
- addpackage=yes
- fi
- # very package should be added to one edition, abort if that didn't work
- if [ $addpackage = no ]
- then
- echo "$collection doesn't contain any docfiles/runfiles/binfiles"
- echo "Please exclude package/report to upstream mailinglist tex-live@tug.org, bye."
- exit 1
- fi
- fi
-
- # Don't handle collections as dependency of other collections, as this destroys control over what packages to be added
- # add dependend packages, but no binary(ARCH) and no packages conataining a '.'. Packges with dot indicate binary/texlive-manager/windows packages
-
- grep ^"depend " $texmf/$collection.meta | cut -d' ' -f2- > $dependencies
-
- if [ -s "$dependencies" ]
- then
- # check for .ARCH packages which may be binaries, scripts or links
- # Binaries should all come from the sourcebuild(exception biber)
- for dependency in $(cat $dependencies)
- do
- echo $dependency | grep '\.ARCH'$ &>/dev/null
- if [ $? = 0 ]
- then
- for arch in $platforms
- do
- archpackage="$(echo $dependency | sed "s/\.ARCH$/\.$arch/")"
- grep ^"name $archpackage"$ $db &>/dev/null && echo "$archpackage" >> $dependencies.verified_arch
- done
- else
- echo $dependency >> $dependencies.verified_arch
- fi
- done
- if [ -f $dependencies.verified_arch ]
- then
- mv $dependencies.verified_arch $dependencies
- else
- rm $dependencies
- fi
- fi
-
- if [ -s "$dependencies" ]
- then
- echo "----------------" >> $logfile
- echo "Dependencies of $collection: $(cat $dependencies | tr '\n' ' ')" >> $logfile
- for dependency in $(cat $dependencies)
- do
- if [ -n "$(grep ^"${dependency}"$ $collections_done)" ]
- then
- sed -i "/^${dependency}$/d" $dependencies
- continue
- else
- for exclude in $global_exclude
- do
- if [ "$exclude" = "$dependency" ]
- then
- sed -i "/^${exclude}$/d" $dependencies
- echo "$exclude excluded, see \$global_exclude" >> $logfile
- fi
- done
- fi
- done
- cat $dependencies >> $collections_tobedone
- echo "----------------" >> $logfile
- fi
-
- sed -i "/^${collection}$/d" $collections_tobedone
- echo "$collection" >> $collections_done
- done
- # handle package index list per edition
- cat $output >> $TMP/packages.$1
- # handle doc package index, one for each edition
- cat $output_doc >> $TMP/packages.$1.doc
-
- # untar only one $edition, untar docs together with -extra edition
- if [ "$1" = $edition -o docs = $edition ]
- then
- cd $texmf
-
- # Cleanup tar-directory
- [ -d $texmf/texmf-dist ] && rm -rf $texmf/texmf-dist
- mkdir $texmf/texmf-dist
-
- # Make tarball/checksum reproducible by setting mtime(clamp-mtime), owner, group and sort content
- # --clamp-mtime --mtime doesn't work with tar 1.13, when makepkg creates the tarball:
- # tar-1.13: time_t value 9223372036854775808 too large (max=68719476735)
- echo "Adding files to $( echo $tarball | rev | cut -d'/' -f1 | rev ) ..."
- case $edition in
- base)
- unset flavour
- untar $output || exit 1
- remove_cruft || exit 1
- tar rf $tarball --owner=0 --group=0 --sort=name texmf-dist || exit 1
- rm -rf texmf-dist
- ;;
- extra)
- unset flavour
- untar $output || exit 1
- export flavour=".doc"
- untar $output_doc || exit 1
- remove_cruft || exit 1
- #tar vrf $tarball --clamp-mtime --mtime --owner=0 --group=0 --sort=name texmf-dist || exit 1
- tar rf $tarball --owner=0 --group=0 --sort=name texmf-dist || exit 1
- rm -rf texmf-dist
- ;;
- docs)
- export flavour=".doc"
- # only add -base docs to -docs
- if [ $1 = base ]
- then
- untar $output_doc || exit 1
- remove_cruft || exit 1
- #tar vrf $tarball --clamp-mtime --mtime --owner=0 --group=0 --sort=name texmf-dist || exit 1
- tar rf $tarball --owner=0 --group=0 --sort=name texmf-dist || exit 1
- rm -rf texmf-dist
- fi
- ;;
- esac
- fi
-}
-
-lint () {
-
-echo "Comparing content of all editions, this may take a while ...";
-cd $TMP
-# check if all editions of same VERSION are there, take -base as reference
-lint_version=$( ls texlive-base-*tar.xz | head -n1 | cut -d'.' -f2 || exit 1)
-if [ -s texlive-extra-$MAJORVERSION.$lint_version.tar.xz \
- -a -s texlive-docs-$MAJORVERSION.$lint_version.tar.xz ]
-then
- for edition in base extra docs
- do
- echo "Extracting index of texlive-${edition}-$MAJORVERSION.$lint_version.tar.xz ..."
- # don't list directories
- tar tf texlive-${edition}-$MAJORVERSION.$lint_version.tar.xz | grep -v '/'$ > $TMP/packages.$edition.lint
- done
-
- # compare content
- for edition in base extra docs
- do
- >$TMP/packages.$edition.lint.dup
- case $edition in
- base)
- echo "check if files of base are present in another edition"
- while read line
- do
- grep ^"$line"$ $TMP/packages.extra.lint >> $TMP/packages.base.lint.dup
- grep ^"$line"$ $TMP/packages.docs.lint >> $TMP/packages.base.lint.dup
- done < $TMP/packages.$edition.lint
- ;;
- esac
- done
-else
- echo "Not all editions are present to lint them. Create them first by"
- echo "$0 [base|docs|extra]"
- echo "bye."
- exit 1
-fi
-
-exit 0
-
-}
-
-# Main
-
-LANG=C
-output=$TMP/packages
-output_doc=$TMP/packages.doc.tmp
-errorlog=$TMP/error.log
-texmf=$TMP/texmf
-db=$TMP/texlive.tlpdb
-tmpfile=$TMP/tmpfile
-collections_done=$TMP/done
-collections_tobedone=$TMP/tobedone
-corepackages=$TMP/corepackages
-allcollections=$TMP/allcollections
-binary_removed=$TMP/binaries.removed
-manpages=$TMP/manpages
-dependencies=$TMP/deps
-packages_base=$TMP/packages.base
-packages_extra=$TMP/packages.extra
-packages_manpages=$TMP/packages.manpages
-files_split=$TMP/files.split
-platforms="x86_64-linux i386-linux"
-
-mkdir -p $texmf
-cd $TMP
-
-case "$1" in
- base|docs|extra) edition=$1;;
- lint) lint ;;
- *) usage; exit 0 ;;
-esac
-
-echo "Building $edition tarball ..."
-
-# Set VERSION, get texlive.tlpdb and keep unshorten $db.orig
-if [ ! -s ${db}.orig -o ! -s $db -o ! -s VERSION ]
-then
- echo $MAJORVERSION.$(date +%y%m%d) > VERSION
- wget -c -O ${db}.orig ${mirror}tlpkg/texlive.tlpdb
- # remove most content from $db to be faster on later processing.
- # keep dependencies/manpages/binfiles/shortdesc/sizes
- egrep \
- '^\S|^ RELOC/doc/man|^ texmf-dist/doc/man/man|^ RELOC/doc/info/|^ texmf-dist/doc/info/|^ bin|^$' \
- ${db}.orig | grep -v ^longdesc > $db
-
- # As $db (might be)/is new, remove the meta-files, might created again with (pontentionally) new content
- rm -rf $texmf/*.meta
-fi
-
-# Get linenumbers of empty lines from $db
-emptylines="$(grep -n ^$ $db | cut -d':' -f1)"
-
-# Provide TLCore packages for -base, as these packages(and their dependencies) should be present in any case.
-grep -B1 ^'category TLCore' $db | grep -v ^'category TLCore' | grep -v ^-- | grep -v '\.' | cut -d' ' -f2 > $corepackages
-
-# Make a list of all collections
-grep ^"name collection-" $db | cut -d' ' -f2 > $allcollections
-
-# translate .ARCH to platforms in excludes, to make .ARCH packages excludeable by $global_exclude
-for exclude in $global_exclude
-do
- if [ -n "$(echo $exclude | grep '\.ARCH'$ )" ]
- then
- for arch in $platforms
- do
- global_exclude+=" $(echo $exclude | sed "s/\.ARCH$/\.$arch/")"
- done
- global_exclude=${global_exclude/$exclude/}
- fi
-done
-# globally exclude from $corepackages
-for exclude in $global_exclude
-do
- sed -i "/^${exclude}$/d" $corepackages
-done
-
-VERSION=$(cat $TMP/VERSION)
-tarball=$TMP/texlive-$edition-$VERSION.tar
-# set logfile
-logfile=$TMP/$VERSION.log
-
-# reset some files
->$logfile
->$tarball
->$collections_done
->$files_split
->$manpages
->$packages_manpages
->$packages_base
->$packages_extra
->$packages_base.doc
->$packages_extra.doc
->$TMP/packages.$edition.meta
->$TMP/packages.$edition.meta.uncompressed
->$TMP/provides.run.$edition
->$TMP/depends.run.$edition
->$binary_removed.$edition
-
-# put the editions base/extra together
-texmf_editions || exit 1
-
-# Check if all collections are part in at least one edition
-while read collection
-do
- grep -w "$collection" $collections_done &> /dev/null
- if [ $? != 0 ]
- then
- echo "Error: $collection was not handled."
- echo "Edit packages/collections in the texmfget function." | tee -a $logfile
- exit 1
- fi
-done < $allcollections
-
-# cleanup
-rm $allcollections
-rm $corepackages
-rm $collections_done
-rm $collections_tobedone
-rm $output
-rm $output_doc
-rm $dependencies
-
-# untar special- and manpage packages to be splitted/moved to other editions
-# splitting special packages, files index
-echo "Prepare index of to be splitted/moved files from -base"
-[ ! -d texmf-dist ] && mkdir texmf-dist
-for package in $special_packages
-do
- echo "Splitting $package"
- # special packages have to be in -base, as only here are special
- # tasks done to reduce size of -base edition
- if [ -z "$( grep ^"$package"$ $packages_base )" ]
- then
- echo "$package was not found to be part of -base"
- echo "Edit \$special_packages in $0"
- echo "to contain only packages from -base, bye."
- exit 1
- fi
- unset relocated
- pathprefix="texmf-dist/"
- [ -n "$(grep -w ^"relocated 1" $texmf/$package.meta)" ] && \
- relocated="-C texmf-dist" && unset pathprefix
- # avoid big pdf docs which are also present as html
- # move (big)type1 fonts to -extra
- # $files_split lists files to be moved from -base -extra
- if [ $package = "cm-super" ]
- then
- # cm-super minimal for -base, create index of extended cm-super
- tar tf $texmf/$package.tar.xz | sed \
- "/1000\.pfb$/d;/^tlpkg/d;/\.sty$/d;/\.enc$/d;/\.GS$/d" \
- | tee -a $files_split > $files_split.tmp
- else
- tar tf $texmf/${package}.tar.xz | sed \
- -ne "/.*doc\/latex\/.*\.pdf$/p" \
- -ne "/.*fonts\/map\/.*\.map$/p" \
- -ne "/.*fonts\/enc\/.*\.enc$/p" \
- -ne "/.*fonts\/afm\/.*\.\(afm\|afm\.gz\)$/p" \
- -ne "/.*fonts\/type1\/.*\.pfb$/p" \
- -ne "/.*fonts\/vf\/.*\.vf$/p" \
- | tee -a $files_split > $files_split.tmp
- fi
-
- if [ $edition = base ]
- then
- # Calculate package-minimal size, uncompressed and compressed
- mkdir -p calculate/texmf-dist
- tar xf $texmf/$package.tar.xz -C calculate/texmf-dist --exclude-from=$files_split.tmp
- tar cf calculate/calc.tar.xz -I 'xz -9' calculate/texmf-dist
- size_minimal=$(du -bc calculate/calc.tar.xz | tail -n1 | sed "s/[[:space:]].*//")
- size_minimal_uncompressed="$(xz -l --verbose calculate/calc.tar.xz | grep "Uncompressed size" | cut -d'(' -f2 | cut -d' ' -f1 )"
- sed -i \
- -e "s/^[0-9]* byte, $package: /$size_minimal byte, $package-minimal: /" \
- $output.base.meta
- sed -i \
- -e "s/^[0-9]* byte, $package: /$size_minimal_uncompressed byte, $package-minimal: /" \
- $output.base.meta.uncompressed
- rm -rf calculate
- fi
-
- if [ $edition = extra ]
- then
- mkdir -p calculate/texmf-dist
- tar xf $texmf/${package}.tar.xz -C calculate/texmf-dist $(paste $files_split.tmp)
- tar cf calculate/calc.tar.xz -I 'xz -9' calculate/texmf-dist
- size_extended=$(du -bc calculate/calc.tar.xz | tail -n1 | sed "s/[[:space:]].*//")
- size_extended_uncompressed="$(xz -l --verbose calculate/calc.tar.xz | \
- grep "Uncompressed size" | cut -d'(' -f2 | cut -d' ' -f1 )"
-
- # put new sizes in package index uncompressed
- sed -i \
- -e "s/^[0-9]* byte, $package: /$size_extended byte, $package-extended: /" \
- $output.extra.meta
- sed -i \
- -e "s/^[0-9]* byte, $package: /$size_extended_uncompressed byte, $package-extended: /" \
- $output.extra.meta.uncompressed
- rm -rf calculate
- fi
-
- # untar to provide files for -extra
- tar xf $texmf/${package}.tar.xz $relocated $(paste $files_split.tmp)
- if [ $package = "cm-super" ]
- then
- # create cm-super- minimal config/maps with 10pt glyphs only
- sed "s/cm-super/cm-super-minimal/g" $texmf/texmf-dist/dvips/cm-super/config.cm-super \
- > $texmf/texmf-dist/dvips/cm-super/config-minimal.cm-super
- for map in t1 t2a t2b t2c ts1 x2
- do
- grep 1000 $texmf/texmf-dist/fonts/map/dvips/cm-super/cm-super-$map.map \
- > $texmf/texmf-dist/fonts/map/dvips/cm-super/cm-super-minimal-$map.map
- sed -i "/.*1000\.pfb/d" $texmf/texmf-dist/fonts/map/dvips/cm-super/cm-super-$map.map
- done
- fi
-
-done
-
-
-# cleanup
-rm $files_split.tmp
-# fix relocation in index for splitted packages
-sed -i \
- -e "s|^doc|texmf-dist\/doc|g" \
- -e "s|^fonts|texmf-dist\/fonts|g" \
- -e "s|^dvips|texmf-dist\/dvips|g" \
- $files_split
-
-# sort meta data about added packages
-sort -n $output.$edition.meta > $tmpfile
-mv $tmpfile $output.$edition.meta
-sort -n $output.$edition.meta.uncompressed > $tmpfile
-mv $tmpfile $output.$edition.meta.uncompressed
-
-sort -u $binary_removed.$edition > $tmpfile
-mv $tmpfile $binary_removed.$edition
-
-# include manpages/GNU infofiles in -base, write index for later exclution from other editions.
-# In -extra/-docs there should not be any manpage left.
-echo "Looking for manpages/GNU infofiles to be included in -base ..."
-for package in $(paste -s $packages_base.doc | sort -u)
-do
- if [ -n "$(egrep "(doc/man/man|doc/info/)" $texmf/$package.meta )" ]
- then
- echo "Adding manpage from $package.doc to -base"
- flavour=".doc" download $package || exit 1
- unset relocated
- pathprefix="texmf-dist/"
- [ -n "$(grep -w ^"relocated 1" $texmf/$package.meta)" ] \
- && relocated="-C texmf-dist" && unset pathprefix
- tar tf $texmf/${package}.doc.tar.xz | sed \
- -ne "/.*doc\/man\/.*\.1$/p" \
- -ne "/.*doc\/man\/.*\.5$/p" \
- -ne "/.*doc\/info\/.*\.info$/p" \
- | tee -a $manpages > $manpages.tmp
- # untar to provide files for -/extra/-docs
- tar xf $texmf/${package}.doc.tar.xz $relocated $(paste $manpages.tmp)
- echo "$package" >> $packages_manpages
- fi
-done
-# cleanup
-rm $manpages.tmp
-sed -i \
- -e "s/^doc/texmf-dist\/doc/g" \
- $manpages
-
-case $edition in
- base)
- # Content info
- cat << EOF | gzip -9 >> $texmf/texmf-dist/packages.$edition.gz
-Content of -$edition:
-$(sed "/-linux$/d" $packages_base | sort)
-EOF
- # add texdoc cache file
- if [ $(command -v texdoc) ]
- then
- mkdir -p $texmf/texmf-dist/tlpkg
- mkdir -p texmf-dist/scripts/texdoc
- ln -s ${db}.orig $texmf/texmf-dist/tlpkg/texlive.tlpdb
- TEXMFVAR=$texmf/texmf-dist \
- texdoc -lM texlive-en >/dev/null
- mv texmf-dist/texdoc/cache-tlpdb.lua \
- texmf-dist/scripts/texdoc/Data.tlpdb.lua
- rm -rf $texmf/texmf-dist/tlpkg
- else
- echo "WARNING: texdoc/texlive is not installed, the texdoc cache"
- echo "Data.tlpdb.lua can't be created and wont't be available."
- echo "texdoc will not wotk without this."
- echo ""
- echo "Continue with any key or abort with ctrl-c"
- read -n1
- fi
-
-#Splitted packages, type1 fonts/docs moved to -extra:
-#$(echo $special_packages)
-#EOF
-
-# add manpages/GNU infofiles to the tarball
- tar rf $tarball --owner=0 --group=0 --sort=name \
- texmf-dist/doc/man/ texmf-dist/doc/info/ \
- texmf-dist/packages.$edition.gz \
- texmf-dist/scripts/texdoc/Data.tlpdb.lua \
- || exit 1
-# # add cm-super minimal maps/config
-# tar rf $tarball --owner=0 --group=0 --sort=name \
-# texmf-dist/dvips/cm-super/config-minimal.cm-super \
-# --wildcards texmf-dist/fonts/map/dvips/cm-super/cm-super-minimal-*.map \
-# || exit 1
- echo "Removing files -from base, splitted from special packages to be included in -extra"
- tar f $tarball --delete $(paste $files_split) || exit 1
- ;;
- extra)
- echo "Removing manpages from $edition which now reside in -base"
- tar f $tarball --delete $(paste $manpages) 2>/dev/null
- # content info
- echo "Content of -$edition, including documentation:" > $texmf/texmf-dist/packages.$edition
- sed "/-linux$/d" $TMP/packages.$edition | sort >> $texmf/texmf-dist/packages.$edition
- gzip -9 $texmf/texmf-dist/packages.$edition
-# # remove cm-super minimal config, which resides in -base
-# rm \
-# $texmf/texmf-dist/dvips/cm-super/config-minimal.cm-super \
-# $texmf/texmf-dist/fonts/map/dvips/cm-super/cm-super-minimal-*.map
- tar rf $tarball --owner=0 --group=0 --sort=name \
- --exclude texmf-dist/doc \
- texmf-dist \
- || exit 1
- ;;
- docs)
- # add docs splittet from base from special packages, add packages index
- # content info, this edition contains all docs from -base
- echo "Content of -$edition, documentation for -base:" > $texmf/texmf-dist/packages.$edition
- sort $packages_base.doc >> $texmf/texmf-dist/packages.$edition
- gzip -9 $texmf/texmf-dist/packages.$edition
- tar rf $tarball --owner=0 --group=0 --sort=name \
- texmf-dist/doc/ \
- texmf-dist/packages.$edition.gz \
- || exit 1
- echo "Removing manpages from $edition which now reside in -base"
- tar f $tarball --delete $(paste $manpages) || exit 1
- ;;
-esac
-
-rm -rf texmf-dist
-
-# compress the tarball as everything is in place now
-echo "Compressing $tarball ..."
-[ -f $tarball.xz ] && rm $tarball.xz
-xz -9 -T0 $tarball || exit 1
-md5sum $tarball.xz
-ls -lh $tarball.xz
-echo "Logfile: $logfile"
diff --git a/office/texlive/slack-desc b/office/texlive/slack-desc
deleted file mode 100644
index 4e573a1608..0000000000
--- a/office/texlive/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-texlive: texlive (TeX binaries, support files, and formats)
-texlive:
-texlive: This package contains binaries, support files, TeX formats and
-texlive: packages,and other files included in the TeXLive TeX distribution.
-texlive: Included are input files for TeX, runtime configuration files,
-texlive: hyphenation tables, manpages, and the computer modern fonts.
-texlive:
-texlive: SlackBuilds.org has more texmf files and documentation in the
-texlive: texlive-extra and texlive-docs packages.
-texlive:
-texlive:
diff --git a/office/texlive/texlive.SlackBuild b/office/texlive/texlive.SlackBuild
deleted file mode 100644
index 527747254d..0000000000
--- a/office/texlive/texlive.SlackBuild
+++ /dev/null
@@ -1,254 +0,0 @@
-#!/bin/sh
-
-# TeXLive build script for Slackware
-
-# Copyright 2009, 2017 - 2018 Patrick J. Volkerding, Sebeka, MN, USA
-# Copyright 2009 - 2014 Robby Workman, Northport, AL, USA
-# Copyright 2016 - 2017 Johannes Schoepfer, Germany
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 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.
-
-# URL: ftp://tug.org/historic/systems/texlive/
-# Testrelease: ftp://tug.org/texlive/Images/test/
-# Upstream stable fixes: svn://tug.org/texlive/branches/branch2018/Build/source
-
-PRGNAM=texlive
-SOURCEVERSION=20180414
-VERSION=${VERSION:-2018.180822}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-texlive
-OUTPUT=${OUTPUT:-/tmp}
-
-set -e
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-# NOTE: Using the system version of poppler will require texlive to be
-# recompiled with pretty much every poppler update, as they almost always
-# bump the shared library version. But sometimes you do what you have
-# to do...
-SYSTEMPOPPLER=${SYSTEMPOPPLER:-NO}
-if [ "$SYSTEMPOPPLER" = "NO" ]; then
- POPPLER="--without-system-poppler --without-system-xpdf"
-else
- POPPLER="--with-system-poppler --with-system-xpdf"
-fi
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf texlive-$SOURCEVERSION-source
-tar xvf $CWD/texlive-${SOURCEVERSION}-source.tar.xz || exit 1
-cd texlive-$SOURCEVERSION-source || exit 1
-chown -R root:root .
-chmod -R u+w,go-w,a+rX-st .
-
-export LANG=C
-export PATH="$PKG/usr/bin:$PATH"
-export LD_LIBRARY_PATH="$PKG/usr/lib${LIBDIRSUFFIX}:$LD_LIBRARY_PATH"
-
-# set TEXMFROOT and TEXMFLOCAL
-sed -i \
- -e 's|^TEXMFROOT.*|TEXMFROOT = $SELFAUTODIR/share|' \
- -e 's|^TEXMFLOCAL.*|TEXMFLOCAL = $TEXMFROOT/texmf-local|' \
- texk/kpathsea/texmf.cnf
-
-# Upstream stable fixes
-patch -Np0 -i $CWD/patches/20180625.diff || exit 1
-# Add missing synctex header
-patch -Np0 -i $CWD/patches/synctex-missing-header.patch || exit 1
-
-# prevent compiling Xdvi with libXp
-sed -i 's|-lXp ||' texk/xdvik/configure
-
-# Needed on -current, 2018-05-06
-# The 2018 version of texlive ships with support for poppler-0.57.0 and older,
-# but it includes alternative newpoppler files which enable building with
-# poppler-0.62.0 or newer.
-#if [ ! "$SYSTEMPOPPLER" = "NO" ]; then
-# mv -v texk/web2c/pdftexdir/pdftoepdf{-newpoppler,}.cc || exit 1
-# mv -v texk/web2c/pdftexdir/pdftosrc{-newpoppler,}.cc || exit 1
-#fi
-
-# --with-system-harfbuzz requires graphite2 (and harfbuzz linked to it)
-mkdir build
-cd build
- CFLAGS="$SLKCFLAGS" \
- CXXFLAGS="$SLKCFLAGS -fpermissive" \
- ../configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --mandir=/usr/man \
- --infodir=/usr/info \
- --with-banner-add=' on Slackware (SlackBuilds.org)' \
- --disable-native-texlive-build \
- --enable-largefile \
- --enable-shared \
- --disable-static \
- --disable-missing \
- --disable-multiplatform \
- --disable-debug \
- --disable-dialog \
- --disable-bibtexu \
- --disable-xz \
- --with-x \
- --enable-xindy \
- --disable-xindy-docs \
- --disable-xindy-rules \
- --with-clisp-runtime=system \
- --enable-gc=system \
- --with-system-zlib \
- --with-system-libpng \
- --with-system-t1lib \
- --with-system-gd \
- --with-system-freetype2 \
- --with-system-libgs \
- --with-system-icu \
- --with-system-pixman \
- --with-system-cairo \
- --with-system-gmp \
- --with-system-mpfr \
- --with-system-fontconfig \
- --with-system-ncurses \
- --without-system-harfbuzz \
- --disable-aleph \
- --disable-dump-share \
- --disable-linked-scripts \
- $POPPLER \
- --build=$ARCH-slackware-linux || exit 1
-
- make || exit 1
- # make check || exit 1
- make install-strip DESTDIR=$PKG || exit 1
-
-cd ..
-
-# Don't ship .la files:
-rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
-
-# Remove all files which are covered by tlnet
-rm -rf $PKG/usr/share $PKG/usr/man $PKG/usr/info
-
-# install the tlnet stuff
-mkdir -p $PKG/usr/share
-tar xvf $CWD/texlive-base-$VERSION.tar.xz -C $PKG/usr/share || exit 1
-chown -R root:root $PKG
-chmod -R u+w,go-w,a+rX-st $PKG
-
-# use symlinks/scripts from tlnet
-mv $PKG/usr/share/texmf-dist/linked_scripts/* $PKG/usr/bin
-rmdir $PKG/usr/share/texmf-dist/linked_scripts
-
-# set some paths
-sed -i \
- -e 's|^TEXMFROOT.*|TEXMFROOT = $SELFAUTODIR/share|' \
- -e 's|^TEXMFLOCAL.*|TEXMFLOCAL = $TEXMFROOT/texmf-local|' \
- -e 's|^OSFONTDIR.*|OSFONTDIR = ~/.fonts:/usr/share/fonts|' \
- $PKG/usr/share/texmf-dist/web2c/texmf.cnf
-
-# disable obsolete aleph/lamed/cslatex/pdfcslatex
-sed -i \
- -e 's|^aleph|#! aleph|' \
- -e 's|^lamed|#! lamed|' \
- -e 's|^cslatex|#! cslatex|' \
- -e 's|^pdfcslatex|#! pdfcslatex|' \
- $PKG/usr/share/texmf-dist/web2c/fmtutil.cnf
-
-# make ConTeXt work, and remove unused settings
-sed -i \
- -e 's|selfautoparent:|/usr/share/|g' \
- -e 's|\(TEXMFLOCAL[ ]*=[ ]*\)[^,]*|\1"/usr/share/texmf-local"|' \
- -e '/selfautodir/d' \
- -e '/texmflocal/d' \
- $PKG/usr/share/texmf-dist/web2c/texmfcnf.lua
-
-# provide texlive fonts optionally for other system apps
-mkdir -p $PKG/etc/fonts/conf.avail
-cat > $PKG/etc/fonts/conf.avail/09-texlive.conf << EOF
-<?xml version='1.0'?>
-<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
-<fontconfig>
- <dir>/usr/share/texmf-dist/fonts/opentype</dir>
- <dir>/usr/share/texmf-dist/fonts/truetype</dir>
-</fontconfig>
-EOF
-
-# Install the docs while we're still here
-mkdir -p $PKG/usr/doc/texlive-$VERSION
-cp -a ChangeLog README* $PKG/usr/doc/texlive-$VERSION
-# Install index of provided tex packages to the docs
-mv $PKG/usr/share/texmf-dist/packages.base.gz $PKG/usr/doc/texlive-$VERSION
-
-# Put a symlink to /usr/share/texmf-dist/doc in our Slackware docdir
-ln -s ../../share/texmf-dist/doc $PKG/usr/doc/texlive-$VERSION/doc
-
-# We won't make tlmgr easily available; it's still there, but
-# we'll make it harder to void the warranty :-)
-rm -f $PKG/usr/bin/tlmgr
-cat $CWD/README.tlpkg > $PKG/usr/doc/texlive-$VERSION/README.tlpkg
-
-# Create some directories to make it clear that they're owned by this package
-mkdir -p $PKG/usr/share/{texmf-config,texmf-var,texmf-local}
-
-# Add some perl modules, at least one of which is required by updmap
-mkdir -p $PKG/usr/share/perl5
-mv texk/tests/TeXLive $PKG/usr/share/perl5/
-
-# Move manual pages to the correct place
-mkdir $PKG/usr/man
-mv $PKG/usr/share/texmf-dist/doc/man/man1 $PKG/usr/man
-mv $PKG/usr/share/texmf-dist/doc/man/man5 $PKG/usr/man
-rmdir $PKG/usr/share/texmf-dist/doc/man
-mv $PKG/usr/share/texmf-dist/doc/info $PKG/usr
-
-# Handle the man 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
-
-# Handle the GNU info pages
-rm -f $PKG/usr/info/dir
-gzip -9 $PKG/usr/info/*
-
-mkdir -p $PKG/install
-cat $CWD/doinst.sh > $PKG/install/doinst.sh
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -p -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/office/texlive/texlive.info b/office/texlive/texlive.info
deleted file mode 100644
index 616d092ddc..0000000000
--- a/office/texlive/texlive.info
+++ /dev/null
@@ -1,12 +0,0 @@
-PRGNAM="texlive"
-VERSION="2018.180822"
-HOMEPAGE="http://tug.org/texlive/"
-DOWNLOAD="http://mirrors.ctan.org/systems/texlive/Source/texlive-20180414-source.tar.xz \
- http://slackware.schoepfer.info/slackbuilds/texlive/2018/texlive/texlive-base-2018.180822.tar.xz"
-MD5SUM="41d1e8874d266935c656fe51b440a413 \
- ad0cf3240342615167baf2c119bb3063"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Johannes Schoepfer"
-EMAIL="slackbuilds[at]schoepfer[dot]info"
diff --git a/perl/perl-Authen-SASL/README b/perl/perl-Authen-SASL/README
deleted file mode 100644
index 55fac5058d..0000000000
--- a/perl/perl-Authen-SASL/README
+++ /dev/null
@@ -1,5 +0,0 @@
-Authen::SASL - SASL Authentication framework
-
-SASL is a generic mechanism for authentication used by several network
-protocols. Authen::SASL provides an implementation framework that all
-protocols should be able to share.
diff --git a/perl/perl-Authen-SASL/perl-Authen-SASL.SlackBuild b/perl/perl-Authen-SASL/perl-Authen-SASL.SlackBuild
deleted file mode 100644
index c71cb65160..0000000000
--- a/perl/perl-Authen-SASL/perl-Authen-SASL.SlackBuild
+++ /dev/null
@@ -1,106 +0,0 @@
-#!/bin/sh
-
-# Copyright (c) 2010, 2011, 2012 Daniel LEVAI
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are met:
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above copyright
-# notice, this list of conditions and the following disclaimer in the
-# documentation and/or other materials provided with the distribution.
-# * Neither the name of the <organization> nor the
-# names of its contributors may be used to endorse or promote products
-# derived from this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED ''AS IS'' AND ANY
-# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-# DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER 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.
-
-# Build script for perl-Authen-SASL
-
-SRCNAM=Authen-SASL
-PRGNAM=perl-$SRCNAM
-VERSION=${VERSION:-2.16}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ];then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -Rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -Rf $PRGNAM-$VERSION
-tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
-cd $SRCNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -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 {} \;
-
-CFLAGS="$SLKCFLAGS" \
-perl Makefile.PL \
- PREFIX=/usr \
- INSTALLDIRS=vendor \
- INSTALLVENDORMAN3DIR=/usr/man/man3
-make
-make test
-make install DESTDIR=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-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
-
-find $PKG -name perllocal.pod -o -name ".packlist" -o -name "*.bs" | xargs rm -f || true
-
-find $PKG -depth -type d -empty -delete || true
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a api.txt Changes \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/perl/perl-Authen-SASL/perl-Authen-SASL.info b/perl/perl-Authen-SASL/perl-Authen-SASL.info
deleted file mode 100644
index a116cca2a6..0000000000
--- a/perl/perl-Authen-SASL/perl-Authen-SASL.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="perl-Authen-SASL"
-VERSION="2.16"
-HOMEPAGE="https://metacpan.org/pod/Authen::SASL"
-DOWNLOAD="https://cpan.metacpan.org/authors/id/G/GB/GBARR/Authen-SASL-2.16.tar.gz"
-MD5SUM="7c03a689d4c689e5a9e2f18a1c586b2f"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="perl-digest-hmac"
-MAINTAINER="Daniel LEVAI"
-EMAIL="leva@ecentrum.hu"
diff --git a/perl/perl-Authen-SASL/slack-desc b/perl/perl-Authen-SASL/slack-desc
deleted file mode 100644
index ccfbea916e..0000000000
--- a/perl/perl-Authen-SASL/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-perl-Authen-SASL: perl-Authen-SASL (SASL Authentication framework)
-perl-Authen-SASL:
-perl-Authen-SASL: SASL is a generic mechanism for authentication used by several network
-perl-Authen-SASL: protocols. Authen::SASL provides an implementation framework that all
-perl-Authen-SASL: protocols should be able to share.
-perl-Authen-SASL:
-perl-Authen-SASL:
-perl-Authen-SASL:
-perl-Authen-SASL: Homepage: https://metacpan.org/release/Authen-SASL
-perl-Authen-SASL:
-perl-Authen-SASL:
diff --git a/perl/perl-DateTime-Format-Strptime/perl-DateTime-Format-Strptime.SlackBuild b/perl/perl-DateTime-Format-Strptime/perl-DateTime-Format-Strptime.SlackBuild
index 79b7701128..bc0acb0986 100644
--- a/perl/perl-DateTime-Format-Strptime/perl-DateTime-Format-Strptime.SlackBuild
+++ b/perl/perl-DateTime-Format-Strptime/perl-DateTime-Format-Strptime.SlackBuild
@@ -80,7 +80,6 @@ perl Makefile.PL \
INSTALLVENDORMAN1DIR=/usr/man/man1 \
INSTALLVENDORMAN3DIR=/usr/man/man3
make
-make test
make install DESTDIR=$PKG
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
diff --git a/perl/perl-Devel-CheckLib/README b/perl/perl-Devel-CheckLib/README
deleted file mode 100644
index c0e9bdd6f9..0000000000
--- a/perl/perl-Devel-CheckLib/README
+++ /dev/null
@@ -1,2 +0,0 @@
-Devel::CheckLib is a perl module that checks whether a particular C library and
-its headers are available.
diff --git a/perl/perl-Devel-CheckLib/perl-Devel-CheckLib.SlackBuild b/perl/perl-Devel-CheckLib/perl-Devel-CheckLib.SlackBuild
deleted file mode 100644
index 9434368ba9..0000000000
--- a/perl/perl-Devel-CheckLib/perl-Devel-CheckLib.SlackBuild
+++ /dev/null
@@ -1,98 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for perl-Devel-CheckLib
-
-# Copyright 2017 Larry Hajali <larryhaja[at]gmail[dot]com>
-# 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.
-
-SRCNAM=Devel-CheckLib
-PRGNAM=perl-Devel-CheckLib
-VERSION=${VERSION:-1.07}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $SRCNAM-$VERSION
-tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
-cd $SRCNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-perl Makefile.PL \
- PREFIX=/usr \
- INSTALLDIRS=vendor \
- INSTALLVENDORMAN1DIR=/usr/man/man1 \
- INSTALLVENDORMAN3DIR=/usr/man/man3
-make
-make test
-make install DESTDIR=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-find $PKG -type f -perm 444 -exec chmod 0644 '{}' \;
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-find $PKG -name perllocal.pod -o -name ".packlist" -o -name "*.bs" | xargs rm -f || true
-find $PKG -depth -type d -empty -delete || true
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a CHANGES README TODO $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/perl/perl-Devel-CheckLib/perl-Devel-CheckLib.info b/perl/perl-Devel-CheckLib/perl-Devel-CheckLib.info
deleted file mode 100644
index 08823baa4b..0000000000
--- a/perl/perl-Devel-CheckLib/perl-Devel-CheckLib.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="perl-Devel-CheckLib"
-VERSION="1.07"
-HOMEPAGE="https://metacpan.org/release/MATTN/Devel-CheckLib-1.07"
-DOWNLOAD="https://cpan.metacpan.org/authors/id/M/MA/MATTN/Devel-CheckLib-1.07.tar.gz"
-MD5SUM="66c76e5cdbae547bb61c3e872f0c6479"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="perl-IO-CaptureOutput"
-MAINTAINER="Larry Hajali"
-EMAIL="larryhaja[at]gmail[dot]com"
diff --git a/perl/perl-Devel-CheckLib/slack-desc b/perl/perl-Devel-CheckLib/slack-desc
deleted file mode 100644
index 1b71dfee7f..0000000000
--- a/perl/perl-Devel-CheckLib/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-perl-Devel-CheckLib: perl-Devel-CheckLib (perl module)
-perl-Devel-CheckLib:
-perl-Devel-CheckLib: Devel::CheckLib is a perl module that checks whether a particular C
-perl-Devel-CheckLib: library and its headers are available.
-perl-Devel-CheckLib:
-perl-Devel-CheckLib: Homepage: https://github.com/mattn/p5-Devel-CheckLib
-perl-Devel-CheckLib:
-perl-Devel-CheckLib:
-perl-Devel-CheckLib:
-perl-Devel-CheckLib:
-perl-Devel-CheckLib:
diff --git a/perl/perl-Gnome2-Vte/perl-Gnome2-Vte.info b/perl/perl-Gnome2-Vte/perl-Gnome2-Vte.info
index fa37b200d5..bef97c916e 100644
--- a/perl/perl-Gnome2-Vte/perl-Gnome2-Vte.info
+++ b/perl/perl-Gnome2-Vte/perl-Gnome2-Vte.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://cpan.metacpan.org/authors/id/X/XA/XAOC/Gnome2-Vte-0.11.tar.gz"
MD5SUM="1cb5cdfcd41873e55e923e72e64d922c"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="perl-glib perl-gtk2 perl-extutils-depends perl-extutils-pkgconfig"
+REQUIRES="perl-glib perl-gtk2 perl-extutils-depends perl-extutils-pkgconfig vte2"
MAINTAINER="Antonio Taverna"
EMAIL="antonio.tvr@gmail.com"
diff --git a/perl/perl-Module-Runtime/perl-Module-Runtime.SlackBuild b/perl/perl-Module-Runtime/perl-Module-Runtime.SlackBuild
index d2d11f4a18..9fcb072da3 100644
--- a/perl/perl-Module-Runtime/perl-Module-Runtime.SlackBuild
+++ b/perl/perl-Module-Runtime/perl-Module-Runtime.SlackBuild
@@ -26,7 +26,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=perl-Module-Runtime
-VERSION=${VERSION:-0.015}
+VERSION=${VERSION:-0.016}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -34,7 +34,7 @@ SRCNAM=Module-Runtime
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -45,8 +45,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -69,10 +69,10 @@ tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
cd $SRCNAM-$VERSION
chown -R root:root .
find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -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 {} \;
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
perl Makefile.PL \
PREFIX=/usr \
diff --git a/perl/perl-Module-Runtime/perl-Module-Runtime.info b/perl/perl-Module-Runtime/perl-Module-Runtime.info
index ec5bdacb61..1807470812 100644
--- a/perl/perl-Module-Runtime/perl-Module-Runtime.info
+++ b/perl/perl-Module-Runtime/perl-Module-Runtime.info
@@ -1,8 +1,8 @@
PRGNAM="perl-Module-Runtime"
-VERSION="0.015"
+VERSION="0.016"
HOMEPAGE="https://metacpan.org/pod/Module::Runtime"
-DOWNLOAD="https://cpan.metacpan.org/authors/id/Z/ZE/ZEFRAM/Module-Runtime-0.015.tar.gz"
-MD5SUM="f0f3ef126998189665bc5d496c3548db"
+DOWNLOAD="https://cpan.metacpan.org/authors/id/Z/ZE/ZEFRAM/Module-Runtime-0.016.tar.gz"
+MD5SUM="d3d47222fa2e3dfcb4526f6cc8437b20"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="perl-Module-Build"
diff --git a/perl/perl-cairo/perl-cairo.SlackBuild b/perl/perl-cairo/perl-cairo.SlackBuild
index cbc99c9e83..6fad7a083d 100644
--- a/perl/perl-cairo/perl-cairo.SlackBuild
+++ b/perl/perl-cairo/perl-cairo.SlackBuild
@@ -81,7 +81,7 @@ perl Makefile.PL \
INSTALLDIRS=vendor \
INSTALLVENDORMAN3DIR=/usr/man/man3
make
-make test
+#make test
make install DESTDIR=$PKG
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
diff --git a/perl/perl-libnet/README b/perl/perl-libnet/README
deleted file mode 100644
index 0b66c0e6c3..0000000000
--- a/perl/perl-libnet/README
+++ /dev/null
@@ -1,3 +0,0 @@
-libnet is a collection of Perl modules which provides a simple
-and consistent programming interface (API) to the client side
-of various protocols used in the internet community.
diff --git a/perl/perl-libnet/libnet-3.08-Do-not-create-Net-libnet.cfg.patch b/perl/perl-libnet/libnet-3.08-Do-not-create-Net-libnet.cfg.patch
deleted file mode 100644
index 911bc10fa8..0000000000
--- a/perl/perl-libnet/libnet-3.08-Do-not-create-Net-libnet.cfg.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From a40f2774eede8e65dd6128b45525ec88f469e031 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
-Date: Fri, 10 Jul 2015 13:02:00 +0200
-Subject: [PATCH 2/2] Do not create Net/libnet.cfg
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-I will remove the Net/libnet.cfg because:
-
-(1) it's content equals to default configuration hard-coded in the
-code
-(2) it's kind of configuration file we do not mark it as a configuration
-file, so it's overwritten on each update
-(3) it's loaded from directory based on Net::Config module location.
-I.e. core module will search it in core path, vendor module in vendor
-path and site module in site path.
-
-perl.spec does not provide it either.
-
-<https://bugzilla.redhat.com/show_bug.cgi?id=1238689>
-
-Signed-off-by: Petr Písař <ppisar@redhat.com>
----
- Makefile.PL | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/Makefile.PL b/Makefile.PL
-index 64d6959..25fc626 100644
---- a/Makefile.PL
-+++ b/Makefile.PL
-@@ -235,7 +235,7 @@ MAIN: {
- sub MY::post_initialize {
- my $self = shift;
-
-- return '' if $self->{PERL_CORE};
-+ return '';
-
- if (not -f $CfgFile) {
- my @args = qw(Configure);
---
-2.5.0
-
diff --git a/perl/perl-libnet/perl-libnet.SlackBuild b/perl/perl-libnet/perl-libnet.SlackBuild
deleted file mode 100644
index bf5e2f8a9c..0000000000
--- a/perl/perl-libnet/perl-libnet.SlackBuild
+++ /dev/null
@@ -1,104 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for perl-libnet
-
-# Copyright 2016-2017 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
-# Based on slackbuilds.org perl template.
-# 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.
-
-SRCNAM=libnet
-PRGNAM=perl-$SRCNAM
-VERSION=${VERSION:-3.11}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-DOCS="Artistic Changes Copying LICENCE README"
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $SRCNAM-$VERSION
-tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
-cd $SRCNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-patch -p1 < $CWD/libnet-3.08-Do-not-create-Net-libnet.cfg.patch
-
-echo | perl Makefile.PL \
- PREFIX=/usr \
- INSTALLDIRS=vendor \
- INSTALLVENDORMAN3DIR=/usr/man/man3
-make
-make test
-make install DESTDIR=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-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
-
-find $PKG -name perllocal.pod -o -name ".packlist" -o -name "*.bs" | xargs rm -f || true
-
-find $PKG -depth -type d -empty -delete || true
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/perl/perl-libnet/perl-libnet.info b/perl/perl-libnet/perl-libnet.info
deleted file mode 100644
index b43abac717..0000000000
--- a/perl/perl-libnet/perl-libnet.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="perl-libnet"
-VERSION="3.11"
-HOMEPAGE="https://metacpan.org/release/libnet"
-DOWNLOAD="https://cpan.metacpan.org/authors/id/S/SH/SHAY/libnet-3.11.tar.gz"
-MD5SUM="f4fdfa0906bf2ad5ac3c74c3860eb029"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="perl-IO-Socket-SSL"
-MAINTAINER="Matteo Bernardini"
-EMAIL="ponce@slackbuilds.org"
diff --git a/perl/perl-libnet/slack-desc b/perl/perl-libnet/slack-desc
deleted file mode 100644
index faf8be5984..0000000000
--- a/perl/perl-libnet/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-perl-libnet: perl-libnet (perl net modules)
-perl-libnet:
-perl-libnet: libnet is a collection of Perl modules which provides a simple
-perl-libnet: and consistent programming interface (API) to the client side
-perl-libnet: of various protocols used in the internet community.
-perl-libnet:
-perl-libnet: homepage: https://metacpan.org/release/libnet
-perl-libnet:
-perl-libnet:
-perl-libnet:
-perl-libnet:
diff --git a/python/Mako/Mako.SlackBuild b/python/Mako/Mako.SlackBuild
deleted file mode 100644
index 814d6ef087..0000000000
--- a/python/Mako/Mako.SlackBuild
+++ /dev/null
@@ -1,69 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for Mako
-
-# Written by Larry Hajali <larryhaja[at]gmail[dot]com>
-# Copyright 2017 Hunter Sezen California, USA
-#
-# 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.
-
-PRGNAM=Mako
-VERSION=${VERSION:-1.0.7}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-set -eu
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-python setup.py install --root=$PKG
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS CHANGES LICENSE README.rst doc/*.html \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/python/Mako/Mako.info b/python/Mako/Mako.info
deleted file mode 100644
index b55b94d692..0000000000
--- a/python/Mako/Mako.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="Mako"
-VERSION="1.0.7"
-HOMEPAGE="http://www.makotemplates.org/"
-DOWNLOAD="https://pypi.python.org/packages/eb/f3/67579bb486517c0d49547f9697e36582cd19dafb5df9e687ed8e22de57fa/Mako-1.0.7.tar.gz"
-MD5SUM="5836cc997b1b773ef389bf6629c30e65"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="MarkupSafe"
-MAINTAINER="Hunter Sezen"
-EMAIL="orbea@fredslev.dk"
diff --git a/python/Mako/README b/python/Mako/README
deleted file mode 100644
index 9fa6aa27e2..0000000000
--- a/python/Mako/README
+++ /dev/null
@@ -1,9 +0,0 @@
-Mako is a template library written in Python. It provides a familiar,
-non-XML syntax which compiles into Python modules for maximum
-performance. Mako's syntax and API borrows from the best ideas of many
-others, including Django templates, Cheetah, Myghty, and Genshi.
-Conceptually, Mako is an embedded Python (i.e. Python Server Page)
-language, which refines the familiar ideas of componentized layout and
-inheritance to produce one of the most straightforward and flexible
-models available, while also maintaining close ties to Python calling
-and scoping semantics.
diff --git a/python/Mako/slack-desc b/python/Mako/slack-desc
deleted file mode 100644
index 3ae4979cac..0000000000
--- a/python/Mako/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-Mako: Mako (A python templating language)
-Mako:
-Mako: Mako is a template library written in Python. It provides a familiar,
-Mako: non-XML syntax which compiles into Python modules for maximum
-Mako: performance. Mako's syntax and API borrows from the best ideas of many
-Mako: others, including Django templates, Cheetah, Myghty, and Genshi.
-Mako: Conceptually, Mako is an embedded Python (i.e. Python Server Page)
-Mako: language, which refines the familiar ideas of componentized layout and
-Mako: inheritance to produce one of the most straightforward and flexible
-Mako: models available, while also maintaining close ties to Python.
-Mako: Homepage: http://www.makotemplates.org/
diff --git a/python/dbus-python3/README b/python/dbus-python3/README
deleted file mode 100644
index f6bf55695d..0000000000
--- a/python/dbus-python3/README
+++ /dev/null
@@ -1,6 +0,0 @@
-dbus-python3 (Python3 bindings for dbus)
-
-dbus-python is a binding for libdbus, the reference implementation of
-D-Bus. For compatibility reasons, its API involves a lot of type-guessing
-(despite "explicit is better than implicit" and "resist the temptation
-to guess").
diff --git a/python/dbus-python3/dbus-python3.SlackBuild b/python/dbus-python3/dbus-python3.SlackBuild
deleted file mode 100644
index 03f9d06fa6..0000000000
--- a/python/dbus-python3/dbus-python3.SlackBuild
+++ /dev/null
@@ -1,101 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for dbus-python3
-
-# Copyright 2016 Hunter Sezen California, USA
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=dbus-python3
-SRCNAM=$(echo $PRGNAM | tr -d 3)
-VERSION=${VERSION:-1.2.4}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i486 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $SRCNAM-$VERSION
-tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
-cd $SRCNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-PYTHON=/usr/bin/python3 \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --build=$ARCH-slackware-linux \
- --host=$ARCH-slackware-linux
-
-make
-make install DESTDIR=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-# Conflicts with Slackware's dbus-python package
-rm -rf $PKG/usr/include
-rm -rf $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS COPYING ChangeLog INSTALL NEWS README $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/python/dbus-python3/dbus-python3.info b/python/dbus-python3/dbus-python3.info
deleted file mode 100644
index 0b7328dfef..0000000000
--- a/python/dbus-python3/dbus-python3.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="dbus-python3"
-VERSION="1.2.4"
-HOMEPAGE="http://www.freedesktop.org/wiki/Software/DBusBindings#Python"
-DOWNLOAD="https://dbus.freedesktop.org/releases/dbus-python/dbus-python-1.2.4.tar.gz"
-MD5SUM="7372a588c83a7232b4e08159bfd48fe5"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="python3"
-MAINTAINER="Hunter Sezen"
-EMAIL="orbea@fredslev.dk"
diff --git a/python/dbus-python3/slack-desc b/python/dbus-python3/slack-desc
deleted file mode 100644
index b7b83c2e07..0000000000
--- a/python/dbus-python3/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-dbus-python3: dbus-python3 (Python3 bindings for dbus)
-dbus-python3:
-dbus-python3: dbus-python is a binding for libdbus, the reference implementation
-dbus-python3: of D-Bus.
-dbus-python3:
-dbus-python3:
-dbus-python3:
-dbus-python3:
-dbus-python3:
-dbus-python3:
-dbus-python3:
diff --git a/python/gst-python/gst-python.SlackBuild b/python/gst-python/gst-python.SlackBuild
index 9a6c438da5..7e82b385c1 100644
--- a/python/gst-python/gst-python.SlackBuild
+++ b/python/gst-python/gst-python.SlackBuild
@@ -23,13 +23,13 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=gst-python
-VERSION=${VERSION:-1.6.2}
+VERSION=${VERSION:-1.14.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -40,8 +40,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
diff --git a/python/gst-python/gst-python.info b/python/gst-python/gst-python.info
index bfb027af8c..11e0525ba7 100644
--- a/python/gst-python/gst-python.info
+++ b/python/gst-python/gst-python.info
@@ -1,8 +1,8 @@
PRGNAM="gst-python"
-VERSION="1.6.2"
+VERSION="1.14.0"
HOMEPAGE="https://gstreamer.freedesktop.org/modules/gst-python.html"
-DOWNLOAD="https://gstreamer.freedesktop.org/src/gst-python/gst-python-1.6.2.tar.xz"
-MD5SUM="14b6cfe1a0db5cc01c6a58f7b4af6184"
+DOWNLOAD="https://gstreamer.freedesktop.org/src/gst-python/gst-python-1.14.0.tar.xz"
+MD5SUM="97782b2fde877f1d1d68c64f7db4f735"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/python/gst-python3/gst-python3.SlackBuild b/python/gst-python3/gst-python3.SlackBuild
index a9c2d7eb42..23eafabda1 100644
--- a/python/gst-python3/gst-python3.SlackBuild
+++ b/python/gst-python3/gst-python3.SlackBuild
@@ -25,7 +25,7 @@
PRGNAM=gst-python3
SRCNAM=gst-python
-VERSION=${VERSION:-1.6.2}
+VERSION=${VERSION:-1.14.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -82,7 +82,7 @@ make
make install DESTDIR=$PKG
# Remove the .la file to prevent conflicts with the python2 version of gst-python
-rm $PKG/usr/lib${LIBDIRSUFFIX}/gstreamer-1.0/libgstpythonplugin.la
+rm $PKG/usr/lib${LIBDIRSUFFIX}/gstreamer-1.0/libgstpython.la \
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
diff --git a/python/gst-python3/gst-python3.info b/python/gst-python3/gst-python3.info
index 71b1372970..9d4e8b2d43 100644
--- a/python/gst-python3/gst-python3.info
+++ b/python/gst-python3/gst-python3.info
@@ -1,8 +1,8 @@
PRGNAM="gst-python3"
-VERSION="1.6.2"
+VERSION="1.14.0"
HOMEPAGE="https://gstreamer.freedesktop.org/modules/gst-python.html"
-DOWNLOAD="https://gstreamer.freedesktop.org/src/gst-python/gst-python-1.6.2.tar.xz"
-MD5SUM="14b6cfe1a0db5cc01c6a58f7b4af6184"
+DOWNLOAD="https://gstreamer.freedesktop.org/src/gst-python/gst-python-1.14.0.tar.xz"
+MD5SUM="97782b2fde877f1d1d68c64f7db4f735"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="python3"
diff --git a/python/halberd/halberd.SlackBuild b/python/halberd/halberd.SlackBuild
index 2081acbd56..8e78173d5d 100644
--- a/python/halberd/halberd.SlackBuild
+++ b/python/halberd/halberd.SlackBuild
@@ -69,9 +69,6 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-# Fix path to latex binary for Slackware
-patch -p1 --verbose < $CWD/make-pdf-manual.diff
-
# Generate PDF documentation
( cd doc/
make manual.pdf
diff --git a/python/halberd/make-pdf-manual.diff b/python/halberd/make-pdf-manual.diff
deleted file mode 100644
index 6eae15bdd0..0000000000
--- a/python/halberd/make-pdf-manual.diff
+++ /dev/null
@@ -1,14 +0,0 @@
-
-Corrects the path to the latex binary on Slackware.
-
---- halberd-0.2.4.orig/doc/GNUmakefile 2015-11-17 19:57:03.993466727 -0700
-+++ halberd-0.2.4/doc/GNUmakefile 2015-11-17 19:58:43.780459960 -0700
-@@ -15,7 +15,7 @@
- # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-
-
--LATEX := /usr/bin/latex
-+LATEX := /usr/share/texmf/bin/latex
- DVIPDF := /usr/bin/dvipdf
- LATEX2HTML := /usr/bin/latex2html
-
diff --git a/python/idna/README b/python/idna/README
deleted file mode 100644
index f9cda8c1b2..0000000000
--- a/python/idna/README
+++ /dev/null
@@ -1,3 +0,0 @@
-Internationalized Domain Names in Applications (IDNA)
-
-Optional dependency: python3
diff --git a/python/idna/idna.info b/python/idna/idna.info
deleted file mode 100644
index 2fc3b4a57d..0000000000
--- a/python/idna/idna.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="idna"
-VERSION="2.6"
-HOMEPAGE="https://github.com/kjd/idna"
-DOWNLOAD="https://github.com/kjd/idna/archive/v2.6/idna-2.6.tar.gz"
-MD5SUM="a835f2d123511e2a28c8ccda7a2da7fc"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Markus Reichelt"
-EMAIL="slackbuilds@mareichelt.de"
diff --git a/python/idna/slack-desc b/python/idna/slack-desc
deleted file mode 100644
index 5010245075..0000000000
--- a/python/idna/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-idna: idna (Internationalized Domain Names in Applications)
-idna:
-idna: A library to support the IDNA protocol as specified in RFC 5891.
-idna:
-idna:
-idna:
-idna: Homepage: https://github.com/kjd/idna
-idna:
-idna:
-idna:
-idna:
diff --git a/python/packaging/README b/python/packaging/README
deleted file mode 100644
index 2fd2170a02..0000000000
--- a/python/packaging/README
+++ /dev/null
@@ -1 +0,0 @@
-Core utilities for Python packages.
diff --git a/python/packaging/packaging.SlackBuild b/python/packaging/packaging.SlackBuild
deleted file mode 100644
index b977bbb29b..0000000000
--- a/python/packaging/packaging.SlackBuild
+++ /dev/null
@@ -1,86 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for packaging
-#
-# Copyright 2017,2018 Markus Reichelt, Aachen, DE
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=packaging
-VERSION=${VERSION:-17.1}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-python setup.py install --root=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a LICENSE* *.rst docs/ $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/python/packaging/packaging.info b/python/packaging/packaging.info
deleted file mode 100644
index 247e0c9305..0000000000
--- a/python/packaging/packaging.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="packaging"
-VERSION="17.1"
-HOMEPAGE="https://pypi.python.org/pypi/packaging"
-DOWNLOAD="https://files.pythonhosted.org/packages/77/32/439f47be99809c12ef2da8b60a2c47987786d2c6c9205549dd6ef95df8bd/packaging-17.1.tar.gz"
-MD5SUM="8baf8241d1b6b0a5fae9b00f359976a8"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="pyparsing six"
-MAINTAINER="Markus Reichelt"
-EMAIL="slackbuilds@mareichelt.de"
diff --git a/python/packaging/slack-desc b/python/packaging/slack-desc
deleted file mode 100644
index 77dcf7455d..0000000000
--- a/python/packaging/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-packaging: packaging (Core utilities for Python packages)
-packaging:
-packaging: https://pypi.python.org/pypi/packaging
-packaging:
-packaging:
-packaging:
-packaging:
-packaging:
-packaging:
-packaging:
-packaging:
diff --git a/python/pip/README b/python/pip/README
deleted file mode 100644
index 6c75c7eea5..0000000000
--- a/python/pip/README
+++ /dev/null
@@ -1,24 +0,0 @@
-pip is a replacement for easy_install (from python-setuptools). It uses
-mostly the same techniques for finding packages, so packages that were
-made easy_installable should be pip-installable as well.
-
-pip is meant to improve on easy_install. Some of the improvements:
-
-- All packages are downloaded before installation. Partially-completed
- installation doesn't occur as a result.
-- Care is taken to present useful output on the console.
-- The reasons for actions are kept track of. For instance, if a package
- is being installed, pip keeps track of why that package was required.
-- Error messages should be useful.
-- The code is relatively concise and cohesive, making it easier to use
- programmatically.
-- Packages don't have to be installed as egg archives, they can be
- installed flat (while keeping the egg metadata).
-- Native support for other version control systems (Git, Mercurial and
- Bazaar).
-- Uninstallation of packages.
-- Simple to define fixed sets of requirements and reliably reproduce a
- set of packages.
-
-pip is complementary with virtualenv, and it is encouraged that you use
-virtualenv to isolate your installation.
diff --git a/python/pip/pip.SlackBuild b/python/pip/pip.SlackBuild
deleted file mode 100644
index 0f28914773..0000000000
--- a/python/pip/pip.SlackBuild
+++ /dev/null
@@ -1,71 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for pip
-
-# Copyright 2012-2018 Audrius Kažukauskas <audrius@neutrino.lt>
-# 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.
-
-PRGNAM=pip
-VERSION=${VERSION:-9.0.3}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-python setup.py install --root=$PKG
-
-# Add bash completion file.
-install -D -m 644 $CWD/pip.sh $PKG/usr/share/bash-completion/completions/pip
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a *.txt $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/python/pip/pip.info b/python/pip/pip.info
deleted file mode 100644
index ca296f0c81..0000000000
--- a/python/pip/pip.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="pip"
-VERSION="9.0.3"
-HOMEPAGE="https://pip.pypa.io/"
-DOWNLOAD="https://pypi.python.org/packages/c4/44/e6b8056b6c8f2bfd1445cc9990f478930d8e3459e9dbf5b8e2d2922d64d3/pip-9.0.3.tar.gz"
-MD5SUM="b15b33f9aad61f88d0f8c866d16c55d8"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Audrius Kažukauskas"
-EMAIL="audrius@neutrino.lt"
diff --git a/python/pip/pip.sh b/python/pip/pip.sh
deleted file mode 100644
index b9b1ea1477..0000000000
--- a/python/pip/pip.sh
+++ /dev/null
@@ -1,9 +0,0 @@
-# bash completion for pip
-
-_pip_completion()
-{
- COMPREPLY=( $( COMP_WORDS="${COMP_WORDS[*]}" \
- COMP_CWORD=$COMP_CWORD \
- PIP_AUTO_COMPLETE=1 $1 ) )
-}
-complete -o default -F _pip_completion pip
diff --git a/python/pip/slack-desc b/python/pip/slack-desc
deleted file mode 100644
index 443b5a0291..0000000000
--- a/python/pip/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-pip: pip (a better easy_install replacement)
-pip:
-pip: pip is a replacement for easy_install from python-setuptools.
-pip:
-pip: Homepage: https://pip.pypa.io/
-pip:
-pip:
-pip:
-pip:
-pip:
-pip:
diff --git a/python/py3cairo/README b/python/py3cairo/README
deleted file mode 100644
index 5e237fabd8..0000000000
--- a/python/py3cairo/README
+++ /dev/null
@@ -1,8 +0,0 @@
-Py3cairo is a Python 3.x binding for the Cairo graphics library.
-The Pycairo bindings are designed to match the cairo C API as closely as
-possible, and to deviate only in cases which are clearly better
-implemented in a more 'Pythonic' way.
-
-This requires python3.
-
-Py3cairo is safe to install beside Slackware's pycairo package (Python 2.7).
diff --git a/python/py3cairo/py3cairo.SlackBuild b/python/py3cairo/py3cairo.SlackBuild
deleted file mode 100644
index 80ddef805f..0000000000
--- a/python/py3cairo/py3cairo.SlackBuild
+++ /dev/null
@@ -1,108 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for py3cairo
-# Copyright 2014, Bojan Popovic <bocke@slackware-srbija.org>, Belgrade, Serbia
-# 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.
-
-PRGNAM=py3cairo
-SRCNAM=pycairo
-VERSION=${VERSION:-1.10.0}
-BUILD=${BUILD:-3}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i486 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-DOCS="COPYING* AUTHORS INSTALL NEWS README doc examples"
-
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-export PYTHON=python3
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $SRCNAM-$VERSION
-tar xvf $CWD/$SRCNAM-$VERSION.tar.bz2
-cd $SRCNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-patch -p1 < $CWD/pycairo-1.10.0-waf_unpack-1.patch
-wafdir=$(./waf unpack)
-pushd $wafdir
-patch -p1 < $CWD/pycairo-1.10.0-waf_python_3_4-1.patch
-popd
-unset wafdir
-
-PYTHON="/usr/bin/python3" \
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./waf configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --docdir=/usr/doc/$PRGNAM-$VERSION
-
-./waf build
-DESTDIR=$PKG ./waf install
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/python/py3cairo/py3cairo.info b/python/py3cairo/py3cairo.info
deleted file mode 100644
index 22bc7cca86..0000000000
--- a/python/py3cairo/py3cairo.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="py3cairo"
-VERSION="1.10.0"
-HOMEPAGE="http://cairographics.org/pycairo/"
-DOWNLOAD="http://cairographics.org/releases/pycairo-1.10.0.tar.bz2"
-MD5SUM="e6fd3f2f1e6a72e0db0868c4985669c5"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="python3"
-MAINTAINER="Bojan Popovic"
-EMAIL="bocke@slackware-srbija.org"
diff --git a/python/py3cairo/pycairo-1.10.0-waf_python_3_4-1.patch b/python/py3cairo/pycairo-1.10.0-waf_python_3_4-1.patch
deleted file mode 100644
index 83f69bdeeb..0000000000
--- a/python/py3cairo/pycairo-1.10.0-waf_python_3_4-1.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-Submitted by: Wayne Blaszczyk (wblaszcz at bigpond dot net dot au)
-Date: 2014-03-27
-Initial Package Version: 1.10.0
-Upstream Status: unknown
-Origin: Gentoo
-URL: https://bugs.gentoo.org/show_bug.cgi?id=504342
-Description: Fix build with Python-3.4
-
---- a/waflib/Tools/python.py
-+++ b/waflib/Tools/python.py
-@@ -169,7 +169,7 @@
- conf.find_program('python-config-%s'%num,var='PYTHON_CONFIG',mandatory=False)
- includes=[]
- if conf.env.PYTHON_CONFIG:
-- for incstr in conf.cmd_and_log(conf.env.PYTHON+[conf.env.PYTHON_CONFIG,'--includes']).strip().split():
-+ for incstr in conf.cmd_and_log([conf.env.PYTHON_CONFIG,'--includes']).strip().split():
- if(incstr.startswith('-I')or incstr.startswith('/I')):
- incstr=incstr[2:]
- if incstr not in includes:
diff --git a/python/py3cairo/pycairo-1.10.0-waf_unpack-1.patch b/python/py3cairo/pycairo-1.10.0-waf_unpack-1.patch
deleted file mode 100644
index 319dd2c13b..0000000000
--- a/python/py3cairo/pycairo-1.10.0-waf_unpack-1.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-Submitted by: Wayne Blaszczyk (wblaszcz at bigpond dot net dot au)
-Date: 2014-03-27
-Initial Package Version: 1.10.0
-Upstream Status: unknown
-Origin: Gentoo
-URL: https://bugs.gentoo.org/show_bug.cgi?id=504342
-Description: Fix build with Python-3.4
-
---- a/waf
-+++ b/waf
-@@ -153,6 +153,9 @@
- return dir
-
- wafdir = find_lib()
-+if sys.argv[1:] == ['unpack']:
-+ print(wafdir)
-+ exit()
- sys.path.insert(0, wafdir)
- from waflib.Tools.c_config import MACRO_TO_DESTOS
- MACRO_TO_DESTOS['__POWERPC__'] = 'darwin'
diff --git a/python/py3cairo/slack-desc b/python/py3cairo/slack-desc
deleted file mode 100644
index 5d9388745f..0000000000
--- a/python/py3cairo/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-py3cairo: py3cairo (Python 3.x bindings for cairo)
-py3cairo:
-py3cairo: Pycairo is a Python binding for the cairo graphics library.
-py3cairo: The Pycairo bindings are designed to match the cairo C API as closely
-py3cairo: as possible, and to deviate only in cases which are clearly better
-py3cairo: implemented in a more 'Pythonic' way.
-py3cairo:
-py3cairo:
-py3cairo:
-py3cairo: Home Page: http://cairographics.org/pycairo/
-py3cairo:
diff --git a/python/pygobject3-python3/README b/python/pygobject3-python3/README
deleted file mode 100644
index 76fd055556..0000000000
--- a/python/pygobject3-python3/README
+++ /dev/null
@@ -1,3 +0,0 @@
-This archive contains bindings for the GLib, and GObject, to be used in Python.
-It is a fairly complete set of bindings, it's already rather useful, and is
-usable to write moderately complex programs.
diff --git a/python/pygobject3-python3/pygobject3-python3.SlackBuild b/python/pygobject3-python3/pygobject3-python3.SlackBuild
deleted file mode 100644
index 0f871f9bc4..0000000000
--- a/python/pygobject3-python3/pygobject3-python3.SlackBuild
+++ /dev/null
@@ -1,100 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for pygobject3-python3
-
-# Copyright 2016 Hunter Sezen California, USA
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=pygobject3-python3
-SRCNAM=pygobject
-VERSION=${VERSION:-3.18.2}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $SRCNAM-$VERSION
-tar xvf $CWD/$SRCNAM-$VERSION.tar.xz
-cd $SRCNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-CFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --with-python=python3 \
- --enable-compile-warnings=no \
- --build=$ARCH-slackware-linux
-
-make
-make install DESTDIR=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-# Conflicts with Slackware's pygobject3 package
-rm -rf $PKG/usr/include
-rm -rf $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS COPYING ChangeLog INSTALL NEWS PKG-INFO README \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/python/pygobject3-python3/pygobject3-python3.info b/python/pygobject3-python3/pygobject3-python3.info
deleted file mode 100644
index b8aee49269..0000000000
--- a/python/pygobject3-python3/pygobject3-python3.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="pygobject3-python3"
-VERSION="3.18.2"
-HOMEPAGE="http://www.pygtk.org/"
-DOWNLOAD="http://ftp.gnome.org/pub/GNOME/sources/pygobject/3.18/pygobject-3.18.2.tar.xz"
-MD5SUM="0a956f3e785e23b0f136832f2e57a862"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="py3cairo"
-MAINTAINER="Hunter Sezen"
-EMAIL="orbea@fredslev.dk"
diff --git a/python/pygobject3-python3/slack-desc b/python/pygobject3-python3/slack-desc
deleted file mode 100644
index 48b49f9cd8..0000000000
--- a/python/pygobject3-python3/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-pygobject3-python3: pygobject3-python3 (GObject bindings for Python3)
-pygobject3-python3:
-pygobject3-python3: This archive contains bindings for the GLib, and GObject, to be used
-pygobject3-python3: in Python. It is a fairly complete set of bindings, it's already
-pygobject3-python3: rather useful, and is usable to write moderately complex programs.
-pygobject3-python3:
-pygobject3-python3: Home page: http://www.pygtk.org/
-pygobject3-python3:
-pygobject3-python3:
-pygobject3-python3:
-pygobject3-python3:
diff --git a/python/pyparsing/README b/python/pyparsing/README
deleted file mode 100644
index ac29972273..0000000000
--- a/python/pyparsing/README
+++ /dev/null
@@ -1,5 +0,0 @@
-The pyparsing module is an alternative approach to creating and
-executing simple grammars, vs. the traditional lex/yacc
-approach, or the use of regular expressions. The pyparsing
-module provides a library of classes that client code uses to
-construct the grammar directly in Python code.
diff --git a/python/pyparsing/pyparsing.SlackBuild b/python/pyparsing/pyparsing.SlackBuild
deleted file mode 100644
index 170f8e23b7..0000000000
--- a/python/pyparsing/pyparsing.SlackBuild
+++ /dev/null
@@ -1,87 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for pyparsing
-
-# Copyright 2008-2012 Heinz Wiesinger, Amsterdam, The Netherlands
-# 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.
-#
-# Updated for v2.3.1 Jan 2019
-
-PRGNAM=pyparsing
-VERSION=${VERSION:-2.3.1}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-python setup.py install --root=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a CHANGES LICENSE PKG-INFO README.rst docs/ $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/python/pyparsing/pyparsing.info b/python/pyparsing/pyparsing.info
deleted file mode 100644
index c649ee71a9..0000000000
--- a/python/pyparsing/pyparsing.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="pyparsing"
-VERSION="2.3.1"
-HOMEPAGE="https://github.com/pyparsing/pyparsing"
-DOWNLOAD="https://github.com/pyparsing/pyparsing/releases/download/pyparsing_2.3.1/pyparsing-2.3.1.tar.gz"
-MD5SUM="630e86b719619a251de0ba4a97239cec"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Barry J. Grundy"
-EMAIL="bgrundy<at>linuxleo.com"
diff --git a/python/pyparsing/slack-desc b/python/pyparsing/slack-desc
deleted file mode 100644
index 2d09abba87..0000000000
--- a/python/pyparsing/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-pyparsing: pyparsing (parsing module for python)
-pyparsing:
-pyparsing: The pyparsing module is an alternative approach to creating and
-pyparsing: executing simple grammars, vs. the traditional lex/yacc
-pyparsing: approach, or the use of regular expressions. The pyparsing
-pyparsing: module provides a library of classes that client code uses to
-pyparsing: construct the grammar directly in Python code.
-pyparsing:
-pyparsing: Homepage: http://pyparsing.wikispaces.com/
-pyparsing:
-pyparsing:
diff --git a/python/python-certifi/README b/python/python-certifi/README
deleted file mode 100644
index c7498fdd37..0000000000
--- a/python/python-certifi/README
+++ /dev/null
@@ -1,5 +0,0 @@
-This installable Python package contains a
-CA Bundle that you can reference in your
-Python code.
-
-Optional dependency: python3
diff --git a/python/python-certifi/python-certifi.SlackBuild b/python/python-certifi/python-certifi.SlackBuild
deleted file mode 100644
index 07a332999a..0000000000
--- a/python/python-certifi/python-certifi.SlackBuild
+++ /dev/null
@@ -1,90 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for python-certifi
-
-# Copyright 2014-2018 Dimitris Zlatanidis Orestiada, Greece
-# 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.
-
-PRGNAM=python-certifi
-SRCNAM=$(printf $PRGNAM | cut -c8-14)
-VERSION=${VERSION:-2018.11.29}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $SRCNAM-$VERSION
-tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
-cd $SRCNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-python setup.py install --root=$PKG
-
-if $(python3 -c 'import sys' 2>/dev/null); then
- python3 setup.py install --root=$PKG
-fi
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a LICENSE PKG-INFO README.rst $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/python/python-certifi/python-certifi.info b/python/python-certifi/python-certifi.info
deleted file mode 100644
index 9ccc6baae2..0000000000
--- a/python/python-certifi/python-certifi.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="python-certifi"
-VERSION="2018.11.29"
-HOMEPAGE="https://pypi.python.org/pypi/certifi/"
-DOWNLOAD="https://files.pythonhosted.org/packages/55/54/3ce77783acba5979ce16674fc98b1920d00b01d337cfaaf5db22543505ed/certifi-2018.11.29.tar.gz"
-MD5SUM="8160cf662212bc731eccf1af8042c0af"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
diff --git a/python/python-certifi/slack-desc b/python/python-certifi/slack-desc
deleted file mode 100644
index e4121c91ca..0000000000
--- a/python/python-certifi/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-python-certifi: python-certifi (Python SSL Certificates)
-python-certifi:
-python-certifi: This installable Python package contains a
-python-certifi: CA Bundle that you can reference in your
-python-certifi: Python code.
-python-certifi:
-python-certifi: Homepage: http://python-requests.org
-python-certifi:
-python-certifi:
-python-certifi:
-python-certifi:
diff --git a/python/python-chardet/README b/python/python-chardet/README
deleted file mode 100644
index fa68e6f22e..0000000000
--- a/python/python-chardet/README
+++ /dev/null
@@ -1,3 +0,0 @@
-Universal encoding detector for Python 2 and 3.
-
-Optional dependency: python3
diff --git a/python/python-chardet/python-chardet.SlackBuild b/python/python-chardet/python-chardet.SlackBuild
deleted file mode 100644
index e8ea4139eb..0000000000
--- a/python/python-chardet/python-chardet.SlackBuild
+++ /dev/null
@@ -1,76 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for python-chardet
-
-# Copyright 2014 Mikko Värri, Finland
-# 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.
-
-PRGNAM=python-chardet
-SRCNAM=chardet
-VERSION=${VERSION:-3.0.4}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $SRCNAM-$VERSION
-tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
-cd $SRCNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-python setup.py install --root=$PKG
-
-if $(python3 -c 'import sys' 2>/dev/null); then
- python3 setup.py install --root=$PKG
-fi
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a LICENSE README.rst $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/python/python-chardet/python-chardet.info b/python/python-chardet/python-chardet.info
deleted file mode 100644
index 867f911a41..0000000000
--- a/python/python-chardet/python-chardet.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="python-chardet"
-VERSION="3.0.4"
-HOMEPAGE="https://pypi.python.org/pypi/chardet"
-DOWNLOAD="https://pypi.python.org/packages/fc/bb/a5768c230f9ddb03acc9ef3f0d4a3cf93462473795d18e9535498c8f929d/chardet-3.0.4.tar.gz"
-MD5SUM="7dd1ba7f9c77e32351b0a0cfacf4055c"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Mikko Värri"
-EMAIL="vmj@linuxbox.fi"
diff --git a/python/python-chardet/slack-desc b/python/python-chardet/slack-desc
deleted file mode 100644
index e742e9d67a..0000000000
--- a/python/python-chardet/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-python-chardet: python-chardet (autodetection of character encoding in python)
-python-chardet:
-python-chardet: Universal encoding detector for Python 2 and 3.
-python-chardet:
-python-chardet: Homepage: https://pypi.python.org/pypi/chardet
-python-chardet:
-python-chardet:
-python-chardet:
-python-chardet:
-python-chardet:
-python-chardet:
diff --git a/python/python-gattlib/dont_hardcode_python_versions.patch b/python/python-gattlib/dont_hardcode_python_versions.patch
new file mode 100644
index 0000000000..0e11e85d18
--- /dev/null
+++ b/python/python-gattlib/dont_hardcode_python_versions.patch
@@ -0,0 +1,19 @@
+Matteo Bernardini <ponce@slackbuilds.org>
+---
+Don't hardcode python versions
+
+diff -Naur gattlib-0.20150805.orig/setup.py gattlib-0.20150805/setup.py
+--- gattlib-0.20150805.orig/setup.py 2015-08-05 15:16:56.000000000 +0200
++++ gattlib-0.20150805/setup.py 2018-05-02 09:45:04.625893000 +0200
+@@ -19,9 +19,9 @@
+ glib_libs = [x.strip() for x in glib_libs if x]
+
+ if sys.version_info.major == 3:
+- boost_libs = ["boost_python-py34"]
++ boost_libs = ["boost_python3"+str(sys.version_info.minor)]
+ else:
+- boost_libs = ["boost_python"]
++ boost_libs = ["boost_python2"+str(sys.version_info.minor)]
+ extension_modules = [
+ Extension(
+ 'gattlib',
diff --git a/python/python-gattlib/python-gattlib.SlackBuild b/python/python-gattlib/python-gattlib.SlackBuild
index 0264f52fc1..354003e93e 100644
--- a/python/python-gattlib/python-gattlib.SlackBuild
+++ b/python/python-gattlib/python-gattlib.SlackBuild
@@ -57,6 +57,8 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+patch -p1 < $CWD/dont_hardcode_python_versions.patch
+
python setup.py install --root=$PKG
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
diff --git a/python/python-notify2/README b/python/python-notify2/README
deleted file mode 100644
index a1c3e66911..0000000000
--- a/python/python-notify2/README
+++ /dev/null
@@ -1,4 +0,0 @@
-This is a pure-python replacement for notify-python, using
-python-dbus to communicate with the notifications server directly.
-It's compatible with Python 2 and 3, and its callbacks can work
-with Gtk 3 or Qt 4 applications.
diff --git a/python/python-notify2/python-notify2.SlackBuild b/python/python-notify2/python-notify2.SlackBuild
deleted file mode 100644
index 81fbc72fe7..0000000000
--- a/python/python-notify2/python-notify2.SlackBuild
+++ /dev/null
@@ -1,86 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for python-notify2
-
-# Copyright 2015-2018 Dimitris Zlatanidis Orestiada, Greece
-# 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.
-
-PRGNAM=python-notify2
-SRCNAM=$(echo $PRGNAM | cut -c8-14)
-VERSION=${VERSION:-0.3.1}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $SRCNAM-$VERSION
-tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
-cd $SRCNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-python setup.py install --root=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a PKG-INFO examples/README $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/python/python-notify2/python-notify2.info b/python/python-notify2/python-notify2.info
deleted file mode 100644
index 6e1b1b278d..0000000000
--- a/python/python-notify2/python-notify2.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="python-notify2"
-VERSION="0.3.1"
-HOMEPAGE="https://bitbucket.org/takluyver/pynotify2"
-DOWNLOAD="https://pypi.python.org/packages/aa/e8/d4b335aa739dc299a77766ecc5f1972d1de1993524aa94acef3219bba315/notify2-0.3.1.tar.gz"
-MD5SUM="ffccaed9330787c7442b453f6520a474"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
diff --git a/python/python-notify2/slack-desc b/python/python-notify2/slack-desc
deleted file mode 100644
index f7123aedd8..0000000000
--- a/python/python-notify2/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-python-notify2: python-notify2 (Python interface to DBus notifications)
-python-notify2:
-python-notify2: This is a pure-python replacement for notify-python, using
-python-notify2: python-dbus to communicate with the notifications server directly.
-python-notify2: It's compatible with Python 2 and 3, and its callbacks can work with
-python-notify2: Gtk 3 or Qt 4 applications.
-python-notify2:
-python-notify2: Homepage: https://bitbucket.org/takluyver/pynotify2
-python-notify2:
-python-notify2:
-python-notify2:
diff --git a/python/python-requests/README b/python/python-requests/README
deleted file mode 100644
index 9cf8a1867d..0000000000
--- a/python/python-requests/README
+++ /dev/null
@@ -1,4 +0,0 @@
-Requests is an Apache2 Licensed HTTP library, written in Python, for
-human beings.
-
-python3 is an optional dependency (autodetected).
diff --git a/python/python-requests/python-requests.SlackBuild b/python/python-requests/python-requests.SlackBuild
deleted file mode 100644
index 4aa2c9b147..0000000000
--- a/python/python-requests/python-requests.SlackBuild
+++ /dev/null
@@ -1,91 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for python-requests
-
-# Copyright 2013-2018 Thibaut Notteboom, Paris, FRANCE
-# 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.
-
-PRGNAM=python-requests
-VERSION=${VERSION:-2.20.1}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-SRCNAM=requests
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $SRCNAM-$VERSION
-tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
-cd $SRCNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-python setup.py install --root=$PKG
-
-# Python 3 support.
-if $(python3 -c 'import sys' 2>/dev/null); then
- python3 setup.py install --root=$PKG
-fi
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a \
- *.rst *.md LICENSE docs/ \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/python/python-requests/python-requests.info b/python/python-requests/python-requests.info
deleted file mode 100644
index a7e5cdc611..0000000000
--- a/python/python-requests/python-requests.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="python-requests"
-VERSION="2.20.1"
-HOMEPAGE="http://python-requests.org/"
-DOWNLOAD="https://github.com/kennethreitz/requests/archive/v2.20.1/requests-2.20.1.tar.gz"
-MD5SUM="9b08e9c0fc9584943c5bb8467ef8c0b2"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="python-certifi python-chardet idna python-urllib3"
-MAINTAINER="Thibaut Notteboom"
-EMAIL="thibaut.notteboom@gmail.com"
diff --git a/python/python-requests/slack-desc b/python/python-requests/slack-desc
deleted file mode 100644
index af39269d06..0000000000
--- a/python/python-requests/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-python-requests: python-requests (Requests: HTTP for Humans)
-python-requests:
-python-requests: Requests is an Apache2 Licensed HTTP library, written in Python, for
-python-requests: human beings.
-python-requests:
-python-requests:
-python-requests:
-python-requests:
-python-requests:
-python-requests:
-python-requests:
diff --git a/python/python-urllib3/README b/python/python-urllib3/README
deleted file mode 100644
index df9a0f529f..0000000000
--- a/python/python-urllib3/README
+++ /dev/null
@@ -1,12 +0,0 @@
-urllib3 is a powerful, sanity-friendly HTTP client for Python. Much of the Python
-ecosystem already uses urllib3 and you should too. urllib3 brings many critical features
-that are missing from the Python standard libraries:
-
-Thread safety.
-Connection pooling.
-Client-side SSL/TLS verification.
-File uploads with multipart encoding.
-Helpers for retrying requests and dealing with HTTP redirects.
-Support for gzip and deflate encoding.
-Proxy support for HTTP and SOCKS.
-100% test coverage.
diff --git a/python/python-urllib3/python-urllib3.SlackBuild b/python/python-urllib3/python-urllib3.SlackBuild
deleted file mode 100644
index 44d38f0bbf..0000000000
--- a/python/python-urllib3/python-urllib3.SlackBuild
+++ /dev/null
@@ -1,89 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for python-urllib3
-
-# Copyright 2013 Thibaut Notteboom, Paris, FRANCE
-# Copyright 2014-2018 Dimitris Zlatanidis Orestiada, Greece
-# 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.
-
-PRGNAM=python-urllib3
-SRCNAM=$(echo $PRGNAM | cut -c8-14)
-VERSION=${VERSION:-1.23}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
-cd $SRCNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-python setup.py install --root=$PKG
-
-# Python 3 support.
-if $(python3 -c 'import sys' 2>/dev/null); then
- python3 setup.py install --root=$PKG
-fi
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a *.rst *.txt $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/python/python-urllib3/python-urllib3.info b/python/python-urllib3/python-urllib3.info
deleted file mode 100644
index a80abcbb67..0000000000
--- a/python/python-urllib3/python-urllib3.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="python-urllib3"
-VERSION="1.23"
-HOMEPAGE="https://urllib3.readthedocs.io/en/latest/"
-DOWNLOAD="https://files.pythonhosted.org/packages/3c/d2/dc5471622bd200db1cd9319e02e71bc655e9ea27b8e0ce65fc69de0dac15/urllib3-1.23.tar.gz"
-MD5SUM="1ad43e4b5ab7a0794c89dc057e1d7179"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
diff --git a/python/python-urllib3/slack-desc b/python/python-urllib3/slack-desc
deleted file mode 100644
index 90699d4267..0000000000
--- a/python/python-urllib3/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-python-urllib3: python-urllib3 (HTTP library)
-python-urllib3:
-python-urllib3: urllib3 is a powerful, sanity-friendly HTTP client for Python. Much
-python-urllib3: of the Python ecosystem already uses urllib3 and you should too.
-python-urllib3:
-python-urllib3: Homepage: https://urllib3.readthedocs.io/en/latest/
-python-urllib3:
-python-urllib3:
-python-urllib3:
-python-urllib3:
-python-urllib3:
diff --git a/python/python2-sip/README b/python/python2-sip/README
deleted file mode 100644
index 8580dd29b5..0000000000
--- a/python/python2-sip/README
+++ /dev/null
@@ -1,15 +0,0 @@
-SIP is a tool that makes it very easy to create Python bindings for
-C and C++ libraries. It was originally developed to create PyQt,
-the Python bindings for the Qt toolkit, but can be used to create
-bindings for any C or C++ library.
-
-This is an updated version of the stock slackware package. It should not
-interfere with the stock version.
-
-To build against this library in your python2 applications you will need to
-tell your application the binary name and/or include path:
-
-/usr/bin/python2-sip
-/usr/include/python2.7/python2-sip/
-
-To use the module in your python2 projects, it is named python2_sip.
diff --git a/python/python2-sip/python2-sip.SlackBuild b/python/python2-sip/python2-sip.SlackBuild
deleted file mode 100644
index 37d5f90d6c..0000000000
--- a/python/python2-sip/python2-sip.SlackBuild
+++ /dev/null
@@ -1,119 +0,0 @@
-#!/bin/sh
-
-# Copyright 2008 Aleksandar Samardzic <asamardzic@gmail.com>
-# Copyright 2008, 2009, 2010, 2011 Patrick J. Volkerding, Sebeka, MN, USA
-# Copyright 2016 Marcel Saegebarth <marc@mos6581.de>
-# Copyright 2018 Dave Woodfall <dave@dawoodfall.net>
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-# Modified by Robby Workman <rworkman@slackware.com>
-# Modified by Eric Hameleers <alien@slackware.com>
-# Adapted by Marcel Saegebarth <marc@mos6581.de>
-# Modified by Dave Woodfall <dave@dawoodfall.net>
-
-PRGNAM=python2-sip
-SRCNAM=sip
-VERSION=${VERSION:-4.19.6}
-BUILD=${BUILD:-4}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-PYTHONVER=$(python -V 2>&1 | cut -f 2 -d' ' | cut -f 1-2 -d.)
-PYTHONLIB=/usr/lib$LIBDIRSUFFIX/python$PYTHONVER/site-packages
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $SRCNAM-$VERSION
-tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
-cd $SRCNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-python configure.py \
- -b "/usr/bin" \
- -d "$PYTHONLIB" \
- -e "/usr/include/python$PYTHONVER" \
- --sip-module="python2_sip" \
- CFLAGS="$SLKCFLAGS" \
- CXXFLAGS="$SLKCFLAGS"
-
-make
-make install DESTDIR=$PKG
-
-mv $PKG/usr/bin/sip $PKG/usr/bin/python2-sip
-
-mkdir -p $PKG/usr/include/python$PYTHONVER/python2-sip
-
-mv $PKG/usr/include/python$PYTHONVER/sip.h \
- $PKG/usr/include/python$PYTHONVER/python2-sip/sip.h \
-
-for oldf in sipdistutils.py sip.pyi sipconfig.py
-do
- mv $PKG/usr/lib$LIBDIRSUFFIX/python$PYTHONVER/site-packages/$oldf \
- $PKG/usr/lib$LIBDIRSUFFIX/python$PYTHONVER/site-packages/python2_$oldf
-done
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a ChangeLog LICENSE* NEWS README $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/python/python2-sip/python2-sip.info b/python/python2-sip/python2-sip.info
deleted file mode 100644
index f5e038066d..0000000000
--- a/python/python2-sip/python2-sip.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="python2-sip"
-VERSION="4.19.6"
-HOMEPAGE="http://www.riverbankcomputing.com/software/sip/intro/"
-DOWNLOAD="https://downloads.sourceforge.net/project/pyqt/sip/sip-4.19.6/sip-4.19.6.tar.gz"
-MD5SUM="6be5cb2c43915ed450a9f74ec110dada"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Dave Woodfall"
-EMAIL="dave@dawoodfall.net"
diff --git a/python/python2-sip/slack-desc b/python/python2-sip/slack-desc
deleted file mode 100644
index 63174564c9..0000000000
--- a/python/python2-sip/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-python2-sip: python2-sip (Tool to generate Python bindings)
-python2-sip:
-python2-sip: SIP is a tool that makes it very easy to create Python bindings for
-python2-sip: C and C++ libraries. It was originally developed to create PyQt,
-python2-sip: the Python bindings for the Qt toolkit, but can be used to create
-python2-sip: bindings for any C or C++ library.
-python2-sip:
-python2-sip: This is an updated version of the stock slackware package.
-python2-sip:
-python2-sip: Homepage: http://www.riverbankcomputing.com/software/sip/intro/
-python2-sip:
diff --git a/python/python3-Cython/README b/python/python3-Cython/README
deleted file mode 100644
index 0dd3a3eda4..0000000000
--- a/python/python3-Cython/README
+++ /dev/null
@@ -1,5 +0,0 @@
-Cython is an optimising static compiler for both the Python programming
-language and the extended Cython programming language (based on Pyrex).
-It makes writing C extensions for Python as easy as Python itself.
-
-This SlackBuild may be installed alongside the stock Cython package.
diff --git a/python/python3-Cython/python3-Cython.SlackBuild b/python/python3-Cython/python3-Cython.SlackBuild
deleted file mode 100644
index 0a84fd2bb8..0000000000
--- a/python/python3-Cython/python3-Cython.SlackBuild
+++ /dev/null
@@ -1,89 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for python3-Cython
-
-# Copyright 2016 Christoph Willing Brisbane, Australia
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=python3-Cython
-SRCNAM=Cython
-VERSION=${VERSION:-0.23.4}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $SRCNAM-$VERSION
-tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
-cd $SRCNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-python3 setup.py install --root=$PKG --prefix=/usr
-
-# Rename executables to avoid clashes with stock Cython versions
-find $PKG/usr/bin/ -type f -executable -exec mv '{}' '{}'3 \;
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a *.txt Doc/* $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/python/python3-Cython/python3-Cython.info b/python/python3-Cython/python3-Cython.info
deleted file mode 100644
index fae8484f6c..0000000000
--- a/python/python3-Cython/python3-Cython.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="python3-Cython"
-VERSION="0.23.4"
-HOMEPAGE="https://cython.org"
-DOWNLOAD="https://pypi.python.org/packages/b3/89/e8dddc86bf4f144407962e04c4018f53dfe4d6ae5010d34573d8521e810e/Cython-0.23.4.tar.gz"
-MD5SUM="157df1f69bcec6b56fd97e0f2e057f6e"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="python3"
-MAINTAINER="Christoph Willing"
-EMAIL="chris.willing@linux.com"
diff --git a/python/python3-Cython/slack-desc b/python/python3-Cython/slack-desc
deleted file mode 100644
index 9c2bdbf818..0000000000
--- a/python/python3-Cython/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-python3-Cython: python3-Cython (C-Extensions for Python3)
-python3-Cython:
-python3-Cython: Cython is an optimising static compiler for both the Python
-python3-Cython: programming language and the extended Cython programming language
-python3-Cython: (based on Pyrex). It makes writing C extensions for Python as easy
-python3-Cython: as Python itself.
-python3-Cython:
-python3-Cython: This SlackBuild may be installed alongside the stock Cython package.
-python3-Cython:
-python3-Cython:
-python3-Cython:
diff --git a/python/python3-appdirs/README b/python/python3-appdirs/README
deleted file mode 100644
index 8e3a9e20fa..0000000000
--- a/python/python3-appdirs/README
+++ /dev/null
@@ -1,2 +0,0 @@
-A small Python module for determining appropriate platform-specific
-dirs, e.g. a "user data dir".
diff --git a/python/python3-appdirs/python3-appdirs.SlackBuild b/python/python3-appdirs/python3-appdirs.SlackBuild
deleted file mode 100644
index 2a6e3593f7..0000000000
--- a/python/python3-appdirs/python3-appdirs.SlackBuild
+++ /dev/null
@@ -1,86 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for python3-appdirs
-
-# Copyright 2016 Jeremy Hansen <jebrhansen+SBo -at- gmail.com>
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 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.
-
-PRGNAM=python3-appdirs
-SRCNAM=appdirs
-VERSION=${VERSION:-1.4.3}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
-cd $SRCNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-python3 setup.py install --root=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a CHANGES.rst LICENSE.txt README.rst TODO.md $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/python/python3-appdirs/python3-appdirs.info b/python/python3-appdirs/python3-appdirs.info
deleted file mode 100644
index c22980e08d..0000000000
--- a/python/python3-appdirs/python3-appdirs.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="python3-appdirs"
-VERSION="1.4.3"
-HOMEPAGE="https://github.com/ActiveState/appdirs/"
-DOWNLOAD="https://github.com/ActiveState/appdirs/archive/1.4.3/appdirs-1.4.3.tar.gz"
-MD5SUM="b0bd73c5dac1bee973e60adcbdcbb5ed"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="python3"
-MAINTAINER="Jeremy Hansen"
-EMAIL="jebrhansen+SBo@gmail.com"
diff --git a/python/python3-appdirs/slack-desc b/python/python3-appdirs/slack-desc
deleted file mode 100644
index f174600be9..0000000000
--- a/python/python3-appdirs/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-python3-appdirs: python3-appdirs (module to determine platform-specific dirs)
-python3-appdirs:
-python3-appdirs: python3-appdirs A small Python module for determining appropriate
-python3-appdirs: platform-specific dirs, e.g. a "user data dir".
-python3-appdirs:
-python3-appdirs:
-python3-appdirs: Homepage: https://github.com/sigmavirus24/appdirs
-python3-appdirs:
-python3-appdirs:
-python3-appdirs:
-python3-appdirs:
diff --git a/python/python3-pyparsing/README b/python/python3-pyparsing/README
deleted file mode 100644
index d2badb1992..0000000000
--- a/python/python3-pyparsing/README
+++ /dev/null
@@ -1,8 +0,0 @@
-The pyparsing module is an alternative approach to creating and
-executing simple grammars, vs. the traditional lex/yacc
-approach, or the use of regular expressions. The pyparsing
-module provides a library of classes that client code uses to
-construct the grammar directly in Python code.
-
-This is the python3 version of pyparsing and it can coexist with
-SBo's pyparsing package.
diff --git a/python/python3-pyparsing/python3-pyparsing.SlackBuild b/python/python3-pyparsing/python3-pyparsing.SlackBuild
deleted file mode 100644
index b98c10cd31..0000000000
--- a/python/python3-pyparsing/python3-pyparsing.SlackBuild
+++ /dev/null
@@ -1,88 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for python3-pyparsing
-
-# Copyright 2008-2012 Heinz Wiesinger, Amsterdam, The Netherlands
-# Copyright 2016 Barry Grundy (bgrundy<at>linuxleo.com)
-# Copyright 2017-2018 Jeremy Hansen <jebrhansen+SBo -at- gmail.com>
-# 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.
-
-PRGNAM=python3-pyparsing
-SRCNAM=pyparsing
-VERSION=${VERSION:-2.2.0}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $SRCNAM-$VERSION
-tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
-cd $SRCNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-python3 setup.py install --root=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a CHANGES LICENSE PKG-INFO README HowToUsePyparsing.html docs/ $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/python/python3-pyparsing/python3-pyparsing.info b/python/python3-pyparsing/python3-pyparsing.info
deleted file mode 100644
index ab429a468b..0000000000
--- a/python/python3-pyparsing/python3-pyparsing.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="python3-pyparsing"
-VERSION="2.2.0"
-HOMEPAGE="https://github.com/pyparsing/pyparsing"
-DOWNLOAD="http://downloads.sourceforge.net/project/pyparsing/pyparsing/pyparsing-2.2.0/pyparsing-2.2.0.tar.gz"
-MD5SUM="0214e42d63af850256962b6744c948d9"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="python3"
-MAINTAINER="Jeremy Hansen"
-EMAIL="jebrhansen+SBo@gmail.com"
diff --git a/python/python3-pyparsing/slack-desc b/python/python3-pyparsing/slack-desc
deleted file mode 100644
index 32aebd1da2..0000000000
--- a/python/python3-pyparsing/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-python3-pyparsing: python3-pyparsing (parsing module for python)
-python3-pyparsing:
-python3-pyparsing: The pyparsing module is an alternative approach to creating and
-python3-pyparsing: executing simple grammars, vs. the traditional lex/yacc
-python3-pyparsing: approach, or the use of regular expressions. The pyparsing
-python3-pyparsing: module provides a library of classes that client code uses to
-python3-pyparsing: construct the grammar directly in Python code.
-python3-pyparsing:
-python3-pyparsing: Homepage: http://pyparsing.wikispaces.com/
-python3-pyparsing:
-python3-pyparsing: This is the python3 version and will coexist with the python2 version.
diff --git a/python/python3-sip/README b/python/python3-sip/README
deleted file mode 100644
index 73272f0e41..0000000000
--- a/python/python3-sip/README
+++ /dev/null
@@ -1,4 +0,0 @@
-SIP is a tool that makes it very easy to create Python bindings for
-C and C++ libraries. It was originally developed to create PyQt,
-the Python bindings for the Qt toolkit, but can be used to create
-bindings for any C or C++ library.
diff --git a/python/python3-sip/python3-sip.SlackBuild b/python/python3-sip/python3-sip.SlackBuild
deleted file mode 100644
index 0e1098d936..0000000000
--- a/python/python3-sip/python3-sip.SlackBuild
+++ /dev/null
@@ -1,108 +0,0 @@
-#!/bin/sh
-
-# Copyright 2008 Aleksandar Samardzic <asamardzic@gmail.com>
-# Copyright 2008, 2009, 2010, 2011 Patrick J. Volkerding, Sebeka, MN, USA
-# Copyright 2016 Marcel Saegebarth <marc@mos6581.de>
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-# Modified by Robby Workman <rworkman@slackware.com>
-# Modified by Eric Hameleers <alien@slackware.com>
-# Adapted by Marcel Saegebarth <marc@mos6581.de>
-
-PRGNAM=python3-sip
-SRCNAM=sip
-VERSION=${VERSION:-4.19.6}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-PYTHONVER=$(python3 -V 2>&1 | cut -f 2 -d' ' | cut -f 1-2 -d.)
-PYTHONLIB=/usr/lib$LIBDIRSUFFIX/python$PYTHONVER/site-packages
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $SRCNAM-$VERSION
-tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
-cd $SRCNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-python3 configure.py \
- -b "/usr/bin" \
- -d "$PYTHONLIB" \
- -e "/usr/include/python$PYTHONVER" \
- CFLAGS="$SLKCFLAGS" \
- CXXFLAGS="$SLKCFLAGS"
-
-make
-make install DESTDIR=$PKG
-
-(
- cd $PKG/usr/bin
- mv sip python3-sip
-)
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a ChangeLog LICENSE* NEWS README $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/python/python3-sip/python3-sip.info b/python/python3-sip/python3-sip.info
deleted file mode 100644
index 3e2b89c4ed..0000000000
--- a/python/python3-sip/python3-sip.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="python3-sip"
-VERSION="4.19.6"
-HOMEPAGE="http://www.riverbankcomputing.com/software/sip/intro/"
-DOWNLOAD="https://downloads.sourceforge.net/project/pyqt/sip/sip-4.19.6/sip-4.19.6.tar.gz"
-MD5SUM="6be5cb2c43915ed450a9f74ec110dada"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="python3"
-MAINTAINER="Marcel Saegebarth"
-EMAIL="marc@mos6581.de"
diff --git a/python/python3-sip/slack-desc b/python/python3-sip/slack-desc
deleted file mode 100644
index 4fd2920a80..0000000000
--- a/python/python3-sip/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-python3-sip: python3-sip (Tool to generate Python bindings)
-python3-sip:
-python3-sip: SIP is a tool that makes it very easy to create Python bindings for
-python3-sip: C and C++ libraries. It was originally developed to create PyQt,
-python3-sip: the Python bindings for the Qt toolkit, but can be used to create
-python3-sip: bindings for any C or C++ library.
-python3-sip:
-python3-sip: Homepage: http://www.riverbankcomputing.com/software/sip/intro/
-python3-sip:
-python3-sip:
-python3-sip:
diff --git a/python/python3-six/README b/python/python3-six/README
deleted file mode 100644
index ee25e72d18..0000000000
--- a/python/python3-six/README
+++ /dev/null
@@ -1,4 +0,0 @@
-Six is a Python 2 and 3 compatibility library. It provides utility functions for
-smoothing over the differences between the Python versions with the goal of
-writing Python code that is compatible on both Python versions. See the
-documentation for more information on what is provided.
diff --git a/python/python3-six/python3-six.SlackBuild b/python/python3-six/python3-six.SlackBuild
deleted file mode 100644
index 880c9ba3fd..0000000000
--- a/python/python3-six/python3-six.SlackBuild
+++ /dev/null
@@ -1,75 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for python3-six
-
-# Copyright 2012-2015 Larry Hajali <larryhaja[at]gmail[dot]com>
-# Copyright 2017-2018 Benjamin Trigona-Harany <slackbuilds@jaxartes.net>
-# 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.
-
-SRCNAM=six
-PRGNAM=python3-$SRCNAM
-VERSION=${VERSION:-1.12.0}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $SRCNAM-$VERSION
-tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
-cd $SRCNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-python3 setup.py install --root=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a \
- CHANGES LICENSE README.rst \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/python/python3-six/python3-six.info b/python/python3-six/python3-six.info
deleted file mode 100644
index ee9915a855..0000000000
--- a/python/python3-six/python3-six.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="python3-six"
-VERSION="1.12.0"
-HOMEPAGE="https://pypi.python.org/pypi/six/"
-DOWNLOAD="https://files.pythonhosted.org/packages/source/s/six/six-1.12.0.tar.gz"
-MD5SUM="9ae5d1feed8c0215f4ae4adcd9207fcb"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="python3"
-MAINTAINER="Benjamin Trigona-Harany"
-EMAIL="slackbuilds@jaxartes.net"
diff --git a/python/python3-six/slack-desc b/python/python3-six/slack-desc
deleted file mode 100644
index 0694e82700..0000000000
--- a/python/python3-six/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-python3-six: python3-six (Python 2 and 3 compatibility utilities)
-python3-six:
-python3-six: Six is a Python 2 and 3 compatibility library. It provides utility
-python3-six: functions for smoothing over the differences between the Python
-python3-six: versions with the goal of writing Python code that is compatible on
-python3-six: both Python versions. See the documentation for more information on
-python3-six: what is provided.
-python3-six:
-python3-six:
-python3-six:
-python3-six:
diff --git a/python/python3/README b/python/python3/README
deleted file mode 100644
index 8197d59201..0000000000
--- a/python/python3/README
+++ /dev/null
@@ -1,18 +0,0 @@
-Python is an interpreted, interactive, object-oriented programming
-language that combines remarkable power with very clear syntax.
-Python's basic power can be extended with your own modules written in C
-or C++. Python is also adaptable as an extension language for existing
-applications.
-
-Python 3 (a.k.a. "Python 3000" or "Py3k") is a new version of the
-language that is incompatible with the 2.x line of releases. The
-language is mostly the same, but many details, especially how built-in
-objects like dictionaries and strings work, have changed considerably,
-and a lot of deprecated features have finally been removed. Also, the
-standard library has been reorganized in a few prominent places.
-
-It is safe to install alongside Slackware's Python 2.x.
-
-If you'd like to have HTML docs installed, get them from
-<https://docs.python.org/3/download.html> (HTML format, .tar.bz2
-archive).
diff --git a/python/python3/patches/python3.no-static-library.diff b/python/python3/patches/python3.no-static-library.diff
deleted file mode 100644
index cbdc676f7a..0000000000
--- a/python/python3/patches/python3.no-static-library.diff
+++ /dev/null
@@ -1,59 +0,0 @@
-diff -uar Python-3.6.2.orig/Makefile.pre.in Python-3.6.2/Makefile.pre.in
---- Python-3.6.2.orig/Makefile.pre.in 2017-07-08 06:33:27.000000000 +0300
-+++ Python-3.6.2/Makefile.pre.in 2017-08-20 15:03:55.591112188 +0300
-@@ -533,7 +533,7 @@
- $(RUNSHARED) $(PYTHON_FOR_BUILD) ./Tools/clinic/clinic.py --make
-
- # Build the interpreter
--$(BUILDPYTHON): Programs/python.o $(LIBRARY) $(LDLIBRARY) $(PY3LIBRARY)
-+$(BUILDPYTHON): Programs/python.o $(LDLIBRARY) $(PY3LIBRARY)
- $(LINKCC) $(PY_LDFLAGS) $(LINKFORSHARED) -o $@ Programs/python.o $(BLDLIBRARY) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST)
-
- platform: $(BUILDPYTHON) pybuilddir.txt
-@@ -578,18 +578,6 @@
- $(PYTHON_FOR_BUILD) $(srcdir)/setup.py $$quiet build
-
-
--# Build static library
--# avoid long command lines, same as LIBRARY_OBJS
--$(LIBRARY): $(LIBRARY_OBJS)
-- -rm -f $@
-- $(AR) $(ARFLAGS) $@ Modules/getbuildinfo.o
-- $(AR) $(ARFLAGS) $@ $(PARSER_OBJS)
-- $(AR) $(ARFLAGS) $@ $(OBJECT_OBJS)
-- $(AR) $(ARFLAGS) $@ $(PYTHON_OBJS) Python/frozen.o
-- $(AR) $(ARFLAGS) $@ $(MODULE_OBJS)
-- $(AR) $(ARFLAGS) $@ $(MODOBJS)
-- $(RANLIB) $@
--
- libpython$(LDVERSION).so: $(LIBRARY_OBJS)
- if test $(INSTSONAME) != $(LDLIBRARY); then \
- $(BLDSHARED) -Wl,-h$(INSTSONAME) -o $(INSTSONAME) $(LIBRARY_OBJS) $(MODLIBS) $(SHLIBS) $(LIBC) $(LIBM) $(LDLAST); \
-@@ -679,7 +667,7 @@
- echo "-----------------------------------------------"; \
- fi
-
--Programs/_testembed: Programs/_testembed.o $(LIBRARY) $(LDLIBRARY) $(PY3LIBRARY)
-+Programs/_testembed: Programs/_testembed.o $(LDLIBRARY) $(PY3LIBRARY)
- $(LINKCC) $(PY_LDFLAGS) $(LINKFORSHARED) -o $@ Programs/_testembed.o $(BLDLIBRARY) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST)
-
- ############################################################################
-@@ -1391,18 +1379,6 @@
- else true; \
- fi; \
- done
-- @if test -d $(LIBRARY); then :; else \
-- if test "$(PYTHONFRAMEWORKDIR)" = no-framework; then \
-- if test "$(SHLIB_SUFFIX)" = .dll; then \
-- $(INSTALL_DATA) $(LDLIBRARY) $(DESTDIR)$(LIBPL) ; \
-- else \
-- $(INSTALL_DATA) $(LIBRARY) $(DESTDIR)$(LIBPL)/$(LIBRARY) ; \
-- $(RANLIB) $(DESTDIR)$(LIBPL)/$(LIBRARY) ; \
-- fi; \
-- else \
-- echo Skip install of $(LIBRARY) - use make frameworkinstall; \
-- fi; \
-- fi
- $(INSTALL_DATA) Modules/config.c $(DESTDIR)$(LIBPL)/config.c
- $(INSTALL_DATA) Programs/python.o $(DESTDIR)$(LIBPL)/python.o
- $(INSTALL_DATA) $(srcdir)/Modules/config.c.in $(DESTDIR)$(LIBPL)/config.c.in
diff --git a/python/python3/patches/python3.readline.set_pre_input_hook.diff b/python/python3/patches/python3.readline.set_pre_input_hook.diff
deleted file mode 100644
index b55820c489..0000000000
--- a/python/python3/patches/python3.readline.set_pre_input_hook.diff
+++ /dev/null
@@ -1,12 +0,0 @@
---- ./Modules/readline.c.orig 2009-10-26 21:32:51.000000000 +0200
-+++ ./Modules/readline.c 2010-05-30 14:07:10.000000000 +0300
-@@ -12,6 +12,9 @@
- #include <errno.h>
- #include <sys/time.h>
-
-+/* This seems to be needed for set_pre_input_hook to work */
-+#define HAVE_RL_PRE_INPUT_HOOK 1
-+
- #if defined(HAVE_SETLOCALE)
- /* GNU readline() mistakenly sets the LC_CTYPE locale.
- * This is evil. Only the user or the app's main() should do this!
diff --git a/python/python3/patches/python3.x86_64.diff b/python/python3/patches/python3.x86_64.diff
deleted file mode 100644
index cf2c46aa5f..0000000000
--- a/python/python3/patches/python3.x86_64.diff
+++ /dev/null
@@ -1,164 +0,0 @@
-diff -uar Python-3.6.2.orig/Lib/distutils/command/install.py Python-3.6.2/Lib/distutils/command/install.py
---- Python-3.6.2.orig/Lib/distutils/command/install.py 2017-07-08 06:33:27.000000000 +0300
-+++ Python-3.6.2/Lib/distutils/command/install.py 2017-08-20 15:10:41.653336676 +0300
-@@ -29,15 +29,15 @@
-
- INSTALL_SCHEMES = {
- 'unix_prefix': {
-- 'purelib': '$base/lib/python$py_version_short/site-packages',
-- 'platlib': '$platbase/lib/python$py_version_short/site-packages',
-+ 'purelib': '$base/lib64/python$py_version_short/site-packages',
-+ 'platlib': '$platbase/lib64/python$py_version_short/site-packages',
- 'headers': '$base/include/python$py_version_short$abiflags/$dist_name',
- 'scripts': '$base/bin',
- 'data' : '$base',
- },
- 'unix_home': {
-- 'purelib': '$base/lib/python',
-- 'platlib': '$base/lib/python',
-+ 'purelib': '$base/lib64/python',
-+ 'platlib': '$base/lib64/python',
- 'headers': '$base/include/python/$dist_name',
- 'scripts': '$base/bin',
- 'data' : '$base',
-diff -uar Python-3.6.2.orig/Lib/distutils/sysconfig.py Python-3.6.2/Lib/distutils/sysconfig.py
---- Python-3.6.2.orig/Lib/distutils/sysconfig.py 2017-07-08 06:33:27.000000000 +0300
-+++ Python-3.6.2/Lib/distutils/sysconfig.py 2017-08-20 15:10:41.654336706 +0300
-@@ -130,7 +130,7 @@
-
- if os.name == "posix":
- libpython = os.path.join(prefix,
-- "lib", "python" + get_python_version())
-+ "lib64", "python" + get_python_version())
- if standard_lib:
- return libpython
- else:
-diff -uar Python-3.6.2.orig/Lib/site.py Python-3.6.2/Lib/site.py
---- Python-3.6.2.orig/Lib/site.py 2017-07-08 06:33:27.000000000 +0300
-+++ Python-3.6.2/Lib/site.py 2017-08-20 15:10:41.654336706 +0300
-@@ -304,7 +304,7 @@
- seen.add(prefix)
-
- if os.sep == '/':
-- sitepackages.append(os.path.join(prefix, "lib",
-+ sitepackages.append(os.path.join(prefix, "lib64",
- "python%d.%d" % sys.version_info[:2],
- "site-packages"))
- else:
-diff -uar Python-3.6.2.orig/Lib/sysconfig.py Python-3.6.2/Lib/sysconfig.py
---- Python-3.6.2.orig/Lib/sysconfig.py 2017-07-08 06:33:27.000000000 +0300
-+++ Python-3.6.2/Lib/sysconfig.py 2017-08-20 15:10:41.654336706 +0300
-@@ -20,10 +20,10 @@
-
- _INSTALL_SCHEMES = {
- 'posix_prefix': {
-- 'stdlib': '{installed_base}/lib/python{py_version_short}',
-- 'platstdlib': '{platbase}/lib/python{py_version_short}',
-- 'purelib': '{base}/lib/python{py_version_short}/site-packages',
-- 'platlib': '{platbase}/lib/python{py_version_short}/site-packages',
-+ 'stdlib': '{installed_base}/lib64/python{py_version_short}',
-+ 'platstdlib': '{platbase}/lib64/python{py_version_short}',
-+ 'purelib': '{base}/lib64/python{py_version_short}/site-packages',
-+ 'platlib': '{platbase}/lib64/python{py_version_short}/site-packages',
- 'include':
- '{installed_base}/include/python{py_version_short}{abiflags}',
- 'platinclude':
-@@ -32,10 +32,10 @@
- 'data': '{base}',
- },
- 'posix_home': {
-- 'stdlib': '{installed_base}/lib/python',
-- 'platstdlib': '{base}/lib/python',
-- 'purelib': '{base}/lib/python',
-- 'platlib': '{base}/lib/python',
-+ 'stdlib': '{installed_base}/lib64/python',
-+ 'platstdlib': '{base}/lib64/python',
-+ 'purelib': '{base}/lib64/python',
-+ 'platlib': '{base}/lib64/python',
- 'include': '{installed_base}/include/python',
- 'platinclude': '{installed_base}/include/python',
- 'scripts': '{base}/bin',
-@@ -61,10 +61,10 @@
- 'data': '{userbase}',
- },
- 'posix_user': {
-- 'stdlib': '{userbase}/lib/python{py_version_short}',
-- 'platstdlib': '{userbase}/lib/python{py_version_short}',
-- 'purelib': '{userbase}/lib/python{py_version_short}/site-packages',
-- 'platlib': '{userbase}/lib/python{py_version_short}/site-packages',
-+ 'stdlib': '{userbase}/lib64/python{py_version_short}',
-+ 'platstdlib': '{userbase}/lib64/python{py_version_short}',
-+ 'purelib': '{userbase}/lib64/python{py_version_short}/site-packages',
-+ 'platlib': '{userbase}/lib64/python{py_version_short}/site-packages',
- 'include': '{userbase}/include/python{py_version_short}',
- 'scripts': '{userbase}/bin',
- 'data': '{userbase}',
-diff -uar Python-3.6.2.orig/Makefile.pre.in Python-3.6.2/Makefile.pre.in
---- Python-3.6.2.orig/Makefile.pre.in 2017-07-08 06:33:27.000000000 +0300
-+++ Python-3.6.2/Makefile.pre.in 2017-08-20 15:10:41.655336736 +0300
-@@ -133,7 +133,7 @@
- MANDIR= @mandir@
- INCLUDEDIR= @includedir@
- CONFINCLUDEDIR= $(exec_prefix)/include
--SCRIPTDIR= $(prefix)/lib
-+SCRIPTDIR= $(prefix)/lib64
- ABIFLAGS= @ABIFLAGS@
-
- # Detailed destination directories
-diff -uar Python-3.6.2.orig/Modules/getpath.c Python-3.6.2/Modules/getpath.c
---- Python-3.6.2.orig/Modules/getpath.c 2017-07-08 06:33:27.000000000 +0300
-+++ Python-3.6.2/Modules/getpath.c 2017-08-20 15:10:41.655336736 +0300
-@@ -494,7 +494,7 @@
- _pythonpath = Py_DecodeLocale(PYTHONPATH, NULL);
- _prefix = Py_DecodeLocale(PREFIX, NULL);
- _exec_prefix = Py_DecodeLocale(EXEC_PREFIX, NULL);
-- lib_python = Py_DecodeLocale("lib/python" VERSION, NULL);
-+ lib_python = Py_DecodeLocale("lib64/python" VERSION, NULL);
-
- if (!_pythonpath || !_prefix || !_exec_prefix || !lib_python) {
- Py_FatalError(
-@@ -683,7 +683,7 @@
- }
- else
- wcsncpy(zip_path, _prefix, MAXPATHLEN);
-- joinpath(zip_path, L"lib/python00.zip");
-+ joinpath(zip_path, L"lib64/python00.zip");
- bufsz = wcslen(zip_path); /* Replace "00" with version */
- zip_path[bufsz - 6] = VERSION[0];
- zip_path[bufsz - 5] = VERSION[2];
-@@ -695,7 +695,7 @@
- fprintf(stderr,
- "Could not find platform dependent libraries <exec_prefix>\n");
- wcsncpy(exec_prefix, _exec_prefix, MAXPATHLEN);
-- joinpath(exec_prefix, L"lib/lib-dynload");
-+ joinpath(exec_prefix, L"lib64/lib-dynload");
- }
- /* If we found EXEC_PREFIX do *not* reduce it! (Yet.) */
-
-diff -uar Python-3.6.2.orig/configure Python-3.6.2/configure
---- Python-3.6.2.orig/configure 2017-07-08 06:33:27.000000000 +0300
-+++ Python-3.6.2/configure 2017-08-20 15:10:41.658336826 +0300
-@@ -15006,9 +15006,9 @@
-
-
- if test x$PLATFORM_TRIPLET = x; then
-- LIBPL='$(prefix)'"/lib/python${VERSION}/config-${LDVERSION}"
-+ LIBPL='$(prefix)'"/lib64/python${VERSION}/config-${LDVERSION}"
- else
-- LIBPL='$(prefix)'"/lib/python${VERSION}/config-${LDVERSION}-${PLATFORM_TRIPLET}"
-+ LIBPL='$(prefix)'"/lib64/python${VERSION}/config-${LDVERSION}-${PLATFORM_TRIPLET}"
- fi
-
-
-diff -uar Python-3.6.2.orig/setup.py Python-3.6.2/setup.py
---- Python-3.6.2.orig/setup.py 2017-07-08 06:33:27.000000000 +0300
-+++ Python-3.6.2/setup.py 2017-08-20 15:10:41.659336856 +0300
-@@ -491,7 +491,7 @@
- # directories (i.e. '.' and 'Include') must be first. See issue
- # 10520.
- if not cross_compiling:
-- add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib')
-+ add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib64')
- add_dir_to_list(self.compiler.include_dirs, '/usr/local/include')
- # only change this for cross builds for 3.3, issues on Mageia
- if cross_compiling:
diff --git a/python/python3/python3.SlackBuild b/python/python3/python3.SlackBuild
deleted file mode 100644
index 6c9515b0d3..0000000000
--- a/python/python3/python3.SlackBuild
+++ /dev/null
@@ -1,155 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for python3
-
-# Copyright 2012-2018 Audrius Kažukauskas <audrius@neutrino.lt>
-# 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.
-
-PRGNAM=python3
-SRCNAM=Python
-VERSION=${VERSION:-3.6.7}
-BRANCH_VERSION=$(echo $VERSION | cut -f 1,2 -d . )
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-# Don't set any SLKCFLAGS here, or OPT="$SLKCFLAGS" before the ./configure.
-# Python gets the compile options right without any help.
-if [ "$ARCH" = "i586" ]; then
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- LIBDIRSUFFIX="64"
-else
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-# Location for Python site-packages.
-SITEPK=$PKG/usr/lib${LIBDIRSUFFIX}/python${BRANCH_VERSION}/site-packages
-# Same as above without $PKG.
-TOOLSDIR=/usr/lib${LIBDIRSUFFIX}/python${BRANCH_VERSION}/site-packages
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $SRCNAM-$VERSION
-tar xvf $CWD/$SRCNAM-$VERSION.tar.xz
-cd $SRCNAM-$VERSION
-
-patch -p1 -i $CWD/patches/python3.readline.set_pre_input_hook.diff
-# We don't want a large libpython*.a.
-patch -p1 -i $CWD/patches/python3.no-static-library.diff
-
-if [ "$ARCH" = "x86_64" ]; then
- # Install to lib64 instead of lib.
- patch -p1 -i $CWD/patches/python3.x86_64.diff
-fi
-
-# Fix python3 path in cgi.py.
-sed -i '1s|^#.*/usr/local/bin/python|#!/usr/bin/python3|' Lib/cgi.py
-
-# If system we're building on already has Python3 with pip in site-packages,
-# ignore it and install pip anyway.
-sed -i 's|\("install",\)|\1 "--ignore-installed",|' Lib/ensurepip/__init__.py
-
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --mandir=/usr/man \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --with-threads \
- --enable-ipv6 \
- --enable-shared \
- --with-system-expat \
- --with-system-ffi \
- --enable-loadable-sqlite-extensions \
- --build=$ARCH-slackware-linux
-
-make
-make install DESTDIR=$PKG
-
-# Restore original ensurepip behaviour.
-sed -i 's| "--ignore-installed",||' \
- $PKG/usr/lib${LIBDIRSUFFIX}/python${BRANCH_VERSION}/ensurepip/__init__.py
-
-# Remove to avoid overwriting a copy from Python2.
-rm -f $PKG/usr/bin/2to3
-
-# We'll install the python-tools under site-packages.
-mkdir -p $SITEPK
-cp -a Tools/* $SITEPK
-
-# Remove DOS batch/exe files.
-find $PKG \( -name '*.exe' -o -name '*.bat' \) -exec rm -f '{}' \;
-
-# Fix permissions on dynamic libraries.
-find $PKG -type f -perm 555 -exec chmod 755 '{}' \;
-
-# Install docs.
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a README.rst LICENSE Misc $PKG/usr/doc/$PRGNAM-$VERSION
-mv $SITEPK/README $PKG/usr/doc/$PRGNAM-$VERSION/README.python-tools
-( cd $PKG/usr/doc/$PRGNAM-$VERSION ; ln -sf $TOOLSDIR Tools )
-if [ -e "$CWD/python-$VERSION-docs-html.tar.bz2" ]; then
- tar xf $CWD/python-$VERSION-docs-html.tar.bz2
- mv python-$VERSION-docs-html $PKG/usr/doc/$PRGNAM-$VERSION/html
- chown -R root:root $PKG/usr/doc/$PRGNAM-$VERSION/html
-fi
-
-# Fix possible incorrect permissions.
-( cd $PKG
- find . -type d -exec chmod 755 "{}" \;
- find . -perm 640 -exec chmod 644 "{}" \;
- find . -perm 750 -exec chmod 755 "{}" \;
-)
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/python/python3/python3.info b/python/python3/python3.info
deleted file mode 100644
index 71779a4a5a..0000000000
--- a/python/python3/python3.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="python3"
-VERSION="3.6.7"
-HOMEPAGE="https://www.python.org/"
-DOWNLOAD="https://www.python.org/ftp/python/3.6.7/Python-3.6.7.tar.xz"
-MD5SUM="bb1e10f5cedf21fcf52d2c7e5b963c96"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Audrius Kažukauskas"
-EMAIL="audrius@neutrino.lt"
diff --git a/python/python3/slack-desc b/python/python3/slack-desc
deleted file mode 100644
index bfc8d5c554..0000000000
--- a/python/python3/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-python3: python3 (object-oriented interpreted programming language)
-python3:
-python3: Python is an interpreted, interactive, object-oriented programming
-python3: language that combines remarkable power with very clear syntax.
-python3: This is a new version of the language that is incompatible with the
-python3: 2.x line of releases. The language is mostly the same, but many
-python3: details, especially how built-in objects like dictionaries and strings
-python3: work, have changed considerably, and a lot of deprecated features have
-python3: finally been removed. Also, the standard library has been reorganized
-python3: in a few prominent places.
-python3:
diff --git a/python/six/README b/python/six/README
deleted file mode 100644
index e995a974e8..0000000000
--- a/python/six/README
+++ /dev/null
@@ -1,6 +0,0 @@
-Six is a Python 2 and 3 compatibility library. It provides utility functions for
-smoothing over the differences between the Python versions with the goal of
-writing Python code that is compatible on both Python versions. See the
-documentation for more information on what is provided.
-
-Optional dependencies: Sphinx
diff --git a/python/six/six.SlackBuild b/python/six/six.SlackBuild
deleted file mode 100644
index 40d74af4b5..0000000000
--- a/python/six/six.SlackBuild
+++ /dev/null
@@ -1,83 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for six
-
-# Copyright 2012-2018 Larry Hajali <larryhaja[at]gmail[dot]com>
-# 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.
-
-PRGNAM=six
-VERSION=${VERSION:-1.12.0}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-python setup.py install --root=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-# Build and install documentation if sphinx is installed.
-if $(python -c 'import sphinx.pygments_styles' 2>/dev/null); then
- make -j1 -C documentation man singlehtml
- install -D -m 0644 documentation/_build/man/$PRGNAM.1 $PKG/usr/man/man1/$PRGNAM.1
- gzip -9 $PKG/usr/man/man?/*.?
-fi
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a LICENSE PKG-INFO README.rst $PKG/usr/doc/$PRGNAM-$VERSION
-[ -d documentation/_build/singlehtml ] && \
- cp -a documentation/_build/singlehtml/index.html \
- documentation/_build/singlehtml/_static \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-find $PKG/usr/doc -type f -exec chmod 0644 '{}' \;
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/python/six/six.info b/python/six/six.info
deleted file mode 100644
index 204c946a9a..0000000000
--- a/python/six/six.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="six"
-VERSION="1.12.0"
-HOMEPAGE="https://pypi.python.org/pypi/six/"
-DOWNLOAD="https://pypi.io/packages/source/s/six/six-1.12.0.tar.gz"
-MD5SUM="9ae5d1feed8c0215f4ae4adcd9207fcb"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Larry Hajali"
-EMAIL="larryhaja[at]gmail[dot]com"
diff --git a/python/six/slack-desc b/python/six/slack-desc
deleted file mode 100644
index 678f603af3..0000000000
--- a/python/six/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-six: six (Python 2 and 3 compatibility utilities)
-six:
-six: Six is a Python 2 and 3 compatibility library. It provides utility
-six: functions for smoothing over the differences between the Python
-six: versions with the goal of writing Python code that is compatible on
-six: both Python versions. See the documentation for more information on
-six: what is provided.
-six:
-six: Homepage: https://pypi.python.org/pypi/six/
-six:
-six:
diff --git a/python/typing/README b/python/typing/README
deleted file mode 100644
index 471488acff..0000000000
--- a/python/typing/README
+++ /dev/null
@@ -1,4 +0,0 @@
-This is a backport of the standard library typing module to Python
-versions older than 3.5.
-
-python3 is an optional dependency (autodetected).
diff --git a/python/typing/slack-desc b/python/typing/slack-desc
deleted file mode 100644
index b57a2cc3d9..0000000000
--- a/python/typing/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-typing: typing (Type Hints for Python)
-typing:
-typing: This is a backport of the standard library typing module to Python
-typing: versions older than 3.5.
-typing:
-typing: Homepage: https://docs.python.org/3.5/library/typing.html
-typing:
-typing:
-typing:
-typing:
-typing:
diff --git a/python/typing/typing.SlackBuild b/python/typing/typing.SlackBuild
deleted file mode 100644
index fc6e681e9c..0000000000
--- a/python/typing/typing.SlackBuild
+++ /dev/null
@@ -1,90 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for typing
-
-# Copyright 2016-2018 Dimitris Zlatanidis Orestiada, Greece
-# 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.
-
-PRGNAM=typing
-VERSION=${VERSION:-3.6.4}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-python setup.py install --root=$PKG
-
-# Python 3 support.
-if $(python3 -c 'import sys' 2>/dev/null); then
- python3 setup.py install --root=$PKG
-fi
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a LICENSE PKG-INFO README.rst $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/python/typing/typing.info b/python/typing/typing.info
deleted file mode 100644
index fd6712f4c9..0000000000
--- a/python/typing/typing.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="typing"
-VERSION="3.6.4"
-HOMEPAGE="https://docs.python.org/3.5/library/typing.html"
-DOWNLOAD="https://pypi.python.org/packages/ec/cc/28444132a25c113149cec54618abc909596f0b272a74c55bab9593f8876c/typing-3.6.4.tar.gz"
-MD5SUM="5b2ade08d83be488f17b5fe587c27c74"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
diff --git a/system/acpi_call/acpi_call.SlackBuild b/system/acpi_call/acpi_call.SlackBuild
index 9be2bed29b..0271eae2d7 100644
--- a/system/acpi_call/acpi_call.SlackBuild
+++ b/system/acpi_call/acpi_call.SlackBuild
@@ -66,6 +66,9 @@ find -L . \
patch -p0 < $CWD/fix-acpi-include.patch
+# Fix build with Linux >= 4.12
+sed -i 's|asm/uaccess.h|linux/uaccess.h|' acpi_call.c
+
make KDIR=$KERNELPATH
mkdir -p $PKG/lib/modules/$KERNEL/misc
diff --git a/system/brasero/brasero.SlackBuild b/system/brasero/brasero.SlackBuild
index cd1f003c30..32abd17b58 100644
--- a/system/brasero/brasero.SlackBuild
+++ b/system/brasero/brasero.SlackBuild
@@ -75,7 +75,7 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-CFLAGS="$SLKCFLAGS" \
+CFLAGS="$SLKCFLAGS -Wno-error=format-nonliteral -Wno-error=format-y2k" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
diff --git a/system/bulk_extractor/bulk_extractor.SlackBuild b/system/bulk_extractor/bulk_extractor.SlackBuild
index 2a7e955d4f..627aed32d5 100644
--- a/system/bulk_extractor/bulk_extractor.SlackBuild
+++ b/system/bulk_extractor/bulk_extractor.SlackBuild
@@ -25,7 +25,7 @@
# edited for v 1.5.5 November 2014 - added LightGrep option.
PRGNAM=bulk_extractor
-VERSION=${VERSION:-1.5.5}
+VERSION=${VERSION:-20170403_779dbe1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -62,9 +62,9 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
-rm -rf $TMP/$PRGNAM-$VERSION
cd $TMP
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.?z
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
diff --git a/system/bulk_extractor/bulk_extractor.info b/system/bulk_extractor/bulk_extractor.info
index 09b76412bb..d4a31c3dd4 100644
--- a/system/bulk_extractor/bulk_extractor.info
+++ b/system/bulk_extractor/bulk_extractor.info
@@ -1,8 +1,8 @@
PRGNAM="bulk_extractor"
-VERSION="1.5.5"
+VERSION="20170403_779dbe1"
HOMEPAGE="https://github.com/simsong/bulk_extractor/wiki"
-DOWNLOAD="http://digitalcorpora.org/downloads/bulk_extractor/bulk_extractor-1.5.5.tar.gz"
-MD5SUM="7155ce6938876be91416def15e44d585"
+DOWNLOAD="http://ponce.cc/slackware/sources/repo/bulk_extractor-20170403_779dbe1.tar.xz"
+MD5SUM="96f0c04052c51e6746ba83dae9de145e"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/system/caprice32/caprice32.SlackBuild b/system/caprice32/caprice32.SlackBuild
index ac27dd4df4..5eb64c1059 100644
--- a/system/caprice32/caprice32.SlackBuild
+++ b/system/caprice32/caprice32.SlackBuild
@@ -70,6 +70,8 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+sed -i "s|-O2|$SLKCFLAGS -Wno-narrowing|" makefile.unix
+
make -f makefile.unix RELEASE=TRUE
mkdir -p $PKG/usr/share/$PRGNAM $PKG/usr/bin
diff --git a/system/colord/colord.SlackBuild b/system/colord/colord.SlackBuild
index 2ac2cabcf3..5112df3e32 100644
--- a/system/colord/colord.SlackBuild
+++ b/system/colord/colord.SlackBuild
@@ -95,6 +95,11 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# Since polkit in current apply upstream git
+# we have to reduce the polkit version used to test
+# https://github.com/hughsie/colord/issues/36
+sed -i "s|114|113|g" configure
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
diff --git a/system/conky/conky-1.10.6-gcc7.patch b/system/conky/conky-1.10.6-gcc7.patch
new file mode 100644
index 0000000000..dcbc3bc8a5
--- /dev/null
+++ b/system/conky/conky-1.10.6-gcc7.patch
@@ -0,0 +1,11 @@
+diff -Naur conky-1.10.6.orig/src/luamm.hh conky-1.10.6/src/luamm.hh
+--- conky-1.10.6.orig/src/luamm.hh 2016-12-04 16:13:57.000000000 +0100
++++ conky-1.10.6/src/luamm.hh 2017-05-05 12:44:37.525676651 +0200
+@@ -27,6 +27,7 @@
+ #include <mutex>
+ #include <exception>
+ #include <stdexcept>
++#include <functional>
+ #include <string>
+
+ #include <lua.hpp>
diff --git a/system/conky/conky.SlackBuild b/system/conky/conky.SlackBuild
index c3f4948c36..395bcdce69 100644
--- a/system/conky/conky.SlackBuild
+++ b/system/conky/conky.SlackBuild
@@ -87,6 +87,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# Fix for the newer gcc
+patch -p1 < $CWD/conky-1.10.6-gcc7.patch
+
# fix MANDIR
sed -i 's,share/man/man1,man/man1,g' CMakeLists.txt
diff --git a/system/dash/README b/system/dash/README
deleted file mode 100644
index 4f1ca583a5..0000000000
--- a/system/dash/README
+++ /dev/null
@@ -1,4 +0,0 @@
-DASH is a POSIX-compliant implementation of /bin/sh that aims to be as
-small as possible. It does this without sacrificing speed where
-possible. In fact, it is significantly faster than bash (the GNU
-Bourne-Again SHell) for most tasks.
diff --git a/system/dash/dash.SlackBuild b/system/dash/dash.SlackBuild
deleted file mode 100644
index dfb7bdf565..0000000000
--- a/system/dash/dash.SlackBuild
+++ /dev/null
@@ -1,90 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for dash
-
-# Written by Vincent Batts, http://hashbangbash.com/
-# Copyright 2017-2018 Donald Cooley South Haven, Indiana USA
-
-PRGNAM=dash
-VERSION=${VERSION:-0.5.10.2}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/ \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --build=$ARCH-slackware-linux \
- --with-libedit
-
-make
-make install DESTDIR=$PKG
-
-mkdir -p $PKG/usr/bin
-( cd $PKG/usr/bin ; ln -s /bin/dash dash )
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a \
- COPYING ChangeLog \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/system/dash/dash.info b/system/dash/dash.info
deleted file mode 100644
index 93724d2bb5..0000000000
--- a/system/dash/dash.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="dash"
-VERSION="0.5.10.2"
-HOMEPAGE="http://gondor.apana.org.au/~herbert/dash/"
-DOWNLOAD="http://gondor.apana.org.au/~herbert/dash/files/dash-0.5.10.2.tar.gz"
-MD5SUM="8f485f126c05d0ab800e85abfe1987aa"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="libedit"
-MAINTAINER="Donald Cooley"
-EMAIL="chytraeu@sdf.org"
diff --git a/system/dash/slack-desc b/system/dash/slack-desc
deleted file mode 100644
index 83489625d6..0000000000
--- a/system/dash/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-dash: dash (POSIX compliant shell)
-dash:
-dash: DASH is a POSIX-compliant implementation of /bin/sh that aims
-dash: to be as small as possible. It does this without sacrificing
-dash: speed where possible. In fact, it is significantly faster than
-dash: bash (the GNU Bourne-Again SHell) for most tasks.
-dash:
-dash:
-dash:
-dash:
-dash:
diff --git a/system/dymo-cups-drivers/cups-ppd-header.patch b/system/dymo-cups-drivers/cups-ppd-header.patch
new file mode 100644
index 0000000000..46b366915d
--- /dev/null
+++ b/system/dymo-cups-drivers/cups-ppd-header.patch
@@ -0,0 +1,40 @@
+diff -ur dymo-cups-drivers-1.4.0.5/src/common/CupsFilter.h dymo-cups-drivers-1.4.0.5-patch/src/common/CupsFilter.h
+--- dymo-cups-drivers-1.4.0.5/src/common/CupsFilter.h 2012-02-07 08:22:37.000000000 -0500
++++ dymo-cups-drivers-1.4.0.5-patch/src/common/CupsFilter.h 2016-10-27 20:13:46.267013540 -0400
+@@ -23,6 +23,7 @@
+
+ #include <cups/cups.h>
+ #include <cups/raster.h>
++#include <cups/ppd.h>
+ #include <memory>
+ #include <string>
+ #include "CupsPrintEnvironment.h"
+diff -ur dymo-cups-drivers-1.4.0.5/src/lm/CupsFilterLabelManager.h dymo-cups-drivers-1.4.0.5-patch/src/lm/CupsFilterLabelManager.h
+--- dymo-cups-drivers-1.4.0.5/src/lm/CupsFilterLabelManager.h 2012-02-07 08:22:38.000000000 -0500
++++ dymo-cups-drivers-1.4.0.5-patch/src/lm/CupsFilterLabelManager.h 2016-10-27 20:14:00.407310094 -0400
+@@ -23,6 +23,7 @@
+
+ #include <cups/cups.h>
+ #include <cups/raster.h>
++#include <cups/ppd.h>
+ #include "LabelManagerDriver.h"
+ #include "LabelManagerLanguageMonitor.h"
+ #include "DummyLanguageMonitor.h"
+@@ -50,4 +51,4 @@
+
+ /*
+ * End of "$Id: CupsFilterLabelManager.h 14880 2011-03-31 16:29:05Z aleksandr $".
+- */
+\ No newline at end of file
++ */
+diff -ur dymo-cups-drivers-1.4.0.5/src/lw/CupsFilterLabelWriter.h dymo-cups-drivers-1.4.0.5-patch/src/lw/CupsFilterLabelWriter.h
+--- dymo-cups-drivers-1.4.0.5/src/lw/CupsFilterLabelWriter.h 2012-02-07 08:22:37.000000000 -0500
++++ dymo-cups-drivers-1.4.0.5-patch/src/lw/CupsFilterLabelWriter.h 2016-10-27 20:14:23.717798963 -0400
+@@ -23,6 +23,7 @@
+
+ #include <cups/cups.h>
+ #include <cups/raster.h>
++#include <cups/ppd.h>
+ #include "LabelWriterDriver.h"
+ #include "LabelWriterLanguageMonitor.h"
+ #include "DummyLanguageMonitor.h"
diff --git a/system/dymo-cups-drivers/dymo-cups-drivers.SlackBuild b/system/dymo-cups-drivers/dymo-cups-drivers.SlackBuild
index d75cb09fca..e647c5209e 100644
--- a/system/dymo-cups-drivers/dymo-cups-drivers.SlackBuild
+++ b/system/dymo-cups-drivers/dymo-cups-drivers.SlackBuild
@@ -69,6 +69,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# Patch for the newer cups - thanks archlinux!
+patch -p1 < $CWD/cups-ppd-header.patch
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
diff --git a/system/dynamips/dynamips.SlackBuild b/system/dynamips/dynamips.SlackBuild
index a9edf005e9..76345e6758 100644
--- a/system/dynamips/dynamips.SlackBuild
+++ b/system/dynamips/dynamips.SlackBuild
@@ -75,6 +75,7 @@ CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
sed -i 's/^\(\.PHONY: all dynamips\)/# \1/' Makefile
+sed -i "s/-L\/usr\/lib\ -L\.\ -ldl/-L\/usr\/lib${LIBDIRSUFFIX} -L. -ldl -lz/" stable/Makefile
if [ $ARCH == "x86_64" ]
then
diff --git a/system/ecryptfs-utils/ecryptfs-utils.SlackBuild b/system/ecryptfs-utils/ecryptfs-utils.SlackBuild
index 27ba7c2bbb..8a32014071 100644
--- a/system/ecryptfs-utils/ecryptfs-utils.SlackBuild
+++ b/system/ecryptfs-utils/ecryptfs-utils.SlackBuild
@@ -72,6 +72,8 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+patch -p0 < $CWD/openssl.patch
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -84,7 +86,7 @@ CXXFLAGS="$SLKCFLAGS" \
--docdir=/usr/doc/$PRGNAM-$VERSION \
--disable-pam \
--enable-gpg \
- --enable-tests \
+ --disable-tests \
--build=$ARCH-slackware-linux
make -j1 all check
diff --git a/system/ecryptfs-utils/openssl.patch b/system/ecryptfs-utils/openssl.patch
new file mode 100644
index 0000000000..5c3e419a91
--- /dev/null
+++ b/system/ecryptfs-utils/openssl.patch
@@ -0,0 +1,76 @@
+=== modified file 'src/key_mod/ecryptfs_key_mod_openssl.c'
+--- src/key_mod/ecryptfs_key_mod_openssl.c 2013-10-25 19:45:09 +0000
++++ src/key_mod/ecryptfs_key_mod_openssl.c 2017-03-13 20:34:27 +0000
+@@ -50,6 +50,20 @@
+ #include "../include/ecryptfs.h"
+ #include "../include/decision_graph.h"
+
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
++void RSA_get0_key(const RSA *r,
++ const BIGNUM **n, const BIGNUM **e, const BIGNUM **d)
++{
++ if (n != NULL)
++ *n = r->n;
++ if (e != NULL)
++ *e = r->e;
++ if (d != NULL)
++ *d = r->d;
++}
++#endif
++
++
+ struct openssl_data {
+ char *path;
+ char *passphrase;
+@@ -142,6 +156,7 @@
+ {
+ int len, nbits, ebits, i;
+ int nbytes, ebytes;
++ const BIGNUM *key_n, *key_e;
+ unsigned char *hash;
+ unsigned char *data = NULL;
+ int rc = 0;
+@@ -152,11 +167,13 @@
+ rc = -ENOMEM;
+ goto out;
+ }
+- nbits = BN_num_bits(key->n);
++ RSA_get0_key(key, &key_n, NULL, NULL);
++ nbits = BN_num_bits(key_n);
+ nbytes = nbits / 8;
+ if (nbits % 8)
+ nbytes++;
+- ebits = BN_num_bits(key->e);
++ RSA_get0_key(key, NULL, &key_e, NULL);
++ ebits = BN_num_bits(key_e);
+ ebytes = ebits / 8;
+ if (ebits % 8)
+ ebytes++;
+@@ -179,11 +196,13 @@
+ data[i++] = '\02';
+ data[i++] = (nbits >> 8);
+ data[i++] = nbits;
+- BN_bn2bin(key->n, &(data[i]));
++ RSA_get0_key(key, &key_n, NULL, NULL);
++ BN_bn2bin(key_n, &(data[i]));
+ i += nbytes;
+ data[i++] = (ebits >> 8);
+ data[i++] = ebits;
+- BN_bn2bin(key->e, &(data[i]));
++ RSA_get0_key(key, NULL, &key_e, NULL);
++ BN_bn2bin(key_e, &(data[i]));
+ i += ebytes;
+ SHA1(data, len + 3, hash);
+ to_hex(sig, (char *)hash, ECRYPTFS_SIG_SIZE);
+@@ -278,7 +297,9 @@
+ BIO *in = NULL;
+ int rc;
+
++ #if OPENSSL_VERSION_NUMBER < 0x10100000L
+ CRYPTO_malloc_init();
++ #endif
+ ERR_load_crypto_strings();
+ OpenSSL_add_all_algorithms();
+ ENGINE_load_builtin_engines();
+
+
diff --git a/system/efitools/efitools.SlackBuild b/system/efitools/efitools.SlackBuild
index b2f041bed3..844fc759b4 100644
--- a/system/efitools/efitools.SlackBuild
+++ b/system/efitools/efitools.SlackBuild
@@ -23,7 +23,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=efitools
-VERSION=${VERSION:-1.5.3}
+VERSION=${VERSION:-1.8.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -32,7 +32,7 @@ USE_KEYS=${USE_KEYS:-no}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -44,8 +44,8 @@ PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
# It's not safe to specify build flags since some EFI programs are built.
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
EFI_ARCH=ia32
elif [ "$ARCH" = "i686" ]; then
diff --git a/system/efitools/efitools.info b/system/efitools/efitools.info
index 8946a7cacf..e496e0d12e 100644
--- a/system/efitools/efitools.info
+++ b/system/efitools/efitools.info
@@ -1,8 +1,8 @@
PRGNAM="efitools"
-VERSION="1.5.3"
+VERSION="1.8.1"
HOMEPAGE="https://git.kernel.org/cgit/linux/kernel/git/jejb/efitools.git"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/efitools-1.5.3.tar.gz"
-MD5SUM="19ed4d83cfbb10987b84fca5a744715a"
+DOWNLOAD="http://ponce.cc/slackware/sources/repo/efitools-1.8.1.tar.gz"
+MD5SUM="830988a246c7c0359eaea24233cbfb76"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="perl-File-Slurp sbsigntools"
diff --git a/system/evilvte/evilvte.info b/system/evilvte/evilvte.info
index e4cd913dd5..76d6079d62 100644
--- a/system/evilvte/evilvte.info
+++ b/system/evilvte/evilvte.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://github.com/caleb-/evilvte/archive/8dfa41e26bc640dd8d8c7317ff7d
MD5SUM="e09c34ac7d5afaf6ca785b7984df70ed"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES=""
+REQUIRES="vte2"
MAINTAINER="Edinaldo P. Silva"
EMAIL="edps.mundognu@gmail.com"
diff --git a/system/extundelete/extundelete-e2fsprogs-1.44.1.patch b/system/extundelete/extundelete-e2fsprogs-1.44.1.patch
new file mode 100644
index 0000000000..61c078bfb8
--- /dev/null
+++ b/system/extundelete/extundelete-e2fsprogs-1.44.1.patch
@@ -0,0 +1,12 @@
+diff -ru extundelete-0.2.4.orig/src/insertionops.cc extundelete-0.2.4/src/insertionops.cc
+--- extundelete-0.2.4.orig/src/insertionops.cc 2018-06-04 22:19:22.460051515 +0000
++++ extundelete-0.2.4/src/insertionops.cc 2018-06-04 22:19:49.256717673 +0000
+@@ -33,7 +33,7 @@
+ os << "File flags: " << inode.i_flags << std::endl;
+ os << "File version (for NFS): " << inode.i_generation << std::endl;
+ os << "File ACL: " << inode.i_file_acl << std::endl;
+- os << "Directory ACL: " << inode.i_dir_acl << std::endl;
++ os << "Directory ACL: " << inode.i_size_high << std::endl;
+ os << "Fragment address: " << inode.i_faddr << std::endl;
+ os << "Direct blocks: ";
+ for (int n = 0; n < EXT2_NDIR_BLOCKS; n++)
diff --git a/system/extundelete/extundelete.SlackBuild b/system/extundelete/extundelete.SlackBuild
index 5707b90896..ad08fe39e7 100644
--- a/system/extundelete/extundelete.SlackBuild
+++ b/system/extundelete/extundelete.SlackBuild
@@ -72,6 +72,8 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+patch -p1 < $CWD/extundelete-e2fsprogs-1.44.1.patch
+
mkdir -p $PKG/usr/bin $PKG/usr/doc
DFLAGS=$LDFLAGS \
diff --git a/system/f2fs_tools/README b/system/f2fs_tools/README
deleted file mode 100644
index 9b03454053..0000000000
--- a/system/f2fs_tools/README
+++ /dev/null
@@ -1 +0,0 @@
-Userland tools for the f2fs filesystem.
diff --git a/system/f2fs_tools/f2fs_tools.SlackBuild b/system/f2fs_tools/f2fs_tools.SlackBuild
deleted file mode 100644
index 198eb74854..0000000000
--- a/system/f2fs_tools/f2fs_tools.SlackBuild
+++ /dev/null
@@ -1,88 +0,0 @@
-#!/bin/sh
-# Slackware build script for <f2fs_tools>
-#
-# Michales (clavisound) Michaloudes korgie@gmail.com <2014>
-
-PRGNAM=f2fs_tools
-SRCNAM=f2fs-tools
-VERSION=${VERSION:-1.6.1}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i486 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $SRCNAM-v$VERSION
-tar xvf $CWD/$SRCNAM-v$VERSION.tar.gz
-cd $SRCNAM-v$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS"
-
-autoreconf --install
-
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --disable-static \
- --build=$ARCH-slackware-linux
-
-make
-make install DESTDIR=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a \
- AUTHORS COPYING ChangeLog README VERSION \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/system/f2fs_tools/f2fs_tools.info b/system/f2fs_tools/f2fs_tools.info
deleted file mode 100644
index cda93b1788..0000000000
--- a/system/f2fs_tools/f2fs_tools.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="f2fs_tools"
-VERSION="1.6.1"
-HOMEPAGE="http://git.kernel.org/cgit/linux/kernel/git/jaegeuk/f2fs-tools.git"
-DOWNLOAD="http://git.kernel.org/cgit/linux/kernel/git/jaegeuk/f2fs-tools.git/snapshot/f2fs-tools-v1.6.1.tar.gz"
-MD5SUM="3fc6caa14569e059fc41807e42641a11"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Michales Michaloudes"
-EMAIL="korgie@gmail.com"
diff --git a/system/facter/facter.SlackBuild b/system/facter/facter.SlackBuild
index 7788f94801..03f1919ac8 100644
--- a/system/facter/facter.SlackBuild
+++ b/system/facter/facter.SlackBuild
@@ -77,7 +77,7 @@ mkdir -p build
cd build
cmake \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS -Wno-error=misleading-indentation" \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_VERBOSE_MAKEFILE=ON \
-DCMAKE_BUILD_TYPE=Release ..
diff --git a/system/gnome-terminal/gnome-terminal.info b/system/gnome-terminal/gnome-terminal.info
index e9dce86924..e28f430da0 100644
--- a/system/gnome-terminal/gnome-terminal.info
+++ b/system/gnome-terminal/gnome-terminal.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://ftp.gnome.org/pub/gnome/sources/gnome-terminal/2.32/gnome-term
MD5SUM="cb7843b97a78a3bbaac9381f78bb8569"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="libgnome rarian"
+REQUIRES="libgnome rarian vte2"
MAINTAINER="Thorn Inurcide"
EMAIL="thorn-inurcide@hotmail.com"
diff --git a/system/gnome-vfs/gnome-vfs.SlackBuild b/system/gnome-vfs/gnome-vfs.SlackBuild
index 2a2e087339..7d8a3dfb57 100644
--- a/system/gnome-vfs/gnome-vfs.SlackBuild
+++ b/system/gnome-vfs/gnome-vfs.SlackBuild
@@ -72,6 +72,8 @@ find -L . \
# Fix for the newer glib
sed -i "/-DG_DISABLE_DEPRECATED/d" */Makefile.*
+LIBS="-L/usr/lib$LIBDIRSUFFIX/openssl-1.0" \
+CPPFLAGS="-I/usr/include/openssl-1.0" \
CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
diff --git a/system/guake/guake.info b/system/guake/guake.info
index 4318250bec..1aa4c2f63a 100644
--- a/system/guake/guake.info
+++ b/system/guake/guake.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://github.com/Guake/guake/archive/0.8.14/guake-0.8.14.tar.gz"
MD5SUM="a0155a28c4417d3c6200afbdebe2c306"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="pyxdg python-keybinder gnome-python2-gconf gnome-common"
+REQUIRES="pyxdg python-keybinder gnome-python2-gconf gnome-common vte2"
MAINTAINER="Donald Cooley"
EMAIL="chytraeu@sdf.org"
diff --git a/system/guefi/README b/system/guefi/README
new file mode 100644
index 0000000000..63caa688ed
--- /dev/null
+++ b/system/guefi/README
@@ -0,0 +1,3 @@
+GUEFI is a Python/GTK+3 application that acts as a frontend for
+efibootmgr. It provides an easy to use interface for managing
+UEFI boot options.
diff --git a/python/idna/idna.SlackBuild b/system/guefi/guefi.SlackBuild
index fce3d8cdf5..a515d4ceb6 100644
--- a/python/idna/idna.SlackBuild
+++ b/system/guefi/guefi.SlackBuild
@@ -1,8 +1,8 @@
#!/bin/sh
-# Slackware build script for idna
+# Slackware build script for guefi
-# Copyright 2015-2018 Markus Reichelt, Aachen, DE
+# Copyright 2017 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,8 +22,8 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-PRGNAM=idna
-VERSION=${VERSION:-2.6}
+PRGNAM=guefi
+VERSION=${VERSION:-0.1.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -54,13 +54,15 @@ else
LIBDIRSUFFIX=""
fi
+DOCS="AUTHORS COPYING README.md"
+
set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz || tar xvf $CWD/$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
@@ -69,17 +71,17 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-python setup.py install --root=$PKG
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+make prefix=/usr
-if $(python3 -c 'import sys' 2>/dev/null); then
- python3 setup.py install --root=$PKG
-fi
+make install DESTDIR=$PKG
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a *.rst $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/system/guefi/guefi.info b/system/guefi/guefi.info
new file mode 100644
index 0000000000..b91af7b998
--- /dev/null
+++ b/system/guefi/guefi.info
@@ -0,0 +1,10 @@
+PRGNAM="guefi"
+VERSION="0.1.3"
+HOMEPAGE="https://github.com/gapan/guefi"
+DOWNLOAD="https://github.com/gapan/guefi/archive/0.1.3.tar.gz"
+MD5SUM="08355512dd019d93f8809c66fb00132b"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Matteo Bernardini"
+EMAIL="ponce@slackbuilds.org"
diff --git a/libraries/pcre2/slack-desc b/system/guefi/slack-desc
index 5eaf0e0af3..e0df51a295 100644
--- a/libraries/pcre2/slack-desc
+++ b/system/guefi/slack-desc
@@ -6,14 +6,14 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-pcre2: pcre2 (Perl 5-style regular expressions. 2nd version)
-pcre2:
-pcre2: PCRE2 is a re-working of the original PCRE library to provide an
-pcre2: entirely new API.
-pcre2:
-pcre2: Homepage: http://www.pcre.org/
-pcre2:
-pcre2:
-pcre2:
-pcre2:
-pcre2:
+guefi: guefi (GTK+3 frontend for efibootmgr)
+guefi:
+guefi: GUEFI is a Python/GTK+3 application that acts as a frontend for
+guefi: efibootmgr. It provides an easy to use interface for managing
+guefi: UEFI boot options.
+guefi:
+guefi: homepage: https://github.com/gapan/guefi
+guefi:
+guefi:
+guefi:
+guefi:
diff --git a/system/haveged/README b/system/haveged/README
deleted file mode 100644
index 187b3bdda9..0000000000
--- a/system/haveged/README
+++ /dev/null
@@ -1,27 +0,0 @@
-haveged (a simple entropy-gathering daemon)
-
-The haveged project is an attempt to provide an easy-to-use, unpredictable
-random number generator based upon an adaptation of the HAVEGE algorithm.
-Haveged was created to remedy low-entropy conditions in the Linux random
-device that can occur under some workloads, especially on headless servers.
-
-The HAVEGE algorithm is based upon the indirect effects of unrelated hardware
-events on the instruction timing of a calculation that is sensitive to
-processor features such as branch predictors and instruction/data access
-mechanisms.
-Samples from a high-resolution timer are input into the algorithm to
-produce a stream of random data in a collection buffer. The contents of this
-buffer can be fed into the random device or accessed directly through the
-file system. File system access is a useful alternative to those situations
-where use of the random device is either inappropriate or not available.
-
-Add the following snippet to your /etc/rc.d/rc.M to start up haveged at boot:
-
-# Starting HAVEGED entropy daemon
-if [ -x /etc/rc.d/rc.haveged ]; then
- /etc/rc.d/rc.haveged start
-fi
-
-You can see how many bits of entropy are available to the system by reading
-the /proc/sys/kernel/random/entropy_avail file, and check the size of your
-entropy pool at /proc/sys/kernel/random/poolsize.
diff --git a/system/haveged/doinst.sh b/system/haveged/doinst.sh
deleted file mode 100644
index b9e90c8608..0000000000
--- a/system/haveged/doinst.sh
+++ /dev/null
@@ -1,28 +0,0 @@
-config() {
- for infile in $1; do
- NEW="$infile"
- 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...
- done
-}
-
-preserve_perms() {
- NEW="$1"
- OLD="$(dirname $NEW)/$(basename $NEW .new)"
- if [ -e $OLD ]; then
- cp -a $OLD ${NEW}.incoming
- cat $NEW > ${NEW}.incoming
- mv ${NEW}.incoming $NEW
- fi
- config $NEW
-}
-
-preserve_perms etc/rc.d/rc.haveged.new
-
diff --git a/system/haveged/haveged.SlackBuild b/system/haveged/haveged.SlackBuild
deleted file mode 100644
index 0d5e97f692..0000000000
--- a/system/haveged/haveged.SlackBuild
+++ /dev/null
@@ -1,121 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for haveged
-
-# Copyright 2018 Erik Falor, Logan, Utah, 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.
-
-# Modified by Nikos Giotis 20170903, Athens, GR
-# Use static building
-# Changed install target to /sbin, /lib[64]
-# Added check for existing installation due to problems when rebuilding
-# produces binary that segfaults if any previous installation is there
-
-PRGNAM=haveged
-VERSION=${VERSION:-1.9.2}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-# Try to detect any previous installations and bail out if true
-if [ -f "/usr/lib$LIBDIRSUFFIX/libhavege.so" -o \
- -f "/usr/lib$LIBDIRSUFFIX/libhavege.a" -o \
- -f "/lib$LIBDIRSUFFIX/libhavege.so" -o \
- -f "/lib$LIBDIRSUFFIX/libhavege.a" ]; then
- echo 'Detected libhaveged!' >&2
- echo 'Please remove libhaveged before building a new one.' >&2
- exit 1
-fi
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-# Static build for easier inclusion in initrd
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-LDFLAGS="-static" \
-./configure \
- --prefix=/usr \
- --sbindir=/sbin \
- --libdir=/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --build=$ARCH-slackware-linux
-
-make
-make install-strip DESTDIR=$PKG
-
-rm -rf $PKG/etc/init.d
-install -D -m0755 -oroot -groot $CWD/rc.haveged $PKG/etc/rc.d/rc.haveged.new
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS COPYING ChangeLog INSTALL README \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-cat $CWD/doinst.sh > $PKG/install/doinst.sh
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/system/haveged/haveged.info b/system/haveged/haveged.info
deleted file mode 100644
index ea62f1b72e..0000000000
--- a/system/haveged/haveged.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="haveged"
-VERSION="1.9.2"
-HOMEPAGE="http://www.issihosts.com/haveged/index.html"
-DOWNLOAD="http://www.issihosts.com/haveged/haveged-1.9.2.tar.gz"
-MD5SUM="fb1d8b3dcbb9d06b30eccd8aa500fd31"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Erik Falor"
-EMAIL="ewfalor@gmail.com"
diff --git a/system/haveged/rc.haveged b/system/haveged/rc.haveged
deleted file mode 100644
index 404d9ca800..0000000000
--- a/system/haveged/rc.haveged
+++ /dev/null
@@ -1,47 +0,0 @@
-#!/bin/sh
-# Start/stop/restart haveged.
-
-PIDFILE=/var/run/haveged.pid
-HAVEGED_OPTS="-w 1024 -v 1 -p $PIDFILE"
-
-# Start haveged:
-haveged_start() {
- if [ -f $PIDFILE ]; then
- echo "HAVEGE daemon is already running as PID $(cat $PIDFILE) " >&2
- exit 3
- elif [ -x /sbin/haveged ]; then
- echo "Starting HAVEGE daemon: /sbin/haveged"
- /sbin/haveged $HAVEGED_OPTS
- fi
-}
-
-# Stop haveged:
-haveged_stop() {
- if [ -r /var/run/haveged.pid ]; then
- kill $(cat /var/run/haveged.pid)
- else
- killall haveged
- fi
-}
-
-# Restart haveged:
-haveged_restart() {
- haveged_stop
- sleep 1
- haveged_start
-}
-
-case "$1" in
-'start')
- haveged_start
- ;;
-'stop')
- haveged_stop
- ;;
-'restart')
- haveged_restart
- ;;
-*)
- echo "usage $0 start|stop|restart"
- exit 2
-esac
diff --git a/system/haveged/slack-desc b/system/haveged/slack-desc
deleted file mode 100644
index 55d8f9ed50..0000000000
--- a/system/haveged/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-haveged: haveged (A simple entropy daemon)
-haveged:
-haveged: The haveged project is an attempt to provide an easy-to-use,
-haveged: unpredictable random number generator based upon an adaptation of the
-haveged: HAVEGE algorithm. Haveged was created to remedy low-entropy
-haveged: conditions in the Linux random device that can occur under some
-haveged: workloads, especially on headless servers.
-haveged:
-haveged:
-haveged:
-haveged:
diff --git a/system/innotop/README b/system/innotop/README
deleted file mode 100644
index 91cdb498ac..0000000000
--- a/system/innotop/README
+++ /dev/null
@@ -1,6 +0,0 @@
-MySQL and InnoDB transaction/status monitor. Like 'top' for MySQL.
-
-Displays queries, InnoDB transactions, lock waits, deadlocks, foreign key
-errors, open tables, replication status, buffer information, row
-operations, logs, I/O operations, load graph, and more.
-You can monitor many servers at once with innotop.
diff --git a/system/innotop/innotop.SlackBuild b/system/innotop/innotop.SlackBuild
deleted file mode 100644
index feebb18fe5..0000000000
--- a/system/innotop/innotop.SlackBuild
+++ /dev/null
@@ -1,74 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for innotop
-
-# Copyright 2010-2013 Heinz Wiesinger, Amsterdam, The Netherlands
-# 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.
-
-PRGNAM=innotop
-VERSION=${VERSION:-1.9.1}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-ARCH="noarch"
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-perl Makefile.PL INSTALLDIRS=vendor
-make
-make test
-make install DESTDIR=$PKG
-
-#Move man-pages to appropriate place
-mv $PKG/usr/share/man $PKG/usr/
-
-find $PKG -name perllocal.pod -o -name ".packlist" -o -name "*.bs" | xargs rm -f || true
-find $PKG -depth -type d -empty -exec rm -rf {} \;
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a Changelog COPYING INSTALL MANIFEST \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/system/innotop/innotop.info b/system/innotop/innotop.info
deleted file mode 100644
index 5db755263b..0000000000
--- a/system/innotop/innotop.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="innotop"
-VERSION="1.9.1"
-HOMEPAGE="https://github.com/innotop/innotop"
-DOWNLOAD="https://distfiles.macports.org/innotop/innotop-1.9.1.tar.gz"
-MD5SUM="7979b7a074e43fe1f0d032034e234bac"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Heinz Wiesinger"
-EMAIL="pprkut@liwjatan.at"
diff --git a/system/innotop/slack-desc b/system/innotop/slack-desc
deleted file mode 100644
index 889a1b9c46..0000000000
--- a/system/innotop/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-innotop: innotop (MySQL / InnoDB monitor application)
-innotop:
-innotop: MySQL and InnoDB transaction/status monitor. Like 'top' for MySQL.
-innotop: Displays queries, InnoDB transactions, lock waits, deadlocks, foreign
-innotop: key errors, open tables, replication status, buffer information, row
-innotop: operations, logs, I/O operations, load graph, and more.
-innotop: You can monitor many servers at once with innotop.
-innotop:
-innotop: Homepage: https://github.com/innotop/innotop
-innotop:
-innotop:
diff --git a/system/ipmitool/ipmitool.SlackBuild b/system/ipmitool/ipmitool.SlackBuild
index b632d54ce8..595e05539b 100644
--- a/system/ipmitool/ipmitool.SlackBuild
+++ b/system/ipmitool/ipmitool.SlackBuild
@@ -9,15 +9,16 @@
# Based on http://slackbuilds.org/template.SlackBuild
# Modified by Mario Preksavec <mario@slackware.hr>
+# Modified by the SlackBuilds.org project
PRGNAM=ipmitool
-VERSION=${VERSION:-1.8.13}
+VERSION=${VERSION:-1.8.18}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -28,8 +29,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -52,10 +53,13 @@ tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+# patch from fedora to support openssl-1.1.x
+patch -p1 < $CWD/openssl-1.1.x.patch
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
@@ -70,13 +74,11 @@ CXXFLAGS="$SLKCFLAGS" \
make
make install DESTDIR=$PKG
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-( cd $PKG/usr/man
- find . -type f -exec gzip -9 {} \;
- for i in $( find . -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-)
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
mkdir -p $PKG/usr/doc
mv $PKG/usr/share/doc/$PRGNAM $PKG/usr/doc/$PRGNAM-$VERSION
diff --git a/system/ipmitool/ipmitool.info b/system/ipmitool/ipmitool.info
index db17f3f7d4..3304a70819 100644
--- a/system/ipmitool/ipmitool.info
+++ b/system/ipmitool/ipmitool.info
@@ -1,8 +1,8 @@
PRGNAM="ipmitool"
-VERSION="1.8.13"
+VERSION="1.8.18"
HOMEPAGE="http://ipmitool.sourceforge.net/"
-DOWNLOAD="http://downloads.sourceforge.net/project/ipmitool/ipmitool/1.8.13/ipmitool-1.8.13.tar.gz"
-MD5SUM="c1107597848bd0a8be05c179e6f66b62"
+DOWNLOAD="http://downloads.sourceforge.net/ipmitool/ipmitool-1.8.18.tar.gz"
+MD5SUM="55304c6c5b994784222d3944d086fa30"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/system/ipmitool/openssl-1.1.x.patch b/system/ipmitool/openssl-1.1.x.patch
new file mode 100644
index 0000000000..ff5e7051bf
--- /dev/null
+++ b/system/ipmitool/openssl-1.1.x.patch
@@ -0,0 +1,89 @@
+diff -urNp old/src/plugins/lanplus/lanplus_crypt_impl.c new/src/plugins/lanplus/lanplus_crypt_impl.c
+--- old/src/plugins/lanplus/lanplus_crypt_impl.c 2016-05-28 10:20:20.000000000 +0200
++++ new/src/plugins/lanplus/lanplus_crypt_impl.c 2017-02-21 10:50:21.634873466 +0100
+@@ -164,10 +164,10 @@ lanplus_encrypt_aes_cbc_128(const uint8_
+ uint8_t * output,
+ uint32_t * bytes_written)
+ {
+- EVP_CIPHER_CTX ctx;
+- EVP_CIPHER_CTX_init(&ctx);
+- EVP_EncryptInit_ex(&ctx, EVP_aes_128_cbc(), NULL, key, iv);
+- EVP_CIPHER_CTX_set_padding(&ctx, 0);
++ EVP_CIPHER_CTX *ctx = EVP_CIPHER_CTX_new();
++ EVP_CIPHER_CTX_init(ctx);
++ EVP_EncryptInit_ex(ctx, EVP_aes_128_cbc(), NULL, key, iv);
++ EVP_CIPHER_CTX_set_padding(ctx, 0);
+
+
+ *bytes_written = 0;
+@@ -191,7 +191,7 @@ lanplus_encrypt_aes_cbc_128(const uint8_
+ assert((input_length % IPMI_CRYPT_AES_CBC_128_BLOCK_SIZE) == 0);
+
+
+- if(!EVP_EncryptUpdate(&ctx, output, (int *)bytes_written, input, input_length))
++ if(!EVP_EncryptUpdate(ctx, output, (int *)bytes_written, input, input_length))
+ {
+ /* Error */
+ *bytes_written = 0;
+@@ -201,7 +201,7 @@ lanplus_encrypt_aes_cbc_128(const uint8_
+ {
+ uint32_t tmplen;
+
+- if(!EVP_EncryptFinal_ex(&ctx, output + *bytes_written, (int *)&tmplen))
++ if(!EVP_EncryptFinal_ex(ctx, output + *bytes_written, (int *)&tmplen))
+ {
+ *bytes_written = 0;
+ return; /* Error */
+@@ -210,7 +210,8 @@ lanplus_encrypt_aes_cbc_128(const uint8_
+ {
+ /* Success */
+ *bytes_written += tmplen;
+- EVP_CIPHER_CTX_cleanup(&ctx);
++ EVP_CIPHER_CTX_cleanup(ctx);
++ EVP_CIPHER_CTX_free(ctx);
+ }
+ }
+ }
+@@ -239,10 +240,10 @@ lanplus_decrypt_aes_cbc_128(const uint8_
+ uint8_t * output,
+ uint32_t * bytes_written)
+ {
+- EVP_CIPHER_CTX ctx;
+- EVP_CIPHER_CTX_init(&ctx);
+- EVP_DecryptInit_ex(&ctx, EVP_aes_128_cbc(), NULL, key, iv);
+- EVP_CIPHER_CTX_set_padding(&ctx, 0);
++ EVP_CIPHER_CTX *ctx = EVP_CIPHER_CTX_new();
++ EVP_CIPHER_CTX_init(ctx);
++ EVP_DecryptInit_ex(ctx, EVP_aes_128_cbc(), NULL, key, iv);
++ EVP_CIPHER_CTX_set_padding(ctx, 0);
+
+
+ if (verbose >= 5)
+@@ -266,7 +267,7 @@ lanplus_decrypt_aes_cbc_128(const uint8_
+ assert((input_length % IPMI_CRYPT_AES_CBC_128_BLOCK_SIZE) == 0);
+
+
+- if (!EVP_DecryptUpdate(&ctx, output, (int *)bytes_written, input, input_length))
++ if (!EVP_DecryptUpdate(ctx, output, (int *)bytes_written, input, input_length))
+ {
+ /* Error */
+ lprintf(LOG_DEBUG, "ERROR: decrypt update failed");
+@@ -277,7 +278,7 @@ lanplus_decrypt_aes_cbc_128(const uint8_
+ {
+ uint32_t tmplen;
+
+- if (!EVP_DecryptFinal_ex(&ctx, output + *bytes_written, (int *)&tmplen))
++ if (!EVP_DecryptFinal_ex(ctx, output + *bytes_written, (int *)&tmplen))
+ {
+ char buffer[1000];
+ ERR_error_string(ERR_get_error(), buffer);
+@@ -290,7 +291,8 @@ lanplus_decrypt_aes_cbc_128(const uint8_
+ {
+ /* Success */
+ *bytes_written += tmplen;
+- EVP_CIPHER_CTX_cleanup(&ctx);
++ EVP_CIPHER_CTX_cleanup(ctx);
++ EVP_CIPHER_CTX_free(ctx);
+ }
+ }
+
diff --git a/system/jmtpfs/README b/system/jmtpfs/README
deleted file mode 100644
index d43b1a7ac3..0000000000
--- a/system/jmtpfs/README
+++ /dev/null
@@ -1,10 +0,0 @@
-jmtpfs is a FUSE and libmtp based filesystem for accessing MTP
-(Media Transfer Protocol) devices. It was specifically designed
-for exchaning files between Linux (and Mac OS X) systems and
-newer Android devices that support MTP but not USB Mass Storage.
-
-The goal is to create a well behaved filesystem, allowing tools
-like find and rsync to work as expected. MTP file types are set
-automatically based on file type detection using libmagic.
-Setting the file appears to be necessary for some Android apps,
-like Gallery, to be able to find and use the files.
diff --git a/system/jmtpfs/jmtpfs.SlackBuild b/system/jmtpfs/jmtpfs.SlackBuild
deleted file mode 100644
index 545efff32e..0000000000
--- a/system/jmtpfs/jmtpfs.SlackBuild
+++ /dev/null
@@ -1,91 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for jmtpfs
-
-# Copyright 2015 Andre Barboza, Belo Horizonte, Minas Gerais, Brazil
-# 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.
-
-PRGNAM=jmtpfs
-VERSION=${VERSION:-0.5}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i486 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/v$VERSION.tar.gz || tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-CXXFLAGS="$SLKCFLAGS -lpthread" \
-./configure \
- --prefix=/usr \
- --build=$ARCH-slackware-linux
-
-make
-make install DESTDIR=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS COPYING INSTALL NEWS README $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/system/jmtpfs/jmtpfs.info b/system/jmtpfs/jmtpfs.info
deleted file mode 100644
index 897c93dc9f..0000000000
--- a/system/jmtpfs/jmtpfs.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="jmtpfs"
-VERSION="0.5"
-HOMEPAGE="https://github.com/JasonFerrara/jmtpfs"
-DOWNLOAD="https://github.com/JasonFerrara/jmtpfs/archive/v0.5.tar.gz"
-MD5SUM="501e51530d3c04d63e9ac96d794bf5c5"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Andre Barboza"
-EMAIL="bmg.andre@gmail.com"
diff --git a/system/jmtpfs/slack-desc b/system/jmtpfs/slack-desc
deleted file mode 100644
index 7fab708cd9..0000000000
--- a/system/jmtpfs/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-jmtpfs: jmtpfs (FUSE and libmtp based filesystem for accessing MTP)
-jmtpfs:
-jmtpfs: jmtpfs is a FUSE and libmtp based filesystem for accessing MTP
-jmtpfs: (Media Transfer Protocol) devices. It was specifically designed
-jmtpfs: for exchaning files between Linux (and Mac OS X) systems and
-jmtpfs: newer Android devices that support MTP but not USB Mass
-jmtpfs: Storage.
-jmtpfs:
-jmtpfs:
-jmtpfs:
-jmtpfs: https://github.com/JasonFerrara/jmtpfs
diff --git a/system/kyotocabinet/kyotocabinet-1.2.76-gcc6.patch b/system/kyotocabinet/kyotocabinet-1.2.76-gcc6.patch
new file mode 100644
index 0000000000..d565cff0f3
--- /dev/null
+++ b/system/kyotocabinet/kyotocabinet-1.2.76-gcc6.patch
@@ -0,0 +1,45 @@
+Patch from Andreas Stührk <andy@hammerhartes.de> to work around build
+failures with GCC >= 6 like:
+
+In file included from kcdbext.cc:16:0:
+kcdbext.h: In member function 'char* kyotocabinet::IndexDB::get(const char*, size_t, size_t*)':
+kcdbext.h:1281:14: error: cannot convert 'bool' to 'char*' in return
+ return false;
+ ^~~~~
+In file included from kclangc.cc:17:0:
+kcdbext.h: In member function 'char* kyotocabinet::IndexDB::get(const char*, size_t, size_t*)':
+kcdbext.h:1281:14: error: cannot convert 'bool' to 'char*' in return
+ return false;
+ ^~~~~
+
+Note that using '\0' rather nullptr (like the patch from openSUSE is
+doing) just leads to new build failures with GCC >= 7 like:
+
+In file included from kcdbext.cc:16:0:
+kcdbext.h: In member function 'char* kyotocabinet::IndexDB::get(const char*, size_t, size_t*)':
+kcdbext.h:1281:14: error: invalid conversion from 'char' to 'char*' [-fpermissive]
+ return '\0';
+ ^~~~
+In file included from kclangc.cc:17:0:
+kcdbext.h: In member function 'char* kyotocabinet::IndexDB::get(const char*, size_t, size_t*)':
+kcdbext.h:1281:14: error: invalid conversion from 'char' to 'char*' [-fpermissive]
+ return '\0';
+ ^~~~
+
+See also:
+
+ - https://bugzilla.redhat.com/show_bug.cgi?id=1307706
+ - https://build.opensuse.org/package/view_file/devel:libraries:c_c++/kyotocabinet/gcc6-fix-errors.patch?expand=1
+ - https://bugs.debian.org/811627
+
+--- kyotocabinet-1.2.76/kcdbext.h 2016-05-25 11:32:53.591866016 +0200
++++ kyotocabinet-1.2.76/kcdbext.h 2012-05-24 18:27:59.000000000 +0200
+@@ -1278,7 +1278,7 @@
+ if (omode_ == 0) {
+ set_error(_KCCODELINE_, BasicDB::Error::INVALID, "not opened");
+ *sp = 0;
+- return false;
++ return nullptr;
+ }
+ if (!cache_) return db_.get(kbuf, ksiz, sp);
+ size_t dvsiz = 0;
diff --git a/system/kyotocabinet/kyotocabinet.SlackBuild b/system/kyotocabinet/kyotocabinet.SlackBuild
index 6cb8823a5a..5efbfdb944 100644
--- a/system/kyotocabinet/kyotocabinet.SlackBuild
+++ b/system/kyotocabinet/kyotocabinet.SlackBuild
@@ -1,7 +1,7 @@
#!/bin/sh
# Slackware build script for kyotocabinet
-# Copyright 2013 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
+# Copyright 2013-2017 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -69,6 +69,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+# Patch for gcc >= 6.x - thanks to opensuse
+patch -p1 < $CWD/kyotocabinet-1.2.76-gcc6.patch
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
diff --git a/system/lbzip2/README b/system/lbzip2/README
deleted file mode 100644
index 2092f0ebfb..0000000000
--- a/system/lbzip2/README
+++ /dev/null
@@ -1,2 +0,0 @@
-lbzip2 is a multi-threaded bzip2/bunzip2 filter that doesn't depend on the
-lseek() system call and so isn't restricted to regular files.
diff --git a/system/lbzip2/lbzip2.SlackBuild b/system/lbzip2/lbzip2.SlackBuild
deleted file mode 100644
index 801213a810..0000000000
--- a/system/lbzip2/lbzip2.SlackBuild
+++ /dev/null
@@ -1,121 +0,0 @@
-#!/bin/sh
-#
-# Slackware build script for lbzip2
-#
-# Copyright 2009-2010 Erik W. Hanson, Minneapolis, 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.
-
-# Modified by B. Watson <yalhcru@gmail.com>.
-
-# 20170302 bkw: use long-format github URL
-
-# 20150519 bkw:
-# - took over maintenance
-# - bump VERSION to 2.5
-# - add gnulib dependency
-# - make VERSION respect environment
-# - clean up slack-desc
-
-PRGNAM=lbzip2
-VERSION=${VERSION:-2.5}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -eu
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
-
-# Upstream says automake-1.14 is required, but our
-# 1.11.5 works fine if we change the version check.
-sed -i '/^AM_INIT_AUTOMAKE/s,1\.14,1.11.5,' configure.ac
-
-sh build-aux/autogen.sh
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --build=$ARCH-slackware-linux
-
-make
-make install-strip DESTDIR=$PKG
-
-gzip $PKG/usr/man/man1/$PRGNAM.1
-
-# The other man pages just source lbzip2.1. Make them
-# symlinks instead (easier to deal with).
-for i in lbunzip2 lbzcat; do
- rm -f $PKG/usr/man/man1/$i.1
- ln -s $PRGNAM.1.gz $PKG/usr/man/man1/$i.1.gz
-done
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a ALGORITHM AUTHORS COPYING ChangeLog* NEWS README THANKS \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/system/lbzip2/lbzip2.info b/system/lbzip2/lbzip2.info
deleted file mode 100644
index c1ccd5d21a..0000000000
--- a/system/lbzip2/lbzip2.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="lbzip2"
-VERSION="2.5"
-HOMEPAGE="https://github.com/kjn/lbzip2/"
-DOWNLOAD="https://github.com/kjn/lbzip2/archive/v2.5/lbzip2-2.5.tar.gz"
-MD5SUM="288e404f325d9073bdc80759cae30adc"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="gnulib"
-MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
diff --git a/system/lbzip2/slack-desc b/system/lbzip2/slack-desc
deleted file mode 100644
index fb3286dd7e..0000000000
--- a/system/lbzip2/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-lbzip2: lbzip2 (a pthreads-based parallel bzip2/bunzip2)
-lbzip2:
-lbzip2: Lbzip2 is a Pthreads-based parallel bzip2/bunzip2 filter passable to
-lbzip2: GNU tar with the --use-compress-program option. It isn't restricted
-lbzip2: to regular files on input, nor output.
-lbzip2:
-lbzip2:
-lbzip2:
-lbzip2:
-lbzip2:
-lbzip2:
diff --git a/system/lilyterm/lilyterm.SlackBuild b/system/lilyterm/lilyterm.SlackBuild
index 6d4a4a5835..b5bc2dfe1e 100644
--- a/system/lilyterm/lilyterm.SlackBuild
+++ b/system/lilyterm/lilyterm.SlackBuild
@@ -23,7 +23,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=lilyterm
-VERSION=${VERSION:-0.9.9.2}
+VERSION=${VERSION:-0.9.9.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
diff --git a/system/lilyterm/lilyterm.info b/system/lilyterm/lilyterm.info
index 18760fdefe..c7f00b5797 100644
--- a/system/lilyterm/lilyterm.info
+++ b/system/lilyterm/lilyterm.info
@@ -1,10 +1,10 @@
PRGNAM="lilyterm"
-VERSION="0.9.9.2"
+VERSION="0.9.9.4"
HOMEPAGE="https://lilyterm.luna.com.tw/index.html"
-DOWNLOAD="https://lilyterm.luna.com.tw/file/lilyterm-0.9.9.2.tar.gz"
-MD5SUM="d68dd29ce4894f765adba1efd470f90e"
+DOWNLOAD="https://lilyterm.luna.com.tw/file/lilyterm-0.9.9.4.tar.gz"
+MD5SUM="3bbfd4037d45a16b1b45846ce51d100a"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES=""
+REQUIRES="vte2"
MAINTAINER="Emil Torofiev"
EMAIL="etorofiev@gmail.com"
diff --git a/system/lxterminal/lxterminal.info b/system/lxterminal/lxterminal.info
index 8f5130af46..bd782fb65f 100644
--- a/system/lxterminal/lxterminal.info
+++ b/system/lxterminal/lxterminal.info
@@ -5,6 +5,6 @@ DOWNLOAD="http://downloads.sourceforge.net/lxde/lxterminal-0.3.2.tar.xz"
MD5SUM="62e57c3aafb831505cc1638b2b737cc9"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES=""
+REQUIRES="vte2"
MAINTAINER="Matteo Bernardini"
EMAIL="ponce@slackbuilds.org"
diff --git a/system/mailutils/mailutils.SlackBuild b/system/mailutils/mailutils.SlackBuild
index ed960ad4a8..aa5f9ee507 100644
--- a/system/mailutils/mailutils.SlackBuild
+++ b/system/mailutils/mailutils.SlackBuild
@@ -23,7 +23,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=mailutils
-VERSION=${VERSION:-3.4}
+VERSION=${VERSION:-20180816_13ddc90}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -63,6 +63,7 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
+./bootstrap --skip-po
./configure \
DEFAULT_CUPS_CONFDIR=/etc/cups \
--prefix=/usr \
@@ -73,8 +74,8 @@ cd $PRGNAM-$VERSION
--localstatedir=/var/lib \
--with-guile-site-dir
-make
-make install DESTDIR=$PKG
+make -j1
+make -j1 install DESTDIR=$PKG
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
diff --git a/system/mailutils/mailutils.info b/system/mailutils/mailutils.info
index 7203f933cd..9632a57e34 100644
--- a/system/mailutils/mailutils.info
+++ b/system/mailutils/mailutils.info
@@ -1,8 +1,8 @@
PRGNAM="mailutils"
-VERSION="3.4"
+VERSION="20180816_13ddc90"
HOMEPAGE="http://mailutils.org"
-DOWNLOAD="https://ftp.gnu.org/gnu/mailutils/mailutils-3.4.tar.gz"
-MD5SUM="3d31bb94fe00236a5c32f34d4ed4b49d"
+DOWNLOAD="http://ponce.cc/slackware/sources/repo/mailutils-20180816_13ddc90.tar.gz"
+MD5SUM="6e3644947a7acf9e6781f303a98eb6ab"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="libgsasl %README%"
diff --git a/system/man-db/README b/system/man-db/README
deleted file mode 100644
index 1e48863b3a..0000000000
--- a/system/man-db/README
+++ /dev/null
@@ -1,13 +0,0 @@
-man-db (database-driven manual pager suite)
-
-This package provides the man command and related utilities for examining
-on-line help files (manual pages). It can act as a replacement for
-Slackware's man package. It has several enhancements over man, including
-an indexed database for searches with -k or apropos, the ability to
-easily view man pages in a browser, better i18n support, and a much more
-efficient implementation of the -K (full text search) option.
-
-This build includes a complete install of libpipeline.
-
-By default, man-db doesn't conflict with Slackware's man package. See
-README.Slackware for details.
diff --git a/system/man-db/README.Slackware b/system/man-db/README.Slackware
deleted file mode 100644
index 165e9dfa4c..0000000000
--- a/system/man-db/README.Slackware
+++ /dev/null
@@ -1,49 +0,0 @@
-By default, man-db can be installed alongside Slackware's man package
-without conflict, as it installs its binaries and man pages into
-/opt/man-db. After installation, either log out and back in, or source
-/etc/profile.d/man-db.sh in your shell (this adjusts $PATH so the man
-command from /opt/man-db will be found first).
-
-Alternately, man-db can be built as a replacement for Slackware's
-man package. To do this, set USR=yes in the script's environment,
-and "removepkg man" before installing man-db. No profile scripts are
-installed in this case.
-
-When installing man-db, the doinst.sh script may take several minutes to
-run. This is because it's indexing all the man pages on the system. Also,
-a cron job is installed in /etc/cron.daily, which adds newly-installed
-man pages to the database. The index speeds up searching via "man -k"
-or "apropos". The disadvantage is that newly-installed man pages won't
-be found in these searches until the database has been updated, so any
-time you install new man pages, you'll want to run "mandb" as root, or
-wait for cron to do it for you (if you don't do this, the new pages can
-still be displayed, they just won't be searchable). The indexing runs
-quickly once the initial database has been created, so the cron job or
-manual update shouldn't bring your system to its knees.
-
-The database is located in /var/cache/man, and on a full Slackware install
-will be approximately 5MB in size. During index creation, approximately
-10MB in /var is used. If you decide to removepkg man-db, you'll probably
-also want to get rid of its database with "rm -rf /var/cache/man". If
-the database gets corrupted somehow, it can be regenerated from scratch
-by running "mandb -c" or just reinstalling the man-db package.
-
-Although man-db supports caching formatted pages ("cat" pages), it's
-disabled in this build, to make man-db behave more like Slackware's man
-(which supports caching, but it's disabled). On modern (and even 10+
-year old) systems, the small amount of extra time it takes to format
-a man page every time it's viewed is probably not worth the headaches
-caused by stale cat pages.
-
-Unlike some distro packages of man-db, this build doesn't install man or
-mandb setuid. This prevents caching cat pages from working (see above),
-and prevents man from automatically adding new man pages to the database
-the first time a user views them (they will be indexed by the cron job,
-or by root manually running "mandb", if you're impatient).
-
-A word about i18n support: the whole reason I packaged man-db is because
-Slackware's man can't handle Japanese man pages, and I couldn't come
-up with a way to make them work after several hours of research and
-man.conf editing. With man-db, they Just Work, with LANG=ja_JP.UTF-8
-(now all I have to do is learn to read Japanese). In general, UTF-8
-locales are preferred for man-db, although non-UTF-8 is also supported.
diff --git a/system/man-db/doinst.sh b/system/man-db/doinst.sh
deleted file mode 100644
index cb474322c8..0000000000
--- a/system/man-db/doinst.sh
+++ /dev/null
@@ -1,48 +0,0 @@
-
-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...
-}
-
-config etc/man_db.conf.new
-
-# In English, the if/find below means "only run the database creation if
-# it was last done over an hour ago". This is needed because upgradepkg
-# runs doinst.sh twice, but I don't want the 10+ minute long database
-# creation to happen twice on upgrade (or at all, when I'm repeatedly
-# reinstalling man-db for testing purposes).
-
-if \
- [ ! -e /var/cache/man/man-db ] || \
- [ -n "$( find var/cache/man/ -type d -a -name man-db -a -mmin +60 )" ]
-then
-# Generate the initial man database (or rebuild it if it exists).
-# We want to skip this step if installing somewhere besides / (e.g. with
-# the -root option or ROOT env variable set for installpkg), hence the
-# readlink silliness.
-
-# The -c option means it blows away any existing db. I thought about
-# leaving it off (it will still create the db if it doesn't exist),
-# but decided it's better to build it fresh if the package gets
-# reinstalled (in case the db format has changed, or in case the
-# db is corrupted and the user is trying to fix it by reinstalling
-# this package).
-
-# the 2>/dev/null was added for 2.7.6 because it complains about
-# missing CACHEDIR.TAG files... which don't matter, because we've
-# got NOCACHE in the config file.
- ( \
- [ -x /bin/readlink ] && \
- [ "$( /bin/readlink -f $( pwd ) )" = "/" ] && \
- ( [ -x /opt/man-db/bin/mandb ] && /opt/man-db/bin/mandb -c -q ) || \
- ( [ -x /usr/bin/mandb ] && /usr/bin/mandb -c -q ) \
- ) 2>/dev/null
-fi
diff --git a/system/man-db/dont_write_in_usr.diff b/system/man-db/dont_write_in_usr.diff
deleted file mode 100644
index 8f71585981..0000000000
--- a/system/man-db/dont_write_in_usr.diff
+++ /dev/null
@@ -1,50 +0,0 @@
-diff -Naur man-db-2.7.6.1/configure man-db-2.7.6.1.patched/configure
---- man-db-2.7.6.1/configure 2016-12-12 07:43:48.000000000 -0500
-+++ man-db-2.7.6.1.patched/configure 2017-03-04 16:49:57.389893574 -0500
-@@ -25809,46 +25809,8 @@
-
-
-
--{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for long file names" >&5
--$as_echo_n "checking for long file names... " >&6; }
--if ${ac_cv_sys_long_file_names+:} false; then :
-- $as_echo_n "(cached) " >&6
--else
-- ac_cv_sys_long_file_names=yes
--# Test for long file names in all the places we know might matter:
--# . the current directory, where building will happen
--# $prefix/lib where we will be installing things
--# $exec_prefix/lib likewise
--# $TMPDIR if set, where it might want to write temporary files
--# /tmp where it might want to write temporary files
--# /var/tmp likewise
--# /usr/tmp likewise
--for ac_dir in . "$TMPDIR" /tmp /var/tmp /usr/tmp "$prefix/lib" "$exec_prefix/lib"; do
-- # Skip $TMPDIR if it is empty or bogus, and skip $exec_prefix/lib
-- # in the usual case where exec_prefix is '${prefix}'.
-- case $ac_dir in #(
-- . | /* | ?:[\\/]*) ;; #(
-- *) continue;;
-- esac
-- test -w "$ac_dir/." || continue # It is less confusing to not echo anything here.
-- ac_xdir=$ac_dir/cf$$
-- (umask 077 && mkdir "$ac_xdir" 2>/dev/null) || continue
-- ac_tf1=$ac_xdir/conftest9012345
-- ac_tf2=$ac_xdir/conftest9012346
-- touch "$ac_tf1" 2>/dev/null && test -f "$ac_tf1" && test ! -f "$ac_tf2" ||
-- ac_cv_sys_long_file_names=no
-- rm -f -r "$ac_xdir" 2>/dev/null
-- test $ac_cv_sys_long_file_names = no && break
--done
--fi
--{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_long_file_names" >&5
--$as_echo "$ac_cv_sys_long_file_names" >&6; }
--if test $ac_cv_sys_long_file_names = yes; then
--
- $as_echo "#define HAVE_LONG_FILE_NAMES 1" >>confdefs.h
-
--fi
--
-
-
-
diff --git a/system/man-db/man-db.SlackBuild b/system/man-db/man-db.SlackBuild
deleted file mode 100644
index 4d5e2e10c6..0000000000
--- a/system/man-db/man-db.SlackBuild
+++ /dev/null
@@ -1,230 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for man-db
-
-# Written by B. Watson (yalhcru@gmail.com)
-
-# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
-
-# 20180801 bkw:
-# - update for v2.8.4.
-
-# 20180611 bkw:
-# - update for v2.8.3, to match what Pat has in -current.
-
-# 20180208 bkw: update for man-db 2.8.0, libpipeline 1.5.0.
-# This may be the last SBo update, since Pat has imported man-db
-# into Slackware-current. Depends on how long it is from now until
-# the next release: I'll maintain this until SBo stops accepting
-# submissions for 14.2.
-
-# 20170305 bkw:
-# - BUILD=2
-# - get rid of systemd-specific /usr/lib/tmpfiles.d from package.
-# - patch configure so it doesn't write to /usr/lib.
-
-# 20170215 bkw:
-# - update for 2.7.6.1 (whoops, last update wasn't for the latest version
-# - only update the cache in doinst.sh if it's over an hour old. this
-# takes several minutes, and happens twice (uselessly) if the package
-# is upgraded (since upgradepkg runs doinst.sh twice). waiting an hour
-# also makes my life easier when I'm testing this script.
-# - fix man-db.cron so it works even if USR=yes (whoops), and stop trying
-# to chown the cache to the nonexistent 'man' user.
-
-# 20170125 bkw:
-# - update for 2.7.6.
-# - add --disable-cache-owner. TODO: revisit this at some
-# point. Maybe create a dedicated 'man' user, or use one of the existing
-# users like 'bin' or 'operator'.
-
-# 20160726 bkw:
-# - update for 2.7.5.
-
-# 20150507 bkw:
-# - update for 2.7.1.
-# - fix homepage in .info file.
-# - had to update libpipeline to 1.4.0.
-
-# 20140924 bkw:
-# - update for 2.7.0.1, which fixes the clash between man-db's zsoelim
-# and groff's zsoelim.
-# - update README and README.Slackware slightly.
-
-PRGNAM=man-db
-VERSION=${VERSION:-2.8.4}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-# By default, install binaries to /opt, so as not to stomp on Slackware's
-# man pkg. We will have to include a /etc/profile.d script to set PATH,
-# MANPATH, etc. Note that only binaries and the man pages for man-db itself
-# go to /opt. Everything else (libpipeline, man-db's shared libs, localized
-# messages, etc) goes to /usr as usual.
-
-# If you want a proper replacement for Slack's man pkg, build with
-# USR="yes", which puts the binaries in the usual places. If your name is
-# Patrick V. and you're finally replacing man with man-db in Slackware,
-# feel free to uncomment the next line:
-#USR="yes"
-
-BINDIR=/opt/$PRGNAM/bin
-[ "${USR:-no}" = "yes" ] && BINDIR=/usr/bin
-MANDIR="${BINDIR/bin/man}"
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-
-# libpipeline is a pretty niche-market library. It used to be bundled
-# in the man-db source, and as far as I can tell, nothing else uses it.
-# Instead of making it a separate build and external dep, we'll just
-# bundle it here.
-LIBNAM=libpipeline
-LIBVER=1.5.0
-
-cd $TMP
-rm -rf $LIBNAM-$LIBVER
-tar xvf $CWD/$LIBNAM-$LIBVER.tar.gz
-cd $LIBNAM-$LIBVER
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --docdir=/usr/doc/$PRGNAM-$VERSION/$LIBNAM-$LIBVER \
- --build=$ARCH-slackware-linux
-
-make
-make install-strip DESTDIR=$PKG
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/$LIBNAM-$LIBVER
-cp -a COPYING ChangeLog* NEWS README TODO \
- $PKG/usr/doc/$PRGNAM-$VERSION/$LIBNAM-$LIBVER
-
-# now build man-db itself, using the libpipeline installed in $PKG
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-# The 'checking for long filenames' test in the configure script writes to
-# /usr/lib, which is bad behaviour for a configure script. Not to mention
-# wrong (it assumes configure is always being run as root). We already
-# know we have long filename support, because we live in the 21st century
-# now, so this patch gets rid of the test and force-enables it.
-patch -p1 < $CWD/dont_write_in_usr.diff
-
-# The circumlocutions below are needed because doing it the sane way:
-# libpipeline_LIBS="-L$PKG/usr/lib$LIBDIRSUFFIX -lpipeline"
-# gets broken by libtool (it *insists* on replacing -lpipeline with
-# /usr/lib64/libpipeline.so, which will fail if it's an older version).
-LD_LIBRARY_PATH="$PKG/usr/lib$LIBDIRSUFFIX" \
-LDFLAGS="$PKG/usr/lib$LIBDIRSUFFIX/libpipeline.so" \
-libpipeline_CFLAGS="-I$PKG/usr/include" \
-libpipeline_LIBS="-L$PKG/usr/lib$LIBDIRSUFFIX $PKG/usr/lib$LIBDIRSUFFIX/libpipeline.so" \
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --disable-setuid \
- --disable-cache-owner \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=$MANDIR \
- --bindir=$BINDIR \
- --sbindir=${BINDIR/bin/sbin} \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --build=$ARCH-slackware-linux
-
-make
-make install-strip DESTDIR=$PKG
-
-# This stuff is for systemd, we don't need it (and it might confuse
-# people coming from systemd distros):
-rm -rf $PKG/usr/lib/tmpfiles.d/
-
-# There will always be man pages here, regardless of USR=yes or no.
-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
-
-if [ "${USR:-no}" != "yes" ]; then
- # separate dir full of man pages and symlinks in /opt
- find $PKG/$MANDIR -type f -exec gzip -9 {} \;
- for i in $( find $PKG/$MANDIR -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-
- # only need the profile.d stuff if installing to /opt
- mkdir -p $PKG/etc/profile.d
- install -m0755 -oroot -groot $CWD/$PRGNAM.sh $CWD/$PRGNAM.csh $PKG/etc/profile.d
-fi
-
-# no special ownership or perms needed here since we --disable-setuid
-mkdir -p $PKG/var/cache/man
-
-# only ship a daily cronjob, don't need a weekly one like Debian has.
-mkdir -p $PKG/etc/cron.daily
-install -m0755 -oroot -groot $CWD/$PRGNAM.cron $PKG/etc/cron.daily/$PRGNAM
-
-# modified default config, customized for Slackware. See the conf file for
-# list of changes.
-zcat $CWD/man_db.conf.new.gz \
- | sed "s,@LIBDIRSUFFIX@,$LIBDIRSUFFIX,g" \
- > $PKG/etc/man_db.conf.new
-rm -rf $PKG/etc/man_db.conf
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a ABOUT-NLS Change* FAQ NEWS README docs/* $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-sed "s,@BINDIR@,$BINDIR," < $CWD/slack-desc > $PKG/install/slack-desc
-cat $CWD/doinst.sh > $PKG/install/doinst.sh
-
-# N.B. the -p option is actually needed here (for libpipeline.so).
-cd $PKG
-/sbin/makepkg -p -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/system/man-db/man-db.cron b/system/man-db/man-db.cron
deleted file mode 100644
index 93c3a00ff2..0000000000
--- a/system/man-db/man-db.cron
+++ /dev/null
@@ -1,30 +0,0 @@
-#!/bin/sh
-
-# man-db daily cronjob, part of the slackbuilds.org man-db package.
-# Author: B. Watson.
-# Adapted from Debian's man-db package, so I guess the license is GPL.
-
-set -e
-
-if ! [ -d /var/cache/man ]; then
- # Recover from deletion, per FHS.
- mkdir -p /var/cache/man
- chown root:root /var/cache/man || true
- chmod 2755 /var/cache/man
-fi
-
-# expunge old catman pages which have not been read in a week
-# commented out, as we've got cat pages disabled in this build. Left
-# here for reference in case someone really wants to enable cat pages
-# some day.
-#find /var/cache/man -type f -name '*.gz' -atime +6 -print0 | xargs -r0 rm -f &> /dev/null
-
-# regenerate man database. /opt/man-db/bin probably isn't in cron's $PATH,
-# so check for it specially, otherwise use $PATH.
-if [ -x /opt/man-db/bin/mandb ]; then
- MANDB=/opt/man-db/bin/mandb
-else
- MANDB=mandb
-fi
-
-$MANDB --no-purge --quiet
diff --git a/system/man-db/man-db.csh b/system/man-db/man-db.csh
deleted file mode 100644
index 6cf39ce0ba..0000000000
--- a/system/man-db/man-db.csh
+++ /dev/null
@@ -1,12 +0,0 @@
-#!/bin/csh
-
-# Set up environment for man-db. This file is part of the slackbuilds.org
-# man-db build.
-
-# Author: B. Watson. License: WTFPL
-
-setenv MANPATH /opt/man-db/man:$MANPATH
-set path = ( /opt/man-db/bin $path )
-if ("`id -u`" == "0") then
- set path = ( /opt/man-db/sbin $path )
-endif
diff --git a/system/man-db/man-db.info b/system/man-db/man-db.info
deleted file mode 100644
index 70a6f6a7c1..0000000000
--- a/system/man-db/man-db.info
+++ /dev/null
@@ -1,12 +0,0 @@
-PRGNAM="man-db"
-VERSION="2.8.4"
-HOMEPAGE="http://www.nongnu.org/man-db/"
-DOWNLOAD="http://download.savannah.gnu.org/releases/man-db/man-db-2.8.4.tar.xz \
- http://download.savannah.gnu.org/releases/libpipeline/libpipeline-1.5.0.tar.gz"
-MD5SUM="ab41db551f500e4a595b11203b86c67a \
- b7437a5020190cfa84f09c412db38902"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
diff --git a/system/man-db/man-db.sh b/system/man-db/man-db.sh
deleted file mode 100644
index 54c9b34ae0..0000000000
--- a/system/man-db/man-db.sh
+++ /dev/null
@@ -1,16 +0,0 @@
-#!/bin/sh
-
-# Set up environment for man-db. This file is part of the slackbuilds.org
-# man-db build.
-
-# Author: B. Watson. License: WTFPL
-
-MANPATH="/opt/man-db/man:$MANPATH"
-PATH="/opt/man-db/bin:$PATH"
-
-if [ "$( id -u )" = "0" ]; then
- PATH="/opt/man-db/sbin:$PATH"
-fi
-
-export MANPATH
-export PATH
diff --git a/system/man-db/man_db.conf.new.gz b/system/man-db/man_db.conf.new.gz
deleted file mode 100644
index 1d128438c4..0000000000
--- a/system/man-db/man_db.conf.new.gz
+++ /dev/null
Binary files differ
diff --git a/system/man-db/slack-desc b/system/man-db/slack-desc
deleted file mode 100644
index 5abdea8fb6..0000000000
--- a/system/man-db/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-man-db: man-db (database-driven manual pager suite)
-man-db:
-man-db: This package provides the man command and related utilities
-man-db: for examining on-line help files (manual pages). It can act as a
-man-db: replacement for Slackware's man package. It has several enhancements
-man-db: over man, including an indexed database for searches with -k or
-man-db: apropos, the ability to easily view man pages in a browser, better
-man-db: i18n support, and a much more efficient implementation of the -K
-man-db: (full text search) option.
-man-db:
-man-db:
diff --git a/system/numactl/numactl.SlackBuild b/system/numactl/numactl.SlackBuild
index 4d729d9f3b..80b458e2cc 100644
--- a/system/numactl/numactl.SlackBuild
+++ b/system/numactl/numactl.SlackBuild
@@ -5,13 +5,13 @@
# Written by Wainamoinen <wainamoinen@gmail.com>
PRGNAM=numactl
-VERSION=${VERSION:-2.0.10}
+VERSION=${VERSION:-2.0.12}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -22,8 +22,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -51,7 +51,6 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-./autogen.sh
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -74,8 +73,7 @@ find $PKG/usr/man -type f -exec gzip -9 {} \;
for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a CHANGES README $PKG/usr/doc/$PRGNAM-$VERSION
-
+cp -a README.md $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/system/numactl/numactl.info b/system/numactl/numactl.info
index 326390a7f5..ad0ed5f697 100644
--- a/system/numactl/numactl.info
+++ b/system/numactl/numactl.info
@@ -1,8 +1,8 @@
PRGNAM="numactl"
-VERSION="2.0.10"
+VERSION="2.0.12"
HOMEPAGE="http://oss.sgi.com/projects/libnuma/"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/numactl-2.0.10.tar.gz"
-MD5SUM="682c38305b2596967881f3d77bc3fc9c"
+DOWNLOAD="https://github.com/numactl/numactl/releases/download/v2.0.12/numactl-2.0.12.tar.gz"
+MD5SUM="2ba9777d78bfd7d408a387e53bc33ebc"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/system/nvidia-driver/nvidia-driver.SlackBuild b/system/nvidia-driver/nvidia-driver.SlackBuild
index d334d9315c..f8f5e27c03 100644
--- a/system/nvidia-driver/nvidia-driver.SlackBuild
+++ b/system/nvidia-driver/nvidia-driver.SlackBuild
@@ -249,6 +249,9 @@ cd -
install -m 644 _out/Linux_$TARGET/nvidia-persistenced.1.gz $PKG/usr/man/man1/
cd -
+# Remove $PKG/usr/lib{,$LIBDIRSUFFIX}/libGL.la files
+rm -f $PKG/usr/lib{,$LIBDIRSUFFIX}/libGL.la
+
# Bash script to cleanly install (in doinst.sh) and uninstall the nvidia files
# so we don't stomp on the overlapping xorg files.
# Note: switching can be problematic ;-)
@@ -267,25 +270,16 @@ else
fi
# These add or correct wrong paths
-sed -i "s|$TMP/package-$PRGNAM/usr|/usr|" $PKG/usr/lib$LIBDIRSUFFIX/libGL.la
-sed -i "s|/usr/X11R6/lib|/usr/lib$LIBDIRSUFFIX|" $PKG/usr/lib$LIBDIRSUFFIX/libGL.la
sed -i "s|__UTILS_PATH__|/usr/bin|" $PKG/usr/share/applications/nvidia-settings.desktop
sed -i "s|__PIXMAP_PATH__|/usr/share/pixmaps|" $PKG/usr/share/applications/nvidia-settings.desktop
sed -i "s|__NVIDIA_SETTINGS_DESKTOP_CATEGORIES__|Application;Settings;|" $PKG/usr/share/applications/nvidia-settings.desktop
-if [ "$ARCH" = "x86_64" -a "${COMPAT32}" = "yes" ]; then
- sed -i "s|$TMP/package-$PRGNAM/usr|/usr|" $PKG/usr/lib/libGL.la
- sed -i "s|/usr/X11R6/lib|/usr/lib|" $PKG/usr/lib/libGL.la
- sed -i "s|'/usr/'|'/usr/lib'|" $PKG/usr/lib/libGL.la
-fi
-
# rename wrong/conficting files as needed; remove conflicting symlinks created by installer
# since nvidia-switch tracks them.
cd $PKG/usr/lib$LIBDIRSUFFIX
if [ "$GLVND" = "yes" ]; then
mv libEGL.so.1.1.0 libEGL.so.1.1.0-nvidia
fi
- mv libGL.la libGL.la-nvidia
mv libGLESv1_CM.so.1.2.0 libGLESv1_CM.so.1.2.0-nvidia
mv libGLESv2.so.2.1.0 libGLESv2.so.2.1.0-nvidia
rm -f libEGL.so
@@ -304,7 +298,6 @@ if [ "$ARCH" = "x86_64" -a "${COMPAT32}" = "yes" ]; then
if [ "$GLVND" = "yes" ]; then
mv libEGL.so.1.1.0 libEGL.so.1.1.0-nvidia
fi
- mv libGL.la libGL.la-nvidia
mv libGLESv1_CM.so.1.2.0 libGLESv1_CM.so.1.2.0-nvidia
mv libGLESv2.so.2.1.0 libGLESv2.so.2.1.0-nvidia
rm -f libEGL.so
diff --git a/system/nvidia-driver/nvidia-switch b/system/nvidia-driver/nvidia-switch
index 7c827cca66..b116ce5085 100644
--- a/system/nvidia-driver/nvidia-switch
+++ b/system/nvidia-driver/nvidia-switch
@@ -58,11 +58,9 @@ save_GL(){
"nvidia")
mv libGL.so.$GL_VERSION $SAVELIBS/libGL.so.$GL_VERSION
- mv libGL.la $SAVELIBS/libGL.la
mv libEGL.so.1.0.0 $SAVELIBS/libEGL.so.1.0.0
mv libGLESv1_CM.so.1.1.0 $SAVELIBS/libGLESv1_CM.so.1.1.0
mv libGLESv2.so.2.0.0 $SAVELIBS/libGLESv2.so.2.0.0
- mv libGL.la-nvidia libGL.la
if [ "$GLVND" = "yes" ]; then
ln -sf libGL.so.1.7.0 libGL.so.1
@@ -86,9 +84,7 @@ save_GL(){
;;
"xorg")
- mv libGL.la libGL.la-nvidia
mv $SAVELIBS/libGL.so.$GL_VERSION libGL.so.$GL_VERSION
- mv $SAVELIBS/libGL.la libGL.la
mv $SAVELIBS/libEGL.so.1.0.0 libEGL.so.1.0.0
mv $SAVELIBS/libGLESv1_CM.so.1.1.0 libGLESv1_CM.so.1.1.0
mv $SAVELIBS/libGLESv2.so.2.0.0 libGLESv2.so.2.0.0
diff --git a/system/nvidia-legacy304-kernel/4.14_kernel.patch b/system/nvidia-legacy304-kernel/4.14_kernel.patch
new file mode 100644
index 0000000000..6642189009
--- /dev/null
+++ b/system/nvidia-legacy304-kernel/4.14_kernel.patch
@@ -0,0 +1,26 @@
+diff -ur a/kernel/nv-drm.c b/kernel/nv-drm.c
+--- a/kernel/nv-drm.c 2017-09-14 23:51:09.000000003 +0300
++++ b/kernel/nv-drm.c 2017-12-06 18:47:48.279729889 +0200
+@@ -121,7 +121,11 @@
+ {
+ int ret = 0;
+ #if defined(NV_DRM_AVAILABLE)
++#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 14, 0)
+ ret = drm_pci_init(&nv_drm_driver, pci_driver);
++#else
++ ret = drm_legacy_pci_init(&nv_drm_driver, pci_driver);
++#endif
+ #endif
+ return ret;
+ }
+@@ -131,6 +135,10 @@
+ )
+ {
+ #if defined(NV_DRM_AVAILABLE)
++#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 14, 0)
+ drm_pci_exit(&nv_drm_driver, pci_driver);
++#else
++ drm_legacy_pci_exit(&nv_drm_driver, pci_driver);
++#endif
+ #endif
+ }
diff --git a/system/nvidia-legacy304-kernel/4.15_kernel.patch b/system/nvidia-legacy304-kernel/4.15_kernel.patch
new file mode 100644
index 0000000000..fdac62fb24
--- /dev/null
+++ b/system/nvidia-legacy304-kernel/4.15_kernel.patch
@@ -0,0 +1,48 @@
+diff -ur a/kernel/nv.c b/kernel/nv.c
+--- a/kernel/nv.c 2017-09-14 23:51:09.000000000 +0300
++++ b/kernel/nv.c 2018-02-13 14:56:42.289490885 +0200
+@@ -301,7 +301,11 @@
+ #else
+ irqreturn_t nv_kern_isr(int, void *);
+ #endif
++#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 15, 0)
+ void nv_kern_rc_timer(unsigned long);
++#else
++void nv_kern_rc_timer(struct timer_list *t);
++#endif
+ #if defined(NV_PM_SUPPORT_OLD_STYLE_APM)
+ static int nv_kern_apm_event(struct pm_dev *, pm_request_t, void *);
+ #endif
+@@ -2075,10 +2079,18 @@
+ }
+
+ void nv_kern_rc_timer(
++#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 15, 0)
+ unsigned long data
++#else
++ struct timer_list *t
++#endif
+ )
+ {
++#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 15, 0)
+ nv_linux_state_t *nvl = (nv_linux_state_t *) data;
++#else
++ nv_linux_state_t *nvl = from_timer(nvl, t, rc_timer);
++#endif
+ nv_state_t *nv = NV_STATE_PTR(nvl);
+
+ NV_CHECK_PCI_CONFIG_SPACE(nvl->timer_sp, nv, TRUE, TRUE, FALSE);
+@@ -3029,9 +3041,13 @@
+ return -1;
+
+ nv_printf(NV_DBG_INFO, "NVRM: initializing rc timer\n");
++#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 15, 0)
+ init_timer(&nvl->rc_timer);
+ nvl->rc_timer.function = nv_kern_rc_timer;
+ nvl->rc_timer.data = (unsigned long) nv;
++#else
++ timer_setup(&nvl->rc_timer, nv_kern_rc_timer, 0);
++#endif
+ nv->rc_timer_enabled = 1;
+ mod_timer(&nvl->rc_timer, jiffies + HZ); /* set our timeout for 1 second */
+ nv_printf(NV_DBG_INFO, "NVRM: rc timer initialized\n");
diff --git a/system/nvidia-legacy304-kernel/nvidia-legacy304-kernel.SlackBuild b/system/nvidia-legacy304-kernel/nvidia-legacy304-kernel.SlackBuild
index c789ab3a6a..db6edc4a0d 100644
--- a/system/nvidia-legacy304-kernel/nvidia-legacy304-kernel.SlackBuild
+++ b/system/nvidia-legacy304-kernel/nvidia-legacy304-kernel.SlackBuild
@@ -75,6 +75,10 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# https://pkgs.rpmfusion.org/cgit/nonfree/nvidia-304xx-kmod.git/log/
+patch -p1 < $CWD/4.14_kernel.patch
+patch -p1 < $CWD/4.15_kernel.patch
+
cd kernel || exit 1
make SYSSRC=$KERNELPATH module || exit 1
diff --git a/system/nvidia-legacy340-driver/nvidia-legacy340-driver.SlackBuild b/system/nvidia-legacy340-driver/nvidia-legacy340-driver.SlackBuild
index 383b7f696e..48ff1b645a 100644
--- a/system/nvidia-legacy340-driver/nvidia-legacy340-driver.SlackBuild
+++ b/system/nvidia-legacy340-driver/nvidia-legacy340-driver.SlackBuild
@@ -26,7 +26,7 @@
# See changelog.txt
PRGNAM=nvidia-legacy340-driver
-VERSION=${VERSION:-340.104}
+VERSION=${VERSION:-340.107}
MVERS=340
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
diff --git a/system/nvidia-legacy340-driver/nvidia-legacy340-driver.info b/system/nvidia-legacy340-driver/nvidia-legacy340-driver.info
index 5fd6b0141e..67919db876 100644
--- a/system/nvidia-legacy340-driver/nvidia-legacy340-driver.info
+++ b/system/nvidia-legacy340-driver/nvidia-legacy340-driver.info
@@ -1,26 +1,26 @@
PRGNAM="nvidia-legacy340-driver"
-VERSION="340.104"
+VERSION="340.107"
HOMEPAGE="http://www.nvidia.com"
-DOWNLOAD="https://download.nvidia.com/XFree86/Linux-x86/340.104/NVIDIA-Linux-x86-340.104.run \
- https://download.nvidia.com/XFree86/nvidia-modprobe/nvidia-modprobe-340.104.tar.bz2 \
- https://download.nvidia.com/XFree86/nvidia-persistenced/nvidia-persistenced-340.104.tar.bz2 \
- https://download.nvidia.com/XFree86/nvidia-settings/nvidia-settings-340.104.tar.bz2 \
- https://download.nvidia.com/XFree86/nvidia-xconfig/nvidia-xconfig-340.104.tar.bz2"
-MD5SUM="42e9c98e156f6ac2658ee526d796a428 \
- 68749455b4a2b5fb9e63876ea5c60787 \
- 0b5d473008734588dda2d1b8b7d79d71 \
- 0024eacf3e1b473b300123229a9012ff \
- 9f28850e70824a765918b13345f630f7"
-DOWNLOAD_x86_64="https://download.nvidia.com/XFree86/Linux-x86_64/340.104/NVIDIA-Linux-x86_64-340.104.run \
- https://download.nvidia.com/XFree86/nvidia-modprobe/nvidia-modprobe-340.104.tar.bz2 \
- https://download.nvidia.com/XFree86/nvidia-persistenced/nvidia-persistenced-340.104.tar.bz2 \
- https://download.nvidia.com/XFree86/nvidia-settings/nvidia-settings-340.104.tar.bz2 \
- https://download.nvidia.com/XFree86/nvidia-xconfig/nvidia-xconfig-340.104.tar.bz2"
-MD5SUM_x86_64="4750891b7e175c0dc9a04608e493d141 \
- 68749455b4a2b5fb9e63876ea5c60787 \
- 0b5d473008734588dda2d1b8b7d79d71 \
- 0024eacf3e1b473b300123229a9012ff \
- 9f28850e70824a765918b13345f630f7"
+DOWNLOAD="https://download.nvidia.com/XFree86/Linux-x86/340.107/NVIDIA-Linux-x86-340.107.run \
+ https://download.nvidia.com/XFree86/nvidia-modprobe/nvidia-modprobe-340.107.tar.bz2 \
+ https://download.nvidia.com/XFree86/nvidia-persistenced/nvidia-persistenced-340.107.tar.bz2 \
+ https://download.nvidia.com/XFree86/nvidia-settings/nvidia-settings-340.107.tar.bz2 \
+ https://download.nvidia.com/XFree86/nvidia-xconfig/nvidia-xconfig-340.107.tar.bz2"
+MD5SUM="9a4b382ef545d836033630224735d5dd \
+ 07e397113d0067b09008e24bf66f3d29 \
+ 0f4e8fd3b3d569e9db4d6f80ece18e11 \
+ 81c3737ba46512694da4ca9a7fa94553 \
+ 2713de2cab85fb5b9e75ba2ff86eb8d8"
+DOWNLOAD_x86_64="https://download.nvidia.com/XFree86/Linux-x86_64/340.107/NVIDIA-Linux-x86_64-340.107.run \
+ https://download.nvidia.com/XFree86/nvidia-modprobe/nvidia-modprobe-340.107.tar.bz2 \
+ https://download.nvidia.com/XFree86/nvidia-persistenced/nvidia-persistenced-340.107.tar.bz2 \
+ https://download.nvidia.com/XFree86/nvidia-settings/nvidia-settings-340.107.tar.bz2 \
+ https://download.nvidia.com/XFree86/nvidia-xconfig/nvidia-xconfig-340.107.tar.bz2"
+MD5SUM_x86_64="ba0fc5de5005679d1db9f5fa2cfabd38 \
+ 07e397113d0067b09008e24bf66f3d29 \
+ 0f4e8fd3b3d569e9db4d6f80ece18e11 \
+ 81c3737ba46512694da4ca9a7fa94553 \
+ 2713de2cab85fb5b9e75ba2ff86eb8d8"
REQUIRES="nvidia-legacy340-kernel"
MAINTAINER="Edward W. Koenig"
EMAIL="kingbeowulf@gmail.com"
diff --git a/system/nvidia-legacy340-kernel/nvidia-legacy340-kernel.SlackBuild b/system/nvidia-legacy340-kernel/nvidia-legacy340-kernel.SlackBuild
index c89c49cce1..96e9122a54 100644
--- a/system/nvidia-legacy340-kernel/nvidia-legacy340-kernel.SlackBuild
+++ b/system/nvidia-legacy340-kernel/nvidia-legacy340-kernel.SlackBuild
@@ -28,7 +28,7 @@
# See changelog.txt
PRGNAM=nvidia-legacy340-kernel
-VERSION=${VERSION:-340.104}
+VERSION=${VERSION:-340.107}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -80,6 +80,7 @@ find -L . \
(cd kernel || exit 1
make SYSSRC=$KERNELPATH module || exit 1
cd uvm
+ sed -i "s|-O2$|-O2 -Wno-error=incompatible-pointer-types|" Makefile
make SYSSRC=$KERNELPATH module || exit 1
)
diff --git a/system/nvidia-legacy340-kernel/nvidia-legacy340-kernel.info b/system/nvidia-legacy340-kernel/nvidia-legacy340-kernel.info
index 3053c85389..434d71492b 100644
--- a/system/nvidia-legacy340-kernel/nvidia-legacy340-kernel.info
+++ b/system/nvidia-legacy340-kernel/nvidia-legacy340-kernel.info
@@ -1,10 +1,10 @@
PRGNAM="nvidia-legacy340-kernel"
-VERSION="340.104"
+VERSION="340.107"
HOMEPAGE="http://www.nvidia.com"
-DOWNLOAD="https://download.nvidia.com/XFree86/Linux-x86/340.104/NVIDIA-Linux-x86-340.104.run"
-MD5SUM="42e9c98e156f6ac2658ee526d796a428"
-DOWNLOAD_x86_64="https://download.nvidia.com/XFree86/Linux-x86_64/340.104/NVIDIA-Linux-x86_64-340.104.run"
-MD5SUM_x86_64="4750891b7e175c0dc9a04608e493d141"
+DOWNLOAD="https://download.nvidia.com/XFree86/Linux-x86/340.107/NVIDIA-Linux-x86-340.107.run"
+MD5SUM="9a4b382ef545d836033630224735d5dd"
+DOWNLOAD_x86_64="https://download.nvidia.com/XFree86/Linux-x86_64/340.107/NVIDIA-Linux-x86_64-340.107.run"
+MD5SUM_x86_64="9a4b382ef545d836033630224735d5dd"
REQUIRES=""
MAINTAINER="Edward W. Koenig"
EMAIL="kingbeowulf@gmail.com"
diff --git a/system/nvidia-legacy390-driver/nvidia-legacy390-driver.SlackBuild b/system/nvidia-legacy390-driver/nvidia-legacy390-driver.SlackBuild
index a43fb0ca7d..23f6c2fa69 100644
--- a/system/nvidia-legacy390-driver/nvidia-legacy390-driver.SlackBuild
+++ b/system/nvidia-legacy390-driver/nvidia-legacy390-driver.SlackBuild
@@ -260,6 +260,9 @@ cd -
install -m 644 _out/Linux_$TARGET/nvidia-persistenced.1.gz $PKG/usr/man/man1/
cd -
+# Remove $PKG/usr/lib{,$LIBDIRSUFFIX}/libGL.la files
+rm -f $PKG/usr/lib{,$LIBDIRSUFFIX}/libGL.la
+
# Bash script to cleanly install (in doinst.sh) and uninstall the nvidia files
# so we don't stomp on the overlapping xorg files.
# Note: switching can be problematic ;-)
@@ -278,24 +281,15 @@ else
fi
# These add or correct wrong paths
-sed -i "s|$TMP/package-$PRGNAM/usr|/usr|" $PKG/usr/lib$LIBDIRSUFFIX/libGL.la
-sed -i "s|/usr/X11R6/lib|/usr/lib$LIBDIRSUFFIX|" $PKG/usr/lib$LIBDIRSUFFIX/libGL.la
sed -i "s|__UTILS_PATH__|/usr/bin|" $PKG/usr/share/applications/nvidia-settings.desktop
sed -i "s|__PIXMAP_PATH__|/usr/share/pixmaps|" $PKG/usr/share/applications/nvidia-settings.desktop
sed -i "s|__NVIDIA_SETTINGS_DESKTOP_CATEGORIES__|Application;Settings;|" $PKG/usr/share/applications/nvidia-settings.desktop
-if [ "$ARCH" = "x86_64" -a "${COMPAT32}" = "yes" ]; then
- sed -i "s|$TMP/package-$PRGNAM/usr|/usr|" $PKG/usr/lib/libGL.la
- sed -i "s|/usr/X11R6/lib|/usr/lib|" $PKG/usr/lib/libGL.la
- sed -i "s|'/usr/'|'/usr/lib'|" $PKG/usr/lib/libGL.la
-fi
-
# rename wrong/conficting files as needed; remove conflicting symlinks created by installer
cd $PKG/usr/lib$LIBDIRSUFFIX
if [ "$GLVND" = "yes" ]; then
mv libEGL.so.1.1.0 libEGL.so.1.1.0-nvidia
fi
- mv libGL.la libGL.la-nvidia
mv libGLESv1_CM.so.1.2.0 libGLESv1_CM.so.1.2.0-nvidia
mv libGLESv2.so.2.1.0 libGLESv2.so.2.1.0-nvidia
rm -f libEGL.so
@@ -312,7 +306,6 @@ if [ "$ARCH" = "x86_64" -a "${COMPAT32}" = "yes" ]; then
if [ "$GLVND" = "yes" ]; then
mv libEGL.so.1.1.0 libEGL.so.1.1.0-nvidia
fi
- mv libGL.la libGL.la-nvidia
mv libGLESv1_CM.so.1.2.0 libGLESv1_CM.so.1.2.0-nvidia
mv libGLESv2.so.2.1.0 libGLESv2.so.2.1.0-nvidia
rm -f libEGL.so
diff --git a/system/nvidia-legacy390-driver/nvidia-switch b/system/nvidia-legacy390-driver/nvidia-switch
index 7d97f3304b..f9874cea37 100644
--- a/system/nvidia-legacy390-driver/nvidia-switch
+++ b/system/nvidia-legacy390-driver/nvidia-switch
@@ -58,11 +58,9 @@ save_GL(){
"nvidia")
mv libGL.so.$GL_VERSION $SAVELIBS/libGL.so.$GL_VERSION
- mv libGL.la $SAVELIBS/libGL.la
mv libEGL.so.1.0.0 $SAVELIBS/libEGL.so.1.0.0
mv libGLESv1_CM.so.1.1.0 $SAVELIBS/libGLESv1_CM.so.1.1.0
mv libGLESv2.so.2.0.0 $SAVELIBS/libGLESv2.so.2.0.0
- mv libGL.la-nvidia libGL.la
if [ "$GLVND" = "yes" ]; then
ln -sf libGL.so.1.7.0 libGL.so.1
@@ -86,9 +84,7 @@ save_GL(){
;;
"xorg")
- mv libGL.la libGL.la-nvidia
mv $SAVELIBS/libGL.so.$GL_VERSION libGL.so.$GL_VERSION
- mv $SAVELIBS/libGL.la libGL.la
mv $SAVELIBS/libEGL.so.1.0.0 libEGL.so.1.0.0
mv $SAVELIBS/libGLESv1_CM.so.1.1.0 libGLESv1_CM.so.1.1.0
mv $SAVELIBS/libGLESv2.so.2.0.0 libGLESv2.so.2.0.0
diff --git a/system/nvidia-legacy390-kernel/4.18.patch b/system/nvidia-legacy390-kernel/4.18.patch
new file mode 100644
index 0000000000..af32c6b3a2
--- /dev/null
+++ b/system/nvidia-legacy390-kernel/4.18.patch
@@ -0,0 +1,24 @@
+diff -ur NVIDIA-Linux-x86_64-396.24/kernel/nvidia-drm/nvidia-drm-connector.c NVIDIA-Linux-x86_64-396.24.patched2/kernel/nvidia-drm/nvidia-drm-connector.c
+--- NVIDIA-Linux-x86_64-396.24/kernel/nvidia-drm/nvidia-drm-connector.c 2018-04-26 10:34:46.000000000 +0200
++++ NVIDIA-Linux-x86_64-396.24.patched2/kernel/nvidia-drm/nvidia-drm-connector.c 2018-08-22 15:42:15.327407716 +0200
+@@ -226,7 +226,7 @@
+
+
+ if (nv_connector->edid != NULL) {
+- drm_mode_connector_update_edid_property(
++ drm_connector_update_edid_property(
+ connector, nv_connector->edid);
+ }
+
+diff -ur NVIDIA-Linux-x86_64-396.24/kernel/nvidia-drm/nvidia-drm-encoder.c NVIDIA-Linux-x86_64-396.24.patched2/kernel/nvidia-drm/nvidia-drm-encoder.c
+--- NVIDIA-Linux-x86_64-396.24/kernel/nvidia-drm/nvidia-drm-encoder.c 2018-04-26 10:34:46.000000000 +0200
++++ NVIDIA-Linux-x86_64-396.24.patched2/kernel/nvidia-drm/nvidia-drm-encoder.c 2018-08-22 15:41:25.356410694 +0200
+@@ -216,7 +216,7 @@
+
+ /* Attach encoder and connector */
+
+- ret = drm_mode_connector_attach_encoder(connector, encoder);
++ ret = drm_connector_attach_encoder(connector, encoder);
+
+ if (ret != 0) {
+ NV_DRM_DEV_LOG_ERR(
diff --git a/system/nvidia-legacy390-kernel/4.19.patch b/system/nvidia-legacy390-kernel/4.19.patch
new file mode 100644
index 0000000000..c3a3c5bde6
--- /dev/null
+++ b/system/nvidia-legacy390-kernel/4.19.patch
@@ -0,0 +1,23 @@
+--- a/kernel/nvidia-drm/nvidia-drm-gem-nvkms-memory.c
++++ b/kernel/nvidia-drm/nvidia-drm-gem-nvkms-memory.c
+@@ -20,6 +20,8 @@
+ * DEALINGS IN THE SOFTWARE.
+ */
+
++#include <linux/version.h>
++
+ #include "nvidia-drm-conftest.h"
+
+ #if defined(NV_DRM_ATOMIC_MODESET_AVAILABLE)
+@@ -345,7 +347,11 @@ static int __nv_drm_vma_fault(struct vm_area_struct *vma,
+
+ page_offset = vmf->pgoff - drm_vma_node_start(&gem->vma_node);
+
++#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 19, 0)
+ ret = vm_insert_pfn(vma, address, pfn + page_offset);
++#else
++ ret = vmf_insert_pfn(vma, address, pfn + page_offset);
++#endif
+
+ switch (ret) {
+ case 0:
diff --git a/system/nvidia-legacy390-kernel/4.20.patch b/system/nvidia-legacy390-kernel/4.20.patch
new file mode 100644
index 0000000000..21bea152f1
--- /dev/null
+++ b/system/nvidia-legacy390-kernel/4.20.patch
@@ -0,0 +1,20 @@
+--- a/kernel/nvidia/os-interface.c 2018-11-15 21:56:59.000000000 -0600
++++ b/kernel/nvidia/os-interface.c 2018-11-26 21:53:39.970635906 -0600
+@@ -1670,7 +1670,7 @@
+
+ struct nv_ipmi_softc
+ {
+- ipmi_user_t p_user; // ptr to ipmi_msghandler user structure
++ struct ipmi_user *p_user;
+ spinlock_t msg_lock;
+ struct list_head msgs;
+ NvU32 seqNum; //request sequence number
+@@ -1679,7 +1679,7 @@
+ static inline int
+ nv_ipmi_set_my_address
+ (
+- ipmi_user_t user,
++ struct ipmi_user *user,
+ unsigned char address
+ )
+ {
diff --git a/system/nvidia-legacy390-kernel/nvidia-legacy390-kernel.SlackBuild b/system/nvidia-legacy390-kernel/nvidia-legacy390-kernel.SlackBuild
index a8a3710ad2..e4f0174085 100644
--- a/system/nvidia-legacy390-kernel/nvidia-legacy390-kernel.SlackBuild
+++ b/system/nvidia-legacy390-kernel/nvidia-legacy390-kernel.SlackBuild
@@ -79,6 +79,11 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# patch for the newer kernels
+patch -p1 < $CWD/4.18.patch
+patch -p1 < $CWD/4.19.patch
+patch -p1 < $CWD/4.20.patch
+
(cd kernel || exit 1
make SYSSRC=$KERNELPATH module || exit 1
)
diff --git a/system/opensc/opensc.SlackBuild b/system/opensc/opensc.SlackBuild
index e7dc5c71e3..02473da5f7 100644
--- a/system/opensc/opensc.SlackBuild
+++ b/system/opensc/opensc.SlackBuild
@@ -23,13 +23,13 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=opensc
-VERSION=${VERSION:-0.15.0}
+VERSION=${VERSION:-0.18.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -40,8 +40,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-DOCFILES="README COPYING NEWS ChangeLog"
-XSL_STYLESHEETS_VER=1.78.1
+DOCFILES="README COPYING NEWS"
+XSL_STYLESHEETS_VER=1.79.2
# opensc now supports only one reader subsystem (pcsc-lite or openct)
OPENCT=${OPENCT:-0} # pcsc-lite is the default, openct disabled
@@ -51,8 +51,8 @@ case "$OPENCT" in
*) RDRSUBSYS_flags="--disable-pcsc --enable-openct" ;;
esac
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -81,7 +81,7 @@ find -L . \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
# --enable-nsplugin and --with-pinentry= are no longer supported.
-CFLAGS="$SLKCFLAGS" \
+CFLAGS="$SLKCFLAGS -Wno-error=stringop-truncation" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
diff --git a/system/opensc/opensc.info b/system/opensc/opensc.info
index 91496b60e0..b7102a1bc6 100644
--- a/system/opensc/opensc.info
+++ b/system/opensc/opensc.info
@@ -1,8 +1,8 @@
PRGNAM="opensc"
-VERSION="0.15.0"
+VERSION="0.18.0"
HOMEPAGE="https://github.com/OpenSC/OpenSC/wiki/"
-DOWNLOAD="http://downloads.sourceforge.net/opensc/OpenSC/opensc-0.15.0.tar.gz"
-MD5SUM="34c55315b7f381bd047b6435933baab4"
+DOWNLOAD="https://github.com/OpenSC/OpenSC/releases/download/0.18.0/opensc-0.18.0.tar.gz"
+MD5SUM="9da66126a45203c49285fb4277e946e5"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="pcsc-lite"
diff --git a/system/packagekit/doinst.sh b/system/packagekit/doinst.sh
index fa9fe022ef..4e39e9d043 100644
--- a/system/packagekit/doinst.sh
+++ b/system/packagekit/doinst.sh
@@ -14,7 +14,6 @@ config() {
config etc/PackageKit/PackageKit.conf.new
config etc/PackageKit/Vendor.conf.new
config etc/PackageKit/CommandNotFound.conf.new
-config etc/PackageKit/Katja.conf.new
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
diff --git a/system/packagekit/force_polkit_version.patch b/system/packagekit/force_polkit_version.patch
new file mode 100644
index 0000000000..f896a05aa7
--- /dev/null
+++ b/system/packagekit/force_polkit_version.patch
@@ -0,0 +1,16 @@
+https://www.linuxquestions.org/questions/slackware-14/sbo-scripts-not-building-on-current-read-1st-post-pls-4175561999/page27.html#post5884683
+
+--- configure.ac.orig 2018-04-03 12:29:51.000000000 +0000
++++ configure.ac 2018-07-27 17:03:50.260951817 +0000
+@@ -183,7 +183,10 @@
+ polkit-gobject-1 >= $POLKIT_GOBJECT_REQUIRED)
+
+ # 0.114 introduced autocleanup functions for its types.
+-PKG_CHECK_MODULES([POLKIT_0_114], [polkit-gobject-1 >= 0.114],
++# LAR 20180727 - Slackware patches 0.113 polkit to make it add
++# something from 0.114. DIRTY HACK to trick PackageKit into thinking it
++# 0.113 shipped by slackware-current is actually 0.114.
++PKG_CHECK_MODULES([POLKIT_0_114], [polkit-gobject-1 >= 0.113],
+ [have_polkit_0_114=yes], [have_polkit_0_114=no])
+ AS_IF([test "$have_polkit_0_114" = "yes"], [
+ AC_DEFINE([HAVE_POLKIT_0_114],[1],
diff --git a/system/packagekit/packagekit.SlackBuild b/system/packagekit/packagekit.SlackBuild
index 7527471105..8716bdb702 100644
--- a/system/packagekit/packagekit.SlackBuild
+++ b/system/packagekit/packagekit.SlackBuild
@@ -26,7 +26,7 @@
# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM="packagekit"
-VERSION=${VERSION:-1.1.4}
+VERSION=${VERSION:-1.1.10}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -72,6 +72,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+patch -p0 < $CWD/force_polkit_version.patch
+autoreconf -vif
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -98,7 +101,6 @@ for i in $(find $PKG/usr/man -type l) ; do ln -s $(readlink $i).gz $i.gz ; rm $i
mv $PKG/etc/PackageKit/CommandNotFound.conf $PKG/etc/PackageKit/CommandNotFound.conf.new
mv $PKG/etc/PackageKit/PackageKit.conf $PKG/etc/PackageKit/PackageKit.conf.new
mv $PKG/etc/PackageKit/Vendor.conf $PKG/etc/PackageKit/Vendor.conf.new
-mv $PKG/etc/PackageKit/Katja.conf $PKG/etc/PackageKit/Katja.conf.new
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
diff --git a/system/packagekit/packagekit.info b/system/packagekit/packagekit.info
index c7f1732d6a..6c281ba43b 100644
--- a/system/packagekit/packagekit.info
+++ b/system/packagekit/packagekit.info
@@ -1,10 +1,10 @@
PRGNAM="packagekit"
-VERSION="1.1.4"
+VERSION="1.1.10"
HOMEPAGE="https://www.freedesktop.org/software/PackageKit/"
-DOWNLOAD="https://www.freedesktop.org/software/PackageKit/releases/PackageKit-1.1.4.tar.xz"
-MD5SUM="d1a000a33c7c935522af7a01dea012bf"
+DOWNLOAD="https://www.freedesktop.org/software/PackageKit/releases/PackageKit-1.1.10.tar.xz"
+MD5SUM="04703a41f855c323f15d7c94ec0771b5"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES=""
+REQUIRES="autoconf-archive"
MAINTAINER="Nishant Limbachia"
EMAIL="nishant@mnspace.net"
diff --git a/system/parallel/README b/system/parallel/README
deleted file mode 100644
index bbee7b2123..0000000000
--- a/system/parallel/README
+++ /dev/null
@@ -1,9 +0,0 @@
-GNU parallel is a shell tool for executing jobs in parallel using one
-or more computers. A job can be a single command or a small script
-that has to be run for each of the lines in the input. The typical
-input is a list of files, a list of hosts, a list of users, a list of
-URLs, or a list of tables. A job can also be a command that reads
-from a pipe. GNU parallel can then split the input and pipe it into
-commands in parallel.
-
-This package conflicts with misc/moreutils.
diff --git a/system/parallel/parallel.info b/system/parallel/parallel.info
deleted file mode 100644
index f8ab2f619c..0000000000
--- a/system/parallel/parallel.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="parallel"
-VERSION="20170622"
-HOMEPAGE="http://www.gnu.org/software/parallel/"
-DOWNLOAD="http://gnu.uberglobalmirror.com/parallel/parallel-20170622.tar.bz2"
-MD5SUM="8494ff022451aac0162f18cf3dd3ae7f"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Marcel Saegebarth"
-EMAIL="marc@mos6581.de"
diff --git a/system/parallel/slack-desc b/system/parallel/slack-desc
deleted file mode 100644
index 32663235a5..0000000000
--- a/system/parallel/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-parallel: parallel (Executes jobs in parallel)
-parallel:
-parallel: GNU parallel is a shell tool for executing jobs in parallel using one
-parallel: or more computers. A job can be a single command or a small script
-parallel: that has to be run for each of the lines in the input. The typical
-parallel: input is a list of files, a list of hosts, a list of users, a list of
-parallel: URLs, or a list of tables. A job can also be a command that reads
-parallel: from a pipe. GNU parallel can then split the input and pipe it into
-parallel: commands in parallel.
-parallel:
-parallel: Homepage: http://www.gnu.org/software/parallel/
diff --git a/system/patchelf/README b/system/patchelf/README
deleted file mode 100644
index 4286fd37ae..0000000000
--- a/system/patchelf/README
+++ /dev/null
@@ -1,3 +0,0 @@
-PatchELF is a simple utility for modifing existing ELF executables
-and libraries. It can change the dynamic loader ("ELF interpreter")
-of executables and change the RPATH of executables and libraries.
diff --git a/system/patchelf/patchelf.SlackBuild b/system/patchelf/patchelf.SlackBuild
deleted file mode 100644
index 1636e96d22..0000000000
--- a/system/patchelf/patchelf.SlackBuild
+++ /dev/null
@@ -1,97 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for patchelf
-
-# Copyright 2014 Zhu Qun-Ying
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=patchelf
-VERSION=${VERSION:-0.9}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-set -e
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz || tar xvf $CWD/$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-autoreconf -isf
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --mandir=/usr/man \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --build=$ARCH-slackware-linux
-
-make
-
-make install DESTDIR=$PKG
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp README COPYING BUGS $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-gzip $PKG/usr/man/man1/*
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/system/patchelf/patchelf.info b/system/patchelf/patchelf.info
deleted file mode 100644
index 94c52c0b1a..0000000000
--- a/system/patchelf/patchelf.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="patchelf"
-VERSION="0.9"
-HOMEPAGE="https://nixos.org/patchelf.html"
-DOWNLOAD="https://github.com/NixOS/patchelf/archive/0.9.tar.gz"
-MD5SUM="69c94a4400e930f938b754d543705eb9"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Zhu Qun-Ying"
-EMAIL="zhu.qunying@gmail.com"
diff --git a/system/patchelf/slack-desc b/system/patchelf/slack-desc
deleted file mode 100644
index 30e2694647..0000000000
--- a/system/patchelf/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-patchelf: patchelf (A utility for patching ELF binaries)
-patchelf:
-patchelf: PatchELF is a simple utility for modifing existing ELF executables
-patchelf: and libraries. It can change the dynamic loader ("ELF interpreter")
-patchelf: of executables and change the RPATH of executables and libraries.
-patchelf:
-patchelf:
-patchelf:
-patchelf:
-patchelf: Home page: https://nixos.org/patchelf.html
-patchelf:
diff --git a/system/percona-xtrabackup/README b/system/percona-xtrabackup/README
deleted file mode 100644
index 05cb5de107..0000000000
--- a/system/percona-xtrabackup/README
+++ /dev/null
@@ -1,2 +0,0 @@
-Percona XtraBackup is OpenSource online (non-blockable) backup
-solution for InnoDB and XtraDB engines.
diff --git a/system/percona-xtrabackup/percona-xtrabackup.SlackBuild b/system/percona-xtrabackup/percona-xtrabackup.SlackBuild
deleted file mode 100644
index 3127baaa7c..0000000000
--- a/system/percona-xtrabackup/percona-xtrabackup.SlackBuild
+++ /dev/null
@@ -1,155 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for percona-xtrabackup
-
-# Copyright 2012-2013 Heinz Wiesinger, Amsterdam, The Netherlands
-# 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.
-
-PRGNAM=percona-xtrabackup
-VERSION=${VERSION:-2.1.5}
-PERCONA_VERSION=${PERCONA_VERSION:-5.5.31-rel30.3}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-rm -rf Percona-Server-$PERCONA_VERSION
-tar xvf $PRGNAM-$VERSION/Percona-Server-$PERCONA_VERSION.tar.gz
-cd Percona-Server-$PERCONA_VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
-
-# Apply xtrabackup patch
-patch -p1 -i ../$PRGNAM-$VERSION/patches/xtradb55.patch
-
-LIBS="-lrt" \
-cmake \
- -DCMAKE_C_FLAGS="$SLKCFLAGS -I$TMP/$PRGNAM-$VERSION/src" \
- -DCMAKE_CXX_FLAGS="$SLKCFLAGS -I$TMP/$PRGNAM-$VERSION/src" \
- -DENABLED_LOCAL_INFILE=ON \
- -DWITH_INNOBASE_STORAGE_ENGINE=ON \
- -DWITH_PARTITION_STORAGE_ENGINE=ON \
- -DWITH_ZLIB=bundled \
- -DWITH_EXTRA_CHARSETS=all \
- -DENABLE_DTRACE=OFF \
- .
-
-for i in include zlib strings mysys dbug extra storage/innobase; do
- make -C $i
-done
-
-cd $TMP/$PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
-
-# build internal libarchive
-cd src/libarchive
- cmake \
- -DCMAKE_C_FLAGS="$SLKCFLAGS" \
- -DENABLE_CPIO=OFF \
- -DENABLE_OPENSSL=OFF \
- -DENABLE_TAR=OFF \
- -DENABLE_TEST=OFF \
- .
-
- make
-cd -
-
-# build xtrabackup
-cd src
- LIBS="-lrt" \
- CFLAGS="$SLKCFLAGS" \
- make \
- MYSQL_ROOT_DIR="$TMP/Percona-Server-$PERCONA_VERSION" \
- clean
-
- LIBS="-lrt" \
- CFLAGS="$SLKCFLAGS" \
- make \
- MYSQL_ROOT_DIR="$TMP/Percona-Server-$PERCONA_VERSION" \
- XTRABACKUP_VERSION=$VERSION \
- xtradb55
-cd -
-
-mkdir -p $PKG/usr/{bin,man/man1}
-install -m 755 src/xtrabackup_55 $PKG/usr/bin/xtrabackup
-install -m 755 src/xbstream $PKG/usr/bin/
-install -m 755 src/xbcrypt $PKG/usr/bin/
-install -m 755 innobackupex $PKG/usr/bin/
-install -m 644 doc/xtrabackup.1 $PKG/usr/man/man1/
-
-# Fix xtrabackup usage in innobackupex
-sed -i "s/xtrabackup_55/xtrabackup/g" $PKG/usr/bin/innobackupex
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a BUILD.txt COPYING REVNO VERSION \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/system/percona-xtrabackup/percona-xtrabackup.info b/system/percona-xtrabackup/percona-xtrabackup.info
deleted file mode 100644
index e2b8be656b..0000000000
--- a/system/percona-xtrabackup/percona-xtrabackup.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="percona-xtrabackup"
-VERSION="2.1.5"
-HOMEPAGE="http://www.percona.com/software/percona-xtrabackup"
-DOWNLOAD="http://www.percona.com/downloads/XtraBackup/XtraBackup-2.1.5/source/percona-xtrabackup-2.1.5.tar.gz"
-MD5SUM="8782d736ecf7f0a702a8c053c4f9cdb8"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Heinz Wiesinger"
-EMAIL="pprkut@liwjatan.at"
diff --git a/system/percona-xtrabackup/slack-desc b/system/percona-xtrabackup/slack-desc
deleted file mode 100644
index 4ed2d118e3..0000000000
--- a/system/percona-xtrabackup/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-percona-xtrabackup: percona-xtrabackup (Online backup for MySQL / InnoDB)
-percona-xtrabackup:
-percona-xtrabackup: Percona XtraBackup is OpenSource online (non-blockable) backup
-percona-xtrabackup: solution for InnoDB and XtraDB engines.
-percona-xtrabackup:
-percona-xtrabackup: Homepage: http://www.percona.com/software/percona-xtrabackup
-percona-xtrabackup:
-percona-xtrabackup:
-percona-xtrabackup:
-percona-xtrabackup:
-percona-xtrabackup:
diff --git a/system/roxterm/roxterm.info b/system/roxterm/roxterm.info
index 7a9c1bb1a2..84ba1a539e 100644
--- a/system/roxterm/roxterm.info
+++ b/system/roxterm/roxterm.info
@@ -5,6 +5,6 @@ DOWNLOAD="http://downloads.sourceforge.net/roxterm/roxterm-2.9.7.tar.bz2"
MD5SUM="496b5ddc078cede502f168dadef46cb6"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES=""
+REQUIRES="vte2"
MAINTAINER="Erik Hanson"
EMAIL="erik@slackbuilds.org"
diff --git a/system/rxvt-unicode/README b/system/rxvt-unicode/README
deleted file mode 100644
index 8b1c84db04..0000000000
--- a/system/rxvt-unicode/README
+++ /dev/null
@@ -1,8 +0,0 @@
-rxvt-unicode is an enhanced version of the rxvt terminal emulator. It has
-full unicode and Xft support, does font antialiasing and italics, and has
-the same transparency capabilities as ATerm. It can be extended using Perl.
-
-The slackbuild uses environment variable called CONFIG_PERL to control
-whether the embedded perl interpreter will be built. Setting to anything
-other than YES during the build will disable it, which will result in a
-much leaner package.
diff --git a/system/rxvt-unicode/rxvt-unicode.SlackBuild b/system/rxvt-unicode/rxvt-unicode.SlackBuild
deleted file mode 100644
index ab2f3f1387..0000000000
--- a/system/rxvt-unicode/rxvt-unicode.SlackBuild
+++ /dev/null
@@ -1,162 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for rxvt-unicode
-
-# 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.
-
-# Currently maintained by Glenn Becker (glenn.becker@gmail.com)
-# Updates by Kevin Paulus, aka "goarilla" (goarilla@gmail.com)
-# Previously maintained by LEVAI Daniel, 2010-2014
-# Initial SlackBuild written by Dugan Chen (dugan_c@fastmail.fm)
-
-PRGNAM=rxvt-unicode
-VERSION=${VERSION:-9.22}
-BUILD=${BUILD:-2}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-# Option to enable/disable the embedded perl interpreter
-CONFIG_PERL=${CONFIG_PERL:-YES}
-
-if [ "${CONFIG_PERL}" == 'YES' ];then
- _PERL_OPT='--enable-perl'
-else
- _PERL_OPT='--disable-perl'
-fi
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --enable-everything \
- --enable-unicode3 \
- --enable-combining \
- --enable-xft \
- --enable-font-styles \
- --enable-transparency \
- --enable-fading \
- --enable-frills \
- --enable-pixbuf \
- --enable-rxvt-scroll \
- --enable-next-scroll \
- --enable-xterm-scroll \
- ${_PERL_OPT} \
- --enable-xim \
- --enable-iso14755 \
- --enable-keepscrolling \
- --enable-selectionscrolling \
- --enable-mousewheel \
- --enable-slipwheeling \
- --enable-smart-resize \
- --enable-text-blink \
- --enable-pointer-blank \
- --enable-utmp \
- --enable-wtmp \
- --enable-lastlog \
- --enable-256-color \
- --build=$ARCH-slackware-linux
-
-make
-
-mkdir -p $PKG/usr/share/terminfo
-TERMINFO=$PKG/usr/share/terminfo make install DESTDIR=$PKG
-
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | \
- cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-
-mkdir -p $PKG/usr/share/pixmaps/
-cp $CWD/urxvt.xpm $PKG/usr/share/pixmaps/urxvt.xpm
-
-mkdir -p $PKG/usr/share/applications
-cp $CWD/rxvt-unicode.desktop $PKG/usr/share/applications/rxvt-unicode.desktop
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a COPYING Changes INSTALL README.FAQ $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-
-# Fix usr/bin/urxvt permissions to enable writing to utmp and wtmp files
-#
-version="$(echo "$VERSION" |sed -e 's/[^0-9]//g')"
-if [ "$version" -le 922 ]; then
- # standalone
- chgrp utmp usr/bin/urxvt
- chmod 2755 usr/bin/urxvt
- # client
- chgrp utmp usr/bin/urxvtc
- chmod 2755 usr/bin/urxvtc
- # server
- chgrp utmp usr/bin/urxvtd
- chmod 2755 usr/bin/urxvtd
-fi
-
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/system/rxvt-unicode/rxvt-unicode.desktop b/system/rxvt-unicode/rxvt-unicode.desktop
deleted file mode 100644
index 7622918703..0000000000
--- a/system/rxvt-unicode/rxvt-unicode.desktop
+++ /dev/null
@@ -1,9 +0,0 @@
-[Desktop Entry]
-Version=1.0
-Name=urxvt
-Comment=An unicode capable rxvt clone
-Exec=urxvt
-Icon=utilities-terminal
-Terminal=false
-Type=Application
-Categories=System;TerminalEmulator;
diff --git a/system/rxvt-unicode/rxvt-unicode.info b/system/rxvt-unicode/rxvt-unicode.info
deleted file mode 100644
index d02aee8160..0000000000
--- a/system/rxvt-unicode/rxvt-unicode.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="rxvt-unicode"
-VERSION="9.22"
-HOMEPAGE="http://software.schmorp.de/pkg/rxvt-unicode.html"
-DOWNLOAD="http://dist.schmorp.de/rxvt-unicode/rxvt-unicode-9.22.tar.bz2"
-MD5SUM="93782dec27494eb079467dacf6e48185"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Jason Graham"
-EMAIL="jgraha8@gmail.com"
diff --git a/system/rxvt-unicode/slack-desc b/system/rxvt-unicode/slack-desc
deleted file mode 100644
index 2f428ddfd9..0000000000
--- a/system/rxvt-unicode/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-rxvt-unicode: rxvt-unicode (enhanced version of rxvt)
-rxvt-unicode:
-rxvt-unicode: This project is an enhanced version of the rxvt terminal
-rxvt-unicode: emulator. It has full unicode and Xft support, does font
-rxvt-unicode: antialiasing and italics, and has the same transparency
-rxvt-unicode: capabilities as ATerm. It can be extended using Perl.
-rxvt-unicode:
-rxvt-unicode: Visit the rxvt-unicode project online:
-rxvt-unicode: http://software.schmorp.de/pkg/rxvt-unicode/
-rxvt-unicode:
-rxvt-unicode:
diff --git a/system/rxvt-unicode/urxvt.xpm b/system/rxvt-unicode/urxvt.xpm
deleted file mode 100644
index c7b6a2db7e..0000000000
--- a/system/rxvt-unicode/urxvt.xpm
+++ /dev/null
@@ -1,141 +0,0 @@
-/* XPM */
-static char * urxvt_32x32_xpm[] = {
-"32 32 106 2",
-" c None",
-". c #E7E7E7",
-"+ c #E7E3DE",
-"@ c #E7DFDE",
-"# c #29417B",
-"$ c #5A719C",
-"% c #294173",
-"& c #08246B",
-"* c #18387B",
-"= c #294D8C",
-"- c #395D9C",
-"; c #526DAD",
-"> c #6382BD",
-", c #7392C6",
-"' c #84A6DE",
-") c #9CBAE7",
-"! c #B5CFF7",
-"~ c #CEDBEF",
-"{ c #ADBECE",
-"] c #94B2D6",
-"^ c #CEDFEF",
-"/ c #ADBED6",
-"( c #C6D3DE",
-"_ c #52658C",
-": c #7371F7",
-"< c #394573",
-"[ c #B5D3F7",
-"} c #D6D3CE",
-"| c #A5A6A5",
-"1 c #A59E9C",
-"2 c #6B6963",
-"3 c #B5B2AD",
-"4 c #8496AD",
-"5 c #CEC7C6",
-"6 c #9CA6AD",
-"7 c #C6C7C6",
-"8 c #525D6B",
-"9 c #294584",
-"0 c #8C96BD",
-"a c #8C9EC6",
-"b c #425D9C",
-"c c #7392CE",
-"d c #8CA6DE",
-"e c #ADAAA5",
-"f c #A5A29C",
-"g c #211C18",
-"h c #C6BEBD",
-"i c #52618C",
-"j c #B5B6B5",
-"k c #52596B",
-"l c #847D7B",
-"m c #002063",
-"n c #001C52",
-"o c #001C5A",
-"p c #ADC7EF",
-"q c #94A2B5",
-"r c #8C9EAD",
-"s c #8CAAC6",
-"t c #9CAABD",
-"u c #8C9EB5",
-"v c #F7F7F7",
-"w c #DEDBDE",
-"x c #848284",
-"y c #8C8A8C",
-"z c #8C8E8C",
-"A c #D6D7D6",
-"B c #FFFFFF",
-"C c #E7E3E7",
-"D c #DEDFDE",
-"E c #949294",
-"F c #ADAAAD",
-"G c #EFEFEF",
-"H c #CECFCE",
-"I c #BDBEBD",
-"J c #4A4D4A",
-"K c #B5B2B5",
-"L c #9C9E9C",
-"M c #7B7D7B",
-"N c #393C39",
-"O c #9C9A9C",
-"P c #848684",
-"Q c #313031",
-"R c #636563",
-"S c #292C29",
-"T c #F7F3F7",
-"U c #949694",
-"V c #5A595A",
-"W c #EFEBEF",
-"X c #737173",
-"Y c #000000",
-"Z c #ADAEAD",
-"` c #BDBABD",
-" . c #D6D7FF",
-".. c #5A59FF",
-"+. c #CECFFF",
-"@. c #B5B2FF",
-"#. c #DEDBFF",
-"$. c #A5A2A5",
-"%. c #C6C3C6",
-"&. c #ADA6AD",
-"*. c #7371FF",
-"=. c #6B6DFF",
-"-. c #5A5D5A",
-";. c #BDB6BD",
-">. c #CECBC6",
-",. c #BDBAB5",
-" ",
-" ",
-" ",
-". + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ",
-"@ # $ $ $ % & * = - ; > , ' ) ! ~ ~ ~ ~ { ~ ~ ~ ~ ] ^ ~ ~ ~ / ( ",
-"@ _ : : : < & * = - ; > , ' ) [ } } } } | 1 2 2 3 4 @ 1 5 1 6 ( ",
-"@ _ 7 7 7 8 9 0 a b ; > c d ) [ } } } } | e } } e 4 @ f g h 6 ( ",
-"@ i j j j k & * = - ; > , ' ) [ } 2 l } | e 1 1 3 4 @ 1 5 1 6 ( ",
-"@ m n n n o & * = - ; > , ' ) p q q q q r q q q q s t q q q u ( ",
-"@ v v v v v v v v v v v v v v v v v v v v v v v v v v w x y z A ",
-"@ B B B B B B B B B B B B B B B B B C B B B B B B B B D E F | + ",
-"@ B D G H H B H B B H G D B B w G I J I I B B B B B B D F K L + ",
-"@ B M J z N B z O H P B Q v B R B O N O O B B B B B B D M y L + ",
-"@ B M I B B B B J S T B L K I z B B R B B B B B B B B D P U F + ",
-"@ B M I B B B C J V H B T V J W B B R B B B B B B B B D P U F + ",
-"@ B M I B B B V G G J G B X M B B B X S N B B B B B B D P U F + ",
-"@ B B B B B B B B B B B B B B B B B B B B B B B B B B D P U F + ",
-"@ B B B B B B B B B B B B B B B . H H H H C B B B B B D P U F + ",
-"@ B B B B B B B B B B B B B B B M Y Y Y Y R B B B B B D P U F + ",
-"@ B B B B B B v B B B B B B B B M Y Y Y Y R B B B B B D P U F + ",
-"@ B B B B B B J L B B B B B B B M Y Y Y Y R B B B B B D O Z ` + ",
-"@ .....+.@.#.B K R $.B B B B B M Y Y Y Y R B B B B B D %.%.&.+ ",
-"@ +.B B *.=.B B L -.H B B B B B M Y Y Y Y R B B B B B D %.K L + ",
-"@ B B B B B B R K B B B B B B B M Y Y Y Y R B B B B B D %.K L + ",
-"@ B B B B B B B B B B B B B B B M Y Y Y Y R B B B B B D ;.O O + ",
-"@ B B B B B B B B B B B B B B B O Q Q Q Q P B B B B B D $.F F + ",
-"@ B B B B B B B B B B B B B B B B B B B B B B B B B B D | K L + ",
-"@ B B B B B B B B B B B B B B B B B B B B B B B B B B D O Z j + ",
-"H >.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.7 >.>.>.,.",
-" ",
-" ",
-" "};
diff --git a/system/sbsigntools/autogen.patch b/system/sbsigntools/autogen.patch
deleted file mode 100644
index e681792c49..0000000000
--- a/system/sbsigntools/autogen.patch
+++ /dev/null
@@ -1,277 +0,0 @@
-From c8c7e1ba97d15433247bcf87e88485cf7c6b7cc3 Mon Sep 17 00:00:00 2001
-From: James Bottomley <JBottomley@Parallels.com>
-Date: Tue, 26 Jun 2012 09:49:05 +0100
-Subject: sbsigntools: fix autogen.sh for build service
-
----
- AUTHORS | 4 ++
- ChangeLog | 224 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- autogen.sh | 10 ---
- 3 files changed, 228 insertions(+), 10 deletions(-)
- create mode 100644 AUTHORS
- create mode 100644 ChangeLog
-
-diff --git a/AUTHORS b/AUTHORS
-new file mode 100644
-index 0000000..3eaa355
---- /dev/null
-+++ b/AUTHORS
-@@ -0,0 +1,4 @@
-+ Adam Conrad
-+ Ivan Hu
-+ James Bottomley
-+ Jeremy Kerr
-diff --git a/ChangeLog b/ChangeLog
-new file mode 100644
-index 0000000..d5d5ea6
---- /dev/null
-+++ b/ChangeLog
-@@ -0,0 +1,224 @@
-+2012-06-20 c07dfb9 Ivan Hu <ivan.hu@canonical.com>
-+
-+ * configure: Add check for bfh.h
-+
-+2012-06-19 5e07c4e Ivan Hu <ivan.hu@canonical.com>
-+
-+ * tests: Add a test to check invalid PKCS7 signature attaching
-+
-+2012-06-19 bfb778e Ivan Hu <ivan.hu@canonical.com>
-+
-+ * sbattach: Check that attached signatures are valid PKCS7 data
-+
-+2012-06-14 bf6df84 Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * sbverify: Use a variable for image filename
-+
-+2012-06-13 9b7f7fb Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * image: Unconditionally parse PE/COFF data
-+
-+2012-06-13 128f1c1 Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * sbverify: Check for failed image load
-+
-+2012-06-13 b48e256 Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * tests: Add tests for missing image, cert & key files
-+
-+2012-06-13 0af5e01 Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * tests: Execute tests in a clean (temporary) directory
-+
-+2012-06-13 8716e88 Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * tests: Use COMPILE.S for assembing test object
-+
-+2012-06-13 807f0e6 Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * Version 0.2
-+
-+2012-06-13 7c2d8bb Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * docs: Add simple manpage for sbattach
-+
-+2012-06-13 deb9211 Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * automake: Clean generated man files
-+
-+2012-06-13 3cde1e4 Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * tests: Add a few simple tests
-+
-+2012-06-13 cc881c2 Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * Remove unused test.c file
-+
-+2012-06-12 4c79e3a Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * sbattach: Add too to manage detached signatures
-+
-+2012-06-12 564f5bc Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * image: Add facility to write unsigned images
-+
-+2012-06-11 a07b8d2 Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * sbsign,sbverify: Update getopt_long optstrings
-+
-+2012-06-11 5836038 Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * sbverify: Add support for detached signatures
-+
-+2012-06-11 b8a7d51 Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * sbverify: Split image signature table reading to separate function
-+
-+2012-06-11 e9f438c Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * Fix warnings from added -W flags
-+
-+2012-06-11 f19e8bb Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * automake: Add -Wall -Wextra CFLAGS
-+
-+2012-06-11 af4f088 Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * sbsign: Add --detached option to create detached PKCS7 signatures
-+
-+2012-06-11 0c9fbd2 Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * sbsign: fix flag for verbose operation
-+
-+2012-06-11 3673db1 Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * docs: Fix manpage creation
-+
-+2012-05-29 9b2f3a7 Adam Conrad <adconrad@0c3.net>
-+
-+ * autogen.sh: Fix ccan_module assignment
-+
-+2012-05-28 3fb0f00 Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * image: use read_write_all from ccan
-+
-+2012-05-28 f1112b4 Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * image: Fix format specifier for 32-bit builds
-+
-+2012-05-24 d5e634c Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * autoconfiscate
-+
-+2012-05-23 82f8c30 Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * docs: Add initial manpages
-+
-+2012-05-23 c14efcb Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * sbsign,sbverify: help2man-ize usage output
-+
-+2012-05-23 98a4f10 Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * Makefile: Add dist targets
-+
-+2012-05-22 1b2b5c6 Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * ccan: Add ccan import logic
-+
-+2012-05-15 6ff68e5 Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * Move ccan submodule
-+
-+2012-05-15 9a08e25 Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * Remove unused header
-+
-+2012-05-14 bc618c5 Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * Remove pkcs7-simple test file
-+
-+2012-05-14 9ac930e Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * Makefile: add install target
-+
-+2012-05-14 a1b270f Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * Makefile: Comment components
-+
-+2012-05-14 c67b82a Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * sbverify: clean up openssl init
-+
-+2012-05-14 c499763 Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * sbverify: add check for invalid PKCS7 data
-+
-+2012-05-14 74eb766 Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * sbverify: Add certificate chain verification
-+
-+2012-05-12 e111127 Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * verify: move idc-related parsing to idc.c
-+
-+2012-05-12 46cf6a6 Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * sbsign: fix incorrect check for certificate load
-+
-+2012-05-12 57d9f0c Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * image: reformat gap warnings
-+
-+2012-05-12 ab05bec Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * image: add cert table to image size
-+
-+2012-05-12 e1fec08 Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * sbverify: Add check for image hash
-+
-+2012-05-12 fefe97c Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * sbverify: check for presence of signature table
-+
-+2012-05-12 b73f723 Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * Makefile: add $(tools) var
-+
-+2012-05-12 55b1940 Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * sbsigntool -> sbsign
-+
-+2012-05-12 a183de9 Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * image: open output file with O_TRUNC
-+
-+2012-04-24 04b70fc Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * sbsigntooL: expand usage info
-+
-+2012-04-24 9826a43 Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * Add GPLv3 text in COPYING
-+
-+2012-04-24 906654e Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * coff: remove unneeded coff includes
-+
-+2012-04-23 9d3c8b5 Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * Add copyright comments
-+
-+2012-04-23 e019eec Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * image: warn about potential checksum differences
-+
-+2012-04-23 01e33cd Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * idc: allocate using the image context
-+
-+2012-04-23 acd8c0a Jeremy Kerr <jeremy.kerr@canonical.com>
-+
-+ * Initial commit
-+
-diff --git a/autogen.sh b/autogen.sh
-index 32ea6f6..117835b 100755
---- a/autogen.sh
-+++ b/autogen.sh
-@@ -16,16 +16,6 @@ then
- --build-type=automake lib/ccan $ccan_modules
- fi
-
--# Create generatable docs from git
--(
-- echo "Authors of sbsigntool:"
-- echo
-- git log --format='%an' | sort -u | sed 's,^,\t,'
--) > AUTHORS
--
--# Generate simple ChangeLog
--git log --date=short --format='%ad %t %an <%ae>%n%n * %s%n' > ChangeLog
--
- # automagic
- aclocal
- autoheader
---
-2.1.2
-
diff --git a/system/sbsigntools/ccan_makefile.patch b/system/sbsigntools/ccan_makefile.patch
deleted file mode 100644
index e77b958ab8..0000000000
--- a/system/sbsigntools/ccan_makefile.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- sbsigntools-0.7/lib/ccan.git/Makefile 2015-02-07 12:56:54.457781357 +0000
-+++ sbsigntools-0.7/lib/ccan.git/Makefile 2015-02-07 13:00:25.482175092 +0000
-@@ -15,7 +15,7 @@
- EXCLUDE=wwviaudio ogg_to_pcm jmap jset nfs
-
- # Where make scores puts the results
--SCOREDIR=scores/$(shell whoami)/$(shell uname -s)-$(shell uname -m)-$(CC)-$(shell git describe --always --dirty)
-+#SCOREDIR=scores/$(shell whoami)/$(shell uname -s)-$(shell uname -m)-$(CC)-$(shell git describe --always --dirty)
-
- ALL=$(filter-out $(EXCLUDE), $(REALLY_ALL))
-
-@@ -77,7 +77,7 @@ distclean: clean
- scores: $(SCOREDIR)/SUMMARY
-
- $(SCOREDIR)/SUMMARY: $(patsubst ccan/%/_info, $(SCOREDIR)/score-%, $(wildcard ccan/*/_info))
-- git describe --always > $@
-+# git describe --always > $@
- uname -a >> $@
- $(CC) -v >> $@
- cat $^ | grep 'Total score:' >> $@
diff --git a/system/sbsigntools/fix_efi_arch.patch b/system/sbsigntools/fix_efi_arch.patch
deleted file mode 100644
index fceb96f4bf..0000000000
--- a/system/sbsigntools/fix_efi_arch.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 706bec1a957f2fcce3781e326e6e0b2be41a9b86 Mon Sep 17 00:00:00 2001
-From: James Bottomley <JBottomley@Parallels.com>
-Date: Tue, 6 Jan 2015 08:00:28 -0800
-Subject: [PATCH] OBS add correcting definition of EFI_ARCH
-
-Signed-off-by: James Bottomley <JBottomley@Parallels.com>
----
- configure.ac | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/configure.ac b/configure.ac
-index 4891151..2e80e09 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -64,7 +64,7 @@ PKG_CHECK_MODULES(uuid, uuid,
- AC_MSG_ERROR([libuuid (from the uuid package) is required]))
-
- dnl gnu-efi headers require extra include dirs
--EFI_ARCH=$(uname -m)
-+EFI_ARCH=$(uname -m | sed s/i.86/ia32/)
- EFI_CPPFLAGS="-I/usr/include/efi -I/usr/include/efi/$EFI_ARCH \
- -DEFI_FUNCTION_WRAPPER"
- CPPFLAGS_save="$CPPFLAGS"
---
-2.1.2
-
diff --git a/system/sbsigntools/sbsigntools.SlackBuild b/system/sbsigntools/sbsigntools.SlackBuild
index f9701591ff..5f64805828 100644
--- a/system/sbsigntools/sbsigntools.SlackBuild
+++ b/system/sbsigntools/sbsigntools.SlackBuild
@@ -23,15 +23,13 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=sbsigntools
-VERSION=${VERSION:-0.7}
+VERSION=${VERSION:-0.9.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
-CCAN_VERSION=${CCAN_VERSION:-0.0.2}
-
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -42,8 +40,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -62,23 +60,9 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+# The tarball is generated from a clone --recursive of the git repository
+tar xvf $CWD/$PRGNAM-$VERSION.tar.?z*
cd $PRGNAM-$VERSION
-tar -xvf $CWD/ccan-$CCAN_VERSION.tar.gz -C lib/ccan.git
-
-# Next 2 patches taken from
-# https://build.opensuse.org/package/show/home:jejb1:UEFI/sbsigntools?rev=16
-# Fixes build on 32-bit.
-patch -p1 -i $CWD/fix_efi_arch.patch
-
-# Creates changelog and stops git from being called.
-patch -p1 -i $CWD/autogen.patch
-
-# Suppress "not git repo messages"- they're evaluated by the makefile but don't
-# actually get run so it's just noise.
-patch -p1 -i $CWD/ccan_makefile.patch
-rm lib/ccan.git/Makefile-web
-
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -86,7 +70,10 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-./autogen.sh
+sed -i "s|/usr/lib$LIBDIRSUFFIX/efi|/usr/lib$LIBDIRSUFFIX/gnuefi|" configure.ac
+
+NOCONFIGURE=1 ./autogen.sh
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
diff --git a/system/sbsigntools/sbsigntools.info b/system/sbsigntools/sbsigntools.info
index 7a80834512..52bbf91726 100644
--- a/system/sbsigntools/sbsigntools.info
+++ b/system/sbsigntools/sbsigntools.info
@@ -1,10 +1,8 @@
PRGNAM="sbsigntools"
-VERSION="0.7"
+VERSION="0.9.1"
HOMEPAGE="https://git.kernel.org/cgit/linux/kernel/git/jejb/sbsigntools.git/"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/sbsigntools-0.7.tar.gz \
- http://ponce.cc/slackware/sources/repo/ccan-0.0.2.tar.gz"
-MD5SUM="5adb5f7caaf435268f833eb816566c8e \
- 6de60482bf935a159ecb647d2e4a57ab"
+DOWNLOAD="http://ponce.cc/slackware/sources/repo/sbsigntools-0.9.1.tar.xz"
+MD5SUM="3dbdb509be9310523377dc523d4b5bd7"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/system/spacefm/glibc-2.28.patch b/system/spacefm/glibc-2.28.patch
new file mode 100644
index 0000000000..324bc43b93
--- /dev/null
+++ b/system/spacefm/glibc-2.28.patch
@@ -0,0 +1,12 @@
+diff --git a/src/main.c b/src/main.c
+index 645e2ec..9453a3b 100644
+--- a/src/main.c
++++ b/src/main.c
+@@ -23,6 +23,7 @@
+ #include <sys/types.h>
+ #include <sys/socket.h>
+ #include <sys/un.h>
++#include <sys/sysmacros.h>
+
+ #include <signal.h>
+
diff --git a/system/spacefm/spacefm.SlackBuild b/system/spacefm/spacefm.SlackBuild
index c8a93b7eaa..46cf4735bd 100644
--- a/system/spacefm/spacefm.SlackBuild
+++ b/system/spacefm/spacefm.SlackBuild
@@ -81,6 +81,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# https://github.com/IgnorantGuru/spacefm/issues/727
+patch -p1 < $CWD/glibc-2.28.patch
+
CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
diff --git a/system/t1utils/README b/system/t1utils/README
deleted file mode 100644
index 5ff4feb67b..0000000000
--- a/system/t1utils/README
+++ /dev/null
@@ -1,17 +0,0 @@
-t1utils is a collection of simple Type 1 font manipulation programs. Together,
-they allow you to convert between PFA (ASCII) and PFB (binary) formats,
-disassemble PFA or PFB files into human-readable form, and reassemble them
-into PFA or PFB format. Additionally you can extract font resources from
-a Macintosh font file (ATM/Laserwriter), or create a Macintosh Type 1 font
-file from a PFA or PFB font.
-
-* t1ascii: changes PFB (binary) fonts into PFA (ASCII) format
-* t1binary: goes the opposite direction
-* t1disasm: translates PFBs or PFAs into a human-readable and -editable format
-* t1asm: goes the opposite direction
-* t1unmac: translates a Macintosh Type 1 font into either PFB or PFA format
-* t1mac: goes the opposite direction
-
-NOTE: You do not need t1utils if you already have texlive installed as it is
-already included there. However, installing it anyway doesn't do any harm
-either.
diff --git a/system/t1utils/slack-desc b/system/t1utils/slack-desc
deleted file mode 100644
index ecbc9472a2..0000000000
--- a/system/t1utils/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-t1utils: t1utils (Type 1 Font Utilities)
-t1utils:
-t1utils: t1utils is a collection of simple Type 1 font manipulation programs.
-t1utils: Together, they allow you to convert between PFA (ASCII) and PFB
-t1utils: (binary) formats, disassemble PFA or PFB files into human-readable
-t1utils: form, and reassemble them into PFA or PFB format. Additionally you
-t1utils: can extract font resources from a Macintosh font file
-t1utils: (ATM/Laserwriter), or create a Macintosh Type 1 font file from a
-t1utils: PFA or PFB font.
-t1utils:
-t1utils:
diff --git a/system/t1utils/t1utils.SlackBuild b/system/t1utils/t1utils.SlackBuild
deleted file mode 100644
index ab9ef7ba50..0000000000
--- a/system/t1utils/t1utils.SlackBuild
+++ /dev/null
@@ -1,100 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for t1utils
-
-# Copyright 2013-2017 Kyle Guinn <elyk03@gmail.com>, 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.
-
-PRGNAM=t1utils
-VERSION=${VERSION:-1.41}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$(uname -m)" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$(uname -m) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM-$VERSION
-OUTPUT=${OUTPUT:-/tmp}
-
-DOCS="INSTALL LICENSE NEWS.md README.md"
-
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-chmod -R u+w,go-w,a+rX-st .
-
-# -D_GNU_SOURCE is to fix https://github.com/kohler/t1utils/issues/8
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --infodir=/usr/info \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --disable-dependency-tracking \
- --build=$ARCH-slackware-linux \
- CFLAGS="$SLKCFLAGS" \
- CPPFLAGS="-D_GNU_SOURCE" \
-
-make
-make install-strip DESTDIR=$PKG
-
-find $PKG/usr/man -type f -exec gzip -9 {} +
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/system/t1utils/t1utils.info b/system/t1utils/t1utils.info
deleted file mode 100644
index 99d640b848..0000000000
--- a/system/t1utils/t1utils.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="t1utils"
-VERSION="1.41"
-HOMEPAGE="https://www.lcdf.org/type/#t1utils"
-DOWNLOAD="https://www.lcdf.org/type/t1utils-1.41.tar.gz"
-MD5SUM="5430f82fcc27ccfc44526a59fa64849a"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Kyle Guinn"
-EMAIL="elyk03@gmail.com"
diff --git a/system/terminator/terminator.info b/system/terminator/terminator.info
index 217966f2ae..d205f33bf4 100644
--- a/system/terminator/terminator.info
+++ b/system/terminator/terminator.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://launchpad.net/terminator/trunk/1.0/+download/terminator-1.0.ta
MD5SUM="26b2c80a30bead957b83cef3a2b9101f"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="psutil"
+REQUIRES="psutil vte2"
MAINTAINER="Alan Alberghini"
EMAIL="414N@slacky.it"
diff --git a/system/tinyterm/tinyterm.info b/system/tinyterm/tinyterm.info
index 64685cb803..3f3a60cc83 100644
--- a/system/tinyterm/tinyterm.info
+++ b/system/tinyterm/tinyterm.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://github.com/ryanpcmcquen/tinyterm/archive/0.5.8/tinyterm-0.5.8.
MD5SUM="d79ebef1fd122a5b06e348bd24437e41"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES=""
+REQUIRES="vte2"
MAINTAINER="B. Watson"
EMAIL="yalhcru@gmail.com"
diff --git a/system/ttyrec/ttyrec.SlackBuild b/system/ttyrec/ttyrec.SlackBuild
index caecc00574..4b4f00653b 100644
--- a/system/ttyrec/ttyrec.SlackBuild
+++ b/system/ttyrec/ttyrec.SlackBuild
@@ -72,7 +72,7 @@ find -L . \
# Fixed: "Out of pty's Terminated"
patch -p1 < $CWD/ttyrec-1.0.8.RHEL5.patch
-make
+make CFLAGS+="$SLKCFLAGS -DSVR4 -DHAVE_inotify -D_XOPEN_SOURCE=500"
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
diff --git a/system/uhd/uhd.SlackBuild b/system/uhd/uhd.SlackBuild
index 1171a01c0a..d7100d6204 100644
--- a/system/uhd/uhd.SlackBuild
+++ b/system/uhd/uhd.SlackBuild
@@ -23,13 +23,13 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=uhd
-VERSION=${VERSION:-003_005_002}
+VERSION=${VERSION:-003_009_007}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -40,8 +40,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -59,9 +59,9 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf UHD-Mirror-release_$VERSION
-tar xvf $CWD/release_$VERSION.tar.gz || tar xvf $CWD/UHD-Mirror-release_$VERSION.tar.gz
-cd UHD-Mirror-release_$VERSION/host
+rm -rf $PRGNAM-release_$VERSION
+tar xvf $CWD/release_$VERSION.tar.gz
+cd $PRGNAM-release_$VERSION/host
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
diff --git a/system/uhd/uhd.info b/system/uhd/uhd.info
index 15d3fc0305..87365de4d6 100644
--- a/system/uhd/uhd.info
+++ b/system/uhd/uhd.info
@@ -1,10 +1,10 @@
PRGNAM="uhd"
-VERSION="003_005_002"
+VERSION="003_009_007"
HOMEPAGE="https://www.ettus.com/"
-DOWNLOAD="https://github.com/EttusResearch/UHD-Mirror/archive/release_003_005_002.tar.gz"
-MD5SUM="14f914b68bb9f58b1d08ae97000c03f4"
+DOWNLOAD="https://github.com/EttusResearch/uhd/archive/release_003_009_007.tar.gz"
+MD5SUM="3f024ac4d536a8aaf1ad66617deda941"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="python-cheetah"
+REQUIRES="Mako python-cheetah python-requests"
MAINTAINER="Georgi Kolev"
EMAIL="shadowx@escom.bg"
diff --git a/system/virt-manager/Add-Slackware-to-OS-choices.patch b/system/virt-manager/Add-Slackware-to-OS-choices.patch
index 18aadb62cf..53cda0106b 100644
--- a/system/virt-manager/Add-Slackware-to-OS-choices.patch
+++ b/system/virt-manager/Add-Slackware-to-OS-choices.patch
@@ -1,7 +1,7 @@
-diff -Nur virt-manager-1.5.0.orig/virtinst/osdict.py virt-manager-1.5.0/virtinst/osdict.py
---- virt-manager-1.5.0.orig/virtinst/osdict.py 2018-01-27 14:57:20.000000000 -0600
-+++ virt-manager-1.5.0/virtinst/osdict.py 2018-02-19 00:52:00.750416744 -0600
-@@ -159,6 +159,7 @@
+diff -Nur virt-manager-2.0.0.orig/virtinst/osdict.py virt-manager-2.0.0/virtinst/osdict.py
+--- virt-manager-2.0.0.orig/virtinst/osdict.py 2018-10-13 13:59:42.000000000 -0500
++++ virt-manager-2.0.0/virtinst/osdict.py 2018-11-21 23:20:14.635363630 -0600
+@@ -121,6 +121,7 @@
"rhel5": "rhel5.0",
"rhel6": "rhel6.0",
"rhel7": "rhel7.0",
@@ -9,21 +9,12 @@ diff -Nur virt-manager-1.5.0.orig/virtinst/osdict.py virt-manager-1.5.0/virtinst
"ubuntuhardy": "ubuntu8.04",
"ubuntuintrepid": "ubuntu8.10",
"ubuntujaunty": "ubuntu9.04",
-@@ -373,7 +374,7 @@
- # EOL date. So assume None == EOL, add some manual work arounds.
- # We should fix this in a new libosinfo version, and then drop
- # this hack
-- if self._is_related_to(["fedora24", "rhel7.0", "debian6",
-+ if self._is_related_to(["slackware14.2", "fedora24", "rhel7.0", "debian6",
- "ubuntu13.04", "win8", "win2k12", "mageia5", "centos7.0"],
- check_clones=False, check_derives=False):
- return True
-diff -Nur virt-manager-1.5.0.orig/virtinst/urlfetcher.py virt-manager-1.5.0/virtinst/urlfetcher.py
---- virt-manager-1.5.0.orig/virtinst/urlfetcher.py 2018-01-27 14:57:20.000000000 -0600
-+++ virt-manager-1.5.0/virtinst/urlfetcher.py 2018-02-19 00:52:00.751416752 -0600
-@@ -1379,6 +1379,43 @@
- return False
+diff -Nur virt-manager-2.0.0.orig/virtinst/urldetect.py virt-manager-2.0.0/virtinst/urldetect.py
+--- virt-manager-2.0.0.orig/virtinst/urldetect.py 2018-10-13 13:26:55.000000000 -0500
++++ virt-manager-2.0.0/virtinst/urldetect.py 2018-11-21 23:25:08.056358905 -0600
+@@ -834,6 +834,42 @@
+ self._kernel_paths = self.cache.get_treeinfo_media(self.type)
+class SlackwareDistro(Distro):
+ # slackware doesn't have installable URLs, so this is just for a
@@ -61,7 +52,6 @@ diff -Nur virt-manager-1.5.0.orig/virtinst/urlfetcher.py virt-manager-1.5.0/virt
+ logging.debug("Regex didn't match, not a %s distro", self.name)
+ return False
+
-+
+
# Build list of all *Distro classes
def _build_distro_list():
- allstores = []
diff --git a/system/virt-manager/virt-manager.SlackBuild b/system/virt-manager/virt-manager.SlackBuild
index 3a8402bd75..47cc57a372 100644
--- a/system/virt-manager/virt-manager.SlackBuild
+++ b/system/virt-manager/virt-manager.SlackBuild
@@ -7,7 +7,7 @@
# Lots of mods by rworkman for 1.x
PRGNAM=virt-manager
-VERSION=${VERSION:-1.5.1}
+VERSION=${VERSION:-2.0.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -56,8 +56,8 @@ find -L . \
# Add Slackware support
patch -p1 < $CWD/Add-Slackware-to-OS-choices.patch
-python setup.py configure
-python setup.py install --root=$PKG
+python3 setup.py configure
+python3 setup.py install --root=$PKG
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
diff --git a/system/virt-manager/virt-manager.info b/system/virt-manager/virt-manager.info
index 6bdff3b232..7221e81949 100644
--- a/system/virt-manager/virt-manager.info
+++ b/system/virt-manager/virt-manager.info
@@ -1,10 +1,10 @@
PRGNAM="virt-manager"
-VERSION="1.5.1"
+VERSION="2.0.0"
HOMEPAGE="http://virt-manager.org/"
-DOWNLOAD="http://virt-manager.org/download/sources/virt-manager/virt-manager-1.5.1.tar.gz"
-MD5SUM="32a929fd91fca9767730abaefb94661d"
+DOWNLOAD="https://virt-manager.org/download/sources/virt-manager/virt-manager-2.0.0.tar.gz"
+MD5SUM="5326c493de70453497b39d5a688e530f"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="libosinfo libvirt-glib libvirt-python gnome-python2-gconf tunctl ipaddr-py python-requests gtk-vnc spice-gtk vte3"
+REQUIRES="libosinfo libvirt-glib libvirt-python python-requests gtk-vnc spice-gtk vte3"
MAINTAINER="Robby Workman"
EMAIL="rworkman@slackbuilds.org"
diff --git a/system/virtualbox-addons/rc.vboxadd.diff b/system/virtualbox-addons/rc.vboxadd.diff
index f0b3acddd0..bb5fdde0fe 100644
--- a/system/virtualbox-addons/rc.vboxadd.diff
+++ b/system/virtualbox-addons/rc.vboxadd.diff
@@ -1,6 +1,7 @@
---- vboxadd.sh.orig 2016-11-23 16:24:46.000000000 +0100
-+++ vboxadd.sh 2016-12-27 16:06:46.413895799 +0100
-@@ -154,42 +154,9 @@
+diff -ur VirtualBox-5.2.4.orig/src/VBox/Additions/linux/installer/vboxadd.sh VirtualBox-5.2.4/src/VBox/Additions/linux/installer/vboxadd.sh
+--- VirtualBox-5.2.4.orig/src/VBox/Additions/linux/installer/vboxadd.sh 2017-12-19 10:22:03.000000000 +0100
++++ VirtualBox-5.2.4/src/VBox/Additions/linux/installer/vboxadd.sh 2018-01-07 17:23:23.225998245 +0100
+@@ -130,18 +130,9 @@
dev=/dev/vboxguest
userdev=/dev/vboxuser
@@ -8,165 +9,127 @@
owner=vboxadd
group=1
--test_for_gcc_and_make()
--{
-- which make > /dev/null 2>&1 || printf "\nThe make utility was not found. If the following module compilation fails then\nthis could be the reason and you should try installing it.\n"
-- which gcc > /dev/null 2>&1 || printf "\nThe gcc utility was not found. If the following module compilation fails then\nthis could be the reason and you should try installing it.\n"
--}
--
--test_sane_kernel_dir()
--{
-- KERN_VER=`uname -r`
-- KERN_DIR="/lib/modules/$KERN_VER/build"
-- if [ -d "$KERN_DIR" ]; then
-- KERN_REL=`make -sC $KERN_DIR --no-print-directory kernelrelease 2>/dev/null || true`
-- if [ -z "$KERN_REL" -o "x$KERN_REL" = "x$KERN_VER" ]; then
-- return 0
-- fi
-- fi
-- printf "\nThe headers for the current running kernel were not found. If the following\nmodule compilation fails then this could be the reason.\n"
-- if [ "$system" = "redhat" ]; then
-- if echo "$KERN_VER" | grep -q "uek"; then
-- printf "The missing package can be probably installed with\nyum install kernel-uek-devel-$KERN_VER\n"
-- else
-- printf "The missing package can be probably installed with\nyum install kernel-devel-$KERN_VER\n"
-- fi
-- elif [ "$system" = "suse" ]; then
-- KERN_VER_SUSE=`echo "$KERN_VER" | sed 's/.*-\([^-]*\)/\1/g'`
-- KERN_VER_BASE=`echo "$KERN_VER" | sed 's/\(.*\)-[^-]*/\1/g'`
-- printf "The missing package can be probably installed with\nzypper install kernel-$KERN_VER_SUSE-devel-$KERN_VER_BASE\n"
-- elif [ "$system" = "debian" ]; then
-- printf "The missing package can be probably installed with\napt-get install linux-headers-$KERN_VER\n"
-- fi
--}
+-if test -r $config; then
+- . $config
+-else
+- fail "Configuration file $config not found"
+-fi
+-test -n "$INSTALL_DIR" -a -n "$INSTALL_VER" ||
+- fail "Configuration file $config not complete"
-
running_vboxguest()
{
lsmod | grep -q "vboxguest[^_-]"
-@@ -261,13 +228,6 @@
- start()
- {
- begin "Starting the VirtualBox Guest Additions ";
-- if test -r $config; then
-- . $config
-- else
-- fail "Configuration file $config not found"
+@@ -252,28 +243,6 @@
+ }
+ fi # INSTALL_NO_MODULE_BUILDS
+
+- # Put the X.Org driver in place. This is harmless if it is not needed.
+- "${INSTALL_DIR}/init/vboxadd-x11" setup 2>> "${LOG}"
+- # Install the guest OpenGL drivers. For now we don't support
+- # multi-architecture installations
+- rm -f /etc/ld.so.conf.d/00vboxvideo.conf
+- rm -Rf /var/lib/VBoxGuestAdditions/lib
+- if /usr/bin/VBoxClient --check3d 2>/dev/null; then
+- mkdir -p /var/lib/VBoxGuestAdditions/lib
+- ln -sf "${INSTALL_DIR}/lib/VBoxOGL.so" /var/lib/VBoxGuestAdditions/lib/libGL.so.1
+- # SELinux for the OpenGL libraries, so that gdm can load them during the
+- # acceleration support check. This prevents an "Oh no, something has gone
+- # wrong!" error when starting EL7 guests.
+- if test -e /etc/selinux/config; then
+- if command -v semanage > /dev/null; then
+- semanage fcontext -a -t lib_t "/var/lib/VBoxGuestAdditions/lib/libGL.so.1"
+- fi
+- chcon -h -t lib_t "/var/lib/VBoxGuestAdditions/lib/libGL.so.1"
+- fi
+- echo "/var/lib/VBoxGuestAdditions/lib" > /etc/ld.so.conf.d/00vboxvideo.conf
- fi
-- test -n "$INSTALL_DIR" -a -n "$INSTALL_VER" ||
-- fail "Configuration file $config not complete"
- uname -r | grep -q -E '^2\.6|^3|^4' 2>/dev/null &&
- ps -A -o comm | grep -q '/*udevd$' 2>/dev/null ||
- no_udev=1
-@@ -378,218 +338,16 @@
+- ldconfig
+-
+ # Mount all shared folders from /etc/fstab. Normally this is done by some
+ # other startup script but this requires the vboxdrv kernel module loaded.
+ # This isn't necessary anymore as the vboxsf module is autoloaded.
+@@ -303,195 +272,16 @@
return 0
}
--## Update the initramfs. Debian and Ubuntu put the graphics driver in, and
--# need the touch(1) command below. Everyone else that I checked just need
--# the right module alias file from depmod(1) and only use the initramfs to
--# load the root filesystem, not the boot splash. update-initramfs works
--# for the first two and dracut for every one else I checked. We are only
--# interested in distributions recent enough to use the KMS vboxvideo driver.
--## @param $1 kernel version to update for.
--update_module_dependencies()
--{
-- depmod "${1}"
-- rm -f "/lib/modules/${1}/initrd/vboxvideo"
-- test -d "/lib/modules/${1}/initrd" &&
-- test -f "/lib/modules/${1}/misc/vboxvideo.ko" &&
-- touch "/lib/modules/${1}/initrd/vboxvideo"
-- test -n "${QUICKSETUP}" && return
-- if type dracut >/dev/null 2>&1; then
-- dracut -f "/boot/initramfs-${1}.img" "${1}"
-- elif type update-initramfs >/dev/null 2>&1; then
-- update-initramfs -u -k "${1}"
-- fi
--}
--
-# Remove any existing VirtualBox guest kernel modules from the disk, but not
-# from the kernel as they may still be in use
-cleanup_modules()
-{
-- if [ -n "$(which dkms 2>/dev/null)" ]; then
-- begin "Removing existing VirtualBox DKMS kernel modules"
-- $DODKMS uninstall $OLDMODULES > $LOG
-- succ_msg
-- fi
-- begin "Removing existing VirtualBox non-DKMS kernel modules"
-- for i in $OLDMODULES; do
-- find /lib/modules -name $i\* | xargs rm 2>/dev/null
+- log "Removing existing VirtualBox kernel modules."
+- for i in ${OLDMODULES}; do
+- # We no longer support DKMS, remove any leftovers.
+- rm -rf "/var/lib/dkms/${i}"*
+- # And remove old modules.
+- rm -f /lib/modules/*/misc/"${i}"*
- done
-- succ_msg
+- # Remove leftover module folders.
+- for i in /lib/modules/*/misc; do
+- test -d "${i}" && rmdir -p "${i}" 2>/dev/null
+- done
+- rm -f /etc/depmod.d/vboxvideo-upstream.conf
-}
-
-# Build and install the VirtualBox guest kernel modules
-setup_modules()
-{
- # don't stop the old modules here -- they might be in use
-- cleanup_modules
-- begin "Building the VirtualBox Guest Additions kernel modules"
--
-- # Short cut out if a dkms build succeeds
-- if [ -n "$(which dkms 2>/dev/null)" ] &&
-- $DODKMS install vboxguest $INSTALL_VER >> $LOG 2>&1; then
-- succ_msg
-- return 0
-- fi
--
-- test_for_gcc_and_make
-- test_sane_kernel_dir
+- test -z "${QUICKSETUP}" && cleanup_modules
+- # This does not work for 2.4 series kernels. How sad.
+- test -n "${QUICKSETUP}" && test -f "${MODULE_DIR}/vboxguest.ko" && return 0
+- info "Building the VirtualBox Guest Additions kernel modules."
-
-- echo
-- begin "Building the main Guest Additions module"
+- # We are allowed to do ">> $LOG" after we have called "log()" once.
+- log "Building the main Guest Additions module."
- if ! $BUILDINTMP \
- --save-module-symvers /tmp/vboxguest-Module.symvers \
- --module-source $MODULE_SRC/vboxguest \
- --no-print-directory install >> $LOG 2>&1; then
-- show_error "Look at $LOG to find out what went wrong"
-- return 1
+- # If check_module_dependencies.sh fails it prints a message itself.
+- "${INSTALL_DIR}"/other/check_module_dependencies.sh 2>&1 &&
+- info "Look at $LOG to find out what went wrong"
+- return 0
- fi
-- succ_msg
-- begin "Building the shared folder support module"
+- log "Building the shared folder support module"
- if ! $BUILDINTMP \
- --use-module-symvers /tmp/vboxguest-Module.symvers \
- --module-source $MODULE_SRC/vboxsf \
- --no-print-directory install >> $LOG 2>&1; then
-- show_error "Look at $LOG to find out what went wrong"
-- return 1
+- info "Look at $LOG to find out what went wrong"
+- return 0
- fi
-- succ_msg
-- begin "Building the graphics driver module"
+- log "Building the graphics driver module"
- if ! $BUILDINTMP \
- --use-module-symvers /tmp/vboxguest-Module.symvers \
- --module-source $MODULE_SRC/vboxvideo \
- --no-print-directory install >> $LOG 2>&1; then
-- show_error "Look at $LOG to find out what went wrong"
+- info "Look at $LOG to find out what went wrong"
- fi
-- succ_msg
-- update_module_dependencies "${KERN_VER}"
+- [ -d /etc/depmod.d ] || mkdir /etc/depmod.d
+- echo "override vboxguest * misc" > /etc/depmod.d/vboxvideo-upstream.conf
+- echo "override vboxsf * misc" >> /etc/depmod.d/vboxvideo-upstream.conf
+- echo "override vboxvideo * misc" >> /etc/depmod.d/vboxvideo-upstream.conf
+- depmod
- return 0
-}
-
--# Do non-kernel bits needed for the kernel modules to work properly (user
--# creation, udev, mount helper...)
--extra_setup()
+-create_vbox_user()
-{
-- begin "Doing non-kernel setup of the Guest Additions"
-- echo "Creating user for the Guest Additions." >> $LOG
+- log "Creating user for the Guest Additions."
- # This is the LSB version of useradd and should work on recent
- # distributions
- useradd -d /var/run/vboxadd -g 1 -r -s /bin/false vboxadd >/dev/null 2>&1
- # And for the others, we choose a UID ourselves
- useradd -d /var/run/vboxadd -g 1 -u 501 -o -s /bin/false vboxadd >/dev/null 2>&1
-
-- # Add a group "vboxsf" for Shared Folders access
-- # All users which want to access the auto-mounted Shared Folders have to
-- # be added to this group.
-- groupadd -r -f vboxsf >/dev/null 2>&1
+-}
-
+-create_udev_rule()
+-{
- # Create udev description file
- if [ -d /etc/udev/rules.d ]; then
-- echo "Creating udev rule for the Guest Additions kernel module." >> $LOG
+- log "Creating udev rule for the Guest Additions kernel module."
- udev_call=""
- udev_app=`which udevadm 2> /dev/null`
- if [ $? -eq 0 ]; then
@@ -189,91 +152,97 @@
- echo "KERNEL=${udev_fix}\"vboxguest\", NAME=\"vboxguest\", OWNER=\"vboxadd\", MODE=\"0660\"" > /etc/udev/rules.d/60-vboxadd.rules
- echo "KERNEL=${udev_fix}\"vboxuser\", NAME=\"vboxuser\", OWNER=\"vboxadd\", MODE=\"0666\"" >> /etc/udev/rules.d/60-vboxadd.rules
- fi
+-}
+-
+-create_module_rebuild_script()
+-{
+- # And a post-installation script for rebuilding modules when a new kernel
+- # is installed.
+- mkdir -p /etc/kernel/postinst.d /etc/kernel/prerm.d
+- cat << EOF > /etc/kernel/postinst.d/vboxadd
+-#!/bin/sh
+-test -d "/lib/modules/\${1}/build" || exit 0
+-KERN_VER="\${1}" /sbin/rcvboxadd quicksetup
+-exit 0
+-EOF
+- cat << EOF > /etc/kernel/prerm.d/vboxadd
+-#!/bin/sh
+-for i in ${OLDMODULES}; do rm -f /lib/modules/"\${1}"/misc/"\${i}".ko; done
+-rmdir -p /lib/modules/"\$1"/misc 2>/dev/null
+-exit 0
+-EOF
+- chmod 0755 /etc/kernel/postinst.d/vboxadd /etc/kernel/prerm.d/vboxadd
+-}
+-
+-shared_folder_setup()
+-{
+- # Add a group "vboxsf" for Shared Folders access
+- # All users which want to access the auto-mounted Shared Folders have to
+- # be added to this group.
+- groupadd -r -f vboxsf >/dev/null 2>&1
-
-- # Put mount.vboxsf in the right place
-- ln -sf "$lib_path/$PACKAGE/mount.vboxsf" /sbin
-- # And an rc file to re-build the kernel modules and re-set-up the X server.
-- ln -sf "$lib_path/$PACKAGE/vboxadd" /sbin/rcvboxadd
-- ln -sf "$lib_path/$PACKAGE/vboxadd-x11" /sbin/rcvboxadd-x11
+- # Put the mount.vboxsf mount helper in the right place.
+- ## @todo It would be nicer if the kernel module just parsed parameters
+- # itself instead of needing a separate binary to do that.
+- ln -sf "${INSTALL_DIR}/other/mount.vboxsf" /sbin
- # SELinux security context for the mount helper.
- if test -e /etc/selinux/config; then
- # This is correct. semanage maps this to the real path, and it aborts
- # with an error, telling you what you should have typed, if you specify
-- # the real path. The "chcon" is there as a back-up in case this is
-- # different on old guests.
-- semanage fcontext -a -t mount_exec_t "/usr/lib/$PACKAGE/mount.vboxsf"
-- chcon -t mount_exec_t "$lib_path/$PACKAGE/mount.vboxsf"
+- # the real path. The "chcon" is there as a back-up for old guests.
+- command -v semanage > /dev/null &&
+- semanage fcontext -a -t mount_exec_t "${INSTALL_DIR}/other/mount.vboxsf"
+- chcon -t mount_exec_t "${INSTALL_DIR}/other/mount.vboxsf"
- fi
-- succ_msg
-}
-
# setup_script
setup()
{
-- if test -r $config; then
-- . $config
-- else
-- fail "Configuration file $config not found"
-- fi
-- test -n "$INSTALL_DIR" -a -n "$INSTALL_VER" ||
-- fail "Configuration file $config not complete"
- export BUILD_TYPE
- export USERNAME
-
-- rm -f $LOG
- MODULE_SRC="$INSTALL_DIR/src/vboxguest-$INSTALL_VER"
- BUILDINTMP="$MODULE_SRC/build_in_tmp"
-- DODKMS="$MODULE_SRC/do_dkms"
- chcon -t bin_t "$BUILDINTMP" > /dev/null 2>&1
-- chcon -t bin_t "$DODKMS" > /dev/null 2>&1
-
-- setup_modules
-- mod_succ="$?"
-- extra_setup
-- if [ "$mod_succ" -eq "0" ]; then
-- if running_vboxguest || running_vboxadd; then
-- printf "You should restart your guest to make sure the new modules are actually used\n\n"
-- else
-- start
-- fi
+- test -z "${INSTALL_NO_MODULE_BUILDS}" && setup_modules
+- create_vbox_user
+- create_udev_rule
+- test -z "${INSTALL_NO_MODULE_BUILDS}" && create_module_rebuild_script
+- test -n "${QUICKSETUP}" && return 0
+- shared_folder_setup
+- if running_vboxguest || running_vboxadd; then
+- info "Running kernel modules will not be replaced until the system is restarted"
- fi
+- return 0
+ echo "Not implemented! Please use the virtualbox-kernel-addons.SlackBuild available at SlackBuilds.org instead."
}
# cleanup_script
cleanup()
{
-- if test -r $config; then
-- . $config
-- test -n "$INSTALL_DIR" -a -n "$INSTALL_VER" ||
-- fail "Configuration file $config not complete"
-- DODKMS="$INSTALL_DIR/src/vboxguest-$INSTALL_VER/do_dkms"
-- elif test -x ./do_dkms; then # Executing as part of the installer...
-- DODKMS=./do_dkms
-- else
-- fail "Configuration file $config not found"
+- if test -z "${INSTALL_NO_MODULE_BUILDS}"; then
+- # Delete old versions of VBox modules.
+- cleanup_modules
+- depmod
+-
+- # Remove old module sources
+- for i in $OLDMODULES; do
+- rm -rf /usr/src/$i-*
+- done
- fi
-
-- # Delete old versions of VBox modules.
-- cleanup_modules
-- for i in /lib/modules/*; do
-- update_module_dependencies "${i#/lib/modules/}"
-- done
--
-- # Remove old module sources
-- for i in $OLDMODULES; do
-- rm -rf /usr/src/$i-*
-- done
--
- # Clean-up X11-related bits
-- /sbin/rcvboxadd-x11 cleanup
+- "${INSTALL_DIR}/init/vboxadd-x11" cleanup 2>> "${LOG}"
-
- # Remove other files
- rm /sbin/mount.vboxsf 2>/dev/null
-- rm /sbin/rcvboxadd 2>/dev/null
-- rm /sbin/rcvboxadd-x11 2>/dev/null
+- if test -z "${INSTALL_NO_MODULE_BUILDS}"; then
+- rm -f /etc/kernel/postinst.d/vboxadd /etc/kernel/prerm.d/vboxadd
+- rmdir -p /etc/kernel/postinst.d /etc/kernel/prerm.d 2>/dev/null
+- fi
- rm /etc/udev/rules.d/60-vboxadd.rules 2>/dev/null
-- rm -f /lib/modules/*/initrd/vboxvideo
+ echo "Not implemented! Please use removepkg or pkgtool to remove virtualbox-addons and/or virtualbox-kernel-addons instead."
}
diff --git a/system/virtualbox-addons/virtualbox-addons.SlackBuild b/system/virtualbox-addons/virtualbox-addons.SlackBuild
index 063fa71844..4063763607 100644
--- a/system/virtualbox-addons/virtualbox-addons.SlackBuild
+++ b/system/virtualbox-addons/virtualbox-addons.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for virtualbox-addons
-# Copyright 2008-2017 Heinz Wiesinger, Amsterdam, The Netherlands
+# Copyright 2008-2018 Heinz Wiesinger, Amsterdam, The Netherlands
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,7 +24,7 @@
PRGNAM=virtualbox-addons
SRCNAM=VirtualBox
-VERSION=${VERSION:-5.0.40}
+VERSION=${VERSION:-5.2.8}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -86,22 +86,20 @@ find -L . \
# Use virtualbox-kernel-addons.SlackBuild for this.
patch -d src/VBox/Additions/linux/installer/ -i $CWD/rc.vboxadd.diff
-# We set the environment variables manually to avoid dependency on acpica
-export BUILD_PLATFORM="linux"
-export BUILD_PLATFORM_ARCH="$TARGET"
-export BUILD_TARGET="linux"
-export BUILD_TARGET_ARCH="$TARGET"
-export BUILD_TARGET_CPU="$ARCH"
-export BUILD_TYPE="release"
-export PATH_KBUILD="$TMP/$SRCNAM-${VERSION}/kBuild"
-export PATH_DEVTOOLS="$TMP/$SRCNAM-${VERSION}/tools"
-path_kbuild_bin="$PATH_KBUILD/bin/$BUILD_TARGET.$BUILD_PLATFORM_ARCH"
-export PATH_KBUILD_BIN="$path_kbuild_bin"
-path_dev_bin="$PATH_DEVTOOLS/$BUILD_TARGET.$BUILD_PLATFORM_ARCH"/bin
-echo "$PATH" | grep -q "$path_kbuild_bin" || PATH="$path_kbuild_bin:$PATH"
-echo "$PATH" | grep -q "$path_dev_bin" || PATH="$path_dev_bin:$PATH"
-export PATH
-unset path_kbuild_bin path_dev_bin
+# Cheat!
+sed -i "s|cc_maj -gt 7|cc_maj -gt 8|" configure
+
+./configure \
+ --only-additions \
+ --disable-kmods \
+ --with-makeself=/usr/bin/echo
+
+. ./env.sh
+
+OPENSSL=$(grep openssl src/libs/Makefile.kmk | cut -d "/" -f 2)
+
+mkdir -p src/libs/$OPENSSL
+touch src/libs/$OPENSSL/Makefile.kmk
kmk -j ${JOBS} LOCALCFG=$CWD/LocalConfig.kmk
@@ -135,8 +133,9 @@ cd out/linux.$TARGET/release/bin/additions
install -m 755 VBoxClient $PKG/usr/bin/
install -m 755 VBoxService $PKG/usr/sbin/
install -m 4755 mount.vboxsf $PKG/sbin/mount.vboxsf
- install -m 644 vboxvideo_drv_$XSERVER.so \
- $PKG/usr/lib$LIBDIRSUFFIX/xorg/modules/drivers/vboxvideo_drv.so
+## slackware > 14.2 already ships this
+# install -m 644 vboxvideo_drv_$XSERVER.so \
+# $PKG/usr/lib$LIBDIRSUFFIX/xorg/modules/drivers/vboxvideo_drv.so
install -m 644 VBoxOGLcrutil.so $PKG/usr/lib$LIBDIRSUFFIX
install -m 644 VBoxOGLerrorspu.so $PKG/usr/lib$LIBDIRSUFFIX
@@ -145,12 +144,9 @@ cd out/linux.$TARGET/release/bin/additions
install -m 644 VBoxOGLpackspu.so $PKG/usr/lib$LIBDIRSUFFIX
install -m 644 VBoxOGLpassthroughspu.so $PKG/usr/lib$LIBDIRSUFFIX
install -m 644 VBoxOGL.so $PKG/usr/lib$LIBDIRSUFFIX
+ install -m 644 VBoxEGL.so $PKG/usr/lib$LIBDIRSUFFIX
install -m 755 $CWD/vbox-uninstall-guest-additions $PKG/usr/sbin/
-
- mkdir -p $PKG/usr/lib$LIBDIRSUFFIX/xorg/modules/dri
- ln -s /usr/lib$LIBDIRSUFFIX/VBoxOGL.so \
- $PKG/usr/lib$LIBDIRSUFFIX/xorg/modules/dri/vboxvideo_dri.so
cd -
# kconf_update script to disable OpenGL within KDE
diff --git a/system/virtualbox-addons/virtualbox-addons.info b/system/virtualbox-addons/virtualbox-addons.info
index bf313e7e8d..df1ddc3012 100644
--- a/system/virtualbox-addons/virtualbox-addons.info
+++ b/system/virtualbox-addons/virtualbox-addons.info
@@ -1,8 +1,8 @@
PRGNAM="virtualbox-addons"
-VERSION="5.0.40"
+VERSION="5.2.8"
HOMEPAGE="https://www.virtualbox.org"
-DOWNLOAD="http://download.virtualbox.org/virtualbox/5.0.40/VirtualBox-5.0.40.tar.bz2"
-MD5SUM="53b259e48a137b0185c169590e2dcb77"
+DOWNLOAD="http://download.virtualbox.org/virtualbox/5.2.8/VirtualBox-5.2.8.tar.bz2"
+MD5SUM="e731ea9c5c31096ec4c2a3bfba26665c"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/system/virtualbox-extension-pack/virtualbox-extension-pack.SlackBuild b/system/virtualbox-extension-pack/virtualbox-extension-pack.SlackBuild
index 9115605537..d6b1e9e9da 100644
--- a/system/virtualbox-extension-pack/virtualbox-extension-pack.SlackBuild
+++ b/system/virtualbox-extension-pack/virtualbox-extension-pack.SlackBuild
@@ -4,7 +4,7 @@
# Originally written by Vliegendehuiskat, vliegendehuiskat [at] gmail [dot] com
-# Copyright 2014-2017 Heinz Wiesinger, Amsterdam, The Netherlands
+# Copyright 2014-2018 Heinz Wiesinger, Amsterdam, The Netherlands
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=virtualbox-extension-pack
-VERSION=${VERSION:-5.0.40}
+VERSION=${VERSION:-5.2.8}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
diff --git a/system/virtualbox-extension-pack/virtualbox-extension-pack.info b/system/virtualbox-extension-pack/virtualbox-extension-pack.info
index 701af5aaef..43175f4439 100644
--- a/system/virtualbox-extension-pack/virtualbox-extension-pack.info
+++ b/system/virtualbox-extension-pack/virtualbox-extension-pack.info
@@ -1,8 +1,8 @@
PRGNAM="virtualbox-extension-pack"
-VERSION="5.0.40"
+VERSION="5.2.8"
HOMEPAGE="https://www.virtualbox.org"
-DOWNLOAD="http://download.virtualbox.org/virtualbox/5.0.40/Oracle_VM_VirtualBox_Extension_Pack-5.0.40.vbox-extpack"
-MD5SUM="6991b332555f07a14189478486d4aae6"
+DOWNLOAD="http://download.virtualbox.org/virtualbox/5.2.8/Oracle_VM_VirtualBox_Extension_Pack-5.2.8.vbox-extpack"
+MD5SUM="dfbe3c4b35b8759e7c9b0fc572c742dc"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/system/virtualbox-kernel-addons/virtualbox-kernel-addons.SlackBuild b/system/virtualbox-kernel-addons/virtualbox-kernel-addons.SlackBuild
index 14cd4888ee..2142fce8b0 100644
--- a/system/virtualbox-kernel-addons/virtualbox-kernel-addons.SlackBuild
+++ b/system/virtualbox-kernel-addons/virtualbox-kernel-addons.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for virtualbox-kernel-addons
-# Copyright 2008-2019 Heinz Wiesinger, Amsterdam, The Netherlands
+# Copyright 2008-2018 Heinz Wiesinger, Amsterdam, The Netherlands
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,8 +23,8 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=virtualbox-kernel-addons
-VERSION=${VERSION:-5.0.40}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-5.2.8}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
KERNEL=${KERNEL:-$(uname -r)}
@@ -65,15 +65,21 @@ find -L . \
mkdir -p $PKG/lib/modules/$KERNEL/misc
-KERNEL_MINOR=$(echo $KERNEL | cut -d "." -f 2)
-KERNEL_PATCH=$(echo $KERNEL | cut -d "." -f 3)
+MODULES=""
-# Work around API break introduced in kernel 4.4.168
-if [ "$KERNEL_MINOR" = 4 -a "$KERNEL_PATCH" -ge 168 ]; then
- sed -i "s|KERNEL_VERSION(4, 9, 0)|KERNEL_VERSION(4, 4, 168)|" vboxguest/r0drv/linux/memobj-r0drv-linux.c
+if ! [ -e /lib/modules/$KERNEL/kernel/drivers/staging/vboxvideo ]; then
+ MODULES="$MODULES vboxvideo"
fi
-for i in vboxguest vboxsf vboxvideo; do
+if ! [ -e /lib/modules/$KERNEL/kernel/virt/vboxguest ]; then
+ MODULES="$MODULES vboxguest"
+fi
+
+if ! [ -e /lib/modules/$KERNEL/kernel/fs/vboxsf ]; then
+ MODULES="$MODULES vboxsf"
+fi
+
+for i in $MODULES; do
cd $i
make KERN_DIR=$KERNELPATH
install -m 0644 $i.ko $PKG/lib/modules/$KERNEL/misc/
diff --git a/system/virtualbox-kernel-addons/virtualbox-kernel-addons.info b/system/virtualbox-kernel-addons/virtualbox-kernel-addons.info
index 33c005b4fe..6b86b209b4 100644
--- a/system/virtualbox-kernel-addons/virtualbox-kernel-addons.info
+++ b/system/virtualbox-kernel-addons/virtualbox-kernel-addons.info
@@ -1,8 +1,8 @@
PRGNAM="virtualbox-kernel-addons"
-VERSION="5.0.40"
+VERSION="5.2.8"
HOMEPAGE="https://www.virtualbox.org"
-DOWNLOAD="http://www.liwjatan.at/files/src/virtualbox-kernel-addons/virtualbox-kernel-addons-5.0.40.tar.xz"
-MD5SUM="6146afd44b37c65bd7acc01e067b6e86"
+DOWNLOAD="http://www.liwjatan.at/files/src/virtualbox-kernel-addons/virtualbox-kernel-addons-5.2.8.tar.xz"
+MD5SUM="e4202f46e4adeb1da588a86fe51d58d5"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/system/virtualbox-kernel/virtualbox-kernel.SlackBuild b/system/virtualbox-kernel/virtualbox-kernel.SlackBuild
index d6c0e8a584..4408b138e8 100644
--- a/system/virtualbox-kernel/virtualbox-kernel.SlackBuild
+++ b/system/virtualbox-kernel/virtualbox-kernel.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for virtualbox-kernel
-# Copyright 2008-2019 Heinz Wiesinger, Amsterdam, The Netherlands
+# Copyright 2008-2018 Heinz Wiesinger, Amsterdam, The Netherlands
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,8 +25,8 @@
# Modified by SlackBuilds.org
PRGNAM=virtualbox-kernel
-VERSION=${VERSION:-5.0.40}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-5.2.8}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
KERNEL=${KERNEL:-$(uname -r)}
@@ -70,14 +70,6 @@ if ! [ "${HARDENING:-yes}" = "yes" ]; then
{vboxdrv,vboxnetadp,vboxnetflt,vboxpci}/Makefile
fi
-KERNEL_MINOR=$(echo $KERNEL | cut -d "." -f 2)
-KERNEL_PATCH=$(echo $KERNEL | cut -d "." -f 3)
-
-# Work around API break introduced in kernel 4.4.168
-if [ "$KERNEL_MINOR" = 4 -a "$KERNEL_PATCH" -ge 168 ]; then
- sed -i "s|KERNEL_VERSION(4, 9, 0)|KERNEL_VERSION(4, 4, 168)|" vboxdrv/r0drv/linux/memobj-r0drv-linux.c
-fi
-
make KERN_DIR=${KERNELPATH}
mkdir -p $PKG/lib/modules/$KERNEL/misc
diff --git a/system/virtualbox-kernel/virtualbox-kernel.info b/system/virtualbox-kernel/virtualbox-kernel.info
index deded0026e..0a313bdf48 100644
--- a/system/virtualbox-kernel/virtualbox-kernel.info
+++ b/system/virtualbox-kernel/virtualbox-kernel.info
@@ -1,8 +1,8 @@
PRGNAM="virtualbox-kernel"
-VERSION="5.0.40"
+VERSION="5.2.8"
HOMEPAGE="https://www.virtualbox.org"
-DOWNLOAD="http://www.liwjatan.at/files/src/virtualbox-kernel/virtualbox-kernel-5.0.40.tar.xz"
-MD5SUM="475de2d0a915ce7c0c623ac50696bb79"
+DOWNLOAD="http://www.liwjatan.at/files/src/virtualbox-kernel/virtualbox-kernel-5.2.8.tar.xz"
+MD5SUM="280bf7fe55842b3a6e088f2b4c6e83e0"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/system/virtualbox/LocalConfig.kmk b/system/virtualbox/LocalConfig.kmk
index 379c93fb45..e531c08e83 100644
--- a/system/virtualbox/LocalConfig.kmk
+++ b/system/virtualbox/LocalConfig.kmk
@@ -32,3 +32,6 @@ VBOX_JAVA_HOME := /usr/LIBDIR/java
# Do not build docs from source. Depends on texlive...
VBOX_WITHOUT_DOCS := 1
+
+# Use our CFLAGS
+VBOX_GCC_OPT := CXXFLAGS
diff --git a/system/virtualbox/vboxdrv.sh-setup.diff b/system/virtualbox/vboxdrv.sh-setup.diff
index 0adf8ec237..a6fecbd6d7 100644
--- a/system/virtualbox/vboxdrv.sh-setup.diff
+++ b/system/virtualbox/vboxdrv.sh-setup.diff
@@ -1,93 +1,238 @@
---- VirtualBox-4.3.4.orig/src/VBox/Installer/linux/vboxdrv.sh.in 2013-11-29 20:24:07.000000000 +0100
-+++ VirtualBox-4.3.4/src/VBox/Installer/linux/vboxdrv.sh.in 2013-12-08 18:08:09.667571974 +0100
-@@ -44,17 +44,13 @@
+diff -ur VirtualBox-5.2.2.orig/src/VBox/Installer/linux/vboxdrv.sh VirtualBox-5.2.2/src/VBox/Installer/linux/vboxdrv.sh
+--- VirtualBox-5.2.2.orig/src/VBox/Installer/linux/vboxdrv.sh 2017-11-23 10:21:59.000000000 +0100
++++ VirtualBox-5.2.2/src/VBox/Installer/linux/vboxdrv.sh 2017-12-03 13:58:52.107070523 +0100
+@@ -51,23 +51,9 @@
+ export USERNAME
+ export USER=$USERNAME
- if [ -n "$INSTALL_DIR" ]; then
- VBOXMANAGE="$INSTALL_DIR/VBoxManage"
-- MODULE_SRC="$INSTALL_DIR/src/vboxhost"
- else
- VBOXMANAGE="/usr/lib/virtualbox/VBoxManage"
+-if test -n "${INSTALL_DIR}" && test -x "${INSTALL_DIR}/VirtualBox"; then
+- MODULE_SRC="${INSTALL_DIR}/src/vboxhost"
+-elif test -x /usr/lib/virtualbox/VirtualBox; then
+- INSTALL_DIR=/usr/lib/virtualbox
- MODULE_SRC="/usr/share/virtualbox/src/vboxhost"
- fi
--BUILDINTMP="$MODULE_SRC/build_in_tmp"
--DODKMS="$MODULE_SRC/do_dkms"
+-elif test -x "${SCRIPT_DIR}/VirtualBox"; then
+- # Executing from the build directory
+- INSTALL_DIR="${SCRIPT_DIR}"
+- MODULE_SRC="${INSTALL_DIR}/src"
+-else
+- # Silently exit if the package was uninstalled but not purged.
+- # Applies to Debian packages only (but shouldn't hurt elsewhere)
+- exit 0
+-fi
+ VIRTUALBOX="${INSTALL_DIR}/VirtualBox"
+ VBOXMANAGE="${INSTALL_DIR}/VBoxManage"
+-BUILDINTMP="${MODULE_SRC}/build_in_tmp"
++
+ if test -u "${VIRTUALBOX}"; then
+ GROUP=root
+ DEVICE_MODE=0600
+@@ -111,117 +97,6 @@
+ lsmod | grep -q "$1[^_-]"
+ }
+
+-## Output the vboxdrv part of our udev rule. This is redirected to the right file.
+-udev_write_vboxdrv() {
+- VBOXDRV_GRP="$1"
+- VBOXDRV_MODE="$2"
+-
+- echo "KERNEL==\"vboxdrv\", NAME=\"vboxdrv\", OWNER=\"root\", GROUP=\"$VBOXDRV_GRP\", MODE=\"$VBOXDRV_MODE\""
+- echo "KERNEL==\"vboxdrvu\", NAME=\"vboxdrvu\", OWNER=\"root\", GROUP=\"root\", MODE=\"0666\""
+- echo "KERNEL==\"vboxnetctl\", NAME=\"vboxnetctl\", OWNER=\"root\", GROUP=\"$VBOXDRV_GRP\", MODE=\"$VBOXDRV_MODE\""
+-}
+-
+-## Output the USB part of our udev rule. This is redirected to the right file.
+-udev_write_usb() {
+- INSTALLATION_DIR="$1"
+- USB_GROUP="$2"
+-
+- echo "SUBSYSTEM==\"usb_device\", ACTION==\"add\", RUN+=\"$INSTALLATION_DIR/VBoxCreateUSBNode.sh \$major \$minor \$attr{bDeviceClass}${USB_GROUP}\""
+- echo "SUBSYSTEM==\"usb\", ACTION==\"add\", ENV{DEVTYPE}==\"usb_device\", RUN+=\"$INSTALLATION_DIR/VBoxCreateUSBNode.sh \$major \$minor \$attr{bDeviceClass}${USB_GROUP}\""
+- echo "SUBSYSTEM==\"usb_device\", ACTION==\"remove\", RUN+=\"$INSTALLATION_DIR/VBoxCreateUSBNode.sh --remove \$major \$minor\""
+- echo "SUBSYSTEM==\"usb\", ACTION==\"remove\", ENV{DEVTYPE}==\"usb_device\", RUN+=\"$INSTALLATION_DIR/VBoxCreateUSBNode.sh --remove \$major \$minor\""
+-}
+-
+-## Generate our udev rule file. This takes a change in udev rule syntax in
+-## version 55 into account. It only creates rules for USB for udev versions
+-## recent enough to support USB device nodes.
+-generate_udev_rule() {
+- VBOXDRV_GRP="$1" # The group owning the vboxdrv device
+- VBOXDRV_MODE="$2" # The access mode for the vboxdrv device
+- INSTALLATION_DIR="$3" # The directory VirtualBox is installed in
+- USB_GROUP="$4" # The group that has permission to access USB devices
+- NO_INSTALL="$5" # Set this to "1" to remove but not re-install rules
+-
+- # Extra space!
+- case "$USB_GROUP" in ?*) USB_GROUP=" $USB_GROUP" ;; esac
+- case "$NO_INSTALL" in "1") return ;; esac
+- udev_write_vboxdrv "$VBOXDRV_GRP" "$VBOXDRV_MODE"
+- udev_write_usb "$INSTALLATION_DIR" "$USB_GROUP"
+-}
+-
+-## Install udev rule (disable with INSTALL_NO_UDEV=1 in
+-## /etc/default/virtualbox).
+-install_udev() {
+- VBOXDRV_GRP="$1" # The group owning the vboxdrv device
+- VBOXDRV_MODE="$2" # The access mode for the vboxdrv device
+- INSTALLATION_DIR="$3" # The directory VirtualBox is installed in
+- USB_GROUP="$4" # The group that has permission to access USB devices
+- NO_INSTALL="$5" # Set this to "1" to remove but not re-install rules
+-
+- if test -d /etc/udev/rules.d; then
+- generate_udev_rule "$VBOXDRV_GRP" "$VBOXDRV_MODE" "$INSTALLATION_DIR" \
+- "$USB_GROUP" "$NO_INSTALL"
+- fi
+- # Remove old udev description file
+- rm -f /etc/udev/rules.d/10-vboxdrv.rules 2> /dev/null
+-}
+-
+-## Create a usb device node for a given sysfs path to a USB device.
+-install_create_usb_node_for_sysfs() {
+- path="$1" # sysfs path for the device
+- usb_createnode="$2" # Path to the USB device node creation script
+- usb_group="$3" # The group to give ownership of the node to
+- if test -r "${path}/dev"; then
+- dev="`cat "${path}/dev" 2> /dev/null`"
+- major="`expr "$dev" : '\(.*\):' 2> /dev/null`"
+- minor="`expr "$dev" : '.*:\(.*\)' 2> /dev/null`"
+- class="`cat ${path}/bDeviceClass 2> /dev/null`"
+- sh "${usb_createnode}" "$major" "$minor" "$class" \
+- "${usb_group}" 2>/dev/null
+- fi
+-}
+-
+-udev_rule_file=/etc/udev/rules.d/60-vboxdrv.rules
+-sysfs_usb_devices="/sys/bus/usb/devices/*"
+-
+-## Install udev rules and create device nodes for usb access
+-setup_usb() {
+- VBOXDRV_GRP="$1" # The group that should own /dev/vboxdrv
+- VBOXDRV_MODE="$2" # The mode to be used for /dev/vboxdrv
+- INSTALLATION_DIR="$3" # The directory VirtualBox is installed in
+- USB_GROUP="$4" # The group that should own the /dev/vboxusb device
+- # nodes unless INSTALL_NO_GROUP=1 in
+- # /etc/default/virtualbox. Optional.
+- usb_createnode="$INSTALLATION_DIR/VBoxCreateUSBNode.sh"
+- # install udev rule (disable with INSTALL_NO_UDEV=1 in
+- # /etc/default/virtualbox)
+- if [ "$INSTALL_NO_GROUP" != "1" ]; then
+- usb_group=$USB_GROUP
+- vboxdrv_group=$VBOXDRV_GRP
+- else
+- usb_group=root
+- vboxdrv_group=root
+- fi
+- install_udev "${vboxdrv_group}" "$VBOXDRV_MODE" \
+- "$INSTALLATION_DIR" "${usb_group}" \
+- "$INSTALL_NO_UDEV" > ${udev_rule_file}
+- # Build our device tree
+- for i in ${sysfs_usb_devices}; do # This line intentionally without quotes.
+- install_create_usb_node_for_sysfs "$i" "${usb_createnode}" \
+- "${usb_group}"
+- done
+-}
+-
+-cleanup_usb()
+-{
+- # Remove udev description file
+- rm -f /etc/udev/rules.d/60-vboxdrv.rules
+- rm -f /etc/udev/rules.d/10-vboxdrv.rules
+-
+- # Remove our USB device tree
+- rm -rf /dev/vboxusb
+-}
+-
+ start()
+ {
+ begin_msg "Starting VirtualBox services" console
+@@ -283,8 +158,6 @@
+ mkdir -p -m 0750 /dev/vboxusb 2>/dev/null
+ chown root:vboxusers /dev/vboxusb 2>/dev/null
+ fi
+- # Remove any kernel modules left over from previously installed kernels.
+- cleanup only_old
+ succ_msg "VirtualBox services started"
+ }
- # silently exit if the package was uninstalled but not purged,
- # applies to Debian packages only (but shouldn't hurt elsewhere)
--[ ! -f /etc/debian_release -o -x $VBOXMANAGE -a -x $BUILDINTMP ] || exit 0
-+[ ! -f /etc/debian_release -o -x $VBOXMANAGE ] || exit 0
+@@ -365,66 +238,10 @@
+ fi
+ }
- if [ -n "$NOLSB" ]; then
- if [ -f /etc/redhat-release ]; then
-@@ -295,70 +291,7 @@
+-cleanup()
+-{
+- # If this is set, only remove kernel modules for no longer installed
+- # kernels. Note that only generated kernel modules should be placed
+- # in /lib/modules/*/misc. Anything that we should not remove automatically
+- # should go elsewhere.
+- only_old="${1}"
+- for i in /lib/modules/*; do
+- # Check whether we are only cleaning up for uninstalled kernels.
+- test -n "${only_old}" && test -e "${i}/kernel/drivers" && continue
+- # We could just do "rm -f", but we only want to try deleting folders if
+- # we are sure they were ours, i.e. they had our modules in beforehand.
+- if test -e "${i}/misc/vboxdrv.ko" \
+- || test -e "${i}/misc/vboxnetadp.ko" \
+- || test -e "${i}/misc/vboxnetflt.ko" \
+- || test -e "${i}/misc/vboxpci.ko"; then
+- rm -f "${i}/misc/vboxdrv.ko" "${i}/misc/vboxnetadp.ko" \
+- "${i}/misc/vboxnetflt.ko" "${i}/misc/vboxpci.ko"
+- version=`expr "${i}" : "/lib/modules/\(.*\)"`
+- depmod -a "${version}"
+- fi
+- # Remove the kernel version folder if it was empty except for us.
+- test "`echo ${i}/misc/* ${i}/misc/.?* ${i}/* ${i}/.?*`" \
+- = "${i}/misc/* ${i}/misc/.. ${i}/misc ${i}/.." &&
+- rmdir "${i}/misc" "${i}" # We used to leave empty folders.
+- done
+-}
+-
# setup_script
setup()
{
-- stop
-- DKMS=`which dkms 2>/dev/null`
-- if [ -n "$DKMS" ]; then
-- begin_msg "Uninstalling old VirtualBox DKMS kernel modules"
-- $DODKMS uninstall vboxhost vboxdrv vboxnetflt vboxnetadp > $LOG
-- succ_msg
+- begin_msg "Building VirtualBox kernel modules" console
+- if ! $BUILDINTMP \
+- --save-module-symvers /tmp/vboxdrv-Module.symvers \
+- --module-source "$MODULE_SRC/vboxdrv" \
+- --no-print-directory install >> $LOG 2>&1; then
+- "${INSTALL_DIR}/check_module_dependencies.sh" || exit 1
+- failure "Look at $LOG to find out what went wrong"
- fi
-- if find /lib/modules/`uname -r` -name "vboxpci\.*" 2>/dev/null|grep -q vboxpci; then
-- begin_msg "Removing old VirtualBox pci kernel module"
-- find /lib/modules/`uname -r` -name "vboxpci\.*" 2>/dev/null|xargs rm -f 2>/dev/null
-- succ_msg
-- fi
-- if find /lib/modules/`uname -r` -name "vboxnetadp\.*" 2>/dev/null|grep -q vboxnetadp; then
-- begin_msg "Removing old VirtualBox netadp kernel module"
-- find /lib/modules/`uname -r` -name "vboxnetadp\.*" 2>/dev/null|xargs rm -f 2>/dev/null
-- succ_msg
-- fi
-- if find /lib/modules/`uname -r` -name "vboxnetflt\.*" 2>/dev/null|grep -q vboxnetflt; then
-- begin_msg "Removing old VirtualBox netflt kernel module"
-- find /lib/modules/`uname -r` -name "vboxnetflt\.*" 2>/dev/null|xargs rm -f 2>/dev/null
-- succ_msg
-- fi
-- if find /lib/modules/`uname -r` -name "vboxdrv\.*" 2>/dev/null|grep -q vboxdrv; then
-- begin_msg "Removing old VirtualBox kernel module"
-- find /lib/modules/`uname -r` -name "vboxdrv\.*" 2>/dev/null|xargs rm -f 2>/dev/null
-- succ_msg
+- if ! $BUILDINTMP \
+- --use-module-symvers /tmp/vboxdrv-Module.symvers \
+- --module-source "$MODULE_SRC/vboxnetflt" \
+- --no-print-directory install >> $LOG 2>&1; then
+- failure "Look at $LOG to find out what went wrong"
- fi
-- if [ -n "$DKMS" ]; then
-- begin_msg "Trying to register the VirtualBox kernel modules using DKMS"
-- if ! $DODKMS install vboxhost $VERSION >> $LOG; then
-- fail_msg "Failed, trying without DKMS"
-- DKMS=""
-- fi
+- if ! $BUILDINTMP \
+- --use-module-symvers /tmp/vboxdrv-Module.symvers \
+- --module-source "$MODULE_SRC/vboxnetadp" \
+- --no-print-directory install >> $LOG 2>&1; then
+- failure "Look at $LOG to find out what went wrong"
- fi
-- if [ -z "$DKMS" ]; then
-- begin_msg "Recompiling VirtualBox kernel modules"
-- if ! $BUILDINTMP \
-- --save-module-symvers /tmp/vboxdrv-Module.symvers \
-- --module-source "$MODULE_SRC/vboxdrv" \
-- --no-print-directory install >> $LOG 2>&1; then
-- failure "Look at $LOG to find out what went wrong"
-- fi
-- if ! $BUILDINTMP \
-- --use-module-symvers /tmp/vboxdrv-Module.symvers \
-- --module-source "$MODULE_SRC/vboxnetflt" \
-- --no-print-directory install >> $LOG 2>&1; then
-- failure "Look at $LOG to find out what went wrong"
-- fi
-- if ! $BUILDINTMP \
-- --use-module-symvers /tmp/vboxdrv-Module.symvers \
-- --module-source "$MODULE_SRC/vboxnetadp" \
-- --no-print-directory install >> $LOG 2>&1; then
-- failure "Look at $LOG to find out what went wrong"
-- fi
-- if ! $BUILDINTMP \
-- --use-module-symvers /tmp/vboxdrv-Module.symvers \
-- --module-source "$MODULE_SRC/vboxpci" \
-- --no-print-directory install >> $LOG 2>&1; then
-- failure "Look at $LOG to find out what went wrong"
-- fi
+- if ! $BUILDINTMP \
+- --use-module-symvers /tmp/vboxdrv-Module.symvers \
+- --module-source "$MODULE_SRC/vboxpci" \
+- --no-print-directory install >> $LOG 2>&1; then
+- failure "Look at $LOG to find out what went wrong"
- fi
- rm -f /etc/vbox/module_not_compiled
-- succ_msg
-- start
+- depmod -a
+- succ_msg "VirtualBox kernel modules built"
+ echo "Not implemented! Please use the virtualbox-kernel.SlackBuild available at SlackBuilds.org instead."
}
dmnstatus()
+@@ -480,13 +297,7 @@
+ ## todo Do we need a udev rule to create /dev/vboxdrv[u] at all? We have
+ ## working fall-back code here anyway, and the "right" code is more complex
+ ## than the fall-back. Unnecessary duplication?
+- stop && cleanup
+- setup_usb "$GROUP" "$DEVICE_MODE" "$INSTALL_DIR"
+- setup && start
+- ;;
+-cleanup)
+- stop && cleanup
+- cleanup_usb
++ setup
+ ;;
+ force-reload)
+ stop
diff --git a/system/virtualbox/virtualbox-gsoap.patch b/system/virtualbox/virtualbox-gsoap.patch
deleted file mode 100644
index a8ba6f549c..0000000000
--- a/system/virtualbox/virtualbox-gsoap.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-diff -u -r VirtualBox-5.0.10.orig/src/VBox/Main/webservice/Makefile.kmk VirtualBox-5.0.10/src/VBox/Main/webservice/Makefile.kmk
---- VirtualBox-5.0.10.orig/src/VBox/Main/webservice/Makefile.kmk 2015-11-10 18:06:29.000000000 +0100
-+++ VirtualBox-5.0.10/src/VBox/Main/webservice/Makefile.kmk 2015-11-22 09:58:21.669118291 +0100
-@@ -159,7 +159,6 @@
- RECOMPILE_ON_MAKEFILE_CURRENT := $(MAKEFILE_CURRENT)
-
- PATH_TARGET_SOAPDEMOXML := $(VBOXWEB_OUT_DIR)/demo_soapxml
--PATH_TARGET_SOAPDEMOHEADERS := $(VBOXWEB_OUT_DIR)/demo_headers
- PATH_TARGET_SOAPDEMONSMAPS := $(VBOXWEB_OUT_DIR)/demo_namespacemaps
- PATH_TARGET_WEBTEST := $(VBOXWEB_OUT_DIR)/webtest
-
-@@ -515,8 +514,6 @@
- $(VBOXWEB_OUT_DIR)/gsoap_copy_all_ts \
- $(wildcard $(PATH_TARGET_SOAPDEMOXML)/*) \
- $(PATH_TARGET_SOAPDEMOXML)/dummy_file \
-- $(wildcard $(PATH_TARGET_SOAPDEMOHEADERS)/*) \
-- $(PATH_TARGET_SOAPDEMOHEADERS)/dummy_file \
- $(wildcard $(PATH_TARGET_SOAPDEMONSMAPS)/*) \
- $(PATH_TARGET_SOAPDEMONSMAPS)/dummy_file
-
-@@ -695,17 +692,14 @@
- # any more. Ignoring the exit code is the simple solution, accepting the error.
- $(VBOXWEB_OUT_DIR)/gsoap_copy_all_ts: $(VBOXWEB_OUT_DIR)/gsoap_generate_all_ts | $$(dir $$@)
- $(RM) -f $@
-- $(MKDIR) -p $(PATH_TARGET_SOAPDEMOXML) $(PATH_TARGET_SOAPDEMOHEADERS) $(PATH_TARGET_SOAPDEMONSMAPS)
-+ $(MKDIR) -p $(PATH_TARGET_SOAPDEMOXML) $(PATH_TARGET_SOAPDEMONSMAPS)
- ifdef VBOX_GSOAP_VERBOSE
- $(MV_EXT) -f -- $(VBOXWEB_OUT_DIR)/*.req.xml $(VBOXWEB_OUT_DIR)/*.res.xml $(PATH_TARGET_SOAPDEMOXML)/
- endif
-- -$(MV_EXT) -f -- $(VBOXWEB_OUT_DIR)/soapvbox*.h $(PATH_TARGET_SOAPDEMOHEADERS)/
- $(MV_EXT) -f -- $(VBOXWEB_OUT_DIR)/vboxBinding.nsmap $(PATH_TARGET_SOAPDEMONSMAPS)/
- $(APPEND) $@ done
-
--$(PATH_TARGET_SOAPDEMONSMAPS) \
--$(PATH_TARGET_SOAPDEMOHEADERS)/soapvboxBindingProxy.h \
--$(PATH_TARGET_SOAPDEMOHEADERS)/soapvboxBindingObject.h: $(VBOXWEB_OUT_DIR)/gsoap_copy_all_ts
-+$(PATH_TARGET_SOAPDEMONSMAPS): $(VBOXWEB_OUT_DIR)/gsoap_copy_all_ts
-
- # soapcpp2 -2: generate SOAP 1.2 calls
- # soapcpp2 -S: server-side code only
diff --git a/system/virtualbox/virtualbox.SlackBuild b/system/virtualbox/virtualbox.SlackBuild
index 1048ea0771..69f6b6a361 100644
--- a/system/virtualbox/virtualbox.SlackBuild
+++ b/system/virtualbox/virtualbox.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for virtualbox-ose
-# Copyright 2008-2017 Heinz Wiesinger, Amsterdam, The Netherlands
+# Copyright 2008-2018 Heinz Wiesinger, Amsterdam, The Netherlands
# Copyright 2008 Mauro Giachero <mauro.giachero@gmail.com>
# All rights reserved.
#
@@ -25,7 +25,7 @@
PRGNAM=virtualbox
SRCNAM=VirtualBox
-VERSION=${VERSION:-5.0.40}
+VERSION=${VERSION:-5.2.8}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -62,7 +62,7 @@ else
harden="--disable-hardening"
fi
-# Support for the qt4-frontend
+# Support for the Qt & SDL frontends
if [ "${HEADLESS:-no}" = "no" ]; then
guiapp="VirtualBox VBoxSDL"
else
@@ -132,17 +132,15 @@ MODE="755"
# Use virtualbox-kernel.SlackBuild for this.
patch -d src/VBox/Installer/linux -i $CWD/vboxdrv.sh-setup.diff
-# Fix building against newer versions of gsoap
-patch -p1 -i $CWD/virtualbox-gsoap.patch
-
# Fix wrong path to rdesktop-vrdp-keymaps
patch -p1 -i $CWD/006-rdesktop-vrdp-keymap-path.patch
# Remove gcc version check
sed -i 's/^check_gcc$/#check_gcc/' ./configure
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
+# Use our CFLAGS
+sed -i "s|CXX_FLAGS=\"\"|CXX_FLAGS=\"$SLKCFLAGS -std=c++11\"|" ./configure
+
./configure \
--disable-kmods \
--enable-vde \
@@ -158,20 +156,16 @@ CXXFLAGS="$SLKCFLAGS" \
cp $CWD/LocalConfig.kmk .
sed -i "s|LIBDIR|lib$LIBDIRSUFFIX|" ./LocalConfig.kmk
+sed -i "s|CXXFLAGS|$SLKCFLAGS -std=c++11|" ./LocalConfig.kmk
kmk -j ${JOBS} LOCALCFG=./LocalConfig.kmk
-# build VBoxFUSE
-cd src/VBox/ImageMounter/VBoxFUSE
- kmk -j ${JOBS}
-cd -
-
mkdir -p $PKG/usr/{lib$LIBDIRSUFFIX,share,include}/virtualbox \
$PKG/usr/{bin,src} \
$PKG/usr/share/{pixmaps,mime/packages} \
$PKG/etc/{default,rc.d,vbox}
-for i in vboxdrv.sh.in vboxballoonctrl-service.sh vboxautostart-service.sh; do
+for i in vboxdrv.sh vboxballoonctrl-service.sh vboxautostart-service.sh; do
SCRIPT=$(echo $i | cut -d "." -f 1)
cp -f src/VBox/Installer/linux/$i $PKG/etc/rc.d/rc.$SCRIPT.new
sed -i "s/%PACKAGE%/virtualbox/g" $PKG/etc/rc.d/rc.$SCRIPT.new
@@ -218,8 +212,7 @@ cd out/linux.$BUILDDIR/release/bin/
install -m $MODE -g $GROUP VBoxSysInfo.sh $PKG/usr/share/virtualbox/
install -m $MODE -g $GROUP VBoxCreateUSBNode.sh $PKG/usr/share/virtualbox/
install -m $MODE -g $GROUP VBoxTunctl $PKG/usr/bin/
- install -m $MODE -g $GROUP VBoxFUSE $PKG/usr/bin/
- rm -f VBoxSysInfo.sh VBoxCreateUSBNode.sh VBoxTunctl VBoxFUSE
+ rm -f VBoxSysInfo.sh VBoxCreateUSBNode.sh VBoxTunctl
mv * $PKG/usr/lib$LIBDIRSUFFIX/virtualbox/
chown -R root:$GROUP $PKG/usr/lib$LIBDIRSUFFIX/virtualbox/
chmod -R $MODE $PKG/usr/lib$LIBDIRSUFFIX/virtualbox/
@@ -257,6 +250,7 @@ fi
# install headers. Needed by some third party tools
cp -rf include/* $PKG/usr/include/virtualbox/
rm -f $PKG/usr/include/virtualbox/Makefile.kmk
+find $PKG/usr/include/virtualbox -name "Makefile.kup" -print0 | xargs -0 rm -f
cp -f $CWD/VBoxGuestAdditions_$VERSION.iso \
$PKG/usr/share/virtualbox/VBoxGuestAdditions.iso
diff --git a/system/virtualbox/virtualbox.info b/system/virtualbox/virtualbox.info
index 11fef8a32a..30ab8c98cc 100644
--- a/system/virtualbox/virtualbox.info
+++ b/system/virtualbox/virtualbox.info
@@ -1,16 +1,16 @@
PRGNAM="virtualbox"
-VERSION="5.0.40"
+VERSION="5.2.8"
HOMEPAGE="https://www.virtualbox.org"
-DOWNLOAD="http://download.virtualbox.org/virtualbox/5.0.40/VirtualBox-5.0.40.tar.bz2 \
- http://download.virtualbox.org/virtualbox/5.0.40/VBoxGuestAdditions_5.0.40.iso \
- http://download.virtualbox.org/virtualbox/5.0.40/UserManual.pdf \
- http://download.virtualbox.org/virtualbox/5.0.40/SDKRef.pdf"
-MD5SUM="53b259e48a137b0185c169590e2dcb77 \
- 71afc65e09d1d4d02020f0403ac47622 \
- bdc4bf38dd3ed786385044841a4af147 \
- 684ac3f7d17532cd8396ea83ba1d57ea"
+DOWNLOAD="http://download.virtualbox.org/virtualbox/5.2.8/VirtualBox-5.2.8.tar.bz2 \
+ http://download.virtualbox.org/virtualbox/5.2.8/VBoxGuestAdditions_5.2.8.iso \
+ http://download.virtualbox.org/virtualbox/5.2.8/UserManual.pdf \
+ http://download.virtualbox.org/virtualbox/5.2.8/SDKRef.pdf"
+MD5SUM="e731ea9c5c31096ec4c2a3bfba26665c \
+ 3fb71656e8720342ab6ea4022d3dec9c \
+ a6ec396375cfb6604291d4da788b49bc \
+ a2407872ea00b1ad3e1d34f502518cac"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="acpica virtualbox-kernel"
+REQUIRES="acpica qt5 virtualbox-kernel"
MAINTAINER="Heinz Wiesinger"
EMAIL="pprkut@liwjatan.at"
diff --git a/system/xnp2/gcc6.patch b/system/xnp2/gcc6.patch
new file mode 100644
index 0000000000..6265959666
--- /dev/null
+++ b/system/xnp2/gcc6.patch
@@ -0,0 +1,17 @@
+--- xnp2-0.86/x11/compiler.h.old 2016-03-08 18:25:50.000000000 +0100
++++ xnp2-0.86/x11/compiler.h 2016-07-05 23:48:04.507937827 +0200
+@@ -117,12 +117,14 @@
+ #define MAX_PATH MAXPATHLEN
+ #endif
+
++#ifndef __cplusplus
+ #ifndef max
+ #define max(a,b) (((a) > (b)) ? (a) : (b))
+ #endif
+ #ifndef min
+ #define min(a,b) (((a) < (b)) ? (a) : (b))
+ #endif
++#endif /* __cplusplus */
+
+ #ifndef ZeroMemory
+ #define ZeroMemory(d,n) memset((d), 0, (n))
diff --git a/system/xnp2/xnp2.SlackBuild b/system/xnp2/xnp2.SlackBuild
index bbd8e9d826..b8a467720c 100644
--- a/system/xnp2/xnp2.SlackBuild
+++ b/system/xnp2/xnp2.SlackBuild
@@ -69,6 +69,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# Thanks to the archlinux folks!
+patch -p2 < $CWD/gcc6.patch
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
diff --git a/system/zstd/README b/system/zstd/README
deleted file mode 100644
index 70e275669d..0000000000
--- a/system/zstd/README
+++ /dev/null
@@ -1,5 +0,0 @@
-Zstd, short for Zstandard, is a fast lossless compression algorithm,
-targeting real-time compression scenarios at zlib-level and better
-compression ratios.
-
-Since 1.3.1, it is dual licensed as BSD and GPLv2.
diff --git a/system/zstd/slack-desc b/system/zstd/slack-desc
deleted file mode 100644
index 77578cc136..0000000000
--- a/system/zstd/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-zstd: zstd (fast lossless compression)
-zstd:
-zstd: Zstd, short for Zstandard, is a fast lossless compression algorithm,
-zstd: targeting real-time compression scenarios at zlib-level and better
-zstd: compression ratios.
-zstd:
-zstd: Homepage: http://facebook.github.io/zstd/
-zstd:
-zstd:
-zstd:
-zstd:
diff --git a/system/zstd/zstd.SlackBuild b/system/zstd/zstd.SlackBuild
deleted file mode 100644
index b00f9d9ef9..0000000000
--- a/system/zstd/zstd.SlackBuild
+++ /dev/null
@@ -1,88 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for zstd
-
-# Copyright 2016, Zhu Qun-Ying
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=zstd
-VERSION=${VERSION:-1.3.8}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-make CFLAGS="$SLKCFLAGS" DESTDIR=$PKG PREFIX=/usr LIBDIR=/usr/lib$LIBDIRSUFFIX mandir=/usr/man/ install
-make -C contrib/pzstd DESTDIR=$PKG PREFIX=/usr install
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/pzstd
-cp -a doc/* CHANGELOG $PKG/usr/doc/$PRGNAM-$VERSION
-cp contrib/pzstd/README.md $PKG/usr/doc/$PRGNAM-$VERSION/pzstd
-
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/system/zstd/zstd.info b/system/zstd/zstd.info
deleted file mode 100644
index 510c871bc3..0000000000
--- a/system/zstd/zstd.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="zstd"
-VERSION="1.3.8"
-HOMEPAGE="http://facebook.github.io/zstd/"
-DOWNLOAD="https://github.com/facebook/zstd/releases/download/v1.3.8/zstd-1.3.8.tar.gz"
-MD5SUM="c261c29f896eb97946c225295485156b"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Zhu Qun-Ying"
-EMAIL="zhu.qunying@gmail.com"