Package: saods9
Version: 4.0b7-1.4
Severity: normal
Tags: patch

Hi!

I'd like to NMU your package (and fix #429332, #409488, #417681).

Please, look at the attached diff. If it isn't good enough, I won't
upload the updated package.

The changes basically replace static package loading by dynamic one.

-- System Information:
Debian Release: 4.0
  APT prefers stable
  APT policy: (500, 'stable')
Architecture: i386 (x86_64)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.18-5-amd64
Locale: LANG=ru_RU.CP1251, LC_CTYPE=ru_RU.CP1251 (charmap=CP1251)

Versions of packages saods9 depends on:
ii  blt                    2.4z-4            the BLT extension library for Tcl/
ii  libc6                  2.3.6.ds1-13etch2 GNU C Library: Shared libraries
ii  libg2c0                1:3.4.6-5         Runtime library for GNU Fortran 77
ii  libgcc1                1:4.1.1-21        GCC support library
ii  libstdc++6             4.1.1-21          The GNU Standard C++ Library v3
ii  libtk-img              1:1.3-release-3   Extended image format support for 
ii  libtktable2.9          2.9+cvs20060727-2 Table extension for Tcl/Tk
ii  libx11-6               2:1.0.3-7         X11 client-side library
ii  tcl8.4                 8.4.16-0.2        Tcl (the Tool Command Language) v8
ii  tcllib                 1.10-dfsg-1       the Standard Tcl Library
ii  tk8.4                  8.4.16-1          Tk toolkit for Tcl and X11, v8.4 -
ii  zlib1g                 1:1.2.3-13        compression library - runtime

saods9 recommends no packages.

-- no debconf information
diff -ruN saods9-4.0b7-1.4/debian/changelog saods9-4.0b7-1.5/debian/changelog
--- saods9-4.0b7-1.4/debian/changelog	2007-09-29 14:30:34.000000000 +0400
+++ saods9-4.0b7-1.5/debian/changelog	2007-09-29 14:36:04.000000000 +0400
@@ -1,3 +1,17 @@
+saods9 (4.0b7-1.5) unstable; urgency=low
+
+  * Non-maintainer upload.
+  * Switched to dynamic loading of tcllib packages. It fixes FTBFS caused
+    by tcllib upgrade (closes: #409488).
+  * Added build-dependency on libtk-img-dev because of libtk-img splitting.
+  * Switched to dynamic loading of Img package. It fixed FTBFS caused by
+    libtk-img upgrade. Also, it fixes loading of incorrect Img libraries
+    (closes: #429332).
+  * Included patch by Martin Michlmayr which fixes FTBFS with GCC 4.3
+    (closes: #417681).
+
+ -- Sergei Golovan <[EMAIL PROTECTED]>  Sat, 29 Sep 2007 14:35:47 +0400
+
 saods9 (4.0b7-1.4) unstable; urgency=low
 
   * NMU (credativ BSP)
diff -ruN saods9-4.0b7-1.4/debian/control saods9-4.0b7-1.5/debian/control
--- saods9-4.0b7-1.4/debian/control	2007-09-29 14:30:34.000000000 +0400
+++ saods9-4.0b7-1.5/debian/control	2007-09-29 14:30:50.000000000 +0400
@@ -2,12 +2,12 @@
 Section: science
 Priority: extra
 Maintainer: Justin Pryzby <[EMAIL PROTECTED]>
-Build-Depends: debhelper (>= 4.0.0), libtk-img, zlib1g-dev, blt-dev, tcl8.4-dev, tcllib, tk8.4-dev, libtktable2.9, g77
+Build-Depends: debhelper (>= 4.0.0), libtk-img-dev, zlib1g-dev, blt-dev, tcl8.4-dev, tcllib, tk8.4-dev, libtktable2.9, g77
 Standards-Version: 3.6.2
 
 Package: saods9
 Architecture: any
-Depends: libtk-img, libtktable2.9, ${shlibs:Depends}
+Depends: libtk-img, libtktable2.9, tcllib, ${shlibs:Depends}
 Description: image display tool for astronomy
  DS9 is an application for astronomical imaging and data
  visualization.
diff -ruN saods9-4.0b7-1.4/ds9/ds9.C saods9-4.0b7-1.5/ds9/ds9.C
--- saods9-4.0b7-1.4/ds9/ds9.C	2005-08-01 22:42:27.000000000 +0400
+++ saods9-4.0b7-1.5/ds9/ds9.C	2007-09-29 14:30:50.000000000 +0400
@@ -6,6 +6,7 @@
 using namespace std;
 
 #include "ds9tk.h"
+#include <tcl.h>
 
 extern "C" {
   int Blt_Init(Tcl_Interp*);
@@ -15,20 +16,6 @@
   int Tkhtml_Init(Tcl_Interp*);
   int Tkmpeg_Init(Tcl_Interp*);
 
-  int Tkimg_Init(Tcl_Interp*);
-  int Zlibtcl_Init(Tcl_Interp*);
-  int Jpegtcl_Init(Tcl_Interp*);
-  int Tkimgjpeg_Init(Tcl_Interp*);
-  int Tifftcl_Init(Tcl_Interp*);
-  int Tkimgtiff_Init(Tcl_Interp*);
-  int Pngtcl_Init(Tcl_Interp*);
-  int Tkimgpng_Init(Tcl_Interp*);
-  int Tkimggif_Init(Tcl_Interp*);
-  int Tkimgppm_Init(Tcl_Interp*);
-  int Tkimgbmp_Init(Tcl_Interp*);
-  int Tkimgxbm_Init(Tcl_Interp*);
-  int Tkimgwindow_Init(Tcl_Interp*);
-
   int Tclxpa_Init(Tcl_Interp*);
   int Iis_Init(Tcl_Interp*);
 }
@@ -74,57 +61,8 @@
 
   // Tkimg _inits
 
-  if (Tkimg_Init(interp) == TCL_ERROR)
-    return TCL_ERROR;
-  Tcl_StaticPackage (interp, "img", Tkimg_Init,(Tcl_PackageInitProc*)NULL);
-
-  if (Zlibtcl_Init(interp) == TCL_ERROR)
-    return TCL_ERROR;
-  Tcl_StaticPackage (interp, "zlibtcl", Zlibtcl_Init,(Tcl_PackageInitProc*)NULL);
-
-  if (Jpegtcl_Init(interp) == TCL_ERROR)
-    return TCL_ERROR;
-  Tcl_StaticPackage (interp, "jpegtcl", Jpegtcl_Init,(Tcl_PackageInitProc*)NULL);
-
-  if (Tkimgjpeg_Init(interp) == TCL_ERROR)
-    return TCL_ERROR;
-  Tcl_StaticPackage (interp, "jpeg", Tkimgjpeg_Init,(Tcl_PackageInitProc*)NULL);
-
-  if (Tifftcl_Init(interp) == TCL_ERROR)
-    return TCL_ERROR;
-  Tcl_StaticPackage (interp, "tifftcl", Tifftcl_Init,(Tcl_PackageInitProc*)NULL);
-
-  if (Tkimgtiff_Init(interp) == TCL_ERROR)
-    return TCL_ERROR;
-  Tcl_StaticPackage (interp, "tiff", Tkimgtiff_Init,(Tcl_PackageInitProc*)NULL);
-
-  if (Pngtcl_Init(interp) == TCL_ERROR)
-    return TCL_ERROR;
-  Tcl_StaticPackage (interp, "pngtcl", Pngtcl_Init,(Tcl_PackageInitProc*)NULL);
-
-  if (Tkimgpng_Init(interp) == TCL_ERROR)
-    return TCL_ERROR;
-  Tcl_StaticPackage (interp, "png", Tkimgpng_Init,(Tcl_PackageInitProc*)NULL);
-
-  if (Tkimggif_Init(interp) == TCL_ERROR)
-    return TCL_ERROR;
-  Tcl_StaticPackage (interp, "gif", Tkimggif_Init,(Tcl_PackageInitProc*)NULL);
-
-  if (Tkimgppm_Init(interp) == TCL_ERROR)
-    return TCL_ERROR;
-  Tcl_StaticPackage (interp, "ppm", Tkimgppm_Init,(Tcl_PackageInitProc*)NULL);
-
-  if (Tkimgbmp_Init(interp) == TCL_ERROR)
-    return TCL_ERROR;
-  Tcl_StaticPackage (interp, "bmp", Tkimgbmp_Init,(Tcl_PackageInitProc*)NULL);
-
-  if (Tkimgxbm_Init(interp) == TCL_ERROR)
-    return TCL_ERROR;
-  Tcl_StaticPackage (interp, "xbm", Tkimgxbm_Init,(Tcl_PackageInitProc*)NULL);
-
-  if (Tkimgwindow_Init(interp) == TCL_ERROR)
+  if (Tcl_PkgRequire (interp, "Img", NULL, 0) == NULL)
     return TCL_ERROR;
-  Tcl_StaticPackage (interp, "window", Tkimgwindow_Init,(Tcl_PackageInitProc*)NULL);
 
   return TCL_OK;
 }
diff -ruN saods9-4.0b7-1.4/ds9/ds9.mta saods9-4.0b7-1.5/ds9/ds9.mta
--- saods9-4.0b7-1.4/ds9/ds9.mta	2007-09-29 14:30:34.000000000 +0400
+++ saods9-4.0b7-1.5/ds9/ds9.mta	2007-09-29 14:30:50.000000000 +0400
@@ -81,9 +81,9 @@
 ## NoSource No
 ## OtherLib:/usr/lib/blt2.4 1
 ## OtherLib:/usr/lib/tcl8.4/http2.5 1
-## OtherLib:/usr/lib/tcllib1.8/base64 1
-## OtherLib:/usr/lib/tcllib1.8/ftp 1
-## OtherLib:/usr/lib/tcllib1.8/log 1
+# OtherLib:/usr/lib/tcllib1.8/base64 1
+# OtherLib:/usr/lib/tcllib1.8/ftp 1
+# OtherLib:/usr/lib/tcllib1.8/log 1
 ## OutputFile ds9tk.c
 ## Shroud No
 ## Standalone Yes
@@ -203,17 +203,17 @@
 -strip-tcl "/usr/lib/tcl8.4/safe.tcl"
 -strip-tcl "/usr/lib/tcl8.4/tclIndex"
 -strip-tcl "/usr/lib/tcl8.4/word.tcl"
--strip-tcl "/usr/lib/tcllib1.8/base64/base64.tcl"
--strip-tcl "/usr/lib/tcllib1.8/base64/base64c.tcl"
--strip-tcl "/usr/lib/tcllib1.8/base64/pkgIndex.tcl"
--strip-tcl "/usr/lib/tcllib1.8/base64/uuencode.tcl"
--strip-tcl "/usr/lib/tcllib1.8/base64/yencode.tcl"
--strip-tcl "/usr/lib/tcllib1.8/ftp/ftp.tcl"
--strip-tcl "/usr/lib/tcllib1.8/ftp/ftp_geturl.tcl"
--strip-tcl "/usr/lib/tcllib1.8/ftp/pkgIndex.tcl"
--strip-tcl "/usr/lib/tcllib1.8/log/log.tcl"
--strip-tcl "/usr/lib/tcllib1.8/log/logger.tcl"
--strip-tcl "/usr/lib/tcllib1.8/log/pkgIndex.tcl"
+#-strip-tcl "/usr/lib/tcllib1.8/base64/base64.tcl"
+#-strip-tcl "/usr/lib/tcllib1.8/base64/base64c.tcl"
+#-strip-tcl "/usr/lib/tcllib1.8/base64/pkgIndex.tcl"
+#-strip-tcl "/usr/lib/tcllib1.8/base64/uuencode.tcl"
+#-strip-tcl "/usr/lib/tcllib1.8/base64/yencode.tcl"
+#-strip-tcl "/usr/lib/tcllib1.8/ftp/ftp.tcl"
+#-strip-tcl "/usr/lib/tcllib1.8/ftp/ftp_geturl.tcl"
+#-strip-tcl "/usr/lib/tcllib1.8/ftp/pkgIndex.tcl"
+#-strip-tcl "/usr/lib/tcllib1.8/log/log.tcl"
+#-strip-tcl "/usr/lib/tcllib1.8/log/logger.tcl"
+#-strip-tcl "/usr/lib/tcllib1.8/log/pkgIndex.tcl"
 -strip-tcl "/usr/lib/tk8.4/bgerror.tcl"
 -strip-tcl "/usr/lib/tk8.4/button.tcl"
 -strip-tcl "/usr/lib/tk8.4/choosedir.tcl"
diff -ruN saods9-4.0b7-1.4/ds9/ds9.tcl saods9-4.0b7-1.5/ds9/ds9.tcl
--- saods9-4.0b7-1.4/ds9/ds9.tcl	2007-09-29 14:30:34.000000000 +0400
+++ saods9-4.0b7-1.5/ds9/ds9.tcl	2007-09-29 14:30:50.000000000 +0400
@@ -47,9 +47,9 @@
 # other tcl packages
 if {$tcl_platform(platform) != "windows"} {
     source /usr/lib/tcl8.4/http2.5/http.tcl
-    source /usr/lib/tcllib1.8/base64/base64.tcl
-    source /usr/lib/tcllib1.8/log/log.tcl
-    source /usr/lib/tcllib1.8/ftp/ftp.tcl
+    #source /usr/lib/tcllib1.8/base64/base64.tcl
+    #source /usr/lib/tcllib1.8/log/log.tcl
+    #source /usr/lib/tcllib1.8/ftp/ftp.tcl
 } else {
     source C:/cygwin/home/joye/saods9/lib/tcl8.4/http2.5/http.tcl
     source C:/cygwin/home/joye/saods9/lib/tcllib1.6/base64/base64.tcl
diff -ruN saods9-4.0b7-1.4/ds9/Makefile saods9-4.0b7-1.5/ds9/Makefile
--- saods9-4.0b7-1.4/ds9/Makefile	2007-09-29 14:30:34.000000000 +0400
+++ saods9-4.0b7-1.5/ds9/Makefile	2007-09-29 14:30:50.000000000 +0400
@@ -176,19 +176,6 @@
 INDEX	= pkgIndex.tcl
 
 LIBS	=					\
-	/usr/lib/Img1.3/libtkimgwindow1.3.so	\
-	/usr/lib/Img1.3/libtkimgjpeg1.3.so	\
-	/usr/lib/Img1.3/libjpegtcl1.0.so	\
-	/usr/lib/Img1.3/libtkimgtiff1.3.so	\
-	/usr/lib/Img1.3/libtifftcl1.0.so	\
-	/usr/lib/Img1.3/libtkimgpng1.3.so	\
-	/usr/lib/Img1.3/libpngtcl1.0.so		\
-	/usr/lib/Img1.3/libtkimgppm1.3.so	\
-	/usr/lib/Img1.3/libtkimggif1.3.so	\
-	/usr/lib/Img1.3/libtkimgbmp1.3.so	\
-	/usr/lib/Img1.3/libtkimgxbm1.3.so	\
-	/usr/lib/Img1.3/libzlibtcl1.0.so	\
-	/usr/lib/Img1.3/libtkimg1.3.so		\
 	/usr/lib/Tktable2.9/libTktable2.9.so	\
 	-lz -lBLT -ltk8.4 -ltcl8.4		\
 	-L../lib -lsaotk -ltkhtml -ltkmpeg -lsla\
diff -ruN saods9-4.0b7-1.4/iis/iistcl.C saods9-4.0b7-1.5/iis/iistcl.C
--- saods9-4.0b7-1.4/iis/iistcl.C	2007-09-29 14:30:34.000000000 +0400
+++ saods9-4.0b7-1.5/iis/iistcl.C	2007-09-29 14:30:50.000000000 +0400
@@ -6,10 +6,12 @@
 #include <string.h>
 
 #if __GNUC__ >= 3
+#include <cstdlib>
 #include <iostream>
 #include <sstream>
 using namespace std;
 #else
+#include <stdlib.h>
 #include <iostream.h>
 #include <strstream.h>
 #endif

Reply via email to