libraries/itcl: New Maintainer.

Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
This commit is contained in:
R. S. Ananda Murthy 2014-06-29 09:35:35 +07:00 committed by Willy Sudiarto Raharjo
parent fa20e7f2a8
commit 7b842dcb62
4 changed files with 51 additions and 32 deletions

View file

@ -9,15 +9,8 @@ inherit functionality from one another. This object-oriented paradigm adds
another level of organization on top of the basic variable/procedure
elements, and the resulting code is easier to understand and maintain.
It should follow without mentioning that this package depends upon the Tcl
packages from your Slackware 13.1 distribution disk being installed.
The Tcl package of Slackware 14.1 contains itcl-4.0.0.
As well, [incr Tcl], as part of its build process, looks into the Tcl
sources for some header files. This means that in order to compile [incr
Tcl] that the Slackware Tcl source package needs to be present. You can
either download the Slackware Tcl source package from a slackware mirror
using the provided link or copy the tcl8.5.8-src.tar.xz file from your
Slackware install disk. The tcl8.5.8-src.tar.xz source file should be in
the same directory as the itcl.Slackbuild script, and the Slackbuild script
will unpack the tcl8.5.8-src.tar.xz source file automatically as part of the
[incr Tcl] build process. Once [incr Tcl] is built and installed, the Tcl
This package contains the older itcl-3.4.0 which may be required by some
programs like mcu8051ide. This package may be installed in a Slackware 14.1
system without conflicting with the Slackware package.

View file

@ -1,8 +1,26 @@
#!/bin/sh
# Slackware build script for itcl
# Written by Richard Ellis <rellis@dp100.com>
# Hereby dedicated to the public domain.
# Originally written by Richard Ellis <rellis@dp100.com>
# Now maintained by: R. S. Ananda Murthy <rsamurti@gmail.com>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
# permitted provided that the following conditions are met:
#
# 1. Redistributions of this script must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=itcl
VERSION=${VERSION:-3.4.1}
@ -54,10 +72,10 @@ tar -C /tmp -xvf $CWD/tcl$TCL-src.tar.xz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
-exec chmod 755 {} \; -o \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
-o -perm 511 \) -exec chmod 755 {} \; -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
TCL_SRC_DIR="$TMP/tc$TCL" \
CFLAGS="$SLKCFLAGS" \
@ -73,22 +91,30 @@ CXXFLAGS="$SLKCFLAGS" \
make
make install DESTDIR=$PKG
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
# Removed to avoid conflict with tcl-8.6.0
rm -rf "$PKG"/usr/include
rm -rf "$PKG"/usr/share/man
# There's nothing in $PKG/usr/bin
rmdir $PKG/usr/bin
# Add manpages that are part of the source tarball, but that upstream
# doesn't include for some reason.
mkdir -p $PKG/usr/man/man3
for manpage in $TMP/$PRGNAM-$VERSION/doc/*.3 ; do
gzip -9 -c $manpage > $PKG/usr/man/man3/$( basename $manpage ).gz; done
# Since these man pages are clashing with itcl4.0.0 which is included with
# Slackware 14.1 these lines are commented out.
# mkdir -p $PKG/usr/man/man3
# for manpage in $TMP/$PRGNAM-$VERSION/doc/*.3 ; do
# gzip -9 -c $manpage > $PKG/usr/man/man3/$( basename $manpage ).gz; done
# I am removing these man pages which conflict with the man pages
# provided by the Tcl package of Slackware 14.1.
rm -rf $PKG/usr/man
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
license.terms \
$PKG/usr/doc/$PRGNAM-$VERSION
cp -a license.terms $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install

View file

@ -8,5 +8,5 @@ MD5SUM="e7c98e0f69df1a675073ddd3344f0b7f \
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="Richard Ellis"
EMAIL="rellis@dp100.com"
MAINTAINER="R. S. Ananda Murthy"
EMAIL="rsamurti@gmail.com"

View file

@ -6,14 +6,14 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
itcl: itcl (object-oriented programming contructs to Tcl)
itcl: itcl (Object-oriented Programming Contructs to Tcl)
itcl:
itcl: [incr Tcl] provides the extra language support needed to build large
itcl: Tcl/Tk applications. It introduces the notion of objects, which act as
itcl: building blocks for an application. Each object is a bag of data with
itcl: a set of procedures or "methods" that are used to manipulate it.
itcl: Objects are organized into "classes" with identical characteristics,
itcl: and classes can inherit functionality from one another. This
itcl: object-oriented paradigm adds another level of organization on top of
itcl: the basic variable/procedure elements, and the resulting code is
itcl: easier to understand and maintain.
itcl: and classes can inherit functionality from one another.
itcl:
itcl: This package contains version 3.4 of itcl which is required by some
itcl: programs.