diff --git a/Apps/abakus/README b/Apps/abakus/README new file mode 100644 index 0000000..b9c0622 --- /dev/null +++ b/Apps/abakus/README @@ -0,0 +1,2 @@ +The MPFR library for high-precision mathematics is used if detected. + diff --git a/Apps/gwenview-i18n/gwenview-i18n.SlackBuild b/Apps/gwenview-i18n/gwenview-i18n.SlackBuild index a8cc21f..0d3ac31 100755 --- a/Apps/gwenview-i18n/gwenview-i18n.SlackBuild +++ b/Apps/gwenview-i18n/gwenview-i18n.SlackBuild @@ -25,7 +25,10 @@ PRGNAM=gwenview-i18n PKGNAM=$TDEPFX$PRGNAM -[[ $PRE_DOWNLOAD != yes ]] && [[ $I18N == "" ]] && echo -e "\033[39;1m\nYou have tried to build $PRGNAM without selecting any language(s)\n\033[0m" && exit +[[ $PRE_DOWNLOAD != yes ]] && [[ $I18N == "" ]] && \ +echo -e "\033[39;1m + You have tried to build $PRGNAM without selecting any language(s) +\033[0m" && exit VERSION=$TDEVERSION BUILD=${BUILD:-1} TAG=${TAG:-_tde} diff --git a/Apps/k3b-i18n/k3b-i18n.SlackBuild b/Apps/k3b-i18n/k3b-i18n.SlackBuild index 7f8361c..59528a2 100755 --- a/Apps/k3b-i18n/k3b-i18n.SlackBuild +++ b/Apps/k3b-i18n/k3b-i18n.SlackBuild @@ -25,7 +25,10 @@ PRGNAM=k3b-i18n PKGNAM=$TDEPFX$PRGNAM -[[ $PRE_DOWNLOAD != yes ]] && [[ $I18N == "" ]] && echo -e "\033[39;1m\nYou have tried to build $PRGNAM without selecting any language(s)\n\033[0m" && exit +[[ $PRE_DOWNLOAD != yes ]] && [[ $I18N == "" ]] && \ +echo -e "\033[39;1m + You have tried to build $PRGNAM without selecting any language(s) +\033[0m" && exit VERSION=$TDEVERSION BUILD=${BUILD:-1} TAG=${TAG:-_tde} diff --git a/Apps/kile/README b/Apps/kile/README index 973cb9c..2f02cfa 100755 --- a/Apps/kile/README +++ b/Apps/kile/README @@ -1,4 +1,4 @@ -Type `kile` and enjoy the power of LaTeX together with the joy of using Kile :) +Re: kile source README: Using Kile diff --git a/Apps/kile/kile.SlackBuild b/Apps/kile/kile.SlackBuild index 0e3603d..f5fc7a9 100755 --- a/Apps/kile/kile.SlackBuild +++ b/Apps/kile/kile.SlackBuild @@ -37,39 +37,15 @@ untar_fn # but only for languages available with this package langs="" ldocs="" -[[ $TDEVERSION == 14.0.11 ]] && { -for Lang in $I18N;do [[ -d translations/$Lang ]] && langs="$langs $Lang" && \ -[[ -d translations/$Lang/doc ]] && ldocs="$ldocs $Lang";done -sed -i "s|SUBDIRS=.*$|SUBDIRS=$langs|" translations/Makefile.am -} || { for Lang in $I18N;do [[ -s translations/messages/$Lang.po ]] && langs="$langs $Lang";done for Lang in $I18N;do [[ -d doc/$Lang ]] && ldocs="$ldocs $Lang";done -} listdocs_fn -[[ $TDEVERSION == 14.0.11 ]] && ltoolupdate_fn - chown_fn cd_builddir_fn -[[ $TDEVERSION == 14.0.11 ]] && { - -[[ $GCC_VIS == ON ]] && EN_GCC_VIS="--enable-gcc-hidden-visibility" - -CFLAGS="$SLKRCFLAGS" \ -CXXFLAGS="$SLKRCFLAGS" \ -CC=$COMPILER \ -CXX=$COMPILER_CXX \ -../configure \ - --prefix=$INSTALL_TDE \ - ${EN_GCC_VIS:-} \ - --disable-rpath \ - --enable-closure - -} || { - cmake ${G_NINJA:-} \ -DCMAKE_C_FLAGS="$SLKRCFLAGS" \ -DCMAKE_CXX_FLAGS="$SLKRCFLAGS" \ @@ -83,8 +59,6 @@ cmake ${G_NINJA:-} \ -Wno-dev \ .. -} - make_fn installdocs_fn diff --git a/Apps/klamav/klamav.SlackBuild b/Apps/klamav/klamav.SlackBuild index 7580c8d..da2eb60 100644 --- a/Apps/klamav/klamav.SlackBuild +++ b/Apps/klamav/klamav.SlackBuild @@ -91,7 +91,7 @@ cd $TMP_BUILD/package-clamav makepkg -l y -c n $OUTPUT/clamav-0.103.3-$ARCH-$BUILD.txz installpkg $OUTPUT/clamav-0.103.3-$ARCH-$BUILD.txz ) -echo -e "\n returning to building klamav \n" +echo -e "\n now building klamav \n" clamav_installed_fn || { echo -e "\033[39;1m"" ## installation of clamav failed ##\n""\033[0m" ; exit 1 ; } } || { ## .. but if the source archive isn't in 'src', display message .. echo -e "\n ############ \n\n\033[39;1m clamav is not installed and is required for this build \n diff --git a/Apps/knemo/knemo.SlackBuild b/Apps/knemo/knemo.SlackBuild index b867f02..6cda251 100755 --- a/Apps/knemo/knemo.SlackBuild +++ b/Apps/knemo/knemo.SlackBuild @@ -62,6 +62,7 @@ cmake ${G_NINJA:-} \ -DPLUGIN_INSTALL_DIR=$INSTALL_TDE/lib$LIBDIRSUFFIX/$PLUGIN_INSTALL_DIR \ -DWITH_GCC_VISIBILITY=${GCC_VIS:-} \ -DWITH_LIBIW="OFF" \ + -DWITH_NETTOOLS="OFF" \ -DBUILD_DOC="ON" \ -DBUILD_TRANSLATIONS="ON" \ -Wno-dev \ diff --git a/Apps/knights/knights.SlackBuild b/Apps/knights/knights.SlackBuild index 18eac02..14226e3 100755 --- a/Apps/knights/knights.SlackBuild +++ b/Apps/knights/knights.SlackBuild @@ -47,6 +47,8 @@ chown_fn cd_builddir_fn +## BUILD_EXTRA_THEME is a 14.1.0 option and will be ignored for 14.0.n builds +## See the slack-desc for a URL for additional themes cmake ${G_NINJA:-} \ -DCMAKE_C_FLAGS="$SLKRCFLAGS" \ -DCMAKE_CXX_FLAGS="$SLKRCFLAGS" \ @@ -85,7 +87,7 @@ echo " $PRGNAM: A graphical chess interface for the Trinity Desktop Environment $PRGNAM: $PRGNAM: Download themepack [additional boards and chessman themes] from: -$PRGNAM: http://sourceforge.net/project/showfiles.php?group_id=31461 +$PRGNAM: https://sourceforge.net/project/showfiles.php?group_id=31461 $PRGNAM: $PRGNAM: Needs separate chess engines, for example gnuchess, stockfish, komodo. $PRGNAM: diff --git a/Apps/koffice-i18n/koffice-i18n.SlackBuild b/Apps/koffice-i18n/koffice-i18n.SlackBuild index c61849f..6288bcb 100755 --- a/Apps/koffice-i18n/koffice-i18n.SlackBuild +++ b/Apps/koffice-i18n/koffice-i18n.SlackBuild @@ -24,7 +24,10 @@ # SUCH DAMAGE. PRGNAM=koffice-i18n -[[ $PRE_DOWNLOAD != yes ]] && [[ $I18N == "" ]] && echo -e "\033[39;1m\nYou have tried to build $PRGNAM without selecting any language(s)\n\033[0m" && exit +[[ $PRE_DOWNLOAD != yes ]] && [[ $I18N == "" ]] && \ +echo -e "\033[39;1m + You have tried to build $PRGNAM without selecting any language(s) +\033[0m" && exit VERSION=$TDEVERSION BUILD=${BUILD:-1} TAG=${TAG:-_tde} @@ -44,7 +47,11 @@ cd $dir ## revert name 'chalk' to 'krita' if that has been done for koffice [[ $(ls $INSTALL_TDE/bin/krita) ]] && { -echo -e "\n Reverting chalk to krita for $dir .. \n" +echo -e "\033[39;1m + + Reverting chalk to krita for $dir .. + $(printf '%0.s¯' $(seq 1 $[${#dir}+29])) +\033[0m" ## Rename files and contents: mv ../template/messages/koffice/chalk.pot ../template/messages/koffice/krita.pot || true mv messages/koffice/chalk.po messages/koffice/krita.po diff --git a/Apps/koffice/README b/Apps/koffice/README index 7f90c5f..4802de9 100644 --- a/Apps/koffice/README +++ b/Apps/koffice/README @@ -6,8 +6,8 @@ If it is necessary to convert the image to the RGB working space, there are a nu Example: """"""" -in=/original.png -out=/converted.png +in=/original.png # existing +out=/converted.png # will be created profile=/share/apps/{chalk,krita}/profiles/srgb_color_space_profile.icm convert='gm convert' ($convert $in -profile $profile $out) diff --git a/Apps/kompose/kompose.SlackBuild b/Apps/kompose/kompose.SlackBuild index 02f447e..43d6734 100644 --- a/Apps/kompose/kompose.SlackBuild +++ b/Apps/kompose/kompose.SlackBuild @@ -43,7 +43,7 @@ chown_fn cd_builddir_fn -[[ -s /usr/lib$LIBDIRSUFFIX/pkgconfig/xdamage.pc && -s /usr/lib$LIBDIRSUFFIX/pkgconfig/xcomposite.pc ]] && XCOMP="ON" +pkg-config xdamage && pkg-config xcomposite && XCOMP="ON" cmake ${G_NINJA:-} \ -DCMAKE_C_FLAGS="$SLKRCFLAGS" \ -DCMAKE_CXX_FLAGS="$SLKRCFLAGS" \ diff --git a/Apps/kvkbd/README b/Apps/kvkbd/README index a818419..58794ed 100644 --- a/Apps/kvkbd/README +++ b/Apps/kvkbd/README @@ -1,13 +1,13 @@ -The many enhancements include setting key and/or background colours, and displaying level 3 & 4 characters where the xkb/symbols definitions include using the AltGr [ralt] key. +The many enhancements include setting key and/or background colours, and displaying level 3 & 4 characters where the xkb/symbols definitions include using the AltGr key [include "level3(ralt_switch)"]. Build-time options to be hard-coded into the app are: -[1] Use Win keys - a] as modifier keys +[1] Use each Win key + a] as a modifier key The default use for the \Zb\Z6LWin\Zn and \Zb\Z6RWin\Zn keys on the \Zb\Z6Kvkbd\Zn keyboard is set as modifier keys to map a number of characters or functions and to 'lock' for the next key click - this is to simulate holding down the key on a physical keyboard. - or b] for characters set with xmodmap. - Alternatively, using xmodmap they can map to characters set by a user - this will generate a keycode on a single click. + or b] for a character set with xmodmap + Alternatively, using xmodmap, each key can map to a character set by a user - this will generate a keycode on a single click. [2] Alternative text on the num pad keys. @@ -15,10 +15,10 @@ For example: |Ho| |me| can be replaced with |H←|, which is a better fit on the keys. -[3] Small icons can be shown on the buttons if the keyboard is to be used at the default size. +[3] Small icons are a better fit on the buttons if the keyboard is to be used at the default size. [4] Show blank keys where AltGr doesn't produce a character. -3rd and 4th level character sets on a keyboard generally don't cover all keys. -Select this option to see only those characters which AltGr generates. +Usually, not all keys have 3rd and 4th level characters assigned. +Select this option to see only those characters which AltGr or AltGr+Shift generate. diff --git a/Apps/rosegarden/rosegarden.SlackBuild b/Apps/rosegarden/rosegarden.SlackBuild index a73226e..fd1469b 100755 --- a/Apps/rosegarden/rosegarden.SlackBuild +++ b/Apps/rosegarden/rosegarden.SlackBuild @@ -34,7 +34,7 @@ getsource_fn untar_fn ## remove help documentation build instruction from all locales ... -sed -i '/tde_create_handbook/,+3d' doc/??{,_??}/CMakeLists.txt || true +sed -i '/tde_create_handbook/,+3d' doc/*/CMakeLists.txt || true ## ... and restore for 'en' echo "tde_create_handbook( LANG en DESTINATION $PRGNAM )" >> doc/en/CMakeLists.txt # @@ -65,10 +65,10 @@ chown_fn cd_builddir_fn # Check for Jack Audio Connection Kit -[[ $(ls /var/log/packages/jack-audio-connection-kit-*) ]] && JACK="ON" +pkg-config jack && JACK="ON" # Check for DSSI aka "Dizzy" -[[ $(grep -E "dssi.h" /var/log/packages/*) ]] && DSSI="ON" +pkg-config dssi && DSSI="ON" cmake ${G_NINJA:-} \ -DCMAKE_C_FLAGS="$SLKRCFLAGS" \ diff --git a/BUILD-TDE.sh b/BUILD-TDE.sh index a566d6d..5a08844 100755 --- a/BUILD-TDE.sh +++ b/BUILD-TDE.sh @@ -101,7 +101,7 @@ Set the version of TDE to be built. " \ 13 75 3 \ -"14.0.11" "the R14.0.11 release - source from archives" \ +"14.0.12" "the R14.0.12 release - source from archives" \ "14.0.x" "next release preview - source from Trinity git" \ "14.1.0" "R14.1.0 development - source from Trinity git" \ 2> $TMPVARS/TDEVERSION @@ -352,7 +352,7 @@ about_4="Full-screen window/desktop manager" status_4=off comment_4="\Zb\Z6 Imlib2 is a build time requirement \Zn" -## there is no 14.0.x/11 port for this +## there is no 14.0.x/12 port for this [[ $(cat $TMPVARS/TDEVERSION) == 14.1.0 ]] && { app_5="Apps/kplayer" about_5="Multimedia player with MPlayer backend" @@ -724,7 +724,7 @@ See the README for further details .. [1] Use Win keys     either as modifier keys, -        or to print characters set with xmodmap. +        or to print a character set with xmodmap. [2] Alternative text on the num pad keys. @@ -801,8 +801,8 @@ Create and/or update the git repositories local copies. #rm -f $TMPVARS/PRE_DOWNLOAD ## this is done at the head of this script -[[ $(cat $TMPVARS/TDEVERSION) == 14.0.11 ]] && PRE_DOWNLOAD_MESSAGE="Only the source archives not already in 'src' will be downloaded." || PRE_DOWNLOAD_MESSAGE="All cgit sources for the build list packages will be cloned/updated.\nMisc archives will only be downloaded if not already in 'src'." -## testing for cgit!=no will allow =yes, or null, which is the 14.0.11 build case +[[ $(cat $TMPVARS/TDEVERSION) == 14.0.12 ]] && PRE_DOWNLOAD_MESSAGE="Only the source archives not already in 'src' will be downloaded." || PRE_DOWNLOAD_MESSAGE="All cgit sources for the build list packages will be cloned/updated.\nMisc archives will only be downloaded if not already in 'src'." +## testing for cgit!=no will allow =yes, or null, which is the 14.0.12 build case [[ $(cat $TMPVARS/DL_CGIT) != no ]] && { dialog --cr-wrap --no-shadow --colors --defaultno --title " Only download sources " --yesno \ " @@ -865,13 +865,16 @@ Confirm or change these build options .. [2] \Z3\Zbno_warn\Zn - don't display any compiler warning messages -[3] \Z3\Zbninja\Zn - use ninja for cmake builds [ignored for automake builds] +[3] \Z3\Zbninja\Zn - use ninja for cmake builds [ignored for autotools builds] -[4] \Z3\Zbverbose\Zn - show -> command lines during cmake builds; 'make' debugging information; and standard error output. -Using this is only recommended if fault finding. +[4] \Z3\Zbverbose\Zn - show: +              * command lines during cmake builds +              * 'make' debugging information +              * standard error output +    Using this is only recommended if fault finding. " \ -25 75 4 \ +27 75 4 \ " install" "install built packages" ${OPT_1:-on} \ " no_warn" "suppress compiler warnings" ${OPT_2:-off} \ " ninja" "use ninja for cmake builds" ${OPT_3:-off} \ diff --git a/Core/tde-i18n/tde-i18n.SlackBuild b/Core/tde-i18n/tde-i18n.SlackBuild index d5614e6..1539e7e 100755 --- a/Core/tde-i18n/tde-i18n.SlackBuild +++ b/Core/tde-i18n/tde-i18n.SlackBuild @@ -24,7 +24,10 @@ # SUCH DAMAGE. PRGNAM=tde-i18n -[[ $PRE_DOWNLOAD != yes ]] && [[ $I18N == "" ]] && echo -e "\033[39;1m\nYou have tried to build $PRGNAM without selecting any language(s)\n\033[0m" && exit +[[ $PRE_DOWNLOAD != yes ]] && [[ $I18N == "" ]] && \ +echo -e "\033[39;1m + You have tried to build $PRGNAM without selecting any language(s) +\033[0m" && exit VERSION=$TDEVERSION BUILD=${BUILD:-1} @@ -35,23 +38,23 @@ getsource_fn ## extract, build, and remove source for each language package one at a time cd $TMP_BUILD/tmp-$PRGNAM -[[ $TDEVERSION == 14.0.11 ]] && { +[[ $TDEVERSION == 14.0.12 ]] && { # extract the template source once only -echo -e "\033[39;1m" -echo "Extracting the template source from $(basename $SOURCE) ..." -echo -e "\033[0m" +echo -e "\033[39;1m + Extracting the template source from $(basename $SOURCE) ... +\033[0m" tar xf $SOURCE $PRGNAM-trinity-$TDEVERSION/template # extract the translations source once only -echo -e "\033[39;1m" -echo "Extracting the translations source from $(basename $SOURCE) ..." -echo -e "\033[0m" +echo -e "\033[39;1m + Extracting the translations source from $(basename $SOURCE) ... +\033[0m" tar xf $SOURCE $PRGNAM-trinity-$TDEVERSION/translations # extract the cmake source once only -## it's unlikely that this is being run without the required packages, +## it's unlikely that this is being run without the 'Required' packages, ## in which case the cmake archive will exist -echo -e "\033[39;1m" -echo "Extracting the cmake source from $(basename $SRCDIR/cmake-$TDEVERSION.tar.xz) ..." -echo -e "\033[0m" +echo -e "\033[39;1m + Extracting the cmake source from $(basename $SRCDIR/cmake-$TDEVERSION.tar.xz) ... +\033[0m" (cd $PRGNAM-trinity-$TDEVERSION tar xf $SRCDIR/cmake-$TDEVERSION.tar.xz mv cmake-trinity-$TDEVERSION cmake) @@ -64,11 +67,11 @@ cp -a --parents cmake/* $TMP_BUILD/tmp-$PRGNAM/$PRGNAM/) for lang in $I18N do -[[ $TDEVERSION == 14.0.11 ]] && { +[[ $TDEVERSION == 14.0.12 ]] && { # extract the source for one language at a time for each iteration of the loop -echo -e "\033[39;1m" -echo "Extracting the $PRGNAM-$lang source from $(basename $SOURCE) ..." -echo -e "\033[0m" +echo -e "\033[39;1m + Extracting the $PRGNAM-$lang source from $(basename $SOURCE) ... +\033[0m" tar -xf $SOURCE $PRGNAM-trinity-$TDEVERSION/$PRGNAM-$lang cd $PRGNAM-trinity-$TDEVERSION ## link cmake into the $PRGNAM-$lang top level @@ -78,7 +81,9 @@ ln -s ../cmake .) true # don't go to cgit if extracting fails } || { cd $PRGNAM -echo -e "\n copying $PRGNAM-$lang source files to build area ... \n" +echo " + copying $PRGNAM-$lang source files to build area ... +" (cd $BUILD_TDE_ROOT/src/cgit cp -a tdei18n/cgit/tde-i18n/plain/tde-i18n-$lang $TMP_BUILD/tmp-$PRGNAM/$PRGNAM/) (cd $TMP_BUILD/tmp-$PRGNAM/$PRGNAM/$PRGNAM-$lang/ @@ -158,7 +163,9 @@ PKG=$PKG1 cd $TMP_BUILD/tmp-$PRGNAM # remove any previous builds if option chosen -[[ $KEEP_BUILD != "yes" ]] && echo -e " removing tde-i18n-$lang build data ..\n" && { +[[ $KEEP_BUILD != "yes" ]] && echo " + removing tde-i18n-$lang build data .. +" && { rm -rf $PKG/* rm -rf $PRGNAM*/$PRGNAM-$lang } diff --git a/Core/tdeartwork/tdeartwork.SlackBuild b/Core/tdeartwork/tdeartwork.SlackBuild index 194a635..14b948b 100755 --- a/Core/tdeartwork/tdeartwork.SlackBuild +++ b/Core/tdeartwork/tdeartwork.SlackBuild @@ -89,7 +89,7 @@ $PRGNAM: tdeartwork $PRGNAM: $PRGNAM: Extra artwork/themes/wallpapers for TDE $PRGNAM: * themes, -$PRGNAM: * screensaver, +$PRGNAM: * screensavers, $PRGNAM: * sounds, $PRGNAM: * wallpapers, $PRGNAM: * widget styles and diff --git a/Core/tdeedu/tdeedu.SlackBuild b/Core/tdeedu/tdeedu.SlackBuild index cba7682..bfdb3c5 100755 --- a/Core/tdeedu/tdeedu.SlackBuild +++ b/Core/tdeedu/tdeedu.SlackBuild @@ -48,6 +48,124 @@ rm -rf *ocaml* tar xf $BUILD_TDE_ROOT/src/4.05.0.tar.gz cd ocaml-4.05.0/ +## patch for error caused by glibc-2.34: +## signals_asm.c:197:13: error: variably modified ‘sig_alt_stack’ at file scope +## 197 | static char sig_alt_stack[SIGSTKSZ]; +## | ^~~~~~~~~~~~~ +## Refs: https://github.com/ocaml/ocaml/{issues/10250,pull/10266} +## https://github.com/dra27/ocaml/[pull/56] +## └ 0d2c1fd77b4715c70d0ffc4348f1bc2d3eaacbf7 refs/remotes/origin/alt-signal-stack-4.05 +## └ commit 50c2d1275e537906ea144bd557fde31e0bf16e5f +patch -p0 << EOF +--- asmrun/fail.c ++++ asmrun/fail.c +@@ -33,0 +34,2 @@ ++extern void caml_terminate_signals(void); ++ +@@ -63 +65,4 @@ +- if (caml_exception_pointer == NULL) caml_fatal_uncaught_exception(v); ++ if (caml_exception_pointer == NULL) { ++ caml_terminate_signals(); ++ caml_fatal_uncaught_exception(v); ++ } +--- asmrun/signals_asm.c ++++ asmrun/signals_asm.c +@@ -197 +196,0 @@ +-static char sig_alt_stack[SIGSTKSZ]; +@@ -298,8 +297,18 @@ +- stk.ss_sp = sig_alt_stack; +- stk.ss_size = SIGSTKSZ; +- stk.ss_flags = 0; +- SET_SIGACT(act, segv_handler); +- act.sa_flags |= SA_ONSTACK | SA_NODEFER; +- sigemptyset(&act.sa_mask); +- system_stack_top = (char *) &act; +- if (sigaltstack(&stk, NULL) == 0) { sigaction(SIGSEGV, &act, NULL); } ++ /* Allocate and select an alternate stack for handling signals, ++ especially SIGSEGV signals. ++ The alternate stack used to be statically-allocated for the main thread, ++ but this is incompatible with Glibc 2.34 and newer, where SIGSTKSZ ++ may not be a compile-time constant. */ ++ stk.ss_sp = malloc(SIGSTKSZ); ++ if (stk.ss_sp != NULL) { ++ stk.ss_size = SIGSTKSZ; ++ stk.ss_flags = 0; ++ SET_SIGACT(act, segv_handler); ++ act.sa_flags |= SA_ONSTACK | SA_NODEFER; ++ sigemptyset(&act.sa_mask); ++ system_stack_top = (char *) &act; ++ if (sigaltstack(&stk, NULL) == 0) ++ sigaction(SIGSEGV, &act, NULL); ++ else ++ free(stk.ss_sp); ++ } +@@ -309,0 +319,42 @@ ++#endif ++} ++ ++/* Termination of signal stuff */ ++ ++#if defined(TARGET_power) || defined(TARGET_s390x) \\ ++ || defined(TARGET_sparc) && defined(SYS_solaris) \\ ++ || defined(HAS_STACK_OVERFLOW_DETECTION) ++static void set_signal_default(int signum) ++{ ++ struct sigaction act; ++ sigemptyset(&act.sa_mask); ++ act.sa_handler = SIG_DFL; ++ act.sa_flags = 0; ++ sigaction(signum, &act, NULL); ++} ++#endif ++ ++void caml_terminate_signals(void) ++{ ++#if defined(TARGET_sparc) && defined(SYS_solaris) ++ set_signal_default(SIGILL); ++#endif ++ ++#if defined(TARGET_power) ++ set_signal_default(SIGTRAP); ++#endif ++ ++#if defined(TARGET_s390x) ++ set_signal_default(SIGFPE); ++#endif ++ ++#ifdef HAS_STACK_OVERFLOW_DETECTION ++ set_signal_default(SIGSEGV); ++ stack_t oldstk, stk; ++ stk.ss_flags = SS_DISABLE; ++ if (sigaltstack(&stk, &oldstk) == 0) { ++ /* If caml_init_signals failed, we are not using an alternate signal stack. ++ SS_DISABLE will be set in oldstk, and there is nothing to free in this ++ case. */ ++ if (! (oldstk.ss_flags & SS_DISABLE)) free(oldstk.ss_sp); ++ } +--- asmrun/startup.c ++++ asmrun/startup.c +@@ -94,0 +95 @@ ++extern void caml_terminate_signals(void); +@@ -105,0 +107 @@ ++ value res; +@@ -140,0 +143 @@ ++ caml_terminate_signals(); +@@ -144 +147,3 @@ +- return caml_start_program(); ++ res = caml_start_program(); ++ caml_terminate_signals(); ++ return res; +--- byterun/sys.c ++++ byterun/sys.c +@@ -113,0 +114,2 @@ ++extern void caml_terminate_signals(void); ++ +@@ -146,0 +149,3 @@ ++#ifdef NATIVE_CODE ++ caml_terminate_signals(); ++#endif +EOF + ## force "gcc -fcommon" for gcc10 build - see https://github.com/ocaml/ocaml/issues/9622 ./configure -cc "gcc -fcommon" -libdir /usr/local/lib$LIBDIRSUFFIX/ocaml ## finish build with -j1 if there are race condition errors @@ -75,7 +193,7 @@ cd $TMP_BUILD/package-facile makepkg -l y -c n $OUTPUT/facile-1.1.3-$ARCH-$BUILD.txz installpkg $OUTPUT/facile-1.1.3-$ARCH-$BUILD.txz ) -echo -e "\n returning to building tdeedu \n" +echo -e "\n now building tdeedu \n" ocaml_installed_fn || { echo -e " installation of ocaml/facile failed \n" ; exit 1 ; } } } && \ diff --git a/Core/tdegraphics/tdegraphics.SlackBuild b/Core/tdegraphics/tdegraphics.SlackBuild index d43050e..be690ac 100755 --- a/Core/tdegraphics/tdegraphics.SlackBuild +++ b/Core/tdegraphics/tdegraphics.SlackBuild @@ -48,43 +48,6 @@ echo $' + ' | patch -N -p0 || true -## Patch for poppler 21.11, tdegraphics issue #36/37 -[[ $TDEVERSION == 14.0.11 ]] && { -echo $' ---- config.h.cmake -+++ config.h.cmake -@@ -3,2 +3,3 @@ - // poppler-tqt -+#cmakedefine HAVE_POPPLER_2111 - #cmakedefine HAVE_POPPLER_2108 - ---- tdefile-plugins/dependencies/poppler-tqt/ConfigureChecks.cmake -+++ tdefile-plugins/dependencies/poppler-tqt/ConfigureChecks.cmake -@@ -26,3 +26,3 @@ - --foreach( _poppler_ver 0.58 0.64 0.70 0.71 0.72 0.76 0.82 0.83 0.86 21.08 ) -+foreach( _poppler_ver 0.58 0.64 0.70 0.71 0.72 0.76 0.82 0.83 0.86 21.08 21.11 ) - string( REPLACE "." "" _poppler_str "${_poppler_ver}" ) - ---- tdefile-plugins/dependencies/poppler-tqt/poppler-page.cpp -+++ tdefile-plugins/dependencies/poppler-tqt/poppler-page.cpp -@@ -175,3 +175,7 @@ - -+# if defined(HAVE_POPPLER_2111) -+ std::unique_ptr word_list = output_dev->makeWordList(); -+# else - TextWordList *word_list = output_dev->makeWordList(); -+# endif - -@@ -195,3 +199,5 @@ - -+# if !defined(HAVE_POPPLER_2111) - delete word_list; -+# endif - delete output_dev; -' | patch -p0 -} - listdocs_fn chown_fn diff --git a/Core/tdelibs/tdelibs.SlackBuild b/Core/tdelibs/tdelibs.SlackBuild index d27e5f9..c1371e0 100755 --- a/Core/tdelibs/tdelibs.SlackBuild +++ b/Core/tdelibs/tdelibs.SlackBuild @@ -115,6 +115,29 @@ patch -N -p0 << EOF || true + text-align: left; EOF +## for jasper-3.0.0+ +patch -N -p0 << EOF || true +--- kimgio/jp2.cpp ++++ kimgio/jp2.cpp +@@ -279,7 +279,16 @@ kimgio_jp2_write( TQImageIO* io ) + TQTextStream ts( &rate, IO_WriteOnly ); + ts << "rate=" + << ( (io->quality() < 0) ? DEFAULT_RATE : io->quality() / 100.0F ); ++# if defined(JAS_VERSION_MAJOR) && (JAS_VERSION_MAJOR >= 3) ++ const jas_image_fmtinfo_t *jp2_fmtinfo = jas_image_lookupfmtbyname("jp2"); ++ int i = -1; ++ if (jp2_fmtinfo) ++ { ++ i = jas_image_encode(ji, stream, jp2_fmtinfo->id, rate.utf8().data()); ++ } ++# else + int i = jp2_encode( ji, stream, rate.utf8().data() ); ++# endif + + jas_image_destroy( ji ); + jas_stream_close( stream ); +EOF + listdocs_fn chown_fn @@ -122,10 +145,9 @@ chown_fn cd_builddir_fn # Check for avahi-tqt -[[ -s $INSTALL_TDE/include/avahi-tqt/qt-watch.h ]] && AVAHI="ON" && { -## dnssd/responder.cpp:28:10: fatal error: avahi-tqt/qt-watch.h: No such file or directory -sed -i 's|TQT_INCLUDE_DIRS}|&\n ${AVAHI_TQT_INCLUDE_DIRS}|' ../dnssd/CMakeLists.txt -} +pkg-config avahi-tqt && AVAHI="ON" +# Check for jasper +pkg-config jasper && JASPER="ON" ## Slackware doesn't include Hspell ## Prioritise Aspell according to its slack-desc: @@ -135,6 +157,14 @@ sed -i 's|TQT_INCLUDE_DIRS}|&\n ${AVAHI_TQT_INCLUDE_DIRS}|' ../dnssd/CMakeLists ## just show message without failing if no spell checker is installed sed -i 's|tde_message_fatal( "Spell checker|message( "Spell checker|' ../CMakeLists.txt +<<'comment' + WITH_CRYPTSETUP + WITH_PCSC + WITH_PKCS + WITH_UDEVIL +are 14.1.0 options and will be ignored by 14.0.n builds +comment + cmake ${G_NINJA:-} \ -DCMAKE_C_FLAGS="$SLKRCFLAGS" \ -DCMAKE_CXX_FLAGS="$SLKRCFLAGS" \ @@ -154,6 +184,7 @@ cmake ${G_NINJA:-} \ -DWITH_ASPELL=${ASPELL:-"OFF"} \ -DWITH_AVAHI=${AVAHI:-"OFF"} \ -DWITH_CONSOLEKIT="OFF" \ + -DWITH_CRYPTSETUP="ON" \ -DWITH_CUPS="ON" \ -DWITH_DEVKITPOWER="ON" \ -DWITH_ELFICON="OFF" \ @@ -164,7 +195,7 @@ cmake ${G_NINJA:-} \ -DWITH_IMAGETOPS_BINARY="OFF" \ -DWITH_INOTIFY="ON" \ -DWITH_ISPELL=${ISPELL:-"OFF"} \ - -DWITH_JASPER="OFF" \ + -DWITH_JASPER=${JASPER:-"OFF"} \ -DWITH_KDE4_MENU_SUFFIX="ON" \ -DWITH_LIBART="ON" \ -DWITH_LIBBFD="OFF" \ @@ -177,12 +208,15 @@ cmake ${G_NINJA:-} \ -DWITH_OLD_XDG_STD="OFF" \ -DWITH_OPENEXR="ON" \ -DWITH_PCRE="ON" \ + -DWITH_PCSC="OFF" \ + -DWITH_PKCS="OFF" \ -DWITH_SSL="ON" \ -DWITH_SUDO_TDESU_BACKEND="ON" \ -DWITH_TDEHWLIB="ON" \ -DWITH_TDEHWLIB_DAEMONS="ON" \ -DWITH_TDEICONLOADER_DEBUG="OFF" \ -DWITH_TIFF="ON" \ + -DWITH_UDEVIL="ON" \ -DWITH_UDISKS2="ON" \ -DWITH_UDISKS="ON" \ -DWITH_UPOWER="OFF" \ diff --git a/Deps/akode/README b/Deps/akode/README index 295d57e..d183483 100644 --- a/Deps/akode/README +++ b/Deps/akode/README @@ -11,12 +11,4 @@ Take especially note of the following: When using direct aKode playback sinks will be autodetected by loading and probing plugins in this order: pulse, jack, alsa, oss """ - ---------------------- -Attempting to build FFMPEG_DECODER was abandoned because the akode code is too old. - -Example: -/tmp/build/tmp-akode/akode-trinity-14.0.7/akode/plugins/ffmpeg_decoder/ffmpeg_decoder.cpp:98:17: error: ‘AVCODEC_MAX_AUDIO_FRAME_SIZE’ was not declared in this scope - - ... is no longer defined in ffmpeg. diff --git a/README.md b/README.md index 599ba8c..d218d4d 100644 --- a/README.md +++ b/README.md @@ -7,7 +7,7 @@ See 'Cross compiling for RPi3' for building for arm_hf and aarch64. For a native build, run **./BUILD-TDE.sh** - a dialog based script with a series of screens for user input, -which will build the release version 14.0.11, or the development versions 14.0.x, 14.1.0. +which will build the release version 14.0.12, or the development versions 14.0.x, 14.1.0. [](https://ray-v.github.io/TDE-version.png) @@ -18,7 +18,7 @@ Information about dependencies for some packages has been added at the bottom of Only building the packages is a global option. It therefore can't be used where the build list includes packages which will need to be installed as dependencies for other packages in the build list [for example tdesdk needs tdepim to be installed]. -14.0.11 source archives will be downloaded from a geoIP located mirror site, or the development sources [14.0.x/14.1.0] cloned or updated from trinitydesktop gitea. +14.0.12 source archives will be downloaded from a geoIP located mirror site, or the development sources [14.0.x/14.1.0] cloned or updated from trinitydesktop gitea. Downloading can be done pre-build [useful for an off-line build], or during the build. If you're curious about what this might involve, [take a look at a sample build set up](https://ray-v.github.io/A_typical_TDE_SlackBuild.html). @@ -26,7 +26,8 @@ If you're curious about what this might involve, [take a look at a sample build --- ***Command line options*** that can be used to set some build parameters: -* TDE_MIRROR= - override the trinitydesktop.org geoIP redirector to use https - example, *https://trinitydesktop.mirrorservice.org/trinity*. +* TDE_MIRROR= - override the trinitydesktop.org geoIP redirector to use https. + For example, *TDE_MIRROR=https://trinitydesktop.mirrorservice.org ./BUILD-TDE.sh* URLs for this and other locations are @ https://www.trinitydesktop.org/mirrorstatus.php * BUILD= - sets the package build identifier, overriding the SlackBuild default of 1 * GCC_VIS=0 - override setting gcc visibility if it has been set ON in tdelibs diff --git a/apps-list b/apps-list index 74c15c4..6e697d0 100644 --- a/apps-list +++ b/apps-list @@ -18,7 +18,6 @@ multimedia-Apps/k3b multimedia-Apps/k3b-i18n multimedia-Apps/k9copy multimedia-Apps/kaffeine -multimedia-Apps/kplayer multimedia-Apps/rosegarden multimedia-Apps/soundkonverter office-Apps/kbookreader diff --git a/get-source.sh b/get-source.sh index db2066d..378260f 100755 --- a/get-source.sh +++ b/get-source.sh @@ -71,14 +71,14 @@ SRCDIR=$BUILD_TDE_ROOT/src SB_SRCDIR=$(cd $(dirname $0); pwd) ## for 14.0.11 onwards, check for cmake archive .. -[[ $TDEVERSION == 14.0.11 && ! -s $SRCDIR/cmake-$TDEVERSION.tar.xz ]] && ( +[[ $TDEVERSION == 14.0.12 && ! -s $SRCDIR/cmake-$TDEVERSION.tar.xz ]] && ( echo -e "\nDownloading to $SRCDIR" wget -T 20 -O $SRCDIR/cmake-$TDEVERSION.tar.xz $TDE_MIRROR/releases/R$TDEVERSION/main/common/cmake-trinity-$TDEVERSION.tar.xz echo -e "----\n" ) -## if 14.0.11 or misc, download archive: -[[ $TDEVERSION == 14.0.11 || $TDEMIR_SUBDIR == misc ]] && { +## if 14.0.12 or misc, download archive: +[[ $TDEVERSION == 14.0.12 || $TDEMIR_SUBDIR == misc ]] && { ## check for and remove any zero byte archive files [[ ! -s $SRCDIR/$PRGNAM-$VERSION.${ARCHIVE_TYPE:-"tar.xz"} ]] && \ rm $SRCDIR/$PRGNAM-$VERSION.${ARCHIVE_TYPE:-"tar.xz"} 2>/dev/null || true @@ -114,7 +114,7 @@ if [ "$P1" == "--download" ]; then exit 0 fi } || { -## otherwise, not R14.0.11 or misc, and we are creating/updating git, +## otherwise, not R14.0.12 or misc, and we are creating/updating git, ## so [1] start with admin/cmake: [[ $(cat $TMPVARS/DL_CGIT) == yes ]] && { cd $BUILD_TDE_ROOT/src/cgit @@ -171,7 +171,7 @@ git fetch origin r14.0.x:r14.0.x) git clone https://mirror.git.trinitydesktop.org/gitea/TDE/libltdl } -## if tdenetwork, need libtdevnc, but not yet for 14.0.x==14.0.11[?] which uses krfb/libvncserver +## if tdenetwork, need libtdevnc, but not yet for 14.0.x or 14.0.12 which use krfb/libvncserver [[ " tdenetwork " == *$PRGNAM* ]] && { [[ -d libtdevnc ]] && \ (echo "Updating libtdevnc ..." @@ -246,7 +246,7 @@ cd $TMP_BUILD/tmp-$PRGNAM ## ## [1] firstly test for R14 or misc .. ## -[[ $TDEVERSION == 14.0.11 || $TDEMIR_SUBDIR == misc ]] && { +[[ $TDEVERSION == 14.0.12 || $TDEMIR_SUBDIR == misc ]] && { ## unpack R14 or misc echo -e "\n unpacking $(basename $SOURCE) ... \n" tar -xf $SOURCE @@ -260,7 +260,7 @@ mv cmake-trinity-$TDEVERSION cmake } || { -## [2] not 14.0.11 nor misc, so must be git .. +## [2] not 14.0.12 nor misc, so must be git .. [[ $TDEVERSION == 14.1.0 ]] && DEV_BRANCH=master || DEV_BRANCH=r14.0.x ## copy git content to build area: diff --git a/src/README b/src/README index 09e59ca..e07ac43 100644 --- a/src/README +++ b/src/README @@ -1 +1 @@ -If you place the source archives for TDE R14.0.x here, the scripts will use them instead of downloading them individually. +If you place the source archives for the current release of TDE here, the scripts will use them instead of downloading them individually. diff --git a/src/cgit/README b/src/cgit/README index 9721c54..b1d3afa 100644 --- a/src/cgit/README +++ b/src/cgit/README @@ -1 +1 @@ -This directory is used to store the cloned tde-git repositories which are copied to the build area in place of the extracted R14.0.x archives. +This directory is used to store the cloned tde-git repositories which are copied to the build area for development builds instead of the extracted TDE current release archives. diff --git a/src/cgit/tdei18n/README b/src/cgit/tdei18n/README index f18e3c9..228edec 100644 --- a/src/cgit/tdei18n/README +++ b/src/cgit/tdei18n/README @@ -1,2 +1,2 @@ This directory is used for downloads of tde-i18n-ab_CD packs as they are not git repositories and therefore can't be cloned individually. -They are copied to the build area in place of the extracted R14.0.x archives. +They are copied to the build area for development builds instead of the extracted TDE current release archives.