Subject: lang/tcl and x11/tk on linux
To: None <tech-pkg@netbsd.org>
From: Jan Schaumann <jschauma@netbsd.org>
List: tech-pkg
Date: 08/21/2002 17:05:10
--3lcZGd9BuhuYXNfi
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
Content-Transfer-Encoding: 8bit

Hi,

Sorry to keep posting these things here, but I'd like to ask other users
of pkgsrc on Linux to double-check my changes to see if they actually do
The Right Thing.

(Jim, you get these b/cc you're MAINTAINER of these packages.)

Thæ attached patches allowed me to install lang/tcl and x11/tk on Linux
-- note that while on NetBSD the libraries libtcl83.so etc. are created,
on Linux they are named libtcl8.3.so.  I'm sure there's a way to make
pkgsrc create the same files regardless of the platform, but for the
time being, these patches fix the problem.

-Jan

-- 
Discourage inbreeding - ban country music

--3lcZGd9BuhuYXNfi
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename="tcl.linux.diff"

? PLIST.linux
Index: Makefile
===================================================================
RCS file: /cvsroot/pkgsrc/lang/tcl/Makefile,v
retrieving revision 1.15
diff -b -u -r1.15 Makefile
--- Makefile	2002/03/20 18:04:04	1.15
+++ Makefile	2002/08/21 20:49:05
@@ -31,6 +31,11 @@
 
 .include "../../mk/bsd.prefs.mk"
 
+.if ${OPSYS} == Linux
+BUILD_DEPENDS=		pax>=19990423:../../pkgtools/pax
+PLIST_SRC=		${PKGDIR}/PLIST.linux
+.endif
+
 # NetBSD-1.5.x-m68k platforms apparently have a compiler optimization bug
 # tickled by the Tcl code that manifests in code generation problems.
 #
@@ -55,6 +60,9 @@
 	${CHMOD} +x mkLinks;
 
 pre-install:
+.if ${OPSYS} == Linux
+	${SED} -e 's/83/8\.3/' ${PKGDIR}/PLIST > ${PKGDIR}/PLIST.linux
+.endif
 	cd ${WRKSRC}; for file in					\
 		tclUnixInit.o libtcl83.so tclsh;			\
 	do								\
Index: buildlink.mk
===================================================================
RCS file: /cvsroot/pkgsrc/lang/tcl/buildlink.mk,v
retrieving revision 1.9
diff -b -u -r1.9 buildlink.mk
--- buildlink.mk	2001/12/23 17:02:31	1.9
+++ buildlink.mk	2002/08/21 20:49:05
@@ -26,8 +26,13 @@
 BUILDLINK_FILES.tcl+=	include/tclDecls.h
 BUILDLINK_FILES.tcl+=	include/tclPlatDecls.h
 BUILDLINK_FILES.tcl+=	include/tcl/*/*.h
+.if ${OPSYS} == Linux
+BUILDLINK_FILES.tcl+=	lib/libtcl8.3.*
+BUILDLINK_FILES.tcl+=	lib/libtclstub8.3.*
+.else
 BUILDLINK_FILES.tcl+=	lib/libtcl83.*
 BUILDLINK_FILES.tcl+=	lib/libtclstub83.*
+.endif
 
 BUILDLINK_TARGETS.tcl=	tcl-buildlink
 BUILDLINK_TARGETS.tcl+=	tclConfig-buildlink
Index: distinfo
===================================================================
RCS file: /cvsroot/pkgsrc/lang/tcl/distinfo,v
retrieving revision 1.11
diff -b -u -r1.11 distinfo
--- distinfo	2001/12/23 17:02:31	1.11
+++ distinfo	2002/08/21 20:49:05
@@ -2,7 +2,7 @@
 
 SHA1 (tcl8.3.4.tar.gz) = b179f1f51b322b7045cf152b73df4f3d01da82ec
 Size (tcl8.3.4.tar.gz) = 2654756 bytes
-SHA1 (patch-aa) = 5687bd635dc7a18b4bc3770389a42a42dacc1541
+SHA1 (patch-aa) = ada1427205e9f4047e238cc9dbad6e8906d6df4e
 SHA1 (patch-ab) = 1997064679e61c2e1572f537f9171584cf9955e8
 SHA1 (patch-ac) = d1e1b6ed334ff424140a678ed098504cc14614e8
 SHA1 (patch-ae) = a0237d220cf0f8475614497cabaae738621a7729
Index: patches/patch-aa
===================================================================
RCS file: /cvsroot/pkgsrc/lang/tcl/patches/patch-aa,v
retrieving revision 1.6
diff -b -u -r1.6 patch-aa
--- patches/patch-aa	2001/12/23 17:02:31	1.6
+++ patches/patch-aa	2002/08/21 20:49:05
@@ -1,7 +1,7 @@
-$NetBSD: patch-aa,v 1.6 2001/12/23 17:02:31 bjoern Exp $
+$NetBSD: $
 
---- Makefile.in.orig	Sat Oct 20 02:24:15 2001
-+++ Makefile.in
+--- Makefile.in.orig	Fri Oct 19 20:24:15 2001
++++ Makefile.in	Wed Aug 21 12:45:25 2002
 @@ -87,7 +87,7 @@
  #CFLAGS			= $(CFLAGS_DEBUG)
  #CFLAGS			= $(CFLAGS_OPTIMIZE)
@@ -33,15 +33,6 @@
  SHLIB_CFLAGS		= @SHLIB_CFLAGS@
  
  SHLIB_SUFFIX		= @SHLIB_SUFFIX@
-@@ -207,7 +207,7 @@
- TCL_LIB_FILE		= @TCL_LIB_FILE@
- #TCL_LIB_FILE		= libtcl.a
- 
--TCL_LIB_FLAG		= @TCL_LIB_FLAG@
-+TCL_LIB_FLAG		= libtcl83.la
- #TCL_LIB_FLAG		= -ltcl
- 
- TCL_EXP_FILE		= @TCL_EXP_FILE@
 @@ -235,8 +235,9 @@
  # Must be absolute to so the corresponding tcltest's tcl_library is absolute.
  TCL_BUILDTIME_LIBRARY	= @TCL_SRC_DIR@/library
@@ -66,12 +57,12 @@
  
  tclsh: ${TCLSH_OBJS} ${TCL_LIB_FILE}
 -	${CC} ${LDFLAGS} ${TCLSH_OBJS} @TCL_BUILD_LIB_SPEC@ ${LIBS} \
-+	${LD} ${LDFLAGS} ${TCLSH_OBJS} libtcl83.la ${LIBS} \
++	${LD} ${LDFLAGS} ${TCLSH_OBJS} @TCL_BUILD_LIB_SPEC@ ${LIBS} \
  		@TCL_LD_SEARCH_FLAGS@ -o tclsh
  
  tcltest: ${TCLTEST_OBJS} ${TCL_LIB_FILE} ${BUILD_DLTEST}
 -	${CC} ${LDFLAGS} ${TCLTEST_OBJS} @TCL_BUILD_LIB_SPEC@ ${LIBS} \
-+	${LD} ${LDFLAGS} ${TCLTEST_OBJS} libtcl83.la ${LIBS} \
++	${LD} ${LDFLAGS} ${TCLTEST_OBJS} @TCL_BUILD_LIB_SPEC@ ${LIBS} \
  		@TCL_LD_SEARCH_FLAGS@ -o tcltest
  
  # Note, in the target below TCL_LIBRARY needs to be set or else

--3lcZGd9BuhuYXNfi
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename="tk.linux.diff"

? PLIST.linux
Index: Makefile
===================================================================
RCS file: /cvsroot/pkgsrc/x11/tk/Makefile,v
retrieving revision 1.18
diff -b -u -r1.18 Makefile
--- Makefile	2002/03/20 17:38:23	1.18
+++ Makefile	2002/08/21 20:51:46
@@ -90,3 +90,9 @@
 .include "../../lang/tcl/buildlink.mk"
 .include "../../mk/x11.buildlink.mk"
 .include "../../mk/bsd.pkg.mk"
+
+.if ${OPSYS} == Linux
+PLIST_SRC=              ${PKGDIR}/PLIST.linux
+post-build:
+	${SED} -e 's/83/8\.3/' ${PKGDIR}/PLIST > ${PKGDIR}/PLIST.linux   
+.endif

--3lcZGd9BuhuYXNfi--