Request for updates to packages itcl 4.1.1, itk 4.1.0, iwidgets 4.1.1

Claudius Schnörr schnoerr@mailzone.com
Fri Oct 29 15:12:26 GMT 2021


Hello,

if cygwin was updated to these package versions: itcl 4.1.1, itk 4.1.0, 
iwidgets 4.1.1
the package git://sourceware.org/git/insight.git, a very good 
GUI-frontend to gdb, would be available on cygwin again.

Attached are the cygport files with necessary modifications the 
maintainer of insight provided. These are no patches but might be 
helpful for cygwin packagers by comparing them to the original ones.

When upgrades to these packages are available I can check whether 
insight can be built on cygwin.

I hope this helps. Thank you for your help,

Claudius

-------------- next part --------------
inherit tcl

NAME="tcl-itcl"
VERSION=4.1.1
RELEASE=1
CATEGORY="Tcl"
SUMMARY="Object-Oriented extensions for Tcl"
DESCRIPTION="[incr Tcl] is an object-oriented extension of the Tcl language.
It was created to support more structured programming in Tcl. [incr Tcl]
introduces the notion of objects. Among other things, [incr Tcl] can be
used to create new widgets that look and work like the usual Tk widgets,
but are written entirely at the Tcl language level (C code is optional)."
HOMEPAGE="http://incrtcl.sourceforge.net/"
SRC_URI="https://downloads.sourceforge.net/incrtcl/itcl${VERSION}.tar.gz"
SRC_DIR="itcl${VERSION}"

PKG_NAMES="${NAME} ${NAME}-devel"
tcl_itcl_REQUIRES="tcl"
tcl_itcl_CONTENTS="
	usr/bin/libitcl${VERSION}.dll
	usr/lib/itcl${VERSION}/itcl*.tcl
	usr/lib/itcl${VERSION}/pkgIndex.tcl
	usr/share/doc/${NAME}/
	usr/share/man/mann/
"
tcl_itcl_devel_REQUIRES="tcl-devel"
tcl_itcl_devel_CONTENTS="
	usr/include/itcl*.h
	usr/lib/itcl${VERSION}/itclConfig.sh
	usr/lib/itcl${VERSION}/libitcl${VERSION}.dll.a
	usr/lib/itcl${VERSION}/libitclstub${VERSION}.a
"

#DISTCLEANFILES="aclocal.m4"

src_compile() {
	cd ${S}
	cygautoreconf
	cd ${B}
	cygconf
	cygmake SHLIB_LD="\$(CC) -shared -Wl,--out-implib,\$@.a"
}

src_install() {
	cd ${B}
	cyginstall

	insinto /usr/lib/itcl${VERSION}
	doins libitcl${VERSION}.dll.a

	mv ${D}/usr/lib/itcl${VERSION}/libitcl${VERSION}.dll ${D}/usr/bin
	sed -i -e "s|\"\(libitcl${VERSION}.dll\)\"|.. .. bin \1|" ${D}/usr/lib/itcl${VERSION}/pkgIndex.tcl
}
-------------- next part --------------
inherit tcl

NAME="tcl-itk"
VERSION=4.1.0
RELEASE=1
CATEGORY="Tcl"
SUMMARY="Object-Oriented extensions for Tk"
DESCRIPTION="[incr Tcl] is an object-oriented extension of the Tcl language.
It was created to support more structured programming in Tcl. [incr Tcl]
introduces the notion of objects. Among other things, [incr Tcl] can be
used to create new widgets that look and work like the usual Tk widgets,
but are written entirely at the Tcl language level (C code is optional)."
HOMEPAGE="http://incrtcl.sourceforge.net/"
SRC_URI="mirror://sourceforge/incrtcl/itk${VERSION}.tar.gz"
SRC_DIR="itk${VERSION}"

PKG_NAMES="${NAME} ${NAME}-devel"
tcl_itk_REQUIRES="tcl tcl-itcl tcl-tk"
tcl_itk_CONTENTS="
	usr/bin/libitk${VERSION}.dll
	usr/lib/itk${VERSION}/*.itk
	usr/lib/itk${VERSION}/*.tcl
	usr/lib/itk${VERSION}/tclIndex
	usr/share/man/mann/
"
tcl_itk_devel_REQUIRES="tcl-devel tcl-tk-devel tcl-itcl-devel"
tcl_itk_devel_CONTENTS="
	usr/include/itk*.h
	usr/lib/itk${VERSION}/libitk${VERSION}.dll.a
"

#DISTCLEANFILES="aclocal.m4"

src_compile() {
	cd ${S}
	cygautoreconf
	cd ${B}
	cygconf --with-itcl=/usr/lib/itcl4.1.1
	cygmake SHLIB_LD="\$(CC) -shared -Wl,--out-implib,\$@.a"
}

src_install() {
	cd ${B}
	cyginstall

	insinto /usr/lib/itk${VERSION}
	doins libitk${VERSION}.dll.a

	mv ${D}/usr/lib/itk${VERSION}/libitk${VERSION}.dll ${D}/usr/bin
	sed -i -e "s|\"\(libitk${VERSION}.dll\)\"|.. .. bin \1|" ${D}/usr/lib/itk${VERSION}/pkgIndex.tcl
}
-------------- next part --------------
ORIG_PN="iwidgets"
inherit tcl

NAME="tcl-iwidgets"
VERSION=4.1.1
RELEASE=1
CATEGORY="Tcl"
SUMMARY="Tcl/Tk widget set"
DESCRIPTION="[incr Widgets] is an object-oriented mega-widget set which
extends Tcl/Tk and is based on [incr Tcl] and [incr Tk].  This set of
mega-widgets delivers many new, general purpose widgets like option menus,
comboboxes, selection boxes, and various dialogs whose couterparts are found
in Motif and Windows."
HOMEPAGE="http://incrtcl.sourceforge.net/"
SRC_URI="http://downloads.sourceforge.net/sourceforge/incrtcl/%5BIncr%20Widgets%5D/iwidgets-${VERSION}.tar.gz"
SRC_DIR="iwidgets-${VERSION}"
PATCH_URI="
	http://src.fedoraproject.org/rpms/iwidgets/raw/f33/f/iwidgets-calls.patch
	http://src.fedoraproject.org/rpms/iwidgets/raw/f33/f/iwidgets4.0.1-wish85.diff
"

ARCH=noarch

#DISTCLEANFILES="aclocal.m4"

src_compile() {
	find . -name CVS | xargs -r rm -rf
	sed -e 's|\@itcl_VERSION\@|4.0|g'\
		 -e "s|\@PACKAGE_VERSION\@|${VERSION}|g" \
		< ${S}/iwidgets.tcl.in > ${B}/iwidgets.tcl
	sed -e 's|\@itcl_VERSION\@|4.0|g' \
		-e "s|\@PACKAGE_VERSION\@|${VERSION}|g" \
		< ${S}/pkgIndex.tcl.in > ${B}/pkgIndex.tcl
}

src_install() {
	cd ${B}
	insinto /usr/lib/iwidgets-${VERSION}
	doins iwidgets.tcl pkgIndex.tcl

	cd ${S}
	insinto /usr/lib/iwidgets-${VERSION}/scripts
	doins generic/*

#	cp -r demos ${D}/usr/lib/iwidgets-${VERSION}/

	cd ${S}/doc
	dodir /usr/share/man/mann
	for i in *.n
	do
		sed -e '/man\.macros/r man.macros' -e '/man\.macros/d' \
			$i > ${D}/usr/share/man/mann/`basename iwidgets_$i`
	done
}


More information about the Cygwin mailing list