diff options
author | Juan M. Lasca <juanmlasca@gmail.com> | 2023-03-29 01:04:18 +0100 |
---|---|---|
committer | Willy Sudiarto Raharjo <willysr@slackbuilds.org> | 2023-04-01 09:14:10 +0700 |
commit | 8c60c2497dfdcebf945be6567ba79ae713a2733b (patch) | |
tree | ece2b596b39b65c29f76d0506949e98b0571073e /libraries/tclsoap | |
parent | 523a2a1743fbae29dfe60c471c180fd448fc4a60 (diff) |
libraries/tclsoap: Added (SOAP client/server for Tcl)
Signed-off-by: bedlam <dave@slackbuilds.org>
Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
Diffstat (limited to 'libraries/tclsoap')
-rw-r--r-- | libraries/tclsoap/README | 5 | ||||
-rw-r--r-- | libraries/tclsoap/patches/Makefile.in.patch | 12 | ||||
-rw-r--r-- | libraries/tclsoap/patches/SOAP.tcl.patch | 22 | ||||
-rw-r--r-- | libraries/tclsoap/patches/pkgIndex.tcl.patch | 14 | ||||
-rw-r--r-- | libraries/tclsoap/patches/xpath.tcl.patch | 17 | ||||
-rw-r--r-- | libraries/tclsoap/slack-desc | 19 | ||||
-rw-r--r-- | libraries/tclsoap/tclsoap.SlackBuild | 102 | ||||
-rw-r--r-- | libraries/tclsoap/tclsoap.info | 10 |
8 files changed, 201 insertions, 0 deletions
diff --git a/libraries/tclsoap/README b/libraries/tclsoap/README new file mode 100644 index 0000000000000..7334466911386 --- /dev/null +++ b/libraries/tclsoap/README @@ -0,0 +1,5 @@ +The TclSOAP package provides a mechanism to bind Tcl command +procedures to remote procedure calls using the Simple Object +Access Protocol (SOAP) and XML-RPC over HTTP. Both client and +server code is provided. + diff --git a/libraries/tclsoap/patches/Makefile.in.patch b/libraries/tclsoap/patches/Makefile.in.patch new file mode 100644 index 0000000000000..88f64785f2be2 --- /dev/null +++ b/libraries/tclsoap/patches/Makefile.in.patch @@ -0,0 +1,12 @@ +# adapted from FreeBSD ports (author's email: dereckson@gmail.com) +--- Makefile.in ++++ Makefile.in +@@ -56,7 +56,7 @@ docdir = @docdir@ + + DESTDIR = + +-pkglibdir = $(libdir)/@PACKAGE@@VERSION@ ++pkglibdir = $(libdir)/@PACKAGE@ + + top_builddir = . + diff --git a/libraries/tclsoap/patches/SOAP.tcl.patch b/libraries/tclsoap/patches/SOAP.tcl.patch new file mode 100644 index 0000000000000..1b7804bda101f --- /dev/null +++ b/libraries/tclsoap/patches/SOAP.tcl.patch @@ -0,0 +1,22 @@ +# adapted from FreeBSD ports (author's email: dereckson@gmail.com) +--- SOAP.tcl ++++ SOAP.tcl +@@ -22,12 +22,11 @@ package require rpcvar; # TclSOAP + + namespace eval ::SOAP {variable domVersion} + if {[catch {package require SOAP::dom 1.0} ::SOAP::domVersion]} { +- if { [catch {package require dom 2.0} ::SOAP::domVersion]} { +- if { [catch {package require dom 1.6} ::SOAP::domVersion]} { +- error "require dom package greater than 1.6" +- } +- package require SOAP::xpath; # TclSOAP ++ if {[catch {package require dom} ::SOAP::domVersion] || [package vcompare $::SOAP::domVersion 1.6] < 0} { ++ error "require dom package greater than 1.6" + } ++ package require SOAP::xpath; # TclSOAP ++ + proc ::SOAP::createDocument {name} { + set doc [dom::DOMImplementation create] + return [dom::document createElement $doc $name] + + diff --git a/libraries/tclsoap/patches/pkgIndex.tcl.patch b/libraries/tclsoap/patches/pkgIndex.tcl.patch new file mode 100644 index 0000000000000..71e2d674edd8f --- /dev/null +++ b/libraries/tclsoap/patches/pkgIndex.tcl.patch @@ -0,0 +1,14 @@ +# adapted from FreeBSD ports (author's email: dereckson@gmail.com) +--- pkgIndex.tcl ++++ pkgIndex.tcl +@@ -11,8 +11,7 @@ + package ifneeded SOAP 1.6.7 [list source [file join $dir SOAP.tcl]] + package ifneeded SOAP::CGI 1.0 [list source [file join $dir SOAP-CGI.tcl]] + package ifneeded SOAP::Domain 1.4 [list source [file join $dir SOAP-domain.tcl]] +-package ifneeded SOAP::Service 0.4 [list source [file join $dir SOAP-service.tcl]] +-package ifneeded SOAP::Utils 1.0 [list source [file join $dir utils.tcl]] ++package ifneeded SOAP::Utils 1.0.1 [list source [file join $dir utils.tcl]] + package ifneeded SOAP::ftp 1.0 [list source [file join $dir ftp.tcl]] + package ifneeded SOAP::http 1.0 [list source [file join $dir http.tcl]] + package ifneeded SOAP::https 1.0 [list source [file join $dir https.tcl]] + diff --git a/libraries/tclsoap/patches/xpath.tcl.patch b/libraries/tclsoap/patches/xpath.tcl.patch new file mode 100644 index 0000000000000..5aacac3c3bb53 --- /dev/null +++ b/libraries/tclsoap/patches/xpath.tcl.patch @@ -0,0 +1,17 @@ +# adapted from FreeBSD ports (author's email: dereckson@gmail.com) +--- xpath.tcl ++++ xpath.tcl +@@ -14,10 +14,9 @@ + # for more details. + # ------------------------------------------------------------------------- + +-if { [catch {package require dom 2.0}] } { +- if { [catch {package require dom 1.6}] } { ++namespace eval ::SOAP {variable domVersion} ++if { [catch {package require dom} ::SOAP::domVersion] || [package vcompare $::SOAP::domVersion 1.6] < 0} { + error "require dom package greater than 1.6" +- } + } + + namespace eval SOAP::xpath { + diff --git a/libraries/tclsoap/slack-desc b/libraries/tclsoap/slack-desc new file mode 100644 index 0000000000000..4caabf5c74e88 --- /dev/null +++ b/libraries/tclsoap/slack-desc @@ -0,0 +1,19 @@ +# 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 ':' except on otherwise blank lines. + + |-----handy-ruler------------------------------------------------------| +tclsoap: tclsoap (SOAP client/server for Tcl) +tclsoap: +tclsoap: The TclSOAP package provides a mechanism to bind Tcl command +tclsoap: procedures to remote procedure calls using the Simple Object +tclsoap: Access Protocol (SOAP) and XML-RPC over HTTP. Both client and +tclsoap: server code is provided. +tclsoap: +tclsoap: +tclsoap: +tclsoap: See more at: https://tclsoap.sourceforge.net +tclsoap: diff --git a/libraries/tclsoap/tclsoap.SlackBuild b/libraries/tclsoap/tclsoap.SlackBuild new file mode 100644 index 0000000000000..6d1a5a70c064b --- /dev/null +++ b/libraries/tclsoap/tclsoap.SlackBuild @@ -0,0 +1,102 @@ +#!/bin/bash + +# Slackware build script for tclsoap + +# Copyright 2023 Juan M. Lasca <juanmlasca@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. + +cd $(dirname $0) ; CWD=$(pwd) + +PRGNAM=tclsoap +VERSION=${VERSION:-1.6.7} +TARNAM=TclSOAP +BUILD=${BUILD:-1} +TAG=${TAG:-_SBo} +PKGTYPE=${PKGTYPE:-tgz} +ARCH=noarch + +if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then + echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE" + exit 0 +fi + +TMP=${TMP:-/tmp/SBo} +PKG=$TMP/package-$PRGNAM +OUTPUT=${OUTPUT:-/tmp} + +if [ "$ARCH" = "i586" ]; then + SLKCFLAGS="-O2 -march=i586 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIRSUFFIX="64" +else + SLKCFLAGS="-O2" + LIBDIRSUFFIX="" +fi + +set -e + +rm -rf $PKG +mkdir -p $TMP $PKG $OUTPUT +cd $TMP +rm -rf $PRGNAM-$VERSION +tar xvf $CWD/$TARNAM-$VERSION.tar.gz +mv $PRGNAM$VERSION $PRGNAM-$VERSION +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 640 -o -perm 600 -o -perm 444 \ + -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \; + +# patches adapted from FreeBSD ports (author's email: dereckson@gmail.com) +cat $CWD/patches/Makefile.in.patch | patch -p0 +cat $CWD/patches/SOAP.tcl.patch | patch -p0 +cat $CWD/patches/pkgIndex.tcl.patch | patch -p0 +cat $CWD/patches/xpath.tcl.patch | patch -p0 + +CFLAGS="$SLKCFLAGS" \ +CXXFLAGS="$SLKCFLAGS" \ +./configure \ + --prefix=/usr + +make +make install DESTDIR=$PKG + +mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION +cp -a \ + TclSOAP.ANN LICENSE DESCRIPTION.txt CHANGES doc \ + $PKG/usr/doc/$PRGNAM-$VERSION; +# correct permissions in doc directory +chmod 0755 $PKG/usr/doc/$PRGNAM-$VERSION/doc; +chmod 0644 $PKG/usr/doc/$PRGNAM-$VERSION/doc/*; + +cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild + +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc + +cd $PKG +/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE diff --git a/libraries/tclsoap/tclsoap.info b/libraries/tclsoap/tclsoap.info new file mode 100644 index 0000000000000..598dd59d162b0 --- /dev/null +++ b/libraries/tclsoap/tclsoap.info @@ -0,0 +1,10 @@ +PRGNAM="tclsoap" +VERSION="1.6.7" +HOMEPAGE="https://tclsoap.sourceforge.net" +DOWNLOAD="https://sourceforge.net/projects/tclsoap/files/tclsoap/TclSOAP-1.6.7/TclSOAP-1.6.7.tar.gz" +MD5SUM="6e07a5dad13233851fc9eecd9f7319e1" +DOWNLOAD_x86_64="" +MD5SUM_x86_64="" +REQUIRES="tcllib tclxml" +MAINTAINER="Juan M. Lasca" +EMAIL="juanmlasca@gmail.com" |