diff options
Diffstat (limited to 'source')
-rw-r--r-- | source/d/llvm/clang.toolchains.i586.triple.diff | 16 | ||||
-rw-r--r-- | source/d/llvm/lldb.32-bit.link.libatomic.diff | 14 | ||||
-rwxr-xr-x | source/d/llvm/llvm.SlackBuild | 58 | ||||
-rw-r--r-- | source/d/llvm/llvm.url | 48 | ||||
-rwxr-xr-x | source/d/rust/rust.SlackBuild | 2 | ||||
-rwxr-xr-x | source/l/liburing/liburing.SlackBuild | 2 | ||||
-rwxr-xr-x | source/t/texlive/dump.unused.internal.libraries.from.sources.sh | 1 | ||||
-rw-r--r-- | source/t/texlive/patches/fixes-210420.patch | 162 | ||||
-rw-r--r-- | source/t/texlive/prep/excludes.texmf | 21 | ||||
-rw-r--r-- | source/t/texlive/prep/packages.texmf | 427 | ||||
-rw-r--r-- | source/t/texlive/prep/texmf_get.sh | 448 | ||||
-rwxr-xr-x | source/t/texlive/texlive.SlackBuild | 36 | ||||
-rw-r--r-- | source/t/texlive/texlive.url | 4 | ||||
-rwxr-xr-x | source/x/mesa/mesa.SlackBuild | 2 |
14 files changed, 638 insertions, 603 deletions
diff --git a/source/d/llvm/clang.toolchains.i586.triple.diff b/source/d/llvm/clang.toolchains.i586.triple.diff index 90e66c55e..e51f3cd52 100644 --- a/source/d/llvm/clang.toolchains.i586.triple.diff +++ b/source/d/llvm/clang.toolchains.i586.triple.diff @@ -1,10 +1,10 @@ ---- ./tools/clang/lib/Driver/ToolChains/Gnu.cpp.orig 2021-09-24 11:18:10.000000000 -0500 -+++ ./tools/clang/lib/Driver/ToolChains/Gnu.cpp 2021-10-05 14:17:02.597518687 -0500 -@@ -2114,6 +2114,7 @@ - "i586-linux-gnu", "i686-linux-gnu", - "i686-pc-linux-gnu", "i386-redhat-linux6E", - "i686-redhat-linux", "i386-redhat-linux", +--- ./tools/clang/lib/Driver/ToolChains/Gnu.cpp.orig 2022-04-25 22:44:44.000000000 -0500 ++++ ./tools/clang/lib/Driver/ToolChains/Gnu.cpp 2022-04-28 13:34:46.834049926 -0500 +@@ -2107,6 +2107,7 @@ + static const char *const X86Triples[] = { + "i586-linux-gnu", "i686-linux-gnu", "i686-pc-linux-gnu", + "i386-redhat-linux6E", "i686-redhat-linux", "i386-redhat-linux", + "i586-slackware-linux", "i686-slackware-linux", - "i586-suse-linux", "i686-montavista-linux", - "i686-linux-android", "i686-gnu", + "i586-suse-linux", "i686-montavista-linux", "i686-gnu", }; + diff --git a/source/d/llvm/lldb.32-bit.link.libatomic.diff b/source/d/llvm/lldb.32-bit.link.libatomic.diff new file mode 100644 index 000000000..234bcdc72 --- /dev/null +++ b/source/d/llvm/lldb.32-bit.link.libatomic.diff @@ -0,0 +1,14 @@ +--- ./tools/lldb/source/Utility/CMakeLists.txt.orig 2022-06-22 11:46:24.000000000 -0500 ++++ ./tools/lldb/source/Utility/CMakeLists.txt 2022-06-27 22:33:56.715179825 -0500 +@@ -19,9 +19,9 @@ + list(APPEND LLDB_SYSTEM_LIBS ws2_32 rpcrt4) + endif () + +-if (NOT HAVE_CXX_ATOMICS64_WITHOUT_LIB ) ++#if (NOT HAVE_CXX_ATOMICS64_WITHOUT_LIB ) + list(APPEND LLDB_SYSTEM_LIBS atomic) +-endif() ++#endif() + + add_lldb_library(lldbUtility + ArchSpec.cpp diff --git a/source/d/llvm/llvm.SlackBuild b/source/d/llvm/llvm.SlackBuild index f2f1ab094..02df9eb49 100755 --- a/source/d/llvm/llvm.SlackBuild +++ b/source/d/llvm/llvm.SlackBuild @@ -3,7 +3,7 @@ # Slackware build script for llvm # Copyright 2008-2016 Heinz Wiesinger, Amsterdam, The Netherlands -# Copyright 2012, 2013, 2014, 2015, 2016, 2018, 2019, 2020, 2021 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2012, 2013, 2014, 2015, 2016, 2018, 2019, 2020, 2021, 2022 Patrick J. Volkerding, Sebeka, MN, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -52,16 +52,6 @@ if [ "$BUILD_CLANGD" = "NO" ]; then CLANGD="-DCLANG_ENABLE_CLANGD=OFF" fi -# Building lld will be determined automatically unless BUILD_LLD is -# preset to YES or NO: -if [ -z $BUILD_LLD ]; then - if [ "$ARCH" = "i586" -o "$ARCH" = "i686" ]; then - BUILD_LLD=NO - else - BUILD_LLD=YES - fi -fi - # If the variable PRINT_PACKAGE_NAME is set, then this script will report what # the name of the created package would be, and then exit. This information # could be useful to other scripts. @@ -72,6 +62,7 @@ fi TMP=${TMP:-/tmp} PKG=$TMP/package-$PKGNAM +BUILDDIR=${TMP}/llvm-build-${VERSION} if [ "$ARCH" = "i586" ]; then SLKCFLAGS="-O2 -march=i586 -mtune=i686" @@ -99,23 +90,28 @@ PY3=$(python3 -c 'from distutils.sysconfig import get_python_lib; print(get_pyth # Don't use icecream: #PATH=$(echo $PATH | sed "s|/usr/libexec/icecc/bin||g" | tr -s : | sed "s/^://g" | sed "s/:$//g") -rm -rf $PKG -mkdir -p $TMP $PKG -cd $TMP +rm -rf $PKG $BUILDDIR +mkdir -p $TMP $PKG $BUILDDIR +cd $BUILDDIR + +# Add a fake configure script so the cleanup script used here at Slackware +# knows to delete this stuff later. Other folks can just ignore this... it +# doesn't have any other purpose. +touch configure +chmod 755 configure + rm -rf $PKGNAM-${VERSION}.src $PKGNAM-${VERSION} tar xvf $CWD/$PKGNAM-$VERSION.src.tar.xz || exit 1 -cd $PKGNAM-${VERSION}/tools || cd $PKGNAM-${VERSION}.src/tools || exit 1 +cd $PKGNAM-${VERSION}.src/tools || cd $PKGNAM-${VERSION}/tools || exit 1 tar xvf $CWD/clang-$VERSION.src.tar.xz || exit 1 mv clang-${VERSION} clang 2>/dev/null || mv clang-${VERSION}.src clang || exit 1 #tar xvf $CWD/flang-$VERSION.src.tar.xz || exit 1 #mv flang-${VERSION} flang 2>/dev/null || mv flang-${VERSION}.src flang || exit 1 tar xvf $CWD/lldb-$VERSION.src.tar.xz || exit 1 mv lldb-${VERSION} lldb 2>/dev/null || mv lldb-${VERSION}.src lldb || exit 1 - if [ "$BUILD_LLD" = "YES" ]; then - tar xvf $CWD/lld-$VERSION.src.tar.xz || exit 1 - mv lld-${VERSION} lld 2>/dev/null || mv lld-${VERSION}.src lld || exit 1 - fi + tar xvf $CWD/lld-$VERSION.src.tar.xz || exit 1 + mv lld-${VERSION} lld 2>/dev/null || mv lld-${VERSION}.src lld || exit 1 cd ../ cd tools/clang/tools || exit 1 @@ -140,7 +136,7 @@ cd projects || exit 1 mv polly-${VERSION} polly 2>/dev/null || mv polly-${VERSION}.src polly || exit 1 # We just need a header file from this... tar xvf $CWD/libunwind-${VERSION}.src.tar.xz || exit 1 - mv libunwind-${VERSION} libunwind || mv libunwind-${VERSION}.src libunwind || exit 1 + mv libunwind-${VERSION}.src libunwind || mv libunwind-${VERSION} libunwind || exit 1 cd ../ # Support GCC built for i586-slackware-linux: @@ -149,6 +145,22 @@ zcat $CWD/clang.toolchains.i586.triple.diff.gz | patch -p1 --verbose || exit 1 # Hack to fix build with polly. Maybe we should just not use polly... ? zcat $CWD/llvm.polly.hack.diff.gz | patch -p1 --verbose || exit 1 +# We require libatomic on 32-bit platforms: +if [ "$ARCH" = "i586" -o "$ARCH" = "i686" ]; then + zcat $CWD/lldb.32-bit.link.libatomic.diff.gz | patch -p1 --verbose || exit 1 +fi + +# Won't build without this. See https://github.com/llvm/llvm-project/issues/54941 +#zcat $CWD/llvm.bypass.broken.benchmarks.diff.gz | patch -p1 --verbose || exit 1 + +# These hackish links seem to be required... +cd .. +ln -sf */utils/gn/secondary/third-party . +ln -sf */runtimes . +ln -sf */projects/libcxx . +ln -sf */projects/libcxxabi . +cd - + chown -R root:root . find . \ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \ @@ -171,7 +183,9 @@ cd build -DCMAKE_INSTALL_PREFIX=/usr \ -DLLVM_LIBDIR_SUFFIX=${LIBDIRSUFFIX} \ -DCMAKE_BUILD_TYPE=Release \ - -DBUILD_SHARED_LIBS=ON \ + -DLLVM_BUILD_LLVM_DYLIB=ON \ + -DLLVM_LINK_LLVM_DYLIB=ON \ + -DCLANG_LINK_CLANG_DYLIB=ON \ -DLLVM_USE_LINKER=gold \ -DLLVM_ENABLE_RTTI=ON \ -DLLVM_ENABLE_FFI=ON \ @@ -181,6 +195,8 @@ cd build -DCLANG_RESOURCE_DIR="../lib${LIBDIRSUFFIX}/clang/${VERSION}" \ -DLLVM_TARGETS_TO_BUILD="host;AMDGPU;BPF" \ -DLLDB_USE_SYSTEM_SIX=1 \ + -DLLVM_INCLUDE_BENCHMARKS=OFF \ + -DCOMPILER_RT_BUILD_LIBFUZZER=OFF \ $CLANGD \ .. || exit 1 diff --git a/source/d/llvm/llvm.url b/source/d/llvm/llvm.url index 4760a784d..6defe5750 100644 --- a/source/d/llvm/llvm.url +++ b/source/d/llvm/llvm.url @@ -1,25 +1,25 @@ -https://github.com/llvm/llvm-project/releases/download/llvmorg-13.0.1/llvm-13.0.1.src.tar.xz -https://github.com/llvm/llvm-project/releases/download/llvmorg-13.0.1/clang-13.0.1.src.tar.xz -https://github.com/llvm/llvm-project/releases/download/llvmorg-13.0.1/clang-tools-extra-13.0.1.src.tar.xz -https://github.com/llvm/llvm-project/releases/download/llvmorg-13.0.1/compiler-rt-13.0.1.src.tar.xz -https://github.com/llvm/llvm-project/releases/download/llvmorg-13.0.1/flang-13.0.1.src.tar.xz -https://github.com/llvm/llvm-project/releases/download/llvmorg-13.0.1/lldb-13.0.1.src.tar.xz -https://github.com/llvm/llvm-project/releases/download/llvmorg-13.0.1/openmp-13.0.1.src.tar.xz -https://github.com/llvm/llvm-project/releases/download/llvmorg-13.0.1/polly-13.0.1.src.tar.xz -https://github.com/llvm/llvm-project/releases/download/llvmorg-13.0.1/libcxx-13.0.1.src.tar.xz -https://github.com/llvm/llvm-project/releases/download/llvmorg-13.0.1/libcxxabi-13.0.1.src.tar.xz -https://github.com/llvm/llvm-project/releases/download/llvmorg-13.0.1/lld-13.0.1.src.tar.xz -https://github.com/llvm/llvm-project/releases/download/llvmorg-13.0.1/libunwind-13.0.1.src.tar.xz +https://github.com/llvm/llvm-project/releases/download/llvmorg-14.0.6/llvm-14.0.6.src.tar.xz +https://github.com/llvm/llvm-project/releases/download/llvmorg-14.0.6/clang-14.0.6.src.tar.xz +https://github.com/llvm/llvm-project/releases/download/llvmorg-14.0.6/clang-tools-extra-14.0.6.src.tar.xz +https://github.com/llvm/llvm-project/releases/download/llvmorg-14.0.6/compiler-rt-14.0.6.src.tar.xz +https://github.com/llvm/llvm-project/releases/download/llvmorg-14.0.6/flang-14.0.6.src.tar.xz +https://github.com/llvm/llvm-project/releases/download/llvmorg-14.0.6/lldb-14.0.6.src.tar.xz +https://github.com/llvm/llvm-project/releases/download/llvmorg-14.0.6/openmp-14.0.6.src.tar.xz +https://github.com/llvm/llvm-project/releases/download/llvmorg-14.0.6/polly-14.0.6.src.tar.xz +https://github.com/llvm/llvm-project/releases/download/llvmorg-14.0.6/libcxx-14.0.6.src.tar.xz +https://github.com/llvm/llvm-project/releases/download/llvmorg-14.0.6/libcxxabi-14.0.6.src.tar.xz +https://github.com/llvm/llvm-project/releases/download/llvmorg-14.0.6/lld-14.0.6.src.tar.xz +https://github.com/llvm/llvm-project/releases/download/llvmorg-14.0.6/libunwind-14.0.6.src.tar.xz -#http://llvm.org/releases/13.0.1/llvm-13.0.1.src.tar.xz -#http://llvm.org/releases/13.0.1/clang-13.0.1.src.tar.xz -#http://llvm.org/releases/13.0.1/clang-tools-extra-13.0.1.src.tar.xz -#http://llvm.org/releases/13.0.1/compiler-rt-13.0.1.src.tar.xz -#http://llvm.org/releases/13.0.1/flang-13.0.1.src.tar.xz -#http://llvm.org/releases/13.0.1/lldb-13.0.1.src.tar.xz -#http://llvm.org/releases/13.0.1/openmp-13.0.1.src.tar.xz -#http://llvm.org/releases/13.0.1/polly-13.0.1.src.tar.xz -#http://llvm.org/releases/13.0.1/libcxx-13.0.1.src.tar.xz -#http://llvm.org/releases/13.0.1/libcxxabi-13.0.1.src.tar.xz -#http://llvm.org/releases/13.0.1/lld-13.0.1.src.tar.xz -#http://llvm.org/releases/13.0.1/libunwind-13.0.1.src.tar.xz +#http://llvm.org/releases/14.0.6/llvm-14.0.6.src.tar.xz +#http://llvm.org/releases/14.0.6/clang-14.0.6.src.tar.xz +#http://llvm.org/releases/14.0.6/clang-tools-extra-14.0.6.src.tar.xz +#http://llvm.org/releases/14.0.6/compiler-rt-14.0.6.src.tar.xz +#http://llvm.org/releases/14.0.6/flang-14.0.6.src.tar.xz +#http://llvm.org/releases/14.0.6/lldb-14.0.6.src.tar.xz +#http://llvm.org/releases/14.0.6/openmp-14.0.6.src.tar.xz +#http://llvm.org/releases/14.0.6/polly-14.0.6.src.tar.xz +#http://llvm.org/releases/14.0.6/libcxx-14.0.6.src.tar.xz +#http://llvm.org/releases/14.0.6/libcxxabi-14.0.6.src.tar.xz +#http://llvm.org/releases/14.0.6/lld-14.0.6.src.tar.xz +#http://llvm.org/releases/14.0.6/libunwind-14.0.6.src.tar.xz diff --git a/source/d/rust/rust.SlackBuild b/source/d/rust/rust.SlackBuild index 372477104..8dd2553d7 100755 --- a/source/d/rust/rust.SlackBuild +++ b/source/d/rust/rust.SlackBuild @@ -27,7 +27,7 @@ cd $(dirname $0) ; CWD=$(pwd) PKGNAM=rust SRCNAM="${PKGNAM}c" VERSION=${VERSION:-1.61.0} -BUILD=${BUILD:-1} +BUILD=${BUILD:-2} # Set this to YES to build with the system LLVM, or NO to use the bundled LLVM. # YES is probably better (when it works...) diff --git a/source/l/liburing/liburing.SlackBuild b/source/l/liburing/liburing.SlackBuild index 1bf901299..40208d8af 100755 --- a/source/l/liburing/liburing.SlackBuild +++ b/source/l/liburing/liburing.SlackBuild @@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd) PKGNAM=liburing VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} -BUILD=${BUILD:-2} +BUILD=${BUILD:-1} # Automatically determine the architecture we're building on: if [ -z "$ARCH" ]; then diff --git a/source/t/texlive/dump.unused.internal.libraries.from.sources.sh b/source/t/texlive/dump.unused.internal.libraries.from.sources.sh index 11f775ed7..10261cf18 100755 --- a/source/t/texlive/dump.unused.internal.libraries.from.sources.sh +++ b/source/t/texlive/dump.unused.internal.libraries.from.sources.sh @@ -7,7 +7,6 @@ tar xf texlive-${VERSION}-source.tar.xz || exit 1 mv texlive-${VERSION}-source.tar.xz texlive-${VERSION}-source.tar.xz.orig ( cd texlive-${VERSION}-source/libs && rm -rf cairo freetype2 gd gmp graphite2 harfbuzz mpfr icu libpng pixman potrace zlib ) ( cd texlive-${VERSION}-source/utils && rm -rf asymptote ) -( cd texlive-${VERSION}-source/texk && rm -rf dvisvgm ) ( cd texlive-${VERSION}-source/texk/texlive && rm -rf w*_wrapper ) tar cf texlive-${VERSION}-source.tar texlive-${VERSION}-source rm -r texlive-${VERSION}-source diff --git a/source/t/texlive/patches/fixes-210420.patch b/source/t/texlive/patches/fixes-210420.patch deleted file mode 100644 index 345b479e9..000000000 --- a/source/t/texlive/patches/fixes-210420.patch +++ /dev/null @@ -1,162 +0,0 @@ -diff -ru texlive-20210324-source/texk/web2c/luatexdir/ChangeLog source/texk/web2c/luatexdir/ChangeLog ---- texlive-20210324-source/texk/web2c/luatexdir/ChangeLog 2021-03-23 18:33:25.000000000 +0100 -+++ source/texk/web2c/luatexdir/ChangeLog 2021-04-19 07:46:56.693445474 +0200 -@@ -1,3 +1,12 @@ -+2021-04-10 Luigi Scarso <luigi.scarso@gmail.com> -+ * LuaTeX version 1.13.2 with MetaPost 2.01. -+ The version change in MetaPost -+ is due solely to the bug fix in btex .. etex -+ -+2021-04-02 Luigi Scarso <luigi.scarso@gmail.com> -+ * LuaTeX version 1.13.1, -+ The version change is due solely to the bug fix in btex .. etex -+ - 2021-03-23 Karl Berry <karl@tug.org> - * TL'21. - -diff -ru texlive-20210324-source/texk/web2c/luatexdir/NEWS source/texk/web2c/luatexdir/NEWS ---- texlive-20210324-source/texk/web2c/luatexdir/NEWS 2021-03-12 23:55:21.000000000 +0100 -+++ source/texk/web2c/luatexdir/NEWS 2021-04-19 07:46:56.695445474 +0200 -@@ -1,4 +1,23 @@ - ============================================================== -+LuaTeX 1.13.2 2021-04-10 -+============================================================== -+ -+MetaPost 2.01 (to mark the patch on the unwanted space in -+btex etex). -+ -+ -+ -+============================================================== -+LuaTeX 1.13.1 2021-04-02 -+============================================================== -+ -+Fixed an unwanted space in btex etex in metapost, introduced -+after a patch for troff. -+ -+ -+ -+ -+============================================================== - LuaTeX 1.13.0 2021-03-12 - ============================================================== - -diff -ru texlive-20210324-source/texk/web2c/luatexdir/luatex.c source/texk/web2c/luatexdir/luatex.c ---- texlive-20210324-source/texk/web2c/luatexdir/luatex.c 2021-02-25 20:15:40.000000000 +0100 -+++ source/texk/web2c/luatexdir/luatex.c 2021-04-19 07:46:59.292445512 +0200 -@@ -33,8 +33,8 @@ - */ - - int luatex_version = 113; --int luatex_revision = '0'; --const char *luatex_version_string = "1.13.0"; -+int luatex_revision = '2'; -+const char *luatex_version_string = "1.13.2"; - const char *engine_name = my_name; - - #include <kpathsea/c-ctype.h> -diff -ru texlive-20210324-source/texk/web2c/luatexdir/luatex_svnversion.h source/texk/web2c/luatexdir/luatex_svnversion.h ---- texlive-20210324-source/texk/web2c/luatexdir/luatex_svnversion.h 2021-03-16 22:21:41.000000000 +0100 -+++ source/texk/web2c/luatexdir/luatex_svnversion.h 2021-04-19 07:46:59.293445512 +0200 -@@ -1 +1 @@ --#define luatex_svn_revision 7418 -+#define luatex_svn_revision 7430 -diff -ru texlive-20210324-source/texk/web2c/mplibdir/ChangeLog source/texk/web2c/mplibdir/ChangeLog ---- texlive-20210324-source/texk/web2c/mplibdir/ChangeLog 2021-03-23 18:33:25.000000000 +0100 -+++ source/texk/web2c/mplibdir/ChangeLog 2021-04-19 07:47:01.823445550 +0200 -@@ -1,10 +1,15 @@ -+2021-04-10 Luigi Scarso <luigi.scarso@gmail.com> -+ * Metapost version 2.01 (needed to mark the patch mpx_copy_mpto). -+ -+2021-04-02 Luigi Scarso <luigi.scarso@gmail.com> -+ * Revert the patch in mpx_copy_mpto, it was wrong in tex mode. Added a check if in troff mode. -+ - 2021-03-23 Karl Berry <karl@tug.org> - * TL'21. - - 2020-12-28 Luigi Scarso <luigi.scarso@gmail.com> - * Temp, fix in mpx_copy_mpto, changed || with && to avoid a wrong final % - -- - 2020-12-27 Luigi Scarso <luigi.scarso@gmail.com> - * Fixed some typos in manual (thank to 胡亚捷 (Hu Yajie) ) - * Added the undocumented -T option -diff -ru texlive-20210324-source/texk/web2c/mplibdir/am/libmplib.am source/texk/web2c/mplibdir/am/libmplib.am ---- texlive-20210324-source/texk/web2c/mplibdir/am/libmplib.am 2021-02-25 20:15:51.000000000 +0100 -+++ source/texk/web2c/mplibdir/am/libmplib.am 2021-04-19 07:47:01.824445550 +0200 -@@ -1,6 +1,6 @@ - ## texk/web2c/mplibdir/am/libmplib.am: Makefile fragment for libmplib. - ## --## Copyright (C) 2015-2020 Luigi Scarso <tex-live@tug.org> -+## Copyright (C) 2015-2021 Luigi Scarso <tex-live@tug.org> - ## Copyright (C) 2009-2014 Peter Breitenlohner <tex-live@tug.org> - ## You may freely use, modify and/or distribute this file. - -diff -ru texlive-20210324-source/texk/web2c/mplibdir/am/mplib.am source/texk/web2c/mplibdir/am/mplib.am ---- texlive-20210324-source/texk/web2c/mplibdir/am/mplib.am 2021-02-25 20:15:51.000000000 +0100 -+++ source/texk/web2c/mplibdir/am/mplib.am 2021-04-19 07:47:01.826445550 +0200 -@@ -1,6 +1,6 @@ - ## texk/web2c/mplibdir/am/mplib.am: Makefile fragment for MetaPost. - ## --## Copyright 2017-2018 Luigi Scarso <tex-live@tug.org> -+## Copyright 2017-2021 Luigi Scarso <tex-live@tug.org> - ## Copyright 2009-2015 Peter Breitenlohner <tex-live@tug.org> - ## You may freely use, modify and/or distribute this file. - -diff -ru texlive-20210324-source/texk/web2c/mplibdir/mp.w source/texk/web2c/mplibdir/mp.w ---- texlive-20210324-source/texk/web2c/mplibdir/mp.w 2021-02-25 20:15:52.000000000 +0100 -+++ source/texk/web2c/mplibdir/mp.w 2021-04-19 07:47:01.967445552 +0200 -@@ -71,12 +71,12 @@ - @^extensions to \MP@> - @^system dependencies@> - --@d default_banner "This is MetaPost, Version 2.00" /* printed when \MP\ starts */ -+@d default_banner "This is MetaPost, Version 2.01" /* printed when \MP\ starts */ - @d true 1 - @d false 0 - - @<Metapost version header@>= --#define metapost_version "2.00" -+#define metapost_version "2.01" - - @ The external library header for \MP\ is |mplib.h|. It contains a - few typedefs and the header defintions for the externally used -diff -ru texlive-20210324-source/texk/web2c/mplibdir/mpxout.w source/texk/web2c/mplibdir/mpxout.w ---- texlive-20210324-source/texk/web2c/mplibdir/mpxout.w 2021-02-25 20:15:52.000000000 +0100 -+++ source/texk/web2c/mplibdir/mpxout.w 2021-04-19 07:47:01.979445552 +0200 -@@ -564,7 +564,7 @@ - if (textype == B_TEX) { - /* put no |%| at end if it's only 1 line total, starting with |%|; - * this covers the special case |%&format| in a single line. */ -- if (t != s && *t != '%') -+ if ((t != s || *t != '%') && mpx->mode == mpx_tex_mode) - fprintf(outfile,"%%"); - } - free(res); -diff -ru texlive-20210324-source/texk/web2c/pmpostdir/pmp.ch source/texk/web2c/pmpostdir/pmp.ch ---- texlive-20210324-source/texk/web2c/pmpostdir/pmp.ch 2021-02-25 20:16:12.000000000 +0100 -+++ source/texk/web2c/pmpostdir/pmp.ch 2021-04-20 07:00:12.086686937 +0200 -@@ -13,19 +13,19 @@ - % - - @x --@d default_banner "This is MetaPost, Version 2.00" /* printed when \MP\ starts */ -+@d default_banner "This is MetaPost, Version 2.01" /* printed when \MP\ starts */ - @y - @z - - @x --#define metapost_version "2.00" -+#define metapost_version "2.01" - @y - #ifdef UPMP - #define P_UP "up" --#define metapost_version "2.00-0.04-u1.27" -+#define metapost_version "2.01-0.04-u1.27" - #else - #define P_UP "p" --#define metapost_version "2.00-0.04" -+#define metapost_version "2.01-0.04" - #endif - #define default_banner "This is " P_UP "MetaPost, Version " metapost_version /* printed when \MP\ starts */ - @z diff --git a/source/t/texlive/prep/excludes.texmf b/source/t/texlive/prep/excludes.texmf new file mode 100644 index 000000000..8c909631a --- /dev/null +++ b/source/t/texlive/prep/excludes.texmf @@ -0,0 +1,21 @@ +# Globally exclude packages/collections, which are +# -useless without tlmgr-installer +# -non-linux, e.g. texworks(windows binary) +# -covered by an external package, e.g. asymptote on SBo +# -binaries provided already by texlive.Slackbuild +# -only sources, e.g. metatype1, patch, ... + +global_exclude=" + 00texlive.config + 00texlive.image + 00texlive.installation + 00texlive.installer + asymptote + collection-texworks + collection-wintools + texlive-common + texlive-msg-translations + texosquery + tlcockpit + tlshell + " diff --git a/source/t/texlive/prep/packages.texmf b/source/t/texlive/prep/packages.texmf new file mode 100644 index 000000000..22f23f770 --- /dev/null +++ b/source/t/texlive/prep/packages.texmf @@ -0,0 +1,427 @@ + # special packages, move docs to -docs +special_packages=" + koma-script + " + +# keep precompiled binaries, list binary, not package name +keep_precompiled=" + biber + " + +# Packages for -base, remaining packages are going to -extra +PACKAGES=" +collection-basic +collection-latex +collection-latexrecommended +caption +collection-metapost +collection-context +collection-humanities +collection-langenglish +collection-langitalian +collection-langportuguese +collection-langspanish +$(grep ^"name hyphen-.*" $db | cut -d' ' -f2 ) +$(grep ^"name babel-.*" $db | cut -d' ' -f2 ) + +# collection-langczechslovak +lshort-czech +lshort-slovak +texlive-cz +vlna + +# collection-langcyrillic +cmcyr +cyrillic +cyrillic-bin +cyrplain +disser +eskd +eskdx +gost +lcyw +lh +lhcyr +mongolian-babel +numnameru +ruhyphen +russ +serbian-apostrophe +serbian-date-lat +serbian-def-cyr +serbian-lig +t2 +ukrhyph +xecyrmongolian + +# collection-langgreek +begingreek +betababel +gfsbaskerville +gfsporson +greek-fontenc +greek-inputenc +greekdates +greektex +greektonoi +ibycus-babel +ibygrk +levy +lgreek +mkgrkindex +teubner +xgreek +yannisgr + +# collection-fontsrecommended +avantgar +bookman +charter +courier +euro +euro-ce +eurosym +fpl +helvetic +lm +lm-math +manfnt-font +marvosym +mathpazo +mflogo-font +ncntrsbk +palatino +pxfonts +rsfs +symbol +tex-gyre +tex-gyre-math +times +tipa +txfonts +utopia +wasy +wasysym +zapfchan +zapfding + +$(collection_by_size luatex 99999 || exit 1) +optex + +$(collection_by_size plaingeneric 99999 || exit 1) +tex4ht + +$(collection_by_size fontutils 999999 || exit 1) + +$(collection_by_size fontsextra 38999 || exit 1) +ascii-font +bbm +bbm-macros +bbold +cmbright +eulervm +fontawesome5 +ly1 +sauter +sauterfonts + +$(collection_by_size latexextra 3999 || exit 1) +acronym +bigfoot +csquotes +datetime2 +$(grep ^"name datetime2-.*" $db | cut -d' ' -f2 ) +datatool +doublestroke +enumitem +glossaries +$(grep ^"name glossaries-.*" $db | cut -d' ' -f2 ) +imakeidx +lipsum +mfirstuc +moderncv +moreverb +multirow +nfssext-cfr +nomencl +splitindex +supertabular +ucs +xpatch +xstring + +$(collection_by_size langeuropean 299999 || exit 1) + +$(collection_by_size langfrench 23999 || exit 1) + +# collection-langgerman +apalike-german +csquotes-de +dehyph +dehyph-exptl +dhua +etdipa +fifinddo-info +german +germbib +germkorr +koma-script-examples +l2picfaq +l2tabu +milog +r_und_s +schulmathematik +uhrzeit +umlaute +voss-mathcol + +$(collection_by_size langpolish 8999 || exit 1) + +$(collection_by_size langarabic 2499 || exit 1) +arabtex + +$(collection_by_size langchinese 4999 || exit 1) + +# collection-langjapanese +platex +platex-tools + +$(collection_by_size langcjk 2999 || exit 1) + +$(collection_by_size langother 29999 || exit 1) + +$(collection_by_size pictures 22999 || exit 1) +circuitikz +xypic + +$(collection_by_size pstricks 99999 || exit 1) +pst-pdf + +$(collection_by_size mathscience 19999 || exit 1) +siunits + +$(collection_by_size xetex 149999 || exit 1) +arabxetex + +$(collection_by_size games 39999 || exit 1) + +# collection-formatsextra +edmac +eplain +hitex +jadetex +lollipop +mltex +mxedruli +passivetex +psizzl +startex +texsis +xmltex +xmltexconfig + +# collection-binextra +a2ping +adhocfilelist +bibtex8 +bibtexu +bundledoc +checklistings +chklref +chktex +cluttex +ctie +cweb +de-macro +detex +dtl +dtxgen +dvi2tty +dviasm +dvicopy +dvidvi +dviinfox +dviljk +dviout-util +dvipng +dvipos +dvisvgm +findhyph +fragmaster +git-latexdiff +gsftopk +hook-pre-commit-pkg +installfont +lacheck +latex-git-log +latex-papersize +latex2man +latexdiff +latexfileversion +latexindent +latexmk +latexpand +light-latex-make +listings-ext +ltxfileinfo +ltximg +luajittex +make4ht +match_parens +mflua +mkjobtexmf +optexcount +patgen +pdfbook2 +pdfcrop +pdfjam +pdflatexpicscale +pdftex-quiet +pdftosrc +pdfxup +pfarrei +pkfix +pkfix-helper +purifyeps +pythontex +seetexk +spix +srcredact +sty2dtx +synctex +tex4ebook +texcount +texdef +texdiff +texdirflatten +texdoc +texfot +texlive-scripts-extra +texloganalyser +texlogfilter +texware +tie +tpic2pdftex +typeoutfileinfo +web +xindex +xindy +xpdfopen + +# collection-publishers +ebook +revtex + +# collection-bibtexextra +aaai-named +aichej +ajl +amsrefs +annotate +apacite +apalike-ejor +apalike2 +archaeologie +authordate +besjournals +bestpapers +bibarts +bibexport +bibhtml +bibexport +bibhtml +biblist +bibtexperllibs +bibtopic +bibtopicprefix +bibunits +biolett-bst +bookdb +breakcites +cell +chbibref +chembst +chicago +chicago-annote +chicagoa +chscite +citeref +collection-latex +collref +compactbib +crossrefware +custom-bib +din1505 +dk-bib +doipubmed +econ-bst +economic +fbs +figbib +footbib +francais-bst +gbt7714 +harvmac +hep-bibliography +icite +ietfbibs +ijqc +inlinebib +iopart-num +is-bst +jbact +jmb +jneurosci +jurabib +ksfh_nat +listbib +logreq +ltb2bib +luabibentry +margbib +multibib +multibibliography +newcastle-bst +nmbib +notes2bib +notex-bst +perception +plainyr +pnas2009 +rsc +showtags +sort-by-letters +splitbib +turabian-formatting +urlbst +usebib +vak +xcite +zootaxa-bst + +#collection-music +abc +autosp +bagpipe +chordbars +chordbox +ddphonism +figbas +gchords +gtrcrd +guitar +guitarchordschemes +guitartabs +harmony +latex4musicians +leadsheets +lyluatex +musical +musicography +octave +piano +songbook +songs +xml2pmx +xpiano +" texmfget base diff --git a/source/t/texlive/prep/texmf_get.sh b/source/t/texlive/prep/texmf_get.sh index 2732f087b..ff843a67a 100644 --- a/source/t/texlive/prep/texmf_get.sh +++ b/source/t/texlive/prep/texmf_get.sh @@ -2,7 +2,7 @@ # texmf_get.sh # -# Copyright 2016 - 2021 Johannes Schoepfer, Germany, slackbuilds@schoepfer.info +# Copyright 2016 - 2022 Johannes Schoepfer, Germany, slackbuilds@schoepfer.info # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -22,14 +22,14 @@ # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # -# V 15.0.5 +# version 15.1.0 # # 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 +# manpages for binaries/scripts 65mb 2017-11-07 # -docs: -base documentation only, no manpages/GNU infofiles # -extra: remaining stuff and corresponding docs # @@ -38,282 +38,12 @@ # packages from any collection. #set -e +# Official mirror mirror="http://mirror.ctan.org/systems/texlive/tlnet/" # Pre-test mirror for new releases #mirror="http://ftp.cstug.cz/pub/tex/local/tlpretest/" -TMP=${TMP:-$PWD/tmp} - -# Globally excluded packages, which are/contain -# -useless without tlmgr-installer -# -non-linux, e.g. texworks(windows binary) -# -covered by an external package, e.g. asymptote on SBo -# -obsolete, e.g. omega -# -binaries provided already by texlive.Slackbuild -# -binaries which texlive upstream recommends to build natively, e.g. dvisvgm on SBo -# -only sources, e.g. metatype1, patch, ... - -global_exclude=" - 00texlive.config - 00texlive.image - 00texlive.installation - 00texlive.installer - aleph - antomega - asymptote - bibtexu - cslatex - dviout.win32 - lambda - ocherokee - oinuit - omega - omegaware - otibet - texlive-common - texlive-docindex - texlive-msg-translations - texosquery - texworks - tlcockpit - tlshell - wintools.win32 - dvisvgm - " - - # 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 - " - -# keep precompiled binaries, list binary, not package name -keep_precompiled=" - biber - " - -texmf_editions () { - - # "excludes from -base", also dependencies are excluded - PACKAGES=" - albatross - antiqua - augie - aspectratio - calligra-type1 - causets - chhaya - chifoot - chinese-jfm - color-edits - econlipsum - ekdosis - esvect - figchild - fonetika - hitreport - mahjong - matapli - newpax - numerica - pdfmanagement-testphase - profcollege - rojud - svrsymbols - tikz-among-us - tkz-berge - tkz-graph - tzplot - typicons - zztex - cm-super - biber - bib2gls - knitting - pst-cox - pst-poker - pst-vectorian - pst-geo - bclogo - texplate - texliveonfly - kerkis - " texmfget extra || exit 1 - - # packages/collections and their dependencies for -base - PACKAGES=" - $(grep ^"name hyphen-.*" $db | cut -d' ' -f2 ) - $special_packages - etoolbox - memoir - ptex - platex - revtex - ucs - uplatex - uptex - velthuis - wasy - xcolor - xypic - collection-basic - collection-latex - collection-metapost - collection-plaingeneric - collection-luatex - collection-context - collection-fontutils - collection-langczechslovak - collection-langeuropean - collection-langenglish - collection-langfrench - collection-langgreek - collection-langitalian - collection-langpolish - collection-langportuguese - collection-langspanish - collection-latexrecommended - $(collection_by_size fontsextra 70000 || exit 1) - $(collection_by_size latexextra 1000 || exit 1) - $(collection_by_size langchinese 5000 || exit 1) - $(collection_by_size langcjk 3000 || exit 1) - $(collection_by_size pictures 100000 || exit 1) - $(collection_by_size publishers 10000 || exit 1) - " texmfget base - - # packages/collections and their dependencies for -extra - PACKAGES=" - $(grep ^"name .*biblatex" $db | cut -d' ' -f2 ) - aalok - algpseudocodex - association-matrix - beamerthemelalic - beamerthemenord - beaulivre - bithesis - bubblesort - amiri - arabi - arabi-add - arara - arev - bangorcsthesis - beamer2thesis - beamertheme-detlevcm - beamertheme-epyt - beamertheme-npbt - beamertheme-saintpetersburg - beebe - bhcexam - bxtexlogo - collection-fontsextra - collection-langchinese - collection-langcjk - collection-langjapanese - collection-langkorean - collection-pictures - collection-publishers - collection-texworks - collection-wintools - ctan-o-mat - ctanify - ctanupload - dad - duckuments - easybook - ethiop-t1 - fibeamer - fithesis - fonetika - ghsystem - gregoriotex - hustthesis - ijsra - iwhdp - jpsj - kerkis - ketcindy - kpfonts - langsci - latex2nemeth - libertine - lilyglyphs - lni - luatexko - lua-physical - media9 - musuos - mwe - newtx - nwejm - obnov - padauk - pdfwin - pdfx - powerdot-tuliplab - powerdot-fuberlin - profcollege - quran - quran-bn - quran-de - quran-ur - realhats - resumecls - rojud - sanskrit-t1 - sapthesis - sduthesis - seuthesix - simurgh - skaknew - stellenbosch - suanpan - texdoctk - texnegar - tudscr - uantwerpendocs - udesoftec - universalis - uowthesis - wasy-type1 - 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-langother - collection-humanities - collection-mathscience - collection-pstricks - collection-music - collection-games - collection-binextra - collection-bibtexextra - collection-formatsextra - collection-latexextra - " texmfget base || exit 1 - -} - -# ==== Nothing to edit beyond this line ==== +cd $(dirname $0) ; CWD=$(pwd) +TMP=${TMP:-$CWD/tmp} usage () { echo @@ -398,7 +128,7 @@ download () { cd $texmf - for run in {1..8} + for run in {1..10} do [ ! -s "${1}${flavour}.tar.xz" ] && \ wget -q --show-progress -t1 -c ${mirror}archive/${1}${flavour}.tar.xz @@ -419,7 +149,7 @@ download () { then echo "Downloading ${1}${flavour}.tar.xz or sh512sum check was not successful,\\ writing to $errorlog" - echo "Delete ${db}* and try again." + echo "Delete ${db}* and $TMP/VERSION, then try again, bye." echo "$VERSION" >> $errorlog echo "Error downloading ${1}${flavour}.tar.xz" >> $errorlog exit 1 @@ -456,14 +186,8 @@ untar () { # 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 @@ -476,8 +200,8 @@ untar () { fi fi - # Delete binaries, these are provided - # by the buildscript, keep symlinks and scripts + # Delete binaries, these are provided by the buildscript + # Keep symlinks and scripts for arch in $platforms do @@ -490,27 +214,26 @@ untar () { rm $texmf/texmf-dist/bin/$arch/man for link in $(find $texmf/texmf-dist/bin/$arch -type l) do + # if link has "../.." content, re-create link to match + # final destiantion /usr/share/texmf-dist + a="$(readlink $link)" + b=${a/..\/../..\/share} link_valid_dest=$texmf/texmf-dist/linked_scripts/${link##*/} - # move symlink to linked_scripts - mv $link $link_valid_dest - # some links have to dangle, because target binaries are coming from the buildscript - # fix SELFAUTOPARENT in some scripts - if [ -e "$link_valid_dest" ] - then - sed -i "s/kpsewhich -var-value=SELFAUTOPARENT/kpsewhich -var-value=TEXMFROOT/g" \ - $link_valid_dest || exit 1 - fi + ln -sf $b $link_valid_dest + rm $link done # keep only binaries of special packages # remove xindy.mem(gzip compresses data) to prevent overwriting + # the one built from the source for bin in $(find $texmf/texmf-dist/bin/$arch -type f -exec file '{}' + | \ - grep -e "executable" -e "shared object" -e ELF -e "gzip compressed data" | cut -f 1 -d : ) + grep -e "shared object" -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 + #echo "Deleting binary $bin found in $texmf/texmf-dist/bin/$arch" rm $bin echo -n "$package:" >> $binary_removed.$edition echo $bin | rev | cut -d'/' -f1 | rev >> $binary_removed.$edition @@ -522,7 +245,6 @@ untar () { $(find $texmf/texmf-dist/bin/$arch -type f -exec file '{}' + |\ grep -wv ELF | cut -f 1 -d : ) do - echo "Moving script/bin $script to $texmf/texmf-dist/linked_scripts/" mv $script $texmf/texmf-dist/linked_scripts/ done fi @@ -533,16 +255,18 @@ untar () { if [ -d $tlpkg_dir ] then for bin in $(find $tlpkg_dir -type f -exec file '{}' + | \ - grep -e "executable" -e "shared object" -e ELF -e "gzip compressed data" | cut -f 1 -d : ) + grep -e "shared object" -e ELF -e "gzip compressed data" | cut -f 1 -d : ) do - echo "Deleting binary $bin found in $tlpkg_dir" rm $bin echo -n "$package:" >> $binary_removed.$edition echo $bin | rev | cut -d'/' -f1 | rev >> $binary_removed.$edition done - [ -d $tlpkg_dir/TeXLive ] && \ - mkdir -p $texmf/texmf-dist/scripts/texlive && \ - mv $tlpkg_dir/TeXLive $texmf/texmf-dist/scripts/texlive + find $tlpkg_dir -type d -empty -delete + if [ -d $tlpkg_dir/TeXLive ] + then + mkdir -p $texmf/texmf-dist/scripts/texlive/TeXLive + mv $tlpkg_dir/TeXLive/* $texmf/texmf-dist/scripts/texlive/TeXLive + fi fi done @@ -576,7 +300,8 @@ untar () { fi # copy packages index to texmf-dist, to have a list of included packages in the final installation - # don't list binary packages, as the binaries itself are not contained, only the symlinks. + # don't list binary packages, as the binaries itself are not contained, + # only symlinks/scripts. cat $output.meta | grep -v '\-linux:' >> $output.$edition.meta cat $output.meta.uncompressed | grep -v '\-linux:' >> $output.$edition.meta.uncompressed @@ -604,14 +329,34 @@ remove_cruft () { find $texmf/texmf-dist/ -type f -name 'winansi*' -delete find $texmf/texmf-dist/ -type f -name '*man1.pdf' -delete find $texmf/texmf-dist/ -type f -name '*man5.pdf' -delete + find $texmf/texmf-dist/ -type f -name '*.man' -delete find $texmf/texmf-dist/ -type f -empty -delete find $texmf/texmf-dist/ -type d -empty -delete + + echo "Replace duplicate files by symlinks, this may take a while ..." + + LASTSIZE=0 + find $texmf/texmf-dist/ \ + -type f -printf '%s %p\n' | sort -n | + while read SIZE FILE + do + if [ "$SIZE" -eq "$LASTSIZE" ] + then + if [ "$(md5sum $FILE | cut -d' ' -f1)" == "$(md5sum $LASTFILE | cut -d' ' -f1)" ] + then + echo "$FILE $LASTFILE" >> $duplicatelog + ln -srf $FILE $LASTFILE + fi + fi + LASTSIZE="$SIZE" + LASTFILE="$FILE" + done } 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 + echo "$PACKAGES" | sed "s/[[:space:]]//g;s/#.*$//;/^$/d" > $collections_tobedone # Remove outputfile if already present >$output >$output_doc @@ -676,15 +421,17 @@ texmfget () { 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 containing a '.'. Packges with dot indicate binary/texlive-manager/windows packages + # Don't handle collections as dependency of other collections, + # as this destroys control over packages to be added. + # Add dependend packages, but no binary(ARCH) and no packages + # containing a '.'. Packages 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) + # Binaries should all come from the sourcebuild(exception $keep_precompiled) for dependency in $(cat $dependencies) do echo $dependency | grep '\.ARCH'$ &>/dev/null @@ -834,6 +581,7 @@ LANG=C output=$TMP/packages output_doc=$TMP/packages.doc.tmp errorlog=$TMP/error.log +duplicatelog=$TMP/duplicate.log texmf=$TMP/texmf db=$TMP/texlive.tlpdb tmpfile=$TMP/tmpfile @@ -850,6 +598,9 @@ updmap=$TMP/updmap.cfg files_split=$TMP/files.split platforms="x86_64-linux i386-linux" +# Source global excludes +source $CWD/excludes.texmf + mkdir -p $texmf cd $TMP @@ -864,12 +615,17 @@ 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 + for run in {1..10} + do + wget -q --show-progress -t1 -c -O ${db}.orig.xz ${mirror}tlpkg/texlive.tlpdb.xz + [ -s "${db}.orig.xz" ] && break + done + unxz ${db}.orig.xz || exit 1 echo $(date +%y%m%d) > VERSION - wget -q --show-progress -c -O ${db}.orig.xz ${mirror}tlpkg/texlive.tlpdb.xz - unxz ${db}.orig.xz - + # remove most content from $db to be faster on later processing. # keep dependencies/manpages/binfiles/shortdesc/sizes + echo "Preparing texlive.tlpdb ..." grep -E \ '^\S|^ RELOC/doc/man|^ texmf-dist/doc/man/man|^ RELOC/doc/info/|^ texmf-dist/doc/info/|^ bin|^$' \ ${db}.orig | grep -v ^longdesc > $db @@ -884,6 +640,11 @@ emptylines="$(grep -n ^$ $db | cut -d':' -f1)" # Make a list of all collections grep ^"name collection-" $db | cut -d' ' -f2 > $allcollections +# remove global excluded collection(s) +for exclude in $global_exclude +do + sed -i "/^$exclude/d" $allcollections +done # translate .ARCH to platforms in excludes, to make .ARCH packages excludeable by $global_exclude for exclude in $global_exclude @@ -907,6 +668,7 @@ logfile=$TMP/$VERSION.log >$logfile >$tarball >$collections_done +>$duplicatelog >$files_split >$manpages >$packages_manpages @@ -921,8 +683,13 @@ logfile=$TMP/$VERSION.log >$TMP/depends.run.$edition >$binary_removed.$edition -# put the editions base/extra together -texmf_editions || exit 1 +# Load texmf package list to generate -base/-extra/-docs +source $CWD/packages.texmf + +# Put everything in -extra which is not in -base +PACKAGES=" + $(cat $allcollections) + " texmfget extra # Check if all collections are part in at least one edition while read collection @@ -967,22 +734,14 @@ do # 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 to -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 + 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 if [ $edition = base ] then @@ -1029,18 +788,6 @@ do # 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 @@ -1085,6 +832,7 @@ do echo "$package" >> $packages_manpages fi done + # cleanup rm $manpages.tmp sed -i \ @@ -1130,16 +878,11 @@ EOF tar rf $tarball --owner=0 --group=0 --sort=name \ texmf-dist/web2c/updmap.cfg -# add manpages/GNU infofiles to the tarball + # 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 \ || 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 ;; @@ -1150,14 +893,10 @@ EOF 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 - # add -extra updmap.cfg - mkdir -p $texmf/texmf-dist/web2c - mv $updmap.$edition $texmf/texmf-dist/web2c + # add -extra updmap.cfg + mkdir -p $texmf/texmf-dist/web2c + mv $updmap.$edition $texmf/texmf-dist/web2c tar rf $tarball --owner=0 --group=0 --sort=name \ --exclude texmf-dist/doc \ texmf-dist \ @@ -1185,6 +924,7 @@ rm -rf texmf-dist echo "Compressing $tarball ..." [ -f $tarball.xz ] && rm $tarball.xz xz -T0 $tarball || exit 1 -md5sum $tarball.xz ls -lh $tarball.xz echo "Logfile: $logfile" + +# End of story diff --git a/source/t/texlive/texlive.SlackBuild b/source/t/texlive/texlive.SlackBuild index 369a95715..065235c74 100755 --- a/source/t/texlive/texlive.SlackBuild +++ b/source/t/texlive/texlive.SlackBuild @@ -2,7 +2,7 @@ # TeXLive build script for Slackware -# Copyright 2009, 2017 - 2021 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2009, 2017 - 2022 Patrick J. Volkerding, Sebeka, MN, USA # Copyright 2009 - 2014 Robby Workman, Northport, AL, USA # Copyright 2016 - 2017 Johannes Schoepfer, Germany # All rights reserved. @@ -25,16 +25,16 @@ # 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/branch2021/Build/source +# Testrelease: https://tug.org/texlive/Images/test/ +# Upstream stable fixes: svn://tug.org/texlive/branches/branch2022/Build/source cd $(dirname $0) ; CWD=$(pwd) PKGNAM=texlive -SOURCEVERSION=${SOURCEVERSION:-20210324} -TEXMFVERSION=${TEXMFVERSION:-210418} -VERSION=${VERSION:-2021.$TEXMFVERSION} -BUILD=${BUILD:-4} +SOURCEVERSION=${SOURCEVERSION:-20220321} +TEXMFVERSION=${TEXMFVERSION:-220522} +VERSION=${VERSION:-2022.$TEXMFVERSION} +BUILD=${BUILD:-1} TMP=${TMP:-/tmp} PKG=$TMP/package-texlive @@ -77,9 +77,6 @@ cd texlive-$SOURCEVERSION-source || exit 1 chown -R root:root . chmod -R u+w,go-w,a+rX-st . -# fixes from stable branch -cat $CWD/patches/fixes-210420.patch | patch -p1 --verbose || exit 1 - mkdir build cd build CFLAGS="$SLKCFLAGS" \ @@ -100,7 +97,6 @@ cd build --disable-dialog \ --disable-xz \ --with-x \ - --disable-dvisvgm \ --enable-xindy \ --disable-xindy-docs \ --disable-xindy-rules \ @@ -147,14 +143,6 @@ chmod -R u+w,go-w,a+rX-st $PKG mv $PKG$TEXMFROOT/texmf-dist/linked_scripts/* $PKG/usr/bin rmdir $PKG$TEXMFROOT/texmf-dist/linked_scripts -# Remove this if it's a dangling symlink: -if file $PKG/usr/bin/texdoctk | grep -wq "broken symbolic link" ; then - rm -f $PKG/usr/bin/texdoctk -fi - -# xindy expects to be executed within $TEXMFROOT/texmf-dist/scripts -ln -sf $TEXMFROOT/texmf-dist/scripts/xindy/xindy.pl $PKG/usr/bin/xindy - # set some paths sed -i \ -e "s|^TEXMFROOT.*|TEXMFROOT = $TEXMFROOT|" \ @@ -162,14 +150,6 @@ sed -i \ -e "s|^OSFONTDIR.*|OSFONTDIR = ~/.fonts:/usr/share/fonts|" \ $PKG$TEXMFROOT/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$TEXMFROOT/texmf-dist/web2c/fmtutil.cnf - # make ConTeXt work sed -i \ -e "s|selfautoparent:|$TEXMFROOT/|g" \ @@ -194,7 +174,7 @@ cp -a ChangeLog README* $PKG/usr/doc/texlive-$VERSION mv $PKG$TEXMFROOT/texmf-dist/packages.base.gz $PKG/usr/doc/texlive-$VERSION # Put a symlink to $TEXMFROOT/texmf-dist/doc in our Slackware docdir -ln -sf $TEXMFROOT/texmf-dist/doc $PKG/usr/doc/texlive-$VERSION/doc +ln -srf $PKG$TEXMFROOT/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 :-) diff --git a/source/t/texlive/texlive.url b/source/t/texlive/texlive.url index 31cfdda0d..b486dfc31 100644 --- a/source/t/texlive/texlive.url +++ b/source/t/texlive/texlive.url @@ -1,2 +1,2 @@ -https://ctan.net/systems/texlive/Source/texlive-20210324-source.tar.xz -http://slackware.schoepfer.info/slackbuilds/texlive/texlive-base-210418.tar.xz +https://ctan.net/systems/texlive/Source/texlive-20220321-source.tar.xz +http://slackware.schoepfer.info/slackbuilds/texlive/texlive-base-220522.tar.xz diff --git a/source/x/mesa/mesa.SlackBuild b/source/x/mesa/mesa.SlackBuild index 4328c7881..10cc14670 100755 --- a/source/x/mesa/mesa.SlackBuild +++ b/source/x/mesa/mesa.SlackBuild @@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd) PKGNAM=mesa VERSION=${VERSION:-$(echo $PKGNAM-[0-9]*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} DEMOVERS=${DEMOVERS:-8.4.0} -BUILD=${BUILD:-1} +BUILD=${BUILD:-2} BUILD_DEMOS=${BUILD_DEMOS:-YES} NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "} |