diff options
Diffstat (limited to 'lang')
-rw-r--r-- | lang/itcl/Makefile | 63 | ||||
-rw-r--r-- | lang/itcl/distinfo | 2 | ||||
-rw-r--r-- | lang/itcl/files/Makefile.lib | 45 | ||||
-rw-r--r-- | lang/itcl/files/makefile | 8 | ||||
-rw-r--r-- | lang/itcl/files/patch-aa | 128 | ||||
-rw-r--r-- | lang/itcl/files/patch-ab | 43 | ||||
-rw-r--r-- | lang/itcl/files/patch-ah | 11 | ||||
-rw-r--r-- | lang/itcl/pkg-descr | 2 | ||||
-rw-r--r-- | lang/itcl/pkg-plist | 26 |
9 files changed, 77 insertions, 251 deletions
diff --git a/lang/itcl/Makefile b/lang/itcl/Makefile index 3789f8d1db85..1c67b768a5e3 100644 --- a/lang/itcl/Makefile +++ b/lang/itcl/Makefile @@ -6,51 +6,60 @@ # PORTNAME= itcl -PORTVERSION= 3.0.1 +PORTVERSION= ${MAJOR}.${MINOR} CATEGORIES= lang -MASTER_SITES= ftp://ftp.tcltk.com/pub/itcl/ -DISTNAME= itcl3.0.1 +MASTER_SITES= ${MASTER_SITE_SOURCEFORGE} +MASTER_SITE_SUBDIR=incrtcl +DISTNAME= itcl${PORTVERSION} -MAINTAINER= dmlb@ragnet.demon.co.uk +MAINTAINER= ports@freebsd.org -LIB_DEPENDS= tcl82.1:${PORTSDIR}/lang/tcl82 +LIB_DEPENDS= tcl83:${PORTSDIR}/lang/tcl83 -WRKSRC= ${WRKDIR}/itcl3.0.1/itcl/unix +WRKSRC= ${WRKDIR}/${DISTNAME}/itcl INSTALLS_SHLIB= yes -GNU_CONFIGURE= yes -CONFIGURE_ARGS= --enable-shared --with-tcl=${PREFIX}/lib/tcl8.2 -CONFIGURE_ENV= PORTSDIR=${PORTSDIR} ITCL_LIB_FILE=${ITCL_LIB_FILE} -PKGINSTALL= ${PORTSDIR}/lang/tcl82/pkg-install.tclsh -PKGDEINSTALL= ${PORTSDIR}/lang/tcl82/pkg-deinstall.tclsh +PKGINSTALL= ${PORTSDIR}/lang/tcl83/pkg-install.tclsh +PKGDEINSTALL= ${PORTSDIR}/lang/tcl83/pkg-deinstall.tclsh +MAKE_ENV+= ${PLIST_SUB} \ + SHLIB_MAJOR=${SHLIB_MAJOR} SHLIB_MINOR=${SHLIB_MINOR} + +EXTRACT_AFTER_ARGS=| ${TAR} -xf - ./itcl${MAJOR}.${MINOR}/itcl + +.if defined(MAKE_JOBS) +MAKE_ARGS+= -j$(MAKE_JOBS) +.endif SHLIB_MAJOR= 1 SHLIB_MINOR= 1 -MAKEFILE= makefile -ITCL_LIB= libitcl30.so +MAJOR= 3 +MINOR= 2 +PLIST_SUB+= MAJOR=${MAJOR} MINOR=${MINOR} +ITCL_LIB= libitcl${MAJOR}${MINOR}.so +MAKEFILE= ${FILESDIR}/Makefile.lib -MANCOMPRESSED= yes -MAN1= itclsh.1 +MANCOMPRESSED= no MANN= body.n class.n code.n configbody.n delete.n ensemble.n find.n MANN+= itcl.n itcl_class.n itcl_info.n itclvars.n local.n scope.n -.include <bsd.port.pre.mk> - ITCL_LIB_FILE= ${ITCL_LIB}.${SHLIB_MAJOR} -post-configure: - @${CP} ${FILESDIR}/Makefile.lib ${WRKSRC} - @${CP} ${FILESDIR}/makefile ${WRKSRC} +post-extract: + ${RM} ${WRKSRC}/pkgIndex.tcl + +post-patch: + ${PERL} -pi \ + -e 's,package require Itcl,load [glob \ + ${WRKSRC}/${ITCL_LIB}.${SHLIB_MAJOR}*],;' \ + ${WRKSRC}/tests/*.test -pre-build: - @cd ${WRKSRC} && ${MAKE} -f Makefile.lib PREFIX=${PREFIX} \ - SHLIB_MAJOR=${SHLIB_MAJOR} SHLIB_MINOR=${SHLIB_MINOR} \ - TCL_PREFIX=${PREFIX} +post-build test: + cd ${WRKSRC} && ${SETENV} ITCL_LIBRARY=${WRKSRC}/library \ + ${PREFIX}/bin/tclsh8.3 tests/all.tcl post-install: - ${LN} -sf ${PREFIX}/bin/itclsh3.0 ${PREFIX}/bin/itclsh - ${LN} -sf ${ITCL_LIB_FILE} ${PREFIX}/lib/${ITCL_LIB} + ${INSTALL_DATA} ${WRKSRC}/doc/*.n ${PREFIX}/man/mann/ .if exists(${PKGINSTALL}) ${SETENV} PKG_PREFIX=${PREFIX} ${SH} ${PKGINSTALL} .endif -.include <bsd.port.post.mk> +.include <bsd.port.mk> diff --git a/lang/itcl/distinfo b/lang/itcl/distinfo index 882cd787f4df..03382bd74335 100644 --- a/lang/itcl/distinfo +++ b/lang/itcl/distinfo @@ -1 +1 @@ -MD5 (itcl3.0.1.tar.gz) = 0cf1802a7ea69670503dc69c7951a015 +MD5 (itcl3.2.tar.gz) = b41ed909969eaa5f0a06ab698393760f diff --git a/lang/itcl/files/Makefile.lib b/lang/itcl/files/Makefile.lib index 0cdabb9d2199..c9fe57f90e05 100644 --- a/lang/itcl/files/Makefile.lib +++ b/lang/itcl/files/Makefile.lib @@ -1,8 +1,8 @@ NOPROFILE= yes -LIB= itcl30 -ITCL_LIBRARY= ${PREFIX}/lib/itcl3.0 +LIB= itcl${MAJOR}${MINOR} +ITCL_LIBRARY= ${PREFIX}/lib/itcl${MAJOR}.${MINOR} CFLAGS+= -I. -I./../generic \ - -I${TCL_PREFIX}/include/tcl8.2/generic \ + -I${PREFIX}/include/tcl8.3/generic \ -DHAVE_GETCWD=1 -DNO_VALUES_H=1 -DHAVE_UNISTD_H=1 -DUSE_TERMIOS=1\ -DHAVE_SYS_TIME_H=1 -DTIME_WITH_SYS_TIME=1 -DHAVE_TM_ZONE=1\ -DHAVE_TM_GMTOFF=1 -DHAVE_ST_BLKSIZE=1 -DSTDC_HEADERS=1\ @@ -10,23 +10,32 @@ CFLAGS+= -I. -I./../generic \ -DTCL_SHLIB_EXT=\".so\" \ -DHAVE_SYS_FILIO_H=1 \ -DRETSIGTYPE=void \ - -DITCL_LIBRARY=\"${ITCL_LIBRARY}\" \ + -DITCL_LIBRARY=\"${ITCL_LIBRARY}\" +LDADD+= -L${PREFIX}/lib -ltcl83 +.PATH: ${.CURDIR}/unix ${.CURDIR}/generic ${.CURDIR}/man -GENERIC_DIR= ../generic -UNIX_DIR= . +SRCS= itcl_bicmds.c itcl_class.c itcl_cmds.c itcl_ensemble.c \ + itcl_linkage.c itcl_methods.c itcl_migrate.c itcl_objects.c \ + itcl_obsolete.c itcl_parse.c itcl_util.c \ + itclStubInit.c itclStubLib.c -SRCS= \ - $(GENERIC_DIR)/itcl_bicmds.c \ - $(GENERIC_DIR)/itcl_class.c \ - $(GENERIC_DIR)/itcl_cmds.c \ - $(GENERIC_DIR)/itcl_ensemble.c \ - $(GENERIC_DIR)/itcl_linkage.c \ - $(GENERIC_DIR)/itcl_methods.c \ - $(GENERIC_DIR)/itcl_migrate.c \ - $(GENERIC_DIR)/itcl_objects.c \ - $(GENERIC_DIR)/itcl_obsolete.c \ - $(GENERIC_DIR)/itcl_parse.c \ - $(GENERIC_DIR)/itcl_util.c +pkgIndex.tcl: ${.CURDIR}/pkgIndex.tcl.in + sed -e "s#@RELPATH@#..#" -e "s#@VERSION@#${MAJOR}.${MINOR}#" \ + -e "s#@itcl_LIB_FILE@#${SHLIB_NAME}#" \ + < ${.CURDIR}/pkgIndex.tcl.in > pkgIndex.tcl + +SCRIPTDIR= lib/itcl${MAJOR}.${MINOR} +SCRIPTPATH= ${PREFIX}/${SCRIPTDIR} +LIBDIR= ${PREFIX}/lib +INCDIR= ${PREFIX}/include/itcl${MAJOR}.${MINOR} + +${SCRIPTPATH} ${INCDIR}: + mkdir -p ${.TARGET} + +beforeinstall: pkgIndex.tcl ${SCRIPTPATH} ${INCDIR} + ${BSD_INSTALL_DATA} pkgIndex.tcl ${.CURDIR}/library/itcl.tcl \ + ${SCRIPTPATH} + ${BSD_INSTALL_DATA} ${.CURDIR}/generic/*.h ${INCDIR} .include <bsd.lib.mk> diff --git a/lang/itcl/files/makefile b/lang/itcl/files/makefile deleted file mode 100644 index d18bc06250fb..000000000000 --- a/lang/itcl/files/makefile +++ /dev/null @@ -1,8 +0,0 @@ -all: - for f in ../generic/*.o; do ln -sf $$f; done - make -f Makefile itclsh -test: - make -f Makefile test -install: - make -f Makefile install - diff --git a/lang/itcl/files/patch-aa b/lang/itcl/files/patch-aa deleted file mode 100644 index 3520e7d3ed01..000000000000 --- a/lang/itcl/files/patch-aa +++ /dev/null @@ -1,128 +0,0 @@ ---- Makefile.in.orig Wed Aug 12 06:02:00 1998 -+++ Makefile.in Mon Apr 5 18:10:47 1999 -@@ -55,7 +55,8 @@ - BIN_INSTALL_DIR = $(INSTALL_ROOT)$(exec_prefix)/bin - - # Directory in which to install the include file itcl.h: --INCLUDE_INSTALL_DIR = $(INSTALL_ROOT)$(prefix)/include -+INCLUDE_INSTALL_DIR = $(INSTALL_ROOT)$(prefix)/include/itcl$(VERSION) -+GENERIC_INCLUDE_INSTALL_DIR = $(INSTALL_ROOT)$(prefix)/include/itcl$(VERSION)/generic - - # Top-level directory in which to install manual entries: - MAN_INSTALL_DIR = $(INSTALL_ROOT)$(prefix)/man -@@ -75,6 +76,9 @@ - # get the correct path: - TCL_SRC_DIR = @TCL_SRC_DIR@ - -+# Tcl include dir -+TCL_INC_DIR = @TCL_INC_DIR@ -+ - # The directory containing the Tcl library archive file appropriate - # for this version of Tk: - TCL_LIB_DIR = @TCL_LIB_DIR@ -@@ -115,7 +119,7 @@ - # "install" around; better to use the install-sh script that comes - # with the distribution, which is slower but guaranteed to work. - --INSTALL = $(TOP_DIR)/../config/install-sh -c -+INSTALL = install -c - INSTALL_PROGRAM = ${INSTALL} - INSTALL_DATA = ${INSTALL} -m 644 - MKINSTALLDIRS = $(TOP_DIR)/../config/mkinstalldirs -@@ -158,7 +162,7 @@ - - CC = @CC@ - CC_SWITCHES = $(CFLAGS) $(SHLIB_CFLAGS) -I$(UNIX_DIR) -I$(GENERIC_DIR) \ ---I$(TCL_SRC_DIR)/generic $(AC_FLAGS) $(PROTO_FLAGS) $(MEM_DEBUG_FLAGS) \ -+-I$(TCL_INC_DIR)/generic $(AC_FLAGS) $(PROTO_FLAGS) $(MEM_DEBUG_FLAGS) \ - -DITCL_LIBRARY=\"$(ITCL_LIBRARY)\" - - SRCS = $(GENERIC_DIR)/itcl_bicmds.c \ -@@ -178,13 +182,19 @@ - itcl_linkage.o itcl_methods.o itcl_migrate.o itcl_objects.o \ - itcl_obsolete.o itcl_parse.o itcl_util.o - --all: $(ITCL_LIB_FILE) itclsh -+all: $(ITCL_LIB_FILE) libitcl30.a itclsh - - @ITCL_LIB_FILE@: $(OBJS) - rm -f $(ITCL_LIB_FILE) - @MAKE_LIB@ -+ ln -sf $(ITCL_LIB_FILE) libitcl30.so - $(RANLIB) $(ITCL_LIB_FILE) - -+libitcl30.a: $(OBJS) -+ rm -f libitcl30.a -+ ar cr libitcl30.a $(OBJS) -+ ranlib libitcl30.a -+ - itclsh: tclAppInit.o $(ITCL_LIB_FILE) - $(CC) @LD_FLAGS@ tclAppInit.o @ITCL_BUILD_LIB_SPEC@ \ - $(LIBS) $(LD_SEARCH_FLAGS) -o itclsh -@@ -199,21 +209,28 @@ - - install: install-binaries install-libraries install-man - --install-binaries: $(ITCL_LIB_FILE) itclsh -+install-binaries: $(ITCL_LIB_FILE) libitcl30.a itclsh - @$(MKINSTALLDIRS) $(LIB_INSTALL_DIR) $(BIN_INSTALL_DIR) - @echo "Installing $(ITCL_LIB_FILE)" - @$(INSTALL_DATA) $(ITCL_LIB_FILE) $(LIB_INSTALL_DIR)/$(ITCL_LIB_FILE) - @(cd $(LIB_INSTALL_DIR); $(RANLIB) $(ITCL_LIB_FILE)) - chmod 555 $(LIB_INSTALL_DIR)/$(ITCL_LIB_FILE) -+ @echo "Installing libitcl30.a" -+ @$(INSTALL_DATA) libitcl30.a $(LIB_INSTALL_DIR)/libitcl30.a -+ @(cd $(LIB_INSTALL_DIR); $(RANLIB) libitcl30.a) -+ chmod 555 $(LIB_INSTALL_DIR)/libitcl30.a - @echo "Installing itclsh" - $(INSTALL_PROGRAM) itclsh $(BIN_INSTALL_DIR)/itclsh$(VERSION) - @echo "Installing itclConfig.sh" -- @$(INSTALL_DATA) itclConfig.sh $(LIB_INSTALL_DIR)/itclConfig.sh -+ @mkdir -p $(SCRIPT_INSTALL_DIR) -+ @$(INSTALL_DATA) itclConfig.sh $(SCRIPT_INSTALL_DIR)/itclConfig.sh - - install-libraries: -- @$(MKINSTALLDIRS) $(INCLUDE_INSTALL_DIR) $(SCRIPT_INSTALL_DIR) -- @echo "Installing itcl.h" -- @$(INSTALL_DATA) $(GENERIC_DIR)/itcl.h $(INCLUDE_INSTALL_DIR) -+ @$(MKINSTALLDIRS) $(INCLUDE_INSTALL_DIR) $(GENERIC_INCLUDE_INSTALL_DIR) $(SCRIPT_INSTALL_DIR) -+ @echo "Installing itcl.h and itclInt.h" -+ @$(INSTALL_DATA) $(GENERIC_DIR)/itcl.h $(GENERIC_INCLUDE_INSTALL_DIR) -+ @$(INSTALL_DATA) $(GENERIC_DIR)/itclInt.h $(GENERIC_INCLUDE_INSTALL_DIR) -+ @ln -sf $(GENERIC_INCLUDE_INSTALL_DIR)/itcl.h $(INCLUDE_INSTALL_DIR)/itcl.h - @for i in $(TOP_DIR)/library/*.* $(UNIX_DIR)/tclAppInit.c; \ - do \ - echo "Installing $$i"; \ -@@ -227,19 +244,26 @@ - @cd $(TOP_DIR)/doc; for i in *.1; \ - do \ - echo "Installing doc/$$i"; \ -- rm -f $(MAN1_INSTALL_DIR)/$$i; \ -+ rm -f $(MAN1_INSTALL_DIR)/$$i $(MAN1_INSTALL_DIR)/$$i.gz; \ - sed -e '/man\.macros/r man.macros' -e '/man\.macros/d' \ -- $$i > $(MAN1_INSTALL_DIR)/$$i; \ -- chmod 444 $(MAN1_INSTALL_DIR)/$$i; \ -+ $$i | gzip -c > $(MAN1_INSTALL_DIR)/$$i.gz; \ -+ chmod 444 $(MAN1_INSTALL_DIR)/$$i.gz; \ - done; - @cd $(TOP_DIR)/doc; for i in *.n; \ - do \ - echo "Installing doc/$$i"; \ -- rm -f $(MANN_INSTALL_DIR)/$$i; \ -+ rm -f $(MANN_INSTALL_DIR)/$$i $(MANN_INSTALL_DIR)/$$i.gz; \ - sed -e '/man\.macros/r man.macros' -e '/man\.macros/d' \ -- $$i > $(MANN_INSTALL_DIR)/$$i; \ -- chmod 444 $(MANN_INSTALL_DIR)/$$i; \ -+ $$i | gzip -c > $(MANN_INSTALL_DIR)/$$i.gz; \ -+ chmod 444 $(MANN_INSTALL_DIR)/$$i.gz; \ - done; -+ @echo "**********" -+ @echo "IMPORTANT:" -+ @echo "**********" -+ @echo "itclConfig.sh in $(SCRIPT_INSTALL_DIR)/itclConfig.sh" -+ @echo "itcl.h in $(INCLUDE_INSTALL_DIR)/itcl.h" -+ @echo "There are NOT default place, but good place to avoid" -+ @echo "conflicting with another version of [incr] Tcl/Tks." - - Makefile: $(UNIX_DIR)/Makefile.in - $(SHELL) config.status diff --git a/lang/itcl/files/patch-ab b/lang/itcl/files/patch-ab deleted file mode 100644 index 91a0ba8d5dea..000000000000 --- a/lang/itcl/files/patch-ab +++ /dev/null @@ -1,43 +0,0 @@ ---- configure~ Mon Oct 19 21:14:58 1998 -+++ configure Thu Jan 14 19:57:33 1999 -@@ -873,15 +873,8 @@ - DL_LIBS=$TCL_DL_LIBS - LD_FLAGS=$TCL_LD_FLAGS - LD_SEARCH_FLAGS=$TCL_LD_SEARCH_FLAGS -+TCL_INC_DIR=${TCL_PREFIX}/include/tcl${TCL_VERSION} - --#-------------------------------------------------------------------- --# Make sure that we can find the Tcl sources, so we can include --# the "tclInt.h" file. --#-------------------------------------------------------------------- -- --if test ! -d "$TCL_SRC_DIR"; then -- { echo "configure: error: Can't find Tcl source directory "$TCL_SRC_DIR". Itcl can't be built without this directory." 1>&2; exit 1; } --fi - - #-------------------------------------------------------------------- - # If this is gcc, add some extra compile flags. -@@ -1011,13 +1004,13 @@ - { echo "configure: error: Tcl was not built with --enable-shared" 1>&2; exit 1; } - fi - SHLIB_CFLAGS="${SHLIB_CFLAGS}" -- eval "ITCL_LIB_FILE=libitcl${VERSION}${SHLIB_SUFFIX}" -+ eval "ITCL_LIB_FILE=${ITCL_LIB_FILE}" - ITCL_PKG_FILE="[file join [file dirname \$dir] ${ITCL_LIB_FILE}]" - MAKE_LIB="\$(SHLIB_LD) -o ${ITCL_LIB_FILE} \$(OBJS) ${SHLIB_LD_LIBS} \$(LD_SEARCH_FLAGS)" - RANLIB=":" - else - SHLIB_CFLAGS="" -- eval "ITCL_LIB_FILE=libitcl${VERSION}.a" -+ eval "ITCL_LIB_FILE=${ITCL_LIB_FILE}" - ITCL_PKG_FILE="" - MAKE_LIB="ar cr ${ITCL_LIB_FILE} \${OBJS}" - fi -@@ -1212,6 +1205,7 @@ - s%@LD_SEARCH_FLAGS@%$LD_SEARCH_FLAGS%g - s%@TCL_VERSION@%$TCL_VERSION%g - s%@TCL_SRC_DIR@%$TCL_SRC_DIR%g -+s%@TCL_INC_DIR@%$TCL_INC_DIR%g - s%@TCL_LIB_DIR@%$TCL_LIB_DIR%g - s%@TCL_LIB_SPEC@%$TCL_LIB_SPEC%g - s%@TCL_LIB_FLAG@%$TCL_LIB_FLAG%g diff --git a/lang/itcl/files/patch-ah b/lang/itcl/files/patch-ah deleted file mode 100644 index aaea8c0f53cb..000000000000 --- a/lang/itcl/files/patch-ah +++ /dev/null @@ -1,11 +0,0 @@ ---- ../generic/itcl_ensemble.c.orig Sat Aug 8 16:38:24 1998 -+++ ../generic/itcl_ensemble.c Wed Nov 3 15:05:39 1999 -@@ -1626,7 +1626,7 @@ - * another "ensemble" command. Use the current ensemble as - * the parent, and find or create an ensemble part within it. - */ -- ensName = TclGetStringFromObj(objv[1], (int*)NULL); -+ ensName = Tcl_GetStringFromObj(objv[1], (int*)NULL); - - if (ensData) { - if (FindEnsemblePart(interp, ensData, ensName, &ensPart) != TCL_OK) { diff --git a/lang/itcl/pkg-descr b/lang/itcl/pkg-descr index a2b1a9258e5a..fa0c92177f36 100644 --- a/lang/itcl/pkg-descr +++ b/lang/itcl/pkg-descr @@ -5,3 +5,5 @@ object oriented extension to Tcl. The [incr Tcl] language is also known as A companion to [incr Tcl] called [incr Tk] builds a ``mega-widget'' framework into Tk. The [incr Tk] extension is also known as ``itk'' and is available in x11-toolkits. + +WWW: http://sourceforge.net/projects/incrtcl/ diff --git a/lang/itcl/pkg-plist b/lang/itcl/pkg-plist index a5bfa485435e..a72fd5a272bf 100644 --- a/lang/itcl/pkg-plist +++ b/lang/itcl/pkg-plist @@ -1,15 +1,11 @@ -bin/itclsh3.0 -bin/itclsh -include/itcl3.0/generic/itcl.h -include/itcl3.0/generic/itclInt.h -include/itcl3.0/itcl.h -lib/libitcl30.so.1 -lib/libitcl30.so -lib/libitcl30.a -lib/itcl3.0/itclConfig.sh -lib/itcl3.0/itcl.tcl -lib/itcl3.0/tclAppInit.c -lib/itcl3.0/pkgIndex.tcl -@dirrm include/itcl3.0/generic -@dirrm include/itcl3.0 -@dirrm lib/itcl3.0 +include/itcl%%MAJOR%%.%%MINOR%%/itcl.h +include/itcl%%MAJOR%%.%%MINOR%%/itclInt.h +include/itcl%%MAJOR%%.%%MINOR%%/itclDecls.h +include/itcl%%MAJOR%%.%%MINOR%%/itclIntDecls.h +lib/libitcl%%MAJOR%%%%MINOR%%.so.1 +lib/libitcl%%MAJOR%%%%MINOR%%.so +lib/libitcl%%MAJOR%%%%MINOR%%.a +lib/itcl%%MAJOR%%.%%MINOR%%/itcl.tcl +lib/itcl%%MAJOR%%.%%MINOR%%/pkgIndex.tcl +@dirrm include/itcl%%MAJOR%%.%%MINOR%% +@dirrm lib/itcl%%MAJOR%%.%%MINOR%% |