From 25f8dd9c8ed8aee18c1f7653762609fa3c9f54d6 Mon Sep 17 00:00:00 2001 From: Ray-V Date: Tue, 28 Aug 2018 15:09:05 +0100 Subject: [PATCH] added option to build R14.0.5 option for minimal tqt3 build, for run-time support only patch for konqueror ViewMode patches for builds with poppler 0.64+ and 0.65+ work-around for tdenetwork build error on current updated README patch to enable tdecmshell to find TDE .desktop file --- Apps/knemo/knemo.SlackBuild | 8 ++ BUILD-TDE.sh | 81 ++++++------ CHANGELOG | 2 +- Core/tde-i18n/tde-i18n.SlackBuild | 4 +- Core/tdebase/tdebase.SlackBuild | 41 +++++-- Core/tdegraphics/tdegraphics.SlackBuild | 156 +++++++++++++++++++++++- Core/tdelibs/tdelibs.SlackBuild | 33 ++++- Core/tdenetwork/tdenetwork.SlackBuild | 9 ++ Core/tdevelop/tdevelop.SlackBuild | 8 +- Deps/tqt3/tqt3.SlackBuild | 45 +++++-- Misc/inkscape/inkscape.SlackBuild | 58 +++++++++ README | 18 ++- get-source.sh | 8 +- 13 files changed, 392 insertions(+), 79 deletions(-) diff --git a/Apps/knemo/knemo.SlackBuild b/Apps/knemo/knemo.SlackBuild index b773c97..6a86fe0 100755 --- a/Apps/knemo/knemo.SlackBuild +++ b/Apps/knemo/knemo.SlackBuild @@ -53,6 +53,14 @@ echo $' @@ -38 +38 @@ -class KNotifyClient::Instance; +namespace KNotifyClient { class Instance; } +--- src/knemod/interfacestatusdialog.cpp ++++ src/knemod/interfacestatusdialog.cpp +@@ -215 +215 @@ +- textLabelSpeedSend->setText( TDEIO::convertSize( bytesPerSecond ) + i18n( "/s" ) ); ++ textLabelSpeedSend->setText( ( bytesPerSecond ) + i18n( "/s" ) ); +@@ -217 +217 @@ +- textLabelSpeedReceived->setText( TDEIO::convertSize( bytesPerSecond ) + i18n( "/s" ) ); ++ textLabelSpeedReceived->setText( ( bytesPerSecond ) + i18n( "/s" ) ); ' | while read line do patch -p0 diff --git a/BUILD-TDE.sh b/BUILD-TDE.sh index d915bc3..f686fb4 100755 --- a/BUILD-TDE.sh +++ b/BUILD-TDE.sh @@ -89,9 +89,10 @@ dialog --cr-wrap --nocancel --no-shadow --colors --title " TDE Version " --menu Set the version of TDE to be built. " \ -12 75 2 \ -"R14.0.4" "the latest released version" \ +13 75 3 \ +"R14.0.5" "the latest released version" \ "cgit" "development source from Trinity git" \ +"R14.0.4" "the previous release" \ 2> $TMPVARS/TDEVERSION @@ -103,7 +104,7 @@ Select the directory that TDE is to be installed in. Any other option will have to be edited into BUILD-TDE.sh " \ -14 75 3 \ +15 75 3 \ "/opt/trinity" "" \ "/opt/tde" "" \ "/usr" "" \ @@ -266,7 +267,7 @@ $(xzless Core/tde-i18n/langcodes.xz |sed 's|\t\+|\t|g'|cut -f 1,3-| tr "\n" X | 26 75 done - +<<'comment' rm -f $TMPVARS/TQT_DOCS dialog --cr-wrap --no-shadow --colors --defaultno --title " TQt html Documentation " --yesno \ " @@ -277,6 +278,7 @@ Include it in the package? 9 75 [[ $? == 0 ]] && echo yes > $TMPVARS/TQT_DOCS [[ $? == 1 ]] && echo no > $TMPVARS/TQT_DOCS +comment rm -f $TMPVARS/EXIT_FAIL @@ -439,7 +441,7 @@ Non-TDE apps are in the Misc category and don't need the \Zb\Zr\Z4R\Znequired TD "Apps/kvkbd" "A virtual keyboard for TDE" off "\Zb\Z6 \Zn" \ "Apps/kvpnc" "TDE frontend for various vpn clients" off "\Zb\Z6 Miscellaneous documentation will be in $(cat $TMPVARS/INSTALL_TDE)/doc/kvpnc-$(cat $TMPVARS/TDEVERSION) \Zn" \ "Apps/piklab" "IDE for PIC microcontrollers" off "\Zb\Z6 \Zn" \ -" Misc/potrace" "For tracing bitmaps to a vector graphics format" off "\Zb\Z6 Required for potracegui \Zn" \ +" Misc/potrace" "For tracing bitmaps to a vector graphics format" off "\Zb\Z6 Required for potracegui, optional for inkscape \Zn" \ "Apps/potracegui" "A GUI for potrace" off "\Zb\Z6 Requires potrace \Zn" \ "Apps/rosegarden" "Audio sequencer and musical notation editor" off "\Zb\Z6 Requires jack-audio-connection-kit liblo and dssi for proper funtionality \Zn" \ "Apps/soundkonverter" "frontend to various audio converters" off "\Zb\Z6 \Zn" \ @@ -451,16 +453,36 @@ Non-TDE apps are in the Misc category and don't need the \Zb\Zr\Z4R\Znequired TD "Apps/twin-style-crystal" "twin theme" off "\Zb\Z6 \Zn" \ "Apps/yakuake" "Quake-style terminal emulator" off "\Zb\Z6 \Zn" \ " Misc/lxml" "Python bindings for libxml2 and libxslt" off "\Zb\Z6 Required to use Inkscape online help \Zn" \ -" Misc/inkscape" "SVG editor - an alternative to potrace, potracegui [and GraphicsMagick]." off "\Zb\Z6 Requires lxml if online help facility is required. \Zn" \ +" Misc/inkscape" "SVG editor - an alternative to potrace, potracegui [and GraphicsMagick]." off "\Zb\Z6 Requires lxml if online help facility is required, potrace is a build-time option. \Zn" \ 2> $TMPVARS/TDEbuilds # successful builds are removed from the TDEbuilds list by '$dir ' so add a space to the last entry # and the " needs to be removed because the Misc entries are double-quoted sed -i -e 's|$| |' -e 's|"||g' $TMPVARS/TDEbuilds +## only run this if tqt3 has been selected +rm -f $TMPVARS/TQT_OPTS +[[ $(grep -o tqt3 $TMPVARS/TDEbuilds) ]] && { +dialog --cr-wrap --nocancel --no-shadow --colors --title " TQt options " --item-help --checklist \ +" +A minimal build of tqt3 will install only the run-time library required for TDE, and the headers and binaries required to build most of TDE. + +But tdepim, ksquirrel, and tdevelop need additional libraries. If you select a minimal build and intend to build any of those at any time, select building their required libs now. + +TQt html documentation is ~21M, and can be excluded from the package. + +" \ +21 75 4 \ +" minimal" "Minimal build" off "\Zb\Z6 Exclude libs and binaries not required for TDE \Zn" \ +" pim_ksq" "Build lib for tdepim and/or ksquirrel" off "\Zb\Z6 Only required if minimal build selected \Zn" \ +" tdevel" "Build lib for tdevelop - also needs pim_ksq" off "\Zb\Z6 Only required if minimal build selected \Zn" \ +" nodocs" "Exclude html documentation" on "\Zb\Z6 \Zn" \ +2> $TMPVARS/TQT_OPTS +} + ## only run this if tdebase has been selected -[[ $(grep -o tdebase $TMPVARS/TDEbuilds) ]] && { rm $TMPVARS/RUNLEVEL +[[ $(grep -o tdebase $TMPVARS/TDEbuilds) ]] && { EXITVAL=2 until [[ $EXITVAL -lt 2 ]] ; do dialog --cr-wrap --no-shadow --yes-label "4" --no-label "3" --help-button --help-label "README" --colors --defaultno --title " TDM " --yesno \ @@ -483,24 +505,6 @@ $(cat Core/tdebase/README|sed "s|/{TDE_installation_dir}|$(cat $TMPVARS/INSTALL_ " \ 30 75 done - -rm -f $TMPVARS/VIEWMODE -dialog --cr-wrap --nocancel --no-shadow --colors --title " Konqueror file manager " --menu \ -" -Konqueror file manager defaults to 'Icon View'. Setting 'another View' and saving that view profile should, but doesn't, override this. - -Until this is fixed [bug 2881], set the default view mode here. - -" \ -20 75 7 \ -"Icon" "konq_iconview" \ -"Multi Column" "konq_multicolumnview" \ -"Tree" "konq_treeview" \ -"Info List" "konq_infolistview" \ -"Detailed List" "konq_detailedlistview" \ -"Text" "konq_textview" \ -"File Size" "fsview_part" \ -2> $TMPVARS/VIEWMODE } @@ -568,8 +572,9 @@ $(cat $TMPVARS/READMEs)" \ } -[[ $(cat $TMPVARS/TDEVERSION) == cgit ]] && { -rm -f $TMPVARS/CGIT +rm -f $TMPVARS/CGIT # place this here to facilitate testing for summary screen +[[ $(cat $TMPVARS/TDEVERSION) == cgit ]] && \ +[[ $(grep -o [ACDLM][a-z]*/ $TMPVARS/TDEbuilds | sort | head -n1) != Misc/ ]] && { dialog --cr-wrap --no-shadow --colors --defaultno --title " TDE development build " --yesno \ " This routine creates and updates the git repositories local copies. @@ -578,7 +583,7 @@ If this is a first run, answer 'yes' - be patient, downloads from git are slowww For subsequent runs, 'yes' will update only. -Local repositories are created/updated as for the single downloads for R14.0.4 builds. +Local repositories are created/updated as for the single downloads for R14.0.4/5 builds. If the current build list includes new apps, and you don't want the existing repos updated, the new apps should be run as a new group initially as selective updating is not supported. Do you want to create or update the git repositories? @@ -627,12 +632,11 @@ export ARCH=$(cat $TMPVARS/ARCH) # set again for the 'continue' option export TDE_MIRROR=mirror.ppa.trinitydesktop.org/trinity export NUMJOBS=$(cat $TMPVARS/NUMJOBS) export I18N=$(cat $TMPVARS/I18N) -export TQT_DOCS=$(cat $TMPVARS/TQT_DOCS) +export TQT_OPTS=$(cat $TMPVARS/TQT_OPTS) export EXIT_FAIL=$(cat $TMPVARS/EXIT_FAIL) export KEEP_BUILD=$(cat $TMPVARS/KEEP_BUILD) export PREPEND=$(cat $TMPVARS/PREPEND) export RUNLEVEL=$(cat $TMPVARS/RUNLEVEL) -export VIEWMODE=$(grep "$(cat $TMPVARS/VIEWMODE)" $0 | grep -o "[a-z]*_[a-z]*") # these exports are for koffice.SB [[ $(cat $TMPVARS/Krita_OPTS) == *krita* ]] && export REVERT=yes [[ $(cat $TMPVARS/Krita_OPTS) == *libpng14* ]] && export USE_PNG14=yes @@ -668,7 +672,7 @@ export ARM_FABI=$(readelf -Ah $(which bash)|grep -oE "soft|hard") ## Action on failure AOF=$(echo $EXIT_FAIL|cut -d" " -f1) ## if tdebase selected -[[ $(grep -o tdebase $TMPVARS/TDEbuilds) ]] && TDMRL=\\Zb\\Z6$RUNLEVEL\\Zn && V_MODE=\\Zb\\Z6$(cat $TMPVARS/VIEWMODE)\\Zn && SHADERL=" " +[[ $(grep -o tdebase $TMPVARS/TDEbuilds) ]] && TDMRL=\\Zb\\Z6$RUNLEVEL\\Zn && SHADERL=" " ## koffice - only if it is being built [[ $(sed 's|koffice-||' $TMPVARS/TDEbuilds | grep -o Apps/koffice) ]] && { [[ $REVERT == yes ]] && RVT=\\Zb\\Z6yes\\Zn || RVT=\\Zb\\Z6no\\Zn @@ -676,6 +680,13 @@ AOF=$(echo $EXIT_FAIL|cut -d" " -f1) [[ $USE_PNG14 == yes ]] && USE_PNG=\\Zb\\Z6yes\\Zn || USE_PNG=\\Zb\\Z6no\\Zn SHADEKO=" " } +## tqt3 options, if tqt3 is being built +[[ $(grep -o tqt3 $TMPVARS/TDEbuilds) ]] && { +TQT_BLD=yes && [[ $TQT_OPTS != *minimal* ]] && TQT_BLD=no +TQT_DOCS=no && [[ $TQT_OPTS != *nodocs* ]] && TQT_DOCS=yes +} +## whether cloning or updating cgit +CLONE=$(cat $TMPVARS/CGIT) ## start dialog EXITVAL=2 until [[ $EXITVAL -lt 2 ]] ; do @@ -685,19 +696,19 @@ Setup is complete - these are the build options: New build list \Zb\Z6$NEW_BUILD\Zn TDE version \Zb\Z6$TDEVERSION\Zn +Clone/update cgit local repositories \Zb\Z6${CLONE:-\Z0\Zbn/a}\Zn TDE installation directory \Zb\Z6$INSTALL_TDE\Zn TDE system configuration directory \Zb\Z6$SYS_CNF_DIR\Zn Compiler \Zb\Z6$COMPILER\Zn gcc cpu optimization \Zb\Z6$SET_march\Zn Number of parallel jobs \Zb\Z6$(echo $NUMJOBS|sed 's|-j||')\Zn Additional languages \Zb\Z6${I18N:-\Z0\Zbnone}\Zn -Include tqt html docs \Zb\Z6$TQT_DOCS\Zn +Minimal tqt build \Zb\Z6${TQT_BLD:-\Z0\Zbn/a}\Zn +Include tqt html docs \Zb\Z6${TQT_DOCS:-\Z0\Zbn/a}\Zn Action on failure \Zb\Z6${AOF:-continue}\Zn Keep the temporary build files \Zb\Z6$KEEP_BUILD\Zn -Pre-select required [\Zb\Zr\Z4R\Zn] builds \Zb\Z6$(cat $TMPVARS/SELECT|sed 's|off|no|;s|on|yes|')\Zn Prepend TDE libs paths \Zb\Z6${PREPEND:-no}\Zn${SHADERL:-\Z0\Zb} -Runlevel for TDM ${TDMRL:-n/a} -Konqueror file manager view mode ${V_MODE:-n/a}\Zn${SHADEKO:-\Z0\Zb} +Runlevel for TDM ${TDMRL:-n/a}\Zn${SHADEKO:-\Z0\Zb} koffice: revert chalk to krita ${RVT:-n/a} build with libpng14 ${USE_PNG:-n/a} diff --git a/CHANGELOG b/CHANGELOG index dbbccea..32a342f 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -20,4 +20,4 @@ 2017-07-13 Issue 40 - koffice.SB, build 3. Fixed karbon build failure caused by configure options used for Sl14.2 ImageMagick build. 07/18/2017 Added avahi-tqt as an optional dep for users with avahi on their system already -No longer maintained +No longer maintained - see the git log for commit comments diff --git a/Core/tde-i18n/tde-i18n.SlackBuild b/Core/tde-i18n/tde-i18n.SlackBuild index 8ec87b6..5b16df7 100755 --- a/Core/tde-i18n/tde-i18n.SlackBuild +++ b/Core/tde-i18n/tde-i18n.SlackBuild @@ -35,7 +35,7 @@ getsource_fn ## extract, build, and remove source for each language package one at a time cd $TMP_BUILD/tmp-$PRGNAM -[[ $TDEVERSION == R14.0.4 ]] && { +[[ $TDEVERSION == R14.0.? ]] && { # extract the cmake source once only echo -e "\033[39;1m" echo "Extracting the cmake source from the $PRGNAM archive ..." @@ -44,7 +44,7 @@ tar xf $SOURCE $PRGNAM/cmake } for lang in $I18N do -[[ $TDEVERSION == R14.0.4 ]] && { +[[ $TDEVERSION == R14.0.? ]] && { # 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 the $PRGNAM archive ..." diff --git a/Core/tdebase/tdebase.SlackBuild b/Core/tdebase/tdebase.SlackBuild index 146af7d..27c288f 100755 --- a/Core/tdebase/tdebase.SlackBuild +++ b/Core/tdebase/tdebase.SlackBuild @@ -39,8 +39,6 @@ listdocs_fn ## patch for gcc7 twin/client.cpp:2978:38: error: ISO C++ forbids comparison between pointer and integer [-fpermissive] sed -i 's|data != None|data != 0|' twin/client.cpp -## part 1/2 of setting konqueror filemanagement default view mode -sed -i "s|konq_iconview|$VIEWMODE|" konqueror/profile_filemanagement.desktop ## allow for configuration files directory != /etc/trinity sed -i "s|/etc/trinity/|$SYS_CNF_DIR/|" tdm/kfrontend/gentdmconf.c || true ## make default tdm screen text clearer against dark background and align login button with clickable area @@ -78,6 +76,37 @@ do patch -p0 done +## enable konqueror filemanagement ViewMode to be set - TDE bug 1963 +echo $' +--- konqueror/listview/konq_detailedlistview.desktop ++++ konqueror/listview/konq_detailedlistview.desktop +@@ -86,0 +87 @@ ++X-TDE-BrowserView-Built-Into=konqueror +--- konqueror/iconview/konq_iconview.desktop ++++ konqueror/iconview/konq_iconview.desktop +@@ -87,0 +88 @@ ++X-TDE-BrowserView-Built-Into=konqueror +--- konqueror/iconview/konq_multicolumnview.desktop ++++ konqueror/iconview/konq_multicolumnview.desktop +@@ -87,0 +88 @@ ++X-TDE-BrowserView-Built-Into=konqueror +--- konqueror/listview/konq_infolistview.desktop ++++ konqueror/listview/konq_infolistview.desktop +@@ -84,0 +85 @@ ++X-TDE-BrowserView-Built-Into=konqueror +--- konqueror/listview/konq_textview.desktop ++++ konqueror/listview/konq_textview.desktop +@@ -87,0 +88 @@ ++X-TDE-BrowserView-Built-Into=konqueror +--- konqueror/listview/konq_treeview.desktop ++++ konqueror/listview/konq_treeview.desktop +@@ -87,0 +88 @@ ++X-TDE-BrowserView-Built-Into=konqueror +' | while read line +do +patch -p0 +done + chown_fn cd_builddir_fn @@ -199,14 +228,6 @@ echo " sed -i 's|id:[1-5]|id:4|' etc/inittab " >> $PKG/install/doinst.sh } -## part 2/2 of setting konqueror filemanagement default view mode -## add [MainView Settings] ViewMode to konquerorrc -[[ $SYS_CNF_DIR == /etc/tde ]] && TSUFF=tde -echo "mkdir -p .\$HOME/.${TSUFF:-trinity}/share/config/ -echo '[MainView Settings] -ViewMode=$VIEWMODE' >> .\$HOME/.${TSUFF:-trinity}/share/config/konquerorrc -" >> $PKG/install/doinst.sh - ## set TDEHOME and TDEROOTHOME variables - defaults ~/.trinity and /root/.trinity [[ $SYS_CNF_DIR == /etc/tde ]] && { echo "# upgradepkg runs installpkg twice, so firstly remove any previous TDE*HOME entries diff --git a/Core/tdegraphics/tdegraphics.SlackBuild b/Core/tdegraphics/tdegraphics.SlackBuild index 66e2496..0b7cd20 100755 --- a/Core/tdegraphics/tdegraphics.SlackBuild +++ b/Core/tdegraphics/tdegraphics.SlackBuild @@ -32,6 +32,160 @@ source ../../get-source.sh getsource_fn untar_fn + +## for cgit - bug 2957 +echo $' +--- config.h.cmake ++++ config.h.cmake +@@ -3,0 +4 @@ ++#cmakedefine HAVE_POPPLER_064 +--- tdefile-plugins/dependencies/poppler-tqt/ConfigureChecks.cmake ++++ tdefile-plugins/dependencies/poppler-tqt/ConfigureChecks.cmake +@@ -36,0 +37,11 @@ ++ ++if( NOT DEFINED HAVE_POPPLER_064 ) ++ message( STATUS "Performing Test HAVE_POPPLER_064" ) ++ if( NOT POPPLER_VERSION VERSION_LESS "0.64" ) ++ set( HAVE_POPPLER_064 1 CACHE INTERNAL "" FORCE ) ++ message( STATUS "Performing Test HAVE_POPPLER_064 - Success" ) ++ else( ) ++ set( HAVE_POPPLER_064 "" CACHE INTERNAL "" FORCE ) ++ message( STATUS "Performing Test HAVE_POPPLER_064 - Failed" ) ++ endif( ) ++endif( ) +--- tdefile-plugins/dependencies/poppler-tqt/poppler-document.cc ++++ tdefile-plugins/dependencies/poppler-tqt/poppler-document.cc +@@ -179,0 +180,3 @@ ++# if defined(HAVE_POPPLER_064) ++ s1 = (GooString *)obj.getString(); ++# else +@@ -180,0 +184 @@ ++# endif +@@ -251,0 +256,3 @@ ++# if defined(HAVE_POPPLER_064) ++ TQString s = UnicodeParsedString((GooString *)obj.getString()); ++# else +@@ -252,0 +260 @@ ++# endif +@@ -322,0 +331,3 @@ ++# if defined(HAVE_POPPLER_064) ++ GooList * items = (GooList *)outline->getItems(); ++# else +@@ -323,0 +335 @@ ++# endif +--- tdefile-plugins/dependencies/poppler-tqt/poppler-private.cc ++++ tdefile-plugins/dependencies/poppler-tqt/poppler-private.cc +@@ -98,0 +99,3 @@ ++# if defined(HAVE_POPPLER_064) ++ Unicode * uniChar = (Unicode *)outlineItem->getTitle(); ++# else +@@ -99,0 +103 @@ ++# endif +@@ -108,0 +113,3 @@ ++# if defined(HAVE_POPPLER_064) ++ ::LinkAction * a = (::LinkAction *)outlineItem->getAction(); ++# else +@@ -109,0 +117 @@ ++# endif +@@ -113,0 +122,3 @@ ++# if defined(HAVE_POPPLER_064) ++ LinkDest * destination = (LinkDest *)g->getDest(); ++# else +@@ -114,0 +126 @@ ++# endif +@@ -119,0 +132,3 @@ ++# if defined(HAVE_POPPLER_064) ++ GooString *s = (GooString *)g->getNamedDest(); ++# else +@@ -120,0 +136 @@ ++# endif +@@ -140,0 +157,3 @@ ++# if defined(HAVE_POPPLER_064) ++ GooList * children = (GooList *)outlineItem->getKids(); ++# else +@@ -141,0 +161 @@ ++# endif +' | while read line +do +patch -p0 +done +## more for bug 2957 - for 60->58 +echo $' +--- config.h.cmake ++++ config.h.cmake +@@ -5 +5 @@ +-#cmakedefine HAVE_POPPLER_060 ++#cmakedefine HAVE_POPPLER_058 +--- tdefile-plugins/dependencies/poppler-tqt/ConfigureChecks.cmake ++++ tdefile-plugins/dependencies/poppler-tqt/ConfigureChecks.cmake +@@ -27,3 +27,3 @@ +-if( NOT DEFINED HAVE_POPPLER_060 ) +- message( STATUS "Performing Test HAVE_POPPLER_060" ) +- if( NOT POPPLER_VERSION VERSION_LESS "0.60" ) ++if( NOT DEFINED HAVE_POPPLER_058 ) ++ message( STATUS "Performing Test HAVE_POPPLER_058" ) ++ if( NOT POPPLER_VERSION VERSION_LESS "0.58" ) +@@ -30,2 +30,2 @@ +- set( HAVE_POPPLER_060 1 CACHE INTERNAL "" FORCE ) +- message( STATUS "Performing Test HAVE_POPPLER_060 - Success" ) ++ set( HAVE_POPPLER_058 1 CACHE INTERNAL "" FORCE ) ++ message( STATUS "Performing Test HAVE_POPPLER_058 - Success" ) +@@ -33,2 +33,2 @@ +- set( HAVE_POPPLER_060 "" CACHE INTERNAL "" FORCE ) +- message( STATUS "Performing Test HAVE_POPPLER_060 - Failed" ) ++ set( HAVE_POPPLER_058 "" CACHE INTERNAL "" FORCE ) ++ message( STATUS "Performing Test HAVE_POPPLER_058 - Failed" ) +--- tdefile-plugins/dependencies/poppler-tqt/poppler-document.cc ++++ tdefile-plugins/dependencies/poppler-tqt/poppler-document.cc +@@ -156 +156 @@ +-# if defined(HAVE_POPPLER_060) ++# if defined(HAVE_POPPLER_058) +@@ -173 +173 @@ +-# if defined(HAVE_POPPLER_060) ++# if defined(HAVE_POPPLER_058) +@@ -209 +209 @@ +-# if !defined(HAVE_POPPLER_060) ++# if !defined(HAVE_POPPLER_058) +@@ -215 +215 @@ +-# if !defined(HAVE_POPPLER_060) ++# if !defined(HAVE_POPPLER_058) +@@ -230 +230 @@ +-# if defined(HAVE_POPPLER_060) ++# if defined(HAVE_POPPLER_058) +@@ -236 +236 @@ +-# if !defined(HAVE_POPPLER_060) ++# if !defined(HAVE_POPPLER_058) +@@ -249 +249 @@ +-# if defined(HAVE_POPPLER_060) ++# if defined(HAVE_POPPLER_058) +@@ -267 +267 @@ +-# if !defined(HAVE_POPPLER_060) ++# if !defined(HAVE_POPPLER_058) +@@ -275 +275 @@ +-# if !defined(HAVE_POPPLER_060) ++# if !defined(HAVE_POPPLER_058) +@@ -362 +362 @@ +-#if defined(HAVE_POPPLER_060) || defined(HAVE_POPPLER_030) ++#if defined(HAVE_POPPLER_058) || defined(HAVE_POPPLER_030) +--- tdefile-plugins/dependencies/poppler-tqt/poppler-page.cc ++++ tdefile-plugins/dependencies/poppler-tqt/poppler-page.cc +@@ -132 +132 @@ +-#if defined(HAVE_POPPLER_060) || defined(HAVE_POPPLER_030) || defined(HAVE_POPPLER_020) ++#if defined(HAVE_POPPLER_058) || defined(HAVE_POPPLER_030) || defined(HAVE_POPPLER_020) +@@ -167 +167 @@ +-#if defined(HAVE_POPPLER_060) || defined(HAVE_POPPLER_030) || defined(HAVE_POPPLER_020) ++#if defined(HAVE_POPPLER_058) || defined(HAVE_POPPLER_030) || defined(HAVE_POPPLER_020) +@@ -208 +208 @@ +-# if defined(HAVE_POPPLER_060) ++# if defined(HAVE_POPPLER_058) +@@ -215 +215 @@ +-# if !defined(HAVE_POPPLER_060) ++# if !defined(HAVE_POPPLER_058) +' | while read line +do +patch -p0 +done + listdocs_fn chown_fn @@ -91,7 +245,7 @@ $PRGNAM: $PRGNAM: $PRGNAM: $PRGNAM: -$PRGNAM: Home: https://www.trinitydesktop.org/index.php +$PRGNAM: " > $PKG/install/slack-desc cat <> $PKG/install/doinst.sh diff --git a/Core/tdelibs/tdelibs.SlackBuild b/Core/tdelibs/tdelibs.SlackBuild index 11797ef..69530c9 100644 --- a/Core/tdelibs/tdelibs.SlackBuild +++ b/Core/tdelibs/tdelibs.SlackBuild @@ -63,6 +63,37 @@ do patch -N -p0 done || true +## TDE bug 2821 +## patch to enable tdecmshell to find TDE .desktop file in the event of a duplication in file names +echo $'--- tdecmshell/main.cpp ++++ tdecmshell/main.cpp +@@ -106,2 +106,2 @@ +- if ( module.left( 4 ) != "kde-" && service->library().isEmpty() ) +- return locateModule( "kde-" + module ); ++ if ( module.left( 4 ) != "tde-" && service->library().isEmpty() ) ++ return locateModule( "tde-" + module ); +' | while read line +do +patch -N -p0 +done || true +## further patch to make error message more user friendly +echo $'--- tdecmshell/main.cpp ++++ tdecmshell/main.cpp +@@ -98,0 +99,6 @@ ++ ++ if (path.left(4) == "tde-") ++ path.replace(0,4,"tde/"); ++ else ++ path.prepend("tde/"); ++ +@@ -101 +107 @@ +- kdWarning(780) << "Could not find module \'" << module << "\'." << endl; ++ kdError(780) << "Could not find \'" << path << "\'." << endl; +' | while read line +do +patch -N -p0 +done || true + listdocs_fn chown_fn @@ -135,7 +166,7 @@ $PRGNAM: Home: https://www.trinitydesktop.org/index.php cat <> $PKG/install/doinst.sh # Update the desktop database: if [ -x usr/bin/update-desktop-database ]; then - chroot . /usr/bin/update-desktop-database $INSTALL_TDE/share//applications > /dev/null 2>&1 + chroot . /usr/bin/update-desktop-database $INSTALL_TDE/share/applications > /dev/null 2>&1 fi # Update hicolor theme cache: diff --git a/Core/tdenetwork/tdenetwork.SlackBuild b/Core/tdenetwork/tdenetwork.SlackBuild index f6714eb..e3e8dff 100755 --- a/Core/tdenetwork/tdenetwork.SlackBuild +++ b/Core/tdenetwork/tdenetwork.SlackBuild @@ -109,6 +109,15 @@ cd_builddir_fn -Wno-dev \ .. +## CPLUS_INCLUDE_PATH=$TQTDIR/include:${CPLUS_INCLUDE_PATH:-};export CPLUS_INCLUDE_PATH +## set in BUILD-TDE.sh is causing a build error with Slackware current: +## libvncserver/main.h:26:3: error: ‘rfbScreenInfoPtr’ does not name a type; did you mean ‘rfbServerInitMsg’? +## rfbScreenInfoPtr d; +## ^~~~~~~~~~~~~~~~ +## It doesn't have any use here, so unset it +## TODO: What in $TQTDIR/include is causing this error +export CPLUS_INCLUDE_PATH="" + make_fn installdocs_fn diff --git a/Core/tdevelop/tdevelop.SlackBuild b/Core/tdevelop/tdevelop.SlackBuild index 7f34c71..f436ae0 100755 --- a/Core/tdevelop/tdevelop.SlackBuild +++ b/Core/tdevelop/tdevelop.SlackBuild @@ -71,10 +71,11 @@ echo " # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler------------------------------------------------------| -$PRGNAM: $PRGNAM (TDE development programs) +$PRGNAM|-----handy-ruler------------------------------------------------------| +$PRGNAM: $PRGNAM $PRGNAM: -$PRGNAM: TDE development programs +$PRGNAM: An Integrated Development Environment providing a graphical front end +$PRGNAM: to a wide range of development tools. $PRGNAM: $PRGNAM: $PRGNAM: @@ -82,7 +83,6 @@ $PRGNAM: $PRGNAM: $PRGNAM: $PRGNAM: -$PRGNAM: Home: http://www.trinitydesktop.org/ " > $PKG/install/slack-desc cat <> $PKG/install/doinst.sh diff --git a/Deps/tqt3/tqt3.SlackBuild b/Deps/tqt3/tqt3.SlackBuild index 2559a4b..130b878 100755 --- a/Deps/tqt3/tqt3.SlackBuild +++ b/Deps/tqt3/tqt3.SlackBuild @@ -36,8 +36,16 @@ getsource_fn untar_fn +## don't waste time building tutorial and examples which won't be installed +## as the release version is being built +sed -i 's|sub-tutorial sub-examples||' Makefile + ## add -march and -mtune options to CFLAGS where they've been set in BUILD-TDE.sh sed -i "s|^QMAKE_CFLAGS[^_].*$|& $SET_march|" mkspecs/linux-g++/qmake.conf + +## $ORIGIN/../lib is to be added to RPATH, so don't need absolute libs directory built in: +sed -i "s|QMAKE_RPATH.*$|QMAKE_RPATH =|" mkspecs/linux-g++/qmake.conf + ## allow building with clang [[ ! $(grep COMPILER mkspecs/linux-g++/qmake.conf) ]] && { echo $'--- mkspecs/linux-g++/qmake.conf @@ -94,16 +102,31 @@ echo "yes" | CFLAGS="$SLKCFLAGS" CXXFLAGS="$SLKCFLAGS" \ -plugin-style-motifplus \ -plugin-style-platinum \ -plugin-style-sgi \ - -plugin-style-windows + -plugin-style-windows \ + -fast \ + -R-Wl,-rpath,\'\\\$\$ORIGIN/../lib\' +## using relative RPATH enables packaging before installation make -i $NUMJOBS || exit 1 -QTDIR=$PKG$TQTDIR-$VERSION -LD_LIBRARY_PATH=$QTDIR/lib make install INSTALL_ROOT=$PKG || exit 1 - -make -i $NUMJOBS symlinks sub-src sub-tools || exit 1 make install INSTALL_ROOT=$PKG || exit 1 -[[ $TQT_DOCS == "no" ]] && rm -rf $PKG$TQTDIR-$VERSION/doc +[[ $TQT_OPTS == *nodocs* ]] && rm -rf $PKG$TQTDIR-$VERSION/doc +[[ $TQT_OPTS == *minimal* ]] && { +(cd $PKG$TQTDIR-$VERSION/ +rm lib/libtqt[de]* +[[ $TQT_OPTS != *tdevel* ]] && rm lib/libtqas* +[[ $TQT_OPTS != *pim_ksq* ]] && rm lib/libtqui* +rm bin/???????* +rm bin/tqm2ts +rm -rf plugins/designer +rm -rf phrasebooks +rm -rf templates +(cd mkspecs +mv linux-g++ ../ +rm -rf * +mv ../linux-g++ . +ln -s linux-g++ default +))} # Link the shared libraries ( cd $PKG$INSTALL_TDE/lib$LIBDIRSUFFIX @@ -126,9 +149,7 @@ strip_fn # Put a ton of links to more "normal" places. mkdir -p $PKG$INSTALL_TDE/bin ( cd $PKG$INSTALL_TDE/bin - for file in tqassistant tqdesigner tqlinguist tqlrelease tqlupdate tqmoc tqm2ts tqmake tqtconfig tquic ; do - ln -sf $TQTDIR-$VERSION/bin/$file . - done + ln -sf ../lib$LIBDIRSUFFIX/$PRGNAM-$VERSION/bin/* . ) mkdir -p $PKG$INSTALL_TDE/lib$LIBDIRSUFFIX/pkgconfig @@ -136,12 +157,14 @@ mkdir -p $PKG$INSTALL_TDE/lib$LIBDIRSUFFIX/pkgconfig ln -sf $TQTDIR-$VERSION/lib/pkgconfig/tqt-mt.pc . ) +[[ ! $TQT_OPTS == *minimal* ]] && { # Add desktop files to launch some programs: mkdir -p $PKG$INSTALL_TDE/share/applications/tde cp -a $SRCDIR/apps/tqtconfig.desktop $PKG$INSTALL_TDE/share/applications/tde/tqtconfig.desktop cp -a $SRCDIR/apps/tqlinguist.desktop $PKG$INSTALL_TDE/share/applications/tde/tqlinguist.desktop cp -a $SRCDIR/apps/tqdesigner.desktop $PKG$INSTALL_TDE/share/applications/tde/tqdesigner.desktop cp -a $SRCDIR/apps/tqassistant.desktop $PKG$INSTALL_TDE/share/applications/tde/tqassistant.desktop +} # Symlink tqt3 includes to qt3, to provide it for non-tde software as well =] mkdir -p $PKG$INSTALL_TDE/include @@ -160,7 +183,7 @@ echo " # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler------------------------------------------------------| +$PRGNAM|-----handy-ruler------------------------------------------------------| $PRGNAM: $PRGNAM (C++ GUI application framework) $PRGNAM: $PRGNAM: Qt is a multiplatform C++ GUI application framework @@ -171,7 +194,7 @@ $PRGNAM: $PRGNAM: $PRGNAM: $PRGNAM: -$PRGNAM: Home: https://wiki.trinitydesktop.org/Trinity_Desktop_Environment +$PRGNAM: " > $PKG/install/slack-desc # Add this to the doinst.sh: diff --git a/Misc/inkscape/inkscape.SlackBuild b/Misc/inkscape/inkscape.SlackBuild index 3119fd7..d37d997 100755 --- a/Misc/inkscape/inkscape.SlackBuild +++ b/Misc/inkscape/inkscape.SlackBuild @@ -103,6 +103,64 @@ rm share/templates/*.*.* mv $TEMP_DIR/* share/templates/ } || true +## https://gitlab.com/inkscape/inkscape/commit/a600c6438fef2f4c06f9a4a7d933d99fb054a973 +## Fix compilation with poppler 0.64 +echo $'--- src/extension/internal/pdfinput/pdf-parser.cpp ++++ src/extension/internal/pdfinput/pdf-parser.cpp +@@ -2585,1 +2585,1 @@ +-void PdfParser::doShowText(GooString *s) { ++void PdfParser::doShowText(const GooString *s) { +@@ -2604,1 +2604,1 @@ +- builder->beginString(state, s); ++ builder->beginString(state); +@@ -2634,1 +2634,1 @@ +- p = s->getCString(); ++ p = g_strdup(s->getCString()); +@@ -2689,1 +2689,1 @@ +- p = s->getCString(); ++ p = g_strdup(s->getCString()); +@@ -2735,1 +2735,1 @@ +- char *name = args[0].getName(); ++ char *name = g_strdup(args[0].getName()); +--- src/extension/internal/pdfinput/pdf-parser.h ++++ src/extension/internal/pdfinput/pdf-parser.h +@@ -290,1 +290,1 @@ +- void doShowText(GooString *s); ++ void doShowText(const GooString *s); +--- src/extension/internal/pdfinput/svg-builder.cpp ++++ src/extension/internal/pdfinput/svg-builder.cpp +@@ -1023,1 +1023,1 @@ +- _font_specification = font->getName()->getCString(); ++ _font_specification = g_strdup(font->getName()->getCString()); +@@ -1364,1 +1364,1 @@ +-void SvgBuilder::beginString(GfxState *state, GooString * /*s*/) { ++void SvgBuilder::beginString(GfxState *state) { +--- src/extension/internal/pdfinput/svg-builder.h ++++ src/extension/internal/pdfinput/svg-builder.h +@@ -32,1 +32,0 @@ +-class GooString; +@@ -139,1 +138,1 @@ +- void beginString(GfxState *state, GooString *s); ++ void beginString(GfxState *state); +' | while read line +do +patch -p0 +done + +## https://gitlab.com/inkscape/inkscape/commit/10e8ae0ff522d3a9caeed9a7f137cdfd795ba0a3 +## Fix compilation with poppler 0.65.0 +## replace unused includes with one that is actually used +echo $'--- src/extension/internal/pdfinput/pdf-parser.cpp ++++ src/extension/internal/pdfinput/pdf-parser.cpp +@@ -40,2 +40,1 @@ +-#include "goo/GooTimer.h" +-#include "goo/GooHash.h" ++#include "goo/GooString.h" +' | while read line +do +patch -p0 +done + chown_fn listdocs_fn diff --git a/README b/README index c8b1038..149cdf7 100755 --- a/README +++ b/README @@ -1,6 +1,6 @@ -Build TDE [Trinity Desktop Environment] for Slackware 14.2 and current[1] on i586+, x86_64, or Raspberry Pi3 [see README-Raspberry-Pi3.md]. +Build TDE [Trinity Desktop Environment] for Slackware 14.2 or current on i586+, x86_64, or Raspberry Pi3 [see README-Raspberry-Pi3.md]. -Run ./BUILD-TDE.sh - a dialog based script with a series of screens for user input. Includes an option to build the TDE development version from https://mirror.git.trinitydesktop.org/cgit/ +Run ./BUILD-TDE.sh - a dialog based script with a series of screens for user input. Build the release versions R14.0.4/5 from tar archives or the development version from trinitydesktop cgit. ============================================================= @@ -21,7 +21,7 @@ src - to hold all the source tarballs, either pre-downloaded or downloaded durin Other scripts: get-source.sh - a chunk of common code for the SBs - used for getting the source archive, setting FLAGS, creating build directories. -There is an override in the SB for non-trinity source archive URLs. Non-trinity builds have been included where a TDE package requires a dependency that is not in Slackware Current. Or, where it might be an alternative to a TDE package. +There is an override in the Misc SlackBuilds for non-trinity source archive URLs. Non-trinity builds have been included where a TDE package requires a dependency that is not in Slackware. Or, where it might be an alternative to a TDE package. Required packages for a basic working TDE are: Deps/tqt3 @@ -41,11 +41,11 @@ TDM may need some manual setting up - see Core/tdebase/README, which can also be See https://wiki.trinitydesktop.org/How_to_Build_TDE_Core_Modules for more information ========================================================= -Building from git sources +Building the development version from git sources The individual TDE apps can be cloned from Trinity git, so the build is set up to do that - except for individual language packs of tde-i18n. The whole tde-i18n download is ~1x10^6 bytes, so to reduce that, wget is used to download individual tde-i18n-$lang packs as they are not git repositories. -Once any git repository has been cloned, further downloads are updates only[2]. +Once any git repository has been cloned, further downloads are updates only[1]. This gives the best options - only fetching what is needed, and incremental updates. @@ -53,10 +53,8 @@ The git repositories are cloned to 'src/cgit' KNOWN-ISSUES -[1] Not tested on current since the Mass Rebuild of 2018-04-19. +[1] The i18n downloads with wget can't be updated because cgit produces 'current time' timestamps. The consequence is that if tde-i18n-$lang is a part of the build after its initial download, it will be downloaded again. As the latest update was a year ago, once built, there will probably be no need to do so again and so tde-i18n for a particular language will probably only be run once. On that basis I don't see this being a significant issue. -[2] The i18n downloads with wget can't be updated because cgit produces 'current' timestamps. The consequence is that if tde-i18n-$lang is a part of the build after its initial download, it will be downloaded again. As the latest update was a year ago, once built, there will probably be no need to do so again and so tde-i18n for a particular language will probably only be run once. On that basis I don't see this being a significant issue. +[2] If Slackware's KDE is installed as well as TDE, there might be an issue with TDE launching the KDE4 Konsole and attempting to use it's ark. To fix, adjust the PATH so that the TDE directories come before /usr/share/bin. -[3] If Slackware's KDE is installed as well as TDE, there might be an issue with TDE launching the KDE4 Konsole and attempting to use it's ark. To fix, adjust the PATH so that the TDE directories come before /usr/share/bin. - -[4] The Misc directory contains SlackBuilds for software that might already be installed from slackbuilds.org or elsewhere. Please check because any misc builds selected here could overwrite them. +[3] The Misc directory contains SlackBuilds for software that might already be installed from other sources. Please check because any misc builds selected here could overwrite them. diff --git a/get-source.sh b/get-source.sh index 80b745c..0ad320d 100755 --- a/get-source.sh +++ b/get-source.sh @@ -65,8 +65,8 @@ rm -rf $OUTPUT/{checkout,configure,make,install,error,makepkg,patch}-$PRGNAM.log # Where do we look for sources? SRCDIR=$(cd $(dirname $0); pwd) -## if R14.0.4 or misc, do this: -[[ $TDEVERSION == R14.0.4 || $TDEMIR_SUBDIR == misc ]] && \ +## if R14.0.? or misc, do this: +[[ $TDEVERSION == R14.0.? || $TDEMIR_SUBDIR == misc ]] && \ { [[ ! -s $SRCDIR/../../src/$PRGNAM-$VERSION.${ARCHIVE_TYPE:-"tar.bz2"} ]] && rm $SRCDIR/../../src/$PRGNAM-$VERSION.${ARCHIVE_TYPE:-"tar.bz2"} 2>/dev/null || true ln -sf $SRCDIR/../../src/$PRGNAM-$VERSION.${ARCHIVE_TYPE:-"tar.bz2"} $SRCDIR @@ -102,7 +102,7 @@ fi { ## if not creating/updating git, nothing to do in this function for git builds -## otherwise, now not R14.0.4 or misc, and we are creating/updating git, so [1] start with admin/cmake: +## otherwise, now not R14.0.? or misc, and we are creating/updating git, so [1] start with admin/cmake: [[ $(cat $TMPVARS/CGIT) == yes ]] && { cd $BUILD_TDE_ROOT/src/cgit @@ -204,7 +204,7 @@ umask 0022 untar_fn () { cd $TMP_BUILD/tmp-$PRGNAM -[[ $TDEVERSION == R14.0.4 || $TDEMIR_SUBDIR == misc ]] && { +[[ $TDEVERSION == R14.0.? || $TDEMIR_SUBDIR == misc ]] && { ## unpack R14 or misc echo -e " unpacking $(basename $SOURCE) ... \n" tar -xf $SOURCE