|
|
|
#!/bin/sh
|
|
|
|
# Generated by Alien's SlackBuild Toolkit: http://slackware.com/~alien/AST
|
|
|
|
# Copyright 2009, 2010, 2011, 2012, 2013, 2014, 2015 Eric Hameleers, Eindhoven, Netherlands
|
|
|
|
# Copyright 2015-2017 Thorn Inurcide
|
|
|
|
# Copyright 2015-2017 tde-slackbuilds project on GitHub
|
|
|
|
# All rights reserved.
|
|
|
|
#
|
|
|
|
# Permission to use, copy, modify, and distribute this software for
|
|
|
|
# any purpose with or without fee is hereby granted, provided that
|
|
|
|
# the above copyright notice and this permission notice appear in all
|
|
|
|
# copies.
|
|
|
|
#
|
|
|
|
# THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
|
|
|
|
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
|
|
|
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
|
|
|
# IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
|
|
|
|
# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
|
|
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
|
|
|
# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
|
|
|
|
# USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
|
|
|
# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
|
|
|
# OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
|
|
|
|
# OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
|
|
|
# SUCH DAMAGE.
|
|
|
|
|
|
|
|
PRGNAM=dolphin
|
|
|
|
VERSION=${VERSION:-$TDEVERSION}
|
|
|
|
BUILD=${BUILD:-1}
|
|
|
|
TAG=${TAG:-_tde}
|
|
|
|
|
|
|
|
|
|
|
|
SlackDesc()
|
|
|
|
{
|
|
|
|
echo "
|
|
|
|
# HOW TO EDIT THIS FILE:
|
|
|
|
# The 'handy ruler' below makes it easier to edit a package description. Line
|
|
|
|
# up the first '|' above the ':' following the base package name, and the '|' on
|
|
|
|
# the right side marks the last column you can put a character in. You must make
|
|
|
|
# exactly 11 lines for the formatting to be correct. It's also customary to
|
|
|
|
# leave one space after the ':'.
|
|
|
|
|
|
|
|
$PRGNAM|-----handy-ruler------------------------------------------------------|
|
|
|
|
$PRGNAM: $PRGNAM (Dolphin file manager for TDE)
|
|
|
|
$PRGNAM:
|
|
|
|
$PRGNAM: Dolphin file manager for TDE
|
|
|
|
$PRGNAM:
|
|
|
|
$PRGNAM:
|
|
|
|
$PRGNAM: With language support for:
|
|
|
|
$PRGNAM:
|
|
|
|
$PRGNAM: en $langs
|
|
|
|
$PRGNAM:
|
|
|
|
$PRGNAM:
|
|
|
|
$PRGNAM: Home: https://www.trinitydesktop.org/index.php
|
|
|
|
" > $PKG/install/slack-desc
|
|
|
|
}
|
|
|
|
|
|
|
|
source ../../get-source.sh
|
|
|
|
|
|
|
|
cd $TMP/tmp-$PRGNAM
|
|
|
|
echo "
|
|
|
|
Extracting the source from the ${PRGNAM} archive ..."
|
|
|
|
tar -xf ${SOURCE}
|
|
|
|
|
|
|
|
cd applications
|
|
|
|
cd ${PRGNAM}
|
|
|
|
|
|
|
|
# list only files > zero bytes
|
|
|
|
DOCS=$(for file in AUTHORS* ChangeLog* COPYING* FAQ* INSTALL* KNOWNBUGS* NEWS* README* TODO* *.lsm;do [[ -s $file ]] && ls -1 $file;done ) || true
|
|
|
|
|
|
|
|
|
|
|
|
## Patches to edit/create CMakeLists.txt for documentation and locales support
|
|
|
|
sed -i 's|src )|src )\nadd_subdirectory( po )\nadd_subdirectory( doc )|' CMakeLists.txt
|
|
|
|
|
|
|
|
## for doc - based on amarok CMakeLists.txt:
|
|
|
|
echo "tde_auto_add_subdirectories()
|
|
|
|
" > doc/CMakeLists.txt
|
|
|
|
echo "tde_create_handbook( LANG en DESTINATION d3lphin )
|
|
|
|
" > doc/en/CMakeLists.txt
|
|
|
|
## for po - based on tde-style-qtcurve CMakeLists.txt:
|
|
|
|
echo 'exec_program(tde-config
|
|
|
|
ARGS --install locale --expandvars
|
|
|
|
OUTPUT_VARIABLE TDE_LOCALE_PREFIX)
|
|
|
|
|
|
|
|
find_program(GETTEXT_MSGFMT_EXECUTABLE msgfmt)
|
|
|
|
|
|
|
|
if(NOT GETTEXT_MSGFMT_EXECUTABLE)
|
|
|
|
message("------\n"
|
|
|
|
"NOTE: msgfmt not found. Translations will *not* be installed\n"
|
|
|
|
"------\n")
|
|
|
|
else(NOT GETTEXT_MSGFMT_EXECUTABLE)
|
|
|
|
set(catalogname d3lphin)
|
|
|
|
add_custom_target(translations ALL)
|
|
|
|
file(GLOB PO_FILES *.po)
|
|
|
|
foreach(_poFile ${PO_FILES})
|
|
|
|
get_filename_component(_poFileName ${_poFile} NAME)
|
|
|
|
string(REGEX REPLACE "^${catalogname}_?" "" _langCode ${_poFileName} )
|
|
|
|
string(REGEX REPLACE "\\.po$" "" _langCode ${_langCode} )
|
|
|
|
if(_langCode)
|
|
|
|
get_filename_component(_lang ${_poFile} NAME_WE)
|
|
|
|
set(_gmoFile ${CMAKE_CURRENT_BINARY_DIR}/${_lang}.gmo)
|
|
|
|
add_custom_command(TARGET translations
|
|
|
|
COMMAND ${GETTEXT_MSGFMT_EXECUTABLE} --check -o ${_gmoFile} ${_poFile}
|
|
|
|
DEPENDS ${_poFile})
|
|
|
|
install(FILES ${_gmoFile} DESTINATION ${TDE_LOCALE_PREFIX}/${_langCode}/LC_MESSAGES/ RENAME ${catalogname}.mo)
|
|
|
|
endif( _langCode )
|
|
|
|
endforeach(_poFile ${PO_FILES})
|
|
|
|
endif(NOT GETTEXT_MSGFMT_EXECUTABLE)
|
|
|
|
' > po/CMakeLists.txt
|
|
|
|
|
|
|
|
# set support for additional language(s) as per I18N variable
|
|
|
|
# but only for languages available with this package
|
|
|
|
langs="";for Lang in $I18N;do [[ -e po/$Lang".po" ]] && langs="$langs $Lang"".po";done
|
|
|
|
echo $langs
|
|
|
|
#
|
|
|
|
## output list of available locales ...
|
|
|
|
ls -1 po | while read line
|
|
|
|
do
|
|
|
|
## ... and compare to selected locales & remove those not required
|
|
|
|
[[ $(echo $line|grep po) ]] && [[ $langs != *$line* ]] && rm -rf po/$line
|
|
|
|
done
|
|
|
|
langs=$(echo $langs | sed 's|.po||g')
|
|
|
|
|
|
|
|
|
|
|
|
chown -R root:root .
|
|
|
|
chmod -R u+w,go+r-w,a+rX-st .
|
|
|
|
|
|
|
|
mkdir -p build-${PRGNAM}
|
|
|
|
cd build-${PRGNAM}
|
|
|
|
|
|
|
|
cmake \
|
|
|
|
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS $TQT_INCLUDE_PATH" \
|
|
|
|
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
|
|
|
|
-DCMAKE_INSTALL_PREFIX=${INSTALL_TDE} \
|
|
|
|
-DLIB_SUFFIX=${LIBDIRSUFFIX} \
|
|
|
|
-DSYSCONF_INSTALL_DIR="/etc/trinity" \
|
|
|
|
-DMAN_INSTALL_DIR=${INSTALL_TDE}/man \
|
|
|
|
..
|
|
|
|
|
|
|
|
|
|
|
|
make $NUMJOBS || exit 1
|
|
|
|
make DESTDIR=$PKG install || exit 1
|
|
|
|
cd -
|
|
|
|
|
|
|
|
mkdir -p $PKG/install
|
|
|
|
cat <<EOINS >> $PKG/install/doinst.sh
|
|
|
|
# Update the desktop database:
|
|
|
|
if [ -x usr/bin/update-desktop-database ]; then
|
|
|
|
chroot . /usr/bin/update-desktop-database ${INSTALL_TDE}/applications > /dev/null 2>&1
|
|
|
|
fi
|
|
|
|
|
|
|
|
# Update hicolor theme cache:
|
|
|
|
if [ -d usr/share/icons/hicolor ]; then
|
|
|
|
if [ -x /usr/bin/gtk-update-icon-cache ]; then
|
|
|
|
chroot . /usr/bin/gtk-update-icon-cache -f -t ${INSTALL_TDE}/icons/hicolor 1> /dev/null 2> /dev/null
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
|
|
|
|
EOINS
|
|
|
|
|
|
|
|
mkdir -p $PKG${INSTALL_TDE}/doc/$PRGNAM-$VERSION
|
|
|
|
cp -a $DOCS $PKG${INSTALL_TDE}/doc/$PRGNAM-$VERSION || true
|
|
|
|
cat $SRCDIR/$(basename $0) > $PKG${INSTALL_TDE}/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
|
|
|
|
chown -R root:root $PKG${INSTALL_TDE}/doc/$PRGNAM-$VERSION
|
|
|
|
find $PKG${INSTALL_TDE}/doc -type f -exec chmod 644 {} \;
|
|
|
|
|
|
|
|
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
|
|
|
|
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
|
|
|
|
|
|
|
|
mkdir -p $PKG/install
|
|
|
|
SlackDesc
|
|
|
|
|
|
|
|
# Replace the desktop file, with an alternate one. This one changes the
|
|
|
|
# icon name from d3lphin to dolphin. To allow easy system-wide icon
|
|
|
|
# themeing changes. No other alterations made. I've decided this shouldn't
|
|
|
|
# be default. I will uncomment this when I build, and others can do the
|
|
|
|
# the same if they wish =]
|
|
|
|
#mv -v $PKG/${INSTALL_TDE}/share/applications/tde/d3lphin.desktop \
|
|
|
|
#$PKG/${INSTALL_TDE}/share/applications/tde/d3lphine.desktop.orig
|
|
|
|
#cp -v $SRCDIR/d3lphin.desktop $PKG/${INSTALL_TDE}/share/applications/tde/d3lphin.desktop
|
|
|
|
|
|
|
|
cd $PKG
|
|
|
|
makepkg --linkadd y --chown n $OUTPUT/${PRGNAM}-${VERSION}-${ARCH}-${BUILD}${TAG}.${PKGTYPE:-txz}
|
|
|
|
cd $OUTPUT
|
|
|
|
md5sum ${PRGNAM}-${VERSION}-${ARCH}-${BUILD}${TAG}.${PKGTYPE:-txz} > ${PRGNAM}-${VERSION}-${ARCH}-${BUILD}${TAG}.${PKGTYPE:-txz}.md5
|
|
|
|
cd -
|
|
|
|
cat $PKG/install/slack-desc | grep "^${PRGNAM}" | grep -v handy > $OUTPUT/${PRGNAM}-${VERSION}-${ARCH}-${BUILD}${TAG}.txt
|
|
|
|
|
|
|
|
# Restore the original umask:
|
|
|
|
umask ${_UMASK_}
|
|
|
|
|